summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/admin.scm2
-rw-r--r--gnu/packages/adns.scm4
-rw-r--r--gnu/packages/autotools.scm4
-rw-r--r--gnu/packages/base.scm6
-rw-r--r--gnu/packages/bioinformatics.scm8
-rw-r--r--gnu/packages/commencement.scm917
-rw-r--r--gnu/packages/compression.scm10
-rw-r--r--gnu/packages/dejagnu.scm29
-rw-r--r--gnu/packages/diffoscope.scm6
-rw-r--r--gnu/packages/djvu.scm1
-rw-r--r--gnu/packages/docbook.scm46
-rw-r--r--gnu/packages/file.scm16
-rw-r--r--gnu/packages/gl.scm4
-rw-r--r--gnu/packages/glib.scm10
-rw-r--r--gnu/packages/gnuzilla.scm15
-rw-r--r--gnu/packages/gtk.scm15
-rw-r--r--gnu/packages/libidn.scm10
-rw-r--r--gnu/packages/linux.scm3
-rw-r--r--gnu/packages/maths.scm5
-rw-r--r--gnu/packages/networking.scm6
-rw-r--r--gnu/packages/nss.scm14
-rw-r--r--gnu/packages/patches/gash-utils-ls-test.patch25
-rw-r--r--gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch54
-rw-r--r--gnu/packages/patches/gobject-introspection-cc.patch18
-rw-r--r--gnu/packages/patches/linux-pam-unix_chkpwd.patch9
-rw-r--r--gnu/packages/pdf.scm144
-rw-r--r--gnu/packages/plotutils.scm12
-rw-r--r--gnu/packages/python-xyz.scm61
-rw-r--r--gnu/packages/radio.scm4
-rw-r--r--gnu/packages/ruby.scm4
-rw-r--r--gnu/packages/sdl.scm42
-rw-r--r--gnu/packages/shells.scm27
-rw-r--r--gnu/packages/statistics.scm6
-rw-r--r--gnu/packages/tex.scm2062
-rw-r--r--gnu/packages/web-browsers.scm13
-rw-r--r--gnu/packages/xorg.scm5
-rw-r--r--gnu/system/pam.scm10
38 files changed, 1900 insertions, 1729 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 34d7384448..0297a9a380 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1084,7 +1084,6 @@ dist_patch_DATA = \
%D%/packages/patches/ganeti-shepherd-master-failover.patch \
%D%/packages/patches/ganeti-shepherd-support.patch \
%D%/packages/patches/ganeti-sphinx-compat.patch \
- %D%/packages/patches/gash-utils-ls-test.patch \
%D%/packages/patches/gawk-shell.patch \
%D%/packages/patches/gcc-arm-bug-71399.patch \
%D%/packages/patches/gcc-arm-link-spec-fix.patch \
@@ -1436,6 +1435,7 @@ dist_patch_DATA = \
%D%/packages/patches/linphone-desktop-without-sdk.patch \
%D%/packages/patches/linux-libre-support-for-Pinebook-Pro.patch \
%D%/packages/patches/linux-pam-no-setfsuid.patch \
+ %D%/packages/patches/linux-pam-unix_chkpwd.patch \
%D%/packages/patches/linuxdcpp-openssl-1.1.patch \
%D%/packages/patches/lirc-localstatedir.patch \
%D%/packages/patches/lirc-reproducible-build.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 8331c42f8b..e64ea0725a 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -1317,7 +1317,7 @@ connection alive.")
(list config perl file))
(inputs `(("inetutils" ,inetutils)
- ("bash" ,(canonical-package bash-minimal)) ;for wrap-program
+ ("bash" ,bash-minimal)
,@(if (hurd-target?) '()
`(("net-tools" ,net-tools)
("iproute" ,iproute)))
diff --git a/gnu/packages/adns.scm b/gnu/packages/adns.scm
index 5703016549..432f7367b7 100644
--- a/gnu/packages/adns.scm
+++ b/gnu/packages/adns.scm
@@ -76,9 +76,7 @@ scripts.")
"0gcincjvpll2qmlc906jx6mfq97s87mgi0zby0753ki0rr2ch0s8"))))
(build-system gnu-build-system)
(arguments
- '(;; FIXME: Some tests require network access
- #:tests? #f
- #:phases
+ '(#:phases
(modify-phases %standard-phases
(add-before 'check 'filter-live-tests
(lambda _
diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm
index 1eea731233..0c3152d7f8 100644
--- a/gnu/packages/autotools.scm
+++ b/gnu/packages/autotools.scm
@@ -324,14 +324,14 @@ output is indexed in many ways to simplify browsing.")
(define-public automake
(package
(name "automake")
- (version "1.16.3")
+ (version "1.16.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/automake/automake-"
version ".tar.xz"))
(sha256
(base32
- "0fmz2fhmzcpacnprl5msphvaflwiy0hvpgmqlgfny72ddijzfazz"))
+ "0v8kbw4fan7apbjwziylyjl5z708w452r5q6kpafcmssi04wryl0"))
(patches
(search-patches "automake-skip-amhello-tests.patch"))))
(build-system gnu-build-system)
diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm
index c3b33e3751..f4f6fce6e0 100644
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@ -5,7 +5,7 @@
;;; Copyright © 2014, 2015, 2016, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014 Alex Kost <alezost@gmail.com>
;;; Copyright © 2014, 2015 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
-;;; Copyright © 2016, 2017, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016, 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
@@ -105,14 +105,14 @@ command-line arguments, multiple languages, and so on.")
(define-public grep
(package
(name "grep")
- (version "3.6")
+ (version "3.7")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/grep/grep-"
version ".tar.xz"))
(sha256
(base32
- "0gipv6bzkm1aihj0ncqpyh164xrzgcxcv9r1kwzyk2g1mzl1azk6"))
+ "0g42svbc1nq5bamxfj6x7320wli4dlj86padk0hwgbk04hqxl42w"))
(patches (search-patches "grep-timing-sensitive-test.patch"))))
(build-system gnu-build-system)
(native-inputs (list perl)) ;some of the tests require it
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index ada5965e5f..8a00420946 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -3337,10 +3337,10 @@ data and settings.")
texlive-fonts-ec
texlive-latex-examplep
texlive-hyperref
- texlive-latex-ms
+ texlive-ms
texlive-latex-natbib
- texlive-bibtex ; style files used by natbib
- texlive-pgf ; tikz
+ texlive-bibtex ;style files used by natbib
+ texlive-pgf ;tikz
texlive-latex-verbatimbox)))
("imagemagick" ,imagemagick)))
(home-page "https://dorina.mdc-berlin.de/public/rajewsky/discrover/")
@@ -13432,7 +13432,7 @@ to an artifact/contaminant file.")
(inputs
(list openmpi zlib))
(native-inputs
- `(("texlive" ,(texlive-updmap.cfg (list texlive-latex-graphics
+ `(("texlive" ,(texlive-updmap.cfg (list texlive-graphics
texlive-fonts-ec
texlive-hyperref)))))
(home-page "https://www.ebi.ac.uk/~zerbino/velvet/")
diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm
index e8b47fbeab..9d6ed5fd08 100644
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@ -7,7 +7,7 @@
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius@gnu.org>
-;;; Copyright © 2020 Timothy Sample <samplet@ngyro.com>
+;;; Copyright © 2020, 2022 Timothy Sample <samplet@ngyro.com>
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
@@ -92,7 +92,7 @@
(define bootar
(package
(name "bootar")
- (version "1a")
+ (version "1b")
(source (origin
(method url-fetch)
(uri (list (string-append
@@ -102,7 +102,7 @@
version ".ses")))
(sha256
(base32
- "0mvp6vgx0q316fvy3z2lddlc5xgq5np3bm1fypgvj6dnayibg9np"))))
+ "0cf5vj5yxfvkgzvjvh2l7b2nz5ji5l534n9g4mfp8f5jsjqdrqjc"))))
(build-system gnu-build-system)
(arguments
`(#:implicit-inputs? #f
@@ -121,9 +121,10 @@
(guile (string-append guile-dir "/bin/guile")))
(invoke guile "--no-auto-compile" source)
(chdir "bootar"))))
- (replace 'configure (bootstrap-configure ,version "." "scripts"))
- (replace 'build (bootstrap-build "."))
- (replace 'install (bootstrap-install "." "scripts"))))))
+ (replace 'configure (bootstrap-configure "Bootar" ,version
+ '(".") "scripts"))
+ (replace 'build (bootstrap-build '(".")))
+ (replace 'install (bootstrap-install '(".") "scripts"))))))
(inputs `(("guile" ,%bootstrap-guile)))
(home-page "https://git.ngyro.com/bootar")
(synopsis "Tar decompression and extraction in Guile Scheme")
@@ -143,9 +144,6 @@ pure Scheme to Tar and decompression in one easy step.")
(package
(inherit gash)
(name "gash-boot")
- (source (origin
- (inherit (package-source gash))
- (snippet #f))) ;discard snippet for Guile 3.0 support
(arguments
`(#:implicit-inputs? #f
#:tests? #f
@@ -157,9 +155,10 @@ pure Scheme to Tar and decompression in one easy step.")
(use-modules (guix build gnu-bootstrap))
(modify-phases %standard-phases
(replace 'configure
- (bootstrap-configure ,(package-version gash) "gash" "scripts"))
- (replace 'build (bootstrap-build "gash"))
- (replace 'install (bootstrap-install "gash" "scripts"))
+ (bootstrap-configure "Gash" ,(package-version gash)
+ '("gash") "scripts"))
+ (replace 'build (bootstrap-build '("gash")))
+ (replace 'install (bootstrap-install '("gash") "scripts"))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
@@ -174,10 +173,6 @@ pure Scheme to Tar and decompression in one easy step.")
(package
(inherit gash-utils)
(name "gash-utils-boot")
- (source (origin
- (inherit (package-source gash-utils))
- (patches '())
- (snippet #f))) ;discard snippet for Guile 3.0 support
(arguments
`(#:implicit-inputs? #f
#:tests? #f
@@ -209,9 +204,9 @@ pure Scheme to Tar and decompression in one easy step.")
(substitute* target
(("@UTILITY@") script))))
'("awk" "basename" "cat" "chmod" "cmp" "command"
- "compress" "cp" "cut" "diff" "dirname" "expr"
- "false" "find" "grep" "head" "ln" "ls" "mkdir"
- "mv" "printf" "pwd" "reboot" "rm" "rmdir"
+ "compress" "cp" "cut" "diff" "dirname" "env"
+ "expr" "false" "find" "grep" "head" "ln" "ls"
+ "mkdir" "mv" "printf" "pwd" "reboot" "rm" "rmdir"
"sed" "sleep" "sort" "tar" "test" "touch" "tr"
"true" "uname" "uniq" "wc" "which"))
(format #t "Creating scripts/[.in~%")
@@ -220,10 +215,11 @@ pure Scheme to Tar and decompression in one easy step.")
(("@UTILITY@") "testb"))
(delete-file "scripts/template.in")))
(replace 'configure
- (bootstrap-configure ,(package-version gash-utils)
- "gash" "scripts"))
- (replace 'build (bootstrap-build "gash"))
- (replace 'install (bootstrap-install "gash" "scripts"))
+ (bootstrap-configure "Gash-Utils" ,(package-version gash-utils)
+ '("gash" "gash-utils") "scripts"))
+ (replace 'build (bootstrap-build '("gash" "gash-utils")))
+ (replace 'install
+ (bootstrap-install '("gash" "gash-utils") "scripts"))
;; XXX: The scripts should add Gash to their load paths and
;; this phase should not exist.
(add-after 'install 'copy-gash
@@ -247,7 +243,19 @@ pure Scheme to Tar and decompression in one easy step.")
(copy-file (string-append gash-godir "/gash/compat.go")
(string-append godir "/gash/compat.go"))
(copy-recursively (string-append gash-godir "/gash/compat")
- (string-append godir "/gash/compat")))))))))
+ (string-append godir "/gash/compat")))))
+ ;; We need an external echo.
+ (add-after 'install 'make-echo
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (gash (assoc-ref inputs "gash")))
+ (with-output-to-file (string-append out "/bin/echo")
+ (lambda ()
+ (display (string-append "#!" gash "/bin/gash\n"))
+ (newline)
+ (display "echo \"$@\"")
+ (newline)))
+ (chmod (string-append out "/bin/echo") #o755))))))))
(inputs `(("gash" ,gash-boot)
("guile" ,%bootstrap-guile)))
(native-inputs `(("bootar" ,bootar)))))
@@ -655,152 +663,6 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
("tcc" ,tcc-boot0)
,@(%boot-gash-inputs)))
-(define bzip2-mesboot
- ;; The initial bzip2
- (package
- (inherit bzip2)
- (name "bzip2-mesboot")
- (version (package-version bzip2))
- (source (bootstrap-origin (package-source bzip2)))
- (supported-systems '("i686-linux" "x86_64-linux"))
- (inputs '())
- (propagated-inputs '())
- (native-inputs (%boot-tcc0-inputs))
- (outputs '("out"))
- (arguments
- `(#:implicit-inputs? #f
- #:guile ,%bootstrap-guile
- #:parallel-build? #f
- #:tests? #f ; check is naive, also checks non-built PROGRAMS
- #:strip-binaries? #f ; no strip yet
- #:make-flags (list "CC=tcc -I ." "AR=tcc -ar" "bzip2"
- (string-append "PREFIX="
- (assoc-ref %outputs "out")))
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'scripted-patch
- (lambda _
- (substitute* "Makefile"
- (("\tln " all)
- (string-append "\t#" all)))
- (substitute* "bzip2.c"
- (("struct utimbuf uTimBuf;" all)
- (string-append "// " all))
- (("uTimBuf[.]" all)
- (string-append "// " all))
- (("retVal = utime [(] dstName, &uTimBuf [)];" all)
- (string-append "retVal = 0; // " all)))))
- (replace 'configure
- (lambda _
- (with-output-to-file "utime.h"
- (lambda _ (display "
-#define fchown(filedes, owner, group) 0
-#define fchmod(filedes, mode) 0
-")))))
- (replace 'check
- (lambda _
- (invoke "./bzip2" "--help")))
- ;; FIXME: no compressing gzip yet
- (delete 'compress-documentation))))))
-
-(define bash-mesboot0
- ;; The initial Bash
- (package
- (inherit static-bash)
- (name "bash-mesboot0")
- (version "2.05b")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/bash/bash-"
- version ".tar.gz"))
- (sha256
- (base32
- "1r1z2qdw3rz668nxrzwa14vk2zcn00hw7mpjn384picck49d80xs"))))
- (inputs '())
- (propagated-inputs '())
- (native-inputs (%boot-tcc0-inputs))
- (outputs '("out"))
- (arguments
- `(#:implicit-inputs? #f
- #:guile ,%bootstrap-guile
- #:parallel-build? #f
- #:strip-binaries? #f ; no strip yet
- #:configure-flags
- (list "--build=i686-unknown-linux-gnu"
- "--host=i686-unknown-linux-gnu"
-
- "--without-bash-malloc"
- "--disable-readline"
- "--disable-history"
- "--disable-help-builtin"
- "--disable-progcomp"
- "--disable-net-redirections"
- "--disable-nls"
-
- ;; Pretend 'dlopen' is missing so we don't build loadable
- ;; modules and related code.
- "ac_cv_func_dlopen=no")
- #:make-flags '("bash")
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'setenv
- (lambda _
- (let* ((gash (assoc-ref %build-inputs "bash"))
- (shell (string-append gash "/bin/gash")))
- (setenv "CONFIG_SHELL" shell)
- (setenv "SHELL" shell)
- (setenv "CC" "tcc")
- (setenv "LD" "tcc")
- (setenv "AR" "tcc -ar")
- (setenv "CFLAGS" "-D _POSIX_VERSION=1"))))
- (add-after 'unpack 'scripted-patch
- (lambda _
- (substitute* "Makefile.in"
- (("mksyntax\\.c\n") "mksyntax.c -lgetopt\n")
- (("buildversion[.]o\n") "buildversion.o -lgetopt\n")
- ;; No size in Gash
- (("\tsize ") "#\tsize"))
- (substitute* "lib/sh/oslib.c"
- (("int name, namelen;") "char *name; int namelen;"))
- (substitute* "lib/sh/snprintf.c"
- (("^#if (defined [(]HAVE_LOCALE_H[)])" all define) (string-append "#if 0 //" define)))
- (substitute* "configure"
- ((" egrep") " grep"))))
- (replace 'configure
- (lambda* (#:key configure-flags #:allow-other-keys)
- (let ((configure-flags (filter (lambda (x)
- (and (not (string-prefix? "CONFIG_SHELL=" x))
- (not (string-prefix? "SHELL=" x))))
- configure-flags)))
- (format (current-error-port)
- "running ./configure ~a\n" (string-join configure-flags)))
- (apply invoke (cons "./configure" configure-flags))))
- (add-after 'configure 'configure-fixups
- (lambda _
- (substitute* "config.h"
- (("#define GETCWD_BROKEN 1") "#undef GETCWD_BROKEN"))
- (let ((config.h (open-file "config.h" "a")))
- (display "
-// tcc: error: undefined symbol 'enable_hostname_completion'
-#define enable_hostname_completion(on_or_off) 0
-
-// /gnu/store/…-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice
-#define HAVE_POSIX_SIGNALS 1
-#define endpwent(x) 0
-"
- config.h)
- (close config.h))))
- (replace 'check
- (lambda _
- (invoke "./bash" "--version")))
- (replace 'install
- (lambda _
- (let* ((out (assoc-ref %outputs "out"))
- (bin (string-append out "/bin")))
- (mkdir-p bin)
- (copy-file "bash" (string-append bin "/bash"))
- (copy-file "bash" (string-append bin "/sh"))))))))))
-
(define tcc-boot
;; The final tcc.
(package
@@ -811,8 +673,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
(build-system gnu-build-system)
(inputs '())
(propagated-inputs '())
- (native-inputs `(("bzip2" ,bzip2-mesboot)
- ,@(%boot-tcc0-inputs)))
+ (native-inputs (%boot-tcc0-inputs))
(arguments
`(#:implicit-inputs? #f
#:guile ,%bootstrap-guile
@@ -820,14 +681,6 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
#:strip-binaries? #f ; no strip yet
#:phases
(modify-phases %standard-phases
- ;; tar xvf ..bz2 gives
- ;; bzip2: PANIC -- internal consistency error
- (replace 'unpack
- (lambda* (#:key source #:allow-other-keys)
- (copy-file source "tarball.tar.bz2")
- (invoke "bzip2" "-d" "tarball.tar.bz2")
- (invoke "tar" "xvf" "tarball.tar")
- (chdir (string-append "tcc-" ,version))))
(add-after 'unpack 'scripted-patch
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "libtcc.c"
@@ -931,56 +784,9 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
;; FIXME: no compressing gzip yet
(delete 'compress-documentation))))))
-(define sed-mesboot0
- ;; The initial sed.
- (package
- (inherit sed)
- (name "sed-mesboot0")
- (version "1.18")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/sed/sed-"
- version ".tar.gz"))
- (sha256
- (base32
- "1hyv7i82jd0q18xcql51ylc8jwadp3gb3irgcqlis3v61p35jsv2"))))
- (supported-systems '("i686-linux" "x86_64-linux"))
- (inputs '())
- (propagated-inputs '())
- (native-inputs (%boot-tcc0-inputs))
- (arguments
- `(#:implicit-inputs? #f
- #:guile ,%bootstrap-guile
- #:parallel-build? #f
- #:configure-flags '("CC=tcc")
- #:make-flags '("CC=tcc" "extra_objs=" "DEFS=-D HAVE_BCOPY")
- #:strip-binaries? #f ; no strip yet
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'scripted-patch
- (lambda _
- (let* ((out (assoc-ref %outputs "out"))
- (bash (assoc-ref %build-inputs "bash"))
- (shell (string-append bash "/bin/bash")))
- (substitute* "configure"
- (("/bin/sh") shell)))))
- (replace 'check
- (lambda _
- (invoke "./sed" "--version")))
- (replace 'install
- (lambda _
- (let* ((out (assoc-ref %outputs "out"))
- (bin (string-append out "/bin")))
- (install-file "sed" bin)))))))))
-
(define (%boot-tcc-inputs)
- `(("bash" ,bash-mesboot0)
- ("bzip2" ,bzip2-mesboot)
- ("gzip" ,gzip-mesboot)
+ `(("gzip" ,gzip-mesboot)
("patch" ,patch-mesboot)
- ("sed" ,sed-mesboot0)
- ;; Place lower than sed so we don't override it.
- ("gash-utils" ,gash-utils-boot)
("tcc" ,tcc-boot)
,@(alist-delete "tcc" (%boot-tcc0-inputs))))
@@ -989,14 +795,17 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
(package
(inherit binutils)
(name "binutils-mesboot0")
- (version "2.14")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/binutils/binutils-"
- version ".tar.gz"))
- (sha256
- (base32
- "1w8xp7k44bkijr974x9918i4p1sw4g2fcd5mxvspkjpg38m214ds"))))
+ (version "2.20.1a")
+ (source (bootstrap-origin
+ (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/binutils/binutils-"
+ version ".tar.bz2"))
+ (patches (search-patches "binutils-boot-2.20.1a.patch"))
+ (patch-guile %bootstrap-guile)
+ (sha256
+ (base32
+ "0r7dr0brfpchh5ic0z9r4yxqn4ybzmlh25sbp30cacqk8nb7rlvi")))))
(inputs '())
(propagated-inputs '())
(native-inputs (%boot-tcc-inputs))
@@ -1008,40 +817,21 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\"
#:parallel-build? #f
#:strip-binaries? #f ; no strip yet
#:configure-flags
- (let ((out (assoc-ref %outputs "out")))
- `("--disable-nls"
+ (let ((cppflags (string-append " -D __GLIBC_MINOR__=6"
+ " -D MES_BOOTSTRAP=1"))
+ (bash (assoc-ref %build-inputs "bash")))
+ `(,(string-append "CONFIG_SHELL=" bash "/bin/sh")
+ ,(string-append "CPPFLAGS=" cppflags)
+ "AR=tcc -ar"
+ "CXX=false"
+ "RANLIB=true"
+ ,(string-append "CC=tcc" cppflags)
+ "--disable-nls"
"--disable-shared"
"--disable-werror"
- "--build=i386-unknown-linux"
- "--host=i386-unknown-linux"
- "--target=i386-unknown-linux"
- "--with-sysroot=/"
- ,(string-append "--prefix=" out)))
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'setenv
- (lambda _
- (let* ((out (assoc-ref %outputs "out"))
- (bash (assoc-ref %build-inputs "bash"))
- (shell (string-append bash "/bin/bash")))
- (setenv "CONFIG_SHELL" shell)
- (setenv "SHELL" shell)
- (setenv "AR" "tcc -ar")
- (setenv "RANLIB" "true")
- (setenv "CC" "tcc -D __GLIBC_MINOR__=6"))))
- (add-after 'unpack 'scripted-patch
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "bfd/configure"
- (("^sed -e '/SRC-POTFILES.*" all)
- "echo -e 'all:\\n\\ttrue\\n\\ninstall:\\n\\ttrue\\n' > po/Makefile\n"))))
- (replace 'configure ; needs classic invocation of configure
- (lambda* (#:key configure-flags #:allow-other-keys)
- (format (current-error-port)
- "running ./configure ~a\n" (string-join configure-flags))
- (apply system* "./configure" configure-flags)
- (substitute* "config.status"
- (("[.]//dev/null") "/dev/null"))
- (invoke "sh" "./config.status"))))))))
+ "--build=i686-unknown-linux-gnu"
+ "--host=i686-unknown-linux-gnu"
+ "--with-sysroot=/"))))))
(define gcc-core-mesboot0
;; Gcc-2.95.3 is the most recent GCC that is supported by what the Mes C
@@ -1168,7 +958,6 @@ ac_cv_c_float_format='IEEE (little-endian)'
(define (%boot-mesboot-core-inputs)
`(("binutils" ,binutils-mesboot0)
- ("gawk" ,gawk-mesboot0)
("gcc" ,gcc-core-mesboot0)
,@(alist-delete "tcc" (%boot-tcc-inputs))))
@@ -1199,72 +988,6 @@ ac_cv_c_float_format='IEEE (little-endian)'
(copy-recursively "include" out)
(copy-recursively headers out)))))))))
-(define gawk-mesboot0
- ;; The initial Gawk.
- (package
- (inherit gawk)
- (name "gawk-mesboot0")
- (version "3.0.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gawk/gawk-"
- version ".tar.gz"))
- (sha256
- (base32
- "087s7vpc8zawn3l7bwv9f44bf59rc398hvaiid63klw6fkbvabr3"))))
- (supported-systems '("i686-linux" "x86_64-linux"))
- (inputs '())
- (propagated-inputs '())
- (native-inputs (%boot-tcc-inputs))
- (arguments
- `(#:implicit-inputs? #f
- #:guile ,%bootstrap-guile
- #:configure-flags '("--build=i686-unknown-linux-gnu"
- "--host=i686-unknown-linux-gnu"
- "--disable-nls")
- #:make-flags '("gawk")
- #:parallel-build? #f
- #:parallel-tests? #f
- #:strip-binaries? #f ; no strip yet
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'scripted-patch
- (lambda _
- (substitute* "Makefile.in"
- (("date ") "echo today ")
- ((" autoheader") "true")
- ((" -lm ") " "))
- (substitute* "test/Makefile.in"
- (("^bigtest:.*") "bigtest: basic\n")
- (("( |\t)(childin|convfmt|fflush|longwrds|math|negexp)" all sep) sep))))
- (add-before 'configure 'setenv
- (lambda _
- (let* ((out (assoc-ref %outputs "out"))
- (bash (assoc-ref %build-inputs "bash"))
- (shell (string-append bash "/bin/bash")))
- (setenv "CONFIG_SHELL" shell)
- (setenv "SHELL" shell)
- (setenv "CC" "tcc")
- (setenv "CPP" "tcc -E")
- (setenv "LD" "tcc")
- (setenv "ac_cv_func_getpgrp_void" "yes")
- (setenv "ac_cv_func_tzset" "yes"))))
- (replace 'configure ; needs classic invocation of configure
- (lambda* (#:key configure-flags #:allow-other-keys)
- (let* ((out (assoc-ref %outputs "out"))
- (configure-flags
- `(,@configure-flags
- ,(string-append "--prefix=" out))))
- (format (current-error-port) "running ./configure ~a\n" (string-join configure-flags))
- (system* "touch" "configure") ; aclocal.m4 is newer than configure
- (apply invoke (cons "./configure" configure-flags)))))
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin")))
- (install-file "gawk" bin)
- (symlink "gawk" (string-append bin "/awk"))))))))))
-
(define glibc-mesboot0
;; GNU C Library 2.2.5 is the most recent glibc that we managed to build
;; using gcc-2.95.3. Newer versions (2.3.x, 2.6, 2.1x) seem to need a newer
@@ -1409,97 +1132,6 @@ ac_cv_c_float_format='IEEE (little-endian)'
("libc" ,glibc-mesboot0)
,@(alist-delete "gcc" (%boot-mesboot-core-inputs))))
-(define tar-mesboot
- ;; Initial tar with support for xz compression.
- (package
- (inherit tar)
- (name "tar-mesboot")
- (version "1.22")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/tar/tar-"
- version ".tar.gz"))
- (sha256
- (base32
- "19nvix64y95n5v6rr5g9g3fn08zz85cb5anzd7csfv4a4sz9lw4y"))))
- (supported-systems '("i686-linux" "x86_64-linux"))
- (inputs '())
- (propagated-inputs '())
- (native-inputs (%boot-mesboot0-inputs))
- (arguments
- `(#:implicit-inputs? #f
- #:guile ,%bootstrap-guile
- #:parallel-build? #f
- #:tests? #f ; check is naive, also checks non-built PROGRAMS
- #:strip-binaries? #f ; no strip yet
- #:configure-flags '("--build=i686-unknown-linux-gnu"
- "--host=i686-unknown-linux-gnu"
- "--disable-nls")
- #:phases
- (modify-phases %standard-phases
- (replace 'configure
- (lambda* (#:key configure-flags #:allow-other-keys)
- (let* ((out (assoc-ref %outputs "out"))
- (bash (assoc-ref %build-inputs "bash"))
- (shell (string-append bash "/bin/bash")))
- (setenv "CONFIG_SHELL" shell)
- (setenv "SHELL" shell)
- (setenv "LIBS" "-lc -lnss_files -lnss_dns -lresolv")
- (setenv "gl_cv_func_rename_dest_works" "yes")
- (format (current-error-port)
- "running ./configure ~a\n" (string-join configure-flags))
- (apply invoke (cons "./configure" configure-flags)))))
- (add-after 'unpack 'scripted-patch
- (lambda _
- (let* ((bash (assoc-ref %build-inputs "bash"))
- (shell (string-append bash "/bin/bash")))
- (substitute* "configure"
- ((" /bin/sh") shell)))
- (substitute* "Makefile.in"
- (("^SUBDIRS = doc") "SUBDIRS ="))))
- (replace 'install
- (lambda _
- (let* ((out (assoc-ref %outputs "out"))
- (bin (string-append out "/bin")))
- (install-file "src/tar" bin)))))))))
-
-(define grep-mesboot
- ;; The initial grep.
- (package
- (inherit grep)
- (name "grep-mesboot")
- (version "2.0")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/grep/grep-"
- version ".tar.gz"))
- (sha256
- (base32
- "1w862l80lgc5mxvpiy4cfwk761d6xxavn0m3xd2l7xs2kmzvp6lq"))))
- (supported-systems '("i686-linux" "x86_64-linux"))
- (inputs '())
- (propagated-inputs '())
- (native-inputs (%boot-mesboot0-inputs))
- (arguments
- `(#:implicit-inputs? #f
- #:guile ,%bootstrap-guile
- #:parallel-build? #f
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'patch-configure
- (lambda _
- (let* ((bash (assoc-ref %build-inputs "bash"))
- (shell (string-append bash "/bin/bash")))
- (substitute* "configure"
- ((" [|][|] ./config.status") " || sh ./config.status")))))
- (replace 'install
- (lambda _
- (let* ((out (assoc-ref %outputs "out"))
- (bin (string-append out "/bin")))
- (install-file "grep" bin)
- (symlink "grep" (string-append bin "/egrep"))
- (symlink "grep" (string-append bin "/fgrep"))))))))))
-
(define binutils-mesboot1
(package
(inherit binutils-mesboot0)
@@ -1515,46 +1147,7 @@ ac_cv_c_float_format='IEEE (little-endian)'
"--build=i686-unknown-linux-gnu"
"--host=i686-unknown-linux-gnu"
"--with-sysroot=/"
- ,(string-append "--prefix=" out))))
- ((#:phases phases)
- `(modify-phases ,phases
- (replace 'setenv
- (lambda _
- (let* ((out (assoc-ref %outputs "out"))
- (bash (assoc-ref %build-inputs "bash"))
- (shell (string-append bash "/bin/bash")))
- (setenv "CONFIG_SHELL" shell))))))))))
-
-(define coreutils-mesboot0
- (package
- (inherit coreutils)
- (name "coreutils-mesboot0")
- ;; The latest .gz release of Coreutils is 8.13; which does not build with gcc-2.95.3:
- ;; randperm.c: In function `sparse_swap':
- ;; randperm.c:117: invalid lvalue in unary `&'
- (version "5.0") ; 2003-04
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/coreutils/coreutils-"
- version ".tar.gz"))
- (sha256
- (base32
- "10wq6k66i8adr4k08p0xmg87ff4ypiazvwzlmi7myib27xgffz62"))))
- (native-inputs (%boot-mesboot0-inputs))
- (supported-systems '("i686-linux" "x86_64-linux"))
- (inputs '())
- (propagated-inputs '())
- (arguments
- `(#:implicit-inputs? #f
- #:tests? #f ; WARNING: `perl' is needed, ...
- #:parallel-build? #f
- #:strip-binaries? #f ; strip: unrecognized option `--only-keep-debug'
- #:guile ,%bootstrap-guile
- #:configure-flags
- '("--disable-doc"
- "LIBS=-lc -lnss_files -lnss_dns -lresolv"
- "ac_cv_func_gethostbyname=no"
- "gl_cv_func_rename_dest_works=yes")))))
+ ,(string-append "--prefix=" out))))))))
(define gnu-make-mesboot
(package
@@ -1588,150 +1181,11 @@ ac_cv_c_float_format='IEEE (little-endian)'
(bin (string-append out "/bin")))
(install-file "make" bin)))))))))
-(define gawk-mesboot
- (package
- (inherit gawk)
- (name "gawk-mesboot")
- (version "3.1.8")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/gawk/gawk-"
- version ".tar.gz"))
- (sha256
- (base32
- "03d5y7jabq7p2s7ys9alay9446mm7i5g2wvy8nlicardgb6b6ii1"))))
- (native-inputs `(,@(%boot-mesboot0-inputs)
- ("mesboot-headers" ,mesboot-headers)))
- (supported-systems '("i686-linux" "x86_64-linux"))
- (inputs '())
- (propagated-inputs '())
- (arguments
- `(#:implicit-inputs? #f
- #:parallel-build? #f
- #:guile ,%bootstrap-guile
- #:configure-flags '("ac_cv_func_connect=no")
- #:make-flags '("gawk")
- #:phases
- (modify-phases %standard-phases
- (replace 'check
- (lambda _
- (invoke "./gawk" "--version")))
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin")))
- (install-file "gawk" bin)
- (symlink "gawk" (string-append bin "/awk"))))))))))
-
-(define sed-mesboot
- (package
- (inherit sed)
- (name "sed-mesboot")
- (version "4.0.6") ; 2003-04
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/sed/sed-"
- version ".tar.gz"))
- (sha256
- (base32
- "0861ij94cqc4vaaki6r2wlapwcmhpx4ggp4r70f46mb21a8fkvf1"))))
- (native-inputs (%boot-mesboot0-inputs))
- (supported-systems '("i686-linux" "x86_64-linux"))
- (inputs '())
- (propagated-inputs '())
- (arguments
- `(#:implicit-inputs? #f
- #:parallel-build? #f
- #:guile ,%bootstrap-guile
- #:tests? #f ; 8to7 fails
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack '/bin/sh
- (lambda _
- (let* ((bash (assoc-ref %build-inputs "bash"))
- (shell (string-append bash "/bin/bash")))
- (substitute* "testsuite/Makefile.tests"
- (("^SHELL = /bin/sh")
- (string-append "SHELL = " shell)))))))))))
-
-(define bash-mesboot
- (package
- (inherit bash-mesboot0)
- (version "4.4")
- (name "bash-mesboot")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/bash/bash-"
- version ".tar.gz"))
- (sha256
- (base32
- "1jyz6snd63xjn6skk7za6psgidsd53k05cr3lksqybi0q6936syq"))))
- (inputs '())
- (propagated-inputs '())
- (native-inputs (%boot-mesboot0-inputs))
- (outputs '("out"))
- (arguments
- `(#:implicit-inputs? #f
- #:guile ,%bootstrap-guile
- #:parallel-build? #f
- #:configure-flags
- '("--build=i686-unknown-linux-gnu"
- "--host=i686-unknown-linux-gnu"
-
- "--without-bash-malloc"
- "--disable-readline"
- "--disable-history"
- "--disable-help-builtin"
- "--disable-progcomp"
- "--disable-net-redirections"
- "--disable-nls"
-
- ;; Pretend 'dlopen' is missing so we don't build loadable
- ;; modules and related code.
- "ac_cv_func_dlopen=no")
- #:make-flags '("bash")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'scripted-patch
- (lambda _
- (substitute* "shell.c"
- ((";;") ";"))))
- (add-before 'configure 'setenv
- (lambda _
- (setenv "AWK" "gawk")
- (setenv "LIBS" "-lc -lnss_files -lnss_dns -lresolv")
- (setenv "gl_cv_func_rename_dest_works" "yes")))
- (add-after 'configure 'configure-fixups
- (lambda _
- (let ((config.h (open-file "config.h" "a")))
- (display (string-append "
-#define enable_hostname_completion(on_or_off) 0
-")
- config.h)
- (close config.h))))
- (replace 'check
- (lambda _
- (invoke "./bash" "--version")))
- (replace 'install
- (lambda _
- (let* ((out (assoc-ref %outputs "out"))
- (bin (string-append out "/bin")))
- (mkdir-p bin)
- (copy-file "bash" (string-append bin "/bash"))
- (copy-file "bash" (string-append bin "/sh"))))))))))
-
(define (%boot-mesboot1-inputs)
- `(("bash" ,bash-mesboot)
- ("binutils" ,binutils-mesboot1)
- ("coreutils" ,coreutils-mesboot0)
- ("gawk" ,gawk-mesboot)
- ("grep" ,grep-mesboot)
+ `(("binutils" ,binutils-mesboot1)
("make" ,gnu-make-mesboot)
- ("sed" ,sed-mesboot)
- ("tar" ,tar-mesboot)
,@(fold alist-delete (%boot-mesboot0-inputs)
- '("bash" "binutils" "bootar" "coreutils" "gash"
- "gawk" "grep" "guile" "make" "sed" "tar"))))
+ '("binutils" "make"))))
(define gmp-boot
(let ((version "4.3.2"))
@@ -1925,57 +1379,22 @@ ac_cv_c_float_format='IEEE (little-endian)'
`(("gcc" ,gcc-mesboot1)
,@(alist-delete "gcc" (%boot-mesboot1-inputs))))
-(define xz-mesboot
- ;; Finally, we can build xz.
- (package
- (inherit xz)
- (name "xz-mesboot")
- (version "5.0.0")
- (source (bootstrap-origin
- (origin
- (method url-fetch)
- (uri (list (string-append "http://tukaani.org/xz/xz-" version
- ".tar.gz")
- (string-append "http://multiprecision.org/guix/xz-"
- version ".tar.gz")))
- (sha256
- (base32
- "0kf40ggbs1vaaj5s9k4csycahzqcf65n20pa6lngqhm6j0cj3agb")))))
- (supported-systems '("i686-linux" "x86_64-linux"))
- (inputs '())
- (outputs '("out"))
- (propagated-inputs '())
- (native-inputs (%boot-mesboot2-inputs))
- (arguments
- `(#:implicit-inputs? #f
- #:guile ,%bootstrap-guile
- #:parallel-build? #f
- #:configure-flags
- `("--disable-assembler"
- "--disable-shared"
- "--enable-small"
- "--disable-threads"
- "--disable-xzdec"
- "--disable-lzmadec"
- "--disable-lzmainfo"
- "--disable-lzma-links"
- "--disable-scripts"
- "--disable-doc"
- "--disable-nls"
- "--disable-symbol-versions"
- ;; configure disqualifies BASH, CPP, GCC and GREP
- ;; all of which seem fine for the build
- "ac_cv_prog_cc_c99=-std=gnu9x"
- "ac_cv_path_GREP=grep"
- "gl_cv_posix_shell=bash"
- "ac_cv_have_decl_optreset=no"
- "CPPFLAGS=-D__GNUC__=1")))))
-
(define hello-mesboot
- ;; Check for Scheme-only bootstrap.
+ ;; Check for Scheme-only bootstrap. Note that newer versions of Hello
+ ;; break due to the way that newer versions of Gnulib handle
+ ;; "limits.h". Hence, we stick to 2.10.
(package
(inherit hello)
(name "hello-mesboot")
+ (version "2.10")
+ (source
+ (origin
+ (inherit (package-source hello))
+ (uri (string-append "mirror://gnu/hello/hello-" version
+ ".tar.gz"))
+ (sha256
+ (base32
+ "0ssi1wpaf7plaswqqjwigppsg5fyh99vdlb9kzl7c9lng89ndq1i"))))
(supported-systems '("i686-linux" "x86_64-linux"))
(inputs '())
(propagated-inputs '())
@@ -1995,76 +1414,51 @@ ac_cv_c_float_format='IEEE (little-endian)'
(define binutils-mesboot
(package
- (inherit binutils)
+ (inherit binutils-mesboot1)
(name "binutils-mesboot")
- (version "2.20.1a")
- (source (bootstrap-origin
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/binutils/binutils-"
- version ".tar.bz2"))
- (patches (search-patches "binutils-boot-2.20.1a.patch"))
- (sha256
- (base32
- "0r7dr0brfpchh5ic0z9r4yxqn4ybzmlh25sbp30cacqk8nb7rlvi")))))
+ (native-inputs (%boot-mesboot2-inputs))))
+
+;; Sadly we have to introduce Gawk here. The "versions.awk" script of
+;; glibc 2.16.0 is too complicated for Gash-Utils. This is the version
+;; of Gawk used previously during bootstrap. It's possible that a newer
+;; version would work, too, but this one was already ready to go.
+(define gawk-mesboot
+ (package
+ (inherit gawk)
+ (name "gawk-mesboot")
+ (version "3.1.8")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnu/gawk/gawk-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "03d5y7jabq7p2s7ys9alay9446mm7i5g2wvy8nlicardgb6b6ii1"))))
+ (native-inputs (%boot-mesboot2-inputs))
+ (supported-systems '("i686-linux" "x86_64-linux"))
(inputs '())
(propagated-inputs '())
- (native-inputs `(("xz" ,xz-mesboot)
- ,@(%boot-mesboot2-inputs)))
- (supported-systems '("i686-linux" "x86_64-linux"))
(arguments
`(#:implicit-inputs? #f
- #:guile ,%bootstrap-guile
- #:tests? #f ; runtest: command not found
#:parallel-build? #f
- #:strip-binaries? #f ; no strip yet
- #:configure-flags
- `("CC=gcc"
- "CXX=false"
- "RANLIB=true"
- "--disable-doc"
- "--disable-nls"
- "--disable-shared"
- "--disable-werror"
- "--build=i686-unknown-linux-gnu"
- "--host=i686-unknown-linux-gnu"
- "--with-sysroot=/"
- ;; checking for grep that handles long lines and -e
- "ac_cv_path_GREP=grep")
- ;; FIXME: ac_cv_path_GREP=grep doesn't seem to be forwarded to
- ;; cascading configure's?
- #:make-flags '("ac_cv_path_GREP=grep")
+ #:guile ,%bootstrap-guile
+ #:configure-flags '("ac_cv_func_connect=no")
+ #:make-flags '("gawk")
#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'scripted-patch
+ (replace 'check
(lambda _
- ;; sed-mesboot0 cannot build these
- (copy-file "binutils/Makefile.in" "binutils/Makefile.in.orig")
- (substitute* "binutils/Makefile.in"
- ;; binutils/binutils uses an amazingly complex install
- ;; command, using FOR, SED, READ, IF, ECHO, SED, SED, AWK,
- ;; READ, and then LIBTOOL (to do something like
- ;; `mkdir $DESTDIR$bindir; cp readline $DESTDIR$bindir ...')
-
- ;; Some tool [debugme!] cannot handle two escaped newlines
- ;; (bash?), and the install stops after $(am__EXEEXT_11)
- ;; ("objcopy"), so $(am__EXEEXT_13) ("readelf") and others do
- ;; not get installed. Remove the stray newline:
- (("^\t@BUILD_NLMCONV@ @BUILD_SRCONV@ @BUILD_DLLTOOL@ @BUILD_WINDRES@ .*") ""))
- (substitute* "opcodes/Makefile.in"
- (("^SUBDIRS = [.] po") "SUBDIRS = ."))
- (substitute* "binutils/Makefile.in"
- (("^SUBDIRS = doc po") "SUBDIRS ="))
- (substitute* "gas/Makefile.in"
- (("^SUBDIRS = doc po") "SUBDIRS ="))
- (substitute* "gprof/Makefile.in"
- (("^SUBDIRS = po") "SUBDIRS ="))
- (substitute* "ld/Makefile.in"
- (("^SUBDIRS = po") "SUBDIRS =")))))))))
+ (invoke "./gawk" "--version")))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (install-file "gawk" bin)
+ (symlink "gawk" (string-append bin "/awk"))))))))))
(define (%boot-mesboot3-inputs)
`(("binutils" ,binutils-mesboot)
- ("xz" ,xz-mesboot)
+ ("gawk" ,gawk-mesboot)
,@(alist-delete "binutils" (%boot-mesboot2-inputs))))
(define glibc-headers-mesboot
@@ -2141,6 +1535,11 @@ ac_cv_c_float_format='IEEE (little-endian)'
(out (assoc-ref outputs "out")))
(apply invoke "make" make-flags)
(copy-recursively kernel-headers out))))
+ (add-before 'configure 'remove-bashism
+ (lambda _
+ (substitute* "sysdeps/unix/make-syscalls.sh"
+ (("\\$[{]vdso_symver//\\./_[}]")
+ "$(echo $vdso_symver | sed -e 's/\\./_/g')"))))
(replace 'configure
(lambda* (#:key configure-flags #:allow-other-keys)
(format (current-error-port) "running ../configure ~a\n"
@@ -2186,6 +1585,17 @@ SHELL := " shell "
(list (string-append "SHELL=" bash "/bin/sh"))))
((#:phases phases)
#~(modify-phases #$phases
+ (add-after 'unpack 'simplify-intl-tests
+ (lambda _
+ ;; The bootstrap Guile (2.0.9) crashes trying to
+ ;; perform a regex on non-ASCII text. This gets
+ ;; triggered by 'intl/po2test.sed' running over
+ ;; 'po/de.po'. If we ever remove the bootstrap
+ ;; Guile or add pure-Scheme regex to Gash, this can
+ ;; be removed.
+ (substitute* '("catgets/Makefile"
+ "intl/Makefile")
+ (("de\\.po") "en_GB.po"))))
(replace 'install
(lambda* (#:key outputs make-flags #:allow-other-keys)
(let* ((kernel-headers (assoc-ref %build-inputs "kernel-headers"))
@@ -2207,8 +1617,8 @@ SHELL := " shell "
(name "gcc-mesboot1-wrapper")
(source #f)
(inputs '())
- (native-inputs `(("bash" ,bash-mesboot)
- ("coreutils" ,coreutils-mesboot0)
+ (native-inputs `(("bash" ,gash-boot)
+ ("coreutils" ,gash-utils-boot)
("libc" ,glibc-mesboot)
("gcc" ,gcc-mesboot1)))
(arguments
@@ -2346,8 +1756,8 @@ exec " gcc "/bin/" program
(version (package-version gcc-mesboot))
(source #f)
(inputs '())
- (native-inputs `(("bash" ,bash-mesboot)
- ("coreutils" ,coreutils-mesboot0)
+ (native-inputs `(("bash" ,gash-boot)
+ ("coreutils" ,gash-utils-boot)
("libc" ,glibc-mesboot)
("gcc" ,gcc-mesboot)))))
@@ -2356,24 +1766,59 @@ exec " gcc "/bin/" program
("gcc" ,gcc-mesboot)
,@(fold alist-delete (%boot-mesboot4-inputs) '("gcc" "gcc-wrapper"))))
-(define coreutils-mesboot
+(define (mesboot-package name pkg)
(package
- (inherit coreutils)
- (name "coreutils-mesboot")
- (source (bootstrap-origin (package-source coreutils)))
+ (inherit pkg)
+ (name name)
+ (source (bootstrap-origin (package-source pkg)))
(native-inputs (%boot-mesboot5-inputs))
(supported-systems '("i686-linux" "x86_64-linux"))
(inputs '())
(propagated-inputs '())
(arguments
- `(#:implicit-inputs? #f
- #:guile ,%bootstrap-guile
- #:tests? #f))))
+ (ensure-keyword-arguments (package-arguments pkg)
+ `(#:implicit-inputs? #f
+ #:guile ,%bootstrap-guile
+ #:tests? #f)))))
+
+;; These packages are needed to complete the rest of the bootstrap.
+;; In the future, Gash et al. could handle it directly, but it's not
+;; ready yet.
+(define bash-mesboot (mesboot-package "bash-mesboot" static-bash))
+(define coreutils-mesboot (mesboot-package "coreutils-mesboot" coreutils))
+(define grep-mesboot (mesboot-package "grep-mesboot" grep))
+(define sed-mesboot (mesboot-package "sed-mesboot" sed))
+
+;; The XZ implementation in Bootar cannot decompress 'tar'.
+(define xz-mesboot
+ (let ((pkg (mesboot-package "xz-mesboot" xz)))
+ (package
+ (inherit pkg)
+ (arguments
+ (ensure-keyword-arguments (package-arguments pkg)
+ ;; XXX: This fails even though the
+ ;; actual runpaths seem fine.
+ `(#:validate-runpath? #f))))))
+
+;; We don't strictly need Tar here, but it allows us to get rid of
+;; Bootar and Gash-Utils and continue with the standard GNU tools.
+(define tar-mesboot
+ (let ((pkg (mesboot-package "tar-mesboot" tar)))
+ (package
+ (inherit pkg)
+ (native-inputs
+ `(("xz" ,xz-mesboot)
+ ,@(package-native-inputs pkg))))))
(define (%boot-mesboot6-inputs)
- `(("coreutils" ,coreutils-mesboot)
+ `(("bash" ,bash-mesboot)
+ ("coreutils" ,coreutils-mesboot)
+ ("grep" ,grep-mesboot)
+ ("sed" ,sed-mesboot)
+ ("tar" ,tar-mesboot)
+ ("xz" ,xz-mesboot)
,@(fold alist-delete (%boot-mesboot5-inputs)
- '("coreutils" "kernel-headers"))))
+ '("bash" "coreutils" "bootar" "kernel-headers"))))
(define (%bootstrap-inputs+toolchain)
;; The traditional bootstrap-inputs. For the i686-linux, x86_64-linux
@@ -2544,6 +1989,7 @@ exec " gcc "/bin/" program
#:implicit-inputs? #f
#:guile ,%bootstrap-guile
#:configure-flags '("--disable-bzlib")
+ #:make-flags '("CFLAGS+=-std=c11")
#:strip-binaries? #f
#:validate-runpath? #f
,@(package-arguments file)))))
@@ -3147,8 +2593,7 @@ memoized as a function of '%current-system'."
`(,@(%boot0-inputs)
("expat" ,expat-sans-tests))) ;remove OpenSSL, zlib, etc.
(native-inputs ;and pkg-config
- `(("sitecustomize.py" ,(local-file (search-auxiliary-file
- "python/sitecustomize.py")))))
+ `())
(arguments
`(#:implicit-inputs? #f
#:guile ,%bootstrap-guile
@@ -3174,6 +2619,13 @@ memoized as a function of '%current-system'."
;; Prevent the 'ossaudiodev' extension from being
;; built, since it requires Linux headers.
(("'linux', ") ""))))
+ (add-after 'install 'remove-tests
+ (lambda* (#:key outputs #:allow-other-keys)
+ (delete-file-recursively
+ (string-append (assoc-ref outputs "out")
+ "/lib/python"
+ ,(version-major+minor version)
+ "/test"))))
,@(if (hurd-system?)
`((add-before 'build 'fix-regen
(lambda* (#:key inputs #:allow-other-keys)
@@ -3181,11 +2633,14 @@ memoized as a function of '%current-system'."
(substitute* "Lib/plat-generic/regen"
(("/usr/include/")
(string-append libc "/include/")))))))
- '())
- (add-after 'install 'install-sitecustomize.py
- ,(customize-site version)))))
+ '()))))
(native-search-paths
- (list (guix-pythonpath-search-path version)))))
+ (list (search-path-specification
+ (variable "PYTHONPATH")
+ (files (list (string-append
+ "lib/python"
+ (version-major+minor version)
+ "/site-packages"))))))))
(define/system-dependent ld-wrapper-boot0
;; The first 'ld' wrapper, defined with 'define/system-dependent' because
diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm
index 3edaecd951..ecb1e69328 100644
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@ -232,14 +232,14 @@ adding and extracting files to/from a tar archive.")
(define-public gzip
(package
(name "gzip")
- (version "1.10")
+ (version "1.11")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gzip/gzip-"
version ".tar.xz"))
(sha256
(base32
- "1h6p374d3j8d4cdfydzls021xa2yby8myc0h8d6m8bc7k6ncq9c4"))))
+ "01vrly90rvc98af6rcmrb3gwv1l6pylasvsdka23dffwizb9b6lv"))))
(build-system gnu-build-system)
(synopsis "General file (de)compression (using lzw)")
(arguments
@@ -260,15 +260,13 @@ adding and extracting files to/from a tar archive.")
(string-append "#if !defined _IO_IN_BACKUP && defined _IO_EOF_SEEN\n"
"# define _IO_IN_BACKUP 0x100\n"
"#endif\n\n"
- "/* BSD stdio derived implementations")))
- #t))
+ "/* BSD stdio derived implementations")))))
(add-after 'unpack 'use-absolute-name-of-gzip
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "gunzip.in"
(("exec gzip")
(string-append "exec " (assoc-ref outputs "out")
- "/bin/gzip")))
- #t)))))
+ "/bin/gzip"))))))))
(description
"GNU Gzip provides data compression and decompression utilities; the
typical extension is \".gz\". Unlike the \"zip\" format, it compresses a single
diff --git a/gnu/packages/dejagnu.scm b/gnu/packages/dejagnu.scm
index 08be5a8afd..b51a2f22ad 100644
--- a/gnu/packages/dejagnu.scm
+++ b/gnu/packages/dejagnu.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Ludovic Courtès <ludo@gnu.org>
-;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flasher.co.il>
+;;; Copyright © 2016, 2017, 2022 Efraim Flashner <efraim@flasher.co.il>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
@@ -43,25 +43,25 @@
'(#:phases
(modify-phases %standard-phases
(replace 'check
- (lambda _
+ (lambda* (#:key tests? #:allow-other-keys)
;; Note: The test-suite *requires* /dev/pts among the
;; `build-chroot-dirs' of the build daemon when
;; building in a chroot. See
;; <http://thread.gmane.org/gmane.linux.distributions.nixos/1036>
;; for details.
- (if (and (directory-exists? "/dev/pts")
- (directory-exists? "/proc"))
+ (when tests?
+ (if (and (directory-exists? "/dev/pts")
+ (directory-exists? "/proc"))
(begin
- ;; Provide `runtest' with a log name, otherwise it
- ;; tries to run `whoami', which fails when in a chroot.
- (setenv "LOGNAME" "guix-builder")
+ ;; Provide `runtest' with a log name, otherwise it
+ ;; tries to run `whoami', which fails when in a chroot.
+ (setenv "LOGNAME" "guix-builder")
- ;; The test-suite needs to have a non-empty stdin:
- ;; <http://lists.gnu.org/archive/html/bug-dejagnu/2003-06/msg00002.html>.
- (unless (zero? (system "make check < /dev/zero"))
- (error "make check failed")))
- (display "test suite cannot be run, skipping\n"))
- #t))
+ ;; The test-suite needs to have a non-empty stdin:
+ ;; <http://lists.gnu.org/archive/html/bug-dejagnu/2003-06/msg00002.html>.
+ (unless (zero? (system "make check < /dev/zero"))
+ (error "make check failed")))
+ (display "test suite cannot be run, skipping\n")))))
(add-after 'install 'post-install
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Use the right `expect' binary.
@@ -71,8 +71,7 @@
(("^mypath.*$" all)
(string-append all
"export PATH="
- expect "/bin:$PATH\n")))
- #t))))))
+ expect "/bin:$PATH\n")))))))))
(home-page
"https://www.gnu.org/software/dejagnu/")
(synopsis "GNU software testing framework")
diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm
index ca71ecc952..ede0452765 100644
--- a/gnu/packages/diffoscope.scm
+++ b/gnu/packages/diffoscope.scm
@@ -34,7 +34,6 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages cpio)
#:use-module (gnu packages dbm)
- #:use-module (gnu packages file) ;for 'file-next'
#:use-module (gnu packages gettext)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages gnome)
@@ -172,11 +171,6 @@
dtc
e2fsprogs
ffmpeg
-
- ;; XXX: Must be the same version as python-magic uses;
- ;; remove when 'file' is updated.
- file-next
-
fpc
gettext-minimal
ghostscript
diff --git a/gnu/packages/djvu.scm b/gnu/packages/djvu.scm
index 07c77f318e..4773e408da 100644
--- a/gnu/packages/djvu.scm
+++ b/gnu/packages/djvu.scm
@@ -159,7 +159,6 @@ a continuous layout.")
("exiv2" ,exiv2)
("graphicsmagick" ,graphicsmagick)
("poppler" ,poppler)
- ("poppler-data" ,poppler-data)
("util-linux-lib" ,util-linux "lib"))) ; for libuuid
(arguments
`(#:test-target "test"
diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm
index 6575bf2d75..5ee6fcccde 100644
--- a/gnu/packages/docbook.scm
+++ b/gnu/packages/docbook.scm
@@ -4,7 +4,7 @@
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
-;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Andrew Whatson <whatson@gmail.com>
@@ -153,7 +153,8 @@ by no means limited to these applications.) This package provides XML DTDs.")
"18hgwvmywh6a5jh38szjmg3hg2r4v5lb6r3ydc3rd8cp9wg61i5c"))))))
(define-public docbook-xml-4.1.2
- (package (inherit docbook-xml)
+ (package
+ (inherit docbook-xml)
(version "4.1.2")
(source (origin
(method url-fetch)
@@ -167,13 +168,22 @@ by no means limited to these applications.) This package provides XML DTDs.")
#:builder
(begin
(use-modules (guix build utils))
- (let ((source (assoc-ref %build-inputs "source"))
- (unzip (string-append (assoc-ref %build-inputs "unzip")
- "/bin/unzip"))
- (dtd (string-append (assoc-ref %outputs "out")
- "/xml/dtd/docbook")))
+ (let* ((source (assoc-ref %build-inputs "source"))
+ (unzip (string-append (assoc-ref %build-inputs "unzip")
+ "/bin/unzip"))
+ (xmlcatalog (string-append (assoc-ref %build-inputs "libxml2")
+ "/bin/xmlcatalog"))
+ (dtd (string-append (assoc-ref %outputs "out")
+ "/xml/dtd/docbook"))
+ (catalog.xml (string-append dtd "/catalog.xml")))
(mkdir-p dtd)
- (invoke unzip source "-d" dtd)))))))
+ (invoke unzip source "-d" dtd)
+ ;; Create a minimal XML catalog, to use with libxml2 tools.
+ (invoke xmlcatalog "--noout" "--create" catalog.xml)
+ (invoke xmlcatalog "--noout" "--add" "public"
+ "-//OASIS//DTD DocBook XML V4.1.2//EN"
+ (string-append dtd "/docbookx.dtd") catalog.xml)))))
+ (native-inputs (list libxml2 unzip))))
(define-public docbook-xsl
(package
@@ -467,29 +477,25 @@ the in DocBook SGML DTDs.")
texlive-latex-changebar
texlive-latex-colortbl
texlive-latex-fancybox
- texlive-latex-fancyhdr
- texlive-latex-fancyvrb
+ texlive-fancyhdr
+ texlive-fancyvrb
texlive-latex-float
texlive-latex-footmisc
texlive-hyperref
texlive-latex-jknapltx
-
- ;; TODO: Use non-deprecated name on
- ;; next rebuild cycle.
- texlive-latex-listings
-
+ texlive-listings
texlive-latex-multirow
texlive-latex-overpic
- texlive-latex-pdfpages
- texlive-latex-refcount
- texlive-latex-subfigure
- texlive-latex-titlesec
+ texlive-pdfpages
+ texlive-refcount
+ texlive-subfigure
+ texlive-titlesec
texlive-wasysym
texlive-fonts-rsfs
texlive-stmaryrd
- texlive-generic-iftex)))
+ texlive-iftex)))
("imagemagick" ,imagemagick) ;for convert
("inkscape" ,inkscape) ;for svg conversion
("docbook" ,docbook-xml)
diff --git a/gnu/packages/file.scm b/gnu/packages/file.scm
index 5e379d888b..3515258be4 100644
--- a/gnu/packages/file.scm
+++ b/gnu/packages/file.scm
@@ -32,14 +32,14 @@
(define-public file
(package
(name "file")
- (version "5.39")
+ (version "5.41")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ftp.astron.com/pub/file/file-"
version ".tar.gz"))
(sha256
(base32
- "1lgs2w2sgamzf27kz5h7pajz7v62554q21fbs11n4mfrfrm2hpgh"))))
+ "0gv027jgdr0hdkw7m9ck0nwhq583f4aa7vnz4dzdbxv4ng3k5r8k"))))
(build-system gnu-build-system)
;; When cross-compiling, this package depends upon a native install of
@@ -58,15 +58,3 @@ extensions to tell you the type of a file, but looks at the actual contents
of the file. This package provides the libmagic library.")
(license bsd-2)
(home-page "https://www.darwinsys.com/file/")))
-
-(define-public file-next
- (package
- (inherit file)
- (version "5.41")
- (source (origin
- (method url-fetch)
- (uri (string-append "http://ftp.astron.com/pub/file/file-"
- version ".tar.gz"))
- (sha256
- (base32
- "0gv027jgdr0hdkw7m9ck0nwhq583f4aa7vnz4dzdbxv4ng3k5r8k"))))))
diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm
index 0ff39dc24d..4cc451016b 100644
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@ -260,7 +260,7 @@ also known as DXTn or DXTC) for Mesa.")
(define-public mesa
(package
(name "mesa")
- (version "21.3.2")
+ (version "21.3.7")
(source
(origin
(method url-fetch)
@@ -272,7 +272,7 @@ also known as DXTn or DXTC) for Mesa.")
version "/mesa-" version ".tar.xz")))
(sha256
(base32
- "1g96y59bw10ml8h4jl259g41jdmf5ww3jbwqpz1sprq7hgxvmrz2"))
+ "0ggw3s514z6szasbiy4dv5mdi689121yy2xly2g21gv1mavrvyml"))
(patches
(search-patches "mesa-skip-tests.patch"))))
(build-system meson-build-system)
diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm
index 7e6acc0984..7bb0fdc9f4 100644
--- a/gnu/packages/glib.scm
+++ b/gnu/packages/glib.scm
@@ -427,14 +427,14 @@ be used when cross-compiling."
(define gobject-introspection
(package
(name "gobject-introspection")
- (version "1.66.1")
+ (version "1.68.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/"
"gobject-introspection/" (version-major+minor version)
"/gobject-introspection-" version ".tar.xz"))
(sha256
- (base32 "078n0q7b6z682mf4irclrksm73cyixq295mqnqifl9plwmgaai6x"))
+ (base32 "09sawnv3xj9pzgy2qrrk87dl3jibfphnswb61i5bh0d2h4j28afj"))
(patches (search-patches
"gobject-introspection-cc.patch"
"gobject-introspection-girepository.patch"
@@ -483,11 +483,7 @@ be used when cross-compiling."
("bison" ,bison)
("flex" ,flex)))
(inputs
- `(,@(if (%current-target-system)
- `(("python" ,python))
- `(("bison" ,bison)
- ("flex" ,flex)
- ("python" ,python-wrapper)))
+ `(("python" ,python)
("zlib" ,zlib)))
(propagated-inputs
(list glib
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index 2096f712bb..88637d2fcd 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -51,6 +51,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system cargo)
#:use-module (guix build-system trivial)
+ #:use-module (guix build-system mozilla)
#:use-module (gnu packages admin)
#:use-module (gnu packages audio)
#:use-module (gnu packages autotools)
@@ -113,7 +114,7 @@
(substitute* '("js/src/config/milestone.pl")
(("defined\\(@TEMPLATE_FILE)") "@TEMPLATE_FILE"))
#t))))
- (build-system gnu-build-system)
+ (build-system mozilla-build-system)
(native-inputs
`(("perl" ,perl)
("pkg-config" ,pkg-config)
@@ -388,15 +389,7 @@ in C/C++.")
;; This is important because without it gjs will segfault during the
;; configure phase. With jemalloc only the standalone mozjs console
;; will work.
- "--disable-jemalloc"
- ;; Mozilla deviates from Autotools conventions due to historical
- ;; reasons.
- #$@(if (%current-target-system)
- #~(#$(string-append
- "--host="
- (nix-system->gnu-triplet (%current-system)))
- #$(string-append "--target=" (%current-target-system)))
- #~())))
+ "--disable-jemalloc"))
#:phases
(modify-phases %standard-phases
;; Make sure pkg-config will be found.
@@ -902,7 +895,7 @@ in C/C++.")
(name "icecat")
(version %icecat-version)
(source icecat-source)
- (build-system gnu-build-system)
+ (build-system mozilla-build-system)
(inputs
`(("alsa-lib" ,alsa-lib)
("bzip2" ,bzip2)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 0abe22d637..f3a32787af 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -188,7 +188,7 @@ tools have full access to view and control running applications.")
("pkg-config" ,pkg-config)
("python" ,python-wrapper)))
(inputs
- `(("bash-minimal" ,bash-minimal)
+ `(("bash-minimal" ,bash-minimal) ;for glib-or-gtk-wrap
("drm" ,libdrm)
("ghostscript" ,ghostscript)
("libspectre" ,libspectre)
@@ -638,9 +638,8 @@ highlighting and other features typical of a source code editor.")
(with-directory-excursion "docs"
(substitute* "meson.build"
(("http://docbook.sourceforge.net/release/xsl/current/")
- (string-append (assoc-ref ,(if (%current-target-system)
- '(or native-inputs inputs)
- 'inputs) "docbook-xsl")
+ (string-append (assoc-ref (or native-inputs inputs)
+ "docbook-xsl")
"/xml/xsl/docbook-xsl-1.79.2/")))
(substitute* (find-files "." "\\.xml$")
(("http://www.oasis-open.org/docbook/xml/4\\.3/")
@@ -654,11 +653,11 @@ highlighting and other features typical of a source code editor.")
(("\\[ 'pixbuf-fail', \\['conform', 'slow'\\], \\],")
""))))
;; The slow tests take longer than the specified timeout.
- ,@(if (any (cute string=? <> (%current-system))
- '("armhf-linux" "aarch64-linux"))
+ ,@(if (target-arm? (%current-system))
'((replace 'check
- (lambda _
- (invoke "meson" "test" "--timeout-multiplier" "5"))))
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "meson" "test" "--timeout-multiplier" "5")))))
'()))))
(propagated-inputs
(list ;; Required by gdk-pixbuf-2.0.pc
diff --git a/gnu/packages/libidn.scm b/gnu/packages/libidn.scm
index 7c8b77f6fb..e21cbb0e69 100644
--- a/gnu/packages/libidn.scm
+++ b/gnu/packages/libidn.scm
@@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2016, 2017, 2021 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2017, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
@@ -34,14 +34,14 @@
(define-public libidn
(package
(name "libidn")
- (version "1.37")
+ (version "1.38")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/libidn/libidn-" version
".tar.gz"))
(sha256
(base32
- "1hljls9rkilh04dwiwg388wk8djkac8idijrdysqq2nqbh6rg3iw"))))
+ "1xphpfw58il0vb14nvd0rgfkacj76rchv8nr9nqkpkapyx0bh06y"))))
(build-system gnu-build-system)
;; FIXME: No Java and C# libraries are currently built.
(arguments
@@ -60,14 +60,14 @@ Java libraries.")
(define-public libidn2
(package
(name "libidn2")
- (version "2.3.1")
+ (version "2.3.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/libidn/" name "-" version
".tar.gz"))
(sha256
(base32
- "0b8gsksj2g9f4iywwdma3v4jcg7i9rqvdxfmclwvbf1n72a89xla"))))
+ "14agfrv7lhwba9l20966kmp96ppzbyr9bld9g4shks3qwza0r53n"))))
(inputs
(list libunistring))
(build-system gnu-build-system)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index c69773c37b..6b80688eb7 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -1594,7 +1594,8 @@ which need to be installed separately.")
(sha256
(base32
"1z4jayf69qyyxln1gl6ch4qxfd66ib1g42garnrv2d8i1drl0790"))
- (patches (search-patches "linux-pam-no-setfsuid.patch"))))
+ (patches (search-patches "linux-pam-unix_chkpwd.patch"
+ "linux-pam-no-setfsuid.patch"))))
(build-system gnu-build-system)
(native-inputs
diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm
index ecb85642ec..0a6962ebeb 100644
--- a/gnu/packages/maths.scm
+++ b/gnu/packages/maths.scm
@@ -5393,6 +5393,8 @@ set.")
texlive-caption
texlive-cm
texlive-etoolbox
+ texlive-fancyhdr
+ texlive-fancyvrb
texlive-jknappen
texlive-sectsty
texlive-tex-gyre
@@ -5403,8 +5405,6 @@ set.")
texlive-latex-cmap
texlive-latex-colortbl
texlive-latex-etoc
- texlive-latex-fancyhdr
- texlive-latex-fancyvrb
texlive-latex-float
texlive-latex-fncychap
texlive-latex-framed
@@ -5422,6 +5422,7 @@ set.")
texlive-latex-tocloft
texlive-latex-upquote
texlive-latex-varwidth
+ texlive-titlesec
texlive-ulem
texlive-wasysym
texlive-wrapfig))))
diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm
index b45f2f79f2..d58db17825 100644
--- a/gnu/packages/networking.scm
+++ b/gnu/packages/networking.scm
@@ -951,7 +951,7 @@ and SSH, and it can use both TCP and UDP as transport mechanisms.")
(define-public socat
(package
(name "socat")
- (version "1.7.4.1")
+ (version "1.7.4.3")
(source (origin
(method url-fetch)
(uri (string-append
@@ -959,7 +959,7 @@ and SSH, and it can use both TCP and UDP as transport mechanisms.")
version ".tar.bz2"))
(sha256
(base32
- "1sbmqqvni3ss9wyay6ik5v81kxffkra80mh4ypgj74g82iba5b1z"))))
+ "01w0hpqf5xmgn40s1ablfd4y67dlrx5y9zlx24spc1qm8h81hwyl"))))
(build-system gnu-build-system)
(arguments '(#:tests? #f)) ; no test suite
(inputs (list openssl))
@@ -2280,7 +2280,7 @@ sockets in Perl.")
(inputs
(list dbus zlib))
(arguments
- `(#:phases
+ '(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
diff --git a/gnu/packages/nss.scm b/gnu/packages/nss.scm
index aae8886095..92f23bf166 100644
--- a/gnu/packages/nss.scm
+++ b/gnu/packages/nss.scm
@@ -29,6 +29,7 @@
#:use-module (guix gexp)
#:use-module (guix download)
#:use-module (guix build-system gnu)
+ #:use-module (guix build-system mozilla)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages bash)
@@ -49,7 +50,7 @@
(sha256
(base32
"1j5b2m8cjlhnnv8sq34587avaagkqvh521w4f95miwgvsn3xlaap"))))
- (build-system gnu-build-system)
+ (build-system mozilla-build-system)
(inputs
;; For 'compile-et.pl' and 'nspr-config'.
(list perl ;for 'compile-et.pl'
@@ -69,16 +70,7 @@
(list "--disable-static"
"--enable-64bit"
(string-append "LDFLAGS=-Wl,-rpath="
- (assoc-ref %outputs "out") "/lib")
- ;; Mozilla deviates from Autotools conventions
- ;; due to historical reasons. Adjust to Mozilla conventions,
- ;; otherwise the Makefile will try to use TARGET-gcc
- ;; as a ‘native’ compiler.
- ,@(if (%current-target-system)
- `(,(string-append "--host="
- (nix-system->gnu-triplet (%current-system)))
- ,(string-append "--target=" (%current-target-system)))
- '()))
+ (assoc-ref %outputs "out") "/lib"))
;; Use fixed timestamps for reproducibility.
#:make-flags '("SH_DATE='1970-01-01 00:00:01'"
;; This is epoch 1 in microseconds.
diff --git a/gnu/packages/patches/gash-utils-ls-test.patch b/gnu/packages/patches/gash-utils-ls-test.patch
deleted file mode 100644
index e1dfb9c23b..0000000000
--- a/gnu/packages/patches/gash-utils-ls-test.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-'ls.scm' monkey-patches (ice-9 getopt-long) to allow it to recognize '-1'
-as a valid option. Unfortunately, monkey patching no longer works with
-Guile 3.0 due to inlining, so change the test to make do without '-1'.
-
-diff --git a/tests/core-utils.org b/tests/core-utils.org
-index d35ede8..22718e3 100644
---- a/tests/core-utils.org
-+++ b/tests/core-utils.org
-@@ -93,14 +93,11 @@
- * ls
- :script:
- #+begin_src sh
-- ls -1 tests/data/star
-+ ls tests/data/star
- #+end_src
- :stdout:
- #+begin_example
-- 0
-- 1
-- 2
-- 3
-+ 0 1 2 3
- #+end_example
-
- * test-file
diff --git a/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch b/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch
index 956fa617c3..c23b054a39 100644
--- a/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch
+++ b/gnu/packages/patches/gobject-introspection-absolute-shlib-path.patch
@@ -1,11 +1,20 @@
-# Names of libraries included in typelib files are opened by dlopen. Here we
-# add the full path.
-#
-# This patch was provided by Luca Bruno <lucabru@src.gnome.org> for
-# 'gobject-introspection' 1.40.0 in Nix.
-#
-# It has since been updated to work with newer versions of
-# gobject-introspection.
+Names of libraries included in typelib files are opened by dlopen.
+Here we add the full path.
+
+This patch was provided by Luca Bruno <lucabru@src.gnome.org>,
+for 'gobject-introspection' 1.40.0 in Nix.
+
+It has since been updated to work with newer versions of
+gobject-introspection.
+---
+ giscanner/scannermain.py | 37 ++++++++++++++++++++++++++++++++++++
+ giscanner/shlibs.py | 30 ++++++++++++++++++++---------
+ giscanner/utils.py | 15 +++++----------
+ tests/scanner/test_shlibs.py | 3 ++-
+ 4 files changed, 65 insertions(+), 20 deletions(-)
+
+diff --git a/giscanner/scannermain.py b/giscanner/scannermain.py
+index 957ba0b7..78f9b11b 100644
--- a/giscanner/scannermain.py
+++ b/giscanner/scannermain.py
@@ -95,6 +95,39 @@ def get_windows_option_group(parser):
@@ -48,7 +57,7 @@
def _get_option_parser():
parser = optparse.OptionParser('%prog [options] sources',
version='%prog ' + giscanner.__version__)
-@@ -205,6 +238,10 @@ match the namespace prefix.""")
+@@ -214,6 +247,10 @@ match the namespace prefix.""")
parser.add_option("", "--filelist",
action="store", dest="filelist", default=[],
help="file containing headers and sources to be scanned")
@@ -59,6 +68,8 @@
group = get_preprocessor_option_group(parser)
parser.add_option_group(group)
+diff --git a/giscanner/shlibs.py b/giscanner/shlibs.py
+index 9f8ab5df..8aa37c99 100644
--- a/giscanner/shlibs.py
+++ b/giscanner/shlibs.py
@@ -57,6 +57,14 @@ def _ldd_library_pattern(library_name):
@@ -76,7 +87,7 @@
# This is a what we do for non-la files. We assume that we are on an
# ELF-like system where ldd exists and the soname extracted with ldd is
# a filename that can be opened with dlopen().
-@@ -106,7 +112,8 @@ def _resolve_non_libtool(options, binary, libraries):
+@@ -108,7 +116,8 @@ def _resolve_non_libtool(options, binary, libraries):
output = output.decode("utf-8", "replace")
shlibs = resolve_from_ldd_output(libraries, output)
@@ -86,7 +97,7 @@
def sanitize_shlib_path(lib):
-@@ -115,19 +122,18 @@ def sanitize_shlib_path(lib):
+@@ -117,19 +126,18 @@ def sanitize_shlib_path(lib):
# In case we get relative paths on macOS (like @rpath) then we fall
# back to the basename as well:
# https://gitlab.gnome.org/GNOME/gobject-introspection/issues/222
@@ -111,7 +122,7 @@
if len(patterns) == 0:
return []
-@@ -139,8 +145,12 @@ def resolve_from_ldd_output(libraries, output):
+@@ -141,8 +149,12 @@ def resolve_from_ldd_output(libraries, output):
if line.endswith(':'):
continue
for word in line.split():
@@ -126,10 +137,11 @@
if m:
del patterns[library]
shlibs.append(m.group())
-
+diff --git a/giscanner/utils.py b/giscanner/utils.py
+index 45807f17..8a319cd1 100644
--- a/giscanner/utils.py
+++ b/giscanner/utils.py
-@@ -111,17 +111,11 @@ def extract_libtool_shlib(la_file):
+@@ -113,16 +113,11 @@ def extract_libtool_shlib(la_file):
if dlname is None:
return None
@@ -141,8 +153,7 @@
- if libdir is None:
- return dlbasename
- return libdir + '/' + dlbasename
-- # From the comments in extract_libtool(), older libtools had
-- # a path rather than the raw dlname
+- # Older libtools had a path rather than the raw dlname
- return os.path.basename(dlname)
+ dlbasename = os.path.basename(dlname)
+ libdir = _extract_libdir_field(la_file)
@@ -151,10 +162,12 @@
+ return libdir + '/' + dlbasename
- def extract_libtool(la_file):
+ # Returns arguments for invoking libtool, if applicable, otherwise None
+diff --git a/tests/scanner/test_shlibs.py b/tests/scanner/test_shlibs.py
+index a8337c60..7f123103 100644
--- a/tests/scanner/test_shlibs.py
+++ b/tests/scanner/test_shlibs.py
-@@ -40,6 +64,7 @@ class TestLddParser(unittest.TestCase):
+@@ -40,7 +40,8 @@ class TestLddParser(unittest.TestCase):
self.assertEqual(
sanitize_shlib_path('/foo/bar'),
@@ -163,4 +176,7 @@
+ '/foo/bar')
def test_unresolved_library(self):
-output = ''
+ output = ''
+--
+2.33.0
+
diff --git a/gnu/packages/patches/gobject-introspection-cc.patch b/gnu/packages/patches/gobject-introspection-cc.patch
index 6a86b56b44..748a1a0a89 100644
--- a/gnu/packages/patches/gobject-introspection-cc.patch
+++ b/gnu/packages/patches/gobject-introspection-cc.patch
@@ -1,14 +1,22 @@
Use gcc as the default C compiler if CC is not set.
-diff -ru gobject-introspection-1.58.1.orig/giscanner/__init__.py gobject-introspection-1.58.1/giscanner/__init__.py
---- gobject-introspection-1.58.1.orig/giscanner/__init__.py 1970-01-01 01:00:00.000000000 +0100
-+++ gobject-introspection-1.58.1/giscanner/__init__.py 2018-12-03 13:33:28.788971299 +0100
-@@ -22,6 +22,8 @@
+---
+ giscanner/__init__.py | 2 ++
+ 1 file changed, 2 insertions(+)
+
+diff --git a/giscanner/__init__.py b/giscanner/__init__.py
+index 7c2f365a..607fe341 100644
+--- a/giscanner/__init__.py
++++ b/giscanner/__init__.py
+@@ -21,6 +21,8 @@ import os
builddir = os.environ.get('UNINSTALLED_INTROSPECTION_BUILDDIR')
if builddir is not None:
- __path__.append(os.path.join(builddir, 'giscanner'))
+ __path__.append(os.path.join(builddir, 'giscanner')) # type: ignore # mypy issue #1422
+if not 'CC' in os.environ:
+ os.environ['CC'] = 'gcc'
try:
from ._version import __version__
except ImportError:
+--
+2.33.0
+
diff --git a/gnu/packages/patches/linux-pam-unix_chkpwd.patch b/gnu/packages/patches/linux-pam-unix_chkpwd.patch
new file mode 100644
index 0000000000..0e865ff18c
--- /dev/null
+++ b/gnu/packages/patches/linux-pam-unix_chkpwd.patch
@@ -0,0 +1,9 @@
+unix_chkpwd is designed to have a suid bit, but it's not possible to set it
+for files in the store. This patch tells unix_pam.so to look for
+unix_chkpwd in setuid program directory on Guix System.
+
+--- a/modules/pam_unix/Makefile.in
++++ b/modules/pam_unix/Makefile.in
+@@ -651,1 +651,1 @@
+- -DCHKPWD_HELPER=\"$(sbindir)/unix_chkpwd\" \
++ -DCHKPWD_HELPER=\"/run/setuid-programs/unix_chkpwd\" \
diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm
index 74c6166cc0..dd221f7e19 100644
--- a/gnu/packages/pdf.scm
+++ b/gnu/packages/pdf.scm
@@ -221,32 +221,47 @@ times. If you have a second page, Flyer Composer can arrange it the same way
This package contains only the command line tool. If you like to use the gui,
please install the @code{flyer-composer-gui} package.")))
+(define poppler-tests
+ (let ((poppler-version "22.01.0") ; bump when bumping poppler version
+ (revision "0")
+ (commit "0762e0144143e680e24ec8d4c34c46c3716b8713"))
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://gitlab.freedesktop.org/poppler/test.git")
+ (commit commit)))
+ (file-name (git-file-name "poppler-tests"
+ (git-version poppler-version revision commit)))
+ (sha256
+ (base32
+ "1nwgwcddj5fiq200p4f07fl0i5f885c1nfzmvpc6q9p55qxp6brv")))))
+
(define-public poppler
(package
(name "poppler")
- (version "21.07.0")
+ (version "22.01.0")
(source (origin
(method url-fetch)
(uri (string-append "https://poppler.freedesktop.org/poppler-"
version ".tar.xz"))
(sha256
(base32
- "1m54hsi8z6c13jdbjwz55flkra1mahmkw2igavbf8p86d2gv4sp2"))))
+ "0giin9klpj7264n4rl8qwvc6rh650ap2qg39bhz431jvdc2r6d3x"))))
(build-system cmake-build-system)
;; FIXME:
;; use libcurl: no
- (inputs `(("fontconfig" ,fontconfig)
- ("freetype" ,freetype)
- ("libjpeg" ,libjpeg-turbo)
- ("libpng" ,libpng)
- ("libtiff" ,libtiff)
- ("lcms" ,lcms)
- ("openjpeg" ,openjpeg)
- ("zlib" ,zlib)
-
- ;; To build poppler-glib (as needed by Evince), we need Cairo and
- ;; GLib. But of course, that Cairo must not depend on Poppler.
- ("cairo" ,cairo-sans-poppler)))
+ (inputs (list fontconfig
+ freetype
+ libjpeg-turbo
+ libpng
+ libtiff
+ lcms
+ openjpeg
+ poppler-data
+ zlib
+ ;; To build poppler-glib (as needed by Evince), we need Cairo and
+ ;; GLib. But of course, that Cairo must not depend on Poppler.
+ cairo-sans-poppler))
(propagated-inputs
;; As per poppler-cairo and poppler-glib.pc.
;; XXX: Ideally we'd propagate Cairo too, but that would require a
@@ -257,22 +272,20 @@ please install the @code{flyer-composer-gui} package.")))
`(,glib "bin") ; glib-mkenums, etc.
gobject-introspection))
(arguments
- `(#:tests? #f ;no test data provided with the tarball
- #:configure-flags
- (let* ((out (assoc-ref %outputs "out"))
- (lib (string-append out "/lib")))
- (list "-DENABLE_UNSTABLE_API_ABI_HEADERS=ON" ;to install header files
- "-DENABLE_ZLIB=ON"
- "-DENABLE_BOOST=OFF" ;disable Boost to save size
- (string-append "-DCMAKE_INSTALL_LIBDIR=" lib)
- (string-append "-DCMAKE_INSTALL_RPATH=" lib)))
- ,@(if (%current-target-system)
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'set-PKG_CONFIG
- (lambda _
- (setenv "PKG_CONFIG" ,(pkg-config-for-target))))))
- '())))
+ (list
+ #:configure-flags
+ #~(list "-DENABLE_UNSTABLE_API_ABI_HEADERS=ON" ;to install header files
+ "-DENABLE_ZLIB=ON"
+ "-DENABLE_BOOST=OFF" ;disable Boost to save size
+ (string-append "-DCMAKE_INSTALL_LIBDIR=" #$output "/lib")
+ (string-append "-DCMAKE_INSTALL_RPATH=" #$output "/lib")
+ (string-append "-DTESTDATADIR=" #+poppler-tests))
+ #:phases
+ (if (%current-target-system) #~%standard-phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'set-PKG_CONFIG
+ (lambda _
+ (setenv "PKG_CONFIG" #$(pkg-config-for-target))))))))
(synopsis "PDF rendering library")
(description
"Poppler is a PDF rendering library based on the xpdf-3.0 code base.")
@@ -777,46 +790,47 @@ line tools for batch rendering @command{pdfdraw}, rewriting files
(define-public qpdf
(package
- (name "qpdf")
- (version "10.0.1")
- (source (origin
- (method url-fetch)
- (uri (string-append "mirror://sourceforge/qpdf/qpdf/" version
- "/qpdf-" version ".tar.gz"))
- (sha256
- (base32
- "0yw2cpw7ygfd6jlgpwbi8vsnvv9p55zxp9h17x77z2qq733pf8jx"))))
- (build-system gnu-build-system)
- (arguments
- `(#:disallowed-references (,perl)
+ (name "qpdf")
+ (version "10.6.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/qpdf/qpdf/" version
+ "/qpdf-" version ".tar.gz"))
+ (sha256
+ (base32
+ "07jin19jlcsyxgdxny2ddb08w4kkyl9ivwjw0krn9ncv9wdsa3vg"))))
+ (build-system gnu-build-system)
+ (arguments
+ (list
+ #:disallowed-references (list perl)
#:phases
- (modify-phases %standard-phases
- (add-before 'configure 'patch-paths
- (lambda _
- (substitute* "make/libtool.mk"
- (("SHELL=/bin/bash")
- (string-append "SHELL=" (which "bash"))))
- (substitute* (append
- '("qtest/bin/qtest-driver")
- (find-files "." "\\.test"))
- (("/usr/bin/env") (which "env")))
- #t)))))
- (native-inputs
- (list pkg-config perl))
- (propagated-inputs
- ;; In Requires.private of libqpdf.pc.
- (list libjpeg-turbo zlib))
- (synopsis "Command-line tools and library for transforming PDF files")
- (description
- "QPDF is a command-line program that does structural, content-preserving
+ #~(modify-phases %standard-phases
+ (add-before 'configure 'patch-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "make/libtool.mk"
+ (("SHELL=/bin/bash")
+ (string-append "SHELL="
+ (search-input-file inputs "/bin/bash"))))
+ (substitute*
+ (append '("qtest/bin/qtest-driver")
+ (find-files "." "\\.test"))
+ (("/usr/bin/env") (which "env"))))))))
+ (native-inputs
+ (list perl pkg-config))
+ (propagated-inputs
+ ;; In Requires.private of libqpdf.pc.
+ (list libjpeg-turbo zlib))
+ (synopsis "Command-line tools and library for transforming PDF files")
+ (description
+ "QPDF is a command-line program that does structural, content-preserving
transformations on PDF files. It could have been called something like
pdf-to-pdf. It includes support for merging and splitting PDFs and to
manipulate the list of pages in a PDF file. It is not a PDF viewer or a
program capable of converting PDF into other formats.")
- ;; Prior to the 7.0 release, QPDF was licensed under Artistic 2.0.
- ;; Users can still choose to use the old license at their option.
- (license (list license:asl2.0 license:clarified-artistic))
- (home-page "http://qpdf.sourceforge.net/")))
+ ;; Prior to the 7.0 release, QPDF was licensed under Artistic 2.0.
+ ;; Users can still choose to use the old license at their option.
+ (license (list license:asl2.0 license:clarified-artistic))
+ (home-page "http://qpdf.sourceforge.net/")))
(define-public qpdfview
(package
diff --git a/gnu/packages/plotutils.scm b/gnu/packages/plotutils.scm
index 4adb05f722..fa9c187097 100644
--- a/gnu/packages/plotutils.scm
+++ b/gnu/packages/plotutils.scm
@@ -302,19 +302,19 @@ colors, styles, options and details.")
texlive-epsf
texlive-etoolbox
texlive-fonts-ec
- texlive-generic-infwarerr
- texlive-generic-kvdefinekeys
+ texlive-infwarerr
+ texlive-kvdefinekeys
texlive-grfext
texlive-hyperref
texlive-latex-base
texlive-latex-geometry
- texlive-latex-graphics
- texlive-latex-kvoptions
+ texlive-graphics
+ texlive-kvoptions
texlive-latex-media9
- texlive-latex-ocgx2
- texlive-latex-pdftexcmds
texlive-oberdiek ;for ifluatex
+ texlive-latex-ocgx2
texlive-latex-parskip
+ texlive-pdftexcmds
texlive-tex-texinfo))))
(inputs
(list fftw
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 5591210fce..ba6f2cbcbb 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -5900,7 +5900,7 @@ readable format.")
texlive-capt-of
texlive-cm-super
texlive-fonts-ec
- texlive-generic-iftex
+ texlive-iftex
texlive-pdftex
texlive-amsfonts
texlive-latex-cmap
@@ -5908,13 +5908,13 @@ readable format.")
texlive-latex-eqparbox
texlive-etoolbox
texlive-latex-expdlist
- texlive-latex-fancyhdr
- texlive-latex-fancyvrb
+ texlive-fancyhdr
+ texlive-fancyvrb
texlive-latex-fncychap
texlive-latex-float
texlive-latex-framed
texlive-latex-geometry
- texlive-latex-graphics
+ texlive-graphics
texlive-hyperref
texlive-latex-mdwtools
texlive-latex-multirow
@@ -5924,7 +5924,7 @@ readable format.")
texlive-latex-preview
texlive-latex-tabulary
texlive-latex-threeparttable
- texlive-latex-titlesec
+ texlive-titlesec
texlive-latex-trimspaces
texlive-latex-ucs
texlive-latex-upquote
@@ -8998,20 +8998,20 @@ computing.")
("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts
texlive-capt-of
texlive-fonts-ec
- texlive-generic-iftex
+ texlive-iftex
texlive-pdftex
texlive-latex-cmap
texlive-latex-environ
texlive-latex-eqparbox
texlive-etoolbox
texlive-latex-expdlist
- texlive-latex-fancyhdr
- texlive-latex-fancyvrb
+ texlive-fancyhdr
+ texlive-fancyvrb
texlive-latex-fncychap
texlive-latex-float
texlive-latex-framed
texlive-latex-geometry
- texlive-latex-graphics
+ texlive-graphics
texlive-hyperref
texlive-latex-mdwtools
texlive-latex-multirow
@@ -9021,7 +9021,7 @@ computing.")
texlive-latex-preview
texlive-latex-tabulary
texlive-latex-threeparttable
- texlive-latex-titlesec
+ texlive-titlesec
texlive-latex-trimspaces
texlive-latex-ucs
texlive-latex-upquote
@@ -12798,7 +12798,40 @@ time.")
;;("python-pyppeteer" ,python-pyppeteer)
("python-pytest" ,python-pytest)
("python-pytest-cov" ,python-pytest-cov)
- ("python-pytest-dependency" ,python-pytest-dependency)))
+ ("python-pytest-dependency" ,python-pytest-dependency)
+ ("texlive" ,(texlive-updmap.cfg
+ (list texlive-adjustbox
+ texlive-amsfonts
+ texlive-booktabs
+ texlive-caption
+ texlive-eurosym
+ texlive-fancyvrb
+ texlive-fonts-rsfs
+ texlive-fontspec
+ texlive-generic-ulem
+ texlive-grffile
+ texlive-hyperref
+ texlive-iftex
+ texlive-jknappen
+ texlive-latex-amsmath
+ texlive-latex-enumitem
+ texlive-latex-float
+ texlive-latex-geometry
+ texlive-latex-jknapltx
+ texlive-latex-parskip
+ texlive-latex-trimspaces
+ texlive-latex-ucs
+ texlive-latex-upquote
+ texlive-lm
+ texlive-mathpazo
+ texlive-ms
+ texlive-oberdiek
+ texlive-stringenc
+ texlive-tcolorbox
+ texlive-titling
+ texlive-tools
+ texlive-xcolor
+ texlive-zapfding)))))
(propagated-inputs
(list python-bleach
python-defusedxml
@@ -15549,9 +15582,7 @@ syntax highlighting, markdown and more to the terminal.")
(list which))
(inputs
;; python-magic needs to be able to find libmagic.so.
- ;; Use a newer version because 5.39 returns bogus for some archives
- ;; (notably Chromium .crx extensions), which breaks e.g. 'diffoscope'.
- (list file-next))
+ (list file))
(synopsis "File type identification using libmagic")
(description
"This module uses ctypes to access the libmagic file type
@@ -26766,7 +26797,7 @@ By default it uses the open Python vulnerability database Safety DB.")
(native-inputs
`(("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts
texlive-fonts-ec
- texlive-generic-iftex
+ texlive-iftex
texlive-hyperref
texlive-oberdiek
texlive-lm
diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm
index dfc274a1de..a459367aec 100644
--- a/gnu/packages/radio.scm
+++ b/gnu/packages/radio.scm
@@ -503,7 +503,7 @@ used by RDS Spy, and audio files containing @dfn{multiplex} signals (MPX).")
("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts
texlive-latex-amsmath
;; TODO: Add newunicodechar.
- texlive-latex-graphics)))
+ texlive-graphics)))
("xorg-server" ,xorg-server-for-tests)))
(inputs
`(("alsa-lib" ,alsa-lib)
@@ -711,7 +711,7 @@ to access different radio hardware.")
("texlive" ,(texlive-updmap.cfg (list texlive-amsfonts
texlive-latex-amsmath
;; TODO: Add newunicodechar.
- texlive-latex-graphics)))))
+ texlive-graphics)))))
(inputs
(list fftwf))
(arguments
diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm
index acccc4d4c4..b91d8c0af2 100644
--- a/gnu/packages/ruby.scm
+++ b/gnu/packages/ruby.scm
@@ -5209,14 +5209,14 @@ across multiple CPU cores.")
(define-public ruby-parser
(package
(name "ruby-parser")
- (version "3.0.0.0")
+ (version "3.1.0.0")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "parser" version))
(sha256
(base32
- "1jixakyzmy0j5c1rb0fjrrdhgnyryvrr6vgcybs14jfw09akv5ml"))))
+ "08q20ckhn58m49lccf93p0yv7pkc7hymmcz3di762kb658d5fd38"))))
(build-system ruby-build-system)
(arguments
'(#:tests? #f)) ; tests not included in gem
diff --git a/gnu/packages/sdl.scm b/gnu/packages/sdl.scm
index 4c38e2f055..89ceb41209 100644
--- a/gnu/packages/sdl.scm
+++ b/gnu/packages/sdl.scm
@@ -111,23 +111,24 @@ joystick, and graphics hardware.")
(license license:lgpl2.1)))
(define-public sdl2
- (package (inherit sdl)
+ (package
+ (inherit sdl)
(name "sdl2")
- (version "2.0.14")
+ (version "2.0.18")
(source (origin
- (method url-fetch)
- (uri
- (string-append "https://libsdl.org/release/SDL2-"
- version ".tar.gz"))
- (sha256
- (base32
- "1g1jahknv5r4yhh1xq5sf0md20ybdw1zh1i15lry26sq39bmn8fq"))))
+ (method url-fetch)
+ (uri
+ (string-append "https://libsdl.org/release/SDL2-"
+ version ".tar.gz"))
+ (sha256
+ (base32
+ "073iwmggkvvl82fssqb7xzbb4awraprjig6zxav0p8dz7pbhrm4l"))))
(arguments
(substitute-keyword-arguments (package-arguments sdl)
((#:configure-flags flags)
`(append '("--disable-wayland-shared" "--enable-video-kmsdrm"
"--disable-kmsdrm-shared")
- ,flags))
+ ,flags))
((#:make-flags flags ''())
`(cons*
;; SDL dlopens libudev, so make sure it is in rpath. This overrides
@@ -141,16 +142,17 @@ joystick, and graphics hardware.")
;; experience a bug where input events are doubled.
;;
;; For more information, see: https://dev.solus-project.com/T1721
- (append `(("dbus" ,dbus)
- ("eudev" ,eudev) ; for discovering input devices
- ("fcitx" ,fcitx) ; helps with CJK input
- ("glib" ,glib)
- ("ibus" ,ibus)
- ("libxkbcommon" ,libxkbcommon)
- ("libxcursor" ,libxcursor) ; enables X11 cursor support
- ("wayland" ,wayland)
- ("wayland-protocols" ,wayland-protocols))
- (package-inputs sdl)))
+ (modify-inputs (package-inputs sdl)
+ (prepend
+ dbus
+ eudev ;for discovering input devices
+ fcitx ;helps with CJK input
+ glib
+ ibus
+ libxkbcommon
+ libxcursor
+ wayland ;enables X11 cursor support
+ wayland-protocols)))
(license license:bsd-3)))
(define-public libmikmod
diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm
index dda670d237..f1676b0f7e 100644
--- a/gnu/packages/shells.scm
+++ b/gnu/packages/shells.scm
@@ -876,29 +876,19 @@ scripts.")
(define-public gash
(package
(name "gash")
- (version "0.2.0")
+ (version "0.3.0")
(source
(origin (method url-fetch)
(uri (string-append "mirror://savannah/gash/gash-"
version ".tar.gz"))
(sha256
(base32
- "13m0yz5h9nj3x40mr6wr5xcpq1lscndfwcicw3skrz801025hhgf"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Allow builds with Guile 3.0.
- (substitute* "configure"
- (("search=\"2\\.2 2\\.0\"")
- "search=\"3.0 2.2 2.0\""))
- #t))))
+ "1af2jz4a6rzsshi379wzw4b8d04zvfamdhfzip2pgmk821lyqsjl"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))
(inputs
(list guile-3.0))
- (arguments
- '(#:make-flags '("XFAIL_TESTS=tests/redirects.org")))
(home-page "https://savannah.nongnu.org/projects/gash/")
(synopsis "POSIX-compatible shell written in Guile Scheme")
(description "Gash is a POSIX-compatible shell written in Guile
@@ -910,23 +900,14 @@ as part of the Guix bootstrap process.")
(define-public gash-utils
(package
(name "gash-utils")
- (version "0.1.0")
+ (version "0.2.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/gash/gash-utils-"
version ".tar.gz"))
(sha256
(base32
- "0ib2p52qmbac5n0s5bys4fiwim461ps546976l1n7pwbs0avh7fk"))
- (patches (search-patches "gash-utils-ls-test.patch"))
- (modules '((guix build utils)))
- (snippet
- '(begin
- ;; Allow builds with Guile 3.0.
- (substitute* "configure"
- (("search=\"2\\.2 2\\.0\"")
- "search=\"3.0 2.2 2.0\""))
- #t))))
+ "18ylb54l9lmaynapbncc1zhbsirhihznrxihhxgqrpqgyjkfbap6"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))
diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm
index f849107cfe..ff0b9c2833 100644
--- a/gnu/packages/statistics.scm
+++ b/gnu/packages/statistics.scm
@@ -360,11 +360,11 @@ as.POSIXct(if (\"\" != Sys.getenv(\"SOURCE_DATE_EPOCH\")) {\
texlive-grfext
texlive-amsfonts
texlive-latex-base
- texlive-latex-fancyvrb
- texlive-latex-graphics
+ texlive-fancyvrb
+ texlive-graphics
texlive-hyperref
texlive-oberdiek
- texlive-latex-tools
+ texlive-tools
texlive-latex-upquote
texlive-url
texlive-latex-xkeyval)))
diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm
index 34e9aa1e06..1c8c1f61a8 100644
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@ -3025,41 +3025,93 @@ with the required packages, constitutes what every LaTeX distribution should
contain.")
(license license:lppl1.3c+))))
-(define-public texlive-latex-atveryend
- (package
- (inherit (simple-texlive-package
- "texlive-latex-atveryend"
- '("/doc/latex/atveryend/README.md"
- "/tex/latex/atveryend/")
- (base32
- "1gz5ssxjlqa53a8blsmdk2qjahzc910ldh26xjxfxgqnqb03rqx7")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/atveryend")
- (synopsis "Hooks at the very end of a document")
- (description
- "This LaTeX packages provides two hooks for @code{\\end@{document@}}
-that are executed after the hook of @code{\\AtEndDocument}:
+(define-public texlive-atveryend
+ (let ((template (simple-texlive-package
+ "texlive-atveryend"
+ (list "doc/latex/atveryend/"
+ "source/latex/atveryend/"
+ "tex/latex/atveryend/")
+ (base32 "1rp805h0m99rxs107a798l951lyahlnp7irfklfadn2a2ljzhafn"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ #t)
+ "latex/atveryend")
+ ((#:build-targets _ #t)
+ #~(list "atveryend.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/atveryend/")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))
+ (add-after 'copy-files 'remove-generated-file
+ (lambda* (#:key outputs #:allow-other-keys)
+ (with-directory-excursion #$output
+ (for-each delete-file
+ (find-files "." "\\.(drv|ins)$")))))))))
+ (home-page "https://ctan.org/macros/latex/contrib/atveryend")
+ (synopsis "Hooks at the very end of a document")
+ (description
+ "This LaTeX packages provides two hooks for @code{\\end{document}} that
+are executed after the hook of @code{\\AtEndDocument}:
@code{\\AfterLastShipout} can be used for code that is to be executed right
after the last @code{\\clearpage} before the @file{.aux} file is closed.
-@code{\\AtVeryEndDocument} is used for code after closing and final reading
-of the @file{.aux} file.")
- (license license:lppl1.3c+)))
+@code{\\AtVeryEndDocument} is used for code after closing and final reading of
+the @file{.aux} file.")
+ (license license:lppl1.3+))))
-(define-public texlive-latex-auxhook
- (package
- (inherit (simple-texlive-package
- "texlive-latex-auxhook"
- '("/doc/latex/auxhook/README.md"
- "/tex/latex/auxhook/")
- (base32
- "1xh445shr00rh43nnz03xh8k2mdrxgsr03lllqpgvwhm6yzsydkf")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/auxhook")
- (synopsis "Hooks for auxiliary files")
- (description
- "This package provides hooks for adding code at the beginning of
+(define-deprecated-package texlive-latex-atveryend texlive-atveryend)
+
+(define-public texlive-auxhook
+ (let ((template (simple-texlive-package
+ "texlive-auxhook"
+ (list "doc/latex/auxhook/"
+ "source/latex/auxhook/"
+ "tex/latex/auxhook/")
+ (base32
+ "1qfs7bz8ryp4prr2fw4hwypnfc6yr4rc4wd8qy4rpmab0hab0vdy"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/auxhook")
+ ((#:build-targets _ '())
+ #~(list "auxhook.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/auxhook")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/auxhook")
+ (synopsis "Hooks for auxiliary files")
+ (description
+ "This package provides hooks for adding code at the beginning of
@file{.aux} files.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
+
+(define-deprecated-package texlive-latex-auxhook texlive-auxhook)
(define-public texlive-latex-epstopdf-pkg
(package
@@ -3126,10 +3178,10 @@ users, via its Plain TeX version.)")
(define-deprecated-package texlive-generic-epsf texlive-epsf)
-(define-public texlive-latex-fancyvrb
+(define-public texlive-fancyvrb
(package
(inherit (simple-texlive-package
- "texlive-latex-fancyvrb"
+ "texlive-fancyvrb"
(list "/doc/latex/fancyvrb/README"
"/tex/latex/fancyvrb/")
(base32
@@ -3146,6 +3198,8 @@ verbatim mode; build \"example\" environments (showing both result and
verbatim source).")
(license license:lppl1.0+)))
+(define-deprecated-package texlive-latex-fancyvrb texlive-fancyvrb)
+
(define-public texlive-graphics-def
(package
(inherit (simple-texlive-package
@@ -3182,6 +3236,57 @@ packages.")
set default \"driver\" options for the color and graphics packages.")
(license license:public-domain)))
+(define-public texlive-graphics
+ (let ((template (simple-texlive-package
+ "texlive-graphics"
+ (list "doc/latex/graphics/"
+ "source/latex/graphics/"
+ "tex/latex/graphics/")
+ (base32
+ "0prw1zcv4fcj3zg0kyhj0k7ax0530adl60bajzvbv3fi16d7rqlq"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/graphics")
+ ((#:build-targets _ '())
+ #~(list "graphics-drivers.ins" "graphics.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/graphics")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc)
+ ;; This file is not generated from the sources.
+ (install-file
+ (string-append
+ origin
+ "/tex/latex/graphics/graphics-2017-06-25.sty")
+ (string-append
+ #$output
+ "/share/texmf-dist/tex/latex/graphics")))))))))
+ (propagated-inputs (list texlive-graphics-def texlive-graphics-cfg))
+ (home-page "https://ctan.org/macros/latex/required/graphics")
+ (synopsis "The LaTeX standard graphics bundle")
+ (description
+ "This is a collection of LaTeX packages for: producing colour including
+graphics (e.g., PostScript) files rotation and scaling of text in LaTeX
+documents. It comprises the packages color, graphics, graphicx, trig, epsfig,
+keyval, and lscape.")
+ (license license:lppl1.3c))))
+
+(define-deprecated-package texlive-latex-graphics texlive-graphics)
+
(define-public texlive-greek-fontenc
(package
(inherit (simple-texlive-package
@@ -3199,71 +3304,83 @@ set default \"driver\" options for the color and graphics packages.")
for Greek text font encodings for use with fontenc.")
(license license:lppl1.3+)))
-(define-public texlive-latex-graphics
- (package
- (name "texlive-latex-graphics")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (texlive-ref "latex" "graphics"))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "0fgjl58f25zvagssz4dwmmsclzw8cr7mx00kdrbx2kcnamcb7h8d"))))
- (build-system texlive-build-system)
- (arguments '(#:tex-directory "latex/graphics"))
- (propagated-inputs
- (list texlive-graphics-cfg texlive-graphics-def))
- (home-page "https://www.ctan.org/pkg/latex-graphics")
- (synopsis "LaTeX standard graphics bundle")
- (description
- "This is a collection of LaTeX packages for producing color, including
-graphics (e.g. PostScript) files, and rotation and scaling of text in LaTeX
-documents. It comprises the packages color, graphics, graphicx, trig, epsfig,
-keyval, and lscape.")
- (license license:lppl1.3c+)))
-
-(define-public texlive-latex-hycolor
- (package
- (inherit (simple-texlive-package
- "texlive-latex-hycolor"
- (list "/doc/latex/hycolor/README.md"
- "/tex/latex/hycolor/")
- (base32
- "026lfb4l7b3q8g6zc68siqandhb1x98cbycn7njknqva6s99aiqn")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/latex-graphics")
- (synopsis "Color for hyperref and bookmark")
- (description
- "This package provides the code for the @code{color} option that is
+(define-public texlive-hycolor
+ (let ((template (simple-texlive-package
+ "texlive-hycolor"
+ (list "doc/latex/hycolor/"
+ "source/latex/hycolor/"
+ "tex/latex/hycolor/")
+ (base32
+ "0hmkx37wwmznxjqqnca87shy7qrgqrh2cn5r941ddgivnym31xbh"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/hycolor")
+ ((#:build-targets _ '())
+ #~(list "hycolor.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/hycolor")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/latex-graphics")
+ (synopsis "Color for hyperref and bookmark")
+ (description
+ "This package provides the code for the @code{color} option that is
used by @code{hyperref} and @code{bookmark}.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
+
+(define-deprecated-package texlive-latex-hycolor texlive-hycolor)
(define-public texlive-xcolor
(let ((template (simple-texlive-package
"texlive-xcolor"
- (list "/doc/latex/xcolor/"
- "/source/latex/xcolor/")
+ (list "doc/latex/xcolor/"
+ "dvips/xcolor/"
+ "source/latex/xcolor/"
+ "tex/latex/xcolor/")
(base32
- "12q6spmpxg30alhvarjmxzigmz7lazapbrb0mc4vhbn6n1sdz7pp"))))
+ "1d7108b67fcaf1sgyk43ph18l0z5m35iqg3aahqs1ymzwdfnd3f7"))))
(package
(inherit template)
+ (outputs '("out" "doc"))
(arguments
(substitute-keyword-arguments (package-arguments template)
- ((#:tex-directory _ #t)
+ ((#:tex-directory _ '())
"latex/xcolor")
+ ((#:build-targets _ '())
+ #~(list "xcolor.ins"))
((#:phases phases)
- `(modify-phases ,phases
- (add-after 'unpack 'chdir
- (lambda _ (chdir "source/latex/xcolor") #t))
- (add-after 'install 'move-files
- (lambda* (#:key outputs #:allow-other-keys)
- (let ((share (string-append (assoc-ref outputs "out")
- "/share/texmf-dist")))
- (mkdir-p (string-append share "/dvips/xcolor"))
- (rename-file (string-append share "/tex/latex/xcolor/xcolor.pro")
- (string-append share "/dvips/xcolor/xcolor.pro"))
- #t)))))))
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "source/latex/xcolor")))
+ (replace 'copy-files
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc)
+ (let ((share (string-append #$output
+ "/share/texmf-dist")))
+ (mkdir-p (string-append share "/dvips/xcolor"))
+ (rename-file
+ (string-append share "/tex/latex/xcolor/xcolor.pro")
+ (string-append share "/dvips/xcolor/xcolor.pro"))))))))))
(home-page "https://www.ctan.org/pkg/xcolor")
(synopsis "Driver-independent color extensions for LaTeX and pdfLaTeX")
(description
@@ -3349,45 +3466,61 @@ XML, using UTF-8 or a suitable 8-bit encoding.")
(define-public texlive-hyperref
(let ((template (simple-texlive-package
"texlive-hyperref"
- (list "/doc/latex/hyperref/"
- "/source/latex/hyperref/"
- ;; These files are not generated from the sources
- "/tex/latex/hyperref/minitoc-hyper.sty"
- "/tex/latex/hyperref/ntheorem-hyper.sty"
- "/tex/latex/hyperref/xr-hyper.sty")
- (base32
- "0nmbxaq676m2y9fgdji0bxqchmrli4hwhspijaszx51b3ki6bj2h"))))
+ (list "doc/latex/hyperref/"
+ "source/latex/hyperref/"
+ "tex/latex/hyperref/")
+ (base32 "052k1nygm4msaivn8245n86km4h41knivigw80q58b7rc13s6hrk"))))
(package
(inherit template)
(arguments
(substitute-keyword-arguments (package-arguments template)
- ((#:tex-directory _ #t)
+ ((#:tex-directory _ '())
"latex/hyperref")
+ ((#:build-targets _ '())
+ #~(list "hyperref.ins"))
((#:phases phases)
- `(modify-phases ,phases
- (add-after 'unpack 'chdir
- (lambda _ (chdir "source/latex/hyperref") #t))))))
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/hyperref")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc)
+ ;; XXX: These files are not auto-generated from the
+ ;; sources.
+ (for-each (lambda (f)
+ (install-file
+ (string-append origin "/tex/latex/hyperref/" f)
+ (string-append
+ #$output
+ "/share/texmf-dist/tex/latex/hyperref")))
+ '("minitoc-hyper.sty"
+ "ntheorem-hyper.sty"
+ "xr-hyper.sty")))))))))
(propagated-inputs
- (list texlive-generic-atbegshi
- texlive-generic-bitset
- texlive-generic-etexcmds
- texlive-generic-gettitlestring
- texlive-generic-iftex
- texlive-generic-infwarerr
- texlive-generic-intcalc
- texlive-generic-kvdefinekeys
- texlive-generic-kvsetkeys
- texlive-generic-ltxcmds
- texlive-generic-pdfescape
- texlive-latex-auxhook
- texlive-latex-atveryend
- texlive-latex-hycolor
- texlive-latex-kvoptions
- texlive-latex-letltxmacro
- texlive-latex-pdftexcmds
- texlive-latex-refcount
- texlive-latex-rerunfilecheck
- texlive-url))
+ (list texlive-atbegshi
+ texlive-auxhook
+ texlive-bitset
+ texlive-etexcmds
+ texlive-gettitlestring
+ texlive-hycolor
+ texlive-intcalc
+ texlive-kvdefinekeys
+ texlive-kvsetkeys
+ texlive-letltxmacro
+ texlive-ltxcmds
+ texlive-pdfescape
+ texlive-refcount
+ texlive-rerunfilecheck
+ texlive-stringenc
+ texlive-url
+ texlive-zapfding))
(home-page "https://www.ctan.org/pkg/hyperref")
(synopsis "Extensive support for hypertext in LaTeX")
(description
@@ -3404,97 +3537,174 @@ pdf and HTML backends. The package is distributed with the @code{backref} and
(define-deprecated-package texlive-latex-hyperref texlive-hyperref)
(define-public texlive-oberdiek
- (package
- (name "texlive-oberdiek")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (texlive-ref "latex" "oberdiek"))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "1cadrkpdqs65gxsaszfgfd8wqp8pvpik2sjmlyq3hz5p9yna3p9m"))))
- (build-system texlive-build-system)
- (arguments
- '(#:tex-directory "latex/oberdiek"
- #:build-targets '("oberdiek.ins")
- #:phases
- (modify-phases %standard-phases
- ;; "ifpdf.ins" is not generated, so we need to process the dtx file.
- (add-after 'unpack 'do-not-process-ifpdf.ins
- (lambda _
- (substitute* "oberdiek.ins"
- (("ifpdf.ins") "ifpdf.dtx"))
- #t)))))
- (propagated-inputs
- (list texlive-generic-iftex))
- (home-page "https://www.ctan.org/pkg/oberdiek")
- (synopsis "Bundle of packages submitted by Heiko Oberdiek")
- (description
- "The bundle comprises various LaTeX packages, providing among others:
+ (let ((template (simple-texlive-package
+ "texlive-oberdiek"
+ (list "bibtex/bib/oberdiek/"
+ "doc/latex/oberdiek/"
+ "source/latex/oberdiek/"
+ "tex/generic/oberdiek/"
+ "tex/latex/oberdiek/")
+ (base32
+ "00lp24fckawpy997j7zagsxv89jif40wgjq8fw502v06d225ikp3"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/oberdiek")
+ ((#:build-targets _ '())
+ #~(list "oberdiek.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/oberdiek")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc)
+ ;; XXX: `#:tex-directory' is limited to one location, but
+ ;; the package needs to install files elsewhere, so we do
+ ;; that manually here.
+ (with-directory-excursion origin
+ (let ((extra '("bibtex/bib/oberdiek"
+ "tex/generic/oberdiek")))
+ (for-each
+ (lambda (d)
+ (for-each (lambda (f)
+ (install-file
+ f
+ (string-append #$output
+ "/share/texmf-dist/"
+ d)))
+ (find-files d)))
+ extra))))))))))
+ (propagated-inputs
+ (list texlive-auxhook
+ texlive-grfext
+ texlive-grffile
+ texlive-iftex
+ texlive-infwarerr
+ texlive-kvoptions
+ texlive-pdftexcmds))
+ (home-page "https://www.ctan.org/pkg/oberdiek")
+ (synopsis "Bundle of packages submitted by Heiko Oberdiek")
+ (description
+ "The bundle comprises various LaTeX packages, providing among others:
better accessibility support for PDF files; extensible chemists reaction
arrows; record information about document class(es) used; and many more.")
- (license license:lppl1.3+)))
+ (license license:lppl1.3+))))
(define-deprecated-package texlive-latex-oberdiek texlive-oberdiek)
-(define-public texlive-latex-rerunfilecheck
- (package
- (inherit (simple-texlive-package
- "texlive-latex-rerunfilecheck"
- '("/doc/latex/rerunfilecheck/"
- "/tex/latex/rerunfilecheck/")
- (base32
- "1myz0d5bxhxvl4220ikywh921qld8n324kk9kscqbc5iw4063g56")
- #:trivial? #t))
- (propagated-inputs
- (list texlive-generic-infwarerr texlive-generic-uniquecounter
- texlive-latex-atveryend texlive-latex-kvoptions
- texlive-latex-pdftexcmds))
- (home-page "https://www.ctan.org/pkg/rerunfilecheck")
- (synopsis "Checksum based rerun checks on auxiliary files")
- (description
- "This package provides additional rerun warnings if some auxiliary
+(define-public texlive-rerunfilecheck
+ (let ((template (simple-texlive-package
+ "texlive-rerunfilecheck"
+ (list "doc/latex/rerunfilecheck/"
+ "source/latex/rerunfilecheck/"
+ "tex/latex/rerunfilecheck/")
+ (base32
+ "0f53b6dlnlrxkzj7h7x750p0489i2gg3isfqn0dlpncpq23w1r36"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/rerunfilecheck")
+ ((#:build-targets _ '())
+ #~(list "rerunfilecheck.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/rerunfilecheck")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-atveryend
+ texlive-infwarerr
+ texlive-kvoptions
+ texlive-pdftexcmds
+ texlive-uniquecounter))
+ (home-page "https://www.ctan.org/pkg/rerunfilecheck")
+ (synopsis "Checksum based rerun checks on auxiliary files")
+ (description
+ "This package provides additional rerun warnings if some auxiliary
files have changed. It is based on MD5 checksum, provided by pdfTeX.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
-(define-public texlive-latex-tools
- (package
- (name "texlive-latex-tools")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (texlive-ref "latex" "tools"))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "1vm5wfyd0vbmv31a29fc7k8y14xiw00msvdx9n7dzsn9zpfjflqs"))))
- (build-system texlive-build-system)
- (arguments
- '(#:tex-directory "latex/tools"
- #:build-targets '("tools.ins")
- #:phases (modify-phases %standard-phases
- (add-after 'install 'provide-array-2016-10-06.sty
- (lambda* (#:key outputs #:allow-other-keys)
- ;; XXX: array.sty does:
- ;; "DeclareRelease{}{2016-10-06}{array-2016-10-06.sty}"
- ;; ...which causes some users (hypre) to look for that
- ;; file specifically. Provide it.
- (with-directory-excursion (string-append
- (assoc-ref outputs "out")
- "/share/texmf-dist/tex"
- "/latex/tools")
- (symlink "array.sty" "array-2016-10-06.sty")))))))
- (home-page "https://www.ctan.org/pkg/latex-tools")
- (synopsis "LaTeX standard tools bundle")
- (description
- "This package is a collection of (variously) simple tools provided as
-part of the LaTeX required tools distribution, comprising the following
-packages: afterpage, array, bm, calc, dcolumn, delarray, enumerate, fileerr,
-fontsmpl, ftnright, hhline, indentfirst, layout, longtable, multicol,
-rawfonts, showkeys, somedefs, tabularx, theorem, trace, varioref, verbatim,
-xr, and xspace.")
- (license license:lppl1.3+)))
+(define-deprecated-package texlive-latex-rerunfilecheck texlive-rerunfilecheck)
+
+(define-public texlive-tools
+ (let ((template (simple-texlive-package
+ "texlive-tools"
+ (list "doc/latex/tools/"
+ "source/latex/tools/"
+ "tex/latex/tools/")
+ (base32
+ "0c0ixkcvrlzx6sdj25ak3bx0j65qghf51w66yg5wlnpg08d3awrs"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/tools")
+ ((#:build-targets _ '())
+ #~(list "tools.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/tools")))
+ (replace 'copy-files
+ (lambda _
+ (let ((origin #$(package-source this-package))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc)
+ ;; These files are not generated.
+ (let ((directory "/tex/latex/tools"))
+ (with-directory-excursion (string-append origin directory)
+ (for-each
+ (lambda (f)
+ (install-file f (string-append #$output
+ "/share/texmf-dist"
+ directory)))
+ '("array-2016-10-06.sty"
+ "array-2020-02-10.sty"
+ "multicol-2017-04-11.sty"
+ "varioref-2016-02-16.sty")))))))))))
+ (home-page "https://www.ctan.org/tex-archive/macros/latex/required/tools/")
+ (synopsis "LaTeX standard tools bundle")
+ (description "This package provides a collection of simple tools that
+are part of the LaTeX required tools distribution, comprising the packages:
+@code{afterpage}, @code{array}, @code{bm}, @code{calc}, @code{dcolumn},
+@code{delarray}, @code{enumerate}, @code{fileerr}, @code{fontsmpl},
+@code{ftnright}, @code{hhline}, @code{indentfirst}, @code{layout},
+@code{longtable}, @code{multicol}, @code{rawfonts}, @code{showkeys},
+@code{somedefs}, @code{tabularx}, @code{theorem}, @code{trace},
+@code{varioref}, @code{verbatim}, @code{xr}, and @code{xspace}.")
+ (license license:lppl1.3+))))
+
+(define-deprecated-package texlive-latex-tools texlive-tools)
(define-public texlive-url
(package
@@ -4370,6 +4580,7 @@ part of the LaTeX required set of packages.")
texlive-cm
texlive-cm-super ; to avoid bitmap fonts
texlive-fonts-latex
+ texlive-graphics
texlive-metafont
texlive-latex-base
texlive-kpathsea ;for mktex.opt
@@ -4379,9 +4590,8 @@ part of the LaTeX required set of packages.")
texlive-babel
texlive-generic-babel-english
texlive-latex-cyrillic
- texlive-latex-graphics
texlive-psnfss
- texlive-latex-tools
+ texlive-tools
texlive-tetex)))
(package
(name "texlive-base")
@@ -4916,24 +5126,47 @@ Unicode characters. The document should be processed by (pdf)LaTeX with the
Unicode option of @code{inputenc} or @code{inputenx}, or by XeLaTeX/LuaLaTeX.")
(license license:lppl1.3c+)))
-(define-public texlive-latex-pdftexcmds
- (package
- (inherit (simple-texlive-package
- "texlive-latex-pdftexcmds"
- '("/doc/generic/pdftexcmds/"
- "/tex/generic/pdftexcmds/")
- (base32
- "1hph0djbfc8hlwfc41rzlf8l3ccyyvc0n7a0qdrr9881jwd6iv1b")
- #:trivial? #t))
- (propagated-inputs
- (list texlive-generic-iftex texlive-generic-infwarerr
- texlive-generic-ltxcmds))
- (home-page "https://www.ctan.org/pkg/pdftexcmds")
- (synopsis "LuaTeX support for pdfTeX utility functions")
- (description
- "This package makes a number of utility functions from pdfTeX
-available for luaTeX by reimplementing them using Lua.")
- (license license:lppl1.3c+)))
+(define-public texlive-pdftexcmds
+ (let ((template (simple-texlive-package
+ "texlive-pdftexcmds"
+ (list "doc/generic/pdftexcmds/"
+ "source/generic/pdftexcmds/"
+ "tex/generic/pdftexcmds/")
+ (base32
+ "0gad1vi0r5xw7gyj1cb2cp58j4dqrw4awcfxmfrna9xbz91g4sn9"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/pdftexcmds")
+ ((#:build-targets _ '())
+ #~(list "pdftexcmds.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/generic/pdftexcmds")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-iftex texlive-infwarerr texlive-ltxcmds))
+ (home-page "https://www.ctan.org/pkg/pdftexcmds")
+ (synopsis "LuaTeX support for pdfTeX utility functions")
+ (description
+ "This package makes a number of utility functions from pdfTeX
+available for LuaTeX by reimplementing them using Lua.")
+ (license license:lppl1.3c+))))
+
+(define-deprecated-package texlive-latex-pdftexcmds texlive-pdftexcmds)
(define-public texlive-latex-psfrag
(package
@@ -4972,12 +5205,12 @@ rotated.")
(propagated-inputs
(list texlive-latex-bigfoot ; for suffix
texlive-filemod
- texlive-latex-graphics
+ texlive-graphics
texlive-latex-ifplatform
texlive-latex-l3kernel ; for expl3
texlive-oberdiek
texlive-latex-psfrag
- texlive-latex-tools ; for shellesc
+ texlive-tools ; for shellesc
texlive-latex-trimspaces
texlive-latex-xkeyval))
(home-page "https://www.ctan.org/pkg/pstool")
@@ -4991,24 +5224,48 @@ re-processing.")
(define-deprecated-package texlive-latex-pstool texlive-pstool)
-(define-public texlive-latex-refcount
- (package
- (inherit (simple-texlive-package
- "texlive-latex-refcount"
- (list "/doc/latex/refcount/"
- "/tex/latex/refcount/")
- (base32
- "0pkmqj2qihndlv3ks33xzqw91q46jx79r3aygj68d8dflyddi583")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/refcount")
- (synopsis "Counter operations with label references")
- (description
- "This package provides the @code{\\setcounterref} and
+(define-public texlive-refcount
+ (let ((template (simple-texlive-package
+ "texlive-refcount"
+ (list "doc/latex/refcount/"
+ "source/latex/refcount/"
+ "tex/latex/refcount/")
+ (base32
+ "128cvwdl4wcdshvs59yn5iljdxxdrc5jircbxav77y7kc3l33z7z"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/refcount")
+ ((#:build-targets _ '())
+ #~(list "refcount.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/refcount")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/refcount")
+ (synopsis "Counter operations with label references")
+ (description
+ "This package provides the @code{\\setcounterref} and
@code{\\addtocounterref} commands which use the section (or other) number
from the reference as the value to put into the counter. It also provides
@code{\\setcounterpageref} and @code{\\addtocounterpageref} that do the
corresponding thing with the page reference of the label.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
+
+(define-deprecated-package texlive-latex-refcount texlive-refcount)
(define-public texlive-seminar
(package
@@ -5736,39 +5993,45 @@ using box macros and flexible verbatim macros. You can box mathematics,
floats, center, flushleft, and flushright, lists, and pages.")
(license license:lppl1.2+)))
-(define-public texlive-latex-fancyhdr
- (package
- (name "texlive-latex-fancyhdr")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (svn-reference
- (url (string-append "svn://www.tug.org/texlive/tags/"
- %texlive-tag "/Master/texmf-dist/"
- "/tex/latex/fancyhdr"))
- (revision %texlive-revision)))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "1h2zv7cps0pknqhy2dyfclyi002lmsfshm0rn6ywfl9p4fnvh0bc"))))
- (build-system trivial-build-system)
- (arguments
- `(#:modules ((guix build utils))
- #:builder
- (begin
- (use-modules (guix build utils))
- (let ((target (string-append (assoc-ref %outputs "out")
- "/share/texmf-dist/tex/latex/fancyhdr")))
- (mkdir-p target)
- (copy-recursively (assoc-ref %build-inputs "source") target)
- #t))))
- (home-page "https://www.ctan.org/pkg/fancyhdr")
- (synopsis "Extensive control of page headers and footers in LaTeX2e")
- (description
- "The package provides extensive facilities, both for constructing headers
-and footers, and for controlling their use (for example, at times when LaTeX
-would automatically change the heading style in use).")
- (license license:lppl)))
+(define-public texlive-fancyhdr
+ (let ((template (simple-texlive-package
+ "texlive-fancyhdr"
+ (list "doc/latex/fancyhdr/"
+ "source/latex/fancyhdr/"
+ "tex/latex/fancyhdr/")
+ (base32
+ "15fainwxs22gg4xhwsv1vmjgdhg34dbkir26nnk4pb6jprpwb83f"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/fancyhdr")
+ ((#:build-targets _ '())
+ #~(list "fancyhdr.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _ (chdir "source/latex/fancyhdr")))
+ (replace 'copy-files
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/fancyhdr")
+ (synopsis "Extensive control of page headers and footers in LaTeX2e")
+ (description
+ "This package provides extensive facilities, both for constructing
+headers and footers, and for controlling their use (for example, at times when
+LaTeX would automatically change the heading style in use).")
+ (license license:lppl))))
+
+(define-deprecated-package texlive-latex-fancyhdr texlive-fancyhdr)
(define-public texlive-latex-float
(package
@@ -5818,49 +6081,89 @@ the same place. The package also has a range of techniques for labelling
footnotes with symbols rather than numbers.")
(license license:lppl1.3+)))
-(define-public texlive-latex-letltxmacro
- (package
- (inherit (simple-texlive-package
- "texlive-latex-letltxmacro"
- (list "/doc/latex/letltxmacro/"
- "/tex/latex/letltxmacro/")
- (base32
- "0yy1m1jiyxq2pssp0pidaa2swx6lyxw3zwpm2r8m0v2r3lvsyyxx")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/letltxmacro")
- (synopsis "Let assignment for macros")
- (description
- "TeX’s @code{\\let} assignment does not work for LaTeX macros with
+(define-public texlive-letltxmacro
+ (let ((template (simple-texlive-package
+ "texlive-letltxmacro"
+ (list "doc/latex/letltxmacro/"
+ "source/latex/letltxmacro/"
+ "tex/latex/letltxmacro/")
+ (base32
+ "16bmwsng9p80jf78sdmib24apwnw3raw306cs1ms50z5s9dsfdby"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/letltxmacro")
+ ((#:build-targets _ '())
+ #~(list "letltxmacro.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/letltxmacro")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/letltxmacro")
+ (synopsis "Let assignment for macros")
+ (description
+ "TeX’s @code{\\let} assignment does not work for LaTeX macros with
optional arguments, or for macros that are defined as robust macros by
@code{\\DeclareRobustCommand}. This package defines @code{\\LetLtxMacro}
that also takes care of the involved internal macros.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
+
+(define-deprecated-package texlive-latex-letltxmacro texlive-letltxmacro)
(define-public texlive-listings
- (package
- (name "texlive-listings")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (texlive-ref "latex" "listings"))
- (file-name
- ;; TODO: Drop "latex-" on next rebuild cycle.
- (string-append "texlive-latex-listings-" version "-checkout"))
- (sha256
- (base32
- "082zri3gp8s6p2difhk1pbix2vzmvsf6fmld2z78v35xwk3fiya0"))))
- (build-system texlive-build-system)
- (arguments
- '(#:tex-directory "latex/listings"
- #:build-targets '("listings.ins")))
- (home-page "https://www.ctan.org/pkg/listings")
- (synopsis "Typeset source code listings using LaTeX")
- (description
- "The package enables the user to typeset programs (programming code)
+ (let ((template
+ (simple-texlive-package
+ "texlive-listings"
+ (list "doc/latex/listings/"
+ "source/latex/listings/"
+ "tex/latex/listings/")
+ (base32 "15dnm0j86305x84ss3ymhhcczcw45b2liq01vrab6fj204wzsahk"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/listings")
+ ((#:build-targets _ '())
+ #~(list "listings.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/listings")))
+ (replace 'copy-files
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/listings")
+ (synopsis "Typeset source code listings using LaTeX")
+ (description
+ "The package enables the user to typeset programs (programming code)
within LaTeX; the source code is read directly by TeX---no front-end processor
is needed. Keywords, comments and strings can be typeset using different
styles. Support for @code{hyperref} is provided.")
- (license license:lppl1.3+)))
+ (license license:lppl1.3+))))
+
+(define-deprecated-package texlive-latex-listings texlive-listings)
(define-public texlive-latex-listings
(deprecated-package "texlive-latex-listings" texlive-listings))
@@ -5904,23 +6207,47 @@ transliterate semitic languages; patches to make (La)TeX formulae embeddable
in SGML; use maths minus in text as appropriate; simple Young tableaux.")
(license license:gpl2)))
-(define-public texlive-latex-kvoptions
- (package
- (inherit (simple-texlive-package
- "texlive-latex-kvoptions"
- (list "/doc/latex/kvoptions/"
- "/tex/latex/kvoptions/")
- (base32
- "02i4n2n3j4lg68d3nam08m63kb4irc99wfhyc2z51r02lm1wwmvw")
- #:trivial? #t))
- (propagated-inputs
- (list texlive-generic-kvsetkeys texlive-generic-ltxcmds))
- (home-page "https://www.ctan.org/pkg/kvoptions")
- (synopsis "Key/value format for package options")
- (description
- "This package provides facilities for using key-value format in
+(define-public texlive-kvoptions
+ (let ((template (simple-texlive-package
+ "texlive-kvoptions"
+ (list "doc/latex/kvoptions/"
+ "source/latex/kvoptions/"
+ "tex/latex/kvoptions/")
+ (base32
+ "1b8q93l54160b8gn3fq484n15n6cylrhmf2xk7p42czg2rqw7w3l"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/kvoptions")
+ ((#:build-targets _ '())
+ #~(list "kvoptions.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/kvoptions")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-kvsetkeys texlive-ltxcmds))
+ (home-page "https://www.ctan.org/pkg/kvoptions")
+ (synopsis "Key/value format for package options")
+ (description
+ "This package provides facilities for using key-value format in
package options.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
+
+(define-deprecated-package texlive-latex-kvoptions texlive-kvoptions)
(define-public texlive-fonts-ec
(package
@@ -6207,26 +6534,53 @@ format. LaTeX support, for using these fonts in mathematics, is available via
one of the packages @code{calrsfs} and @code{mathrsfs}.")
(license (license:fsf-free "http://mirrors.ctan.org/fonts/rsfs/README"))))
-(define-public texlive-latex-eso-pic
- (package
- (name "texlive-latex-eso-pic")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (texlive-ref "latex" "eso-pic"))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "12f7pbhiav4iz3rra5vq85v9f14h8j1ybi42kvnkzgjsay87p7gf"))))
- (build-system texlive-build-system)
- (arguments '(#:tex-directory "latex/eso-pic"))
- (home-page "https://www.ctan.org/pkg/eso-pic")
- (synopsis "Add picture commands (or backgrounds) to every page")
- (description
- "The package adds one or more user commands to LaTeX's @code{shipout}
+(define-public texlive-eso-pic
+ (let ((template (simple-texlive-package
+ "texlive-eso-pic"
+ (list "doc/latex/eso-pic/"
+ "source/latex/eso-pic/"
+ "tex/latex/eso-pic/")
+ (base32
+ "05bqm4x209wji0q6xk1jrjp0nzqafp44dlq30hlpcagrggjb3d9s"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/eso-pic")
+ ((#:build-targets _ '())
+ #~(list "eso-pic.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/eso-pic")))
+ (replace 'copy-files
+ (lambda _
+ (let ((origin #$(package-source this-package))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc)
+ ;; This file is not generated.
+ (install-file
+ (string-append origin
+ "/tex/latex/eso-pic/showframe.sty")
+ (string-append
+ #$output
+ "/share/texmf-dist/tex/latex/eso-pic")))))))))
+ (home-page "https://ctan.org/macros/latex/contrib/eso-pic")
+ (synopsis "Add picture commands (or backgrounds) to every page")
+ (description
+ "The package adds one or more user commands to LaTeX's @code{shipout}
routine, which may be used to place the output at fixed positions. The
@code{grid} option may be used to find the correct places.")
- (license license:lppl1.3+)))
+ (license license:lppl1.3+))))
+
+(define-deprecated-package texlive-latex-eso-pic texlive-eso-pic)
(define-public texlive-latex-eepic
(package
@@ -6376,29 +6730,51 @@ that is untidy; this package (though it is no substitute for a properly
designed class) helps alleviate this untidiness.")
(license license:lppl)))
-(define-public texlive-latex-pdfpages
- (package
- (name "texlive-latex-pdfpages")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (texlive-ref "latex" "pdfpages"))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "140kl8r7g2ak2frjn5pmwiwibfynyfwp897r9vk8pypmn390lzr2"))))
- (build-system texlive-build-system)
- (arguments '(#:tex-directory "latex/pdfpages"))
- (home-page "https://www.ctan.org/pkg/pdfpages")
- (synopsis "Include PDF documents in LaTeX")
- (description
- "This package simplifies the inclusion of external multi-page PDF
+(define-public texlive-pdfpages
+ (let ((template (simple-texlive-package
+ "texlive-pdfpages"
+ (list "doc/latex/pdfpages/"
+ "source/latex/pdfpages/"
+ "tex/latex/pdfpages/")
+ (base32
+ "0a68vxkygk20fp51fkp7nvs8mc7h6irdvxal8qsnn9zrgr965d76"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/pdfpages")
+ ((#:build-targets _ '())
+ #~(list "pdfpages.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/pdfpages")))
+ (replace 'copy-files
+ (lambda _
+ (let ((origin #$(package-source this-package))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-tools texlive-oberdiek texlive-graphics texlive-eso-pic))
+ (home-page "https://ctan.org/macros/latex/contrib/pdfpages")
+ (synopsis "Include PDF documents in LaTeX")
+ (description
+ "This package simplifies the inclusion of external multi-page PDF
documents in LaTeX documents. Pages may be freely selected and it is possible
to put several logical pages onto each sheet of paper. Furthermore a lot of
hypertext features like hyperlinks and article threads are provided. The
package supports pdfTeX (pdfLaTeX) and VTeX. With VTeX it is even possible to
use this package to insert PostScript files, in addition to PDF files.")
- (license license:lppl1.3+)))
+ (license license:lppl1.3+))))
+
+(define-deprecated-package texlive-latex-pdfpages texlive-pdfpages)
(define-public texlive-stmaryrd
(let ((template (simple-texlive-package
@@ -6463,23 +6839,41 @@ the whole font.")
(define-deprecated-package texlive-fonts-stmaryrd texlive-stmaryrd)
-(define-public texlive-latex-subfigure
- (package
- (name "texlive-latex-subfigure")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (texlive-ref "latex" "subfigure"))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "15spcl5wb7w269qd6y596vp4yi8sa5ppcx8w4z2i9kyp02r3a0yb"))))
- (build-system texlive-build-system)
- (arguments '(#:tex-directory "latex/subfigure"))
- (home-page "https://www.ctan.org/pkg/subfigure")
- (synopsis "Figures divided into subfigures")
- (description
- "This (deprecated) package provides support for the manipulation and
+(define-public texlive-subfigure
+ (let ((template (simple-texlive-package
+ "texlive-subfigure"
+ (list "doc/latex/subfigure/"
+ "source/latex/subfigure/"
+ "tex/latex/subfigure/")
+ (base32
+ "1327ygajf6gza5msvhfjjnk6r3sw7vb7rxg23v4gx4dmyxqfqrbi"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/subfigure")
+ ((#:build-targets _ '())
+ #~(list "subfigure.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/subfigure")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/subfigure")
+ (synopsis "Figures divided into subfigures")
+ (description
+ "This (deprecated) package provides support for the manipulation and
reference of small or \"sub\" figures and tables within a single figure or
table environment. It is convenient to use this package when your subfigures
are to be separately captioned, referenced, or are to be included in the
@@ -6488,7 +6882,9 @@ used inside a figure environment for each subfigure. An optional first
argument is used as the caption for that subfigure. The package is now
considered obsolete: it was superseded by @code{subfig}, but users may find
the more recent @code{subcaption} package more satisfactory.")
- (license license:lppl)))
+ (license license:lppl))))
+
+(define-deprecated-package texlive-latex-subfigure texlive-subfigure)
(define-public texlive-latex-tabulary
(package
@@ -6742,9 +7138,9 @@ Simple Young tableaux.
texlive-jknappen
texlive-hyperref
texlive-latex-colortbl
- texlive-latex-fancyhdr
- texlive-latex-graphics ;for color.sty
- texlive-latex-tools ;for array.sty
+ texlive-fancyhdr
+ texlive-graphics ;for color.sty
+ texlive-tools ;for array.sty
texlive-marvosym
texlive-tex-ini-files ;for pdftexconfig
texlive-ulem))
@@ -6819,33 +7215,15 @@ The (currently) supported encodings are: OT1, T1, IL2, TS1, T2*, X2, QX, and
LGR. The package doesn't (currently) support mathematics.")
(license license:lppl)))
-(define-public texlive-latex-titlesec
+(define-public texlive-titlesec
(package
- (name "texlive-latex-titlesec")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (svn-reference
- (url (string-append "svn://www.tug.org/texlive/tags/"
- %texlive-tag "/Master/texmf-dist/"
- "/tex/latex/titlesec"))
- (revision %texlive-revision)))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "1kw7dvxvdfbf31zw0n8r0g5xak3vcdf25n33fqw93j59zpc5nvbl"))))
- (build-system trivial-build-system)
- (arguments
- `(#:modules ((guix build utils))
- #:builder
- (begin
- (use-modules (guix build utils))
- (let ((target (string-append (assoc-ref %outputs "out")
- "/share/texmf-dist/tex/latex/titlesec")))
- (mkdir-p target)
- (copy-recursively (assoc-ref %build-inputs "source") target)
- #t))))
- (home-page "https://www.ctan.org/pkg/titlesec")
+ (inherit
+ (simple-texlive-package
+ "texlive-titlesec"
+ (list "doc/latex/titlesec/" "tex/latex/titlesec/")
+ (base32 "01nwh4p15xblc3kgivjliihy9kr8yr2cqsf9wn2iwqv1njx0i2zw")
+ #:trivial? #t))
+ (home-page "https://ctan.org/macros/latex/contrib/titlesec")
(synopsis "Select alternative section titles")
(description
"This package provides an interface to sectioning commands for selection
@@ -6855,6 +7233,8 @@ styles. It also includes a package to change the page styles when there are
floats in a page. You may assign headers/footers to individual floats, too.")
(license license:lppl)))
+(define-deprecated-package texlive-latex-titlesec texlive-titlesec)
+
(define-public texlive-latex-type1cm
(package
(name "texlive-latex-type1cm")
@@ -7793,35 +8173,45 @@ including:
It also ensures compatibility with the @code{media9} and @code{animate} packages.")
(license license:lppl)))
-(define-public texlive-latex-ms
- (package
- (name "texlive-latex-ms")
- (version (number->string %texlive-revision))
- (source (origin
- (method svn-fetch)
- (uri (texlive-ref "latex" "ms"))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "04ww5abfm7dx81d21yr2gwy9jswaalnfm2384xp4cyx7srd9spfv"))))
- (build-system texlive-build-system)
- (arguments
- '(#:tex-directory "latex/ms"
- #:tex-format "latex"))
- (home-page "https://ctan.org/pkg/ms")
- (synopsis "Various LATEX packages by Martin Schröder")
- (description
- "A bundle of LATEX packages by Martin Schröder; the collection comprises:
+(define-public texlive-ms
+ (let ((template
+ (simple-texlive-package
+ "texlive-ms"
+ (list "doc/latex/ms/" "source/latex/ms/" "tex/latex/ms/")
+ (base32 "1cgrpx5mybiirjjdmni8kvqdg37dwfkixq3h9ami0mgxqqqfl2x3"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "latex/ms")
+ ((#:tex-format _ "latex") "latex")
+ ((#:build-targets _ '())
+ #~(list "count1to.ins" "multitoc.ins"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/ms")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://ctan.org/macros/latex/contrib/ms")
+ (synopsis "Various LaTeX packages by Martin Schroder")
+ (description
+ "The remains of a bundle of LaTeX packages by Martin Schroder; the
+collection comprises: count1to, make use of TeX counters; and multitoc,
+typeset the table of contents in multiple columns.")
+ (license license:lppl))))
-@itemize
-@item @command{count1to}, make use of fixed TEX counters;
-@item @command{everysel}, set commands to execute every time a font is selected;
-@item @command{everyshi}, set commands to execute whenever a page is shipped out;
-@item @command{multitoc}, typeset the table of contents in multiple columns;
-@item @command{prelim2e}, mark typeset pages as preliminary; and
-@item @command{ragged2e}, typeset ragged text and allow hyphenation.
-@end itemize\n")
- (license license:lppl1.3c+)))
+(define-deprecated-package texlive-latex-ms texlive-ms)
(define-public texlive-numprint
(let ((template
@@ -7983,66 +8373,57 @@ from a typewriter. The package also offers double and wavy underlining, and
striking out (line through words) and crossing out (/// over words).")
(license license:lppl1.3c+)))
-(define-deprecated-package texlive-generic-ulem texlive-ulem)
-
(define-public texlive-pgf
(package
- (name "texlive-pgf")
- (version (number->string %texlive-revision))
- (source
- (origin
- (method svn-fetch)
- (uri (svn-reference
- (url (string-append "svn://www.tug.org/texlive/tags/"
- %texlive-tag "/Master/texmf-dist/"
- "/tex/latex/pgf"))
- (revision %texlive-revision)))
- (file-name (string-append name "-" version "-checkout"))
- (sha256
- (base32
- "1jk10rxz5f8vh46am11b40hxhhikk67h9jr3z877q5qc8kwppgza"))))
- (build-system trivial-build-system)
- (native-inputs
- `(("texlive-latex-pgf-generic"
- ,(origin
- (method svn-fetch)
- (uri (svn-reference
- (url (string-append "svn://www.tug.org/texlive/tags/"
- %texlive-tag "/Master/texmf-dist/"
- "/tex/generic/pgf"))
- (revision %texlive-revision)))
- (file-name (string-append "texlive-latex-pgf-generic" version "-checkout"))
- (sha256
- (base32
- "05zdq7y3am109m5534ahqqp9x5iar3ha68v1r4zkrdly2mijxz2j"))))))
+ (inherit (simple-texlive-package
+ "texlive-pgf"
+ (list "doc/generic/pgf/"
+ "scripts/pgf/"
+ "source/generic/pgf/c/"
+ "source/generic/pgf/testsuite/external/"
+ "source/generic/pgf/testsuite/mathtest/"
+ "tex/context/third/pgf/basiclayer/"
+ "tex/context/third/pgf/frontendlayer/"
+ "tex/context/third/pgf/math/"
+ "tex/context/third/pgf/systemlayer/"
+ "tex/context/third/pgf/utilities/"
+ "tex/generic/pgf/"
+ "tex/latex/pgf/basiclayer/"
+ "tex/latex/pgf/compatibility/"
+ "tex/latex/pgf/doc/"
+ "tex/latex/pgf/frontendlayer/"
+ "tex/latex/pgf/math/"
+ "tex/latex/pgf/systemlayer/"
+ "tex/latex/pgf/utilities/"
+ "tex/plain/pgf/basiclayer/"
+ "tex/plain/pgf/frontendlayer/"
+ "tex/plain/pgf/math/"
+ "tex/plain/pgf/systemlayer/"
+ "tex/plain/pgf/utilities/")
+ (base32
+ "02qfx9k0ggqfrbrjpfz74w8rkvvzk07rmgr37r7y64gggwpn4cw5")
+ #:trivial? #t))
(propagated-inputs
- (list texlive-xcolor))
- (arguments
- `(#:modules ((guix build utils))
- #:builder
- (begin
- (use-modules (guix build utils))
- (let ((target-generic (string-append (assoc-ref %outputs "out")
- "/share/texmf-dist/tex/generic/pgf"))
- (target-latex (string-append (assoc-ref %outputs "out")
- "/share/texmf-dist/tex/latex/pgf")))
- (mkdir-p target-generic)
- (mkdir-p target-latex)
- (copy-recursively (assoc-ref %build-inputs "texlive-latex-pgf-generic") target-generic)
- (copy-recursively (assoc-ref %build-inputs "source") target-latex)
- #t))))
- (home-page "https://www.ctan.org/pkg/tikz")
+ (list texlive-atveryend
+ texlive-fp
+ texlive-graphics
+ texlive-ms
+ texlive-pdftexcmds
+ texlive-xcolor))
+ (home-page "https://ctan.org/graphics/pgf/base")
(synopsis "Create PostScript and PDF graphics in TeX")
(description
"PGF is a macro package for creating graphics. It is platform- and
format-independent and works together with the most important TeX backend
drivers, including pdfTeX and dvips. It comes with a user-friendly syntax layer
-called TikZ.
+called TikZ. Its usage is similar to pstricks and the standard picture
+environment. PGF works with plain (pdf-)TeX, (pdf-)LaTeX, and ConTeXt. Unlike
+pstricks, it can produce either PostScript or PDF output.")
+ ;; The code of the package is dual-license: GPL-2 or LPPL-1.3c+. The
+ ;; documentation is also dual-license: LPPL-1.3c+ or GFDL-1.2.
+ (license (list license:gpl2 license:lppl1.3c+ license:fdl1.2+))))
-Its usage is similar to pstricks and the standard picture environment. PGF
-works with plain (pdf-)TeX, (pdf-)LaTeX, and ConTeXt. Unlike pstricks, it can
-produce either PostScript or PDF output.")
- (license license:lppl1.3c+)))
+(define-deprecated-package texlive-latex-pgf texlive-pgf)
(define-public texlive-latex-pgf
(deprecated-package "texlive-latex-pgf" texlive-pgf))
@@ -8106,162 +8487,381 @@ refers to the version of scrbook, scrreprt, scrartcl, scrlttr2 and
typearea (which are the main parts of the bundle).")
(license license:lppl1.3+)))
-(define-public texlive-generic-atbegshi
- (package
- (inherit (simple-texlive-package
- "texlive-generic-atbegshi"
- '("/doc/latex/atbegshi/"
- "/tex/generic/atbegshi/")
- (base32
- "184fr5kd3wl44ix63lwb3ll7dhiikkyw1czbnzrl4am4rx0zh4d8")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/atbegshi")
- (synopsis "Execute commands at @code{\\shipout} time")
- (description
- "This package is a modern reimplementation of package @code{everyshi},
+(define-public texlive-atbegshi
+ (let ((template (simple-texlive-package
+ "texlive-atbegshi"
+ (list "doc/latex/atbegshi/"
+ "source/latex/atbegshi/"
+ "tex/generic/atbegshi/")
+ (base32
+ "0vd90wdjwj5w4g4xka4nms3rgixjw63iwf0hj0v1akcfflwvgn69"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/atbegshi")
+ ((#:build-targets _ '())
+ #~(list "atbegshi.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/atbegshi")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/atbegshi")
+ (synopsis "Execute commands at @code{\\shipout} time")
+ (description
+ "This package is a modern reimplementation of package @code{everyshi},
providing various commands to be executed before a @code{\\shipout} command.
It makes use of e-TeX’s facilities if they are available. The package may
be used either with LaTeX or with plain TeX.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
-(define-public texlive-generic-bigintcalc
- (package
- (inherit (simple-texlive-package
- "texlive-generic-bigintcalc"
- '("/doc/latex/bigintcalc/README.md"
- "/tex/generic/bigintcalc/")
- (base32
- "19grk4p1dh566hgpzhnjyjnrw57hpjijcpr7ci401n9jszcc1xkz")
- #:trivial? #t))
- (propagated-inputs
- (list texlive-latex-pdftexcmds))
- (home-page "https://www.ctan.org/pkg/bigintcalc")
- (synopsis "Integer calculations on very large numbers")
- (description
- "This package provides expandable arithmetic operations with big
+(define-deprecated-package texlive-generic-atbegshi texlive-atbegshi)
+
+(define-public texlive-bigintcalc
+ (let ((template (simple-texlive-package
+ "texlive-bigintcalc"
+ (list "doc/latex/bigintcalc/"
+ "source/latex/bigintcalc/"
+ "tex/generic/bigintcalc/")
+ (base32
+ "1cyv4mcvx83ab782l6h2f86a63ipm845r7hv1m6f1z2336vy7rc5"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/bigintcalc")
+ ((#:build-targets _ '())
+ #~(list "bigintcalc.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/bigintcalc")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-pdftexcmds))
+ (home-page "https://www.ctan.org/pkg/bigintcalc")
+ (synopsis "Integer calculations on very large numbers")
+ (description
+ "This package provides expandable arithmetic operations with big
integers that can exceed TeX's number limits.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
-(define-public texlive-generic-bitset
- (package
- (inherit (simple-texlive-package
- "texlive-generic-bitset"
- '("/doc/latex/bitset/README.md"
- "/tex/generic/bitset/")
- (base32
- "0inj6qpzizvsbxdfsaijnl4iq976kyrnchnm3gc1kc2w389zrn1l")
- #:trivial? #t))
- (propagated-inputs
- (list texlive-generic-infwarerr texlive-generic-intcalc
- texlive-generic-bigintcalc))
- (home-page "https://www.ctan.org/pkg/bitset")
- (synopsis "Handle bit-vector datatype")
- (description
- "This package defines and implements the data type bit set, a vector
+(define-deprecated-package texlive-generic-bigintcalc texlive-bigintcalc)
+
+(define-public texlive-bitset
+ (let ((template (simple-texlive-package
+ "texlive-bitset"
+ (list "doc/latex/bitset/"
+ "source/latex/bitset/"
+ "tex/generic/bitset/")
+ (base32
+ "1q7vk5gr5a4vaa3l20j178cg2q7a99rxdiyxhzpx9a6lfqfkjddz"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/bitset")
+ ((#:build-targets _ '())
+ #~(list "bitset.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/bitset")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-bigintcalc texlive-infwarerr texlive-intcalc))
+ (home-page "https://www.ctan.org/pkg/bitset")
+ (synopsis "Handle bit-vector datatype")
+ (description
+ "This package defines and implements the data type bit set, a vector
of bits. The size of the vector may grow dynamically. Individual bits
can be manipulated.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
-(define-public texlive-generic-etexcmds
- (package
- (inherit (simple-texlive-package
- "texlive-generic-etexcmds"
- '("/doc/latex/etexcmds/README.md"
- "/tex/generic/etexcmds/")
- (base32
- "11y6pnlq13bp0ybi7c82g8ds8085zv1zaslgqv3dzhgi3dklpc0c")
- #:trivial? #t))
- (propagated-inputs
- (list texlive-generic-infwarerr texlive-generic-iftex))
- (home-page "https://www.ctan.org/pkg/etexcmds")
- (synopsis "Avoid name clashes with e-TeX commands")
- (description
- "New primitive commands are introduced in e-TeX; sometimes the names
+(define-deprecated-package texlive-generic-bitset texlive-bitset)
+
+(define-public texlive-etexcmds
+ (let ((template (simple-texlive-package
+ "texlive-etexcmds"
+ (list "doc/latex/etexcmds/"
+ "source/latex/etexcmds/"
+ "tex/generic/etexcmds/")
+ (base32
+ "13cf1fs5x9d8749b2jgxmgnkrx0r4hwpl389r15kq3ldz9jfl627"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/etexcmds")
+ ((#:build-targets _ '())
+ #~(list "etexcmds.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/etexcmds")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-iftex texlive-infwarerr))
+ (home-page "https://www.ctan.org/pkg/etexcmds")
+ (synopsis "Avoid name clashes with e-TeX commands")
+ (description
+ "New primitive commands are introduced in e-TeX; sometimes the names
collide with existing macros. This package solves the name clashes by
adding a prefix to e-TeX’s commands. For example, ε-TeX’s
@code{\\unexpanded} is provided as @code{\\etex@@unexpanded}.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
-(define-public texlive-generic-gettitlestring
- (package
- (inherit (simple-texlive-package
- "texlive-generic-gettitlestring"
- '("/doc/latex/gettitlestring/"
- "/tex/generic/gettitlestring/")
- (base32
- "1p4hg9mac03rzvj9dw0ws3zdh55fy1ns954f912algw9f2aq4xgp")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/gettitlestring")
- (synopsis "Clean up title references")
- (description
- "This package provides commands for cleaning up the title string
+(define-deprecated-package texlive-generic-etexcmds texlive-etexcmds)
+
+(define-public texlive-gettitlestring
+ (let ((template (simple-texlive-package
+ "texlive-gettitlestring"
+ (list "doc/latex/gettitlestring/"
+ "source/latex/gettitlestring/"
+ "tex/generic/gettitlestring/")
+ (base32
+ "1vbvmwrpsvy37gbwdmsqbbsicjiww3i0bh1yqnb75jiya9an0sjb"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/gettitlestring")
+ ((#:build-targets _ '())
+ #~(list "gettitlestring.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/gettitlestring")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/gettitlestring")
+ (synopsis "Clean up title references")
+ (description
+ "This package provides commands for cleaning up the title string
(such as removing @code{\\label} commands) for packages that typeset such
strings.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
-(define-public texlive-generic-infwarerr
- (package
- (inherit (simple-texlive-package
- "texlive-generic-infwarerr"
- '("/tex/generic/infwarerr/")
- (base32
- "19nlrbfmqbkjrrx9x75s9nd6crg1lzimb2fr3hfblaivj6lx8p4r")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/infwarerr")
- (synopsis "Information/warning/error macros")
- (description
- "This package provides a complete set of macros for information,
+(define-deprecated-package texlive-generic-gettitlestring texlive-gettitlestring)
+
+(define-public texlive-infwarerr
+ (let ((template (simple-texlive-package
+ "texlive-infwarerr"
+ (list "doc/latex/infwarerr/"
+ "source/latex/infwarerr/"
+ "tex/generic/infwarerr/")
+ (base32
+ "0lpcrpf3d6xfdp68ri22126x57mvmq5dpj9np68ph8p8lhvhqdjd"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/infwarerr")
+ ((#:build-targets _ '())
+ #~(list "infwarerr.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/infwarerr")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/infwarerr")
+ (synopsis "Information/warning/error macros")
+ (description
+ "This package provides a complete set of macros for information,
warning and error messages. Under LaTeX, the commands are wrappers for
the corresponding LaTeX commands; under Plain TeX they are available as
complete implementations.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
-(define-public texlive-generic-intcalc
- (package
- (inherit (simple-texlive-package
- "texlive-generic-intcalc"
- '("/tex/generic/intcalc/")
- (base32
- "0llrnayqwdqxi91yh7panbbiljina3bynv2hxhi6sssaw3pyd92l")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/intcalc")
- (synopsis "Expandable arithmetic operations with integers")
- (description
- "This package provides expandable arithmetic operations with integers,
+(define-deprecated-package texlive-generic-infwarerr texlive-infwarerr)
+
+(define-public texlive-intcalc
+ (let ((template (simple-texlive-package
+ "texlive-intcalc"
+ (list "doc/latex/intcalc/"
+ "source/latex/intcalc/"
+ "tex/generic/intcalc/")
+ (base32
+ "15alwp9cr8wasfajs3p201p7nqml37vly9mpg1j5l6xv95javk7x"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/intcalc")
+ ((#:build-targets _ '())
+ #~(list "intcalc.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/intcalc")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/intcalc")
+ (synopsis "Expandable arithmetic operations with integers")
+ (description
+ "This package provides expandable arithmetic operations with integers,
using the e-TeX extension @code{\\numexpr} if it is available.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
-(define-public texlive-generic-kvdefinekeys
- (package
- (inherit (simple-texlive-package
- "texlive-generic-kvdefinekeys"
- '("/tex/generic/kvdefinekeys/")
- (base32
- "12nn74skhwiszbdhawqds31caz6d59a5pjmwar0r8lmk4f1jr3xh")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/kvdefinekeys")
- (synopsis "Define keys for use in the @code{kvsetkeys} package")
- (description
- "This package provides the @code{\\kv@@define@@key} (analogous to
+(define-deprecated-package texlive-generic-intcalc texlive-intcalc)
+
+(define-public texlive-kvdefinekeys
+ (let ((template (simple-texlive-package
+ "texlive-kvdefinekeys"
+ (list "doc/latex/kvdefinekeys/"
+ "source/latex/kvdefinekeys/"
+ "tex/generic/kvdefinekeys/")
+ (base32
+ "1026h223ph3nzhs6jqbasa0bzsrdg3zgllfcwwcavfzb5i6p9jdf"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/kvdefinekeys")
+ ((#:build-targets _ '())
+ #~(list "kvdefinekeys.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/kvdefinekeys")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/kvdefinekeys")
+ (synopsis "Define keys for use in the @code{kvsetkeys} package")
+ (description
+ "This package provides the @code{\\kv@@define@@key} (analogous to
keyval’s @code{\\define@@key}, to define keys for use by @code{kvsetkeys}.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
-(define-public texlive-generic-kvsetkeys
- (package
- (inherit (simple-texlive-package
- "texlive-generic-kvsetkeys"
- '("/tex/generic/kvsetkeys/")
- (base32
- "149vpmv4vms269dzq4sghlngg380sasvxnb3sx9rfs7d9j0finvi")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/kvsetkeys")
- (synopsis "Key value parser with default handler support")
- (description
- "This package provides @code{\\kvsetkeys}, a variant of @code{\\setkeys}
+(define-deprecated-package texlive-generic-kvdefinekeys texlive-kvdefinekeys)
+
+(define-public texlive-kvsetkeys
+ (let ((template (simple-texlive-package
+ "texlive-kvsetkeys"
+ (list "doc/latex/kvsetkeys/"
+ "source/latex/kvsetkeys/"
+ "tex/generic/kvsetkeys/")
+ (base32
+ "0b2f2r49vi8x54qshm1h9sh8zhdmy0mc2y44yd05kcmmbiiq7hfz"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/kvsetkeys")
+ ((#:build-targets _ '())
+ #~(list "kvsetkeys.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/kvsetkeys")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/kvsetkeys")
+ (synopsis "Key value parser with default handler support")
+ (description
+ "This package provides @code{\\kvsetkeys}, a variant of @code{\\setkeys}
from the @code{keyval} package. Users can specify a handler that deals with
unknown options. Active commas and equal signs may be used, and only one
level of curly braces are removed from the values.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
+
+(define-deprecated-package texlive-generic-kvsetkeys texlive-kvsetkeys)
(define-public texlive-generic-listofitems
(package
@@ -8297,56 +8897,130 @@ the parsing character has been selected by the user, and to access any of
these items with a simple syntax.")
(license license:lppl1.3c+)))
-(define-public texlive-generic-ltxcmds
- (package
- (inherit (simple-texlive-package
- "texlive-generic-ltxcmds"
- '("/tex/generic/ltxcmds/")
- (base32
- "1lr77yai2qivlx26s5094czpfxmg96bhxps5wbm8xn7cpsw0zbd9")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/ltxcmds")
- (synopsis "LaTeX kernel commands extracted for general use")
- (description
- "This package exports some utility macros from the LaTeX kernel into
+(define-public texlive-ltxcmds
+ (let ((template (simple-texlive-package
+ "texlive-ltxcmds"
+ (list "doc/generic/ltxcmds/"
+ "source/generic/ltxcmds/"
+ "tex/generic/ltxcmds/")
+ (base32
+ "1izcw9jl64iij541183hc156sjwamvxm7q9fkpfnz8sppyg31fkb"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/ltxcmds")
+ ((#:build-targets _ '())
+ #~(list "ltxcmds.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/generic/ltxcmds")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/ltxcmds")
+ (synopsis "LaTeX kernel commands extracted for general use")
+ (description
+ "This package exports some utility macros from the LaTeX kernel into
a separate namespace and also makes them available for other formats such
as plain TeX.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
-(define-public texlive-generic-pdfescape
- (package
- (inherit (simple-texlive-package
- "texlive-generic-pdfescape"
- '("/tex/generic/pdfescape/")
- (base32
- "1vbdjmm9bi9ngzz2z1b8jnf6nzf9xsaj5pvyswg13y4dr00mnz6n")
- #:trivial? #t))
- (home-page "https://www.ctan.org/pkg/pdfescape")
- (synopsis "pdfTeX's escape features for plain TeX")
- (description
- "This package implements pdfTeX's escape features (@code{\\pdfescapehex},
+(define-deprecated-package texlive-generic-ltxcmds texlive-ltxcmds)
+
+(define-public texlive-pdfescape
+ (let ((template (simple-texlive-package
+ "texlive-pdfescape"
+ (list "doc/latex/pdfescape/"
+ "source/latex/pdfescape/"
+ "tex/generic/pdfescape/")
+ (base32
+ "16a0rdmpa4wxh6gyf46qwfgyh399rwdind2wc89phqd50ky9b5m4"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/pdfescape")
+ ((#:build-targets _ '())
+ #~(list "pdfescape.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/pdfescape")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (home-page "https://www.ctan.org/pkg/pdfescape")
+ (synopsis "pdfTeX's escape features for plain TeX")
+ (description
+ "This package implements pdfTeX's escape features (@code{\\pdfescapehex},
@code{\\pdfunescapehex}, @code{\\pdfescapename}, @code{\\pdfescapestring})
using TeX or e-TeX.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
-(define-public texlive-generic-uniquecounter
- (package
- (inherit (simple-texlive-package
- "texlive-generic-uniquecounter"
- '("/doc/latex/uniquecounter/"
- "/tex/generic/uniquecounter/")
- (base32
- "1bjh8vwiqlkmjqndnh4xp116524x4m3hdcyq2s231jiqy8il8dcc")
- #:trivial? #t))
- (propagated-inputs
- (list texlive-generic-bigintcalc texlive-generic-infwarerr))
- (home-page "https://www.ctan.org/pkg/uniquecounter")
- (synopsis "Unlimited unique counter")
- (description
- "This package provides a kind of counter that provides unique number
+(define-deprecated-package texlive-generic-pdfescape texlive-pdfescape)
+
+(define-public texlive-uniquecounter
+ (let ((template (simple-texlive-package
+ "texlive-uniquecounter"
+ (list "doc/latex/uniquecounter/"
+ "source/latex/uniquecounter/"
+ "tex/generic/uniquecounter/")
+ (base32
+ "1ll3iwk8x44l3qx1dhna399ngg66vbllivv8i3lwzriwkx22xbf3"))))
+ (package
+ (inherit template)
+ (outputs '("out" "doc"))
+ (arguments
+ (substitute-keyword-arguments (package-arguments template)
+ ((#:tex-directory _ '())
+ "generic/uniquecounter")
+ ((#:build-targets _ '())
+ #~(list "uniquecounter.dtx"))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/uniquecounter")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))))))
+ (propagated-inputs
+ (list texlive-bigintcalc texlive-infwarerr))
+ (home-page "https://www.ctan.org/pkg/uniquecounter")
+ (synopsis "Unlimited unique counter")
+ (description
+ "This package provides a kind of counter that provides unique number
values. Several counters can be created with different names. The numeric
values are not limited.")
- (license license:lppl1.3c+)))
+ (license license:lppl1.3c+))))
+
+(define-deprecated-package texlive-generic-uniquecounter texlive-uniquecounter)
(define-public texlive-latex-readarray
(package
@@ -8864,9 +9538,9 @@ may be used instead of @code{\\marginpar} at almost every place where
frames made with the @code{framed} package.")
(license license:lppl1.3c+))))
-(define-public texlive-generic-iftex
+(define-public texlive-iftex
(let ((template (simple-texlive-package
- "texlive-generic-iftex"
+ "texlive-iftex"
(list "/doc/generic/iftex/"
"/tex/generic/iftex/")
(base32
@@ -8884,9 +9558,9 @@ package also provides the @code{\\RequirePDFTeX}, @code{\\RequireXeTeX}, and
LuaTeX (respectively) is not the engine in use.")
(license license:lppl1.3+))))
-(define-deprecated-package texlive-iftex texlive-generic-iftex)
+(define-deprecated-package texlive-generic-iftex texlive-iftex)
-(define-deprecated-package texlive-generic-ifxetex texlive-generic-iftex)
+(define-deprecated-package texlive-generic-ifxetex texlive-iftex)
(define-public texlive-tabu
(let ((template
@@ -9025,17 +9699,12 @@ are part of the LaTeX required tools distribution, comprising the packages:
texlive-graphics-def
texlive-xcolor
texlive-latex-footmisc
-
- ;; TODO: Use non-deprecated name on next rebuild cycle.
- texlive-latex-listings
-
- texlive-generic-iftex
+ texlive-iftex
+ texlive-listings
texlive-pstricks
texlive-pst-text
texlive-tools
-
- ;; TODO: Use non-deprecated name on next rebuild cycle.
- texlive-latex-pgf))
+ texlive-pgf))
(home-page "http://www.ctan.org/pkg/xkeyval")
(synopsis "Extension of the keyval package")
(description
@@ -9367,6 +10036,21 @@ uppercase letters commonly used to represent various number sets.
LaTeX macro support is provided in package @code{psnfss}.")
(license license:gpl3+)))
+(define-public texlive-fp
+ (package
+ (inherit
+ (simple-texlive-package
+ "texlive-fp"
+ (list "doc/latex/fp/" "tex/latex/fp/" "tex/plain/fp/")
+ (base32 "1q555fx71cf88sn3npzb0j2i10ak920k0qc9ccdygz99vqg10dad")
+ #:trivial? #t))
+ (home-page "https://ctan.org/macros/latex/contrib/fp")
+ (synopsis "Fixed point arithmetic")
+ (description
+ "This package provides an extensive collection of arithmetic operations
+for fixed point real numbers of high precision.")
+ (license license:lppl)))
+
(define-public texlive-fpl
(package
(inherit (simple-texlive-package
@@ -9927,22 +10611,39 @@ The macros were designed for use within other macros.")
(define-public texlive-grfext
(let ((template (simple-texlive-package
"texlive-grfext"
- (list "/doc/latex/grfext/README.md"
- "/source/latex/grfext/grfext.dtx")
+ (list "doc/latex/grfext/"
+ "source/latex/grfext/"
+ "tex/latex/grfext/")
(base32
- "1cdvjp9gcnixxlbl8ibwz1yr799gwax5hm686hwmwsigdgafhzgq"))))
+ "1x35r10mkjg8dzx7aj99y4dwyf69jgs41qwapdx523lbglywmgxp"))))
(package
(inherit template)
+ (outputs '("out" "doc"))
(arguments
(substitute-keyword-arguments (package-arguments template)
- ((#:tex-directory _ '())
+ ((#:tex-directory _ #t)
"latex/grfext")
- ((#:build-targets _ '())
- ''("grfext.dtx"))
+ ((#:build-targets _ #t)
+ #~(list "grfext.dtx"))
((#:phases phases)
- `(modify-phases ,phases
- (add-after 'unpack 'chdir
- (lambda _ (chdir "source/latex/grfext")))))))
+ #~(modify-phases #$phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "source/latex/grfext")))
+ (replace 'copy-files
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((origin (assoc-ref inputs "source"))
+ (source (string-append #$output
+ "/share/texmf-dist/source"))
+ (doc (string-append #$output:doc
+ "/share/texmf-dist/doc")))
+ (copy-recursively (string-append origin "/source") source)
+ (copy-recursively (string-append origin "/doc") doc))))
+ (add-after 'copy-files 'remove-generated-file
+ (lambda* (#:key outputs #:allow-other-keys)
+ (with-directory-excursion #$output
+ (for-each delete-file
+ (find-files "." "\\.(drv|ins)$")))))))))
(home-page "https://github.com/ho-tex/grfext")
(synopsis "Manipulate the graphics package's list of extensions")
(description "This package provides macros for adding to, and reordering
@@ -9971,12 +10672,12 @@ the list of graphics file extensions recognised by package graphics.")
(native-inputs
(list texlive-ydoc))
(propagated-inputs
- (list texlive-pgf
- texlive-latex-varwidth
+ (list texlive-latex-varwidth
texlive-latex-xkeyval
texlive-collectbox
texlive-ifoddpage
- texlive-storebox))
+ texlive-storebox
+ texlive-pgf))
(home-page "https://www.ctan.org/pkg/adjustbox")
(synopsis "Graphics package-alike macros for “general” boxes")
(description "The package provides several macros to adjust boxed
@@ -10001,8 +10702,7 @@ provided box macros are @code{\\lapbox}, @code{\\marginbox},
(package
(inherit template)
(propagated-inputs
- (list texlive-etoolbox texlive-latex-environ texlive-pgf
- texlive-latex-tools))
+ (list texlive-etoolbox texlive-latex-environ texlive-pgf texlive-tools))
(home-page "https://www.ctan.org/pkg/tcolorbox")
(synopsis "Colored boxes, for LaTeX examples and theorems, etc")
(description "This package provides an environment for colored and
diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm
index 60d042fb66..bae161806b 100644
--- a/gnu/packages/web-browsers.scm
+++ b/gnu/packages/web-browsers.scm
@@ -89,6 +89,7 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
@@ -483,6 +484,7 @@ interface.")
python-jinja2
python-markupsafe
python-pygments
+ python-pynacl
python-pypeg2
python-pyyaml
;; FIXME: python-pyqtwebengine needs to come before python-pyqt so
@@ -499,6 +501,11 @@ interface.")
#:tests? #f
#:phases
(modify-phases %standard-phases
+ (add-after 'unpack 'patch-systemdir
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let ((out (assoc-ref outputs "out")))
+ (substitute* "qutebrowser/utils/standarddir.py"
+ (("/usr/share") (string-append out "/share"))))))
(add-before 'check 'set-env-offscreen
(lambda _
(setenv "QT_QPA_PLATFORM" "offscreen")))
@@ -523,6 +530,12 @@ interface.")
(("Exec=qutebrowser")
(string-append "Exec=" out "/bin/qutebrowser")))
(install-file "misc/org.qutebrowser.qutebrowser.desktop" app))))
+ (add-after 'install 'install-userscripts
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (scripts (string-append out "/share/qutebrowser/userscripts")))
+ (mkdir-p scripts)
+ (copy-recursively "misc/userscripts" scripts))))
(add-after 'wrap 'wrap-qt-process-path
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index dd0878a98c..2eecfccf5b 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -3995,10 +3995,7 @@ extension to the X11 protocol. It includes:
(inputs
(list libx11 xkbcomp-intermediate))
(native-inputs
- `(("gettext" ,gettext-minimal)
- ("perl" ,perl)
- ("pkg-config" ,pkg-config)
- ("python" ,python)))
+ (list gettext-minimal libxslt perl pkg-config python))
(home-page "https://www.x.org/wiki/")
(synopsis "Xorg XKB configuration files")
(description
diff --git a/gnu/system/pam.scm b/gnu/system/pam.scm
index 2574e019f1..b635681642 100644
--- a/gnu/system/pam.scm
+++ b/gnu/system/pam.scm
@@ -21,6 +21,7 @@
#:use-module (guix derivations)
#:use-module (guix gexp)
#:use-module (gnu services)
+ #:use-module (gnu system setuid)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-9)
@@ -375,8 +376,13 @@ strings or string-valued gexps."
(define pam-root-service-type
(service-type (name 'pam)
- (extensions (list (service-extension etc-service-type
- /etc-entry)))
+ (extensions
+ (list (service-extension
+ setuid-program-service-type
+ (lambda (_)
+ (list (file-like->setuid-program
+ (file-append linux-pam "/sbin/unix_chkpwd")))))
+ (service-extension etc-service-type /etc-entry)))
;; Arguments include <pam-service> as well as procedures.
(compose concatenate)