guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

02/06: Merge remote-tracking branch 'origin/master' into core-updates


From: guix-commits
Subject: 02/06: Merge remote-tracking branch 'origin/master' into core-updates
Date: Wed, 24 Mar 2021 15:01:17 -0400 (EDT)

efraim pushed a commit to branch core-updates
in repository guix.

commit 2aab587f842908a886e3bd08b028885dddd650e0
Merge: 5664bcd 65c46e7
Author: Efraim Flashner <efraim@flashner.co.il>
AuthorDate: Wed Mar 24 15:28:33 2021 +0200

    Merge remote-tracking branch 'origin/master' into core-updates

 .guix-authorizations                               |    4 +
 Makefile.am                                        |    7 +-
 build-aux/build-self.scm                           |   19 +-
 configure.ac                                       |    6 +-
 doc/build.scm                                      |   34 +-
 doc/contributing.texi                              |    9 +-
 doc/guix.texi                                      |  473 +++---
 etc/guix-install.sh                                |    4 +
 etc/news.scm                                       |  338 +++-
 gnu/build/activation.scm                           |   53 +-
 gnu/build/file-systems.scm                         |   10 +-
 gnu/ci.scm                                         |   28 +-
 gnu/local.mk                                       |   79 +-
 gnu/packages/admin.scm                             |   36 +-
 gnu/packages/adns.scm                              |   18 +
 gnu/packages/algebra.scm                           |   35 +-
 gnu/packages/astronomy.scm                         |    4 +-
 gnu/packages/audio.scm                             |   49 +-
 gnu/packages/autotools.scm                         |    2 +
 gnu/packages/axoloti.scm                           |   19 +-
 gnu/packages/backup.scm                            |   40 +-
 gnu/packages/base.scm                              |   13 +
 gnu/packages/benchmark.scm                         |    6 +-
 gnu/packages/bioconductor.scm                      |  785 ++++++++-
 gnu/packages/bioinformatics.scm                    |  918 +++--------
 gnu/packages/bootloaders.scm                       |    5 +-
 gnu/packages/bootstrap.scm                         |   38 +-
 gnu/packages/build-tools.scm                       |   31 +-
 gnu/packages/busybox.scm                           |    5 +-
 gnu/packages/c.scm                                 |   96 +-
 gnu/packages/check.scm                             |   36 +-
 gnu/packages/chromium.scm                          |   71 +-
 gnu/packages/ci.scm                                |   91 +-
 gnu/packages/cobol.scm                             |    9 +-
 gnu/packages/commencement.scm                      |   28 +-
 gnu/packages/compression.scm                       |  111 +-
 gnu/packages/cpp.scm                               |   18 +-
 gnu/packages/cran.scm                              | 1595 +++++++++++++++---
 gnu/packages/crates-graphics.scm                   |  160 +-
 gnu/packages/crates-io.scm                         | 1714 ++++++++++++++++----
 gnu/packages/crypto.scm                            |   63 +-
 gnu/packages/cups.scm                              |   19 +-
 gnu/packages/curl.scm                              |    6 +-
 gnu/packages/cyrus-sasl.scm                        |   18 +
 gnu/packages/databases.scm                         |  374 +----
 gnu/packages/dbm.scm                               |    6 +
 gnu/packages/diffoscope.scm                        |   11 +-
 gnu/packages/disk.scm                              |    9 +-
 gnu/packages/django.scm                            |   10 +-
 gnu/packages/dns.scm                               |    8 +-
 gnu/packages/docbook.scm                           |    4 +-
 gnu/packages/docker.scm                            |   32 +-
 gnu/packages/dunst.scm                             |   22 +-
 gnu/packages/ebook.scm                             |    6 +-
 gnu/packages/education.scm                         |    8 +-
 gnu/packages/electronics.scm                       |    6 +-
 gnu/packages/elf.scm                               |    5 +
 gnu/packages/elixir.scm                            |    6 +-
 gnu/packages/emacs-xyz.scm                         |  421 ++++-
 gnu/packages/embedded.scm                          |    4 +-
 gnu/packages/emulators.scm                         |   54 +-
 gnu/packages/engineering.scm                       |   87 +-
 gnu/packages/enlightenment.scm                     |    4 +-
 gnu/packages/esolangs.scm                          |   37 +
 gnu/packages/fcitx5.scm                            |   17 +-
 gnu/packages/file-systems.scm                      |   32 +-
 gnu/packages/finance.scm                           |   34 +-
 gnu/packages/fonts.scm                             |   35 +-
 gnu/packages/fpga.scm                              |    4 +-
 gnu/packages/freedesktop.scm                       |  100 +-
 gnu/packages/game-development.scm                  |   13 +-
 gnu/packages/games.scm                             |   42 +-
 gnu/packages/gcc.scm                               |   38 +-
 gnu/packages/geo.scm                               |   10 +-
 gnu/packages/gettext.scm                           |    3 +-
 gnu/packages/gimp.scm                              |    4 +-
 gnu/packages/gl.scm                                |    7 +-
 gnu/packages/glib.scm                              |  116 +-
 gnu/packages/gnome-xyz.scm                         |   64 +
 gnu/packages/gnome.scm                             |  166 +-
 gnu/packages/gnunet.scm                            |    2 +-
 gnu/packages/gnupg.scm                             |    9 +-
 gnu/packages/gnuzilla.scm                          |    6 +-
 gnu/packages/golang.scm                            |  284 +++-
 gnu/packages/graphics.scm                          |    8 +-
 gnu/packages/groff.scm                             |    3 +-
 gnu/packages/gtk.scm                               |   92 +-
 gnu/packages/guile-xyz.scm                         |  131 +-
 gnu/packages/guile.scm                             |   53 +-
 gnu/packages/haskell-apps.scm                      |    4 +-
 gnu/packages/ibus.scm                              |   26 +-
 gnu/packages/image-processing.scm                  |   66 +-
 gnu/packages/image-viewers.scm                     |   38 +
 gnu/packages/image.scm                             |   55 +-
 gnu/packages/imagemagick.scm                       |   43 +-
 gnu/packages/irc.scm                               |    6 +-
 gnu/packages/jami.scm                              |    3 +-
 gnu/packages/java.scm                              |  120 +-
 gnu/packages/julia-xyz.scm                         |  280 +++-
 gnu/packages/kde-multimedia.scm                    |    2 +-
 gnu/packages/kde-pim.scm                           |   12 +-
 gnu/packages/kde.scm                               |    5 +-
 gnu/packages/language.scm                          |  127 +-
 gnu/packages/libcanberra.scm                       |    2 +-
 gnu/packages/libevent.scm                          |    1 +
 gnu/packages/linphone.scm                          |   88 +-
 gnu/packages/linux.scm                             |  105 +-
 gnu/packages/lirc.scm                              |    3 +-
 gnu/packages/lisp-xyz.scm                          |  364 ++++-
 gnu/packages/lisp.scm                              |    8 +-
 gnu/packages/llvm.scm                              |    3 +-
 gnu/packages/logging.scm                           |    2 +-
 gnu/packages/lolcode.scm                           |   60 -
 gnu/packages/lua.scm                               |   41 +-
 gnu/packages/mail.scm                              |   70 +-
 gnu/packages/make-bootstrap.scm                    |    4 +-
 gnu/packages/man.scm                               |   20 +-
 gnu/packages/markup.scm                            |   24 +
 gnu/packages/mate.scm                              |    8 +-
 gnu/packages/maths.scm                             |    4 +-
 gnu/packages/mes.scm                               |   80 +-
 gnu/packages/messaging.scm                         |  260 ++-
 gnu/packages/mp3.scm                               |   10 +-
 gnu/packages/mpd.scm                               |    5 +-
 gnu/packages/mpi.scm                               |   33 +-
 gnu/packages/music.scm                             |  115 +-
 gnu/packages/networking.scm                        |   43 +-
 gnu/packages/node.scm                              |    3 +-
 gnu/packages/onc-rpc.scm                           |    3 +-
 gnu/packages/opencl.scm                            |   68 +-
 gnu/packages/openkinect.scm                        |    5 +-
 gnu/packages/package-management.scm                |   19 +-
 gnu/packages/parallel.scm                          |   36 +-
 gnu/packages/password-utils.scm                    |  171 +-
 gnu/packages/patches/abseil-cpp-fix-gtest.patch    |   16 +
 .../patches/abseil-cpp-fix-strerror_test.patch     |   42 +
 gnu/packages/patches/aws-c-cal-cmake-prefix.patch  |   13 +
 gnu/packages/patches/aws-c-io-cmake-prefix.patch   |   13 +
 .../aws-c-io-disable-networking-tests.patch        |   81 +
 gnu/packages/patches/bsdiff-CVE-2014-9862.patch    |   15 +
 gnu/packages/patches/busybox-CVE-2021-28831.patch  |   57 +
 gnu/packages/patches/cairo-CVE-2018-19876.patch    |   37 +
 gnu/packages/patches/cairo-CVE-2020-35492.patch    |   49 +
 .../patches/cyrus-sasl-CVE-2019-19906.patch        |   25 +
 .../patches/efibootmgr-remove-extra-decl.patch     |   27 +
 .../patches/evolution-CVE-2020-11879.patch         |  122 ++
 .../evolution-data-server-CVE-2020-14928.patch     |  115 ++
 .../evolution-data-server-CVE-2020-16117.patch     |   28 +
 .../patches/gdk-pixbuf-CVE-2020-29385.patch        |   53 +
 gnu/packages/patches/geary-CVE-2020-24661.patch    |  133 ++
 gnu/packages/patches/glib-CVE-2021-27218.patch     |  132 ++
 gnu/packages/patches/glib-CVE-2021-27219-01.patch  |  176 ++
 gnu/packages/patches/glib-CVE-2021-27219-02.patch  |  264 +++
 gnu/packages/patches/glib-CVE-2021-27219-03.patch  |  136 ++
 gnu/packages/patches/glib-CVE-2021-27219-04.patch  |  308 ++++
 gnu/packages/patches/glib-CVE-2021-27219-05.patch  |   47 +
 gnu/packages/patches/glib-CVE-2021-27219-06.patch  |   94 ++
 gnu/packages/patches/glib-CVE-2021-27219-07.patch  |  118 ++
 gnu/packages/patches/glib-CVE-2021-27219-08.patch  |   94 ++
 gnu/packages/patches/glib-CVE-2021-27219-09.patch  |   98 ++
 gnu/packages/patches/glib-CVE-2021-27219-10.patch  |   52 +
 gnu/packages/patches/glib-CVE-2021-27219-11.patch  |   57 +
 gnu/packages/patches/glib-CVE-2021-27219-12.patch  |   30 +
 gnu/packages/patches/glib-CVE-2021-27219-13.patch  |   32 +
 gnu/packages/patches/glib-CVE-2021-27219-14.patch  |   32 +
 gnu/packages/patches/glib-CVE-2021-27219-15.patch  |   95 ++
 gnu/packages/patches/glib-CVE-2021-27219-16.patch  |   43 +
 gnu/packages/patches/glib-CVE-2021-27219-17.patch  |   37 +
 gnu/packages/patches/glib-CVE-2021-27219-18.patch  |  232 +++
 gnu/packages/patches/glib-CVE-2021-28153.patch     |  283 ++++
 gnu/packages/patches/glibc-ldd-powerpc.patch       |   10 +
 .../patches/gnome-shell-CVE-2020-17489.patch       |   46 +
 gnu/packages/patches/gnutls-CVE-2021-20231.patch   |   62 +
 gnu/packages/patches/gnutls-CVE-2021-20232.patch   |   60 +
 .../patches/hplip-remove-imageprocessor.patch      |   41 +-
 .../patches/libcaca-CVE-2021-3410-pt1.patch        |  137 ++
 .../patches/libcaca-CVE-2021-3410-pt2.patch        |   96 ++
 gnu/packages/patches/libcroco-CVE-2020-12825.patch |  187 +++
 ...ngodb-support-unknown-linux-distributions.patch |   55 -
 gnu/packages/patches/mpg321-CVE-2019-14247.patch   |   23 +
 .../patches/ppsspp-disable-upgrade-and-gold.patch  |  113 +-
 .../patches/python-shouldbe-0.1.2-cpy3.8.patch     |   82 -
 gnu/packages/patches/qemu-build-info-manual.patch  |  201 ++-
 .../patches/sdcc-disable-non-free-code.patch       |  257 ++-
 .../patches/ungoogled-chromium-system-opus.patch   |   27 +
 gnu/packages/patches/unzip-32bit-zipbomb-fix.patch |   50 +
 .../unzip-COVSCAN-fix-unterminated-string.patch    |  131 ++
 gnu/packages/patches/unzip-CVE-2016-9844.patch     |   39 +
 gnu/packages/patches/unzip-CVE-2018-1000035.patch  |   34 +
 gnu/packages/patches/unzip-CVE-2018-18384.patch    |   35 +
 .../patches/unzip-alt-iconv-utf8-print.patch       |  381 +++++
 gnu/packages/patches/unzip-alt-iconv-utf8.patch    |  398 +++++
 gnu/packages/patches/unzip-case-insensitive.patch  |  131 ++
 gnu/packages/patches/unzip-close.patch             |  176 ++
 gnu/packages/patches/unzip-exec-shield.patch       |   10 +
 gnu/packages/patches/unzip-fix-recmatch.patch      |  477 ++++++
 gnu/packages/patches/unzip-manpage-fix.patch       |   11 +
 gnu/packages/patches/unzip-overflow.patch          |   25 +
 gnu/packages/patches/unzip-timestamp.patch         |   41 +
 gnu/packages/patches/unzip-valgrind.patch          |   26 +
 gnu/packages/patches/unzip-x-option.patch          |   28 +
 gnu/packages/patches/unzip-zipbomb-manpage.patch   |   25 +
 gnu/packages/patches/unzip-zipbomb-part1.patch     |   25 +
 gnu/packages/patches/unzip-zipbomb-part2.patch     |  349 ++++
 gnu/packages/patches/unzip-zipbomb-part3.patch     |  112 ++
 .../vtk-fix-freetypetools-build-failure.patch      |   36 +
 gnu/packages/patches/ytnef-CVE-2021-3403.patch     |   32 +
 gnu/packages/patches/ytnef-CVE-2021-3404.patch     |   30 +
 gnu/packages/pdf.scm                               |    4 +-
 gnu/packages/pep.scm                               |   15 -
 gnu/packages/perl.scm                              |    6 +-
 gnu/packages/photo.scm                             |    6 +-
 gnu/packages/plotutils.scm                         |    4 +-
 gnu/packages/pretty-print.scm                      |    5 +-
 gnu/packages/prolog.scm                            |    4 +-
 gnu/packages/python-build.scm                      |    4 +-
 gnu/packages/python-check.scm                      |   36 +-
 gnu/packages/python-compression.scm                |    3 +-
 gnu/packages/python-crypto.scm                     |   10 +-
 gnu/packages/python-science.scm                    |  104 +-
 gnu/packages/python-web.scm                        |  227 ++-
 gnu/packages/python-xyz.scm                        |  627 ++++---
 gnu/packages/python.scm                            |   11 +-
 gnu/packages/qt.scm                                |  154 +-
 gnu/packages/radio.scm                             |  160 ++
 gnu/packages/raspberry-pi.scm                      |    2 +-
 gnu/packages/rpc.scm                               |    6 +-
 gnu/packages/ruby.scm                              |   15 +-
 gnu/packages/samba.scm                             |    4 +-
 gnu/packages/sawfish.scm                           |    2 +-
 gnu/packages/scanner.scm                           |    3 +-
 gnu/packages/sdl.scm                               |    3 +-
 gnu/packages/security-token.scm                    |   10 +-
 gnu/packages/selinux.scm                           |   12 +-
 gnu/packages/sequoia.scm                           |   76 +
 gnu/packages/serialization.scm                     |    4 +-
 gnu/packages/shells.scm                            |  619 +++----
 gnu/packages/simulation.scm                        |    2 +-
 gnu/packages/skarnet.scm                           |   24 +-
 gnu/packages/sphinx.scm                            |   52 +
 gnu/packages/ssh.scm                               |    4 +-
 gnu/packages/statistics.scm                        |  279 +++-
 gnu/packages/sync.scm                              |  154 ++
 gnu/packages/syndication.scm                       |   68 +-
 gnu/packages/task-management.scm                   |   61 +-
 gnu/packages/tcl.scm                               |   50 +
 gnu/packages/telegram.scm                          |    2 +-
 gnu/packages/telephony.scm                         |   38 +-
 gnu/packages/terminals.scm                         |   78 +-
 gnu/packages/tex.scm                               |   32 +-
 gnu/packages/texinfo.scm                           |    3 +-
 gnu/packages/text-editors.scm                      |   18 +-
 gnu/packages/textutils.scm                         |   62 +-
 gnu/packages/time.scm                              |   51 +-
 gnu/packages/tls.scm                               |   86 +-
 gnu/packages/tor.scm                               |  174 +-
 gnu/packages/toys.scm                              |   39 +
 gnu/packages/upnp.scm                              |    7 +-
 gnu/packages/version-control.scm                   |   49 +-
 gnu/packages/video.scm                             |   84 +-
 gnu/packages/vim.scm                               |   20 +-
 gnu/packages/virtualization.scm                    |  277 ++--
 gnu/packages/vpn.scm                               |    8 +-
 gnu/packages/web-browsers.scm                      |   46 +-
 gnu/packages/web.scm                               |  132 +-
 gnu/packages/webkit.scm                            |   24 +-
 gnu/packages/wm.scm                                |   68 +-
 gnu/packages/wxwidgets.scm                         |    4 +-
 gnu/packages/xdisorg.scm                           |    9 +-
 gnu/packages/xml.scm                               |  105 +-
 gnu/packages/xorg.scm                              |  110 +-
 gnu/packages/zile.scm                              |    2 +-
 gnu/services.scm                                   |   10 +-
 gnu/services/authentication.scm                    |   22 +-
 gnu/services/base.scm                              |    3 +
 gnu/services/cuirass.scm                           |  109 +-
 gnu/services/cups.scm                              |   12 +-
 gnu/services/databases.scm                         |   88 -
 gnu/services/dbus.scm                              |   37 +-
 gnu/services/dns.scm                               |   21 +-
 gnu/services/sysctl.scm                            |   10 +-
 gnu/services/virtualization.scm                    |  227 +--
 gnu/tests/cuirass.scm                              |  330 ----
 gnu/tests/databases.scm                            |   83 -
 guix/build-system/cargo.scm                        |    5 +
 guix/build-system/go.scm                           |   35 +-
 guix/build-system/node.scm                         |    2 -
 guix/build-system/python.scm                       |    6 +-
 guix/build/cargo-build-system.scm                  |   76 +-
 guix/build/download.scm                            |   40 +-
 guix/build/syscalls.scm                            |   78 +-
 guix/channels.scm                                  |    2 +
 guix/download.scm                                  |   49 +-
 guix/git-download.scm                              |   11 +-
 guix/gnu-maintenance.scm                           |  162 +-
 guix/http-client.scm                               |   11 +-
 guix/import/gnome.scm                              |   12 +-
 guix/import/go.scm                                 |  547 +++++++
 guix/import/utils.scm                              |    1 +
 guix/inferior.scm                                  |   19 +-
 guix/licenses.scm                                  |    7 +-
 guix/narinfo.scm                                   |   27 +-
 guix/packages.scm                                  |    4 +-
 guix/scripts/build.scm                             |    4 +-
 guix/scripts/describe.scm                          |    2 +-
 guix/scripts/import.scm                            |    2 +-
 guix/scripts/import/go.scm                         |  118 ++
 guix/scripts/package.scm                           |    5 +-
 guix/scripts/substitute.scm                        |  122 +-
 guix/scripts/system.scm                            |    8 +-
 guix/scripts/time-machine.scm                      |    5 +
 guix/scripts/weather.scm                           |   20 +-
 guix/self.scm                                      |    6 +-
 guix/status.scm                                    |    5 +-
 guix/substitutes.scm                               |   49 +-
 guix/tests.scm                                     |    4 +-
 guix/tests/http.scm                                |   38 +-
 guix/utils.scm                                     |   20 +-
 m4/guix.m4                                         |   21 +-
 nix/libstore/build.cc                              |   43 +-
 nix/nix-daemon/guix-daemon.cc                      |    4 +-
 po/guix/POTFILES.in                                |    1 +
 tests/derivations.scm                              |   41 +-
 tests/elpa.scm                                     |    3 -
 tests/gnu-maintenance.scm                          |    5 +-
 tests/go.scm                                       |  292 ++++
 tests/guix-build.sh                                |    6 +-
 tests/lint.scm                                     |  181 +--
 tests/store.scm                                    |    2 +-
 tests/texlive.scm                                  |    3 -
 330 files changed, 20712 insertions(+), 5822 deletions(-)

