%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.
;;;
(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
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)
#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)
;;; 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.
;;;
("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
(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.")
;;; 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.
;;;
("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
(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)
;;; 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.
;;;
;;; 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.
;;;
;;; 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.
;;;
(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)))
;;; 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.
;;;
(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)
;;; 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.
;;;
;;; 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.
;;;