guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

13/75: gnu: texlive-latex-bin: Create symlinks for "latex" variants.


From: guix-commits
Subject: 13/75: gnu: texlive-latex-bin: Create symlinks for "latex" variants.
Date: Mon, 10 Jun 2024 12:24:29 -0400 (EDT)

ngz pushed a commit to branch tex-team
in repository guix.

commit 441fc85630aecc6a19e022c34b7cab97f19b0736
Author: Nicolas Goaziou <mail@nicolasgoaziou.fr>
AuthorDate: Thu May 30 23:45:32 2024 +0200

    gnu: texlive-latex-bin: Create symlinks for "latex" variants.
    
    * gnu/packages/tex.scm (texlive-latex-bin)[arguments]<#:phases>: Create
    symlinks for "latex" variants.
    * gnu/packages/tex.scm (texlive-bin)[arguments]<#:phases>: Remove symlink
    creation.
    
    Change-Id: Ib4f1b05082572e8ccb7f5dd5531ed30cf404ce29
---
 gnu/packages/tex.scm | 43 +++++++++++++++++++++++++++----------------
 1 file changed, 27 insertions(+), 16 deletions(-)

diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 0039a44392..65dbc018c0 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -782,23 +782,20 @@ and should be preferred to it whenever a package would 
otherwise depend on
                   (("/usr/include /usr/local/include")
                    (string-append #$(this-package-input "texlive-libkpathsea")
                                   "/include"))))))
-          (add-after 'install 'maybe-create-symlinks
-            ;; Create symbolic links for the latex variants.  We link lualatex
-            ;; to luahbtex; see issue #51252 for details.
+          (add-after 'install 'maybe-clear-symlinks
+            ;; XXX: No matter the combination of configure flags, process
+            ;; insists on creating those dangling links, resulting in an error
+            ;; during `validate-runpath' phase.
             ;;
-            ;; Make it conditional so packages inheriting from this one do not
-            ;; need to remove this phase.
+            ;; Make it specific to TEXLIVE-BIN package by verifying the
+            ;; existence of "tex" binary so that packages inheriting from this
+            ;; one do not need to remove the phase.
             (lambda _
-              (with-directory-excursion (string-append #$output "/bin/")
-                (when (file-exists? "tex") ;for TEXLIVE-BIN only
-                  (for-each symlink
-                            '("pdftex" "pdftex"   "luahbtex")
-                            '("latex"  "pdflatex" "lualatex"))
-                  ;; XXX: No matter the combination of configure flags,
-                  ;; process insists on creating those dangling links,
-                  ;; resulting in an error during `validate-runpath' phase.
-                  (for-each delete-file
-                            '("pbibtex" "pdvitype" "ppltotf" "ptftopl"))))))
+              (let ((bin (string-append #$output "/bin/")))
+                (when (file-exists? (string-append bin "tex"))
+                  (with-directory-excursion bin
+                    (for-each delete-file
+                              '("pbibtex" "pdvitype" "ppltotf" "ptftopl")))))))
           (add-after 'install 'remove-documentation
             ;; Documentation is provided by specific TeX Live packages, in
             ;; a dedicated "doc" output.  Ignore documentation generated when
@@ -46002,7 +45999,21 @@ formats.")
     (arguments
      (list
       #:texlive-latex-bin? #f
-      #:create-formats #~(list "dvilualatex" "latex" "lualatex" "pdflatex")))
+      #:create-formats #~(list "dvilualatex" "latex" "lualatex" "pdflatex")
+      #:phases
+      #~(modify-phases %standard-phases
+          (add-after 'install 'symlink-binaries
+            ;; Create symbolic links for the latex variants.  We link lualatex
+            ;; to luahbtex; see issue #51252 for details.
+            (lambda* (#:key inputs #:allow-other-keys)
+              (let ((pdftex (search-input-file inputs "bin/pdftex"))
+                    (luahbtex (search-input-file inputs "bin/luahbtex"))
+                    (bin (string-append #$output "/bin")))
+                (mkdir-p bin)
+                (with-directory-excursion bin
+                  (symlink pdftex "latex")
+                  (symlink pdftex "pdflatex")
+                  (symlink luahbtex "lualatex"))))))))
     (propagated-inputs
      (list texlive-atbegshi
            texlive-atveryend



reply via email to

[Prev in Thread] Current Thread [Next in Thread]