Merge branch 'master' into core-updates
authorChristopher Baines <mail@cbaines.net>
Fri, 5 Mar 2021 22:56:40 +0000 (22:56 +0000)
committerChristopher Baines <mail@cbaines.net>
Sat, 6 Mar 2021 00:18:30 +0000 (00:18 +0000)
83 files changed:
1  2 
Makefile.am
doc/guix.texi
gnu/local.mk
gnu/packages/admin.scm
gnu/packages/algebra.scm
gnu/packages/assembly.scm
gnu/packages/audio.scm
gnu/packages/autotools.scm
gnu/packages/benchmark.scm
gnu/packages/bioinformatics.scm
gnu/packages/build-tools.scm
gnu/packages/cdrom.scm
gnu/packages/check.scm
gnu/packages/cmake.scm
gnu/packages/compression.scm
gnu/packages/crates-io.scm
gnu/packages/crypto.scm
gnu/packages/databases.scm
gnu/packages/display-managers.scm
gnu/packages/education.scm
gnu/packages/emacs-xyz.scm
gnu/packages/emulators.scm
gnu/packages/engineering.scm
gnu/packages/fontutils.scm
gnu/packages/game-development.scm
gnu/packages/games.scm
gnu/packages/gimp.scm
gnu/packages/gl.scm
gnu/packages/gnome.scm
gnu/packages/gnuzilla.scm
gnu/packages/gps.scm
gnu/packages/gtk.scm
gnu/packages/guile-xyz.scm
gnu/packages/image.scm
gnu/packages/linux.scm
gnu/packages/llvm.scm
gnu/packages/machine-learning.scm
gnu/packages/mail.scm
gnu/packages/man.scm
gnu/packages/maths.scm
gnu/packages/messaging.scm
gnu/packages/mpd.scm
gnu/packages/music.scm
gnu/packages/networking.scm
gnu/packages/openldap.scm
gnu/packages/password-utils.scm
gnu/packages/patchutils.scm
gnu/packages/perl.scm
gnu/packages/photo.scm
gnu/packages/plotutils.scm
gnu/packages/protobuf.scm
gnu/packages/python-check.scm
gnu/packages/python-crypto.scm
gnu/packages/python-web.scm
gnu/packages/python-xyz.scm
gnu/packages/python.scm
gnu/packages/radio.scm
gnu/packages/ruby.scm
gnu/packages/rust.scm
gnu/packages/scheme.scm
gnu/packages/screen.scm
gnu/packages/shells.scm
gnu/packages/ssh.scm
gnu/packages/statistics.scm
gnu/packages/syndication.scm
gnu/packages/task-management.scm
gnu/packages/tex.scm
gnu/packages/text-editors.scm
gnu/packages/tls.scm
gnu/packages/version-control.scm
gnu/packages/video.scm
gnu/packages/virtualization.scm
gnu/packages/web.scm
gnu/packages/xdisorg.scm
gnu/packages/xfce.scm
gnu/packages/xml.scm
gnu/packages/xorg.scm
gnu/system/vm.scm
guix/gexp.scm
guix/packages.scm
guix/profiles.scm
guix/scripts/pack.scm
guix/tests.scm

diff --cc Makefile.am
Simple merge
diff --cc doc/guix.texi
Simple merge
diff --cc gnu/local.mk
@@@ -1516,7 -1523,11 +1517,11 @@@ dist_patch_DATA =                                             
    %D%/packages/patches/python-3-deterministic-build-info.patch        \
    %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-3.8-CVE-2021-3177.patch         \
