Christopher Baines wrote 6 years ago
(address . guix-patches@gnu.org)
It is possible to generate a profile where this hook will crash, as the
texmf.cnf file does not exist to be patched by substitute*. A simple example
is the profile just containing texlive-fonts-txfonts.
* guix/profiles.scm (texlive-configuration): Check that the texmf.cnf file
exists before trying to change it.
---
guix/profiles.scm | 15 +++++++++------
1 file changed, 9 insertions(+), 6 deletions(-)
Toggle diff (28 lines)
diff --git a/guix/profiles.scm b/guix/profiles.scm
index d22539bdb2..598e0acf62 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -1363,12 +1363,15 @@ MANIFEST."
(manifest-entries manifest))
#:create-all-directories? #t
#:log-port (%make-void-port "w"))
- (substitute* (string-append #$output
- "/share/texmf-dist/web2c/texmf.cnf")
- (("^TEXMFROOT = .*")
- (string-append "TEXMFROOT = " #$output "/share\n"))
- (("^TEXMF = .*")
- "TEXMF = $TEXMFROOT/share/texmf-dist\n"))
+ (let ((texmf.cnf (string-append
+ #$output
+ "/share/texmf-dist/web2c/texmf.cnf")))
+ (when (file-exists? texmf.cnf)
+ (substitute* texmf.cnf
+ (("^TEXMFROOT = .*")
+ (string-append "TEXMFROOT = " #$output "/share\n"))
+ (("^TEXMF = .*")
+ "TEXMF = $TEXMFROOT/share/texmf-dist\n"))))
#t)))
(with-monad %store-monad
--
2.20.1