diff options
author | 宋文武 <iyzsong@member.fsf.org> | 2024-04-21 11:19:22 +0800 |
---|---|---|
committer | Andreas Enge <andreas@enge.fr> | 2024-10-19 15:40:47 +0200 |
commit | d22d06f9d2c324c5c9bfc4cf14139eccd1b30903 (patch) | |
tree | 875b8e21344552aaea62df789f8e4fe14baa96fe | |
parent | 503919fcf01d7eb8d550df5c3993aee9a966ba9b (diff) |
build-system: font: Handle multiple outputs in the install phase.
* guix/build/font-build-system.scm (install): Prefer install files into their
specified outputs (ttf, otf, woff, otb, bdf, pcf, psf).
Change-Id: I2ecd126fe31ce4fc65c59106938e37523b0cc3d2
-rw-r--r-- | guix/build/font-build-system.scm | 32 |
1 files changed, 27 insertions, 5 deletions
diff --git a/guix/build/font-build-system.scm b/guix/build/font-build-system.scm index 0b1542394a..ad81d07b7b 100644 --- a/guix/build/font-build-system.scm +++ b/guix/build/font-build-system.scm @@ -1,6 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2017, 2022 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2017 Alex Griffin <a@ajgrf.com> +;;; Copyright © 2024 宋文武 <iyzsong@envs.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -49,13 +50,34 @@ archive, or a font file." "Install the package contents." (let* ((out (assoc-ref outputs "out")) (source (getcwd)) - (fonts (string-append out "/share/fonts"))) - (for-each (cut install-file <> (string-append fonts "/truetype")) + (truetype-dir (string-append (or (assoc-ref outputs "ttf") out) + "/share/fonts/truetype")) + (opentype-dir (string-append (or (assoc-ref outputs "otf") out) + "/share/fonts/opentype")) + (web-dir (string-append (or (assoc-ref outputs "woff") out) + "/share/fonts/web")) + (otb-dir (string-append (or (assoc-ref outputs "otb") out) + "/share/fonts/misc")) + (bdf-dir (string-append (or (assoc-ref outputs "bdf") out) + "/share/fonts/misc")) + (pcf-dir (string-append (or (assoc-ref outputs "pcf") out) + "/share/fonts/misc")) + (psf-dir (string-append (or (assoc-ref outputs "psf") out) + "/share/consolefonts"))) + (for-each (cut install-file <> truetype-dir) (find-files source "\\.(ttf|ttc)$")) - (for-each (cut install-file <> (string-append fonts "/opentype")) + (for-each (cut install-file <> opentype-dir) (find-files source "\\.(otf|otc)$")) - (for-each (cut install-file <> (string-append fonts "/web")) - (find-files source "\\.(woff|woff2)$")))) + (for-each (cut install-file <> web-dir) + (find-files source "\\.(woff|woff2)$")) + (for-each (cut install-file <> otb-dir) + (find-files source "\\.otb$")) + (for-each (cut install-file <> bdf-dir) + (find-files source "\\.bdf$")) + (for-each (cut install-file <> pcf-dir) + (find-files source "\\.pcf$")) + (for-each (cut install-file <> psf-dir) + (find-files source "\\.psfu$")))) (define %license-file-regexp ;; Regexp matching license files commonly found in font packages. |