+   %D%/packages/patches/python-3.9-fix-tests.patch             \
+   %D%/packages/patches/python-CVE-2018-14647.patch            \
+   %D%/packages/patches/python-CVE-2020-26116.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-keras-integration-test.patch    \
    %D%/packages/patches/python-pep8-stdlib-tokenize-compat.patch \
    %D%/packages/patches/python-pyfakefs-remove-bad-test.patch  \
 +  %D%/packages/patches/python-pyflakes-fix-tests.patch                \
    %D%/packages/patches/python-flint-includes.patch            \
 +  %D%/packages/patches/python-libxml2-python39-compat.patch   \
    %D%/packages/patches/python-libxml2-utf8.patch              \
+   %D%/packages/patches/python-matplotlib-run-under-wayland-gtk3.patch \
    %D%/packages/patches/python-mediafile-wavpack.patch         \
    %D%/packages/patches/python-memcached-syntax-warnings.patch \
    %D%/packages/patches/python-mox3-python3.6-compat.patch     \
    %D%/packages/patches/rnp-add-version.cmake.patch            \
    %D%/packages/patches/rnp-disable-ruby-rnp-tests.patch               \
    %D%/packages/patches/rnp-unbundle-googletest.patch          \
-   %D%/packages/patches/ruby-rack-ignore-failing-test.patch    \
-   %D%/packages/patches/ruby-rubocop-break-dependency-cycle.patch\
    %D%/packages/patches/ruby-sanitize-system-libxml.patch      \
-   %D%/packages/patches/ruby-tzinfo-data-ignore-broken-test.patch\
    %D%/packages/patches/runc-CVE-2019-5736.patch                       \
 -  %D%/packages/patches/rust-1.19-mrustc.patch                 \
 -  %D%/packages/patches/rust-1.25-accept-more-detailed-gdb-lines.patch \
 -  %D%/packages/patches/rust-1.45-linker-locale.patch          \
 -  %D%/packages/patches/rust-1.48-linker-locale.patch          \
 -  %D%/packages/patches/rust-bootstrap-stage0-test.patch               \
    %D%/packages/patches/rust-coresimd-doctest.patch            \
    %D%/packages/patches/rust-ndarray-remove-blas-src-dep.patch \
    %D%/packages/patches/rust-nettle-disable-vendor.patch                \
  ;;; Copyright © 2019, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
  ;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
  ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
- ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
+ ;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
  ;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
  ;;; Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
 +;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+ ;;; Copyright © 2021 Zheng Junjie <873216071@qq.com>
