From 4affa9182d93c77505c40e95964b8ab9d436298b Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Fri, 24 Apr 2020 18:19:02 +0200 Subject: gnu: font-gnu-freefont: Build with an older version of FontForge. Fixes . Reported by Jack Hill . * gnu/packages/fontutils.scm (fontforge-20190801): New public variable. * gnu/packages/fonts.scm (font-gnu-freefont)[native-inputs]: Change from inherited FontForge variant to FONTFORGE-20190801. --- gnu/packages/fonts.scm | 12 +++++------- gnu/packages/fontutils.scm | 29 ++++++++++++++++++++++++++++- 2 files changed, 33 insertions(+), 8 deletions(-) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index 21423baefd..6e9b080299 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -12,7 +12,7 @@ ;;; Copyright © 2016 Eric Bavier ;;; Copyright © 2016 Dmitry Nikolaev ;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner -;;; Copyright © 2016 Marius Bakke +;;; Copyright © 2016, 2020 Marius Bakke ;;; Copyright © 2016 Toni Reina ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice ;;; Copyright © 2017 José Miguel Sánchez García @@ -236,6 +236,8 @@ (define-public font-lato (define-public font-gnu-freefont (package (name "font-gnu-freefont") + ;; Note: Remove the special FontForge input and package once the 2020 + ;; release is out. (version "20120503") (source (origin (method url-fetch) @@ -289,12 +291,8 @@ (define-public font-gnu-freefont (lambda (file) (string-suffix? "woff" file)) (find-files "." ""))))))) #:test-target "tests")) - ;; replace python 3 with python 2 - ;; python 3 support commits aren't yet released in 20120503 - ;; so freefont needs python 2 support in fontforge - (native-inputs `(("fontforge" ,(package (inherit fontforge) - (inputs `(("python-2" ,python-2) - ,@(package-inputs fontforge))))))) + ;; FreeFont anno 2012 requires a FontForge built with Python 2. + (native-inputs `(("fontforge" ,fontforge-20190801))) (home-page "https://www.gnu.org/software/freefont/") (synopsis "Unicode-encoded outline fonts") (description diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index a77cf9ebf0..d78811b2e8 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -60,7 +60,9 @@ (define-module (gnu packages fontutils) #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system python) - #:use-module (guix build-system meson)) + #:use-module (guix build-system meson) + #:use-module (guix utils) + #:use-module (srfi srfi-1)) (define-public freetype (package @@ -640,6 +642,31 @@ (define-public fontforge (license license:gpl3+) (home-page "https://fontforge.github.io"))) +;; This is the last version that supports Python 2, which is needed for +;; GNU FreeFont. Remove once no longer required. +(define-public fontforge-20190801 + (package + (inherit fontforge) + (version "20190801") + (source (origin + (method url-fetch) + (uri (string-append + "https://github.com/fontforge/fontforge/releases/download/" + version "/fontforge-" version ".tar.gz")) + (sha256 + (base32 "0lh8yx01asbzxm6car5cfi64njh5p4lxc7iv8dldr5rwg357a86r")))) + (build-system gnu-build-system) + (arguments + (substitute-keyword-arguments (package-arguments fontforge) + ((#:configure-flags _) + ''()) + ((#:phases phases) + `(modify-phases ,phases + (delete 'do-not-override-RPATH))))) + (inputs + `(("python" ,python-2) + ,@(alist-delete "python" (package-inputs fontforge)))))) + (define-public python2-ufolib (package (name "python2-ufolib") -- cgit v1.2.3