diff --cc gnu/local.mk
index 572f439,14d228c..ce0a79f
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@@ -1,8 -1,8 +1,8 @@@
  # GNU Guix --- Functional package management for GNU
 -# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic 
Courtès <ludo@gnu.org>
 +# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 
Ludovic Courtès <ludo@gnu.org>
  # Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Andreas Enge 
<andreas@enge.fr>
  # Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
- # Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Mark H Weaver 
<mhw@netris.org>
+ # Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Mark H 
Weaver <mhw@netris.org>
  # Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
  # Copyright © 2016, 2017, 2018 Kei Kebreau <kkebreau@posteo.net>
  # Copyright © 2016, 2017 Rene Saavedra <rennes@openmailbox.org>
@@@ -871,9 -872,11 +874,12 @@@ dist_patch_DATA =                                
                
    %D%/packages/patches/blender-2.79-oiio2.patch                       \
    %D%/packages/patches/blender-2.79-python-3.7-fix.patch      \
    %D%/packages/patches/blender-2.79-python-3.8-fix.patch      \
 +  %D%/packages/patches/boost-fix-transitive-linking.patch     \
    %D%/packages/patches/bpftrace-disable-bfd-disasm.patch      \
+   %D%/packages/patches/busybox-CVE-2021-28831.patch           \
    %D%/packages/patches/byobu-writable-status.patch            \