+ ;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
+ ;;; Copyright © 2021 qblade <qblade@protonmail.com>
+ ;;; Copyright © 2021 Hyunseok Kim <lasnesne@lagunposprasihopre.org>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
@@@ -3840,10 -3972,18 +3977,17 @@@ cache of unix and unix-like systems."
         (modify-phases %standard-phases
           (add-before 'build 'setenv-PATH
             (lambda _
 -             (setenv "PYTHONPATH" (string-append "lib:" (getenv "PYTHONPATH")))
 -             #t)))))
 +             (setenv "PYTHONPATH" "lib"))))))
      (propagated-inputs
       `(("python-pygobject" ,python-pygobject)
-        ("python-pyudev" ,python-pyudev)))
+        ("python-pyudev" ,python-pyudev)
+        ;; For GUI.
+        ("python-pyyaml" ,python-pyyaml)
+        ("python-psutil" ,python-psutil)
+        ("python-xlib" ,python-xlib)
+        ("gtk+" ,gtk+)
+        ("python-pygobject" ,python-pygobject)))
      (home-page "https://smxi.org/docs/inxi.htm")
      (synopsis "Linux devices manager for the Logitech Unifying Receiver")
      (description "This package provides tools to manage clients of the
@@@ -242,10 -242,10 +242,10 @@@ the real span of the lattice."
                      version ".tar.gz"))
                (sha256
                 (base32
-                 "14xs90wrw8mbdx08hxlbhiahp6kgjq6yh27zjw7fvhfjx5nr84f8"))))
+                 "1cgwdpw8b797883z9y92ixxjkv72kiy65zsw2qqf5and1kbzgv41"))))
      (build-system gnu-build-system)
      (native-inputs
 -     `(("texlive" ,(texlive-union
 +     `(("texlive" ,(texlive-updmap.cfg
                      (list texlive-amsfonts)))))
      (inputs `(("gmp" ,gmp)
                ("libx11" ,libx11)
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -14045,15 -14346,19 +14264,19 @@@ choosing which reads pass the filter."
                   #t)))
             (add-after 'install 'wrap-programs
               (lambda* (#:key outputs #:allow-other-keys)
-                (for-each (lambda (file)
-                            (wrap-program file `("GUIX_PYTHONPATH" ":" prefix (,path))))
-                          (find-files "/share/nanopolish/scripts" "\\.py"))
-                (for-each (lambda (file)
-                            (wrap-program file `("PERL5LIB" ":" prefix (,path))))
-                          (find-files  "/share/nanopolish/scripts" "\\.pl"))
-                #t)))))
 -               (let ((pythonpath (getenv "PYTHONPATH"))
++               (let ((pythonpath (getenv "GUIX_PYTHONPATH"))
+                      (perl5lib (getenv "PERL5LIB"))
+                      (scripts (string-append (assoc-ref outputs "out")
+                                              "/share/nanopolish/scripts")))
+                  (for-each (lambda (file)
 -                             (wrap-program file `("PYTHONPATH" ":" prefix (,pythonpath))))
++                             (wrap-program file `("GUIX_PYTHONPATH" ":" prefix (,pythonpath))))
+                            (find-files scripts "\\.py"))
+                  (for-each (lambda (file)
+                              (wrap-script file `("PERL5LIB" ":" prefix (,perl5lib))))
+                            (find-files scripts "\\.pl"))))))))
        (inputs
-        `(("eigen" ,eigen)
+        `(("guile" ,guile-3.0) ; for wrappers
+          ("eigen" ,eigen)
           ("hdf5" ,hdf5)
           ("htslib" ,htslib)
           ("perl" ,perl)
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
  ;;; Copyright © 2020 André Batista <nandre@riseup.net>
  ;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
  ;;; Copyright © 2020 Antoine Côté <antoine.cote@posteo.net>
 +;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
  ;;; Copyright © 2021 aecepoglu <aecepoglu@fastmail.fm>
  ;;; Copyright @ 2021 Zheng Junjie <873216071@qq.com>
+ ;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
@@@ -19290,19 -21801,42 +21802,42 @@@ explosion."
          ("rust-serde-derive" ,rust-serde-derive-1)
          ("rust-serde-json" ,rust-serde-json-1))))))
  
 -(define-public rust-lopdf-0.25
+ (define-public rust-loop9-0.1
+   (package
+     (name "rust-loop9")
+     (version "0.1.3")
+     (source
+      (origin
+        (method url-fetch)
+        (uri (crate-uri "loop9" version))
+        (file-name (string-append name "-" version ".tar.gz"))
+        (sha256
+         (base32 "0h4rys8001cdq4l2f30k66wmvscm4lb2laxgpia794p5652800x7"))))
+     (build-system cargo-build-system)
+     (arguments
+      `(#:skip-build? #t
+        #:cargo-inputs
+        (("rust-imgref" ,rust-imgref-1))))
+     (home-page "https://lib.rs/loop9")
+     (synopsis "Helper function to visit every pixel and its neighbors")
+     (description
+      "This package provides a tiny helper function to visit every pixel in the
+ image together with its neighboring pixels.")
+     (license license:expat)))
 +(define-public rust-lopdf-0.26
    (package
      (name "rust-lopdf")
 -    (version "0.25.0")
 +    (version "0.26.0")
      (source
 -      (origin
 -        (method url-fetch)
 -        (uri (crate-uri "lopdf" version))
 -        (file-name
 -          (string-append name "-" version ".tar.gz"))
 -        (sha256
 -         (base32
 -          "1yb4yj1a8a88w78hz9msg65xbkyx5n4d9gm1xb2c67zaj1xvyw1i"))))
 +     (origin
 +       (method url-fetch)
 +       (uri (crate-uri "lopdf" version))
 +       (file-name
 +        (string-append name "-" version ".tar.gz"))
 +       (sha256
 +        (base32
 +         "1wqnmibs8qzi6pr3ig4h3sg6bfkkgyv4ngdng81x069725r056ml"))))
      (build-system cargo-build-system)
      (arguments
       `(#:cargo-inputs
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -2894,60 -2953,45 +2947,43 @@@ GUI."
      (license license:gpl3+)))
  
  (define-public poke
-   ;; Upstream has yet to tag any releases.
-   (let ((commit "d33317a46e3b7c48130a471a48cbfea1abab70d8")
-         (revision "0"))
-     (package
-       (name "poke")
-       (version (git-version "0.0.0" revision commit))
-       (source
-        (origin
-          (method git-fetch)
-          (uri (git-reference
-                (url "git://git.savannah.gnu.org/poke.git")
-                (commit commit)
-                (recursive? #t)))
-          (sha256
-           (base32 "1dd0r1x123bqi78lrsk58rvg9c9wka0kywdyzn7g3i4hkh54xb7d"))
-          (file-name (git-file-name name version))))
-       (build-system gnu-build-system)
-       ;; The GUI, which we elide, requires tcl and tk.
-       (native-inputs `(("autoconf" ,autoconf)
-                        ("automake" ,automake)
-                        ("bison" ,bison)
-                        ("clisp" ,clisp)
-                        ("dejagnu" ,dejagnu)
-                        ("flex" ,flex)
-                        ("gettext" ,gettext-minimal)
-                        ("help2man" ,help2man)
-                        ("libtool" ,libtool)
-                        ("perl" ,perl)
-                        ("pkg-config" ,pkg-config)
-                        ("python-2" ,python-2)
-                        ("python-3" ,python-3)
-                        ("texinfo" ,texinfo)))
-       ;; FIXME: Enable NBD support by adding `libnbd' (currently unpackaged).
-       ;; FIXME: A "hyperlinks-capable" `libtexststyle' needed for the hserver.
-       (inputs `(("json-c" ,json-c)
-                 ("libgc" ,libgc)
-                 ("readline" ,readline)))
-       (arguments
-        ;; To build the GUI, add the `--enable-gui' configure flag.
-        ;; To enable the "hyperlink server", add the `--enable-hserver' flag.
-        `(#:configure-flags '("--enable-mi")
-          #:phases (modify-phases %standard-phases
-                     ;; This is a non-trivial bootstrap that needs many of the
-                     ;; native-inputs and thus must run after `patch-shebangs'.
-                     (delete 'bootstrap)
-                     (add-after 'patch-source-shebangs 'bootstrap
-                       (lambda _
-                         (invoke "./bootstrap" "--no-git"
-                                 "--no-bootstrap-sync"
-                                 "--gnulib-srcdir=gnulib")
-                         #t)))))
-       (home-page "http://jemarch.net/poke.html")
-       (synopsis "Interactive, extensible editor for binary data")
-       (description "GNU poke is an interactive, extensible editor for binary
+   (package
+     (name "poke")
+     (version "1.0")
+     (source (origin
+               (method url-fetch)
+               (uri (string-append "mirror://gnu/poke/poke-" version
+                                   ".tar.gz"))
+               (sha256
+                (base32
+                 "02jvla69xd0nnlg2bil2vxxxglqgylswml6h5hy2nxy0023hp4yy"))))
+     ;; XXX: Version 1.0 only supports 64-bit systems.
+     (supported-systems '("x86_64-linux" "aarch64-linux"))
+     (build-system gnu-build-system)
+     ;; The GUI, which we elide, requires tcl and tk.
 -    (native-inputs `(;; 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)
++    (native-inputs `(("bison" ,bison)
+                      ("clisp" ,clisp)
+                      ("dejagnu" ,dejagnu)
+                      ("flex" ,flex)
+                      ("libtool" ,libtool)
+                      ("perl" ,perl)
+                      ("pkg-config" ,pkg-config)
+                      ("python-2" ,python-2)
+                      ("python-3" ,python-3)))
+     ;; FIXME: Enable NBD support by adding `libnbd' (currently unpackaged).
+     (inputs `(("json-c" ,json-c)
+               ("libgc" ,libgc)
+               ("readline" ,readline)
+               ("libtextstyle" ,libtextstyle)))
+     (arguments
+      ;; To build the GUI, add the `--enable-gui' configure flag.
+      ;; To enable the "hyperlink server", add the `--enable-hserver' flag.
+      `(#:configure-flags '("--enable-mi")))
+     (home-page "http://jemarch.net/poke.html")
+     (synopsis "Interactive, extensible editor for binary data")
+     (description "GNU poke is an interactive, extensible editor for binary
    data.  Not limited to editing basic entities such as bits and bytes, it
    provides a full-fledged procedural, interactive programming language designed
    to describe data structures and to operate on them.")
@@@ -11,8 -11,7 +11,9 @@@
  ;;; Copyright © 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
  ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
  ;;; Copyright © 2020 Roel Janssen <roel@gnu.org>
 +;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
 +;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+ ;;; Copyright © 2020, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
@@@ -901,13 -868,17 +901,17 @@@ generated list of fallback fonts are ch
        ("gettext" ,gettext-minimal)
        ("glib" ,glib "bin")
        ("gobject-introspection" ,gobject-introspection)
-       ("desktop-file-utils" ,desktop-file-utils)))
+       ("pkg-config" ,pkg-config)
 -      ("vala" ,vala-0.50)
++      ("vala" ,vala)
+       ("yelp-tools" ,yelp-tools)))
     (inputs
-     `(("json-glib" ,json-glib)
-       ("sqlite" ,sqlite)
-       ("fonconfig" ,fontconfig)
+     `(("fonconfig" ,fontconfig)
        ("freetype" ,freetype)
-       ("gtk+" ,gtk+)))
+       ("gtk+" ,gtk+)
+       ("json-glib" ,json-glib)
+       ("libsoup" ,libsoup)
+       ("sqlite" ,sqlite)
+       ("webkitgtk" ,webkitgtk)))
     (home-page "https://fontmanager.github.io/")
     (synopsis "Simple font management for GTK+ desktop environments")
     (description "Font Manager is intended to provide a way for users to
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -1598,9 -1598,9 +1598,9 @@@ standards of the IceCat project."
               (file-name (string-append "thunderbird-" version "-checkout"))
               (sha256
                (base32
-                "0kpn6jvymryf2gpj0dl5lpgln8mc3kxi3makms0wb84aajn842jv")))))
+                "19h1s9qcxzcvbd1m07xajk5lhpikj53k5fp3nwvl38xj7a3s0gxw")))))
         ("autoconf" ,autoconf-2.13)
 -       ("cargo" ,rust-1.41 "cargo")
 +       ("cargo" ,rust "cargo")
         ("clang" ,clang)
         ("llvm" ,llvm)
         ("nasm" ,nasm)
Simple merge
@@@ -24,7 -24,8 +24,8 @@@
  ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
  ;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
  ;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
 -;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 +;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+ ;;; Copyright © 2021 Leo Famulari <leo@famulari.name>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
Simple merge
  ;;; 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>
- ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
+ ;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net>
+ ;;; Copyright © 2021 Sharlatan Hellseher <sharlatanus@gmail.com>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
Simple merge
Simple merge
@@@ -15,8 -15,8 +15,8 @@@
  ;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
  ;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
  ;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
- ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
+ ;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net>
 -;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
 +;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -12747,10 -12941,16 +12885,9 @@@ graphviz."
                          (call-with-output-file "skipped_tests.txt"
                            (lambda (port)
                              (format port "~a~%"
-                                     (string-join disabled-tests "\n"))))
-                         #t)))
+                                     (string-join disabled-tests "\n")))))))
                    (replace 'check
                      (lambda _
 -                      ;; Make sure the build directory is on PYTHONPATH.
 -                      (setenv "PYTHONPATH"
 -                              (string-append
 -                               (getenv "PYTHONPATH") ":"
 -                               (getcwd) "/build/"
 -                               (car (scandir "build" (cut string-prefix? "lib." <>)))))
 -
                        ;; Use the build daemons configured number of workers.
                        (setenv "NWORKERS" (number->string (parallel-job-count)))
  
@@@ -59,7 -59,7 +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>
 -;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
++;;; Copyright © 2020, 2021 Greg Hogan <code@greghogan.com>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
Simple merge
Simple merge
@@@ -706,20 -1348,44 +706,20 @@@ safety and thread safety guarantees."
                 (lambda* (#:key outputs #:allow-other-keys)
                   (invoke "./x.py" "install")
                   (substitute* "config.toml"
 -                   ;; replace prefix to specific output
 +                   ;; Adjust the prefix to the 'cargo' output.
                     (("prefix = \"[^\"]*\"")
 -                    (string-append "prefix = \"" (assoc-ref outputs "cargo") "\"")))
 +                    (format #f "prefix = ~s" (assoc-ref outputs "cargo"))))
                   (invoke "./x.py" "install" "cargo")
                   (substitute* "config.toml"
 -                   ;; replace prefix to specific output
 +                   ;; Adjust the prefix to the 'rustfmt' output.
                     (("prefix = \"[^\"]*\"")
 -                    (string-append "prefix = \"" (assoc-ref outputs "rustfmt") "\"")))
 -                 (invoke "./x.py" "install" "rustfmt")))
 -             (replace 'delete-install-logs
 -               (lambda* (#:key outputs #:allow-other-keys)
 -                 (define (delete-manifest-file out-path file)
 -                   (delete-file (string-append out-path "/lib/rustlib/" file)))
 -
 -                 (let ((out (assoc-ref outputs "out"))
 -                       (cargo-out (assoc-ref outputs "cargo"))
 -                       (rustfmt-out (assoc-ref outputs "rustfmt")))
 -                   (for-each
 -                     (lambda (file) (delete-manifest-file out file))
 -                     '("install.log"
 -                       "manifest-rust-docs"
 -                       ,(string-append "manifest-rust-std-"
 -                                       (nix-system->gnu-triplet-for-rust))
 -                       "manifest-rustc"))
 -                   (for-each
 -                     (lambda (file) (delete-manifest-file cargo-out file))
 -                     '("install.log"
 -                       "manifest-cargo"))
 -                   (for-each
 -                     (lambda (file) (delete-manifest-file rustfmt-out file))
 -                     '("install.log"
 -                       "manifest-rustfmt-preview"))
 -                   #t))))))))))
 +                    (format #f "prefix = ~s" (assoc-ref outputs "rustfmt"))))
 +                 (invoke "./x.py" "install" "rustfmt"))))))))))
  
