summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRicardo Wurmus <rekado@elephly.net>2022-01-04 15:00:32 +0100
committerRicardo Wurmus <rekado@elephly.net>2022-01-11 10:18:53 +0100
commit2a5ed25c412e162505b2b371d00987fd158a91d4 (patch)
tree45f6f9159e48c518ac8260732266735754ebf1e8
parentf5ef9ffd4834cbcfec9dd6b377938b0d7778426f (diff)
downloadguix-patches-2a5ed25c412e162505b2b371d00987fd158a91d4.tar
guix-patches-2a5ed25c412e162505b2b371d00987fd158a91d4.tar.gz
gnu: texlive-bin: Fix directory traversal.
Fixes <https://bugs.gnu.org/52979>. * gnu/packages/tex.scm (texlive-bin)[arguments]: Add build phase 'patch-directory-traversal.
-rw-r--r--gnu/packages/tex.scm9
1 files changed, 9 insertions, 0 deletions
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index b0e30e3878..7f1aedaa19 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -426,6 +426,15 @@ files from LOCATIONS with expected checksum HASH. CODE is not currently in use.
(with-fluids ((%default-port-encoding "ISO-8859-1"))
(substitute-commands iso-8859-1-encoded-scripts)))))
+ ;; When ST_NLINK_TRICK is set, kpathsea attempts to avoid work when
+ ;; searching files by assuming that a directory with exactly two
+ ;; links has no subdirectories. This assumption does not hold in our
+ ;; case, so some directories with symlinked subdirectories would not
+ ;; be traversed.
+ (add-after 'patch-scripts 'patch-directory-traversal
+ (lambda _
+ (substitute* "texk/kpathsea/config.h"
+ (("#define ST_NLINK_TRICK") ""))))
(add-after 'check 'customize-texmf.cnf
;; The default texmf.cnf is provided by this package, texlive-bin.
;; Every variable of interest is set relatively to the GUIX_TEXMF