diff options
Diffstat (limited to 'gnu')
80 files changed, 1172 insertions, 1370 deletions
diff --git a/gnu/build/image.scm b/gnu/build/image.scm index 640a784204..463b7fccc7 100644 --- a/gnu/build/image.scm +++ b/gnu/build/image.scm @@ -61,7 +61,7 @@ (inexact->exact (ceiling (/ size 1024))))) (define (estimate-partition-size root) - "Given the ROOT directory, evalute and return its size. As this doesn't + "Given the ROOT directory, evaluate and return its size. As this doesn't take the partition metadata size into account, take a 25% margin." (* 1.25 (file-size root))) diff --git a/gnu/build/vm.scm b/gnu/build/vm.scm index 287d099f79..5a292e965b 100644 --- a/gnu/build/vm.scm +++ b/gnu/build/vm.scm @@ -164,8 +164,8 @@ the #:references-graphs parameter of 'derivation'." "-cpu" "max" "-m" (number->string memory-size) "-nic" "user,model=virtio-net-pci" - "-object" "rng-random,filename=/dev/urandom,id=guixsd-vm-rng" - "-device" "virtio-rng-pci,rng=guixsd-vm-rng" + "-object" "rng-random,filename=/dev/urandom,id=guix-vm-rng" + "-device" "virtio-rng-pci,rng=guix-vm-rng" "-virtfs" (string-append "local,id=store_dev,path=" (%store-directory) diff --git a/gnu/local.mk b/gnu/local.mk index 8f9ed312bb..e05913597f 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -510,6 +510,7 @@ GNU_SYSTEM_MODULES = \ %D%/packages/slang.scm \ %D%/packages/smalltalk.scm \ %D%/packages/sml.scm \ + %D%/packages/solidity.scm \ %D%/packages/speech.scm \ %D%/packages/sphinx.scm \ %D%/packages/spice.scm \ @@ -909,7 +910,6 @@ dist_patch_DATA = \ %D%/packages/patches/datefudge-gettimeofday.patch \ %D%/packages/patches/dbacl-include-locale.h.patch \ %D%/packages/patches/dbus-helper-search-path.patch \ - %D%/packages/patches/dbus-CVE-2020-12049.patch \ %D%/packages/patches/dbus-c++-gcc-compat.patch \ %D%/packages/patches/dbus-c++-threading-mutex.patch \ %D%/packages/patches/dbxfs-remove-sentry-sdk.patch \ @@ -922,6 +922,7 @@ dist_patch_DATA = \ %D%/packages/patches/diffutils-gets-undeclared.patch \ %D%/packages/patches/dkimproxy-add-ipv6-support.patch \ %D%/packages/patches/docbook-xsl-nonrecursive-string-subst.patch \ + %D%/packages/patches/docbook-xsl-support-old-url.patch \ %D%/packages/patches/doc++-include-directives.patch \ %D%/packages/patches/doc++-segfault-fix.patch \ %D%/packages/patches/docker-fix-tests.patch \ @@ -1167,8 +1168,6 @@ dist_patch_DATA = \ %D%/packages/patches/icecat-use-system-graphite2+harfbuzz.patch \ %D%/packages/patches/icecat-use-system-media-libs.patch \ %D%/packages/patches/icedtea-6-extend-hotspot-aarch64-support.patch \ - %D%/packages/patches/icedtea-7-hotspot-aarch64-use-c++98.patch \ - %D%/packages/patches/icu4c-CVE-2020-10531.patch \ %D%/packages/patches/id3lib-CVE-2007-4460.patch \ %D%/packages/patches/id3lib-UTF16-writing-bug.patch \ %D%/packages/patches/ilmbase-fix-tests.patch \ @@ -1203,9 +1202,9 @@ dist_patch_DATA = \ %D%/packages/patches/java-xerces-xjavac_taskdef.patch \ %D%/packages/patches/jfsutils-add-sysmacros.patch \ %D%/packages/patches/jfsutils-include-systypes.patch \ - %D%/packages/patches/jsoncpp-fix-inverted-case.patch \ %D%/packages/patches/julia-SOURCE_DATE_EPOCH-mtime.patch \ %D%/packages/patches/kdbusaddons-kinit-file-name.patch \ + %D%/packages/patches/libffi-float128-powerpc64le.patch \ %D%/packages/patches/libffi-3.3-powerpc-fixes.patch \ %D%/packages/patches/libvirt-create-machine-cgroup.patch \ %D%/packages/patches/libziparchive-add-includes.patch \ @@ -1340,7 +1339,6 @@ dist_patch_DATA = \ %D%/packages/patches/mediastreamer2-srtp2.patch \ %D%/packages/patches/mesa-skip-disk-cache-test.patch \ %D%/packages/patches/mescc-tools-boot.patch \ - %D%/packages/patches/meson-for-build-rpath.patch \ %D%/packages/patches/metabat-fix-compilation.patch \ %D%/packages/patches/mhash-keygen-test-segfault.patch \ %D%/packages/patches/mingw-w64-6.0.0-gcc.patch \ @@ -1509,10 +1507,12 @@ dist_patch_DATA = \ %D%/packages/patches/python-3-search-paths.patch \ %D%/packages/patches/python-3-fix-tests.patch \ %D%/packages/patches/python-3.8-fix-tests.patch \ + %D%/packages/patches/python-3-hurd-configure.patch \ %D%/packages/patches/python-CVE-2018-14647.patch \ %D%/packages/patches/python-aionotify-0.2.0-py3.8.patch \ %D%/packages/patches/python-argcomplete-1.11.1-fish31.patch \ %D%/packages/patches/python-axolotl-AES-fix.patch \ + %D%/packages/patches/python-babel-fix-parse-future-test.patch \ %D%/packages/patches/python-cairocffi-dlopen-path.patch \ %D%/packages/patches/python-cross-compile.patch \ %D%/packages/patches/python2-larch-coverage-4.0a6-compatibility.patch \ @@ -1732,8 +1732,7 @@ dist_patch_DATA = \ %D%/packages/patches/xsane-fix-snprintf-buffer-length.patch \ %D%/packages/patches/xsane-support-ipv6.patch \ %D%/packages/patches/xsane-tighten-default-umask.patch \ - %D%/packages/patches/yggdrasil-extra-config.patch \ - %D%/packages/patches/zziplib-CVE-2018-16548.patch + %D%/packages/patches/yggdrasil-extra-config.patch MISC_DISTRO_FILES = \ %D%/packages/ld-wrapper.in diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 20d5978e6d..6489e7462b 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -529,7 +529,8 @@ or via the @code{facter} Ruby library.") `(("ncurses" ,ncurses))) (native-inputs `(("autoconf" ,autoconf) - ("automake" ,automake))) + ("automake" ,automake) + ("python" ,python-minimal-wrapper))) ; for scripts/MakeHeader.py (home-page "https://htop.dev") (synopsis "Interactive process viewer") (description @@ -626,10 +627,17 @@ re-executing them as necessary.") "--disable-uucpd" "--disable-whois") '())) + ;; Make sure that canonical "coreutils" package is not referred. + #:make-flags + (list (string-append "CPPFLAGS=-DPATHDEF_CP=\\\"" + (assoc-ref %build-inputs "coreutils*") + "/bin/cp\\\"")) ;; On some systems, 'libls.sh' may fail with an error such as: ;; "Failed to tell switch -a apart from -A". #:parallel-tests? #f)) - (inputs `(("ncurses" ,ncurses) + (inputs `(("coreutils*" ,coreutils) + ("shadow" ,shadow) ;for login (used in telnetd and rlogind) + ("ncurses" ,ncurses) ("readline" ,readline))) ;for 'ftp' (native-inputs (if (member (%current-system) (package-supported-systems net-tools)) @@ -1472,10 +1480,7 @@ system administrator.") ;; the chroot's /etc/passwd doesn't have it. Turn off the tests. #:tests? #f)) (native-inputs - ;; XXX TODO: Remove on next rebuild cycle. - (if (hurd-target?) - '() - `(("groff" ,groff)))) + `(("groff" ,groff))) (inputs `(("coreutils" ,coreutils) ("linux-pam" ,linux-pam) diff --git a/gnu/packages/adns.scm b/gnu/packages/adns.scm index 57f34942d5..a67a00284b 100644 --- a/gnu/packages/adns.scm +++ b/gnu/packages/adns.scm @@ -65,7 +65,7 @@ scripts.") (define-public c-ares (package (name "c-ares") - (version "1.16.0") + (version "1.16.1") (source (origin (method url-fetch) (uri (string-append @@ -73,7 +73,7 @@ scripts.") ".tar.gz")) (sha256 (base32 - "129sm0wzij0mp8vdv68v18hnykcjb6ivi66wnqnnw598q7bql1fy")))) + "1kl6bzlcmxn0524h5qldlbh99wf96whhvk54w3p4igf3xk8150yh")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) diff --git a/gnu/packages/autotools.scm b/gnu/packages/autotools.scm index 775576ff5d..c9e1c9bcf1 100644 --- a/gnu/packages/autotools.scm +++ b/gnu/packages/autotools.scm @@ -169,9 +169,9 @@ files with a system-specific shebang." (inputs `(("guile" ;; XXX: Kludge to hide the circular dependency. ,(module-ref (resolve-interface '(gnu packages guile)) - 'guile-2.0)) + 'guile-3.0/fixed)) ("autoconf" ,autoconf) - ("bash" ,bash))) + ("bash" ,bash-minimal))) (arguments '(#:modules ((guix build utils)) #:builder @@ -444,11 +444,19 @@ Makefile, simplifying the entire process for the developer.") (("/bin/sh") (string-append bash "/bin/sh"))) #t))) - (add-after 'patch-source-shebangs 'restore-ltmain-shebang - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "build-aux/ltmain.in" - (("^#!.*/bin/sh$") "#!/bin/sh")) - #t))))) + ;; These files may be copied into source trees by libtoolize, + ;; therefore they must not point to store file names that would be + ;; leaked with tarballs generated by make dist. + (add-after 'install 'restore-build-aux-shebang + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (dir (string-append out "/share/libtool/build-aux"))) + (for-each (lambda (file) + (format #t "restoring shebang on `~a'~%" file) + (substitute* file + (("^#!.*/bin/sh") "#!/bin/sh"))) + (find-files dir ".*")) + #t)))))) (synopsis "Generic shared library support tools") (description diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 419ffc55e8..6ab319c5ac 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -812,8 +812,8 @@ NTFS volumes using @code{ntfs-3g}, preserving NTFS-specific attributes.") (output-dir (assoc-ref outputs "out")) - ;; Just a default... not so useful on guixsd though - ;; You probably want to a service with file(s) to point to. + ;; Just a default... not so useful on Guix Systems though. + ;; You probably want a service with file(s) to point to. (confdir "/etc/dirvish") (perl (string-append (assoc-ref %build-inputs "perl") diff --git a/gnu/packages/base.scm b/gnu/packages/base.scm index 47fca7c494..afd772488e 100644 --- a/gnu/packages/base.scm +++ b/gnu/packages/base.scm @@ -15,6 +15,7 @@ ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2020 Vitaliy Shatrov <D0dyBo0D0dyBo0@protonmail.com> +;;; Copyright © 2020 Chris Marusich <cmmarusich@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -37,6 +38,7 @@ #:use-module (gnu packages) #:use-module (gnu packages acl) #:use-module (gnu packages algebra) + #:use-module (gnu packages attr) #:use-module (gnu packages bash) #:use-module (gnu packages bison) #:use-module (gnu packages ed) @@ -93,14 +95,14 @@ command-line arguments, multiple languages, and so on.") (define-public grep (package (name "grep") - (version "3.4") + (version "3.6") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/grep/grep-" version ".tar.xz")) (sha256 (base32 - "1yy33kiwrxrwj2nxa4fg15bvmwyghqbs8qwkdvy5phm784f7brjq")) + "0gipv6bzkm1aihj0ncqpyh164xrzgcxcv9r1kwzyk2g1mzl1azk6")) (patches (search-patches "grep-timing-sensitive-test.patch")))) (build-system gnu-build-system) (native-inputs `(("perl" ,perl))) ;some of the tests require it @@ -117,8 +119,7 @@ command-line arguments, multiple languages, and so on.") (substitute* (list (string-append bin "/egrep") (string-append bin "/fgrep")) (("^exec grep") - (string-append "exec " bin "/grep"))) - #t)))))) + (string-append "exec " bin "/grep"))))))))) (synopsis "Print lines matching a pattern") (description "grep is a tool for finding text inside files. Text is found by @@ -141,7 +142,19 @@ including, for example, recursive directory searching.") ".tar.gz")) (sha256 (base32 - "0alqagh0nliymz23kfjg6g9w3cr086k0sfni56gi8fhzqwa3xksk")))) + "0alqagh0nliymz23kfjg6g9w3cr086k0sfni56gi8fhzqwa3xksk")) + ;; Remove this snippet once upstream releases a fixed version. + ;; This snippet changes Makefile.in, even though the upstream + ;; patch changes testsuite/local.mk, since we build sed from a + ;; release tarball. See: https://bugs.gnu.org/36150 + (snippet + '(begin + (substitute* "Makefile.in" + (("^ abs_srcdir='\\$\\(abs_srcdir\\)'.*" previous-line) + (string-append + previous-line + " CONFIG_HEADER='$(CONFIG_HEADER)'\t\t\\\n"))))) + (modules '((guix build utils))))) (build-system gnu-build-system) (synopsis "Stream editor") (native-inputs @@ -193,8 +206,7 @@ implementation offers several extensions over the standard utility.") (let ((bash (assoc-ref inputs "bash"))) (substitute* "src/system.c" (("/bin/sh") - (string-append bash "/bin/sh"))) - #t)))))) + (string-append bash "/bin/sh"))))))))) ;; When cross-compiling, the 'set-shell-file-name' phase needs to be able ;; to refer to the target Bash. @@ -290,8 +302,7 @@ interactive means to merge two files.") (substitute* '("tests/xargs/verbose-quote.sh" "tests/find/exec-plus-last-file.sh") (("#!/bin/sh") - (string-append "#!" (which "sh")))) - #t))))) + (string-append "#!" (which "sh"))))))))) (synopsis "Operating on files matching given criteria") (description "Findutils supplies the basic file directory searching utilities of the @@ -317,6 +328,7 @@ used to apply commands with arbitrarily long arguments.") (patches (search-patches "coreutils-ls.patch")))) (build-system gnu-build-system) (inputs `(("acl" ,acl) ; TODO: add SELinux + ("attr" ,attr) ;for xattrs in ls, mv, etc ("gmp" ,gmp) ;bignums in 'expr', yay! ;; Do not use libcap when cross-compiling since it's not quite @@ -362,15 +374,13 @@ used to apply commands with arbitrarily long arguments.") (substitute* (find-files "gnulib-tests" "\\.c$") (("/bin/sh") (which "sh"))) (substitute* (find-files "tests" "\\.sh$") - (("#!/bin/sh") (string-append "#!" (which "sh")))) - #t)) + (("#!/bin/sh") (string-append "#!" (which "sh")))))) ,@(if (hurd-target?) `((add-after 'unpack 'remove-tests (lambda _ (substitute* "Makefile.in" ;; this test hangs - (("^ *tests/misc/timeout-group.sh.*") "")) - #t))) + (("^ *tests/misc/timeout-group.sh.*") ""))))) '())))) (synopsis "Core GNU utilities (file, text, shell)") (description @@ -415,8 +425,7 @@ standard.") ;; specific issue, but "env-S.pl" is not adjusted for build ;; environments with long prefixes (/tmp/guix-build-...). (substitute* "Makefile" - (("^.*tests/misc/env-S.pl.*$") "")) - #t))))))))) + (("^.*tests/misc/env-S.pl.*$") ""))))))))))) (define-public gnu-make (package @@ -448,8 +457,7 @@ standard.") (substitute* "src/job.c" (("default_shell =.*$") (format #f "default_shell = \"~a/bin/sh\";\n" - bash))) - #t)))))) + bash))))))))) (synopsis "Remake files automatically") (description "Make is a program that is used to control the production of @@ -483,20 +491,19 @@ change. GNU make offers many powerful extensions over the standard utility.") (substitute* "job.c" (("default_shell =.*$") (format #f "default_shell = \"~a/bin/sh\";\n" - bash))) - #t)))))))) + bash))))))))))) (define-public binutils (package (name "binutils") - (version "2.34") + (version "2.35.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/binutils/binutils-" version ".tar.bz2")) (sha256 (base32 - "1rin1f5c7wm4n3piky6xilcrpf2s0n3dd5vqq8irrxkcic3i1w49")) + "0hhrigj2ai1hcdm6rsvdrqmvn8xydhhnw17i2gsdkz261wfpl3ij")) (patches (search-patches "binutils-loongson-workaround.patch")))) (build-system gnu-build-system) @@ -521,17 +528,7 @@ change. GNU make offers many powerful extensions over the standard utility.") ;; Make sure 'ar' and 'ranlib' produce archives in a ;; deterministic fashion. - "--enable-deterministic-archives") - - ;; XXX: binutils 2.34 was mistakenly released without generated manuals: - ;; <https://sourceware.org/bugzilla/show_bug.cgi?id=25491>. To avoid a - ;; circular dependency on texinfo, prevent the build system from creating - ;; the manuals by calling "true" instead of "makeinfo"... - #:make-flags '("MAKEINFO=true"))) - - ;; ...and "hide" this package so that users who install binutils get the - ;; version with documentation defined below. - (properties '((hidden? . #t))) + "--enable-deterministic-archives"))) (synopsis "Binary utilities: bfd gas gprof ld") (description @@ -544,18 +541,6 @@ included.") (license gpl3+) (home-page "https://www.gnu.org/software/binutils/"))) -;; Work around a problem with binutils 2.34 whereby manuals are missing from -;; the release tarball. Remove this and the related code above when updating. -(define-public binutils+documentation - (package/inherit - binutils - (native-inputs - `(("texinfo" ,texinfo))) - (arguments - (substitute-keyword-arguments (package-arguments binutils) - ((#:make-flags _ ''()) ''()))) - (properties '()))) - ;; FIXME: ath9k-firmware-htc-binutils.patch do not apply on 2.34 because of a ;; big refactoring of xtensa-modules.c (commit 567607c11fbf7105 upstream). ;; Keep this version around until the patch is updated. @@ -576,7 +561,7 @@ included.") (properties '()))) (define-public binutils-gold - (package/inherit binutils+documentation + (package/inherit binutils (name "binutils-gold") (arguments `(#:phases @@ -584,8 +569,7 @@ included.") (add-after 'patch-source-shebangs 'patch-more-shebangs (lambda _ (substitute* "gold/Makefile.in" - (("/bin/sh") (which "sh"))) - #t))) + (("/bin/sh") (which "sh")))))) ,@(substitute-keyword-arguments (package-arguments binutils) ; Upstream is aware of unrelocatable test failures on arm*. ((#:tests? _ #f) @@ -684,13 +668,13 @@ the store.") ;; version 2.28, GNU/Hurd used a different glibc branch. (package (name "glibc") - (version "2.31") + (version "2.32") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz")) (sha256 (base32 - "05zxkyz9bv3j9h0xyid1rhvh3klhsmrpkf3bcs6frvlgyr2gwilj")) + "0di848ibffrnwq7g2dvgqrnn4xqhj3h96csn69q4da51ymafl9qn")) (snippet ;; Disable 'ldconfig' and /etc/ld.so.cache. The latter is ;; required on LFS distros to avoid loading the distro's libc.so @@ -709,7 +693,9 @@ the store.") "glibc-supported-locales.patch" "glibc-hurd-clock_t_centiseconds.patch" "glibc-hurd-clock_gettime_monotonic.patch" - "glibc-hurd-signal-sa-siginfo.patch")))) + "glibc-hurd-signal-sa-siginfo.patch" + "glibc-hurd-mach-print.patch" + "glibc-hurd-gettyent.patch")))) (build-system gnu-build-system) ;; Glibc's <limits.h> refers to <linux/limit.h>, for instance, so glibc @@ -782,6 +768,11 @@ the store.") '("--disable-werror") '())) + ;; Arrange so that /etc/rpc & co. go to $out/etc. + #:make-flags (list (string-append "sysconfdir=" + (assoc-ref %outputs "out") + "/etc")) + #:tests? #f ; XXX #:phases (modify-phases %standard-phases (add-before @@ -844,9 +835,7 @@ the store.") ;; "bilingual" eval/exec magic at the top of the file. "") (("exec @PERL@") - "exec perl")) - - #t))) + "exec perl"))))) (add-after 'install 'move-static-libs (lambda* (#:key outputs #:allow-other-keys) @@ -884,8 +873,7 @@ the store.") ((out) static))) (filter linker-script? (map (cut string-append slib "/" <>) - files))) - #t))) + files)))))) ,@(if (hurd-target?) '((add-after 'install 'augment-libc.so @@ -894,8 +882,7 @@ the store.") (substitute* (string-append out "/lib/libc.so") (("/[^ ]+/lib/libc.so.0.3") (string-append out "/lib/libc.so.0.3" - " libmachuser.so libhurduser.so")))) - #t))) + " libmachuser.so libhurduser.so"))))))) '())))) (inputs `(("static-bash" ,static-bash))) @@ -936,6 +923,17 @@ with the Linux kernel.") ;; Below are old libc versions, which we use mostly to build locale data in ;; the old format (which the new libc cannot cope with.) +(define-public glibc-2.31 + (package + (inherit glibc) + (version "2.31") + (source (origin + (inherit (package-source glibc)) + (uri (string-append "mirror://gnu/glibc/glibc-" version ".tar.xz")) + (sha256 + (base32 + "05zxkyz9bv3j9h0xyid1rhvh3klhsmrpkf3bcs6frvlgyr2gwilj")))))) + (define-public glibc-2.30 (package (inherit glibc) @@ -1093,8 +1091,7 @@ to the @code{share/locale} sub-directory of this package.") (string-append (dirname directory) "/" name "." normalized))))) - locales) - #t))) + locales)))) (delete 'install) (delete 'move-static-libs))) ((#:configure-flags flags) @@ -1222,8 +1219,7 @@ command.") (let ((out (assoc-ref outputs "out"))) (close-port (open-output-file - (string-append out "/include/gnu/stubs.h")))) - #t)) + (string-append out "/include/gnu/stubs.h")))))) (delete 'build))))))) ; nothing to build (define-public tzdata @@ -1287,8 +1283,7 @@ command.") (copy-recursively (string-append out "/share/zoneinfo-leaps") (string-append out "/share/zoneinfo/right")) (delete-file-recursively - (string-append out "/share/zoneinfo-leaps")) - #t))) + (string-append out "/share/zoneinfo-leaps"))))) (delete 'configure)))) (inputs `(("tzcode" ,(origin (method url-fetch) @@ -1350,11 +1345,9 @@ and daylight-saving rules.") (snippet ;; Work around "declared gets" error on glibc systems (fixed by ;; Gnulib commit 66712c23388e93e5c518ebc8515140fa0c807348.) - '(begin - (substitute* "srclib/stdio.in.h" - (("^#undef gets") "") - (("^_GL_WARN_ON_USE \\(gets.*") "")) - #t)))) + '(substitute* "srclib/stdio.in.h" + (("^#undef gets") "") + (("^_GL_WARN_ON_USE \\(gets.*") ""))))) (build-system gnu-build-system) (synopsis "Character set conversion library") (description diff --git a/gnu/packages/bison.scm b/gnu/packages/bison.scm index 4c6da7d9b7..da10888c33 100644 --- a/gnu/packages/bison.scm +++ b/gnu/packages/bison.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2015, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> -;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com> ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> ;;; @@ -33,7 +33,7 @@ (define-public bison (package (name "bison") - (version "3.5.3") + (version "3.7.4") (source (origin (method url-fetch) @@ -41,7 +41,7 @@ version ".tar.xz")) (sha256 (base32 - "1i57hbczvr8674z73775jxdd3y59qggs5lmfd60gmwm5i1gmpy1b")))) + "0460cfgw83j31vjrm1yr0xwmrhn0i39f8ikgy87587m190zq3dd3")))) (build-system gnu-build-system) (arguments '(;; Building in parallel on many-core systems may cause an error such as @@ -68,17 +68,6 @@ simple tools through complex programming languages. Bison also provides an implementation of @command{yacc}, as specified by POSIX.") (license gpl3+))) -(define-public bison-3.6 - (package - (inherit bison) - (version "3.6.3") - (source - (origin - (method url-fetch) - (uri (string-append "mirror://gnu/bison/bison-" version ".tar.xz")) - (sha256 - (base32 "0gdpnjh6ra9xa9vj6hzjdf0c04x4pjyy8vssm3qdb7fya4v7knq6")))))) - (define-public bison-3.0 (package (inherit bison) diff --git a/gnu/packages/boost.scm b/gnu/packages/boost.scm index b1ab8a4ec9..fcadc03dd0 100644 --- a/gnu/packages/boost.scm +++ b/gnu/packages/boost.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2019, 2020 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de> +;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -61,21 +62,15 @@ (define-public boost (package (name "boost") - (version "1.72.0") + (version "1.74.0") (source (origin (method url-fetch) (uri (string-append "https://dl.bintray.com/boostorg/release/" version "/source/boost_" (version-with-underscores version) ".tar.bz2")) - (patches - (list (boost-patch - ;; 1.72.0 was released with a faulty coroutine submodule: - ;; <https://github.com/boostorg/coroutine/issues/46>. - "0001-revert-cease-dependence-on-range.patch" version - "1zcqxzh56m1s635wqwk15j3zcs2gmjvjy2f0hid7i78s4pgm0yfs"))) (sha256 (base32 - "08h7cv61fd0lzb4z50xanfqn0pdgvizjrpd1kcdgj725pisb5jar")))) + "1c8nw4jz17zy2y27h7p554a5jza1ymz8phkz71p9181ifx8c3gw3")))) (build-system gnu-build-system) (inputs `(("icu4c" ,icu4c) ("zlib" ,zlib))) @@ -83,7 +78,7 @@ `(("perl" ,perl) ,@(if (%current-target-system) '() - `(("python" ,python-wrapper))) + `(("python" ,python-minimal-wrapper))) ("tcsh" ,tcsh))) (arguments `(#:imported-modules ((guix build python-build-system) @@ -124,8 +119,7 @@ (out (assoc-ref outputs "out"))) (substitute* '("libs/config/configure" "libs/spirit/classic/phoenix/test/runtest.sh" - "tools/build/src/engine/execunix.cpp" - "tools/build/src/engine/Jambase") + "tools/build/src/engine/execunix.cpp") (("/bin/sh") (which "sh"))) (setenv "SHELL" (which "sh")) @@ -140,13 +134,9 @@ '()) ;; Change an #ifdef __MACH__ that really targets macOS. - ;; TODO: Inline this on the next rebuild cycle. - ,@(if (hurd-target?) - '((substitute* "boost/test/utils/timer.hpp" - (("defined\\(__MACH__\\)") - "(defined __MACH__ && !defined __GNU__)")) - #t) - '()) + (substitute* "boost/test/utils/timer.hpp" + (("defined\\(__MACH__\\)") + "(defined __MACH__ && !defined __GNU__)")) (invoke "./bootstrap.sh" (string-append "--prefix=" out) diff --git a/gnu/packages/bootstrap.scm b/gnu/packages/bootstrap.scm index c39e60ec8b..fee2ae1199 100644 --- a/gnu/packages/bootstrap.scm +++ b/gnu/packages/bootstrap.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2018, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2019 Carl Dong <contact@carldong.me> ;;; Copyright © 2019 Léo Le Bouter <lle-bout@zaclys.net> +;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -740,9 +741,12 @@ exec ~a/bin/.gcc-wrapped -B~a/lib \ "1m5miqkyng45l745n0sfafdpjkqv9225xf44jqkygwsipj2cv9ks"))))))))) (native-search-paths (list (search-path-specification - (variable "CPATH") + (variable "C_INCLUDE_PATH") (files '("include"))) (search-path-specification + (variable "CPLUS_INCLUDE_PATH") + (files '("include/c++" "include"))) + (search-path-specification (variable "LIBRARY_PATH") (files '("lib" "lib64"))))) (synopsis "Bootstrap binaries of the GNU Compiler Collection") diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm index 3f140efdb3..202617e5ca 100644 --- a/gnu/packages/build-tools.scm +++ b/gnu/packages/build-tools.scm @@ -180,7 +180,7 @@ files and generates build instructions for the Ninja build system.") (define-public meson (package (name "meson") - (version "0.53.2") + (version "0.55.1") (source (origin (method url-fetch) (uri (string-append "https://github.com/mesonbuild/meson/" @@ -188,7 +188,7 @@ files and generates build instructions for the Ninja build system.") version ".tar.gz")) (sha256 (base32 - "07y2hh9dfn1m9g4bsy49nbn3vdmd0b2iwr8bxg19fhqq6c7q73ry")))) + "1070kjiirxxdfppmrhi3wsc6rykay1zlciqrzayjhjg0hkw42mrv")))) (build-system python-build-system) (arguments `(;; FIXME: Tests require many additional inputs, a fix for the RUNPATH @@ -232,8 +232,7 @@ resembles Python.") (inherit meson) (name "meson-for-build") (source (origin - (inherit (package-source meson)) - (patches (search-patches "meson-for-build-rpath.patch")))) + (inherit (package-source meson)))) ;; People should probably install "meson", not "meson-for-build". (properties `((hidden? . #t))))) diff --git a/gnu/packages/cmake.scm b/gnu/packages/cmake.scm index 2f8d50451e..7316a3bf63 100644 --- a/gnu/packages/cmake.scm +++ b/gnu/packages/cmake.scm @@ -72,7 +72,6 @@ "Source/cmGlobalXCodeGenerator.cxx" "Source/cmLocalUnixMakefileGenerator3.cxx" "Source/cmExecProgramCommand.cxx" - "Utilities/Release/release_cmake.cmake" "Tests/CMakeLists.txt" "Tests/RunCMake/File_Generate/RunCMakeTest.cmake") (("/bin/sh") (which "sh"))) @@ -85,7 +84,11 @@ ;; This test requires network access. "CTestTestUpload" ;; This test requires 'ldconfig' which is not available in Guix. - "RunCMake.install")) + "RunCMake.install" + ;; This test fails for unknown reason. + "RunCMake.file-GET_RUNTIME_DEPENDENCIES" + ;; This test requires the bundled libuv. + "BootstrapTest")) (define %preserved-third-party-files '(;; 'Source/cm_getdate.c' includes archive_getdate.c wholesale, so it must @@ -211,7 +214,6 @@ ,@(if (hurd-target?) '() `(("libuv" ,libuv))) ;not supported on the Hurd - ("ncurses" ,ncurses) ;required for ccmake ("rhash" ,rhash) ("zlib" ,zlib))) (native-search-paths @@ -274,6 +276,15 @@ and workspaces that can be used in the compiler environment of your choice.") #:phases (modify-phases %standard-phases ,@%common-build-phases + (add-after 'install 'delete-help-documentation + (lambda* (#:key outputs #:allow-other-keys) + (delete-file-recursively + (string-append (assoc-ref outputs "out") + "/share/cmake-" + ,(version-major+minor + (package-version cmake-bootstrap)) + "/Help")) + #t)) (replace 'check (lambda* (#:key tests? parallel-tests? #:allow-other-keys) (let ((skipped-tests (list ,@%common-disabled-tests @@ -351,42 +362,7 @@ and workspaces that can be used in the compiler environment of your choice.") ,flags)) ((#:phases phases) `(modify-phases ,phases - ;; TODO: Remove this override in the next rebuild cycle and adjust - ;; the %common-build-phases variable instead: the - ;; Utilities/Release/release_cmake.cmake file no longer exists in - ;; version 3.19.0. - (replace 'patch-bin-sh - (lambda _ - ;; Replace "/bin/sh" by the right path in... a lot of - ;; files. - (substitute* - '("Modules/CompilerId/Xcode-3.pbxproj.in" - "Modules/Internal/CPack/CPack.RuntimeScript.in" - "Source/cmGlobalXCodeGenerator.cxx" - "Source/cmLocalUnixMakefileGenerator3.cxx" - "Source/cmExecProgramCommand.cxx" - "Tests/CMakeLists.txt" - "Tests/RunCMake/File_Generate/RunCMakeTest.cmake") - (("/bin/sh") (which "sh"))) - #t)) - ;; TODO: Remove this override in the next rebuild cycle and adjust - ;; the %common-disabled-tests variable instead. - (replace 'check - (lambda* (#:key tests? parallel-tests? #:allow-other-keys) - (let ((skipped-tests (list ,@%common-disabled-tests - ;; This test fails for unknown reason. - "RunCMake.file-GET_RUNTIME_DEPENDENCIES" - ;; This test requires the bundled libuv. - "BootstrapTest"))) - (if tests? - (begin - (invoke "ctest" "-j" (if parallel-tests? - (number->string (parallel-job-count)) - "1") - "--exclude-regex" - (string-append "^(" (string-join skipped-tests "|") ")$"))) - (format #t "test suite not run~%")) - #t))) + (delete 'delete-help-documentation) (add-after 'install 'move-html-doc (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) @@ -399,6 +375,9 @@ and workspaces that can be used in the compiler environment of your choice.") (string-append doc html)) (delete-file-recursively (string-append out html)) #t))))))) + (inputs + `(("ncurses" ,ncurses) ;required for ccmake + ,@(package-inputs cmake-minimal))) ;; Extra inputs required to build the documentation. (native-inputs `(,@(package-native-inputs cmake-minimal) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 432910d7a3..632ee46cea 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -115,8 +115,7 @@ (guile-dir (assoc-ref inputs "guile")) (guile (string-append guile-dir "/bin/guile"))) (invoke guile "--no-auto-compile" source) - (chdir "bootar") - #t))) + (chdir "bootar")))) (replace 'configure (bootstrap-configure ,version "." "scripts")) (replace 'build (bootstrap-build ".")) (replace 'install (bootstrap-install "." "scripts")))))) @@ -162,8 +161,7 @@ pure Scheme to Tar and decompression in one easy step.") (symlink (string-append out "/bin/gash") (string-append out "/bin/sh")) (symlink (string-append out "/bin/gash") - (string-append out "/bin/bash")) - #t))))))) + (string-append out "/bin/bash"))))))))) (inputs `(("guile" ,%bootstrap-guile))) (native-inputs `(("bootar" ,bootar))))) @@ -189,8 +187,7 @@ pure Scheme to Tar and decompression in one easy step.") (lambda* (#:key inputs #:allow-other-keys) (let ((gash (assoc-ref inputs "gash"))) (add-to-load-path (string-append gash "/share/guile/site/" - (effective-version)))) - #t)) + (effective-version)))))) (add-before 'configure 'pre-configure (lambda _ (format #t "Creating gash/commands/testb.scm~%") @@ -216,8 +213,7 @@ pure Scheme to Tar and decompression in one easy step.") (copy-file "scripts/template.in" "scripts/[.in") (substitute* "scripts/[.in" (("@UTILITY@") "testb")) - (delete-file "scripts/template.in") - #t)) + (delete-file "scripts/template.in"))) (replace 'configure (bootstrap-configure ,(package-version gash-utils) "gash" "scripts")) @@ -246,8 +242,7 @@ 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")) - #t))))))) + (string-append godir "/gash/compat"))))))))) (inputs `(("gash" ,gash-boot) ("guile" ,%bootstrap-guile))) (native-inputs `(("bootar" ,bootar))))) @@ -437,8 +432,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (string-suffix? ".s" name)))))) (for-each (lambda (x) (install-file x cache)) (append (objects-in-dir ".") - (objects-in-dir "mescc-lib")))) - #t))))) + (objects-in-dir "mescc-lib"))))))))) (native-search-paths (list (search-path-specification (variable "C_INCLUDE_PATH") @@ -572,8 +566,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (add-after 'unpack 'scripted-patch (lambda _ (substitute* "util.c" - (("^char [*]strlwr" all) (string-append all "_tcc_cannot_handle_dupe"))) - #t)) + (("^char [*]strlwr" all) (string-append all "_tcc_cannot_handle_dupe"))))) (replace 'build (lambda _ (let ((files '("bits" "crypt" "deflate" "getopt" "gzip" @@ -635,13 +628,11 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (lambda _ (substitute* "build.sh.in" (("@LIBOBJS@") "getloadavg.o") - (("@REMOTE@") "stub")) - #t)) + (("@REMOTE@") "stub")))) (add-after 'configure 'configure-fixup (lambda _ (substitute* "make.h" - (("^extern long int lseek.*" all) (string-append "// " all))) - #t)) + (("^extern long int lseek.*" all) (string-append "// " all))))) (replace 'build (lambda _ (invoke "sh" "./build.sh"))) @@ -693,16 +684,14 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (("uTimBuf[.]" all) (string-append "// " all)) (("retVal = utime [(] dstName, &uTimBuf [)];" all) - (string-append "retVal = 0; // " all))) - #t)) + (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 -"))) - #t)) +"))))) (replace 'check (lambda _ (invoke "./bzip2" "--help"))) @@ -758,8 +747,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (setenv "CC" "tcc") (setenv "LD" "tcc") (setenv "AR" "tcc -ar") - (setenv "CFLAGS" "-D _POSIX_VERSION=1") - #t))) + (setenv "CFLAGS" "-D _POSIX_VERSION=1")))) (add-after 'unpack 'scripted-patch (lambda _ (substitute* "Makefile.in" @@ -772,8 +760,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (substitute* "lib/sh/snprintf.c" (("^#if (defined [(]HAVE_LOCALE_H[)])" all define) (string-append "#if 0 //" define))) (substitute* "configure" - ((" egrep") " grep")) - #t)) + ((" egrep") " grep")))) (replace 'configure (lambda* (#:key configure-flags #:allow-other-keys) (let ((configure-flags (filter (lambda (x) @@ -788,20 +775,16 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (substitute* "config.h" (("#define GETCWD_BROKEN 1") "#undef GETCWD_BROKEN")) (let ((config.h (open-file "config.h" "a"))) - (display (string-append - ;; XXX TODO: remove nested ,(string-append ...) and - ;; store file name on next rebuild cycle - ,(string-append " + (display " // tcc: error: undefined symbol 'enable_hostname_completion' #define enable_hostname_completion(on_or_off) 0 -// /gnu/store/" "cq0cmv35s9dhilx14zaghlc08gpc0hwr-tcc-boot0-0.9.26-6.c004e9a/lib/libc.a: error: 'sigprocmask' defined twice +// /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)) - #t)) + (close config.h)))) (replace 'check (lambda _ (invoke "./bash" "--version"))) @@ -811,8 +794,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (bin (string-append out "/bin"))) (mkdir-p bin) (copy-file "bash" (string-append bin "/bash")) - (copy-file "bash" (string-append bin "/sh")) - #t)))))))) + (copy-file "bash" (string-append bin "/sh")))))))))) (define tcc-boot ;; The final tcc. @@ -845,8 +827,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (copy-file source "tarball.tar.bz2") (invoke "bzip2" "-d" "tarball.tar.bz2") (invoke "tar" "xvf" "tarball.tar") - (chdir (string-append "tcc-" ,version)) - #t)) + (chdir (string-append "tcc-" ,version)))) ;; no patch yet ;; (add-after 'unpack 'apply-boot-patch ;; (lambda* (#:key inputs #:allow-other-keys) @@ -857,8 +838,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (substitute* "libtcc.c" (("s->alacarte_link = 1;" all) (string-append all " - s->static_link = 1;"))) - #t)) + s->static_link = 1;"))))) (replace 'configure (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref %outputs "out")) @@ -918,8 +898,8 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (invoke "tcc" "-ar" "rc" "libtcc1.a" "libtcc1.o") (copy-file "libtcc1.a" (string-append out "/lib/libtcc1.a")) (delete-file (string-append out "/lib/tcc/libtcc1.a")) - (copy-file "libtcc1.a" (string-append out "/lib/tcc/libtcc1.a")) - #t))))))))) + (copy-file "libtcc1.a" + (string-append out "/lib/tcc/libtcc1.a"))))))))))) (define diffutils-mesboot ;; The initial diffutils. @@ -967,8 +947,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (bin (string-append out "/bin"))) (mkdir-p bin) (install-file "cmp" bin) - (install-file "diff" bin) - #t)))))))) + (install-file "diff" bin))))))))) (define patch-mesboot ;; The initial patch. @@ -1001,8 +980,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" ;; avoid another segfault (substitute* "pch.c" (("while [(]p_end >= 0[)]" all) - "p_end = -1;\nwhile (0)")) - #t)) + "p_end = -1;\nwhile (0)")))) ;; FIXME: no compressing gzip yet (delete 'compress-documentation)))))) @@ -1038,8 +1016,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (bash (assoc-ref %build-inputs "bash")) (shell (string-append bash "/bin/bash"))) (substitute* "configure" - (("/bin/sh") shell)) - #t))) + (("/bin/sh") shell))))) (replace 'check (lambda _ (invoke "./sed" "--version"))) @@ -1047,8 +1024,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (lambda _ (let* ((out (assoc-ref %outputs "out")) (bin (string-append out "/bin"))) - (install-file "sed" bin) - #t)))))))) + (install-file "sed" bin))))))))) (define (%boot-tcc-inputs) `(("bash" ,bash-mesboot0) @@ -1104,14 +1080,12 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (setenv "SHELL" shell) (setenv "AR" "tcc -ar") (setenv "RANLIB" "true") - (setenv "CC" "tcc -D __GLIBC_MINOR__=6") - #t))) + (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")) - #t)) + "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) @@ -1183,8 +1157,7 @@ $MES -e '(mescc)' module/mescc.scm -- \"$@\" (add-after 'unpack 'apply-boot-patch (lambda* (#:key inputs #:allow-other-keys) (let ((patch-file (assoc-ref inputs "boot-patch"))) - (system* "patch" "--force" "-p1" "-i" patch-file) - #t))) + (system* "patch" "--force" "-p1" "-i" patch-file)))) (add-before 'configure 'setenv (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1232,8 +1205,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (invoke "ar" "x" (string-append tcc "/lib/libtcc1.a")) (invoke "ar" "x" (string-append tcc "/lib/libc.a")) (invoke "ar" "r" (string-append gcc-dir "/libc.a") - "libc.o" "libtcc1.o") - #t)))))) + "libc.o" "libtcc1.o"))))))) (native-search-paths (list (search-path-specification (variable "C_INCLUDE_PATH") @@ -1276,8 +1248,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (headers (assoc-ref %build-inputs "kernel-headers"))) (mkdir-p include) (copy-recursively "include" out) - (copy-recursively headers out) - #t)))))))) + (copy-recursively headers out))))))))) (define gawk-mesboot0 ;; The initial Gawk. @@ -1328,8 +1299,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (setenv "CPP" "tcc -E") (setenv "LD" "tcc") (setenv "ac_cv_func_getpgrp_void" "yes") - (setenv "ac_cv_func_tzset" "yes")) - #t)) + (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")) @@ -1344,8 +1314,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))) (install-file "gawk" bin) - (symlink "gawk" (string-append bin "/awk")) - #t)))))))) + (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 @@ -1422,8 +1391,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (setenv "CONFIG_SHELL" shell) (setenv "SHELL" shell) (setenv "CPP" (string-append gcc "/bin/gcc -E " cppflags)) - (setenv "CC" (string-append gcc "/bin/gcc " cppflags cflags)) - #t))) + (setenv "CC" (string-append gcc "/bin/gcc " cppflags cflags))))) (replace 'configure ; needs classic invocation of configure (lambda* (#:key configure-flags #:allow-other-keys) (format (current-error-port) @@ -1440,8 +1408,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (("INSTALL = scripts/") "INSTALL = $(..)./scripts/") (("BASH = ") (string-append "SHELL = " shell " - BASH = "))) - #t)))))))) + BASH = "))))))))))) (define gcc-mesboot0 (package @@ -1464,8 +1431,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (lambda _ (display " ac_cv_c_float_format='IEEE (little-endian)' -"))) - #t)) +"))))) (replace 'install2 (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1542,14 +1508,12 @@ ac_cv_c_float_format='IEEE (little-endian)' (substitute* "configure" ((" /bin/sh") shell))) (substitute* "Makefile.in" - (("^SUBDIRS = doc") "SUBDIRS =")) - #t)) + (("^SUBDIRS = doc") "SUBDIRS =")))) (replace 'install (lambda _ (let* ((out (assoc-ref %outputs "out")) (bin (string-append out "/bin"))) - (install-file "src/tar" bin) - #t)))))))) + (install-file "src/tar" bin))))))))) (define grep-mesboot ;; The initial grep. @@ -1586,8 +1550,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (bin (string-append out "/bin"))) (install-file "grep" bin) (symlink "grep" (string-append bin "/egrep")) - (symlink "grep" (string-append bin "/fgrep")) - #t)))))))) + (symlink "grep" (string-append bin "/fgrep")))))))))) (define binutils-mesboot1 (package @@ -1612,8 +1575,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (let* ((out (assoc-ref %outputs "out")) (bash (assoc-ref %build-inputs "bash")) (shell (string-append bash "/bin/bash"))) - (setenv "CONFIG_SHELL" shell) - #t))))))))) + (setenv "CONFIG_SHELL" shell)))))))))) (define coreutils-mesboot0 (package @@ -1676,8 +1638,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))) - (install-file "make" bin) - #t)))))))) + (install-file "make" bin))))))))) (define gawk-mesboot (package @@ -1712,8 +1673,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))) (install-file "gawk" bin) - (symlink "gawk" (string-append bin "/awk")) - #t)))))))) + (symlink "gawk" (string-append bin "/awk")))))))))) (define sed-mesboot (package @@ -1744,8 +1704,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (shell (string-append bash "/bin/bash"))) (substitute* "testsuite/Makefile.tests" (("^SHELL = /bin/sh") - (string-append "SHELL = " shell))) - #t)))))))) + (string-append "SHELL = " shell))))))))))) (define bash-mesboot (package @@ -1788,14 +1747,12 @@ ac_cv_c_float_format='IEEE (little-endian)' (add-after 'unpack 'scripted-patch (lambda _ (substitute* "shell.c" - ((";;") ";")) - #t)) + ((";;") ";")))) (add-before 'configure 'setenv (lambda _ (setenv "AWK" "gawk") (setenv "LIBS" "-lc -lnss_files -lnss_dns -lresolv") - (setenv "gl_cv_func_rename_dest_works" "yes") - #t)) + (setenv "gl_cv_func_rename_dest_works" "yes"))) (add-after 'configure 'configure-fixups (lambda _ (let ((config.h (open-file "config.h" "a"))) @@ -1803,8 +1760,7 @@ ac_cv_c_float_format='IEEE (little-endian)' #define enable_hostname_completion(on_or_off) 0 ") config.h) - (close config.h)) - #t)) + (close config.h)))) (replace 'check (lambda _ (invoke "./bash" "--version"))) @@ -1814,8 +1770,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (bin (string-append out "/bin"))) (mkdir-p bin) (copy-file "bash" (string-append bin "/bash")) - (copy-file "bash" (string-append bin "/sh")) - #t)))))))) + (copy-file "bash" (string-append bin "/sh")))))))))) (define (%boot-mesboot1-inputs) `(("bash" ,bash-mesboot) @@ -1941,8 +1896,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (lambda* (#:key inputs #:allow-other-keys) (let ((patch-file (assoc-ref inputs "boot-patch"))) (format (current-error-port) "patch file=~s\n" patch-file) - (system* "patch" "--force" "-p1" "-i" patch-file)) - #t)) + (system* "patch" "--force" "-p1" "-i" patch-file)))) ;; c&p from commencement.scm:gcc-boot0 (add-after 'unpack 'unpack-gmp&co (lambda* (#:key inputs #:allow-other-keys) @@ -1966,8 +1920,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (package-full-name lib "-") char-set:letter) ,(package-name lib))) - (list gmp-boot mpfr-boot mpc-boot)) - #t))) + (list gmp-boot mpfr-boot mpc-boot))))) (add-before 'configure 'setenv (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1985,8 +1938,8 @@ ac_cv_c_float_format='IEEE (little-endian)' (setenv "LIBRARY_PATH" (string-append glibc "/lib" ":" gcc "/lib")) (format (current-error-port) "C_INCLUDE_PATH=~a\n" (getenv "C_INCLUDE_PATH")) - (format (current-error-port) "LIBRARY_PATH=~a\n" (getenv "LIBRARY_PATH")) - #t)))))))) + (format (current-error-port) "LIBRARY_PATH=~a\n" + (getenv "LIBRARY_PATH")))))))))) (define gcc-mesboot1 (package @@ -2016,8 +1969,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (add-before 'unpack 'unpack-g++ (lambda _ (let ((source-g++ (assoc-ref %build-inputs "gcc-g++"))) - (invoke "tar" "xvf" source-g++)) - #t)) + (invoke "tar" "xvf" source-g++)))) (replace 'setenv (lambda _ (setenv "CONFIG_SHELL" (which "sh")) @@ -2029,8 +1981,7 @@ ac_cv_c_float_format='IEEE (little-endian)' ;; Set the C++ search path so that C headers can be found as ;; libstdc++ is being compiled. - (setenv "CPLUS_INCLUDE_PATH" (getenv "C_INCLUDE_PATH")) - #t)))))))) + (setenv "CPLUS_INCLUDE_PATH" (getenv "C_INCLUDE_PATH")))))))))) (define (%boot-mesboot2-inputs) `(("gcc" ,gcc-mesboot1) @@ -2171,8 +2122,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (substitute* "gprof/Makefile.in" (("^SUBDIRS = po") "SUBDIRS =")) (substitute* "ld/Makefile.in" - (("^SUBDIRS = po") "SUBDIRS =")) - #t))))))) + (("^SUBDIRS = po") "SUBDIRS ="))))))))) (define (%boot-mesboot3-inputs) `(("binutils" ,binutils-mesboot) @@ -2224,8 +2174,7 @@ ac_cv_c_float_format='IEEE (little-endian)' (replace 'unpack (lambda* (#:key source #:allow-other-keys) (invoke "tar" "xvf" source) - (chdir (string-append "glibc-" ,version)) - #t)) + (chdir (string-append "glibc-" ,version)))) (replace 'setenv (lambda* (#:key inputs #:allow-other-keys) (let* ((headers (assoc-ref inputs "headers")) @@ -2247,15 +2196,13 @@ ac_cv_c_float_format='IEEE (little-endian)' ;; avoid -fstack-protector (setenv "libc_cv_ssp" "false") (substitute* "configure" - (("/bin/pwd") "pwd")) - #t))) + (("/bin/pwd") "pwd"))))) (replace 'install (lambda* (#:key outputs make-flags #:allow-other-keys) (let ((kernel-headers (assoc-ref %build-inputs "kernel-headers")) (out (assoc-ref outputs "out"))) - (and (apply invoke "make" make-flags) - (copy-recursively kernel-headers out) - #t)))) + (apply invoke "make" make-flags) + (copy-recursively kernel-headers out)))) (replace 'configure (lambda* (#:key configure-flags #:allow-other-keys) (format (current-error-port) "running ../configure ~a\n" (string-join configure-flags)) @@ -2284,8 +2231,7 @@ SHELL := " shell " (invoke "make" (string-append (getcwd) "/sysd-sorted" )) (substitute* "sysd-sorted" ((" sunrpc") " ") - ((" nis") " ")) - #t))))))))) + ((" nis") " "))))))))))) (define glibc-mesboot (package @@ -2306,9 +2252,8 @@ SHELL := " shell " (let* ((kernel-headers (assoc-ref %build-inputs "kernel-headers")) (out (assoc-ref outputs "out")) (install-flags (cons "install" make-flags))) - (and (apply invoke "make" install-flags) - (copy-recursively kernel-headers out) - #t))))))))))) + (apply invoke "make" install-flags) + (copy-recursively kernel-headers out))))))))))) (define (%boot-mesboot4-inputs) `(("libc" ,glibc-mesboot) @@ -2363,8 +2308,7 @@ exec " gcc "/bin/" program "g++" "i686-unknown-linux-gnu-cpp" "i686-unknown-linux-gnu-gcc" - "i686-unknown-linux-gnu-g++")) - #t))) + "i686-unknown-linux-gnu-g++"))))) (replace 'check (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -2379,7 +2323,6 @@ exec " gcc "/bin/" program (version (package-version gcc-4.9)) (source (bootstrap-origin (package-source gcc-4.9))) (native-inputs `(("gcc-wrapper" ,gcc-mesboot1-wrapper) - ("gcc" ,gcc-mesboot1) ("headers" ,glibc-headers-mesboot) ,@(%boot-mesboot4-inputs))) (arguments @@ -2452,8 +2395,8 @@ exec " gcc "/bin/" program ":" gcc "/lib")) (format (current-error-port) "C_INCLUDE_PATH=~a\n" (getenv "C_INCLUDE_PATH")) (format (current-error-port) "CPLUS_INCLUDE_PATH=~a\n" (getenv "CPLUS_INCLUDE_PATH")) - (format (current-error-port) "LIBRARY_PATH=~a\n" (getenv "LIBRARY_PATH")) - #t)))))))))) + (format (current-error-port) "LIBRARY_PATH=~a\n" + (getenv "LIBRARY_PATH")))))))))))) (define gcc-mesboot-wrapper ;; We need this so gcc-mesboot can be used to create shared binaries that @@ -2526,8 +2469,7 @@ exec " gcc "/bin/" program (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (bin (string-append out "/bin"))) - (install-file "make" bin) - #t)))))))) + (install-file "make" bin))))))))) (native-inputs '()) ; no need for 'pkg-config' (inputs (%bootstrap-inputs+toolchain)))) @@ -2639,7 +2581,7 @@ exec " gcc "/bin/" program (define gawk-boot0 (package - (inherit patch) + (inherit gawk) (source (bootstrap-origin (package-source gawk))) (name "gawk-boot0") (native-inputs '()) @@ -2752,8 +2694,7 @@ exec " gcc "/bin/" program (with-directory-excursion (string-append out "/bin") (for-each (lambda (name) (symlink name (remove-triplet-prefix name))) - (scandir "." has-triplet-prefix?))) - #t)))) + (scandir "." has-triplet-prefix?))))))) ,@(substitute-keyword-arguments (package-arguments binutils) ((#:configure-flags cf) @@ -2788,8 +2729,7 @@ exec " gcc "/bin/" program ;; fail, which in turn confuses the configure script. (lambda _ (substitute* "libstdc++-v3/configure" - (("g\\+\\+ -v") "true")) - #t)))))) + (("g\\+\\+ -v") "true")))))))) (_ (package-arguments lib))))) (inputs (%boot0-inputs)) (native-inputs '())))) @@ -2877,8 +2817,7 @@ exec " gcc "/bin/" program (package-full-name lib "-") char-set:letter) ,(package-name lib))) - (list gmp-6.0 mpfr mpc)) - #t))) + (list gmp-6.0 mpfr mpc))))) ,(match (%current-system) ((or "i686-linux" "x86_64-linux") '(add-before 'configure 'fix-libcc1 @@ -2891,8 +2830,7 @@ exec " gcc "/bin/" program (assoc-ref inputs "gcc") "/lib"))) ;; XXX: "g++ -v" is broken (see also libstdc++ above). (substitute* "libcc1/configure" - (("g\\+\\+ -v") "true")) - #t))) + (("g\\+\\+ -v") "true"))))) (_ '(add-before 'configure 'return-true (lambda _ #t)))) (add-after 'install 'symlink-libgcc_eh @@ -2904,8 +2842,7 @@ exec " gcc "/bin/" program (string-append out "/lib/gcc/" ,(boot-triplet) "/" ,(package-version gcc)) - (symlink "libgcc.a" "libgcc_eh.a")) - #t)))))))) + (symlink "libgcc.a" "libgcc_eh.a")))))))))) (inputs `(("gmp-source" ,(bootstrap-origin (package-source gmp-6.0))) ("mpfr-source" ,(bootstrap-origin (package-source mpfr))) @@ -2946,8 +2883,7 @@ exec " gcc "/bin/" program (lambda _ (substitute* "Configure" (("^libswanted=(.*)pthread" _ before) - (string-append "libswanted=" before))) - #t)))) + (string-append "libswanted=" before))))))) ;; Do not configure with '-Dusethreads' since pthread ;; support is missing. ((#:configure-flags configure-flags) @@ -3192,8 +3128,7 @@ memoized as a function of '%current-system'." (delete-file-recursively "Modules/expat") (substitute* "Modules/Setup.dist" ;; Link Expat instead of embedding the bundled one. - (("^#pyexpat.*") "pyexpat pyexpat.c -lexpat\n")) - #t))))) + (("^#pyexpat.*") "pyexpat pyexpat.c -lexpat\n"))))))) (inputs `(,@(%boot0-inputs) ("expat" ,expat-sans-tests))) ;remove OpenSSL, zlib, etc. @@ -3229,16 +3164,15 @@ memoized as a function of '%current-system'." (("extensions\\.append\\(ctypes\\)") "") ;; Prevent the 'ossaudiodev' extension from being ;; built, since it requires Linux headers. - (("'linux', ") "")) - #t)) + (("'linux', ") "")))) (delete 'set-TZDIR) ,@(if (hurd-system?) `((add-before 'build 'fix-regen (lambda* (#:key inputs #:allow-other-keys) (let ((libc (assoc-ref inputs "libc"))) (substitute* "Lib/plat-generic/regen" - (("/usr/include/") (string-append libc "/include/"))) - #t)))) + (("/usr/include/") + (string-append libc "/include/"))))))) '()))) ((#:tests? _ #f) #f)))))) @@ -3287,9 +3221,9 @@ memoized as a function of '%current-system'." `(modify-phases ,phases (add-before 'configure 'pre-configure (lambda* (#:key inputs #:allow-other-keys) - ;; Don't clobber CPATH with the bootstrap libc. - (setenv "NATIVE_CPATH" (getenv "CPATH")) - (unsetenv "CPATH") + ;; Don't clobber include paths with the bootstrap libc. + (unsetenv "C_INCLUDE_PATH") + (unsetenv "CPLUS_INCLUDE_PATH") ;; Tell 'libpthread' where to find 'libihash' on Hurd systems. ,@(if (hurd-system?) @@ -3299,15 +3233,7 @@ memoized as a function of '%current-system'." (string-append "LDLIBS-pthread.so = " (assoc-ref %build-inputs "kernel-headers") "/lib/libihash.a\n")))) - '()) - - ;; 'rpcgen' needs native libc headers to be built. - (substitute* "sunrpc/Makefile" - (("sunrpc-CPPFLAGS =.*" all) - (string-append "CPATH = $(NATIVE_CPATH)\n" - "export CPATH\n" - all "\n"))) - #t))))))) + '())))))))) (propagated-inputs `(("kernel-headers" ,(kernel-headers-boot0)))) (native-inputs `(("bison" ,bison-boot0) @@ -3324,9 +3250,6 @@ memoized as a function of '%current-system'." `(("mig" ,mig-boot0)) '()) - ;; A native GCC is needed to build `cross-rpcgen'. - ("native-gcc" ,@(assoc-ref (%boot0-inputs) "gcc")) - ;; Here, we use the bootstrap Bash, which is not satisfactory ;; because we don't want to depend on bootstrap tools. ("static-bash" ,@(assoc-ref (%boot0-inputs) "bash")))))) @@ -3374,9 +3297,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%" triplet "-" tool) tool)) '("ar" "ranlib")) - (for-each wrap-program '("gcc" "g++"))) - - #t)))) + (for-each wrap-program '("gcc" "g++"))))))) (native-inputs `(("binutils" ,binutils) ("gcc" ,gcc) @@ -3439,16 +3360,14 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%" ;; Build only the tools. (add-after 'unpack 'chdir (lambda _ - (chdir "gettext-tools") - #t)) + (chdir "gettext-tools"))) ;; Some test programs require pthreads, which we don't have. (add-before 'configure 'no-test-programs (lambda _ (substitute* "tests/Makefile.in" (("^PROGRAMS =.*$") - "PROGRAMS =\n")) - #t))))))) + "PROGRAMS =\n"))))))))) (define glibc-final ;; The final glibc, which embeds the statically-linked Bash built above. @@ -3615,8 +3534,7 @@ exec ~a/bin/~a-~a -B~a/lib -Wl,-dynamic-linker -Wl,~a/~a \"$@\"~%" (package-full-name lib "-") char-set:letter) ,(package-name lib))) - (list gmp-6.0 mpfr mpc)) - #t)))))))) + (list gmp-6.0 mpfr mpc)))))))))) ;; This time we want Texinfo, so we get the manual. Add ;; STATIC-BASH-FOR-GLIBC so that it's used in the final shebangs of diff --git a/gnu/packages/compression.scm b/gnu/packages/compression.scm index 1d643cdff8..19b24ea46d 100644 --- a/gnu/packages/compression.scm +++ b/gnu/packages/compression.scm @@ -473,7 +473,7 @@ compressed with pbzip2 can be decompressed with bzip2).") (define-public xz (package (name "xz") - (version "5.2.4") + (version "5.2.5") (source (origin (method url-fetch) (uri (list (string-append "http://tukaani.org/xz/xz-" version @@ -482,7 +482,7 @@ compressed with pbzip2 can be decompressed with bzip2).") version ".tar.gz"))) (sha256 (base32 - "0ibi2zsfaz6l756spjwc5rayf4ckgc9hwmy8qinppcyk4svz64mm")))) + "045s9agl3bpv3swlwydhgsqh7791957vmgw2plw8f1rks07r3x7n")))) (build-system gnu-build-system) (arguments `(#:phases @@ -1389,14 +1389,14 @@ or junctions, and always follows hard links.") (define-public zstd (package (name "zstd") - (version "1.4.4") + (version "1.4.5") (source (origin (method url-fetch) (uri (string-append "https://github.com/facebook/zstd/releases/download/" "v" version "/zstd-" version ".tar.gz")) (sha256 - (base32 "05ckxap00qvc0j51d3ci38150cxsw82w7s9zgd5fgzspnzmp1vsr")))) + (base32 "17nf0r20360i80689bg5ipxbk2413b2dn3z7wj8byqpiddy1rscq")))) (build-system gnu-build-system) (outputs '("out" ;1.2MiB executables and documentation "lib" ;1.2MiB shared library and headers @@ -1404,6 +1404,13 @@ or junctions, and always follows hard links.") (arguments `(#:phases (modify-phases %standard-phases + (add-after 'unpack 'remove-bogus-check + (lambda _ + ;; lib/Makefile falsely claims that no .pc file can be created. + (substitute* "lib/Makefile" + (("error configured .*dir ") + "true ")) + #t)) (delete 'configure) ;no configure script (add-after 'install 'adjust-library-locations (lambda* (#:key outputs #:allow-other-keys) @@ -1427,13 +1434,13 @@ or junctions, and always follows hard links.") #t)))) #:make-flags - ;; TODO: Integrate in next rebuild cycle. - (list ,(if (%current-target-system) - (string-append "CC=" (cc-for-target)) - "CC=gcc") - (string-append "PREFIX=" (assoc-ref %outputs "out")) - (string-append "LIBDIR=" (assoc-ref %outputs "lib") "/lib") - (string-append "INCLUDEDIR=" (assoc-ref %outputs "lib") "/include") + (list ,(string-append "CC=" (cc-for-target)) + (string-append "prefix=" (assoc-ref %outputs "out")) + (string-append "libdir=" (assoc-ref %outputs "lib") "/lib") + (string-append "includedir=" (assoc-ref %outputs "lib") "/include") + ;; Auto-detection is over-engineered and buggy. + "PCLIBDIR=lib" + "PCINCDIR=include" ;; Skip auto-detection of, and creating a dependency on, the build ;; environment's ‘xz’ for what amounts to a dubious feature anyway. "HAVE_LZMA=0" @@ -1609,26 +1616,25 @@ recreates the stored directory structure by default.") (define-public zziplib (package (name "zziplib") - (version "0.13.69") + (version "0.13.71") (home-page "https://github.com/gdraheim/zziplib") (source (origin (method git-fetch) (uri (git-reference (url home-page) (commit (string-append "v" version)))) (file-name (git-file-name name version)) - (patches (search-patches "zziplib-CVE-2018-16548.patch")) (sha256 (base32 - "0fbk9k7ryas2wh2ykwkvm1pbi40i88rfvc3dydh9xyd7w2jcki92")))) + "109vznm9cxkqbj5r83qdgcdfk0j4kbg96dqr0q085nhwpgkw7viz")))) (build-system gnu-build-system) (arguments - `(#:phases (modify-phases %standard-phases - (add-before 'check 'make-files-writable - (lambda _ - (for-each make-file-writable - (find-files "test" #:directories? #t)) - #t))) - + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'make-files-writable + (lambda _ + (for-each make-file-writable + (find-files "." #:directories? #t)) + #t))) ;; XXX: The default test target attempts to download external resources and ;; fails without error: <https://github.com/gdraheim/zziplib/issues/53>. ;; To prevent confusing log messages, just run a simple zip test that works. @@ -1637,9 +1643,7 @@ recreates the stored directory structure by default.") `(("zlib" ,zlib))) (native-inputs `(("perl" ,perl) ; for the documentation ("pkg-config" ,pkg-config) - ;; for the documentation; Python 3 not supported, - ;; http://forums.gentoo.org/viewtopic-t-863161-start-0.html - ("python" ,python-2) + ("python" ,python) ("zip" ,zip))) ; to create test files (synopsis "Library for accessing zip files") (description diff --git a/gnu/packages/cross-base.scm b/gnu/packages/cross-base.scm index bea2d69876..938eaacc31 100644 --- a/gnu/packages/cross-base.scm +++ b/gnu/packages/cross-base.scm @@ -527,16 +527,7 @@ and the cross tool chain." (("/[^ ]+/lib/libc.so.0.3") (string-append out "/lib/libc.so.0.3" " libmachuser.so libhurduser.so")))) - #t)) - ;; TODO: move to glibc in the next rebuild cycle - (add-after 'unpack 'patch-libc/hurd - (lambda* (#:key inputs #:allow-other-keys) - (for-each - (lambda (name) - (let ((patch (assoc-ref inputs name))) - (invoke "patch" "-p1" "--force" "-i" patch))) - '("hurd-mach-print.patch" - "hurd-gettyent.patch"))))) + #t))) '()))))) ;; Shadow the native "kernel-headers" because glibc's recipe expects the @@ -555,11 +546,6 @@ and the cross tool chain." (native-inputs `(("cross-gcc" ,xgcc) ("cross-binutils" ,xbinutils) - ,@(if (hurd-triplet? target) - `(("cross-mig" - ,@(assoc-ref (package-native-inputs xheaders) - "cross-mig"))) - '()) ,@(package-inputs libc) ;FIXME: static-bash ,@(package-native-inputs libc)))))) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index 1b51366d7e..6083b4c694 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -377,7 +377,7 @@ secure operations. ") (lambda _ (invoke "./worgen" "8-12" "top1000.txt" "3-10" "top400nouns.txt" "3-6" "top150adjectives.txt" "3-6") - (invoke "./eschalot" "-r" "^guix|^guixsd") + (invoke "./eschalot" "-r" "^guix|^GuixSystem") (invoke "./eschalot" "-r" "^gnu|^free") (invoke "./eschalot" "-r" "^cyber|^hack") (invoke "./eschalot" "-r" "^troll"))) diff --git a/gnu/packages/cups.scm b/gnu/packages/cups.scm index bfe24027fb..d52fcaa952 100644 --- a/gnu/packages/cups.scm +++ b/gnu/packages/cups.scm @@ -28,6 +28,7 @@ #:use-module (gnu packages algebra) #:use-module (gnu packages autotools) #:use-module (gnu packages avahi) + #:use-module (gnu packages base) #:use-module (gnu packages compression) #:use-module (gnu packages fonts) ; font-dejavu #:use-module (gnu packages fontutils) @@ -59,7 +60,7 @@ (define-public cups-filters (package (name "cups-filters") - (version "1.27.4") + (version "1.28.5") (source(origin (method url-fetch) (uri @@ -67,7 +68,7 @@ "cups-filters-" version ".tar.xz")) (sha256 (base32 - "110b1xhb5vfpcx0zq9kkas7pj281skx5dpnnr22idx509jfdzj8b")) + "03zn534whjxi3s7g0srdib1qhvwk0f826c5bci17jl5zpk3myhm8")) (modules '((guix build utils))) (snippet ;; install backends, banners and filters to cups-filters output @@ -127,17 +128,18 @@ #t))) (add-after 'install 'wrap-filters (lambda* (#:key inputs outputs #:allow-other-keys) - ;; Some filters expect to find 'gs' in $PATH. We cannot - ;; just hard-code its absolute file name in the source + ;; Some filters expect to find things in $PATH. We cannot + ;; just hard-code all absolute file names in the source ;; because foomatic-rip, for example, has tests like ;; 'startswith(cmd, "gs")'. (let ((out (assoc-ref outputs "out")) - (ghostscript (assoc-ref inputs "ghostscript"))) + (ghostscript (assoc-ref inputs "ghostscript")) + (grep (assoc-ref inputs "grep"))) (for-each (lambda (file) (wrap-program file `("PATH" ":" prefix - (,(string-append ghostscript - "/bin"))))) + (,(string-append ghostscript "/bin:" + grep "/bin"))))) (find-files (string-append out "/lib/cups/filter"))) #t)))))) @@ -150,6 +152,7 @@ ("freetype" ,freetype) ("font-dejavu" ,font-dejavu) ; also needed by test suite ("ghostscript" ,ghostscript/cups) + ("grep" ,grep) ("ijs" ,ijs) ("dbus" ,dbus) ("lcms" ,lcms) diff --git a/gnu/packages/curl.scm b/gnu/packages/curl.scm index 55b7e4393b..973107860a 100644 --- a/gnu/packages/curl.scm +++ b/gnu/packages/curl.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> ;;; Copyright © 2020 Dale Mellor <guix-devel-0brg6b@rdmp.org> +;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -53,15 +54,14 @@ (define-public curl (package (name "curl") - (version "7.69.1") - (replacement curl-7.71.0) + (version "7.73.0") (source (origin (method url-fetch) (uri (string-append "https://curl.haxx.se/download/curl-" version ".tar.xz")) (sha256 (base32 - "0kwxh76iq9fblk7iyv4f75bmcmasarp2bcm1mm07wyvzd7kdbiq3")) + "12j0qaij1ppgspray8xvs2qk3h3m23wdqh27x87y1aw8xaj7qk3w")) (patches (search-patches "curl-use-ssl-cert-env.patch")))) (build-system gnu-build-system) (outputs '("out" @@ -73,9 +73,10 @@ ("nghttp2" ,nghttp2 "lib") ("zlib" ,zlib))) (native-inputs - `(("perl" ,perl) + `(("nghttp2" ,nghttp2) + ("perl" ,perl) ("pkg-config" ,pkg-config) - ("python" ,python-wrapper))) + ("python" ,python-minimal-wrapper))) (native-search-paths ;; These variables are introduced by curl-use-ssl-cert-env.patch. (list (search-path-specification @@ -126,25 +127,6 @@ (substitute* "tests/runtests.pl" (("/bin/sh") (which "sh"))) - ;; XXX FIXME: Test #1510 seems to work on some machines and not - ;; others, possibly based on the kernel version. It works on Guix System - ;; on x86_64 with linux-libre-4.1, but fails on Hydra for both i686 - ;; and x86_64 with the following error: - ;; - ;; test 1510...[HTTP GET connection cache limit (CURLOPT_MAXCONNECTS)] - ;; - ;; 1510: output (log/stderr1510) FAILED: - ;; --- log/check-expected 2015-06-27 07:45:53.166720834 +0000 - ;; +++ log/check-generated 2015-06-27 07:45:53.166720834 +0000 - ;; @@ -1,5 +1,5 @@ - ;; * Connection #0 to host server1.example.com left intact[LF] - ;; * Connection #1 to host server2.example.com left intact[LF] - ;; * Connection #2 to host server3.example.com left intact[LF] - ;; -* Closing connection 0[LF] - ;; +* Closing connection 1[LF] - ;; * Connection #3 to host server4.example.com left intact[LF] - (delete-file "tests/data/test1510") - ;; The top-level "make check" does "make -C tests quiet-test", which ;; is too quiet. Use the "test" target instead, which is more ;; verbose. @@ -171,31 +153,6 @@ tunneling, and so on.") (name "curl-minimal") (inputs (alist-delete "openldap" (package-inputs curl)))))) -;; Replacement package to fix CVE-2020-8169 and CVE-2020-8177. -(define curl-7.71.0 - (package - (inherit curl) - (version "7.71.0") - (source (origin - (inherit (package-source curl)) - (uri (string-append "https://curl.haxx.se/download/curl-" - version ".tar.xz")) - (sha256 - (base32 - "0wlppmx9iry8slh4pqcxj7lwc6fqwnlhh9ri2pcym2rx76a8gwfd")))) - (arguments - (substitute-keyword-arguments (package-arguments curl) - ((#:phases phases) - `(modify-phases ,phases - (replace 'check - (lambda _ - ;; Test 1510 is now disabled upstream, and the test runner - ;; complains that it can not disable a non-existing test. - ;; Thus, override the phase to not delete the test. - (substitute* "tests/runtests.pl" - (("/bin/sh") (which "sh"))) - (invoke "make" "-C" "tests" "test"))))))))) - (define-public kurly (package (name "kurly") diff --git a/gnu/packages/docbook.scm b/gnu/packages/docbook.scm index 236c7e2819..2631418f08 100644 --- a/gnu/packages/docbook.scm +++ b/gnu/packages/docbook.scm @@ -167,15 +167,17 @@ by no means limited to these applications.) This package provides XML DTDs.") (define-public docbook-xsl (package (name "docbook-xsl") - (version "1.79.1") + (version "1.79.2") (source (origin (method url-fetch) - (uri (string-append "mirror://sourceforge/docbook/docbook-xsl/" - version "/docbook-xsl-" version ".tar.bz2")) - (patches (search-patches "docbook-xsl-nonrecursive-string-subst.patch")) + (uri (string-append "https://github.com/docbook/xslt10-stylesheets" + "/releases/download/release%2F" version + "/docbook-xsl-" version ".tar.bz2")) + (patches (search-patches "docbook-xsl-support-old-url.patch" + "docbook-xsl-nonrecursive-string-subst.patch")) (sha256 (base32 - "0s59lihif2fr7rznckxr2kfyrvkirv76r1zvidp9b5mj28p4apvj")) + "0wd33z41kdsybyx3ay21w6bdlmgpd9kyn3mr5y520lsf8km28r9i")) (modules '((guix build utils))) (snippet '(begin diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index 86880be0d6..6888672f9a 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -1806,17 +1806,6 @@ performance, features, and ease of use.") (guix build utils)) #:phases (modify-phases %standard-phases - (add-after 'unpack 'install-bindings-to-python-output - (lambda* (#:key outputs #:allow-other-keys) - ;; python-build-system will build the bindings and install them to - ;; the "out" output, so change the build-internal names of the - ;; outputs. - ;; - ;; TODO: remove this once #40469 lands, through the core-updates - ;; holding zone, on master. - (set-car! (assoc "out" outputs) "lib") - (set-car! (assoc "python" outputs) "out") - #t)) (add-before 'build 'build-library (lambda* (#:key inputs #:allow-other-keys) (invoke "make" @@ -1829,7 +1818,7 @@ performance, features, and ease of use.") "UNICORN_STATIC=no" (string-append "PREFIX=" - (assoc-ref outputs "lib"))))) + (assoc-ref outputs "out"))))) (add-before 'build 'prepare-bindings (lambda* (#:key outputs #:allow-other-keys) (chdir "bindings/python") @@ -1842,7 +1831,7 @@ performance, features, and ease of use.") (("_path_list = \\[.*") (string-append "_path_list = [\"" - (assoc-ref outputs "lib") + (assoc-ref outputs "out") ;; eat the rest of the list "/lib\"] + 0*["))) #t)) @@ -1863,10 +1852,10 @@ performance, features, and ease of use.") (let* ((python-samples (find-files "." "sample_.*")) (c-samples (find-files "../../samples" ".*\\.c")) (python-docdir - (string-append (assoc-ref outputs "out") + (string-append (assoc-ref outputs "python") "/share/doc/unicorn/samples")) (c-docdir - (string-append (assoc-ref outputs "lib") + (string-append (assoc-ref outputs "out") "/share/doc/unicorn/samples"))) (for-each (cut install-file <> c-docdir) c-samples) (for-each (cut install-file <> python-docdir) python-samples) diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index 558541dd5a..b39c9ecb47 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -2808,9 +2808,7 @@ GUI.") ;; The GUI, which we elide, requires tcl and tk. (native-inputs `(("autoconf" ,autoconf) ("automake" ,automake) - ;; Requires bison 3.6+ but we currently only have 3.5. - ;; Bison 3.6 will be available in the next core update. - ("bison-3.6" ,bison-3.6) + ("bison" ,bison) ("clisp" ,clisp) ("dejagnu" ,dejagnu) ("flex" ,flex) diff --git a/gnu/packages/file.scm b/gnu/packages/file.scm index bac951f9c5..bed272ae35 100644 --- a/gnu/packages/file.scm +++ b/gnu/packages/file.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -30,14 +31,14 @@ (define-public file (package (name "file") - (version "5.38") + (version "5.39") (source (origin (method url-fetch) (uri (string-append "ftp://ftp.astron.com/pub/file/file-" version ".tar.gz")) (sha256 (base32 - "0d7s376b4xqymnrsjxi3nsv3f5v89pzfspzml2pcajdk5by2yg2r")))) + "1lgs2w2sgamzf27kz5h7pajz7v62554q21fbs11n4mfrfrm2hpgh")))) (build-system gnu-build-system) ;; When cross-compiling, this package depends upon a native install of diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index 7409670a59..1b6f72d22b 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -341,6 +341,7 @@ Font Format (WOFF).") (patches (search-patches "fontconfig-hurd-path-max.patch")) (sha256 (base32 "0hb700a68kk0ip51wdlnjjc682kvlrmb6q920mzajykdk0mdsmgn")))) + (outputs '("out" "doc")) (build-system gnu-build-system) ;; In Requires or Requires.private of fontconfig.pc. (propagated-inputs `(("expat" ,expat) @@ -368,11 +369,33 @@ Font Format (WOFF).") #:phases (modify-phases %standard-phases (replace 'install - (lambda _ - ;; Don't try to create /var/cache/fontconfig. - (invoke "make" "install" - "fc_cachedir=$(TMPDIR)" - "RUN_FC_CACHE_TEST=false")))))) + (lambda _ + ;; Don't try to create /var/cache/fontconfig. + (invoke "make" "install" + "fc_cachedir=$(TMPDIR)" + "RUN_FC_CACHE_TEST=false"))) + (add-after 'install 'move-man-sections + (lambda* (#:key outputs #:allow-other-keys) + ;; Move share/man/man{3,5} to the "doc" output. Leave "man1" in + ;; "out" for convenience. + (let ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) + (for-each (lambda (section) + (let ((source (string-append out "/share/man/" + section)) + (target (string-append doc "/share/man/" + section))) + (copy-recursively source target) + (delete-file-recursively source))) + '("man3" "man5")) + #t))) + (add-after 'install 'remove-pdf-files + (lambda* (#:key outputs #:allow-other-keys) + ;; By default PDF versions of the user and development manuals are + ;; installs but they bring nothing useful. Remove them. + (let ((doc (assoc-ref outputs "doc"))) + (for-each delete-file (find-files doc "\\.pdf$")) + #t)))))) (synopsis "Library for configuring and customizing font access") (description "Fontconfig can discover new fonts when installed automatically; @@ -438,14 +461,14 @@ X11-system or any other graphical user interface.") (define-public teckit (package (name "teckit") - (version "2.5.9") ;signed by key 0xC9183BEA0288CDEE + (version "2.5.10") ; signed by key 0xC9183BEA0288CDEE (source (origin (method url-fetch) (uri (string-append "https://github.com/silnrsi/teckit/releases/" "download/v" version "/teckit-" version ".tar.gz")) (sha256 - (base32 "0gbxyip4wdibirdg2pvzayzyy927vxyd6dfyfiflx8zg88qzn8v8")))) + (base32 "12qnf8nhxyr4d5pc01s3vc6h726506957an4vvmmfz633cqi5796")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--disable-static"))) diff --git a/gnu/packages/gawk.scm b/gnu/packages/gawk.scm index d8494e9c1c..6b5eaa1f4c 100644 --- a/gnu/packages/gawk.scm +++ b/gnu/packages/gawk.scm @@ -30,13 +30,13 @@ (define-public gawk (package (name "gawk") - (version "5.0.1") + (version "5.1.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gawk/gawk-" version ".tar.xz")) (sha256 - (base32 "15570p7g2x54asvr2fsc56sxzmm08fbk4mzpcs5n92fp9vq8cklf")))) + (base32 "1gc2cccqy1x1bf6rhwlmd8q7dz7gnam6nwgl38bxapv6qm5flpyg")))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index 4d5aaa7070..18aaa0bdab 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -320,8 +320,7 @@ where the OS part is overloaded to denote a specific ABI---into GCC ;; but there's nothing useful to look for here.) (substitute* "gcc/config.in" (("PREFIX_INCLUDE_DIR") - "PREFIX_INCLUDE_DIR_isnt_necessary_here")) - #t))) + "PREFIX_INCLUDE_DIR_isnt_necessary_here"))))) (add-after 'configure 'post-configure (lambda _ @@ -329,8 +328,7 @@ where the OS part is overloaded to denote a specific ABI---into GCC ;; build-time dependencies---e.g., `--with-ppl=/gnu/store/xxx'. (substitute* "Makefile" (("^TOPLEVEL_CONFIGURE_ARGUMENTS=(.*)$" _ rest) - "TOPLEVEL_CONFIGURE_ARGUMENTS=\n")) - #t))))) + "TOPLEVEL_CONFIGURE_ARGUMENTS=\n"))))))) (native-search-paths ;; Use the language-specific variables rather than 'CPATH' because they @@ -378,15 +376,13 @@ Go. It also includes runtime support libraries for these languages.") ;; This is required for building with glibc-2.26. ;; https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81712 (snippet - '(begin - (for-each - (lambda (dir) - (substitute* (string-append "libgcc/config/" - dir "/linux-unwind.h") - (("struct ucontext") "ucontext_t"))) - '("aarch64" "alpha" "bfin" "i386" "m68k" - "pa" "sh" "tilepro" "xtensa")) - #t)))) + '(for-each + (lambda (dir) + (substitute* (string-append "libgcc/config/" + dir "/linux-unwind.h") + (("struct ucontext") "ucontext_t"))) + '("aarch64" "alpha" "bfin" "i386" "m68k" + "pa" "sh" "tilepro" "xtensa"))))) (supported-systems %supported-systems) (inputs `(("isl" ,isl-0.11) @@ -414,15 +410,13 @@ Go. It also includes runtime support libraries for these languages.") ;; This is required for building with glibc-2.26. ;; https://gcc.gnu.org/bugzilla/show_bug.cgi?id=81712 (snippet - '(begin - (for-each - (lambda (dir) - (substitute* (string-append "libgcc/config/" - dir "/linux-unwind.h") - (("struct ucontext") "ucontext_t"))) - '("aarch64" "alpha" "bfin" "i386" "m68k" "nios2" - "pa" "sh" "tilepro" "xtensa")) - #t)))) + '(for-each + (lambda (dir) + (substitute* (string-append "libgcc/config/" + dir "/linux-unwind.h") + (("struct ucontext") "ucontext_t"))) + '("aarch64" "alpha" "bfin" "i386" "m68k" "nios2" + "pa" "sh" "tilepro" "xtensa"))))) ;; Override inherited texinfo-5 with latest version. (native-inputs `(("perl" ,perl) ;for manpages ("texinfo" ,texinfo))) @@ -450,8 +444,7 @@ Go. It also includes runtime support libraries for these languages.") ":")) (format #t "environment variable `CPLUS_INCLUDE_PATH' changed to ~a~%" - (getenv "CPLUS_INCLUDE_PATH")) - #t)))))))))) + (getenv "CPLUS_INCLUDE_PATH")))))))))))) (define-public gcc-5 ;; Note: GCC >= 5 ships with .info files but 'make install' fails to install @@ -483,11 +476,9 @@ Go. It also includes runtime support libraries for these languages.") ;; ;; https://gcc.gnu.org/bugzilla/show_bug.cgi?id=67590 ;; http://cgit.openembedded.org/openembedded-core/commit/?id=f6e47aa9b12f9ab61530c40e0343f451699d9077 - '(begin - (substitute* "libcc1/configure" - (("\\$gcc_cv_objdump -T") - "$OBJDUMP_FOR_TARGET -T")) - #t)))) + '(substitute* "libcc1/configure" + (("\\$gcc_cv_objdump -T") + "$OBJDUMP_FOR_TARGET -T"))))) (inputs `(;; GCC5 needs <isl/band.h> which is removed in later versions. ("isl" ,isl-0.18) @@ -653,16 +644,14 @@ using compilers other than GCC." (modify-phases %standard-phases (add-before 'configure 'chdir (lambda _ - (chdir "libiberty") - #t)) + (chdir "libiberty"))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (lib (string-append out "/lib/")) (include (string-append out "/include/"))) (install-file "libiberty.a" lib) - (install-file "../include/libiberty.h" include)) - #t))))) + (install-file "../include/libiberty.h" include))))))) (inputs '()) (outputs '("out")) (native-inputs '()) @@ -704,8 +693,7 @@ as the 'native-search-paths' field." (lambda* (#:key outputs #:allow-other-keys) (for-each delete-file (find-files (string-append (assoc-ref outputs "out") "/bin") - ".*(c\\+\\+|cpp|g\\+\\+|gcov|gcc|gcc-.*)")) - #t)))))))) + ".*(c\\+\\+|cpp|g\\+\\+|gcov|gcc|gcc-.*)")))))))))) (define %generic-search-paths ;; This is the language-neutral search path for GCC. Entries in $CPATH are @@ -759,8 +747,7 @@ as the 'native-search-paths' field." (lambda* (#:key outputs #:allow-other-keys) (for-each delete-file (find-files (string-append (assoc-ref outputs "out") "/bin") - ".*(c\\+\\+|cpp|g\\+\\+|gcov|gcc|gcc-.*)")) - #t)))))) + ".*(c\\+\\+|cpp|g\\+\\+|gcov|gcc|gcc-.*)")))))))) (synopsis "GCC library generating machine code on-the-fly at runtime") (description "This package is part of the GNU Compiler Collection and provides an @@ -893,8 +880,7 @@ provides the GNU compiler for the Go programming language.")) #:phases (modify-phases %standard-phases (add-before 'configure 'chdir (lambda _ - (chdir "libstdc++-v3") - #t)) + (chdir "libstdc++-v3"))) (add-before 'configure 'set-xsl-directory (lambda* (#:key inputs #:allow-other-keys) (let ((docbook (assoc-ref inputs "docbook-xsl"))) @@ -903,8 +889,7 @@ provides the GNU compiler for the Go programming language.")) (("@XSL_STYLE_DIR@") (string-append docbook "/xml/xsl/" - (strip-store-file-name docbook)))) - #t))) + (strip-store-file-name docbook))))))) (replace 'build (lambda _ ;; XXX: There's also a 'doc-info' target, but it @@ -961,8 +946,7 @@ provides the GNU compiler for the Go programming language.")) ;; libtool looks for it in the usual locations. (substitute* (string-append out "/lib/libisl.la") (("^old_library=.*") - "old_library=''\n")) - #t)))))) + "old_library=''\n")))))))) (inputs `(("gmp" ,gmp))) (home-page "http://isl.gforge.inria.fr/") (synopsis @@ -1088,8 +1072,7 @@ effective code.") (copy-file file (string-append html "/" file))) - (find-files "." "\\.html$")) - #t)))))) + (find-files "." "\\.html$")))))))) (synopsis "Reference manual for the C programming language") (description "This is a reference manual for the C programming language, as diff --git a/gnu/packages/gdb.scm b/gnu/packages/gdb.scm index 79fc49f5ff..a39194df95 100644 --- a/gnu/packages/gdb.scm +++ b/gnu/packages/gdb.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com> ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -118,6 +119,12 @@ mig/32-bit mig))) '()))) + ;; TODO: Add support for the GDB_DEBUG_FILE_DIRECTORY environment + ;; variable in GDB itself instead of relying on some glue code in + ;; the Guix-provided .gdbinit file. + (native-search-paths (list (search-path-specification + (variable "GDB_DEBUG_FILE_DIRECTORY") + (files '("lib/debug"))))) (home-page "https://www.gnu.org/software/gdb/") (synopsis "The GNU debugger") (description diff --git a/gnu/packages/gettext.scm b/gnu/packages/gettext.scm index de28c2341b..5956742bbb 100644 --- a/gnu/packages/gettext.scm +++ b/gnu/packages/gettext.scm @@ -47,14 +47,14 @@ (define-public gettext-minimal (package (name "gettext-minimal") - (version "0.20.1") + (version "0.21") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/gettext/gettext-" version ".tar.gz")) (sha256 (base32 - "0p3zwkk27wm2m2ccfqm57nj7vqkmfpn7ja1nf65zmhz8qqs5chb6")))) + "04kbg1sx0ncfrsbr85ggjslqkzzb243fcw9nyh3rrv1a22ihszf7")))) (build-system gnu-build-system) (outputs '("out" "doc")) ;9 MiB of HTML diff --git a/gnu/packages/ghostscript.scm b/gnu/packages/ghostscript.scm index 4d56f05cf2..bbda8c27ad 100644 --- a/gnu/packages/ghostscript.scm +++ b/gnu/packages/ghostscript.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com> +;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -266,7 +267,7 @@ printing, and psresize, for adjusting page sizes.") (native-inputs `(("perl" ,perl) ("pkg-config" ,pkg-config) ;needed for freetype - ("python" ,python-wrapper) + ("python" ,python-minimal-wrapper) ("tcl" ,tcl) ;; When cross-compiling, some of the natively-built tools require all diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index a8b142cacb..4e372c530b 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> +;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -357,6 +358,12 @@ also known as DXTn or DXTC) for Mesa.") (("'u_format_test',") "")) #t))) '()) + (add-after 'unpack 'fix-tests + (lambda _ + ;; See <https://gitlab.freedesktop.org/mesa/mesa/-/issues/3181>. + (substitute* "src/compiler/glsl/glcpp/tests/084-unbalanced-parentheses.c.expected" + (("unexpected \\$end") "unexpected end of file")) + #t)) (add-before 'configure 'fix-dlopen-libnames (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index 43523e516d..6efc3928bf 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2014, 2015, 2016, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2014, 2015, 2016, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013 Nikita Karetnikov <nikita@karetnikov.org> ;;; Copyright © 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org> @@ -13,6 +13,8 @@ ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> +;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de> +;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020 Arthur Margerit <ruhtra.mar@gmail.com> ;;; ;;; This file is part of GNU Guix. @@ -90,8 +92,7 @@ (define dbus (package (name "dbus") - (version "1.12.16") - (replacement dbus/fixed) + (version "1.12.20") (source (origin (method url-fetch) (uri (string-append @@ -99,7 +100,7 @@ version ".tar.gz")) (sha256 (base32 - "107ckxaff1cv4q6kmfdi2fb1nlsv03312a7kf6lb4biglhpjv8jl")) + "1zp5gpx61v1cpqf2zwb1cidhp9xylvw49d3zydkxqk6b1qa20xpp")) (patches (search-patches "dbus-helper-search-path.patch")))) (build-system gnu-build-system) (arguments @@ -168,15 +169,6 @@ or through unencrypted TCP/IP suitable for use behind a firewall with shared NFS home directories.") (license license:gpl2+))) ; or Academic Free License 2.1 -;; Replacement package to fix CVE-2020-12049. -(define dbus/fixed - (package - (inherit dbus) - (source (origin - (inherit (package-source dbus)) - (patches (append (search-patches "dbus-CVE-2020-12049.patch") - (origin-patches (package-source dbus)))))))) - (define glib (package (name "glib") @@ -199,7 +191,8 @@ shared NFS home directories.") #t)))) (build-system meson-build-system) (outputs '("out" ; everything - "bin")) ; glib-mkenums, gtester, etc.; depends on Python + "bin" ; glib-mkenums, gtester, etc.; depends on Python + "debug")) (propagated-inputs `(("pcre" ,pcre) ; in the Requires.private field of glib-2.0.pc ("libffi" ,libffi) ; in the Requires.private field of gobject-2.0.pc @@ -212,7 +205,7 @@ shared NFS home directories.") ("m4" ,m4) ; for installing m4 macros ("dbus" ,dbus) ; for GDBus tests ("pkg-config" ,pkg-config) - ("python" ,python-wrapper) + ("python" ,python-minimal-wrapper) ("perl" ,perl) ; needed by GIO tests ("tzdata" ,tzdata-for-tests))) ; for tests/gdatetime.c (arguments @@ -329,11 +322,14 @@ shared NFS home directories.") (for-each (lambda (x) (apply disable x)) failing-tests) #t))) (replace 'check - (lambda _ - (setenv "MESON_TESTTHREADS" - (number->string (parallel-job-count))) - ;; Do not run tests marked as "flaky". - (invoke "meson" "test" "--no-suite" "flaky"))) + (lambda* (#:key tests? #:allow-other-keys) + (if tests? + (begin + (setenv "MESON_TESTTHREADS" + (number->string (parallel-job-count))) + ;; Do not run tests marked as "flaky". + (invoke "meson" "test" "--no-suite" "flaky")) + #t))) ;; TODO: meson does not permit the bindir to be outside of prefix. ;; See https://github.com/mesonbuild/meson/issues/2561 ;; We can remove this once meson is patched. diff --git a/gnu/packages/gnupg.scm b/gnu/packages/gnupg.scm index a8ea94d008..4bb3a5addf 100644 --- a/gnu/packages/gnupg.scm +++ b/gnu/packages/gnupg.scm @@ -79,7 +79,7 @@ (define-public libgpg-error (package (name "libgpg-error") - (version "1.37") + (version "1.39") (source (origin (method url-fetch) @@ -87,7 +87,7 @@ version ".tar.bz2")) (sha256 (base32 - "0qwpx8mbc2l421a22l0l1hpzkip9jng06bbzgxwpkkvk5bvnybdk")))) + "13r9vf6dyjab6jh2821fp2r6m624iy838j2s3kpr882rmvf6x0sa")))) (build-system gnu-build-system) (arguments (if (%current-target-system) @@ -129,14 +129,14 @@ Daemon and possibly more in the future.") (define-public libgcrypt (package (name "libgcrypt") - (version "1.8.5") + (version "1.8.7") (source (origin (method url-fetch) (uri (string-append "mirror://gnupg/libgcrypt/libgcrypt-" version ".tar.bz2")) (sha256 (base32 - "1hvsazms1bfd769q0ngl0r9g5i4m9mpz9jmvvrdzyzk3rfa2ljiv")))) + "0j27jxhjay78by940d64778nxwbysxynv5mq6iq1nmlrh810zdq3")))) (build-system gnu-build-system) (propagated-inputs `(("libgpg-error-host" ,libgpg-error))) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 3f6ed75403..b5cbb4cebf 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -791,7 +791,7 @@ from forcing GEXP-PROMISE." ("llvm" ,llvm) ("clang" ,clang) ("perl" ,perl) - ("node" ,node-10.22) + ("node" ,node) ("python" ,python) ("python-2" ,python-2) ("python2-pysqlite" ,python2-pysqlite) @@ -1460,7 +1460,7 @@ standards of the IceCat project.") ("clang" ,clang) ("llvm" ,llvm) ("nasm" ,nasm) - ("node" ,node-10.22) + ("node" ,node) ("perl" ,perl) ("pkg-config" ,pkg-config) ("python" ,python) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 11694e06f9..442f49cbcb 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -284,14 +284,14 @@ without requiring the source code to be rewritten.") (package (inherit guile-2.2) (name "guile") - (version "3.0.2") + (version "3.0.4") (source (origin (inherit (package-source guile-2.2)) (uri (string-append "mirror://gnu/guile/guile-" version ".tar.xz")) (sha256 (base32 - "12lziar4j27j9whqp2n18427q45y9ghq7gdd8lqhmj1k0lr7vi2k")))) + "0c8dkyvs6xbxp7rgnhkyakajzhakay7qn9kahj1mj49x5vf4fybb")))) (arguments ;; XXX: JIT-enabled Guile crashes in obscure ways on GNU/Hurd. (if (hurd-target?) @@ -309,17 +309,8 @@ without requiring the source code to be rewritten.") "share/guile/site/3.0"))))))) (define-public guile-3.0-latest - ;; TODO: Make this 'guile-3.0' on the next rebuild cycle. - (package - (inherit guile-3.0) - (version "3.0.4") - (source (origin - (inherit (package-source guile-3.0)) - (uri (string-append "mirror://gnu/guile/guile-" - version ".tar.xz")) - (sha256 - (base32 - "0c8dkyvs6xbxp7rgnhkyakajzhakay7qn9kahj1mj49x5vf4fybb")))))) + ;; The latest 3.0.x version. + guile-3.0) (define-public guile-next (deprecated-package "guile-next" guile-3.0)) diff --git a/gnu/packages/icu4c.scm b/gnu/packages/icu4c.scm index 2fadc2ad8d..d467096708 100644 --- a/gnu/packages/icu4c.scm +++ b/gnu/packages/icu4c.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2016, 2017, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com> @@ -39,7 +39,7 @@ (define-public icu4c (package (name "icu4c") - (version "66.1") + (version "67.1") (source (origin (method url-fetch) (uri (string-append @@ -48,10 +48,8 @@ "/icu4c-" (string-map (lambda (x) (if (char=? x #\.) #\_ x)) version) "-src.tgz")) - (patch-flags '("-p2")) - (patches (search-patches "icu4c-CVE-2020-10531.patch")) (sha256 - (base32 "0bharwzc9nzkbrcf405z2nb3h7q0711z450arz0mjmdrk8hg58sj")))) + (base32 "1p6mhvxl0xr2n0g6xdps3mwzwlv6mjsz3xlpm793p9aiybb0ra4l")))) (build-system gnu-build-system) ;; When cross-compiling, this package needs a source directory of a ;; native-build of itself. diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index f379ad87c1..ebebd79385 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -26,6 +26,7 @@ ;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2020 R Veera Kumar <vkor@vkten.in> ;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com> ;;; ;;; This file is part of GNU Guix. @@ -694,7 +695,7 @@ arithmetic ops.") `(("autoconf" ,autoconf) ("automake" ,automake) ("libtool" ,libtool) - ("python" ,python-wrapper))) ;for tests + ("python" ,python-minimal-wrapper))) ;for tests (synopsis "Decoder of the JBIG2 image compression format") (description "JBIG2 is designed for lossy or lossless encoding of @code{bilevel} (1-bit diff --git a/gnu/packages/jemalloc.scm b/gnu/packages/jemalloc.scm index c4b87b540d..906330a4b6 100644 --- a/gnu/packages/jemalloc.scm +++ b/gnu/packages/jemalloc.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com> -;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2017, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org> ;;; ;;; This file is part of GNU Guix. @@ -54,7 +54,7 @@ #t))) ,@(if (any (cute string-prefix? <> (or (%current-target-system) (%current-system))) - '("x64_64" "i686")) + '("x86_64" "i686")) ;; Transparent huge pages are only enabled by default on Intel processors '() '(#:configure-flags (list "--disable-thp"))))) diff --git a/gnu/packages/kerberos.scm b/gnu/packages/kerberos.scm index 20ed94b33b..0f3ff96388 100644 --- a/gnu/packages/kerberos.scm +++ b/gnu/packages/kerberos.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -41,6 +42,7 @@ #:use-module (gnu packages compression) #:use-module (gnu packages readline) #:use-module (gnu packages sqlite) + #:use-module (gnu packages tcl) #:use-module (gnu packages texinfo) #:use-module (gnu packages tls) #:use-module ((guix licenses) #:prefix license:) @@ -70,7 +72,10 @@ (build-system gnu-build-system) (native-inputs `(("bison" ,bison) - ("perl" ,perl))) + ("perl" ,perl) + ("tcl" ,tcl))) ;required for some tests + (inputs + `(("openssl" ,openssl))) (arguments `(;; XXX: On 32-bit systems, 'kdb5_util' hangs on an fcntl/F_SETLKW call ;; while running the tests in 'src/tests'. Also disable tests when diff --git a/gnu/packages/ld-wrapper.in b/gnu/packages/ld-wrapper.in index 2b68b87fb9..0d53e746af 100644 --- a/gnu/packages/ld-wrapper.in +++ b/gnu/packages/ld-wrapper.in @@ -11,11 +11,12 @@ # <https://lists.gnu.org/archive/html/guile-devel/2016-03/msg00000.html>. unset GUILE_LOAD_COMPILED_PATH +unset GUILE_SYSTEM_COMPILED_PATH main="(@ (gnu build-support ld-wrapper) ld-wrapper)" exec @GUILE@ -c "(load-compiled \"@SELF@.go\") (apply $main (cdr (command-line)))" "$@" !# ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; ;;; This file is part of GNU Guix. diff --git a/gnu/packages/libevent.scm b/gnu/packages/libevent.scm index dab574a155..8ae7c4c131 100644 --- a/gnu/packages/libevent.scm +++ b/gnu/packages/libevent.scm @@ -41,7 +41,7 @@ (define-public libevent (package (name "libevent") - (version "2.1.11") + (version "2.1.12") (source (origin (method url-fetch) (uri (string-append @@ -49,12 +49,13 @@ version "-stable/libevent-" version "-stable.tar.gz")) (sha256 (base32 - "0g988zqm45sj1hlhhz4il5z4dpi5dl74hzjwzl4md37a09iaqnx6")))) + "1fq30imk8zd26x8066di3kpc5zyfc5z6frr3zll685zcx4dxxrlj")))) (build-system gnu-build-system) (outputs '("out" "bin")) (arguments ;; This skips some of the tests which fail on armhf and aarch64. - '(#:configure-flags '("--disable-libevent-regress"))) + '(#:configure-flags '("--disable-libevent-regress" + "--disable-openssl"))) (inputs `(("python" ,python-wrapper))) ;for 'event_rpcgen.py' (native-inputs @@ -76,7 +77,7 @@ loop.") (define-public libev (package (name "libev") - (version "4.31") + (version "4.33") (source (origin (method url-fetch) (uri (string-append "http://dist.schmorp.de/libev/Attic/libev-" @@ -84,7 +85,7 @@ loop.") ".tar.gz")) (sha256 (base32 - "0nkfqv69wfyy2bpga4d53iqydycpik8jp8x6q70353hia8mmv1gd")))) + "1sjs4324is7fp21an4aas2z4dwsvs6z4xwrmp72vwpq1s6wbfzjh")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--disable-static"))) @@ -102,14 +103,14 @@ limited support for fork events.") (define-public libuv (package (name "libuv") - (version "1.35.0") + (version "1.38.1") (source (origin (method url-fetch) (uri (string-append "https://dist.libuv.org/dist/v" version "/libuv-v" version ".tar.gz")) (sha256 (base32 - "0126mfmaw3s92dsga60sydgwjmzwg9cd36n127pydmisah17v50f")))) + "0iy6yp9nrxpj643w7la3kl3j59ni59b0l4v6n23a63s8kqkpvkhf")))) (build-system gnu-build-system) (arguments '(#:configure-flags '("--disable-static") diff --git a/gnu/packages/libffi.scm b/gnu/packages/libffi.scm index d324892330..27bd79665a 100644 --- a/gnu/packages/libffi.scm +++ b/gnu/packages/libffi.scm @@ -50,7 +50,9 @@ name "-" version ".tar.gz")) (sha256 (base32 - "0mi0cpf8aa40ljjmzxb7im6dbj45bb0kllcd09xgmp834y9agyvj")))) + "0mi0cpf8aa40ljjmzxb7im6dbj45bb0kllcd09xgmp834y9agyvj")) + (patches (search-patches "libffi-3.3-powerpc-fixes.patch" + "libffi-float128-powerpc64le.patch")))) (build-system gnu-build-system) (arguments `(;; Prevent the build system from passing -march and -mtune to the diff --git a/gnu/packages/libidn.scm b/gnu/packages/libidn.scm index 8731ed3f83..b46cdfc0a5 100644 --- a/gnu/packages/libidn.scm +++ b/gnu/packages/libidn.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2017 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -33,14 +34,14 @@ (define-public libidn (package (name "libidn") - (version "1.35") + (version "1.36") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/libidn/libidn-" version ".tar.gz")) (sha256 (base32 - "07pyy0afqikfq51z5kbzbj9ldbd12mri0zvx0mfv3ds6bc0g26pi")))) + "0f20n634whpmdwr81c2r0vxxjwchgkvhsr1i8s2bm0ad6h473dhl")))) (build-system gnu-build-system) ;; FIXME: No Java and C# libraries are currently built. (arguments diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 9da4776d3d..ec3c8ffd36 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -1487,7 +1487,7 @@ providing the system administrator with some help in common tasks.") (define-public util-linux (package (name "util-linux") - (version "2.35.1") + (version "2.35.2") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/utils/" @@ -1495,7 +1495,7 @@ providing the system administrator with some help in common tasks.") "util-linux-" version ".tar.xz")) (sha256 (base32 - "1yfpy6bkab4jw61mpx48gfy24yrqp4a7arvpis8csrkk53fkxpnr")) + "12mm5qvkq1vpllfv99gq93lkxlvysp1yxgh1392dkg7nh8g47dr1")) (patches (search-patches "util-linux-tests.patch")) (modules '((guix build utils))) (snippet @@ -1513,7 +1513,10 @@ providing the system administrator with some help in common tasks.") "static")) ;2.9 MiB static .a libraries (arguments `(#:configure-flags (list "--disable-use-tty-group" - "--enable-fs-paths-default=/run/current-system/profile/sbin" + (string-append + "--enable-fs-paths-default=" + "/run/setuid-programs" + ":/run/current-system/profile/sbin") ;; Don't try to chown root:root mount and umount "--disable-makeinstall-chown" "--localstatedir=/var" diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index 1db01cea36..24d7c247f0 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -92,6 +92,68 @@ as \"x86_64-linux\"." (string-append "https://releases.llvm.org/" version "/" component "-" version ".src.tar.xz"))) +(define-public llvm-10 + (package + (name "llvm") + (version "10.0.1") + (source + (origin + (method url-fetch) + (uri (llvm-uri "llvm" version)) + (sha256 + (base32 + "1wydhbp9kyjp5y0rc627imxgkgqiv3dfirbqil9dgpnbaw5y7n65")))) + (build-system cmake-build-system) + (outputs '("out" "opt-viewer")) + (native-inputs + `(("python" ,python-2) ;bytes->str conversion in clang>=3.7 needs python-2 + ("perl" ,perl))) + (inputs + `(("libffi" ,libffi))) + (propagated-inputs + `(("zlib" ,zlib))) ;to use output from llvm-config + (arguments + `(#:configure-flags '("-DCMAKE_SKIP_BUILD_RPATH=FALSE" + "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE" + "-DBUILD_SHARED_LIBS:BOOL=TRUE" + "-DLLVM_ENABLE_FFI:BOOL=TRUE" + "-DLLVM_REQUIRES_RTTI=1" ; For some third-party utilities + "-DLLVM_INSTALL_UTILS=ON") ; Needed for rustc. + + ;; Don't use '-g' during the build, to save space. + #:build-type "Release" + #:phases + (modify-phases %standard-phases + (add-before 'build 'shared-lib-workaround + ;; Even with CMAKE_SKIP_BUILD_RPATH=FALSE, llvm-tblgen + ;; doesn't seem to get the correct rpath to be able to run + ;; from the build directory. Set LD_LIBRARY_PATH as a + ;; workaround. + (lambda _ + (setenv "LD_LIBRARY_PATH" + (string-append (getcwd) "/lib")) + #t)) + (add-after 'install 'install-opt-viewer + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (opt-viewer-out (assoc-ref outputs "opt-viewer")) + (opt-viewer-share-dir (string-append opt-viewer-out "/share")) + (opt-viewer-dir (string-append opt-viewer-share-dir "/opt-viewer"))) + (mkdir-p opt-viewer-share-dir) + (rename-file (string-append out "/share/opt-viewer") + opt-viewer-dir)) + #t))))) + (home-page "https://www.llvm.org") + (synopsis "Optimizing compiler infrastructure") + (description + "LLVM is a compiler infrastructure designed for compile-time, link-time, +runtime, and idle-time optimization of programs from arbitrary programming +languages. It currently supports compilation of C and C++ programs, using +front-ends derived from GCC 4.0.1. A new front-end for the C family of +languages is in development. The compiler infrastructure includes mirror sets +of programming tools as well as libraries with equivalent functionality.") + (license license:asl2.0))) ;with LLVM exceptions, see LICENSE.txt + (define* (clang-runtime-from-llvm llvm hash #:optional (patches '())) (package @@ -574,11 +636,11 @@ of programming tools as well as libraries with equivalent functionality.") (define-public clang-runtime-10 (clang-runtime-from-llvm llvm-10 - "0x9c531k6ww21s2mkdwqx1vbdjmx6d4wmfb8gdbj0wqa796sczba")) + "1yjqjri753w0fzmxcyz687nvd97sbc9rsqrxzpq720na47hwh3fr")) (define-public clang-10 (clang-from-llvm llvm-10 clang-runtime-10 - "08fbxa2a0kr3ni35ckppj0kyvlcyaywrhpqwcdrdy0z900mhcnw8" + "091bvcny2lh32zy8f3m9viayyhb2zannrndni7325rl85cwgr6pr" #:patches '("clang-10.0-libc-search-path.patch") #:tools-extra (origin @@ -587,7 +649,7 @@ of programming tools as well as libraries with equivalent functionality.") (package-version llvm-10))) (sha256 (base32 - "074ija5s2jsdn0k035r2dzmryjmqxdnyg4xwvaqych2bazv8rpxc"))))) + "06n1yp638rh24xdxv9v2df0qajxbjz4w59b7dd4ky36drwmpi4yh"))))) (define-public clang-toolchain-10 (make-clang-toolchain clang-10)) @@ -622,6 +684,36 @@ of programming tools as well as libraries with equivalent functionality.") (define-public clang-toolchain-9 (make-clang-toolchain clang-9)) +;; Default LLVM and Clang version. +(define-public llvm llvm-9) +(define-public clang-runtime clang-runtime-9) +(define-public clang clang-9) +(define-public clang-toolchain clang-toolchain-9) + +(define-public lld + (package + (name "lld") + (version (package-version llvm-10)) + (source (origin + (method url-fetch) + (uri (llvm-uri "lld" version)) + (sha256 + (base32 + "0ynzi35r4fckvp6842alpd43qr810j3728yfslc66fk2mbh4j52r")))) + (build-system cmake-build-system) + (inputs + `(("llvm" ,llvm-10))) + (arguments + `(#:build-type "Release" + ;; TODO: Tests require the lit tool, which isn't installed by the LLVM + ;; package. + #:tests? #f)) + (home-page "https://lld.llvm.org/") + (synopsis "Linker from the LLVM project") + (description "LLD is a high-performance linker, built as a set of reusable +components which highly leverage existing libraries in the larger LLVM Project.") + (license license:asl2.0))) ; With LLVM exception + (define-public llvm-8 (package (inherit llvm-9) diff --git a/gnu/packages/make-bootstrap.scm b/gnu/packages/make-bootstrap.scm index b2d3e2a326..04fdbce429 100644 --- a/gnu/packages/make-bootstrap.scm +++ b/gnu/packages/make-bootstrap.scm @@ -375,10 +375,6 @@ for `sh' in $PATH, and without nscd, and with static NSS modules." (package-arguments binutils)) ((#:configure-flags flags _ ...) flags))) - #:make-flags ,(match (memq #:make-flags (package-arguments binutils)) - ((#:make-flags flags _ ...) - flags) - (_ ''())) #:strip-flags '("--strip-all") #:phases (modify-phases %standard-phases (add-before 'configure 'all-static diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index d3f3539e26..b1680db063 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -476,35 +476,38 @@ precision floating point numbers.") (build-system gnu-build-system) (arguments (let ((system (%current-system))) - (cond - ((or (string-prefix? "aarch64" system) - (string-prefix? "powerpc" system)) - ;; Some sparse matrix tests are failing on AArch64 and PowerPC: - ;; https://lists.gnu.org/archive/html/bug-gsl/2020-04/msg00001.html - '(#:phases (modify-phases %standard-phases - (add-before 'check 'disable-failing-tests - (lambda _ - (substitute* "spmatrix/test.c" - ((".*test_complex.*") "\n")) - #t))))) - ((string-prefix? "i686" system) - ;; There are rounding issues with these tests on i686: - ;; https://lists.gnu.org/archive/html/bug-gsl/2016-10/msg00000.html - ;; https://lists.gnu.org/archive/html/bug-gsl/2020-04/msg00000.html - '(#:phases (modify-phases %standard-phases - (add-before 'check 'disable-failing-tests - (lambda _ - (substitute* "linalg/test.c" - ((".*gsl_test\\(test_LU_decomp.*") "\n") - ((".*gsl_test\\(test_LUc_decomp.*") "\n") - ((".*gsl_test\\(test_cholesky_decomp.*") "\n") - ((".*gsl_test\\(test_COD_lssolve2.*") "\n")) - (substitute* "spmatrix/test.c" - ((".*test_all.*") "\n") - ((".*test_float.*") "\n") - ((".*test_complex.*") "\n")) - #t))))) - (else '())))) + `(#:configure-flags (list "--disable-static") ;halves package size + #:phases + (modify-phases %standard-phases + ,@(cond + ((or (string-prefix? "aarch64" system) + (string-prefix? "powerpc" system)) + ;; Some sparse matrix tests are failing on AArch64 and PowerPC: + ;; https://lists.gnu.org/archive/html/bug-gsl/2020-04/msg00001.html + '((add-before 'check 'disable-failing-tests + (lambda _ + (substitute* "spmatrix/test.c" + ((".*test_complex.*") "\n")) + #t)))) + + ((string-prefix? "i686" system) + ;; There are rounding issues with these tests on i686: + ;; https://lists.gnu.org/archive/html/bug-gsl/2016-10/msg00000.html + ;; https://lists.gnu.org/archive/html/bug-gsl/2020-04/msg00000.html + '((add-before 'check 'disable-failing-tests + (lambda _ + (substitute* "linalg/test.c" + ((".*gsl_test\\(test_LU_decomp.*") "\n") + ((".*gsl_test\\(test_LUc_decomp.*") "\n") + ((".*gsl_test\\(test_cholesky_decomp.*") "\n") + ((".*gsl_test\\(test_COD_lssolve2.*") "\n")) + (substitute* "spmatrix/test.c" + ((".*test_all.*") "\n") + ((".*test_float.*") "\n") + ((".*test_complex.*") "\n")) + #t)))) + + (else '())))))) (home-page "https://www.gnu.org/software/gsl/") (synopsis "Numerical library for C and C++") (description @@ -3625,16 +3628,17 @@ parts of it.") (define-public openblas (package (name "openblas") - (version "0.3.9") + (version "0.3.10") (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/openblas/v" version "/OpenBLAS%20" - version "%20version.tar.gz")) - (file-name (string-append name "-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/xianyi/OpenBLAS") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "14iz9xnrb9xiwgj84j94mc74gg0zn2vsy9fmsijxxma1n7dck4w3")))) + "174id98ga82bhz2v7sy9yj6pqy0h0088p3mkdikip69p9rh3d17b")))) (build-system gnu-build-system) (arguments `(#:test-target "test" diff --git a/gnu/packages/multiprecision.scm b/gnu/packages/multiprecision.scm index b3a5ec5894..4aa4c6be56 100644 --- a/gnu/packages/multiprecision.scm +++ b/gnu/packages/multiprecision.scm @@ -38,7 +38,7 @@ (define-public gmp (package (name "gmp") - (version "6.2.0") + (version "6.2.1") (source (origin (method url-fetch) (uri @@ -46,7 +46,7 @@ version ".tar.xz")) (sha256 (base32 - "09hmg8k63mbfrx1x3yy6y1yzbbq85kw5avbibhcgrg9z3ganr3i5")) + "1wml97fdmpcynsbw9yl77rj29qibfp652d0w3222zlfx5j8jjj7x")) (patches (search-patches "gmp-faulty-test.patch")))) (build-system gnu-build-system) (native-inputs `(("m4" ,m4))) @@ -113,13 +113,13 @@ It is aimed at use in, for example, cryptography and computational algebra.") (define-public mpfr (package (name "mpfr") - (version "4.0.2") + (version "4.1.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/mpfr/mpfr-" version ".tar.xz")) (sha256 (base32 - "12m3amcavhpqygc499s3fzqlb8f2j2rr7fkqsm10xbjfc04fffqx")))) + "0zwaanakrqjf84lfr5hfsdr7hncwv9wj0mchlr7cmxigfgqs760c")))) (build-system gnu-build-system) (outputs '("out" "debug")) (propagated-inputs `(("gmp" ,gmp))) ; <mpfr.h> refers to <gmp.h> @@ -134,14 +134,14 @@ correct rounding.") (define-public mpc (package (name "mpc") - (version "1.1.0") + (version "1.2.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/mpc/mpc-" version ".tar.gz")) (sha256 (base32 - "0biwnhjm3rx3hc0rfpvyniky4lpzsvdcwhmcn7f0h4iw2hwcb1b9")))) + "0n846hqfqvmsmim7qdlms0qr86f1hck19p12nq3g3z2x74n3sl0p")))) (build-system gnu-build-system) (outputs '("out" "debug")) (propagated-inputs `(("gmp" ,gmp) ; <mpc.h> refers to both diff --git a/gnu/packages/nettle.scm b/gnu/packages/nettle.scm index f5e7188ff0..0e4bfced7c 100644 --- a/gnu/packages/nettle.scm +++ b/gnu/packages/nettle.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2017, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; ;;; This file is part of GNU Guix. ;;; @@ -75,14 +75,14 @@ themselves.") ;; This version is not API-compatible with version 2. In particular, lsh ;; cannot use it yet. So keep it separate. (package (inherit nettle-2) - (version "3.5.1") + (version "3.6") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/nettle/nettle-" version ".tar.gz")) (sha256 (base32 - "06clvkdfxhlbagn4afssylmn5vrak59dlmnvy8b2xc31hycs3k3m")))) + "1wg3sprl0bzy49cmbwwm91vw67hk1x5i3ksdygsciyxz587hsk6j")))) (arguments (substitute-keyword-arguments (package-arguments nettle-2) ((#:configure-flags flags) diff --git a/gnu/packages/node.scm b/gnu/packages/node.scm index f04e39bbd5..cfcd08e94f 100644 --- a/gnu/packages/node.scm +++ b/gnu/packages/node.scm @@ -48,14 +48,14 @@ (define-public node (package (name "node") - (version "10.20.0") + (version "10.22.0") (source (origin (method url-fetch) (uri (string-append "https://nodejs.org/dist/v" version "/node-v" version ".tar.xz")) (sha256 (base32 - "0cvjwnl0wkcsyw3kannbdv01s235wrnp11n2s6swzjx95gpichfi")) + "1nz18fa550li10r0kzsm28c2rvvq61nq8bqdygip0rmvbi2paxg0")) (modules '((guix build utils))) (snippet `(begin @@ -201,24 +201,6 @@ devices.") (properties '((max-silent-time . 7200) ;2h, needed on ARM (timeout . 21600))))) ;6h -;; TODO: Make this the default node on core-updates. This cannot be done on -;; master since this version of node requires a newer nghttp2 library at link -;; time. -(define-public node-10.22 - (package - (inherit node) - (version "10.22.1") - (source (origin - (inherit (package-source node)) - (uri (string-append "https://nodejs.org/dist/v" version - "/node-v" version ".tar.xz")) - (sha256 - (base32 - "0pr569qiabr4m7k38s7rwi3iyzrc5jmx19z2z0k7n4xfvhjlfzzl")))) - (inputs - (alist-replace "nghttp2" (list nghttp2-1.41 "lib") - (package-inputs node))))) - (define-public libnode (package (inherit node) diff --git a/gnu/packages/openldap.scm b/gnu/packages/openldap.scm index 6e863388d8..9c9b1f07b3 100644 --- a/gnu/packages/openldap.scm +++ b/gnu/packages/openldap.scm @@ -61,8 +61,7 @@ (define-public openldap (package (name "openldap") - (replacement openldap-2.4.50) - (version "2.4.49") + (version "2.4.50") (source (origin (method url-fetch) @@ -79,7 +78,7 @@ "openldap-release/openldap-" version ".tgz"))) (sha256 (base32 - "0vp524rsngdcykf6ki7vprsyg7gj8z7hszg8xwxz50219fa1gcg3")))) + "1f46nlfwmys110j36sifm7ah8m8f3s10c3vaiikmmigmifapvdaw")))) (build-system gnu-build-system) (inputs `(("bdb" ,bdb-5.3) ("cyrus-sasl" ,cyrus-sasl) @@ -127,19 +126,6 @@ (license openldap2.8) (home-page "https://www.openldap.org/"))) -(define openldap-2.4.50 - (package - (inherit openldap) - (version "2.4.50") - (source (origin - (method url-fetch) - (uri (string-append "https://www.openldap.org/software/download/" - "OpenLDAP/openldap-release/openldap-" version - ".tgz")) - (sha256 - (base32 - "1f46nlfwmys110j36sifm7ah8m8f3s10c3vaiikmmigmifapvdaw")))))) - (define-public nss-pam-ldapd (package (name "nss-pam-ldapd") diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index 7a93a79007..8b95127163 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -398,7 +398,7 @@ $(prefix)/etc/init.d\n"))) ("glibc-utf8-locales" ,glibc-utf8-locales))) (propagated-inputs - `(("gnutls" ,(if (%current-target-system) gnutls-3.6.14 gnutls)) + `(("gnutls" ,gnutls) ("guile-gcrypt" ,guile-gcrypt) ("guile-json" ,guile-json-4) ("guile-sqlite3" ,guile-sqlite3) diff --git a/gnu/packages/patches/dbus-CVE-2020-12049.patch b/gnu/packages/patches/dbus-CVE-2020-12049.patch deleted file mode 100644 index 71280144a1..0000000000 --- a/gnu/packages/patches/dbus-CVE-2020-12049.patch +++ /dev/null @@ -1,58 +0,0 @@ -Fix CVE-2020-12049: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-12049 -https://lists.freedesktop.org/archives/ftp-release/2020-June/000753.html - -Taken from upstream: - -https://gitlab.freedesktop.org/dbus/dbus/-/commit/272d484283883fa9ff95b69d924fff6cd34842f5 - -diff --git a/dbus/dbus-sysdeps-unix.c b/dbus/dbus-sysdeps-unix.c ---- a/dbus/dbus-sysdeps-unix.c -+++ b/dbus/dbus-sysdeps-unix.c -@@ -435,18 +435,6 @@ _dbus_read_socket_with_unix_fds (DBusSocket fd, - struct cmsghdr *cm; - dbus_bool_t found = FALSE; - -- if (m.msg_flags & MSG_CTRUNC) -- { -- /* Hmm, apparently the control data was truncated. The bad -- thing is that we might have completely lost a couple of fds -- without chance to recover them. Hence let's treat this as a -- serious error. */ -- -- errno = ENOSPC; -- _dbus_string_set_length (buffer, start); -- return -1; -- } -- - for (cm = CMSG_FIRSTHDR(&m); cm; cm = CMSG_NXTHDR(&m, cm)) - if (cm->cmsg_level == SOL_SOCKET && cm->cmsg_type == SCM_RIGHTS) - { -@@ -501,6 +489,26 @@ _dbus_read_socket_with_unix_fds (DBusSocket fd, - if (!found) - *n_fds = 0; - -+ if (m.msg_flags & MSG_CTRUNC) -+ { -+ unsigned int i; -+ -+ /* Hmm, apparently the control data was truncated. The bad -+ thing is that we might have completely lost a couple of fds -+ without chance to recover them. Hence let's treat this as a -+ serious error. */ -+ -+ /* We still need to close whatever fds we *did* receive, -+ * otherwise they'll never get closed. (CVE-2020-12049) */ -+ for (i = 0; i < *n_fds; i++) -+ close (fds[i]); -+ -+ *n_fds = 0; -+ errno = ENOSPC; -+ _dbus_string_set_length (buffer, start); -+ return -1; -+ } -+ - /* put length back (doesn't actually realloc) */ - _dbus_string_set_length (buffer, start + bytes_read); - diff --git a/gnu/packages/patches/docbook-xsl-nonrecursive-string-subst.patch b/gnu/packages/patches/docbook-xsl-nonrecursive-string-subst.patch index 4199dd18a5..fed4b76429 100644 --- a/gnu/packages/patches/docbook-xsl-nonrecursive-string-subst.patch +++ b/gnu/packages/patches/docbook-xsl-nonrecursive-string-subst.patch @@ -5,7 +5,7 @@ https://bugzilla.samba.org/show_bug.cgi?id=9515 https://bugzilla.gnome.org/show_bug.cgi?id=736077 (for xsltproc) Patch copied from Debian: -https://anonscm.debian.org/cgit/collab-maint/docbook-xsl.git/tree/debian/patches/765567_non-recursive_string_subst.patch +https://salsa.debian.org/debian/docbook-xsl/-/blob/master/debian/patches/765567_non-recursive_string_subst.patch Description: use EXSLT "replace" function when available A recursive implementation of string.subst is problematic, @@ -15,11 +15,12 @@ Bug-Debian: https://bugs.debian.org/750593 --- a/lib/lib.xsl +++ b/lib/lib.xsl -@@ -10,7 +10,10 @@ +@@ -6,7 +6,11 @@ + This module implements DTD-independent functions - ******************************************************************** --> --<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> +- ******************************************************************** --><xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0"> ++ ******************************************************************** --> +<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" + xmlns:str="http://exslt.org/strings" + exclude-result-prefixes="str" @@ -27,7 +28,7 @@ Bug-Debian: https://bugs.debian.org/750593 <xsl:template name="dot.count"> <!-- Returns the number of "." characters in a string --> -@@ -56,6 +59,9 @@ +@@ -52,6 +56,9 @@ <xsl:param name="replacement"/> <xsl:choose> diff --git a/gnu/packages/patches/docbook-xsl-support-old-url.patch b/gnu/packages/patches/docbook-xsl-support-old-url.patch new file mode 100644 index 0000000000..5b7dda458f --- /dev/null +++ b/gnu/packages/patches/docbook-xsl-support-old-url.patch @@ -0,0 +1,17 @@ +Docbook 1.79.2 makes very few changes apart from changing the canonical URL +to cdn.docbook.org. This patch adds support for the previous URL to avoid +breaking packages that still use that. + +Adapted from Debian: +https://salsa.debian.org/debian/docbook-xsl/-/blob/master/debian/patches/0005-catalog.xml-Compatibility-with-1.79.1-or-earlier.patch + +--- a/catalog.xml ++++ b/catalog.xml +@@ -5,4 +5,7 @@ + <rewriteSystem systemIdStartString="http://cdn.docbook.org/release/xsl/current/" rewritePrefix="./"/> + <rewriteURI uriStartString="http://cdn.docbook.org/release/xsl/1.79.2/" rewritePrefix="./"/> + <rewriteSystem systemIdStartString="http://cdn.docbook.org/release/xsl/1.79.2/" rewritePrefix="./"/> ++ <!-- Also support old URI of v1.79.1 or earlier --> ++ <rewriteURI uriStartString="http://docbook.sourceforge.net/release/xsl/current/" rewritePrefix="./"/> ++ <rewriteSystem systemIdStartString="http://docbook.sourceforge.net/release/xsl/current/" rewritePrefix="./"/> + </catalog> diff --git a/gnu/packages/patches/glibc-bootstrap-system.patch b/gnu/packages/patches/glibc-bootstrap-system.patch index 39eb47ef26..fcaf17132d 100644 --- a/gnu/packages/patches/glibc-bootstrap-system.patch +++ b/gnu/packages/patches/glibc-bootstrap-system.patch @@ -3,17 +3,10 @@ and popen(3) need to be tweaked to use the right shell. For the bootstrap glibc, we just use whatever `sh' can be found in $PATH. The final glibc instead uses the hard-coded absolute file name of `bash'. ---- a/sysdeps/posix/system.c -+++ b/sysdeps/posix/system.c -@@ -140,7 +140,7 @@ do_system (const char *line) - __posix_spawnattr_setflags (&spawn_attr, - POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK); - -- status = __posix_spawn (&pid, SHELL_PATH, 0, &spawn_attr, -+ status = posix_spawnp (&pid, SHELL_NAME, 0, &spawn_attr, - (char *const[]){ (char*) SHELL_NAME, - (char*) "-c", - (char *) line, NULL }, +In addition, status should be initialized to 0 and not -1. + +diff --git a/libio/iopopen.c b/libio/iopopen.c +index ebc381ed7c..e0d3ed1bc3 100644 --- a/libio/iopopen.c +++ b/libio/iopopen.c @@ -85,7 +85,7 @@ spawn_process (posix_spawn_file_actions_t *fa, FILE *fp, const char *command, @@ -25,4 +18,25 @@ instead uses the hard-coded absolute file name of `bash'. (char *const[]){ (char*) "sh", (char*) "-c", (char *) command, NULL }, __environ) != 0) return false; - +diff --git a/sysdeps/posix/system.c b/sysdeps/posix/system.c +index a03f478fc7..94da6facf3 100644 +--- a/sysdeps/posix/system.c ++++ b/sysdeps/posix/system.c +@@ -101,7 +101,7 @@ cancel_handler (void *arg) + static int + do_system (const char *line) + { +- int status = -1; ++ int status = 0; + int ret; + pid_t pid; + struct sigaction sa; +@@ -145,7 +145,7 @@ do_system (const char *line) + __posix_spawnattr_setflags (&spawn_attr, + POSIX_SPAWN_SETSIGDEF | POSIX_SPAWN_SETSIGMASK); + +- ret = __posix_spawn (&pid, SHELL_PATH, 0, &spawn_attr, ++ ret = posix_spawnp (&pid, SHELL_NAME, 0, &spawn_attr, + (char *const[]){ (char *) SHELL_NAME, + (char *) "-c", + (char *) line, NULL }, diff --git a/gnu/packages/patches/icu4c-CVE-2020-10531.patch b/gnu/packages/patches/icu4c-CVE-2020-10531.patch deleted file mode 100644 index c2ab923bdc..0000000000 --- a/gnu/packages/patches/icu4c-CVE-2020-10531.patch +++ /dev/null @@ -1,127 +0,0 @@ -Fix CVE-2020-10531: - -https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2020-10531 - -Patch copied from upstream source repository (changes to the test suite -are commented out): - -https://github.com/unicode-org/icu/commit/b7d08bc04a4296982fcef8b6b8a354a9e4e7afca - -From b7d08bc04a4296982fcef8b6b8a354a9e4e7afca Mon Sep 17 00:00:00 2001 -From: Frank Tang <ftang@chromium.org> -Date: Sat, 1 Feb 2020 02:39:04 +0000 -Subject: [PATCH] ICU-20958 Prevent SEGV_MAPERR in append - -See #971 ---- - icu4c/source/common/unistr.cpp | 6 ++- - icu4c/source/test/intltest/ustrtest.cpp | 62 +++++++++++++++++++++++++ - icu4c/source/test/intltest/ustrtest.h | 1 + - 3 files changed, 68 insertions(+), 1 deletion(-) - -diff --git a/icu4c/source/common/unistr.cpp b/icu4c/source/common/unistr.cpp -index 901bb3358ba..077b4d6ef20 100644 ---- a/icu4c/source/common/unistr.cpp -+++ b/icu4c/source/common/unistr.cpp -@@ -1563,7 +1563,11 @@ UnicodeString::doAppend(const UChar *srcChars, int32_t srcStart, int32_t srcLeng - } - - int32_t oldLength = length(); -- int32_t newLength = oldLength + srcLength; -+ int32_t newLength; -+ if (uprv_add32_overflow(oldLength, srcLength, &newLength)) { -+ setToBogus(); -+ return *this; -+ } - - // Check for append onto ourself - const UChar* oldArray = getArrayStart(); -#diff --git a/icu4c/source/test/intltest/ustrtest.cpp b/icu4c/source/test/intltest/ustrtest.cpp -#index b6515ea813c..ad38bdf53a3 100644 -#--- a/icu4c/source/test/intltest/ustrtest.cpp -#+++ b/icu4c/source/test/intltest/ustrtest.cpp -#@@ -67,6 +67,7 @@ void UnicodeStringTest::runIndexedTest( int32_t index, UBool exec, const char* & -# TESTCASE_AUTO(TestWCharPointers); -# TESTCASE_AUTO(TestNullPointers); -# TESTCASE_AUTO(TestUnicodeStringInsertAppendToSelf); -#+ TESTCASE_AUTO(TestLargeAppend); -# TESTCASE_AUTO_END; -# } -# -#@@ -2310,3 +2311,64 @@ void UnicodeStringTest::TestUnicodeStringInsertAppendToSelf() { -# str.insert(2, sub); -# assertEquals("", u"abbcdcde", str); -# } -#+ -#+void UnicodeStringTest::TestLargeAppend() { -#+ if(quick) return; -#+ -#+ IcuTestErrorCode status(*this, "TestLargeAppend"); -#+ // Make a large UnicodeString -#+ int32_t len = 0xAFFFFFF; -#+ UnicodeString str; -#+ char16_t *buf = str.getBuffer(len); -#+ // A fast way to set buffer to valid Unicode. -#+ // 4E4E is a valid unicode character -#+ uprv_memset(buf, 0x4e, len * 2); -#+ str.releaseBuffer(len); -#+ UnicodeString dest; -#+ // Append it 16 times -#+ // 0xAFFFFFF times 16 is 0xA4FFFFF1, -#+ // which is greater than INT32_MAX, which is 0x7FFFFFFF. -#+ int64_t total = 0; -#+ for (int32_t i = 0; i < 16; i++) { -#+ dest.append(str); -#+ total += len; -#+ if (total <= INT32_MAX) { -#+ assertFalse("dest is not bogus", dest.isBogus()); -#+ } else { -#+ assertTrue("dest should be bogus", dest.isBogus()); -#+ } -#+ } -#+ dest.remove(); -#+ total = 0; -#+ for (int32_t i = 0; i < 16; i++) { -#+ dest.append(str); -#+ total += len; -#+ if (total + len <= INT32_MAX) { -#+ assertFalse("dest is not bogus", dest.isBogus()); -#+ } else if (total <= INT32_MAX) { -#+ // Check that a string of exactly the maximum size works -#+ UnicodeString str2; -#+ int32_t remain = INT32_MAX - total; -#+ char16_t *buf2 = str2.getBuffer(remain); -#+ if (buf2 == nullptr) { -#+ // if somehow memory allocation fail, return the test -#+ return; -#+ } -#+ uprv_memset(buf2, 0x4e, remain * 2); -#+ str2.releaseBuffer(remain); -#+ dest.append(str2); -#+ total += remain; -#+ assertEquals("When a string of exactly the maximum size works", (int64_t)INT32_MAX, total); -#+ assertEquals("When a string of exactly the maximum size works", INT32_MAX, dest.length()); -#+ assertFalse("dest is not bogus", dest.isBogus()); -#+ -#+ // Check that a string size+1 goes bogus -#+ str2.truncate(1); -#+ dest.append(str2); -#+ total++; -#+ assertTrue("dest should be bogus", dest.isBogus()); -#+ } else { -#+ assertTrue("dest should be bogus", dest.isBogus()); -#+ } -#+ } -#+} -#diff --git a/icu4c/source/test/intltest/ustrtest.h b/icu4c/source/test/intltest/ustrtest.h -#index 218befdcc68..4a356a92c7a 100644 -#--- a/icu4c/source/test/intltest/ustrtest.h -#+++ b/icu4c/source/test/intltest/ustrtest.h -#@@ -97,6 +97,7 @@ class UnicodeStringTest: public IntlTest { -# void TestWCharPointers(); -# void TestNullPointers(); -# void TestUnicodeStringInsertAppendToSelf(); -#+ void TestLargeAppend(); -# }; -# -# #endif diff --git a/gnu/packages/patches/jsoncpp-fix-inverted-case.patch b/gnu/packages/patches/jsoncpp-fix-inverted-case.patch deleted file mode 100644 index e4897de1b8..0000000000 --- a/gnu/packages/patches/jsoncpp-fix-inverted-case.patch +++ /dev/null @@ -1,22 +0,0 @@ -This patch fixes a bug and related test failure on platforms where 'char' -is unsigned. - -Taken from upstream: -https://github.com/open-source-parsers/jsoncpp/commit/f11611c8785082ead760494cba06196f14a06dcb - -diff --git a/src/lib_json/json_writer.cpp b/src/lib_json/json_writer.cpp -index 8e06cca2..56195dc1 100644 ---- a/src/lib_json/json_writer.cpp -+++ b/src/lib_json/json_writer.cpp -@@ -178,8 +178,9 @@ static bool isAnyCharRequiredQuoting(char const* s, size_t n) { - - char const* const end = s + n; - for (char const* cur = s; cur < end; ++cur) { -- if (*cur == '\\' || *cur == '\"' || *cur < ' ' || -- static_cast<unsigned char>(*cur) < 0x80) -+ if (*cur == '\\' || *cur == '\"' || -+ static_cast<unsigned char>(*cur) < ' ' || -+ static_cast<unsigned char>(*cur) >= 0x80) - return true; - } - return false; diff --git a/gnu/packages/patches/libffi-float128-powerpc64le.patch b/gnu/packages/patches/libffi-float128-powerpc64le.patch new file mode 100644 index 0000000000..4fd32b0102 --- /dev/null +++ b/gnu/packages/patches/libffi-float128-powerpc64le.patch @@ -0,0 +1,58 @@ +From de93adfb6f48100946bba2c3abad2a77a0cfde0b Mon Sep 17 00:00:00 2001 +From: Fabrice Fontaine <fontaine.fabrice@gmail.com> +Date: Sun, 24 Nov 2019 09:52:01 +0100 +Subject: [PATCH] ffi_powerpc.h: fix build failure with powerpc7 + +This is a patch pulled down from the following: +https://github.com/buildroot/buildroot/blob/78926f610b1411b03464152472fd430012deb9ac/package/libffi/0004-ffi_powerpc.h-fix-build-failure-with-powerpc7.patch + +This issue is being hit on OpenBMC code when pulling the latest +libffi tag and building on a P8 ppc64le machine. I verified this +patch fixes the issue we are seeing. + +Below is the original commit message: + +Sicne commit 73dd43afc8a447ba98ea02e9aad4c6898dc77fb0, build on powerpc7 +fails on: + +In file included from ../src/powerpc/ffi.c:33:0: +../src/powerpc/ffi_powerpc.h:61:9: error: '_Float128' is not supported on this target + typedef _Float128 float128; + ^~~~~~~~~ + +Fix this build failure by checking for __HAVE_FLOAT128 before using +_Float128, as _Float128 is enabled only on specific conditions, see +output/host/powerpc64-buildroot-linux-gnu/sysroot/usr/include/bits/floatn.h: + + /* Defined to 1 if the current compiler invocation provides a + floating-point type with the IEEE 754 binary128 format, and this glibc + includes corresponding *f128 interfaces for it. */ + #if defined _ARCH_PWR8 && defined __LITTLE_ENDIAN__ && (_CALL_ELF == 2) \ + && defined __FLOAT128__ && !defined __NO_LONG_DOUBLE_MATH + # define __HAVE_FLOAT128 1 + #else + # define __HAVE_FLOAT128 0 + #endif + +Fixes: + - http://autobuild.buildroot.org/results/5c9dd8fb3b6a128882b6250f197c80232d8a3b53 + +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> +Signed-off-by: Andrew Geissler <geissonator@yahoo.com> +--- + src/powerpc/ffi_powerpc.h | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/src/powerpc/ffi_powerpc.h b/src/powerpc/ffi_powerpc.h +index 8e2f2f0e..960a5c42 100644 +--- a/src/powerpc/ffi_powerpc.h ++++ b/src/powerpc/ffi_powerpc.h +@@ -57,7 +57,7 @@ typedef union + double d; + } ffi_dblfl; + +-#if defined(__FLOAT128_TYPE__) ++#if defined(__FLOAT128_TYPE__) && defined(__HAVE_FLOAT128) + typedef _Float128 float128; + #elif defined(__FLOAT128__) + typedef __float128 float128; diff --git a/gnu/packages/patches/meson-for-build-rpath.patch b/gnu/packages/patches/meson-for-build-rpath.patch deleted file mode 100644 index ef9a73f07c..0000000000 --- a/gnu/packages/patches/meson-for-build-rpath.patch +++ /dev/null @@ -1,24 +0,0 @@ -This patch removes a part of meson that clears the rpath upon installation. -This will only be applied to a special version of meson, used for the -meson-build-system. - -Original patch for Meson 0.42.0 by Peter Mikkelsen <petermikkelsen10@gmail.com> - ---- meson-0.47.1/mesonbuild/minstall.py.old 2018-08-10 11:01:27.812327013 +0200 -+++ meson-0.47.1/mesonbuild/minstall.py 2018-08-10 11:01:51.940368505 +0200 -@@ -436,15 +436,6 @@ - print("Symlink creation does not work on this platform. " - "Skipping all symlinking.") - printed_symlink_error = True -- if os.path.isfile(outname): -- try: -- depfixer.fix_rpath(outname, install_rpath, final_path, -- install_name_mappings, verbose=False) -- except SystemExit as e: -- if isinstance(e.code, int) and e.code == 0: -- pass -- else: -- raise - - def run(args): - parser = buildparser() diff --git a/gnu/packages/patches/python-3-hurd-configure.patch b/gnu/packages/patches/python-3-hurd-configure.patch new file mode 100644 index 0000000000..aa25a401c5 --- /dev/null +++ b/gnu/packages/patches/python-3-hurd-configure.patch @@ -0,0 +1,27 @@ +Upstream status: Not upstreamed. + +The build system refuses to cross-compile for unknown targets +even though it works fine. Add GNU/Hurd target. + +--- Python-3.8.5/configure.orig 2020-10-26 14:06:09.665423525 +0100 ++++ Python-3.8.5/configure 2020-10-26 14:08:30.987765738 +0100 +@@ -3278,6 +3278,9 @@ + *-*-vxworks*) + ac_sys_system=VxWorks + ;; ++ *-*-gnu) ++ ac_sys_system=GNU ++ ;; + *) + # for now, limit cross builds to known configurations + MACHDEP="unknown" +@@ -3328,6 +3331,9 @@ + *-*-vxworks*) + _host_cpu=$host_cpu + ;; ++ *-*-gnu) ++ _host_cpu=$host_cpu ++ ;; + *) + # for now, limit cross builds to known configurations + MACHDEP="unknown" diff --git a/gnu/packages/patches/python-babel-fix-parse-future-test.patch b/gnu/packages/patches/python-babel-fix-parse-future-test.patch new file mode 100644 index 0000000000..8a90166ec5 --- /dev/null +++ b/gnu/packages/patches/python-babel-fix-parse-future-test.patch @@ -0,0 +1,68 @@ +From 7bdaa28a55e8d8228d5434effa4b1473ab7b3669 Mon Sep 17 00:00:00 2001 +From: Felix Schwarz <felix.schwarz@oss.schwarz.eu> +Date: Tue, 5 May 2020 08:05:56 +0000 +Subject: [PATCH] fix tests when using Python 3.9a6 + +In Python 3.9a6 integer values for future flags were changed to prevent +collision with compiler flags. We need to retrieve these at runtime so +the test suite works with Python <= 3.8 as well as Python 3.9. +--- + tests/test_util.py | 17 ++++++++++++----- + 1 file changed, 12 insertions(+), 5 deletions(-) + +diff --git a/tests/test_util.py b/tests/test_util.py +index a6a4450c..b9343aaa 100644 +--- a/tests/test_util.py ++++ b/tests/test_util.py +@@ -11,6 +11,7 @@ + # individuals. For the exact contribution history, see the revision + # history and logs, available at http://babel.edgewall.org/log/. + ++import __future__ + import unittest + + import pytest +@@ -20,6 +21,12 @@ + from babel.util import parse_future_flags + + ++class _FF: ++ division = __future__.division.compiler_flag ++ print_function = __future__.print_function.compiler_flag ++ with_statement = __future__.with_statement.compiler_flag ++ unicode_literals = __future__.unicode_literals.compiler_flag ++ + def test_distinct(): + assert list(util.distinct([1, 2, 1, 3, 4, 4])) == [1, 2, 3, 4] + assert list(util.distinct('foobar')) == ['f', 'o', 'b', 'a', 'r'] +@@ -70,25 +77,25 @@ def test_parse_encoding_non_ascii(): + from __future__ import print_function, + division, with_statement, + unicode_literals +-''', 0x10000 | 0x2000 | 0x8000 | 0x20000), ++''', _FF.print_function | _FF.division | _FF.with_statement | _FF.unicode_literals), + (''' + from __future__ import print_function, division + print('hello') +-''', 0x10000 | 0x2000), ++''', _FF.print_function | _FF.division), + (''' + from __future__ import print_function, division, unknown,,,,, + print 'hello' +-''', 0x10000 | 0x2000), ++''', _FF.print_function | _FF.division), + (''' + from __future__ import ( + print_function, + division) +-''', 0x10000 | 0x2000), ++''', _FF.print_function | _FF.division), + (''' + from __future__ import \\ + print_function, \\ + division +-''', 0x10000 | 0x2000), ++''', _FF.print_function | _FF.division), + ]) + def test_parse_future(source, result): + fp = BytesIO(source.encode('latin-1')) diff --git a/gnu/packages/patches/zziplib-CVE-2018-16548.patch b/gnu/packages/patches/zziplib-CVE-2018-16548.patch deleted file mode 100644 index a17c6a9768..0000000000 --- a/gnu/packages/patches/zziplib-CVE-2018-16548.patch +++ /dev/null @@ -1,49 +0,0 @@ -The following 3 patches applied to 0.13.69 in this order, combined: -https://github.com/gdraheim/zziplib/commit/9411bde3e4a70a81ff3ffd256b71927b2d90dcbb.patch -https://github.com/gdraheim/zziplib/commit/d2e5d5c53212e54a97ad64b793a4389193fec687.patch -https://github.com/gdraheim/zziplib/commit/0e1dadb05c1473b9df2d7b8f298dab801778ef99.patch - -diff --git a/test/test.zip b/test/test.zip -index 2c992ea..952d475 100644 -Binary files a/test/test.zip and b/test/test.zip differ -diff --git a/zzip/zip.c b/zzip/zip.c -index 14e2e06..f97a40a 100644 ---- a/zzip/zip.c -+++ b/zzip/zip.c -@@ -472,9 +472,15 @@ __zzip_parse_root_directory(int fd, - } else - { - if (io->fd.seeks(fd, zz_rootseek + zz_offset, SEEK_SET) < 0) -+ { -+ free(hdr0); - return ZZIP_DIR_SEEK; -+ } - if (io->fd.read(fd, &dirent, sizeof(dirent)) < __sizeof(dirent)) -+ { -+ free(hdr0); - return ZZIP_DIR_READ; -+ } - d = &dirent; - } - -@@ -574,11 +580,18 @@ __zzip_parse_root_directory(int fd, - - if (hdr_return) - *hdr_return = hdr0; -+ else -+ { -+ /* If it is not assigned to *hdr_return, it will never be free()'d */ -+ free(hdr0); -+ } - } /* else zero (sane) entries */ -+ else -+ free(hdr0); - # ifndef ZZIP_ALLOW_MODULO_ENTRIES -- return (entries != zz_entries ? ZZIP_CORRUPTED : 0); -+ return (entries != zz_entries) ? ZZIP_CORRUPTED : 0; - # else -- return ((entries & (unsigned)0xFFFF) != zz_entries ? ZZIP_CORRUPTED : 0); -+ return ((entries & (unsigned)0xFFFF) != zz_entries) ? ZZIP_CORRUPTED : 0; - # endif - } - diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index d1c913435f..f4cba62777 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -654,25 +654,15 @@ by @code{binstar}, @code{binstar-build}, and @code{chalmers}.") (uri (pypi-uri "Babel" version)) (sha256 (base32 - "0f0f2vvs1mpdpz2c0mg1mnc3sih8bizmc1h9m67kdsnqs3i2mb0s")))) + "0f0f2vvs1mpdpz2c0mg1mnc3sih8bizmc1h9m67kdsnqs3i2mb0s")) + (patches (search-patches "python-babel-fix-parse-future-test.patch")))) (build-system python-build-system) (native-inputs `(("python-freezegun" ,python-freezegun) ("python-pytest" ,python-pytest))) (propagated-inputs `(("python-pytz" ,python-pytz))) - (arguments - `(#:phases (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "pytest" "-vv" "-k" - (string-append - ;; XXX: These tests fail when using Pytest 4.x and - ;; Babel 2.6.0. Try removing this for later versions. - "not test_no_inherit_metazone_marker_never_in_output" - " and not test_smoke_dates" - " and not test_smoke_numbers"))))))) - (home-page "http://babel.pocoo.org/") + (home-page "https://babel.pocoo.org/") (synopsis "Tools for internationalizing Python applications") (description @@ -1732,14 +1722,14 @@ from the Python interpreter, or as a small part of a larger application.") (define-public python-six (package (name "python-six") - (version "1.14.0") + (version "1.15.0") (source (origin (method url-fetch) (uri (pypi-uri "six" version)) (sha256 (base32 - "02lw67hprv57hyg3cfy02y3ixjk3nzwc0dx3c4ynlvkfwkfdnsr3")))) + "0n82108wxn5giff50hd9ykjhd3zl7cndabdasi6568yvbh1rqqrh")))) (build-system python-build-system) (arguments `(#:phases @@ -10512,14 +10502,15 @@ tables.") (define-public python-atomicwrites (package (name "python-atomicwrites") - (version "1.3.0") + (version "1.4.0") (source (origin (method url-fetch) (uri (pypi-uri "atomicwrites" version)) (sha256 (base32 - "19ngcscdf3jsqmpcxn6zl5b6anmsajb6izp1smcd1n02midl9abm")))) + "0yla2svfhfqrcj8qbyqzx7wi4jy0dwcxvlkg0k3zjd54s5m3jw5f")))) (build-system python-build-system) + (arguments `(#:tests? #f)) ;avoid circular dependency with pytest (synopsis "Atomic file writes in Python") (description "Library for atomic file writes using platform dependent tools for atomic file system operations.") diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 43704bccae..1c183f925b 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -59,6 +59,7 @@ ;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org> ;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org> ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2020 Greg Hogan <code@greghogan.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -106,54 +107,54 @@ (define-public python-2.7 (package (name "python2") - (version "2.7.17") + (version "2.7.18") (source (origin - (method url-fetch) - (uri (string-append "https://www.python.org/ftp/python/" - version "/Python-" version ".tar.xz")) - (sha256 - (base32 - "0hds28cg226m8j8sr394nm9yc4gxhvlv109w0avsf2mxrlrz0hsd")) - (patches (search-patches "python-2.7-search-paths.patch" - "python-2-deterministic-build-info.patch" - "python-2.7-site-prefixes.patch" - "python-2.7-source-date-epoch.patch" - "python-2.7-adjust-tests.patch" - "python-cross-compile.patch")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Ensure the bundled copies of these libraries are not used. - (for-each delete-file-recursively - '("Modules/_ctypes/libffi" "Modules/expat" "Modules/zlib")) + (method url-fetch) + (uri (string-append "https://www.python.org/ftp/python/" + version "/Python-" version ".tar.xz")) + (sha256 + (base32 + "0hzgxl94hnflis0d6m4szjx0b52gah7wpmcg5g00q7am6xwhwb5n")) + (patches (search-patches "python-2.7-search-paths.patch" + "python-2-deterministic-build-info.patch" + "python-2.7-site-prefixes.patch" + "python-2.7-source-date-epoch.patch" + "python-2.7-adjust-tests.patch" + "python-cross-compile.patch")) + (modules '((guix build utils))) + (snippet + '(begin + ;; Ensure the bundled copies of these libraries are not used. + (for-each delete-file-recursively + '("Modules/_ctypes/libffi" "Modules/expat" "Modules/zlib")) - (substitute* "Modules/Setup.dist" - ;; Link Expat instead of embedding the bundled one. - (("^#pyexpat.*") "pyexpat pyexpat.c -lexpat\n")) + (substitute* "Modules/Setup.dist" + ;; Link Expat instead of embedding the bundled one. + (("^#pyexpat.*") "pyexpat pyexpat.c -lexpat\n")) - ;; Suboptimal to delete failing tests here, but if we delete them in - ;; the arguments then we need to make sure to strip out that phase - ;; when it gets inherited by python and python-minimal. - (for-each delete-file - '("Lib/test/test_compileall.py" - "Lib/test/test_ctypes.py" ; fails on mips64el - "Lib/test/test_distutils.py" - "Lib/test/test_import.py" - "Lib/test/test_shutil.py" - "Lib/test/test_socket.py" - "Lib/test/test_subprocess.py")) - #t)))) + ;; Suboptimal to delete failing tests here, but if we delete them in + ;; the arguments then we need to make sure to strip out that phase + ;; when it gets inherited by python and python-minimal. + (for-each delete-file + '("Lib/test/test_compileall.py" + "Lib/test/test_ctypes.py" ; fails on mips64el + "Lib/test/test_distutils.py" + "Lib/test/test_import.py" + "Lib/test/test_shutil.py" + "Lib/test/test_socket.py" + "Lib/test/test_subprocess.py")) + #t)))) (outputs '("out" - "tk")) ;tkinter; adds 50 MiB to the closure + "tk")) ;tkinter; adds 50 MiB to the closure (build-system gnu-build-system) (arguments `(#:test-target "test" #:configure-flags - (list "--enable-shared" ;allow embedding - "--with-system-expat" ;for XML support - "--with-system-ffi" ;build ctypes - "--with-ensurepip=install" ;install pip and setuptools + (list "--enable-shared" ;allow embedding + "--with-system-expat" ;for XML support + "--with-system-ffi" ;build ctypes + "--with-ensurepip=install" ;install pip and setuptools "--enable-unicode=ucs4" ;; Prevent the installed _sysconfigdata.py from retaining a reference @@ -181,12 +182,12 @@ ;; https://github.com/python/cpython/commit/529525fb5a8fd9b96ab4021311a598c77588b918. " --exclude test_urllib2_localnet test_httplib")) - #:modules ((ice-9 ftw) (ice-9 match) - (guix build utils) (guix build gnu-build-system)) - #:phases - (modify-phases %standard-phases - (add-before - 'configure 'patch-lib-shells + #:modules ((ice-9 ftw) (ice-9 match) + (guix build utils) (guix build gnu-build-system)) + #:phases + (modify-phases %standard-phases + (add-before + 'configure 'patch-lib-shells (lambda _ ;; This variable is used in setup.py to enable cross compilation ;; specific switches. As it is not set properly by configure @@ -204,38 +205,36 @@ "Lib/test/test_subprocess.py")) (("/bin/sh") (which "sh"))) #t)) - ,@(if (hurd-system?) - `((add-before 'build 'patch-regen-for-hurd - (lambda* (#:key inputs #:allow-other-keys) - (let ((libc (assoc-ref inputs "libc"))) - (substitute* "Lib/plat-generic/regen" - (("/usr/include/") (string-append libc "/include/"))) - #t)))) - '()) - (add-before 'configure 'do-not-record-configure-flags - (lambda* (#:key configure-flags #:allow-other-keys) - ;; Remove configure flags from the installed '_sysconfigdata.py' - ;; and 'Makefile' so we don't end up keeping references to the - ;; build tools. - ;; - ;; Preserve at least '--with-system-ffi' since otherwise the - ;; thing tries to build libffi, fails, and we end up with a - ;; Python that lacks ctypes. - (substitute* "configure" - (("^CONFIG_ARGS=.*$") - (format #f "CONFIG_ARGS='~a'\n" - (if (member "--with-system-ffi" configure-flags) - "--with-system-ffi" - "")))) - #t)) - (add-before - 'check 'pre-check + ,@(if (hurd-system?) + `((add-before 'build 'patch-regen-for-hurd + (lambda* (#:key inputs #:allow-other-keys) + (let ((libc (assoc-ref inputs "libc"))) + (substitute* "Lib/plat-generic/regen" + (("/usr/include/") (string-append libc "/include/"))) + #t)))) + '()) + (add-before 'configure 'do-not-record-configure-flags + (lambda* (#:key configure-flags #:allow-other-keys) + ;; Remove configure flags from the installed '_sysconfigdata.py' + ;; and 'Makefile' so we don't end up keeping references to the + ;; build tools. + ;; + ;; Preserve at least '--with-system-ffi' since otherwise the + ;; thing tries to build libffi, fails, and we end up with a + ;; Python that lacks ctypes. + (substitute* "configure" + (("^CONFIG_ARGS=.*$") + (format #f "CONFIG_ARGS='~a'\n" + (if (member "--with-system-ffi" configure-flags) + "--with-system-ffi" + "")))) + #t)) + (add-before 'check 'pre-check (lambda _ ;; 'Lib/test/test_site.py' needs a valid $HOME (setenv "HOME" (getcwd)) #t)) - (add-after - 'unpack 'set-source-file-times-to-1980 + (add-after 'unpack 'set-source-file-times-to-1980 ;; XXX One of the tests uses a ZIP library to pack up some of the ;; source tree, and fails with "ZIP does not support timestamps ;; before 1980". Work around this by setting the file times in the @@ -246,85 +245,86 @@ (utime file circa-1980 circa-1980) #t)) #t))) - (add-after 'install 'remove-tests - ;; Remove 25 MiB of unneeded unit tests. Keep test_support.* - ;; because these files are used by some libraries out there. - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - (match (scandir (string-append out "/lib") - (lambda (name) - (string-prefix? "python" name))) - ((pythonX.Y) - (let ((testdir (string-append out "/lib/" pythonX.Y - "/test"))) - (with-directory-excursion testdir - (for-each delete-file-recursively - (scandir testdir - (match-lambda - ((or "." "..") #f) - ("support" #f) - (file - (not - (string-prefix? "test_support." - file)))))) - (call-with-output-file "__init__.py" (const #t)) - #t))))))) - (add-after 'remove-tests 'rebuild-bytecode - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) - ;; Disable hash randomization to ensure the generated .pycs - ;; are reproducible. - (setenv "PYTHONHASHSEED" "0") - (for-each - (lambda (opt) - (format #t "Compiling with optimization level: ~a\n" - (if (null? opt) "none" (car opt))) - (for-each (lambda (file) - (apply invoke - `(,,(if (%current-target-system) - "python2" - '(string-append out "/bin/python")) - ,@opt - "-m" "compileall" - "-f" ; force rebuild - ;; Don't build lib2to3, because it contains Python 3 code. - "-x" "lib2to3/.*" - ,file))) - (find-files out "\\.py$"))) - (list '() '("-O") '("-OO"))) - #t))) - (add-after 'install 'move-tk-inter - (lambda* (#:key outputs #:allow-other-keys) - ;; When Tkinter support is built move it to a separate output so - ;; that the main output doesn't contain a reference to Tcl/Tk. - (let ((out (assoc-ref outputs "out")) - (tk (assoc-ref outputs "tk"))) - (when tk - (match (find-files out "tkinter.*\\.so") - ((tkinter.so) - ;; The .so is in OUT/lib/pythonX.Y/lib-dynload, but we - ;; want it under TK/lib/pythonX.Y/site-packages. - (let* ((len (string-length out)) - (target (string-append - tk "/" - (string-drop - (dirname (dirname tkinter.so)) - len) - "/site-packages"))) - (install-file tkinter.so target) - (delete-file tkinter.so))))) - #t)))))) + (add-after 'install 'remove-tests + ;; Remove 25 MiB of unneeded unit tests. Keep test_support.* + ;; because these files are used by some libraries out there. + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (match (scandir (string-append out "/lib") + (lambda (name) + (string-prefix? "python" name))) + ((pythonX.Y) + (let ((testdir (string-append out "/lib/" pythonX.Y + "/test"))) + (with-directory-excursion testdir + (for-each delete-file-recursively + (scandir testdir + (match-lambda + ((or "." "..") #f) + ("support" #f) + (file + (not + (string-prefix? "test_support." + file)))))) + (call-with-output-file "__init__.py" (const #t)) + #t))))))) + (add-after 'remove-tests 'rebuild-bytecode + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; Disable hash randomization to ensure the generated .pycs + ;; are reproducible. + (setenv "PYTHONHASHSEED" "0") + (for-each + (lambda (opt) + (format #t "Compiling with optimization level: ~a\n" + (if (null? opt) "none" (car opt))) + (apply invoke + `(,,(if (%current-target-system) + "python2" + '(string-append out "/bin/python")) + ,@opt + "-m" "compileall" + "-f" ; force rebuild + ;; Don't build lib2to3, because it contains Python 3 code. + "-x" "lib2to3/.*" + ,out))) + ;; Python 2 has a single file extension (.pyo) for the chosen + ;; level of optimization, so it doesn't make sense to byte + ;; compile with more than one level. + (list '() '("-OO"))) + #t))) + (add-after 'install 'move-tk-inter + (lambda* (#:key outputs #:allow-other-keys) + ;; When Tkinter support is built move it to a separate output so + ;; that the main output doesn't contain a reference to Tcl/Tk. + (let ((out (assoc-ref outputs "out")) + (tk (assoc-ref outputs "tk"))) + (when tk + (match (find-files out "tkinter.*\\.so") + ((tkinter.so) + ;; The .so is in OUT/lib/pythonX.Y/lib-dynload, but we + ;; want it under TK/lib/pythonX.Y/site-packages. + (let* ((len (string-length out)) + (target (string-append + tk "/" + (string-drop + (dirname (dirname tkinter.so)) + len) + "/site-packages"))) + (install-file tkinter.so target) + (delete-file tkinter.so))))) + #t)))))) (inputs `(("bzip2" ,bzip2) ("expat" ,expat) ("gdbm" ,gdbm) - ("libffi" ,libffi) ; for ctypes - ("sqlite" ,sqlite) ; for sqlite extension + ("libffi" ,libffi) ; for ctypes + ("sqlite" ,sqlite) ; for sqlite extension ("openssl" ,openssl) ("readline" ,readline) ("zlib" ,zlib) ("tcl" ,tcl) - ("tk" ,tk))) ; for tkinter + ("tk" ,tk))) ; for tkinter (native-inputs `(("pkg-config" ,pkg-config) ;; When cross-compiling, a native version of Python itself is needed. @@ -364,7 +364,7 @@ data types.") (define-public python-3.8 (package (inherit python-2) (name "python") - (version "3.8.2") + (version "3.8.5") (source (origin (method url-fetch) (uri (string-append "https://www.python.org/ftp/python/" @@ -373,10 +373,11 @@ data types.") "python-3-fix-tests.patch" "python-3.8-fix-tests.patch" "python-3-deterministic-build-info.patch" - "python-3-search-paths.patch")) + "python-3-search-paths.patch" + "python-3-hurd-configure.patch")) (sha256 (base32 - "1ps5v323cp5czfshqjmbsqw7nvrdpcbk06f62jbzaqik4gfffii6")) + "1c43dbv9lvlp3ynqmgdi4rh8q94swanhqarqrdx62zmigpakw073")) (modules '((guix build utils))) (snippet '(begin @@ -433,17 +434,6 @@ data types.") ,@(if (hurd-system?) `((delete 'patch-regen-for-hurd)) ;regen was removed after 3.5.9 '()) - ,@(if (hurd-target?) - ;; The build system refuses to cross-compile for unknown targets - ;; even though it works fine. Add GNU/Hurd target. - ;; TODO: Make it a patch in a future rebuild cycle. - '((add-before 'configure 'support-hurd-cross-compile - (lambda _ - (substitute* "configure" - (("\\*-\\*-vxworks.*" all) - (string-append "*-*-gnu)\nac_sys_system=GNU\n;;\n" all))) - #t))) - '()) (add-before 'check 'set-TZDIR (lambda* (#:key inputs native-inputs #:allow-other-keys) ;; test_email requires the Olson time zone database. diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index 8fc228f6ed..06a90dda55 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -88,7 +88,7 @@ license:gpl2+ license:gpl3+)) -(define-public ruby +(define-public ruby-2.6 (package (name "ruby") (version "2.6.5") @@ -146,7 +146,7 @@ a focus on simplicity and productivity.") (define-public ruby-2.7 (package - (inherit ruby) + (inherit ruby-2.6) (version "2.7.2") (source (origin @@ -189,7 +189,7 @@ a focus on simplicity and productivity.") (define-public ruby-2.5 (package - (inherit ruby) + (inherit ruby-2.6) (version "2.5.8") (source (origin @@ -208,7 +208,7 @@ a focus on simplicity and productivity.") (define-public ruby-2.4 (package - (inherit ruby) + (inherit ruby-2.6) (version "2.4.10") (source (origin @@ -225,6 +225,8 @@ a focus on simplicity and productivity.") (delete-file-recursively "ext/fiddle/libffi-3.2.1") #t)))))) +(define-public ruby ruby-2.7) + (define-public mruby (package (name "mruby") @@ -1213,14 +1215,6 @@ syntax to the minimum while remaining clear.") `(#:test-target "test:all" #:phases (modify-phases %standard-phases - (replace 'replace-git-ls-files - (lambda _ - ;; TODO: Remove after the fix of using 'cut' to better mimic the - ;; git ls-files output is merged in ruby-build-system. - (substitute* "asciidoctor.gemspec" - (("`git ls-files -z`") - "`find . -type f -print0 |sort -z|cut -zc3-`")) - #t)) (add-after 'extract-gemspec 'strip-version-requirements (lambda _ (delete-file "Gemfile") @@ -1419,17 +1413,7 @@ loader for the file type associated with a filename extension, and it augments "1dmk94z6ivhrz5hsq68vl5vgydhkz89n394rha1ymddw3rymbfcv")))) (build-system ruby-build-system) (arguments - `(#:test-target "spec" - #:phases - (modify-phases %standard-phases - (replace 'replace-git-ls-files - (lambda _ - ;; TODO: Remove after the fix of using 'cut' to better mimic the - ;; git ls-files output is merged in ruby-build-system. - (substitute* "treetop.gemspec" - (("`git ls-files -z`") - "`find . -type f -print0 |sort -z|cut -zc3-`")) - #t))))) + `(#:test-target "spec")) (native-inputs `(("ruby-activesupport" ,ruby-activesupport) ("ruby-rr" ,ruby-rr) @@ -1551,15 +1535,6 @@ only what they care about.") (lambda _ (delete-file "Gemfile") (delete-file "Gemfile.lock") - #t)) - (replace 'replace-git-ls-files - (lambda _ - ;; TODO: Remove after the fix of using 'cut' to better mimic the - ;; git ls-files output is merged in ruby-build-system. - (substitute* "standard.gemspec" - (("`git ls-files -z`") - "`find . -type f -not -regex '.*\\.gem$' -print0 \ -|sort -z|cut -zc3-`")) #t))))) (native-inputs `(("ruby-gimme" ,ruby-gimme) @@ -1601,14 +1576,6 @@ to save time in the following ways: (lambda _ (substitute* (find-files "." "\\.rb$") (("require.*bundler/setup.*") "")) - #t)) - (replace 'replace-git-ls-files - (lambda _ - ;; TODO: Remove after the fix of using 'cut' to better mimic the - ;; git ls-files output is merged in ruby-build-system. - (substitute* "chunky_png.gemspec" - (("`git ls-files`") - "`find . -type f -not -regex '.*\\.gem$' |sort |cut -c3-`")) #t))))) (native-inputs `(("bundler" ,bundler) @@ -1730,15 +1697,6 @@ web pages.") (("(.*add_.*dependency '[_A-Za-z0-9-]+').*" _ stripped) (string-append stripped "\n"))) #t)) - (replace 'replace-git-ls-files - ;; TODO: Remove after the fix of using 'cut' to better mimic the - ;; git ls-files output is merged in ruby-build-system. - (lambda _ - (substitute* "asciidoctor-pdf.gemspec" - (("`git ls-files -z`") - "`find . -type f -not -regex '.*\\.gem$' -print0 \ -|sort -z|cut -zc3-`")) - #t)) ;; The tests rely on the Gem being installed, so move the check phase ;; after the install phase. (delete 'check) diff --git a/gnu/packages/serialization.scm b/gnu/packages/serialization.scm index fc0102caf0..86f6ac6a1c 100644 --- a/gnu/packages/serialization.scm +++ b/gnu/packages/serialization.scm @@ -10,6 +10,7 @@ ;;; Copyright © 2017 Nikita <nikita@n0.is> ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com> +;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -285,16 +286,15 @@ that implements both the msgpack and msgpack-rpc specifications.") (define-public jsoncpp (package (name "jsoncpp") - (version "1.9.2") + (version "1.9.4") (home-page "https://github.com/open-source-parsers/jsoncpp") (source (origin (method git-fetch) (uri (git-reference (url home-page) (commit version))) (file-name (git-file-name name version)) - (patches (search-patches "jsoncpp-fix-inverted-case.patch")) (sha256 (base32 - "037d1b1qdmn3rksmn1j71j26bv4hkjv7sn7da261k853xb5899sg")))) + "0qnx5y6c90fphl9mj9d20j2dfgy6s5yr5l0xnzid0vh71zrp6jwv")))) (build-system cmake-build-system) (arguments `(#:configure-flags '("-DBUILD_SHARED_LIBS:BOOL=YES" diff --git a/gnu/packages/solidity.scm b/gnu/packages/solidity.scm new file mode 100644 index 0000000000..26167ee659 --- /dev/null +++ b/gnu/packages/solidity.scm @@ -0,0 +1,92 @@ +;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net> +;;; +;;; This file is part of GNU Guix. +;;; +;;; GNU Guix is free software; you can redistribute it and/or modify it +;;; under the terms of the GNU General Public License as published by +;;; the Free Software Foundation; either version 3 of the License, or (at +;;; your option) any later version. +;;; +;;; GNU Guix is distributed in the hope that it will be useful, but +;;; WITHOUT ANY WARRANTY; without even the implied warranty of +;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +;;; GNU General Public License for more details. +;;; +;;; You should have received a copy of the GNU General Public License +;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. + +(define-module (gnu packages solidity) + #:use-module (gnu packages base) + #:use-module (gnu packages boost) + #:use-module (gnu packages maths) + #:use-module (gnu packages serialization) + #:use-module (gnu packages python) + #:use-module (gnu packages ncurses) + #:use-module (guix packages) + #:use-module (guix git-download) + #:use-module (guix build-system cmake) + #:use-module ((guix licenses) #:prefix license:)) + +(define-public solidity + (let ((commit "3f05b770bdbf60eca866382049ea191dd701409a")) + (package + (name "solidity") + (version "0.7.4") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/ethereum/solidity") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1mswhjymiwnd3n7h3sjvjx5x8223yih0yvfcr0zpqr4aizpfx5z8")))) + (build-system cmake-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'create-commit_hash.txt + (lambda _ + (with-output-to-file "commit_hash.txt" + (lambda _ + (display + (substring ,commit 0 8)))))) + (delete 'configure) + (delete 'install) + (replace 'build + (lambda* (#:key outputs #:allow-other-keys) + ;; Unbundle jsoncpp + (delete-file "./cmake/jsoncpp.cmake") + (substitute* "CMakeLists.txt" + (("include\\(jsoncpp\\)") "")) + ;; Bug list is always sorted since we only build releases + (substitute* "./test/cmdlineTests.sh" + (("\"\\$REPO_ROOT\"/scripts/update_bugs_by_version\\.py") "")) + (substitute* "./scripts/build.sh" + (("sudo\\ make\\ install") "make install") + (("cmake\\ ..") + (string-append "cmake .. -DCMAKE_INSTALL_PREFIX=" + (assoc-ref outputs "out")))) + (setenv "CIRCLECI" "1") + (invoke "./scripts/build.sh") + #t)) + (replace 'check + (lambda _ + (invoke "./scripts/tests.sh") + #t))))) + (inputs + `(("boost-static" ,boost-static) + ("jsoncpp" ,jsoncpp) + ("z3" ,z3))) + (native-inputs + `(("python" ,python) + ("tput" ,ncurses) + ("xargs" ,findutils))) + (home-page "https://solidity.readthedocs.io") + (synopsis "Contract-Oriented Programming Language") + (description + "Solidity is a statically-typed curly-braces programming language +designed for developing smart contracts that run on the Ethereum Virtual +Machine.") + (license license:gpl3+)))) diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm index 6de99aec86..445c846422 100644 --- a/gnu/packages/spice.scm +++ b/gnu/packages/spice.scm @@ -324,9 +324,7 @@ resolution scaling on graphical console window resize.") "0vyvkk4b6xjwq1ccggql13c1x7g4y90clpkqw28257azgn2a1c8n")))) (build-system gnu-build-system) (arguments - '(#:tests? #f ; TODO Tests require gnutls built with - ; p11-kit - #:phases + '(#:phases (modify-phases %standard-phases (add-after 'unpack 'patch-tests (lambda* (#:key inputs #:allow-other-keys) diff --git a/gnu/packages/sqlite.scm b/gnu/packages/sqlite.scm index eeb77749d8..e87eff71e1 100644 --- a/gnu/packages/sqlite.scm +++ b/gnu/packages/sqlite.scm @@ -1,5 +1,5 @@ ;;; GNU Guix --- Functional package management for GNU -;;; Copyright © 2013, 2015, 2018 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2013, 2015, 2018, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014, 2015, 2016, 2018 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in> ;;; Copyright © 2015, 2016 Sou Bunnbu <iyzsong@gmail.com> @@ -62,16 +62,12 @@ 6 #\0)))))) (string-append "https://sqlite.org/2020/sqlite-autoconf-" numeric-version ".tar.gz"))) + (patches (search-patches "sqlite-hurd.patch")) (sha256 (base32 "1bj936svd8i5g25xd1bj52hj4zca01fgl3sqkj86z9q5pkz4wa32")))) (build-system gnu-build-system) (inputs `(("readline" ,readline))) - (native-inputs (if (hurd-target?) - ;; TODO move into origin on the next rebuild cycle. - `(("hurd-locking-mode.patch" - ,@(search-patches "sqlite-hurd.patch"))) - '())) (outputs '("out" "static")) (arguments `(#:configure-flags @@ -79,25 +75,13 @@ ;; -DSQLITE_ENABLE_UNLOCK_NOTIFY and -DSQLITE_ENABLE_DBSTAT_VTAB ;; to CFLAGS. GNU Icecat will refuse to use the system SQLite ;; unless these options are enabled. - (list (string-append "CFLAGS=-O2 -DSQLITE_SECURE_DELETE " + (list (string-append "CFLAGS=-O2 -g -DSQLITE_SECURE_DELETE " "-DSQLITE_ENABLE_FTS3 " "-DSQLITE_ENABLE_UNLOCK_NOTIFY " "-DSQLITE_ENABLE_DBSTAT_VTAB " ;; Column metadata is required by GNU Jami and Qt, et.al. "-DSQLITE_ENABLE_COLUMN_METADATA")) #:phases (modify-phases %standard-phases - ;; TODO: remove in the next rebuild cycle - ,@(if (hurd-target?) - `((add-after 'unpack 'patch-sqlite/hurd - (lambda* (#:key inputs native-inputs - #:allow-other-keys) - (let ((patch (assoc-ref - (if ,(%current-target-system) - native-inputs - inputs) - "hurd-locking-mode.patch"))) - (invoke "patch" "-p1" "--force" "-i" patch))))) - '()) (add-after 'install 'move-static-library (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index 1cffb52410..db574b4e20 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -3336,29 +3336,25 @@ language that is written in a Cyrillic alphabet.") (license license:lppl1.3c+))) (define-public texlive-latex-psnfss - (package - (name "texlive-latex-psnfss") - (version (number->string %texlive-revision)) - (source (origin - (method svn-fetch) - (uri (texlive-ref "latex" "psnfss")) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "1920dcq8613yzprasbg80fh4fcjcidvvl54wkx438nimyxcri7qz")))) - (build-system texlive-build-system) - (arguments '(#:tex-directory "latex/psnfss")) - (home-page "https://www.ctan.org/pkg/psnfss") - (synopsis "Font support for common PostScript fonts") - (description - "The PSNFSS collection includes a set of files that provide a complete -working setup of the LaTeX font selection scheme (NFSS2) for use with common -PostScript fonts. It covers the so-called \"Base\" fonts (which are built -into any Level 2 PostScript printing device and the Ghostscript interpreter) -and a number of free fonts. It provides font definition files, macros and -font metrics. The bundle as a whole is part of the LaTeX required set of -packages.") - (license license:lppl1.2+))) + (let ((template (simple-texlive-package + "texlive-latex-psnfss" + (list "/doc/latex/psnfss/" + "/tex/latex/psnfss/") + (base32 + "12p23in2nz1n08hw3m6kf5mcbn9zbhjsvdx0nsb7zcvywbljb9i2") + #:trivial? #t))) + (package + (inherit template) + (home-page "https://www.ctan.org/pkg/psnfss") + (synopsis "Font support for common PostScript fonts") + (description "The PSNFSS collection includes a set of files that +provide a complete working setup of the LaTeX font selection +scheme (NFSS2) for use with common PostScript fonts. It covers the +so-called \"Base\" fonts (which are built into any Level 2 PostScript +printing device and the Ghostscript interpreter) and a number of free +fonts. It provides font definition files, macros and font metrics. +The bundle as a whole is part of the LaTeX required set of packages.") + (license license:lppl1.2+)))) ;; For user profiles (define-public texlive-base diff --git a/gnu/packages/texinfo.scm b/gnu/packages/texinfo.scm index dea26a6395..b53b56fbf2 100644 --- a/gnu/packages/texinfo.scm +++ b/gnu/packages/texinfo.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2017, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@gmail.com> -;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com> +;;; Copyright © 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; @@ -59,21 +59,18 @@ ;; with the native compiler, the environment is reset. This leads to ;; multiple environment variables missing. Do not reset the environment ;; to prevent that. - (if (%current-target-system) - '(#:phases - (modify-phases %standard-phases - (add-before 'configure 'fix-cross-configure - (lambda _ - (substitute* "configure" - (("env -i") - "env ")) - #t)))) - '())) + `(#:phases + (if ,(%current-target-system) + (modify-phases %standard-phases + (add-before 'configure 'fix-cross-configure + (lambda _ + (substitute* "configure" + (("env -i") + "env ")) + #t))) + %standard-phases))) (inputs `(("ncurses" ,ncurses) - ;; TODO: remove `if' in the next rebuild cycle. - ,@(if (%current-target-system) - `(("perl" ,perl)) - '()))) + ("perl" ,perl))) ;; When cross-compiling, texinfo will build some of its own binaries with ;; the native compiler. This means ncurses is needed both in both inputs ;; and native-inputs. diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 00b0bf6ddb..8d85a7831d 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -15,6 +15,7 @@ ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> +;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -58,6 +59,7 @@ #:use-module (gnu packages linux) #:use-module (gnu packages ncurses) #:use-module (gnu packages nettle) + #:use-module (gnu packages networking) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) @@ -164,9 +166,7 @@ living in the same process.") (define-public gnutls (package (name "gnutls") - ;; XXX Unversion openconnect's "gnutls" input when ungrafting. - (replacement gnutls-3.6.14) - (version "3.6.12") + (version "3.6.15") (source (origin (method url-fetch) (uri @@ -178,15 +178,17 @@ living in the same process.") (patches (search-patches "gnutls-skip-trust-store-test.patch")) (sha256 (base32 - "0jvca1qahn9lrwv6f5kfs95icirc15b2a8x9fzczyj996ipg3b5z")))) + "0n0m93ymzd0q9hbknxc2ycanz49sqlkyyf73g9fk7n787llc7a0f")))) (build-system gnu-build-system) (arguments `(#:tests? ,(not (or (%current-target-system) (hurd-target?))) - ;; Ensure we don't keep a reference to net-tools. - #:disallowed-references ,(if (hurd-target?) '() (list net-tools)) + ;; Ensure we don't keep a reference to the tools used for testing. + #:disallowed-references ,(if (hurd-target?) + '() + (list net-tools iproute socat)) #:configure-flags - (list + (cons* ;; GnuTLS doesn't consult any environment variables to specify ;; the location of the system-wide trust store. Instead it has a ;; configure-time option. Unless specified, its configure script @@ -207,13 +209,26 @@ living in the same process.") (string-append "--with-guile-extension-dir=" "$(libdir)/guile/$(GUILE_EFFECTIVE_VERSION)/extensions") - ;; FIXME: Temporarily disable p11-kit support since it is not - ;; working on mips64el. - "--without-p11-kit") + (let ((system ,(or (%current-target-system) + (%current-system)))) + (if (string-prefix? "mips64el" system) + (list + ;; FIXME: Temporarily disable p11-kit support since it is + ;; not working on mips64el. + "--without-p11-kit") + '()))) #:phases (modify-phases %standard-phases - (add-after - 'install 'move-doc + ;; fastopen.sh fails to connect to the server in the builder + ;; environment (see: + ;; https://gitlab.com/gnutls/gnutls/-/issues/1095). + (add-after 'unpack 'disable-failing-tests + (lambda _ + (substitute* "tests/fastopen.sh" + (("^unset RETCODE") + "exit 77\n")) ;skip + #t)) + (add-after 'install 'move-doc (lambda* (#:key outputs #:allow-other-keys) ;; Copy the 4.1 MiB of section 3 man pages to "doc". (let* ((out (assoc-ref outputs "out")) @@ -228,9 +243,13 @@ living in the same process.") "debug" "doc")) ;4.1 MiB of man pages (native-inputs - `(,@(if (hurd-target?) '() - `(("net-tools" ,net-tools))) + `(,@(if (hurd-target?) + '() + `(("net-tools" ,net-tools) + ("iproute" ,iproute) ;for 'ss' + ("socat" ,socat))) ;several tests rely on it ("pkg-config" ,pkg-config) + ("texinfo" ,texinfo) ("which" ,which) ,@(if (hurd-target?) '() `(("datefudge" ,datefudge))) ;tests rely on 'datefudge' @@ -242,7 +261,12 @@ living in the same process.") `(("libtasn1" ,libtasn1) ("libidn2" ,libidn2) ("nettle" ,nettle) - ("zlib" ,zlib))) + ("zlib" ,zlib) + ,@(let ((system (or (%current-target-system) + (%current-system)))) + (if (string-prefix? "mips64el" system) + '() + `(("p11-kit" ,p11-kit)))))) (home-page "https://www.gnu.org/software/gnutls/") (synopsis "Transport layer security library") (description @@ -254,26 +278,6 @@ required structures.") (properties '((ftp-server . "ftp.gnutls.org") (ftp-directory . "/gcrypt/gnutls"))))) -(define-public gnutls-3.6.14 - (package - (inherit gnutls) - (version "3.6.14") - (source (origin - (method url-fetch) - (uri (string-append "mirror://gnupg/gnutls/v" - (version-major+minor version) - "/gnutls-" version ".tar.xz")) - (patches (search-patches "gnutls-skip-trust-store-test.patch" - "gnutls-cross.patch")) - (sha256 - (base32 - "0qwxsfizynly0ns537vnhnlm5lh03la4vbsmz675n0n7vqd7ac2n")))) - (native-inputs - `(,@(if (%current-target-system) ;for cross-build - `(("guile" ,guile-3.0)) ;to create .go files - '()) - ,@(package-native-inputs gnutls))))) - (define-public gnutls/guile-2.0 ;; GnuTLS for Guile 2.0. (package/inherit gnutls @@ -305,8 +309,7 @@ required structures.") (define-public openssl (package (name "openssl") - (version "1.1.1f") - (replacement openssl-1.1.1g) + (version "1.1.1g") (source (origin (method url-fetch) (uri (list (string-append "https://www.openssl.org/source/openssl-" @@ -318,7 +321,7 @@ required structures.") "/openssl-" version ".tar.gz"))) (sha256 (base32 - "0d9zv9srjqivs8nn099fpbjv1wyhfcb8lzy491dpmfngdvz6nv0q")) + "0ikdcc038i7jk8h7asq5xcn8b1xc2rrbc88yfm4hqbz3y5s4gc6x")) (patches (search-patches "openssl-1.1-c-rehash-in.patch")))) (build-system gnu-build-system) (outputs '("out" @@ -438,24 +441,6 @@ required structures.") (license license:openssl) (home-page "https://www.openssl.org/"))) -(define openssl-1.1.1g - (package - (inherit openssl) - (version "1.1.1g") - (source (origin - (method url-fetch) - (uri (list (string-append "https://www.openssl.org/source/openssl-" - version ".tar.gz") - (string-append "ftp://ftp.openssl.org/source/" - "openssl-" version ".tar.gz") - (string-append "ftp://ftp.openssl.org/source/old/" - (string-trim-right version char-set:letter) - "/openssl-" version ".tar.gz"))) - (patches (search-patches "openssl-1.1-c-rehash-in.patch")) - (sha256 - (base32 - "0ikdcc038i7jk8h7asq5xcn8b1xc2rrbc88yfm4hqbz3y5s4gc6x")))))) - (define-public openssl-1.0 (package (inherit openssl) diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index 39a9825893..2d6fbf2c98 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -265,7 +265,7 @@ the user specifically asks to proxy, so the @dfn{VPN} interface no longer `(("libxml2" ,libxml2) ;; XXX ‘DTLS is insecure in GnuTLS v3.6.3 through v3.6.12.’ ;; See <https://gitlab.com/gnutls/gnutls/-/issues/960>. - ("gnutls" ,gnutls-3.6.14) + ("gnutls" ,gnutls) ("zlib" ,zlib))) (inputs `(("lz4" ,lz4) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index b531fcd15d..e072f56eed 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -825,7 +825,7 @@ libraries for working with JNLP applets.") (define-public jansson (package (name "jansson") - (version "2.12") + (version "2.13.1") (source (origin (method url-fetch) (uri @@ -833,7 +833,7 @@ libraries for working with JNLP applets.") version ".tar.bz2")) (sha256 (base32 - "1lp1mv8pjp5yziws66cy0dhpcam4bbjqhffk13v4vgdybp674pb4")))) + "1g8h18vh8gyxlwfmvdivdp1siad26ywj5zr4j4avgdyjg7wa147f")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--disable-static"))) @@ -7340,8 +7340,7 @@ derivation by David Revoy from the original MonsterID by Andreas Gohr.") (define-public nghttp2 (package (name "nghttp2") - (version "1.40.0") - (replacement nghttp2-1.41) + (version "1.41.0") (source (origin (method url-fetch) @@ -7350,7 +7349,7 @@ derivation by David Revoy from the original MonsterID by Andreas Gohr.") "nghttp2-" version ".tar.xz")) (sha256 (base32 - "0wwhwv7cvi1vxpdjwvg0kpa4jzhszclpnwrwfcw728zz53a47z09")))) + "1hk77vngjmvvzb5y1gi1aqwf6qywrc7yak08zvzb7x81qs6mphmb")))) (build-system gnu-build-system) (outputs (list "out" "lib")) ; only libnghttp2 @@ -7424,20 +7423,6 @@ compressed JSON header blocks. @end itemize\n") (license license:expat))) -(define-public nghttp2-1.41 ;fixes CVE-2020-11080 - (package - (inherit nghttp2) - (version "1.41.0") - (source - (origin - (method url-fetch) - (uri (string-append "https://github.com/nghttp2/nghttp2/" - "releases/download/v" version "/" - "nghttp2-" version ".tar.xz")) - (sha256 - (base32 - "1hk77vngjmvvzb5y1gi1aqwf6qywrc7yak08zvzb7x81qs6mphmb")))))) - (define-public hpcguix-web (let ((commit "9de63562b06b4aef3a3afe5ecb18d3c91e57ee74") (revision "5")) diff --git a/gnu/packages/wicd.scm b/gnu/packages/wicd.scm index fec39ad530..073d440479 100644 --- a/gnu/packages/wicd.scm +++ b/gnu/packages/wicd.scm @@ -123,7 +123,10 @@ "--no-install-kde" "--no-install-gnome-shell-extensions" - "--distro=guixsd" + ;; Don't pass --distro= despite setup.py's complaints. + ;; Guix isn't recognised, and if it ever would be we'd + ;; rather ask upstream to follow standards instead. + "--wicdgroup=netdev" "--loggroup=root" "--logperms=0640" diff --git a/gnu/packages/xml.scm b/gnu/packages/xml.scm index 9dc37addf4..e9328b8696 100644 --- a/gnu/packages/xml.scm +++ b/gnu/packages/xml.scm @@ -5,7 +5,7 @@ ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2015, 2016, 2017, 2018, 2020 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017 Mark H Weaver <mhw@netris.org> -;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2015, 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015 Raimon Grau <raimonster@gmail.com> ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> @@ -172,24 +172,30 @@ hierarchical form with variable field lengths.") (base32 "07xynh8hcxb2yb1fs051xrgszjvj37wnxvxgsj10rzmqzy9y3zma")))) (build-system gnu-build-system) - (outputs '("out" "static")) + (outputs '("out" "static" "doc")) (arguments `(#:phases (modify-phases %standard-phases - (add-after 'install 'move-static-libs + (add-after 'install 'use-other-outputs (lambda* (#:key outputs #:allow-other-keys) - (let ((src (string-append (assoc-ref outputs "out") "/lib")) + (let ((src (assoc-ref outputs "out")) + (doc (string-append (assoc-ref outputs "doc") "/share")) (dst (string-append (assoc-ref outputs "static") "/lib"))) + (mkdir-p doc) (mkdir-p dst) + (for-each (lambda (dir) + (rename-file (string-append src "/share/" dir) + (string-append doc "/" dir))) + '("doc" "gtk-doc")) (for-each (lambda (ar) (rename-file ar (string-append dst "/" (basename ar)))) - (find-files src "\\.a$")) + (find-files (string-append src "/lib") "\\.a$")) ;; Remove reference to the static library from the .la ;; file such that Libtool does the right thing when both ;; the shared and static variants are available. - (substitute* (string-append src "/libxml2.la") + (substitute* (string-append src "/lib/libxml2.la") (("^old_library='libxml2.a'") "old_library=''")) #t)))))) (home-page "http://www.xmlsoft.org/") @@ -2210,15 +2216,18 @@ modular implementation of XML-RPC for C and C++.") (define-public python-elementpath (package (name "python-elementpath") - (version "1.4.0") + (version "2.0.3") (source (origin (method url-fetch) (uri (pypi-uri "elementpath" version)) (sha256 (base32 - "15h7d41v48q31hzjay7qzixdv531hnga3h35hksk7x52pgqcrkz7")))) + "1kxx573ywqfh6j6aih2i6hhsya6kz79qq4bgz6yskwk6b18jyr8z")))) (build-system python-build-system) + ;; The test suite is not run, to avoid a dependency cycle with + ;; python-xmlschema. + (arguments `(#:tests? #f)) (home-page "https://github.com/sissaschool/elementpath") (synopsis @@ -2235,13 +2244,13 @@ because lxml.etree already has it's own implementation of XPath 1.0.") (define-public python-lxml (package (name "python-lxml") - (version "4.4.2") + (version "4.5.2") (source (origin (method url-fetch) (uri (pypi-uri "lxml" version)) (sha256 - (base32 "01nvb5j8vs9nk4z5s3250b1m22b4d08kffa36if3g1mdygdrvxpg")))) + (base32 "1xhx76hr1w3lllfcg9a01f2y0zwyf59ijnvlh08299mjh8b3mhfd")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases @@ -2264,7 +2273,7 @@ libxml2 and libxslt.") (define-public python-xmlschema (package (name "python-xmlschema") - (version "1.1.2") + (version "1.2.5") (source (origin ;; Unit tests are not distributed with the PyPI archive. (method git-fetch) @@ -2274,7 +2283,7 @@ libxml2 and libxslt.") (file-name (git-file-name name version)) (sha256 (base32 - "03bz5mp45y4shmlc1gxq1h69vjx60z1acg9cy4kq7fczgx8qg9jw")))) + "0rsa75x86gdjalvy4riq7613szb616hff80crx006chyppzdkxmq")))) (build-system python-build-system) (arguments '(#:phases @@ -2286,7 +2295,11 @@ libxml2 and libxslt.") (setenv "PYTHONPATH" (string-append "./build/lib:" (getenv "PYTHONPATH"))) - (invoke "python" "-m" "unittest" "-v")) + ;; Disable test_export_remote__issue_187, which is known to + ;; fail (see: + ;; https://github.com/sissaschool/xmlschema/issues/206). + (invoke "python" "-m" "unittest" "-v" + "-k" "not test_export_remote__issue_187")) (format #t "test suite not run~%")) #t))))) (native-inputs diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm index 90660829c9..ccf5235f74 100644 --- a/gnu/packages/xorg.scm +++ b/gnu/packages/xorg.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2014, 2015, 2017, 2018, 2020 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org> -;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr> ;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2015 Cyrill Schenkel <cyrill.schenkel@gmail.com> @@ -4737,9 +4737,13 @@ cannot be adequately worked around on the client side of the wire.") (base32 "0azqxllcsfxc3ilhz6kwc6x7m8wc477p59ir9p0yrsldx766zbar")))) (build-system gnu-build-system) + (outputs '("out" "doc")) ;man pages represent 40% of the total (arguments `(#:configure-flags (list "--disable-static" + (string-append "--mandir=" + (assoc-ref %outputs "doc") + "/share/man") ;; Disable zero malloc check that fails when cross-compiling. ,@(if (%current-target-system) '("--disable-malloc0returnsnull") @@ -5152,8 +5156,12 @@ new API's in libXft, or the legacy API's in libX11.") (base32 "0q8hz3slga3w3ch8wp0k7ay9ilhz315qnab0w1y2x9w3cf7hv8rn")))) (build-system gnu-build-system) + (outputs '("out" "doc")) ;man pages represent 28% of the total (arguments - '(#:configure-flags '("--disable-static"))) + '(#:configure-flags (list "--disable-static" + (string-append "--mandir=" + (assoc-ref %outputs "doc") + "/share/man")))) (propagated-inputs `(("xorgproto" ,xorgproto) ("libx11" ,libx11) @@ -5274,6 +5282,7 @@ protocol.") (base32 "0d2chjgyn5lr9sfhacfvqgnj9l9faz11vn322a06jd6lk3dxcpm5")))) (build-system gnu-build-system) + (outputs '("out" "doc")) ;5.5 MiB of man pages (propagated-inputs `(("libpthread-stubs" ,libpthread-stubs) ("libxau" ,libxau) @@ -5285,8 +5294,11 @@ protocol.") `(("pkg-config" ,pkg-config) ("python" ,python-minimal-wrapper))) (arguments - `(#:configure-flags '("--enable-xkb" - "--disable-static"))) + `(#:configure-flags (list "--enable-xkb" + "--disable-static" + (string-append "--mandir=" + (assoc-ref %outputs "doc") + "/share/man")))) (home-page "https://xcb.freedesktop.org/") (synopsis "The X C Binding (XCB) library") (description @@ -5388,13 +5400,11 @@ over Xlib, including: ;; The default is to use "uname -srm", which captures the kernel ;; version and makes builds non-reproducible. "--with-os-name=GNU" - - "--with-os-vendor=GuixSD" ;not strictly needed, but looks nice - + "--with-os-vendor=Guix" ; not strictly needed, but looks nice ;; For the log file, etc. "--localstatedir=/var" - ;; For sddm + ;; For sddm. "--enable-kdrive" "--enable-xephyr") @@ -5464,18 +5474,17 @@ draggable titlebars and borders.") (define-public libx11 (package (name "libx11") - (version "1.6.9") - (replacement libx11/fixed) + (version "1.6.12") (source (origin (method url-fetch) (uri (string-append - "mirror://xorg/individual/lib/libX11-" + "ftp://ftp.freedesktop.org/pub/xorg//individual/lib/libX11-" version ".tar.bz2")) (sha256 (base32 - "1ldyn9c6pyx54sxzaw120n3q42rqi7b503aqmyjky6fn038fiiww")))) + "1ivfzl1qwk8zh7gc0m5vb58gdxz11jwg7w3d356w16j1d5s2427i")))) (build-system gnu-build-system) (outputs '("out" "doc")) ;8 MiB of man pages + XML @@ -5503,19 +5512,6 @@ draggable titlebars and borders.") (description "Xorg Core X11 protocol client library.") (license license:x11))) -(define libx11/fixed ; Fixes CVE-2020-14344 - (package - (inherit libx11) - (version "1.6.A") - (source - (origin - (method url-fetch) - (uri (string-append - "mirror://xorg/individual/lib/libX11-1.6.10.tar.bz2")) - (sha256 - (base32 - "09k2pqmqbn2m1bpgl7jfxyqxaaxsnzbnp2bp8ycmqldqi5ln4j5g")))))) - ;; packages of height 5 in the propagated-inputs tree (define-public libxcursor diff --git a/gnu/system/locale.scm b/gnu/system/locale.scm index 689d238d1a..4771192cfb 100644 --- a/gnu/system/locale.scm +++ b/gnu/system/locale.scm @@ -147,8 +147,7 @@ data format changes between libc versions." (define %default-locale-libcs ;; The libcs for which we build locales by default. - ;; List the previous and current libc to ease transition. - (list glibc-2.29 glibc)) + (list glibc-2.31 glibc)) (define %default-locale-definitions ;; Arbitrary set of locales that are built by default. They are here mostly diff --git a/gnu/system/shadow.scm b/gnu/system/shadow.scm index a69339bc07..8c76bc2b11 100644 --- a/gnu/system/shadow.scm +++ b/gnu/system/shadow.scm @@ -3,6 +3,7 @@ ;;; Copyright © 2016 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -162,7 +163,12 @@ XTerm*utf8: always XTerm*metaSendsEscape: true\n")) (gdbinit (plain-file "gdbinit" "\ # Tell GDB where to look for separate debugging files. -set debug-file-directory ~/.guix-profile/lib/debug +guile +(use-modules (gdb)) +(execute (string-append \"set debug-file-directory \" + (or (getenv \"GDB_DEBUG_FILE_DIRECTORY\") + \"~/.guix-profile/lib/debug\"))) +end # Authorize extensions found in the store, such as the # pretty-printers of libstdc++. diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 1afae6b4ed..93a79b12d6 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -534,7 +534,7 @@ the operating system." ;; Even as root in a VM, the initializer would fail due to ;; lack of privileges if we use a root-directory that is on ;; a file system that is shared with the host (e.g., /tmp). - (root-directory "/guixsd-system-root")) + (root-directory "/guix-system-root")) (set-path-environment-variable "PATH" '("bin" "sbin") '(#+tar)) (mkdir root-directory) (initialize root-directory) @@ -764,8 +764,8 @@ with '-virtfs' options for the host file systems listed in SHARED-FS." '()) "-no-reboot" - "-object" "rng-random,filename=/dev/urandom,id=guixsd-vm-rng" - "-device" "virtio-rng-pci,rng=guixsd-vm-rng" + "-object" "rng-random,filename=/dev/urandom,id=guix-vm-rng" + "-device" "virtio-rng-pci,rng=guix-vm-rng" #$@(map virtfs-option shared-fs) "-vga std" |