+   %D%/packages/patches/cairo-CVE-2018-19876.patch             \
+   %D%/packages/patches/cairo-CVE-2020-35492.patch             \
    %D%/packages/patches/calibre-no-updates-dialog.patch                \
    %D%/packages/patches/calibre-remove-test-sqlite.patch               \
    %D%/packages/patches/calibre-remove-test-unrar.patch                \
@@@ -1744,7 -1815,10 +1805,9 @@@
    %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/yggdrasil-extra-config.patch   \
+   %D%/packages/patches/ytnef-CVE-2021-3403.patch      \
 -  %D%/packages/patches/ytnef-CVE-2021-3404.patch      \
 -  %D%/packages/patches/zziplib-CVE-2018-16548.patch
++  %D%/packages/patches/ytnef-CVE-2021-3404.patch
  
  MISC_DISTRO_FILES =                           \
    %D%/packages/ld-wrapper.in
diff --cc gnu/packages/adns.scm
index a67a002,b36ec18..36f7211
--- a/gnu/packages/adns.scm
+++ b/gnu/packages/adns.scm
@@@ -73,7 -73,8 +73,8 @@@ scripts."
                      ".tar.gz"))
                (sha256
                 (base32
 -                "129sm0wzij0mp8vdv68v18hnykcjb6ivi66wnqnnw598q7bql1fy"))))
 +                "1kl6bzlcmxn0524h5qldlbh99wf96whhvk54w3p4igf3xk8150yh"))))
