summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTimothy Sample <samplet@ngyro.com>2023-04-05 13:46:28 -0600
committerNicolas Goaziou <mail@nicolasgoaziou.fr>2023-05-24 18:56:10 +0200
commitbb07562a8913b721c08c46cf7a88a4178df0acf3 (patch)
tree746c354fc5b147de64ce9332a88d4d8830f2377b
parent68a038eb53e68f2a242f069cf490f90a8c379301 (diff)
svn-download: Do not expand keywords.origin/tex-team
Subversion keyword expansion is potentially non-reproducible as some of them expand time strings relative to the local time zone: https://issues.guix.gnu.org/43442#18 In practice this is not a problem in Guix since Subversion checkouts happen in an isolated environment using the "default timezone" (UTC). However, Software Heritage disables keyword expansion for this very reason. By following suit, we make sure content can be retrieved from there. * guix/build/svn.scm (svn-fecth): Pass "--ignore-keywords" to Subversion. * guix/build-system/texlive.scm (%texlive-date): New variable. * gnu/packages/java.scm (java-geronimo-xbean-reflect) (java-geronimo-genesis-2.1): Update the source hash. * gnu/packages/machine-learning.scm (ghmm): Likewise. * gnu/packages/video.scm (libsmpeg, libsmpeg-with-sdl1): Likewise. * gnu/packages/tex.scm (texlive-bin): Update the hash of the "texlive-scripts" input, and a add a new phase that imitates Subversion keyword expansion for scripts that need it. (texlive-latex-base): Update the hash of the "texlive-luatexconfig" native input. (texlive-hyphen-base, texlive-dvipdfmx, texlive-dvips, texlive-cm) (texlive-tex-plain, texlive-kpathsea, texlive-latexconfig) (texlive-tetex, texlive-pdftex, texlive-xetex): Update the source hash. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
-rw-r--r--gnu/packages/java.scm4
-rw-r--r--gnu/packages/machine-learning.scm2
-rw-r--r--gnu/packages/tex.scm52
-rw-r--r--gnu/packages/video.scm4
-rw-r--r--guix/build-system/texlive.scm4
-rw-r--r--guix/build/svn.scm9
6 files changed, 55 insertions, 20 deletions
diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm
index 067284017c..49f027b226 100644
--- a/gnu/packages/java.scm
+++ b/gnu/packages/java.scm
@@ -11240,7 +11240,7 @@ outputting XML data from Java code.")
(file-name (string-append name "-" version))
(sha256
(base32
- "18q3i6jgm6rkw8aysfgihgywrdc5nvijrwnslmi3ww497jvri6ja"))))
+ "0zjqmsad4xk0iar23hdyvx19nxczybd2bh0i35xrafli5cmh720k"))))
(build-system ant-build-system)
(arguments
`(#:jar-name "geronimo-xbean-reflect.jar"
@@ -11291,7 +11291,7 @@ and graphs of objects for dependency injection frameworks")
(file-name (string-append name "-" version "-source"))
(sha256
(base32
- "119yn795jvnjf52si84q192s8wag1k013iabg78b7wnadssnnh31"))))
+ "1mky4zyl2xsqlgrkairaj5971byvhwk2z9bq8snsgvlr11ydc0zf"))))
(build-system ant-build-system)
(arguments
`(#:tests? #f
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 269bfd4459..abc25c510d 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -237,7 +237,7 @@ classification.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
- "0qbq1rqp94l530f043qzp8aw5lj7dng9wq0miffd7spd1ff638wq"))))
+ "07kdsngvr4n1qxpqzv1nlay7g41d6jzjppa8vzmrg220s8ing87z"))))
(build-system gnu-build-system)
(arguments
`(#:imported-modules (,@%gnu-build-system-modules
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index c81f9b1917..b55dd2a5fd 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -27,6 +27,7 @@
;;; Copyright © 2023 Thomas Albers Raviola <thomas@thomaslabs.org>
;;; Copyright © 2023 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2023 Dominik Delgado Steuter <d@delgado.nrw>
+;;; Copyright © 2023 Timothy Sample <samplet@ngyro.com>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -295,7 +296,7 @@ files from LOCATIONS with expected checksum HASH. CODE is not currently in use.
"-checkout"))
(sha256
(base32
- "10xpa4nnz1biap7qfv7fb0zk6132ki5g1j8w0bqwkggfncdfl07d"))))
+ "1jrphfjhmw17rp1yqsl70shmvka3vg0g8841q6zx2lfn48p7vqf3"))))
("cairo" ,cairo)
("fontconfig" ,fontconfig)
("fontforge" ,fontforge)
@@ -423,7 +424,32 @@ files from LOCATIONS with expected checksum HASH. CODE is not currently in use.
(mkdir "texlive-scripts")
(with-directory-excursion "texlive-scripts"
(apply (assoc-ref %standard-phases 'unpack)
- (list #:source (assoc-ref inputs "texlive-scripts"))))))
+ (list #:source (assoc-ref inputs "texlive-scripts")))
+ ;; Configure the version string for some scripts.
+ ;; Normally this would be done by Subversion.
+ ;; See <https://issues.guix.gnu.org/43442#15>.
+ (for-each (lambda (file)
+ (substitute* file
+ (("\\$Id\\$")
+ (format #f "$Id: ~a ~a ~a nobody $"
+ file
+ ,%texlive-revision
+ ,%texlive-date))
+ (("\\$Revision\\$")
+ (format #f "$Revision: ~a $"
+ ,%texlive-revision))
+ (("\\$Date\\$")
+ (format #f "$Date: ~a $"
+ ,%texlive-date))))
+ '("fmtutil.pl"
+ "mktexlsr"
+ "mktexlsr.pl"
+ "mktexmf"
+ "mktexpk"
+ "mktextfm"
+ "tlmgr.pl"
+ "tlmgrgui.pl"
+ "updmap.pl")))))
(add-after 'unpack-texlive-scripts 'patch-scripts
(lambda _
(let* ((scripts (append (find-files "texk/kpathsea" "^mktex")
@@ -784,7 +810,7 @@ out to date by @code{unicode-letters.tex}.")
"/tex/generic/hyphen/hypht1.tex"
"/tex/generic/hyphen/zerohyph.tex")
(base32
- "1sagn9aybs34m1s6m3zwya5g5kbiwfnw8ifcgxssygmzzs88dgjp")
+ "1nad1bqpjsywm49hlv7d75mqvgha3j5vayvkvfhv8wwzgdb3mk84")
#:trivial? #t))
(home-page "https://tug.org/texlive/")
(synopsis "Core hyphenation support files")
@@ -804,7 +830,7 @@ default versions of those), etc.")
"fonts/cmap/dvipdfmx/"
"fonts/map/dvipdfmx/")
(base32
- "04x93w777l9qzdzglwanb14k8cmq74kjcsgyanvp3bsmnn5zfrgz")
+ "08i81hciksh0sm9pw6lw8v8s2rj92p58wd5j2mq1mzqbp171wjmr")
#:trivial? #t)))
(package
(inherit template)
@@ -836,7 +862,7 @@ features as does pdfTeX.")
"/fonts/enc/dvips/base/"
"/tex/generic/dvips/")
(base32
- "0rns1hpjy4fmsskmkwx197j8qbgdmyj0j9214sq9vhpa6nv7czm3")
+ "1fb73mfw9mp4ylp6sfc0465rbdb7k830aq0qf3c085c3n0zyrin8")
#:trivial? #t))
(home-page "https://www.ctan.org/pkg/dvips")
(synopsis "DVI to PostScript drivers")
@@ -1094,7 +1120,7 @@ cite bundle of the author's citation-related packages.")
"/fonts/map/dvips/cm/cmtext-bsr-interpolated.map"
"/doc/fonts/cm/")
(base32
- "1ky4gvcn8qn3d61bvb39512b8r92igv6il7vh02hw04223yj6q8i")
+ "0mfslqs9saqkb3z3xdhsqnklxk858nmipgj1y93by2791jzkma1d")
#:trivial? #t)))
(package
(inherit template)
@@ -1698,7 +1724,7 @@ incorporates the e-TeX extensions.")
"texlive-tex-plain"
(list "/tex/plain/")
(base32
- "0gwygkm8i2jmpf7bfg6fb6824rl7fq4a2s0wni73v0fz6s4chr1n")
+ "1hafbphx1486069cky87hyksx6ia5gd83m4wp2xmgc09z87faf0h")
#:trivial? #t))
(home-page "https://www.ctan.org/pkg/plain")
(synopsis "Plain TeX format and supporting files")
@@ -2904,7 +2930,7 @@ package.")
"/web2c/tcvn-t5.tcx"
"/web2c/viscii-t5.tcx")
(base32
- "00q2nny7lw7jxyln6ch4h0alygbrzk8yynliyc291m53kds1h0mr")
+ "08nfk5hicqbvnz73rjbxi97lcakd9i1k2cy4qi2cwghan92650jq")
#:trivial? #t)))
(package
(inherit template)
@@ -2967,7 +2993,7 @@ default and narrow versions of multiple integrals.")
"texlive-latexconfig"
(list "/tex/latex/latexconfig/")
(base32
- "10ynmd8b9b9l1wl1mva23yz4zir53p6r5z31s39wmxz19pj12qvx")
+ "1x5fyr2185nx3qlyariykdz44hcy5azimrk9db2p707dg08bjhsd")
#:trivial? #t))
(home-page "https://www.tug.org/")
(synopsis "Configuration files for LaTeX-related formats")
@@ -3121,7 +3147,7 @@ formats.")
"/tex/generic/config/luatexiniconfig.tex"
"/web2c/texmfcnf.lua")
(base32
- "0yjx7nw9mgfgnq1givkzbxh7z7ncw1liaddjgm7n2nwn0aw6xfdg")))))
+ "065j47i2785nbj2507pzxlscyrwr4ghv6nksc3a01rp62bq8kkjp")))))
(propagated-inputs
(list texlive-dehyph-exptl
texlive-etex
@@ -4019,7 +4045,7 @@ of file names.")
"/fonts/enc/dvips/tetex/"
"/fonts/map/dvips/tetex/")
(base32
- "1si3as8mwi8837965djlw6jhwwzsp3r1hkflvdxv2avx9vb45hjb")
+ "05mf8yqdj2wrc1zm3al2j4aam2wx0ky6a7slxw17pkd1c7rmvjrq")
#:trivial? #t))
(home-page "https://www.ctan.org/pkg/tetex")
(synopsis "Font maps originally from teTeX")
@@ -8689,7 +8715,7 @@ e-TeX.")
"/tex/generic/pdftex/glyphtounicode.tex"
"/tex/generic/pdftex/pdfcolor.tex")
(base32
- "1wx928rqsv0x1a8vc7aq49w3nglr4bmlhl822slqglymfxrmb91b")
+ "0w4ar5g7x4w8zw8z6hdwqxwcbglfzzq7pcznz8rawllwy6dssr8g")
#:trivial? #t))
;; TODO: add this missing package:
;; dehyph
@@ -13548,7 +13574,7 @@ itself may be shipped out to the DVI file.")
"/fonts/misc/xetex/fontmapping/base/"
"/tex/xelatex/xetexconfig/")
(base32
- "1gmgagvsv2qknrjzjk840ca3wging8wfc20rgq7bnhphm9n87m6q")
+ "0j396anlhk5pqrnwxr8bpq55sp3qfyb6n9g08x4nmaa6p9b9y8ab")
#:trivial? #t))
(propagated-inputs
(list texlive-atbegshi
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index e6c437fbbe..cb0818d453 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -3776,7 +3776,7 @@ Other features include a live preview and live streaming.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
- "18yfkr70lr1x1hc8snn2ldnbzdcc7b64xmkqrfk8w59gpg7sl1xn"))))
+ "1srzyjks9s0g4k7ms8vc0hjby2g6shndnr552hl63pn90sgmwxs9"))))
(build-system gnu-build-system)
(arguments
;; libsmpeg fails to build with -std=c++11, which is the default with
@@ -3812,7 +3812,7 @@ and MPEG system streams.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
- "0jfi085rf3fa5xsn0vd3nqf32my8ph9c6a9445y7a8lrlz4dms64"))))
+ "1jy9xqykhwfg8in0fxjcqcvwazii1ckzs39wp749b926q7ny5bwy"))))
(inputs
(list sdl))))
diff --git a/guix/build-system/texlive.scm b/guix/build-system/texlive.scm
index d970c1beb9..aefd573d11 100644
--- a/guix/build-system/texlive.scm
+++ b/guix/build-system/texlive.scm
@@ -34,7 +34,8 @@
texlive-ref
texlive-origin
%texlive-tag
- %texlive-revision))
+ %texlive-revision
+ %texlive-date))
;; Commentary:
;;
@@ -46,6 +47,7 @@
;; are taken from https://www.tug.org/svn/texlive/tags/
(define %texlive-tag "texlive-2021.3")
(define %texlive-revision 59745)
+(define %texlive-date "2021-06-28 21:59:21Z")
(define (texlive-origin name version locations hash)
"Return an <origin> object for a TeX Live package consisting of multiple
diff --git a/guix/build/svn.scm b/guix/build/svn.scm
index 2d960cb364..875d3c50ca 100644
--- a/guix/build/svn.scm
+++ b/guix/build/svn.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014, 2020 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014, 2020, 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com>
@@ -47,6 +47,13 @@ valid Subversion revision. Return #t on success, #f otherwise."
;; verify the checksum later. This can be removed when
;; ca-certificates package is added.
"--trust-server-cert" "-r" (number->string revision)
+
+ ;; Disable keyword substitutions (keywords are CVS-like strings
+ ;; like "$Date$", "$Id$", and so on) for two reasons: (1) some
+ ;; expansions depend on the local time zone, and (2) SWH disables
+ ;; it in its archive for this very reason.
+ "--ignore-keywords"
+
`(,@(if (and user-name password)
(list (string-append "--username=" user-name)
(string-append "--password=" password))