summaryrefslogtreecommitdiff
path: root/guix/profiles.scm
diff options
context:
space:
mode:
authorNicolas Goaziou <mail@nicolasgoaziou.fr>2023-08-09 10:45:42 +0200
committerMaxim Cournoyer <maxim.cournoyer@gmail.com>2023-09-17 15:03:27 -0400
commite1917f88834427f415ae6148207febab51966267 (patch)
tree4125d56ec6c9c6c62391f3cdb6e871ea972b6ade /guix/profiles.scm
parentd5c44d32c0449be190d94ca9699be2149f9594d1 (diff)
guix: profiles: Do not raise error on incomplete TeX Live setups.
* guix/profiles.scm (texlive-font-maps): Check if TEXLIVE-SCRIPTS is present in the manifest before trying to generate font maps.
Diffstat (limited to 'guix/profiles.scm')
-rw-r--r--guix/profiles.scm11
1 files changed, 9 insertions, 2 deletions
diff --git a/guix/profiles.scm b/guix/profiles.scm
index c62d7f4d22..2bd6477cf8 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -1787,6 +1787,11 @@ MANIFEST."
(cons (gexp-input thing output)
(append-map entry->texlive-input deps))
'()))))
+ (define texlive-scripts-entry?
+ (match-lambda
+ (($ <manifest-entry> name version output thing deps)
+ (or (string=? "texlive-scripts" name)
+ (any texlive-scripts-entry? deps)))))
(define texlive-inputs
(append-map entry->texlive-input (manifest-entries manifest)))
(define texlive-scripts
@@ -1887,9 +1892,11 @@ MANIFEST."
(copy-recursively a b)
(invoke mktexlsr b)
(install-file (string-append b "/ls-R") a))))))
-
(with-monad %store-monad
- (if (pair? texlive-inputs)
+ ;; `texlive-scripts' brings essential files to generate font maps.
+ ;; Therefore, it must be present in the profile. This check prevents
+ ;; incomplete modular TeX Live installations to generate errors.
+ (if (any texlive-scripts-entry? (manifest-entries manifest))
(gexp->derivation "texlive-font-maps" build
#:substitutable? #f
#:local-build? #t