+     (replacement c-ares/fixed)
      (build-system gnu-build-system)
      (native-inputs
       `(("pkg-config" ,pkg-config)))
diff --cc gnu/packages/base.scm
index 5c65abe,f0f9353..778f24d
--- a/gnu/packages/base.scm
+++ b/gnu/packages/base.scm
@@@ -871,8 -905,17 +872,16 @@@ the store."
                                       ((out) static)))
                                   (filter linker-script?
                                           (map (cut string-append slib "/" <>)
 -                                              files)))
 -                       #t)))
 +                                              files))))))
  
+                  ,@(if (target-powerpc?)
+                      '((add-after 'unpack 'apply-patch
+                          (lambda* (#:key inputs #:allow-other-keys)
+                            (let ((patch (assoc-ref inputs
+                                                    "powerpc64le-patch")))
+                              (invoke "patch" "--force" "-p1"
+                                      "-i" patch)))))
+                      '())
                   ,@(if (hurd-target?)
                         '((add-after 'install 'augment-libc.so
                             (lambda* (#:key outputs #:allow-other-keys)
diff --cc gnu/packages/build-tools.scm
index 27733a8,3e453cc..5e25c60
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@@ -311,8 -312,32 +312,32 @@@ resembles Python."
                                    version ".tar.gz"))
                (sha256
                 (base32
 -                "1070kjiirxxdfppmrhi3wsc6rykay1zlciqrzayjhjg0hkw42mrv"))))))
 +                "19cjy24mfaswxyvqmns6rd7hx05ybqb663zlgklspfr8l4jjmvbb"))))))
  
+ (define-public meson-next
+   (package
+     (inherit meson)
+     (version "0.57.1")
+     (source (origin
+               (method url-fetch)
+               (uri (string-append "https://github.com/mesonbuild/meson/";
+                                   "releases/download/" version  "/meson-"
+                                   version ".tar.gz"))
+               (sha256
+                (base32
+                 "19n8alcpzv6npgp27iqljkmvdmr7s2c7zm8y997j1nlvpa1cgqbj"))))))
+ 
+ (define-public meson-for-build
+   (package
+     (inherit meson)
+     (name "meson-for-build")
+     (source (origin
+               (inherit (package-source meson))
+               (patches (search-patches "meson-for-build-rpath.patch"))))
+ 
+     ;; People should probably install "meson", not "meson-for-build".
+     (properties `((hidden? . #t)))))
+ 
  (define-public premake4
    (package
      (name "premake")
diff --cc gnu/packages/commencement.scm
index b2921a4,d4511ed..e9d531c
--- a/gnu/packages/commencement.scm
+++ b/gnu/packages/commencement.scm
@@@ -9,7 -9,7 +9,8 @@@
  ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com>
  ;;; Copyright © 2020 Timothy Sample <samplet@ngyro.com>
  ;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
 +;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+ ;;; Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
diff --cc gnu/packages/compression.scm
index f5f5887,2d06504..ddebc55
--- a/gnu/packages/compression.scm
+++ b/gnu/packages/compression.scm
@@@ -1507,12 -1469,26 +1474,10 @@@ speed."
                     license:public-domain ; zlibWrapper/examples/fitblk*
                     license:zlib))))      ; zlibWrapper/{gz*.c,gzguts.h}
  
 -(define-public zstd-1.4.9
 -  (package
 -    (inherit zstd)
 -    (name "zstd")
 -    (version "1.4.9")
 -    (source
 -     (origin
 -       (method url-fetch)
 -       (uri (string-append 
"https://github.com/facebook/zstd/releases/download/";
 -                           "v" version "/zstd-" version ".tar.gz"))
 -       (sha256
 -        (base32 "14yj7309gsvg39rki4xqnd6w5idmqi0655v1fc0mk1m2kvhp9b19"))))
 -    (arguments
 -     (substitute-keyword-arguments (package-arguments zstd)
 -       ((#:tests? _ #t) #f)))))
 -
  (define-public pzstd
-   (package
+   (package/inherit zstd
      (name "pzstd")
-     (version (package-version zstd))
-     (source (package-source zstd))
-     (build-system gnu-build-system)
+     (outputs '("out"))
      (inputs
       `(,@(if (%current-target-system)
             `(("googletest" ,googletest))
diff --cc gnu/packages/cups.scm
index 8393fe5,b182731..b964845
--- a/gnu/packages/cups.scm
+++ b/gnu/packages/cups.scm
@@@ -5,9 -5,8 +5,9 @@@
  ;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
  ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
  ;;; Copyright © 2017 Mark H Weaver <mhw@netris.org>
- ;;; Copyright © 2017–2020 Tobias Geerinckx-Rice <me@tobias.gr>
+ ;;; Copyright © 2017–2021 Tobias Geerinckx-Rice <me@tobias.gr>
  ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
 +;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
diff --cc gnu/packages/dbm.scm
index d307914,2dd51ef..daefc44
--- a/gnu/packages/dbm.scm
+++ b/gnu/packages/dbm.scm
@@@ -4,7 -4,7 +4,8 @@@
  ;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
  ;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
  ;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
 +;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
+ ;;; Copyright © 2021 Leo Le Bouter <lle-bout@zaclys.net>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
diff --cc gnu/packages/engineering.scm
index af7bca0,f3c6e6f..d7c9f9f
--- a/gnu/packages/engineering.scm
+++ b/gnu/packages/engineering.scm
@@@ -2956,14 -2975,12 +2969,10 @@@ GUI."
                                    ".tar.gz"))
                (sha256
                 (base32
-                 "02jvla69xd0nnlg2bil2vxxxglqgylswml6h5hy2nxy0023hp4yy"))))
- 
-     ;; XXX: Version 1.0 only supports 64-bit systems.
-     (supported-systems '("x86_64-linux" "aarch64-linux"))
- 
+                 "1mkaq19a8d951n9l6d3f8rwq45a7gkr05snb285idd21qxixys6d"))))
      (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)
diff --cc gnu/packages/gl.scm
index d55dedb,dec2835..ee29a79
--- a/gnu/packages/gl.scm
+++ b/gnu/packages/gl.scm
@@@ -4,9 -4,9 +4,9 @@@
  ;;; Copyright © 2014, 2016 David Thompson <davet@gnu.org>
  ;;; Copyright © 2014, 2015, 2016, 2017 Mark H Weaver <mhw@netris.org>
  ;;; Copyright © 2016 Nikita <nikita@n0.is>
- ;;; Copyright © 2016, 2017, 2018, 2020 Ricardo Wurmus <rekado@elephly.net>
+ ;;; Copyright © 2016, 2017, 2018, 2020, 2021 Ricardo Wurmus 
<rekado@elephly.net>
  ;;; Copyright © 2016 David Thompson <davet@gnu.org>
 -;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
 +;;; Copyright © 2017, 2018, 2019, 2021 Efraim Flashner <efraim@flashner.co.il>
  ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
  ;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
  ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
diff --cc gnu/packages/gtk.scm
index fbaacc1,cf91162..f0c1fcc
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@@ -557,7 -565,8 +566,8 @@@ highlighting and other features typica
  (define-public gdk-pixbuf
    (package
     (name "gdk-pixbuf")
 -   (version "2.40.0")
 +   (version "2.42.2")
+    (replacement gdk-pixbuf/fixed)
     (source (origin
              (method url-fetch)
              (uri (string-append "mirror://gnome/sources/" name "/"
diff --cc gnu/packages/guile.scm
index 21f1329,0dad390..f633227
--- a/gnu/packages/guile.scm
+++ b/gnu/packages/guile.scm
@@@ -315,12 -310,21 +316,9 @@@ without requiring the source code to b
                       "share/guile/site/3.0")))))))
  
  (define-public guile-3.0-latest
 -  ;; TODO: Make this 'guile-3.0' on the next rebuild cycle.
 -  (package-with-extra-patches
 -   (package
 -     (inherit guile-3.0)
 -     (version "3.0.5")
 -     (source (origin
 -               (inherit (package-source guile-3.0))
 -               (uri (string-append "mirror://gnu/guile/guile-"
 -                                   version ".tar.xz"))
 -               (sha256
 -                (base32
 -                 "1wah6fq1h8vmbpdadjych1mq8hyqkd7p015cbxm14ri37l1gnxid")))))
 -   ;; Remove on the next rebuild cycle.
 -   (search-patches "guile-2.2-skip-so-test.patch")))
 +  ;; The latest 3.0.x version.
 +  guile-3.0)
  
- (define-public guile-next
-   (deprecated-package "guile-next" guile-3.0))
- 
  (define-public guile-3.0/libgc-7
    ;; Using libgc-7 avoid crashes that can occur, particularly when loading
    ;; data in to the Guix Data Service:
diff --cc gnu/packages/ibus.scm
index 1ce826d,e6001ef..fc59ea1
--- a/gnu/packages/ibus.scm
+++ b/gnu/packages/ibus.scm
@@@ -192,13 -195,17 +194,17 @@@ may also simplify input method developm
               ;; PYTHONPATH and GI_TYPELIB_PATH.
               (let ((out (assoc-ref outputs "out")))
                 (wrap-program (string-append out 
"/libexec/ibus-setup-libpinyin")
 -                 `("PYTHONPATH" ":" =
 -                   (,(getenv "PYTHONPATH")
 +                 `("GUIX_PYTHONPATH" ":" prefix
 +                   (,(getenv "GUIX_PYTHONPATH")
                      ,(string-append (assoc-ref inputs "ibus")
-                                     "/lib/girepository-1.0")))
+                                     "/lib/girepository-1.0")
+                     ,(string-append (assoc-ref outputs "out")
+                                     "/share/ibus-libpinyin/setup/")))
                   `("GI_TYPELIB_PATH" ":" prefix
                     (,(string-append (assoc-ref inputs "ibus")
-                                     "/lib/girepository-1.0"))))
+                                     "/lib/girepository-1.0")
+                     ,(string-append (assoc-ref outputs "out")
+                                     "/share/ibus-libpinyin/setup/"))))
                 #t))))))
      (inputs
       `(("ibus" ,ibus)
diff --cc gnu/packages/image.scm
index c686062,d04a247..25c1219
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@@ -590,17 -589,19 +590,18 @@@ extracting icontainer icon files."
                             version ".tar.gz"))
         (sha256
          (base32
 -         "0d46bdvxdiv59lxnb0xz9ywm8arsr6xsapi5s6y6vnys2wjz6aax"))))
 -   (replacement libtiff/fixed)
 +         "1jrkjv0xya9radddn8idxvs2gqzp3l2b1s8knlizmn7ad3jq817b"))))
     (build-system gnu-build-system)
     (outputs '("out"
 -              "doc"))                           ;1.3 MiB of HTML documentation
 +              "doc"))                           ;1.8 MiB of HTML documentation
     (arguments
      ;; Instead of using --docdir, this package has its own --with-docdir.
-     `(#:configure-flags (list (string-append "--with-docdir="
-                                              (assoc-ref %outputs "doc")
-                                              "/share/doc/"
-                                              ,name "-" ,version)
-                               "--disable-static")))
+     `(#:configure-flags
+       (list (string-append "--with-docdir="
+                            (assoc-ref %outputs "doc")
+                            "/share/doc/"
+                            ,name "-" ,(package-version this-package))
+             "--disable-static")))
     (inputs `(("zlib" ,zlib)
               ("libjpeg" ,libjpeg-turbo)))
     (synopsis "Library for handling TIFF files")
diff --cc gnu/packages/mail.scm
index 9f8bb54,b2a66f8..c538d77
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@@ -40,7 -40,7 +40,8 @@@
  ;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
  ;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
  ;;; Copyright © 2020 divoplade <d@divoplade.fr>
 +;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+ ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
diff --cc gnu/packages/onc-rpc.scm
index 02c8be0,3b29335..aeb2f6e
--- a/gnu/packages/onc-rpc.scm
+++ b/gnu/packages/onc-rpc.scm
@@@ -71,11 -75,12 +71,10 @@@ IPv4 and IPv6.  ONC RPC is notably use
      (license bsd-3)))
  
  (define-public libtirpc/hurd
-   (package
-     (inherit libtirpc)
+   (package/inherit libtirpc
      (name "libtirpc-hurd")
      (source (origin (inherit (package-source libtirpc))
 -                    (patches (append (origin-patches (package-source 
libtirpc))
 -                                     (search-patches "libtirpc-hurd.patch"
 -                                                     
"libtirpc-hurd-client.patch")))))
 +                    (patches (search-patches "libtirpc-hurd.patch"))))
      (arguments
       (substitute-keyword-arguments (package-arguments libtirpc)
         ((#:configure-flags flags ''())
diff --cc gnu/packages/perl.scm
index e3c0a6f,7203481..4f25072
--- a/gnu/packages/perl.scm
+++ b/gnu/packages/perl.scm
@@@ -13,9 -13,9 +13,9 @@@
  ;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
  ;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
  ;;; Copyright © 2017 Raoul J.P. Bonnal <ilpuccio.febo@gmail.com>
 -;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
 +;;; Copyright © 2017, 2018, 2020 Marius Bakke <marius@gnu.org>
  ;;; Copyright © 2017 Adriano Peluso <catonano@gmail.com>
- ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
+ ;;; Copyright © 2017, 2018–2021 Tobias Geerinckx-Rice <me@tobias.gr>
  ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
  ;;; Copyright © 2017 Christopher Allan Webber <cwebber@dustycloud.org>
  ;;; Copyright © 2018, 2019 Oleg Pykhalov <go.wigust@gmail.com>
diff --cc gnu/packages/python-xyz.scm
index 789e837,9f57992..92ac335
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@@ -763,6 -778,47 +769,47 @@@ certificate returned by the server to w
  and verifies that it matches the intended target hostname.")
      (license license:psfl)))
  
+ (define-public python-bidict
+   (package
+     (name "python-bidict")
+     (version "0.21.2")
+     (source
+      (origin
+        (method url-fetch)
+        (uri (pypi-uri "bidict" version))
+        (sha256
+         (base32
+          "02dy0b1k7qlhn7ajyzkrvxhyhjj0hzcq6ws3zjml9hkdz5znz92g"))))
+     (build-system python-build-system)
+     (native-inputs
+      `(("python-coverage" ,python-coverage)
 -       ("python-hypothesis" ,python-hypothesis-5.23) ; use_true_random=... 
from >=5.19.0
++       ("python-hypothesis" ,python-hypothesis)
+        ("python-pre-commit" ,python-pre-commit)
+        ("python-py" ,python-py)
+        ("python-pytest" ,python-pytest)
+        ("python-pytest-benchmark" ,python-pytest-benchmark)
+        ("python-pytest-cov" ,python-pytest-cov)
+        ("python-setuptools-scm" ,python-setuptools-scm)
+        ("python-sortedcollections" ,python-sortedcollections)
+        ("python-sortedcontainers" ,python-sortedcontainers)
+        ("python-sphinx" ,python-sphinx)
+        ("python-sphinx-autodoc-typehints" ,python-sphinx-autodoc-typehints)
+        ("python-tox" ,python-tox)))
+     (arguments
+      `(#:phases (modify-phases %standard-phases
+                   (add-after 'unpack 'relax-reqs
+                     (lambda _
+                       (substitute* "setup.py"
+                         (("sortedcollections < 2") "sortedcollections"))
+                       #t))
+                   (replace 'check
+                     (lambda _ (invoke "./run_tests.py"))))))
+     (home-page "https://bidict.readthedocs.io";)
+     (synopsis "Bidirectional mapping library")
+     (description "The @code{bidict} library provides several data structures
+ for working with bidirectional mappings in Python.")
+     (license license:mpl2.0)))
+ 
  (define-public python-bitarray
    (package
      (name "python-bitarray")
diff --cc gnu/packages/tex.scm
index 5155abe,86cb1ee..d90e41c
--- a/gnu/packages/tex.scm
+++ b/gnu/packages/tex.scm
@@@ -350,184 -343,112 +351,193 @@@ files from LOCATIONS with expected chec
           "--with-system-teckit"
           "--with-system-xpdf"
           "--with-system-zlib"
-          "--with-system-zziplib")
- 
-        ;; Disable tests on mips64/aarch64 to cope with a failure of 
luajiterr.test.
-        ;; XXX FIXME fix luajit properly on mips64 and aarch64.
-        #:tests? ,(let ((s (or (%current-target-system)
-                               (%current-system))))
-                    (not (or (string-prefix? "aarch64" s)
-                             (string-prefix? "mips64" s))))
+          "--with-system-zziplib"
+          ;; LuaJIT is not ported to powerpc64le* yet.
+          ,@(if (string-prefix? "powerpc64le" (or (%current-target-system)
+                                                  (%current-system)))
+                '("--disable-luajittex"
+                  "--disable-mfluajit")
+                '()))
+ 
+       ;; Disable tests on some architectures to cope with a failure of
+       ;; luajiterr.test.
+       ;; XXX FIXME fix luajit properly on these architectures.
+       #:tests? ,(let ((s (or (%current-target-system)
+                              (%current-system))))
+                   (not (or (string-prefix? "aarch64" s)
+                            (string-prefix? "mips64" s)
+                            (string-prefix? "powerpc64le" s))))
+ 
 -      #:phases
 -      (modify-phases %standard-phases
 -        (add-after 'unpack 'configure-ghostscript-executable
 -          ;; ps2eps.pl uses the "gswin32c" ghostscript executable on Windows,
 -          ;; and the "gs" ghostscript executable on Unix. It detects Unix by
 -          ;; checking for the existence of the /usr/bin directory. Since
 -          ;; Guix System does not have /usr/bin, it is also detected as 
Windows.
 -          (lambda* (#:key inputs #:allow-other-keys)
 -            (substitute* "utils/ps2eps/ps2eps-src/bin/ps2eps.pl"
 -              (("gswin32c") "gs"))
 -            (substitute* "texk/texlive/linked_scripts/epstopdf/epstopdf.pl"
 -              (("\"gs\"")
 -               (string-append "\"" (assoc-ref inputs "ghostscript") 
"/bin/gs\"")))
 -            #t))
 -        (add-after 'unpack 'use-code-for-new-poppler
 -          (lambda _
 -            (copy-file "texk/web2c/pdftexdir/pdftoepdf-poppler0.76.0.cc"
 -                       "texk/web2c/pdftexdir/pdftoepdf.cc")
 -            (copy-file "texk/web2c/pdftexdir/pdftosrc-poppler0.76.0.cc"
 -                       "texk/web2c/pdftexdir/pdftosrc.cc")
 -            #t))
 -        (add-after 'unpack 'patch-dvisvgm-build-files
 -          (lambda _
 -            ;; XXX: Ghostscript is detected, but HAVE_LIBGS is never set, so
 -            ;; the appropriate linker flags are not added.
 -            (substitute* "texk/dvisvgm/configure"
 -              (("^have_libgs=yes" all)
 -               (string-append all "\nHAVE_LIBGS=1")))
 -            #t))
 -        (add-after 'unpack 'disable-failing-test
 -          (lambda _
 -            ;; FIXME: This test fails on 32-bit architectures since Glibc 
2.28:
 -            ;; <https://bugzilla.redhat.com/show_bug.cgi?id=1631847>.
 -            (substitute* "texk/web2c/omegafonts/check.test"
 -              (("^\\./omfonts -ofm2opl \\$srcdir/tests/check tests/xcheck 
\\|\\| exit 1")
 -               "./omfonts -ofm2opl $srcdir/tests/check tests/xcheck || exit 
77"))
 -            #t))
 -        (add-after 'install 'postint
 -          (lambda* (#:key inputs outputs #:allow-other-keys #:rest args)
 -            (let* ((out (assoc-ref outputs "out"))
 -                   (share (string-append out "/share"))
 -                   (texlive-extra (assoc-ref inputs "texlive-extra-src"))
 -                   (unpack (assoc-ref %standard-phases 'unpack))
 -                   (patch-source-shebangs
 -                    (assoc-ref %standard-phases 'patch-source-shebangs)))
 -              (substitute* (string-append share "/texmf-dist/web2c/texmf.cnf")
 -                ;; Don't truncate lines.
 -                (("^error_line = .*$") "error_line = 254\n")
 -                (("^half_error_line = .*$") "half_error_line = 238\n")
 -                (("^max_print_line = .*$") "max_print_line = 1000\n"))
 -              ;; Create symbolic links for the latex variants and their
 -              ;; man pages.
 -              (with-directory-excursion (string-append out "/bin/")
 -                (for-each symlink
 -                          '("pdftex" "pdftex"   "xetex"   "luatex")
 -                          '("latex"  "pdflatex" "xelatex" "lualatex")))
 -              (with-directory-excursion (string-append share "/man/man1/")
 -                (symlink "luatex.1" "lualatex.1"))
 -              ;; Unpack texlive-extra and install tlpkg.
 -              (mkdir "texlive-extra")
 -              (with-directory-excursion "texlive-extra"
 -                (apply unpack (list #:source texlive-extra))
 -                (apply patch-source-shebangs (list #:source texlive-extra))
 -                (invoke "mv" "tlpkg" share))
 -              (let ((scripts (string-append share 
"/texmf-dist/scripts/texlive/")))
 -                (mkdir-p scripts)
 -                (copy-recursively (assoc-ref inputs "texlive-scripts") 
scripts)
 -                ;; Make sure that fmtutil can find its Perl modules.
 -                (substitute* (string-append scripts "fmtutil.pl")
 -                  (("\\$TEXMFROOT/") (string-append share "/"))))
 -
 -              ;; texlua shebangs are not patched by the patch-source-shebangs
 -              ;; phase because the texlua executable does not exist at that
 -              ;; time.
 -              (setenv "PATH" (string-append (getenv "PATH") ":" out "/bin"))
 -              (with-directory-excursion out
 -                (patch-source-shebangs))))))))
 -   (native-search-paths
 -    (list (search-path-specification
 -           (variable "TEXMF")
 -           (files '("share/texmf-dist"))
 -           (separator #f))
 -          (search-path-specification
 -           (variable "TEXMFCNF")
 -           (files '("share/texmf-dist/web2c"))
 -           (separator #f))))
 -   (synopsis "TeX Live, a package of the TeX typesetting system")
 -   (description
 -    "TeX Live provides a comprehensive TeX document production system.
 +       #:phases
 +       (modify-phases %standard-phases
 +         (add-after 'unpack 'configure-ghostscript-executable
 +           ;; ps2eps.pl uses the "gswin32c" ghostscript executable on Windows,
 +           ;; and the "gs" ghostscript executable on Unix. It detects Unix by
 +           ;; checking for the existence of the /usr/bin directory. Since
 +           ;; Guix System does not have /usr/bin, it is also detected as 
Windows.
 +           (lambda* (#:key inputs #:allow-other-keys)
 +             (substitute* "utils/ps2eps/ps2eps-src/bin/ps2eps.pl"
 +               (("gswin32c") "gs"))
 +             (substitute* "texk/texlive/linked_scripts/epstopdf/epstopdf.pl"
 +               (("\"gs\"")
 +                (string-append "\"" (assoc-ref inputs "ghostscript") 
"/bin/gs\"")))
 +             #t))
 +         (add-after 'unpack 'use-code-for-new-poppler
 +           (lambda _
 +             (copy-file "texk/web2c/pdftexdir/pdftoepdf-poppler0.76.0.cc"
 +                        "texk/web2c/pdftexdir/pdftoepdf.cc")
 +             (copy-file "texk/web2c/pdftexdir/pdftosrc-poppler0.76.0.cc"
 +                        "texk/web2c/pdftexdir/pdftosrc.cc")
 +             #t))
 +         (add-after 'unpack 'patch-dvisvgm-build-files
 +           (lambda _
 +             ;; XXX: Ghostscript is detected, but HAVE_LIBGS is never set, so
 +             ;; the appropriate linker flags are not added.
 +             (substitute* "texk/dvisvgm/configure"
 +               (("^have_libgs=yes" all)
 +                (string-append all "\nHAVE_LIBGS=1")))
 +             #t))
 +         (add-after 'unpack 'disable-failing-test
 +           (lambda _
 +             ;; FIXME: This test fails on 32-bit architectures since Glibc 
2.28:
 +             ;; <https://bugzilla.redhat.com/show_bug.cgi?id=1631847>.
 +             (substitute* "texk/web2c/omegafonts/check.test"
 +               (("^\\./omfonts -ofm2opl \\$srcdir/tests/check tests/xcheck 
\\|\\| exit 1")
 +                "./omfonts -ofm2opl $srcdir/tests/check tests/xcheck || exit 
77"))
 +             #t))
 +         (add-after 'unpack 'unpack-texlive-extra
 +           (lambda* (#:key inputs #:allow-other-keys)
 +             (mkdir "texlive-extra")
 +             (with-directory-excursion "texlive-extra"
 +               (apply (assoc-ref %standard-phases 'unpack)
 +                      (list #:source (assoc-ref inputs 
"texlive-extra-src"))))))
 +         (add-after 'unpack-texlive-extra 'unpack-texlive-scripts
 +           (lambda* (#:key inputs #:allow-other-keys)
 +             (mkdir "texlive-scripts")
 +             (with-directory-excursion "texlive-scripts"
 +               (apply (assoc-ref %standard-phases 'unpack)
 +                      (list #:source (assoc-ref inputs "texlive-scripts"))))))
 +         (add-after 'unpack-texlive-scripts 'patch-scripts
 +           (lambda _
 +             (let* ((scripts (append (find-files "texk/kpathsea" "^mktex")
 +                                     (find-files "texlive-scripts" "\\.sh$")))
 +                    (commands '("awk" "basename" "cat" "grep" "mkdir" "rm"
 +                                "sed" "sort" "uname"))
 +                    (command-regexp (format #f "\\b(~a)\\b"
 +                                            (string-join commands "|")))
 +                    (iso-8859-1-encoded-scripts
 +                     '("texlive-scripts/source/rubibtex.sh"
 +                       "texlive-scripts/source/rumakeindex.sh")))
 +
 +               (define (substitute-commands scripts)
 +                 (substitute* scripts
 +                   ((command-regexp dummy command)
 +                    (which command))))
 +
 +               (substitute-commands (lset-difference string= scripts
 +                                                     
iso-8859-1-encoded-scripts))
 +
 +               (with-fluids ((%default-port-encoding "ISO-8859-1"))
 +                 (substitute-commands iso-8859-1-encoded-scripts))
 +
 +               #t)))
 +         (add-after 'check 'customize-texmf.cnf
 +           ;; The default texmf.cnf is provided by this package, texlive-bin.
 +           ;; Every variable of interest is set relatively to the GUIX_TEXMF
 +           ;; environment variable defined via a search path specification
 +           ;; further below.  The configuration file is patched after the test
 +           ;; suite has run, as it relies on the default configuration to find
 +           ;; its paths (and the GUIX_TEXMF variable isn't set yet).
 +           (lambda _
 +             ;; The current directory is build/ because of the out-of-tree
 +             ;; build.
 +             (let* ((source    (first (scandir ".." (cut string-suffix?
 +                                                         "source" <>))))
 +                    (texmf.cnf (string-append "../" source
 +                                              "/texk/kpathsea/texmf.cnf")))
 +               (substitute* texmf.cnf
 +                 (("^TEXMFROOT = .*")
 +                  "TEXMFROOT = {$GUIX_TEXMF}/..\n")
 +                 (("^TEXMF = .*")
 +                  "TEXMF = {$GUIX_TEXMF}\n")
 +                 (("^%TEXMFCNF = .*")
 +                  "TEXMFCNF = {$GUIX_TEXMF}/web2c\n")
 +                 ;; Don't truncate lines.
 +                 (("^error_line = .*$") "error_line = 254\n")
 +                 (("^half_error_line = .*$") "half_error_line = 238\n")
 +                 (("^max_print_line = .*$") "max_print_line = 1000\n")))
 +             #t))
 +         (add-after 'install 'postint
 +           (lambda* (#:key inputs outputs #:allow-other-keys #:rest args)
 +             (let* ((out (assoc-ref outputs "out"))
 +                    (patch-source-shebangs (assoc-ref %standard-phases
 +                                                      'patch-source-shebangs))
 +                    (share (string-append out "/share"))
 +                    (scripts (string-append share
 +                                            "/texmf-dist/scripts/texlive"))
 +                    (source (string-append
 +                             "../" (first (scandir ".." (cut string-suffix?
 +                                                             "source" <>)))))
 +                    (tl-extra-root (string-append source "/texlive-extra"))
 +                    (tl-extra-dir (first
 +                                   (scandir tl-extra-root
 +                                            (negate
 +                                             (cut member <> '("." ".."))))))
 +                    (tlpkg-src (string-append tl-extra-root "/" tl-extra-dir
 +                                              "/tlpkg"))
 +                    (config.guess (string-append (assoc-ref inputs "config")
 +                                                 "/bin/config.guess")))
 +
 +               ;; Create symbolic links for the latex variants and their
 +               ;; man pages.
 +               (with-directory-excursion (string-append out "/bin/")
 +                 (for-each symlink
 +                           '("pdftex" "pdftex"   "xetex"   "luatex")
 +                           '("latex"  "pdflatex" "xelatex" "lualatex")))
 +               (with-directory-excursion (string-append share "/man/man1/")
 +                 (symlink "luatex.1" "lualatex.1"))
 +
 +               ;; Install tlpkg.
 +               (copy-recursively tlpkg-src (string-append share "/tlpkg"))
 +
 +               ;; Install texlive-scripts.
 +               (copy-recursively (string-append
 +                                  source "/texlive-scripts/source/")
 +                                 scripts)
 +
 +               ;; Make sure that fmtutil can find its Perl modules.
 +               (substitute* (string-append scripts "/fmtutil.pl")
 +                 (("\\$TEXMFROOT/")
 +                  (string-append share "/")))
 +
 +               ;; Likewise for updmap.pl.
 +               (substitute* (string-append scripts "/updmap.pl")
 +                 (("\\$TEXMFROOT/tlpkg")
 +                  (string-append share "/tlpkg")))
 +
 +               ;; Likewise for the tlmgr.
 +               (substitute* (string-append scripts "/tlmgr.pl")
 +                 ((".*\\$::installerdir = \\$Master.*" all)
 +                  (format #f "  $Master = ~s;~%~a" share all)))
 +
 +               ;; Install the config.guess script, required by tlmgr.
 +               (with-directory-excursion share
 +                 (mkdir-p "tlpkg/installer/")
 +                 (symlink config.guess "tlpkg/installer/config.guess"))
 +
 +               ;; texlua shebangs are not patched by the patch-source-shebangs
 +               ;; phase because the texlua executable does not exist at that
 +               ;; time.
 +               (setenv "PATH" (string-append (getenv "PATH") ":" out "/bin"))
 +               (with-directory-excursion out
 +                 (patch-source-shebangs))))))))
 +    (native-search-paths
 +     (list (search-path-specification
 +            (variable "GUIX_TEXMF")
 +            (files '("share/texmf-dist")))))
 +    (synopsis "TeX Live, a package of the TeX typesetting system")
 +    (description
 +     "TeX Live provides a comprehensive TeX document production system.
  It includes all the major TeX-related programs, macro packages, and fonts
  that are free software, including support for many languages around the
  world.
diff --cc guix/packages.scm
index dd1d473,55e5e70..56173e1
--- a/guix/packages.scm
+++ b/guix/packages.scm
@@@ -5,7 -5,7 +5,8 @@@
  ;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
  ;;; Copyright © 2017, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
  ;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
 +;;; Copyright © 2020, 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+ ;;; Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;
diff --cc guix/utils.scm
index 96cd8c7,2dd1dde..7db9f52
--- a/guix/utils.scm
+++ b/guix/utils.scm
@@@ -8,8 -8,8 +8,9 @@@
  ;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
  ;;; Copyright © 2018, 2020 Marius Bakke <marius@gnu.org>
  ;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
 +;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
  ;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
+ ;;; Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
  ;;;
  ;;; This file is part of GNU Guix.
  ;;;



reply via email to

[Prev in Thread] Current Thread [Next in Thread]