- (define rust-1.47
+ (define-public rust-1.47
 -  (let ((base-rust
 -         (rust-bootstrapped-package rust-1.46 "1.47.0"
 -          "07fqd2vp7cf1ka3hr207dnnz93ymxml4935vp74g4is79h3dz19i")))
 +  (let ((base-rust (rust-bootstrapped-package
 +                    rust-1.46 "1.47.0"
 +                    "07fqd2vp7cf1ka3hr207dnnz93ymxml4935vp74g4is79h3dz19i")))
      (package
        (inherit base-rust)
        (inputs
                 (lambda* (#:key inputs #:allow-other-keys)
                   (let ((bash (assoc-ref inputs "bash")))
                     (substitute* "library/std/src/process/tests.rs"
 -                     (("\"/bin/sh\"") (string-append "\"" bash "/bin/sh\"")))
 +                     (("\"/bin/sh\"")
 +                      (string-append "\"" bash "/bin/sh\"")))
                     (substitute* "library/std/src/sys/unix/process/process_common/tests.rs"
 -                     (("fn test_process_mask") "#[allow(unused_attributes)]
 +                     (("fn test_process_mask")
 +                      "#[allow(unused_attributes)]
      #[ignore]
 -    fn test_process_mask"))
 -                   #t))))))))))
 -
 -(define-public rust-1.49
 -  (rust-bootstrapped-package rust-1.48 "1.49.0"
 -    "0yf7kll517398dgqsr7m3gldzj0iwsp3ggzxrayckpqzvylfy2mm"))
 +    fn test_process_mask")))))
 +             (add-after 'unpack 'disable-interrupt-tests
 +               (lambda _
 +                 ;; This test hangs in the build container; disable it.
 +                 (substitute* (match (find-files "." "^freshness.rs$")
 +                                ((file) file))
 +                   (("fn linking_interrupted")
 +                    "#[ignore]\nfn linking_interrupted"))
 +                 ;; Likewise for the ctrl_c_kills_everyone test.
 +                 (substitute* (match (find-files "." "^death.rs$")
 +                                ((file) file))
 +                   (("fn ctrl_c_kills_everyone")
 +                    "#[ignore]\nfn ctrl_c_kills_everyone"))))
 +             (add-after 'configure 'enable-docs
 +               (lambda _
 +                 (substitute* "config.toml"
 +                   (("docs = false")
 +                    "docs = true"))))
 +             (add-after 'configure 'add-gdb-to-config
 +               (lambda* (#:key inputs #:allow-other-keys)
 +                 (let ((gdb (assoc-ref inputs "gdb")))
 +                   (substitute* "config.toml"
 +                     (("^python =.*" all)
 +                      (string-append all
 +                                     "gdb = \"" gdb "/bin/gdb\"\n"))))))))))
 +      ;; Add test inputs.
 +      (native-inputs (cons*
 +                      ;; The tests fail when using GDB 10 (see:
 +                      ;; https://github.com/rust-lang/rust/issues/79009).
 +                      `("gdb" ,gdb-9.2)
 +                      `("procps" ,procps)
 +                      (package-native-inputs base-rust))))))
+ (define-public rust-1.50
 -  (rust-bootstrapped-package rust-1.49 "1.50.0"
++  (rust-bootstrapped-package rust "1.50.0"
+     "0pjs7j62maiyvkmhp9zrxl528g2n0fphp4rq6ap7aqdv0a6qz5wm"))
 -
 -;; TODO(staging): Bump this variable to the latest packaged rust.
 -(define-public rust rust-1.45)
Simple merge
Simple merge
@@@ -16,7 -16,7 +16,8 @@@
  ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
  ;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com>
  ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
 +;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
+ ;;; Copyright © 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -47,7 -47,7 +47,8 @@@
  ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
  ;;; Copyright © 2020, 2021 Ryan Prior <rprior@protonmail.com>
  ;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro>
 +;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+ ;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
  ;;; Copyright © 2020 Gabriel Arazas <foo.dogsquared@gmail.com>
  ;;; Copyright © 2020 James Smith <jsubuntuxp@disroot.org>
  ;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
- ;;; Copyright © 2020 Zheng Junjie <873216071@qq.com>
+ ;;; Copyright © 2020, 2021 Zheng Junjie <873216071@qq.com>
 +;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+ ;;; Copyright © 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
+ ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc guix/gexp.scm
Simple merge
Simple merge
Simple merge
Simple merge
diff --cc guix/tests.scm
Simple merge