gnu: Fix reproducibility for some TeX Live packages.

* guix/build/texlive-build-system.scm (configure-texmf):
* gnu/packages/tex.scm (texlive-xindy-bin): Set TEXMFVAR to "/tmp" instead of
the current build directory as the latter's contents may leak into the package
output. For example, without this change LuaLaTeX, cache files were installed in the
output in every package relying on "lualatex" format.

Change-Id: I7d762b33a50e77af6b4eb1fb17d75dcc5eac950c
This commit is contained in:
Nicolas Goaziou 2026-01-02 14:56:05 +01:00 committed by Andreas Enge
parent 5045a7e993
commit cd9e8d4292
No known key found for this signature in database
GPG key ID: F7D5C9BF765C61E3
2 changed files with 4 additions and 4 deletions

View file

@ -15,7 +15,7 @@
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020, 2021 Paul Garlick <pgarlick@tourbillion-technology.com>
;;; Copyright © 2021, 2022 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2021-2025 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2021-2026 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2021 Leo Le Bouter <lle-bout@zaclys.net>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
@ -93839,7 +93839,7 @@ in terms of the collating order of the text being processed.")
;; HOME and therefore TEXMFVAR are unavailable. Use a local
;; TEXMFVAR instead.
(lambda _
(setenv "TEXMFVAR" (string-append (getcwd) "/texmf-var"))))
(setenv "TEXMFVAR" "/tmp")))
(add-before 'install 'create-missing-directory
;; XXX: Install process does not create this directory.
(lambda _

View file

@ -2,7 +2,7 @@
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Thiago Jung Bauermann <bauermann@kolabnow.com>
;;; Copyright © 2023-2025 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2023-2026 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -105,7 +105,7 @@ generation also needs to be wrapped within a `faketime' call in the
;; Default TEXMFVAR value is relative to $HOME, which is not set during
;; build. This location is used for generating font metrics or building
;; documentation.
(setenv "TEXMFVAR" (string-append (getcwd) "/texmf-var"))
(setenv "TEXMFVAR" (or (getenv "TMPDIR") "/tmp"))
;; By default, a "ls-R" file must exist in TEXMFDIST. However, it isn't
;; generated in the TeX Live tree used to build a package. Consequently,
;; relax this requirement.