diff options
Diffstat (limited to 'guix')
-rw-r--r-- | guix/profiles.scm | 11 | ||||
-rw-r--r-- | guix/scripts/system.scm | 5 |
2 files changed, 13 insertions, 3 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 diff --git a/guix/scripts/system.scm b/guix/scripts/system.scm index f1154dad33..acbe3dab2c 100644 --- a/guix/scripts/system.scm +++ b/guix/scripts/system.scm @@ -686,7 +686,10 @@ checking this by themselves in their 'check' procedure." (find-partition-by-label (file-system-label->string device)))))) (define file-systems - (filter file-system-needed-for-boot? + (filter (lambda (file-system) + (and (file-system-needed-for-boot? file-system) + (not (member (file-system-type file-system) + %pseudo-file-system-types)))) (operating-system-file-systems os))) (for-each (lambda (fs) |