aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/fribidi.scm
blob: 6b10787b87bf1883b2ea5583494f1f24459e7906 (about) (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Marek Benc <merkur32@gmail.com>
;;; Copyright © 2016, 2019, 2020, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix.  If not, see <http://www.gnu.org/licenses/>.

(define-module (gnu packages fribidi)
  #:use-module (guix packages)
  #:use-module (guix download)
  #:use-module (guix build-system gnu)
  #:use-module (guix licenses)
  #:use-module (gnu packages))

(define-public fribidi
  (package
    (name "fribidi")
    (version "1.0.12")
    (source
      (origin
        (method url-fetch)
        (uri
         (string-append "https://github.com/fribidi/fribidi/releases"
                        "/download/v" version "/fribidi-" version
                         ".tar.xz"))
        (sha256
         (base32 "159l56c48rfcqa8mnxhnynngzlzmvr089ki7mjrppin8gzwk7lhc"))))
    (build-system gnu-build-system)
    (synopsis "Implementation of the Unicode bidirectional algorithm")
    (description
     "GNU FriBidi is an implementation of the Unicode Bidirectional
Algorithm.  This algorithm is used to properly display text in left-to-right
or right-to-left ordering as necessary.")
    (home-page "https://github.com/fribidi/fribidi")
    (license lgpl2.1+)))

(define-public bidiv
  (package
    (name "bidiv")
    (version "1.5")
    (source
      (origin
        (method url-fetch)
        (uri (string-append "mirror://debian/pool/main/b/bidiv/bidiv_"
                            version ".orig.tar.gz"))
        (sha256
         (base32
          "05p5m2ihxbmc1qsgs8rjlww08fy9859fhl7xf196p8g5qygqd7cv"))
        (patches (search-patches "bidiv-update-fribidi.patch"))))
    (build-system gnu-build-system)
    (arguments
     `(#:phases
       (modify-phases %standard-phases
         (delete 'configure) ; no configure
         (add-after 'unpack 'misc-fixes
           (lambda _
             (substitute* "bidiv.c"
               (("FriBidiCharType") "FriBidiParType")
               (("&c") "(char *)&c"))
             #t))
         ;; We don't want to use the handwritten makefile
         (replace 'build
           (lambda* (#:key inputs #:allow-other-keys)
             (let ((fribidi (assoc-ref inputs "fribidi")))
               (invoke "gcc" "-o" "bidiv" "bidiv.c"
                       ;; pkg-config --cflags fribidi
                       (string-append "-I" fribidi "/include/fribidi")
                       ;; pkg-config --libs fribidi
                       (string-append "-L" fribidi "/lib") "-lfribidi"))))
         (replace 'install
           (lambda* (#:key outputs #:allow-other-keys)
             (let* ((out (assoc-ref outputs "out"))
                    (bin (string-append out "/bin"))
                    (man (string-append out "/share/man/man1")))
               (install-file "bidiv" bin)
               (install-file "bidiv.1" man))
             #t)))
       #:tests? #f)) ; no tests
    (inputs
     (list fribidi))
    (home-page "https://tracker.debian.org/pkg/bidiv")
    (synopsis "BiDi viewer - command-line tool displaying logical Hebrew/Arabic")
    (description "bidiv is a simple utility for converting logical-Hebrew input
to visual-Hebrew output.  This is useful for reading Hebrew mail messages,
viewing Hebrew texts, etc.  It was written for Hebrew but Arabic (or other BiDi
languages) should work equally well.")
    (properties
     '((release-monitoring-url . "https://deb.debian.org/debian/pool/main/b/bidiv")))
    (license gpl2+)))
e caller. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Co-authored-by: Janneke Nieuwenhuizen <janneke@gnu.org> Josselin Poiret 2023-06-17gnu: Use target-hurd?, system-hurd? instead of hurd-target?, hurd-system?....* gnu/packages/hurd.scm (hurd-target?): Remove. (hurd-system?): Move to... * guix/utils.scm (system-hurd?): ...here. * gnu/packages/*: Update all users, removing (gnu packages hurd) include where now unused. Janneke Nieuwenhuizen 2023-06-02gnu: gcc-boot0: Do not use 'coreutils-boot0' on GNU/Hurd....Fixes <https://issues.guix.gnu.org/63789>. Reported by Janneke Nieuwenhuizen <janneke@gnu.org>. * gnu/packages/commencement.scm (gcc-boot0)[source]: Use '%bootstrap-coreutils&co' when on GNU/Hurd. Ludovic Courtès 2023-05-29gnu: commencement: m4-boot0: Disable tests for the Hurd too....GNU lib's stack-overflow tests fail. * gnu/packages/commencement.scm (m4-boot0)[arguments]: Set #:tests? to #false for the Hurd. Janneke Nieuwenhuizen 2023-05-07gnu: findutils: Update XFAIL_TESTS for the hurd....This could do with more investigating, but this reflects what I see locally. * gnu/packages/base.scm (findutils)[arguments]: Update XFAIL_TESTS for the hurd. * gnu/packages/commencement.scm (findutils-boot0): Stop clearing the make-flags, so the above change applies to findutils-boot0. Christopher Baines 2023-05-07Revert "gnu: gcc-11: Adapt patching for hurd to not use gexp's."...This reverts commit 08acdd0765b5f4fbfafa699a823ea7985d4d35a7. This change is now unnecessary now that gcc-boot0 uses gexps (a795a02a9d988be5a762886620f7bb6a95e7ffdb). * gnu/packages/gcc.scm (gcc-11)[arguments]: Use gexp for modify-phases. [native-inputs]: Remove. * gnu/packages/commencement.scm (gcc-boot0)[native-inputs]: Remove. Christopher Baines 2023-05-07gnu: Use gexps for gcc-boot0 and related packages....There are currently problems with native or cross building for i586-gnu, and one factor mixed up with this is that some of the gcc packages use sexp's for the phases, and thus introducing gexp's has caused problems. As part of the going in circles with this, this commit switches gcc-boot0 to use gexp's in it's arguments, and then also modifies libstdc++-boot0, libstdc++-boot0-gcc7, cross-gcc-wrapper, gcc-final and make-libstdc++ to handle this change. If done correctly, this change shouldn't affect any derivations. * gnu/packages/commencement.scm (libstdc++-boot0, libstdc++-boot0-gcc7, gcc-boot0, gcc-final)[arguments]: Use gexps. (cross-gcc-wrapper): Use gexps in the generated package. * gnu/packages/gcc.scm (make-libstdc++): Use gexps in the generated package. Christopher Baines 2023-05-05gnu: gcc-11: Fix patch-hurd-libpthread phase....It didn't work when it was introduced in 08acdd0765b5f4fbfafa699a823ea7985d4d35a7. * gnu/packages/gcc.scm (gcc-11)[arguments]: Remove the procedure arguments, and use %build-inputs rather than inputs. * gnu/packages/commencement.scm (gcc-boot0)[native-inputs]: Add hurd-patch, as this package inherits from gcc-11. Christopher Baines 2023-04-10gnu: Add gdc-toolchain-11....* gnu/packages/commencement.scm (gdc-toolchain-11): New variable. Efraim Flashner 2023-03-20Merge remote-tracking branch 'origin/master' into core-updatesAndreas Enge 2023-03-15gnu: coreutils-boot0: Fix building on armhf-linux....* gnu/packages/commencement.scm (coreutils-boot0)[arguments]: When building for armhf-linux include the workaround to force 32-bit time. Rearrange arguments so that the configure-flags for armhf-linux aren't overridden. Efraim Flashner 2023-03-02Merge remote-tracking branch 'savannah/master' into core-updates...Conflicts: gnu/local.mk gnu/packages/autotools.scm gnu/packages/cmake.scm gnu/packages/gnuzilla.scm gnu/packages/haskell.scm gnu/packages/pdf.scm gnu/packages/python-xyz.scm gnu/packages/samba.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/wxwidgets.scm Christopher Baines 2023-02-28gnu: static-bash-for-glibc: Use gexps....* gnu/packages/commencement.scm (static-bash-for-glibc)[arguments]: Use gexps. Ludovic Courtès 2023-03-04gnu: mig: Remove dependency on Perl....* gnu/packages/hurd.scm (mig)[inputs]: Remove PERL. [arguments]: Remove 'patch-non-shebang-references' phase and add 'avoid-perl-dependency' phase. Ludovic Courtès 2023-02-15gnu: commencement: mes-boot: Update to 0.24.2....This fixes <https://debbugs.gnu.org/41264>. * gnu/packages/commencement.scm (mes-boot): Update to 0.24.2. Jan (janneke) Nieuwenhuizen 2023-02-15gnu: commencement: tcc-boot: Rebuild Mes C Library....* gnu/packages/commencement.scm (tcc-boot)[arguments]: Rebuild the Mes C Library in the "install" phase. Jan (janneke) Nieuwenhuizen 2023-02-15Revert "gnu: commencement: mes-boot: Update to 0.24.2."...This reverts commit b928e38bd333e6186727fe5c5e94b85d157b79d6. The gcc-core-mesboot0 package fails to build with mes-boot-0.24.2, `ar' segfaults $ strace ar rc libiberty.a argv.o execve("/gnu/store/nvb6jh26hfjifs79h7hrlkw3cisgc353-binutils-mesboot0-2.20.1a/bin/ar", ["ar", "rc", "libiberty.a", "argv.o"], 0x7ffc4187fff8 /* 82 vars */) = 0 [ Process PID=22689 runs in 32 bit mode. ] brk(NULL) = 0x830f000 brk(0x830f000) = 0x830f000 stat64("libiberty.a", {st_mode=S_IFREG|0600, st_size=8, ...}) = 0 brk(0x830f0a4) = 0x830f0a4 brk(0x830f0b4) = 0x830f0b4 brk(0x8310098) = 0x8310098 brk(0x83100a4) = 0x83100a4 brk(0x8311088) = 0x8311088 --- SIGSEGV {si_signo=SIGSEGV, si_code=SEGV_MAPERR, si_addr=0x63ecebc8} --- +++ killed by SIGSEGV +++ Segmentation fault See also <https://debbugs.gnu.org/41264>. Jan (janneke) Nieuwenhuizen 2023-02-15gnu: commencement: mes-boot: Update to 0.24.2....This fixes <https://debbugs.gnu.org/41264>. * gnu/packages/commencement.scm (mes-boot): Update to 0.24.2. Jan (janneke) Nieuwenhuizen 2023-02-14gnu: %boot6-inputs: Replace xz with xz-final....* gnu/packages/commencement.scm (xz-final): New variable. (%boot6-inputs): Add xz-final. Remove xz. (%final-inputs): Add xz-final. Remove xz from packages 'to finalize'. Efraim Flashner 2023-02-12gnu: coreutils-boot0: Add comment about arm* configure-flags....* gnu/packages/commencement.scm (coreutils-boot0)[arguments]: Add a full comment around the configure-flags used when building for arm architectures. Efraim Flashner 2023-02-05gnu: Rename 'guile-3.0/fixed' to 'guile-3.0/pinned'....* gnu/packages/guile.scm: Rename variable 'guile-3.0/fixed' to 'guile-3.0/pinned', add deprecation. * etc/release-manifest.scm (%packages-to-cross-build): Replace 'guile-3.0/fixed' with 'guile-3.0/pinned'. * gnu/packages/autotools.scm (make-autoconf-wrapper)[inputs]: Likewise. * gnu/packages/commencement.scm (guile-final): Likewise. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com> Simon Tournier 2023-01-30Merge remote-tracking branch 'origin/master' into core-updates... Conflicts: doc/guix.texi gnu/local.mk gnu/packages/admin.scm gnu/packages/base.scm gnu/packages/chromium.scm gnu/packages/compression.scm gnu/packages/databases.scm gnu/packages/diffoscope.scm gnu/packages/freedesktop.scm gnu/packages/gnome.scm gnu/packages/gnupg.scm gnu/packages/guile.scm gnu/packages/inkscape.scm gnu/packages/llvm.scm gnu/packages/openldap.scm gnu/packages/pciutils.scm gnu/packages/ruby.scm gnu/packages/samba.scm gnu/packages/sqlite.scm gnu/packages/statistics.scm gnu/packages/syndication.scm gnu/packages/tex.scm gnu/packages/tls.scm gnu/packages/version-control.scm gnu/packages/xml.scm guix/build-system/copy.scm guix/scripts/home.scm Efraim Flashner