summaryrefslogtreecommitdiff
path: root/guix
diff options
context:
space:
mode:
authorNicolas Goaziou <mail@nicolasgoaziou.fr>2023-06-17 11:34:23 +0200
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2023-07-18 18:15:05 +0200
commit9fadbf759c7ae0c4555bf43883f3f0a0d8a4e6a6 (patch)
tree783eb1f894a6c76c82c14254a34badf062ce4643 /guix
parentec97cf15693a0567daa741ecf6d21e6e7ec68134 (diff)
gnu: texlive-bin: Do not install all linked scripts.
* gnu/packages/tex.scm (texlive-scripts): Include only core scripts along with their man pages and their dependencies. Also patch them for use in Guix. (texlive-bin): Simplify package. [inputs]: Remove "texlive-extra-src" and "texlive-scripts" inputs. Remove labels from other inputs. [propagated-inputs]: Add TEXLIVE-SCRIPTS. [arguments]: Use G-expressions. <#:configure-flags>: Add "--disable-linked-scripts". <#:phases>: Remove phases relative to scripts. * guix/profiles.scm (texlive-font-maps): Fetch executables from both TEXLIVE-SCRIPTS and TEXLIVE-BIN. * guix/import/texlive.scm (tlpdb-file): Grab file from TEXLIVE-SCRIPTS instead of TEXLIVE-BIN.
Diffstat (limited to 'guix')
-rw-r--r--guix/import/texlive.scm8
-rw-r--r--guix/profiles.scm14
2 files changed, 13 insertions, 9 deletions
diff --git a/guix/import/texlive.scm b/guix/import/texlive.scm
index 554258f20d..d4fa8bb674 100644
--- a/guix/import/texlive.scm
+++ b/guix/import/texlive.scm
@@ -153,20 +153,20 @@ When TEXLIVE-ONLY is true, only TeX Live packages are returned."
depends)))
(define (tlpdb-file)
- (define texlive-bin
+ (define texlive-scripts
;; Resolve this variable lazily so that (gnu packages ...) does not end up
;; in the closure of this module.
(module-ref (resolve-interface '(gnu packages tex))
- 'texlive-bin))
+ 'texlive-scripts))
(with-store store
(run-with-store store
(mlet* %store-monad
- ((drv (lower-object texlive-bin))
+ ((drv (lower-object texlive-scripts))
(built (built-derivations (list drv))))
(match (derivation->output-paths drv)
(((names . items) ...)
- (return (string-append (first items)
+ (return (string-append (second items) ;"out"
"/share/tlpkg/texlive.tlpdb"))))))))
(define tlpdb
diff --git a/guix/profiles.scm b/guix/profiles.scm
index 30ac0d52e4..35208dd0c9 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -1789,6 +1789,8 @@ MANIFEST."
'()))))
(define texlive-inputs
(append-map entry->texlive-input (manifest-entries manifest)))
+ (define texlive-scripts
+ (module-ref (resolve-interface '(gnu packages tex)) 'texlive-scripts))
(define texlive-bin
(module-ref (resolve-interface '(gnu packages tex)) 'texlive-bin))
(define coreutils
@@ -1823,8 +1825,10 @@ MANIFEST."
":"
#$(file-append grep "/bin")
":"
- #$(file-append sed "/bin")))
- (setenv "PERL5LIB" #$(file-append texlive-bin "/share/tlpkg"))
+ #$(file-append sed "/bin")
+ ":"
+ #$(file-append texlive-bin "/bin")))
+ (setenv "PERL5LIB" #$(file-append texlive-scripts "/share/tlpkg"))
(setenv "GUIX_TEXMF" "/tmp/texlive/share/texmf-dist")
;; Remove invalid maps from config file.
@@ -1834,7 +1838,7 @@ MANIFEST."
(install-file #$(file-append updmap.cfg "/web2c/updmap.cfg") web2c)
(make-file-writable updmap.cfg)
(let* ((port (open-pipe* OPEN_WRITE
- #$(file-append texlive-bin "/bin/updmap-sys")
+ #$(file-append texlive-scripts "/bin/updmap-sys")
"--syncwithtrees"
"--nohash"
"--force"
@@ -1844,7 +1848,7 @@ MANIFEST."
(error "failed to filter updmap.cfg")))
;; Generate font maps.
- (invoke #$(file-append texlive-bin "/bin/updmap-sys")
+ (invoke #$(file-append texlive-scripts "/bin/updmap-sys")
(string-append "--cnffile=" updmap.cfg)
(string-append "--dvipdfmxoutputdir="
maproot "dvipdfmx/updmap")
@@ -1862,7 +1866,7 @@ MANIFEST."
;; 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")))
+ (mktexlsr #$(file-append texlive-scripts "/bin/mktexlsr")))
(copy-recursively a b)
(invoke mktexlsr b)
(install-file (string-append b "/ls-R") a))))))