summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2022-02-14 23:12:46 +0100
committerRicardo Wurmus <rekado@elephly.net>2022-02-14 23:14:42 +0100
commit15cf09fc6970202863d841f71bdd3ffaf2844648 (patch)
treee2e1b622c0648be4c769f2ed75e73f5815677ce1
parent41000d16c5c1586482a76d856c3152a6b8fcce8a (diff)
profiles: texlive-font-maps: Create ls-R file.
* guix/profiles.scm (texlive-font-maps): Run mktexlsr on resulting tree to provide ls-R file.
-rw-r--r--guix/profiles.scm22
1 files changed, 20 insertions, 2 deletions
diff --git a/guix/profiles.scm b/guix/profiles.scm
index 86926d6793..9715a769aa 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -4,7 +4,7 @@
;;; Copyright © 2014, 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
-;;; Copyright © 2016, 2018, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
+;;; Copyright © 2016, 2017, 2018, 2019, 2021, 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2017 Huang Ying <huang.ying.caritas@gmail.com>
;;; Copyright © 2017, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
@@ -1752,6 +1752,8 @@ MANIFEST."
(module-ref (resolve-interface '(gnu packages tex)) 'texlive-bin))
(define coreutils
(module-ref (resolve-interface '(gnu packages base)) 'coreutils))
+ (define grep
+ (module-ref (resolve-interface '(gnu packages base)) 'grep))
(define sed
(module-ref (resolve-interface '(gnu packages base)) 'sed))
(define updmap.cfg
@@ -1779,6 +1781,8 @@ MANIFEST."
(setenv "PATH"
(string-append #$(file-append coreutils "/bin")
":"
+ #$(file-append grep "/bin")
+ ":"
#$(file-append sed "/bin")))
(setenv "PERL5LIB" #$(file-append texlive-bin "/share/tlpkg"))
(setenv "GUIX_TEXMF" "/tmp/texlive/share/texmf-dist")
@@ -1808,7 +1812,21 @@ MANIFEST."
(string-append "--dvipsoutputdir="
maproot "dvips/updmap")
(string-append "--pdftexoutputdir="
- maproot "pdftex/updmap"))))))
+ maproot "pdftex/updmap"))
+
+ ;; Create ls-R file. I know, that's not *just* for font maps, but
+ ;; we've generated new files, so there's no point in running it
+ ;; any earlier. The ls-R file must act on a full TeX Live tree,
+ ;; but we have two: the one in /tmp containing all packages and
+ ;; the one in #$output containing the generated font maps. To
+ ;; avoid having to merge ls-R files, we copy the generated stuff
+ ;; to /tmp and run mktexlsr only once.
+ (let ((a (string-append #$output "/share/texmf-dist"))
+ (b "/tmp/texlive/share/texmf-dist")
+ (mktexlsr #$(file-append texlive-bin "/bin/mktexlsr")))
+ (copy-recursively a b)
+ (invoke mktexlsr b)
+ (install-file (string-append b "/ls-R") a))))))
(mlet %store-monad ((texlive-base (manifest-lookup-package manifest "texlive-base")))
(if texlive-base