mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-25 05:48:07 -05:00
gnu: font-google-noto: Prefer variable fonts and split outputs.
* gnu/packages/fonts.scm (font-google-noto) [arguments]<#:phase>: Prefer variable fonts. Install hinted TTFs into "ttf" output. [outputs]: Add "ttf". Suggested-by: Jiwei YANG <yangjiwei@protonmail.com> Change-Id: Icac2927fb6c35d08504c379e273a5fc03b08ac46
This commit is contained in:
parent
17b1350f68
commit
954ff7b302
1 changed files with 45 additions and 0 deletions
|
@ -1092,6 +1092,51 @@ (define-public font-google-noto
|
|||
(sha256
|
||||
(base32 "087jg8ahpq35xwyrmvm9ivxl0wjic2j4r28bbrwqmgdva9brms40"))))
|
||||
(build-system font-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:modules
|
||||
'((guix build font-build-system)
|
||||
(guix build utils)
|
||||
(ice-9 ftw))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(define* (install source #:optional (output #$output))
|
||||
(let ((%install (assoc-ref %standard-phases 'install)))
|
||||
(with-directory-excursion source
|
||||
(%install #:outputs `(("out" . ,output))))))
|
||||
|
||||
(define (scan-directory name)
|
||||
(scandir name (lambda (file)
|
||||
(not (member file '("." ".." "LICENSE"))))))
|
||||
|
||||
(define (install-font-variant variant)
|
||||
"Given font variant VARIANT, install one of its formats,
|
||||
variable TTF or OTF or TTF."
|
||||
(with-directory-excursion variant
|
||||
(let ((formats (scan-directory ".")))
|
||||
(cond
|
||||
((member "variable-ttf" formats)
|
||||
(install "variable-ttf"))
|
||||
((member "otf" formats)
|
||||
(install "otf"))
|
||||
((member "ttf" formats)
|
||||
(install "ttf"))))))
|
||||
|
||||
(define (install-font font)
|
||||
"Given FONT, install one of its variants, either full or
|
||||
unhinted, and install its hinted variant into 'ttf' output. According to the
|
||||
source, unhinted and hinted variants are always available."
|
||||
(with-directory-excursion font
|
||||
(if (member "full" (scan-directory "."))
|
||||
(install-font-variant "full")
|
||||
(install-font-variant "unhinted"))
|
||||
(install "hinted" #$output:ttf)))
|
||||
|
||||
(with-directory-excursion "fonts"
|
||||
(for-each install-font (scan-directory "."))))))))
|
||||
(outputs '("out" "ttf"))
|
||||
(home-page "https://www.google.com/get/noto/")
|
||||
(synopsis "Fonts to cover all languages")
|
||||
(description "Google Noto Fonts is a family of fonts designed to support
|
||||
|
|
Loading…
Reference in a new issue