diff options
Diffstat (limited to 'gnu/packages/fontutils.scm')
-rw-r--r-- | gnu/packages/fontutils.scm | 181 |
1 files changed, 80 insertions, 101 deletions
diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index 8e0980dd95..bc082de3d3 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -11,7 +11,7 @@ ;;; Copyright © 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Roel Janssen <roel@gnu.org> -;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> +;;; Copyright © 2020, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2021 Sarah Morgensen <iskarian@mgsn.dev> @@ -35,7 +35,6 @@ #:use-module (gnu packages) #:use-module (gnu packages autotools) #:use-module (gnu packages bison) - #:use-module (gnu packages build-tools) ;for meson-0.55 #:use-module (gnu packages check) #:use-module (gnu packages compression) #:use-module (gnu packages datastructures) @@ -93,12 +92,11 @@ ;; depend on it. `(#:configure-flags (list "--enable-freetype-config"))) (native-inputs - `(("pkg-config" ,pkg-config))) + (list pkg-config)) (propagated-inputs ;; These are all in the Requires.private field of freetype2.pc. ;; XXX: add harfbuzz. - `(("libpng" ,libpng) - ("zlib" ,zlib))) + (list libpng zlib)) (synopsis "Font rendering library") (description "Freetype is a library that can be used by applications to access the @@ -123,12 +121,9 @@ anti-aliased glyph bitmap generation with 256 gray levels.") "0zpqgihn3yh3v51ynxwr8asqrijvs4gv686clwv7bm8sawr4kfw7")))) (build-system gnu-build-system) (native-inputs - `(("flex" ,flex) - ("bison" ,bison) - ("pkg-config" ,pkg-config))) + (list flex bison pkg-config)) (inputs - `(("freetype" ,freetype) - ("harfbuzz" ,harfbuzz))) + (list freetype harfbuzz)) (arguments `(#:configure-flags '("--disable-static" "--with-qt=no"))) ;no gui @@ -156,7 +151,7 @@ scripts.") "1i97gkqa6jfzlslsngqf556kx60knlgf7yc9pzsq2pizc6f0d4zl")))) (build-system gnu-build-system) (inputs - `(("zlib" ,zlib))) + (list zlib)) (arguments `(#:make-flags '(,(string-append "CC=" (cc-for-target))) #:tests? #f ;no tests @@ -259,7 +254,7 @@ TTF (TrueType/OpenType Font) files.") (invoke "make" "-j" (number->string (parallel-job-count)) "all" "CC=gcc")))))) - (inputs `(("perl" ,perl))) + (inputs (list perl)) (synopsis "Convert TrueType fonts to Postscript Type 1") (description "TTF2PT1 provides tools to convert most TrueType fonts (or other formats @@ -312,9 +307,9 @@ work with most software requiring Type 1 fonts.") "BUILD_SHARED_LIBS")) #t))))) (native-inputs - `(("pkg-config" ,pkg-config))) + (list pkg-config)) (inputs - `(("brotli" ,google-brotli))) + (list brotli)) (synopsis "Libraries and tools for WOFF2 font format") (description "WOFF2 provides libraries and tools to handle the Web Open Font Format (WOFF).") @@ -327,14 +322,13 @@ Font Format (WOFF).") (name "fontconfig-minimal") (version "2.13.94") (source (origin - (method url-fetch) - (uri (string-append - "https://www.freedesktop.org/software/" - "fontconfig/release/fontconfig-" version ".tar.xz")) - (sha256 - (base32 - "0g004r0bkkqz00mpm3svnnxn7d83158q0yb9ggxryizxfg5m5w55")) - (patches (search-patches "fontconfig-cache-ignore-mtime.patch")))) + (method url-fetch) + (uri (string-append + "https://www.freedesktop.org/software/" + "fontconfig/release/fontconfig-" version ".tar.xz")) + (sha256 (base32 + "0g004r0bkkqz00mpm3svnnxn7d83158q0yb9ggxryizxfg5m5w55")) + (patches (search-patches "fontconfig-cache-ignore-mtime.patch")))) (build-system gnu-build-system) ;; In Requires or Requires.private of fontconfig.pc. (propagated-inputs `(("expat" ,expat) @@ -344,7 +338,7 @@ Font Format (WOFF).") ;; We use to use 'font-ghostscript' but they are not recognized by newer ;; versions of Pango, causing many applications to fail to find fonts ;; otherwise. - `(("font-dejavu" ,font-dejavu))) + (list font-dejavu)) (native-inputs `(("gperf" ,gperf) ("pkg-config" ,pkg-config) @@ -356,12 +350,7 @@ Font Format (WOFF).") ;; register the default fonts (string-append "--with-default-fonts=" (assoc-ref %build-inputs "font-dejavu") - "/share/fonts") - - ;; Register fonts from user and system profiles. - (string-append "--with-add-fonts=" - "~/.guix-profile/share/fonts," - "/run/current-system/profile/share/fonts")) + "/share/fonts")) #:phases (modify-phases %standard-phases (add-before 'check 'skip-problematic-tests @@ -393,6 +382,12 @@ high quality, anti-aliased and subpixel rendered text on a display.") ; The exact license is more X11-style than BSD-style. (license (license:non-copyleft "file://COPYING" "See COPYING in the distribution.")) + (native-search-paths + ;; Since version 2.13.94, fontconfig knows to find fonts from + ;; XDG_DATA_DIRS. + (list (search-path-specification + (variable "XDG_DATA_DIRS") + (files '("share"))))) (home-page "https://www.freedesktop.org/wiki/Software/fontconfig")))) ;;; The documentation of fontconfig is built in a separate package, as it @@ -490,10 +485,9 @@ X11-system or any other graphical user interface.") (arguments '(#:configure-flags '("--disable-static"))) (inputs - `(("zlib" ,zlib) - ("expat" ,expat))) + (list zlib expat)) (native-inputs - `(("perl" ,perl))) ;for the tests + (list perl)) ;for the tests (synopsis "Toolkit for encoding conversions") (description "TECkit is a low-level toolkit intended to be used by other applications @@ -530,10 +524,9 @@ applications should be.") "01jzhwnj1c3d68dmw15jdxly0hwkmd8ja4kw755rbkykn1ly2qyx")))) (build-system cmake-build-system) (native-inputs - `(("python" ,python) - ("python-fonttools" ,python-fonttools))) + (list python python-fonttools)) (inputs - `(("freetype" ,freetype))) + (list freetype)) (synopsis "Reimplementation of the SIL Graphite text processing engine") (description "Graphite2 is a reimplementation of the SIL Graphite text processing @@ -556,8 +549,8 @@ and returns a sequence of positioned glyphids from the font.") (base32 "1k3sxgjqq0jnpk9xxys05q32sl5hbf1lbk1gmfxcrmpdgnhli0my")))) (build-system gnu-build-system) - (native-inputs `(("ghostscript" ,ghostscript))) ;for tests - (inputs `(("zlib" ,zlib))) + (native-inputs (list ghostscript)) ;for tests + (inputs (list zlib)) (arguments `(#:configure-flags `("--with-libpotrace"))) ; install library and headers @@ -585,9 +578,9 @@ resolution.") (base32 "0sq6g3xaxw388akws6qrllp3kp2sxgk2dv4j79k6mm52rnihrnv8")))) (build-system gnu-build-system) (native-inputs - `(("pkg-config" ,pkg-config))) + (list pkg-config)) (propagated-inputs - `(("freetype" ,freetype))) + (list freetype)) (home-page "https://www.nongnu.org/m17n/") (synopsis "Library for handling OpenType Font") (description "This library can read Open Type Layout Tables from an OTF @@ -657,7 +650,7 @@ definitions.") (base32 "0y3c8x1i6yf6ak9m5dhr1nldgfmg7zhnwdfd57ffs698c27vmg38")))) (build-system cmake-build-system) (native-inputs - `(("pkg-config" ,pkg-config))) + (list pkg-config)) (inputs `(("cairo" ,cairo) ("fontconfig" ,fontconfig) ;dlopen'd ("freetype" ,freetype) @@ -758,11 +751,9 @@ generate bitmaps.") (arguments `(#:python ,python-2)) (propagated-inputs - `(("python2-fonttools" ,python2-fonttools))) + (list python2-fonttools)) (native-inputs - `(("unzip" ,unzip) - ("python2-pytest" ,python2-pytest) - ("python2-pytest-runner" ,python2-pytest-runner))) + (list unzip python2-pytest python2-pytest-runner)) (home-page "https://github.com/unified-font-object/ufoLib") (synopsis "Low-level UFO reader and writer") (description @@ -785,12 +776,9 @@ files. UFO is a file format that stores fonts source files.") (arguments `(#:python ,python-2)) (native-inputs - `(("unzip" ,unzip) - ("python2-pytest" ,python2-pytest) - ("python2-pytest-runner" ,python2-pytest-runner))) + (list unzip python2-pytest python2-pytest-runner)) (propagated-inputs - `(("python2-fonttools" ,python2-fonttools) - ("python2-ufolib" ,python2-ufolib))) + (list python2-fonttools python2-ufolib)) (home-page "https://pypi.org/project/defcon/") (synopsis "Flexible objects for representing @acronym{UFO, unified font object} data") (description @@ -821,12 +809,12 @@ implements UFO3 as described by the UFO font format.") (arguments `(#:python ,python-2)) (propagated-inputs - `(("python2-booleanoperations" ,python2-booleanoperations) - ("python2-defcon" ,python2-defcon) - ("python2-fonttools" ,python2-fonttools) - ("python2-pillow" ,python2-pillow) - ("python2-pyclipper" ,python2-pyclipper) - ("python2-ufolib" ,python2-ufolib))) + (list python2-booleanoperations + python2-defcon + python2-fonttools + python2-pillow + python2-pyclipper + python2-ufolib)) (home-page "https://github.com/googlei18n/nototools") (synopsis "Noto fonts support tools and scripts") (description @@ -847,7 +835,7 @@ maintain the Noto Fonts project.") (define-public fcft (package (name "fcft") - (version "2.4.1") + (version "2.5.1") (home-page "https://codeberg.org/dnkl/fcft") (source (origin (method git-fetch) @@ -855,20 +843,17 @@ maintain the Noto Fonts project.") (file-name (git-file-name name version)) (sha256 (base32 - "00rwh5qfayihrq0wjx8pxqw5ah6g5ym6raxvdbqb6g6rk7m2j423")))) + "0dn0ic2ddi5qz6nqscsn7nlih67ad8vpclppbqwas6xavdfq6va2")))) (build-system meson-build-system) (native-inputs - `(("check" ,check) - ("gcc" ,gcc-10) ;TODO: Remove when the default compiler is > GCC 7. - ("pkg-config" ,pkg-config) - ("scdoc" ,scdoc))) + (list check pkg-config scdoc)) (propagated-inputs - `(;; Required by fcft.pc. - ("fontconfig" ,fontconfig) - ("freetype" ,freetype) - ("harfbuzz" ,harfbuzz) - ("pixman" ,pixman) - ("tllist" ,tllist))) + (list ;; Required by fcft.pc. + fontconfig + freetype + harfbuzz + pixman + tllist)) (synopsis "Font loading and glyph rasterization library") (description "@code{fcft} is a small font loading and glyph rasterization library @@ -889,7 +874,7 @@ generated list of fallback fonts are checked.") (define-public fontmanager (package (name "fontmanager") - (version "0.8.4") + (version "0.8.7") (source (origin (method git-fetch) @@ -898,8 +883,7 @@ generated list of fallback fonts are checked.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 - "09rv0srpj8ann2n1zpv1frlpxz0x10d2y21c5lys7pmfngljlxi9")))) + (base32 "0nyda2a6vbzyz4sn9mmrr8bkifzxmmjp7x9a3c4s6n925ccy79cn")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t @@ -914,16 +898,16 @@ generated list of fallback fonts are checked.") ("glib" ,glib "bin") ("gobject-introspection" ,gobject-introspection) ("pkg-config" ,pkg-config) - ("vala" ,vala) + ("vala" ,vala-0.52) ("yelp-tools" ,yelp-tools))) (inputs `(("fonconfig" ,fontconfig) ("freetype" ,freetype) ("gtk+" ,gtk+) ("json-glib" ,json-glib) - ("libsoup" ,libsoup) + ("libsoup" ,libsoup-minimal-2) ("sqlite" ,sqlite) - ("webkitgtk" ,webkitgtk))) + ("webkitgtk" ,webkitgtk-with-libsoup2))) (home-page "https://fontmanager.github.io/") (synopsis "Simple font management for GTK+ desktop environments") (description "Font Manager is intended to provide a way for users to @@ -936,7 +920,7 @@ work well with other GTK+ desktop environments.") (define-public fntsample (package (name "fntsample") - (version "5.3") + (version "5.4") (source (origin (method git-fetch) (uri (git-reference @@ -945,7 +929,7 @@ work well with other GTK+ desktop environments.") (file-name (git-file-name name version)) (sha256 (base32 - "02rx3gp7k472304vhjwb129nw10a29s4nvgs7i2m6bpjhlk2xgs5")))) + "0pcqqdriv6hq64zrqd9vhdd9p2vhimjnajcxdz10qnqgrkmm751v")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; There are no tests. @@ -966,8 +950,7 @@ work well with other GTK+ desktop environments.") "/lib/perl5/site_perl/" ,(package-version perl)))) (wrap-program (string-append out "/bin/pdfoutline") - `("PERL5LIB" ":" prefix (,perllib))) - #t)))))) + `("PERL5LIB" ":" prefix (,perllib))))))))) (native-inputs `(("pkg-config" ,pkg-config) ("gettext" ,gettext-minimal))) @@ -980,13 +963,15 @@ work well with other GTK+ desktop environments.") ("perl-pdf-api2" ,perl-pdf-api2) ("perl-libintl-perl" ,perl-libintl-perl) ("unicode-blocks" - ,(origin - (method url-fetch) - (uri "https://unicode.org/Public/UNIDATA/Blocks.txt") - (file-name "unicode-blocks.txt") - (sha256 - (base32 - "1xs8fnhh48gs41wg004r7m4r2azh9khmyjjlnvyzy9c6zrd212x2")))))) + ,(let ((version "14.0.0")) + (origin + (method url-fetch) + (uri (string-append "https://unicode.org/Public/" + version "/ucd/Blocks.txt")) + (file-name (string-append "unicode-blocks-" version ".txt")) + (sha256 + (base32 + "05vzgrvfp35mgxjgkm4wnxjjgzva8n6545i9jxd4pczpvvfp122r"))))))) (home-page "https://github.com/eugmes/fntsample") (synopsis "PDF and PostScript font samples generator") (description "This package provides a tool that can be used to make font @@ -997,26 +982,21 @@ Unicode Charts. It was developed for use with DejaVu Fonts project.") (define-public libraqm (package (name "libraqm") - (version "0.7.1") + (version "0.8.0") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/HOST-Oman/libraqm/" - "releases/download/v" version "/" - "raqm-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/HOST-Oman/libraqm") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 - (base32 "0a4q9dziirb85sa9rmkamg2krdhd009di2vlz91njwxcp3q8qj46")))) - (build-system gnu-build-system) - (arguments - `(#:configure-flags (list "--disable-static"))) + (base32 "0qrdw67n14n0km2f8l0gk8scgj3ybz662s9x8jwj3rrj33nl2d1a")))) + (build-system meson-build-system) (native-inputs - `(("gtk-doc" ,gtk-doc/stable) - ("pkg-config" ,pkg-config) - ("python" ,python-wrapper))) + (list gtk-doc/stable pkg-config python-wrapper)) (inputs - `(("freetype" ,freetype) - ("fribidi" ,fribidi) - ("harfbuzz" ,harfbuzz))) + (list freetype fribidi harfbuzz)) (home-page "https://github.com/HOST-Oman/libraqm") (synopsis "Library for complex text layout") (description @@ -1048,8 +1028,7 @@ can support most writing systems covered by Unicode.") ;; FIXME: texlive-kpathsea doesn't come with the library and headers (list "--without-kpathsea"))) (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake))) + (list autoconf automake)) (home-page "https://lcdf.org/type/") (synopsis "Multiple font manipulation tools") (description "LCDF Typetools comprises several programs for manipulating |