Apparently, during grafting, Guix can somehow mangle compiled
Racket CS files (.zo) such that Racket will refuse to load them.
(Maybe it has something to do with compression?)
So, we stop patching Racket sources with absolute paths to store
files (i.e. for foreign libraries to dlopen).
Instead, we put them in a data file that doesn't get compiled or,
in one case, embed it in C.
Fixes https://issues.guix.gnu.org/47064
* gnu/packages/patches/racket-sh-via-rktio.patch: New file.
Adds a special case at the C level, controlled by a preprocessor macro,
to handle attempts to execute "/bin/sh".
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/scheme.scm (racket)[source](patches): Apply it.
(racket)[arguments](#:configure-flags): Add the CPP flag to enable it.
(racket)[arguments](#:modules): Use srfi-1.
(racket)[arguments](#:phases): Remove 'patch-/bin/sh and 'pre-configure.
Change 'pre-configure-minimal to just change directory.
Add 'patch-config.rktd-lib-search-dirs after 'build and before 'install
to configure Racket's "lib-search-dirs".
(racket, racket-minimal)[inputs]: Add bash-minimal as an explicit input.
(racket-minimal)[source]: Adjust to inherit patches from racket.
(racket-minimal)[arguments]: Inherit from racket: changes no longer needed.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/patches/lksctp-tools-1.0.18-fix-header-file-name.patch:
New file.
* gnu/local.mk[patches]: Add it.
* gnu/packages/networking.scm(/lksctp-tools)[source]: Use this patch.
* gnu/packages/virtualization.scm (libvirt): Update to 7.2.0.
[arguemnts]: Switch to meson, only build system supported by upstream.
[inputs]: Add libssh2 and readline.
[native-inputs]: Add bash-completion, gettext, python-docutils and
rpcsvc-proto.
* gnu/packages/patches/libvirt-add-install-prefix.patch: New file...
* gnu/local.mk: ...add it.
* gnu/packages/patches/libvirt-create-machine-cgroup.patch: Delete file,
merged by upstream.
Tested-by: Pierre Langlois <pierre.langlois@gmx.com>
Take advantage of patches that have been accepted upstream.
These changes lay a foundation for reusing more of Chez's
build process for Racket.
* gnu/packages/patches/chez-scheme-build-util-paths-backport.patch:
New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/chez.scm (chez-scheme)[source](patches): Use it.
[source](snippet): Remove bundled libraries here, not in configure phase.
[inputs]: Organize. Move "nanopass", "stex", and "xorg-rgb" to ...
[native-inputs]: ... this field.
[arguments]: Add (ice-9 ftw) to #:modules. Remove unneeded
'patch-processor-detection' phase. Add 'unpack-nanopass+stex' phase
(refactored from 'configure'). Simplify 'configure' phase by removing
patches that have been upstreamed. Add "--nogzip-man-pages" flag so we can
remove 'make-manpages-writable' phase. Stop ignoring #:configure-flags,
move "--threads" there, and remove unneeded workaround. Add 'prepare-stex'
phase (refactored from 'install-doc'). Use it to streamline 'install-doc'
phase, installing all of the right files into the right places.
Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
* gnu/packages/virtualization.scm (runc): Update to 1.0.0-rc93.
[source]: Remove the patches field.
[phases]{unpack}: Remove override.
{build}: Add the man target.
{check}: Make conditional based on TESTS?.
{install}: Add the install-man target.
[native-inputs]: Add go-github-com-go-md2man.
[home-page]: Update.
* gnu/packages/patches/runc-CVE-2019-5736.patch: Delete file.
* gnu/local.mk: Un-register it.
* gnu/packages/docker.scm (containerd): Update to 1.4.4. Delete
trailing #t.
[arguments]: Set a MAKE-FLAGS binding.
[phases]{patch-paths}: Patch the reference to 'unpigz'.
{build, install}: Use the MAKE-FLAGS variable.
[inputs]: Add pigz.
* gnu/packages/patches/containerd-test-with-go1.13.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Un-register it.
Fixes CVE-2021-22876 and CVE-2021-22890.
* gnu/packages/curl.scm (curl/fixed): New variable.
(curl)[replacement]: New field.
* gnu/packages/patches/curl-7.76-use-ssl-cert-env.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/patches/llhttp-bootstrap-CVE-2020-8287.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/node.scm (llhttp-bootstrap): New variable.
As Ludo' rightly points out, GitHub's patches are probably as stable
as their tarballs.
* gnu/packages/gimp.scm (gimp)[source]:
Use SEARCH-PATCHES instead of an origin.
* gnu/packages/patches/gimp-make-gegl-introspect-optional.patch:
New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/virtualization.scm (libvirt): Update to 7.1.0.
[source]: Remove libvirt-create-machine-cgroup.patch, add
libvirt-do-not-create-var-dirs.patch.
[build-system]: Switch to meson-build-system.
[arguments]: Use meson-0.55. Adapt #:configure-flags for meson, there is no
need for --docdir anymore. Remove fix-BOURNE_SHELL-definition phase. Add
fix-sysconfdir-and-localstatedir phase. Adapt disable-broken-tests to meson.
[native-inputs]: Add python-docutils and rpcsvc-proto.
* gnu/packages/patches/libvirt-create-machine-cgroup.patch: Delete.
* gnu/packages/patches/libvirt-do-not-create-var-dirs.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add new patch, remove the other.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This should avoid some problems, such as "not a dynamic executable" errors.
* gnu/packages/patches/glibc-ldd-powerpc.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/base.scm: (glibc)[native-inputs]: Add it.
[arguments]: When building for powerpc* apply it.
* gnu/packages/commencement.scm (glibc-final-with-bootstrap-bash,
glibc-final)[native-inputs]: Add patch conditionally.
This patch has been adjusted to apply to master.
Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
Signed-off-by: Efraim Flashner <efraim@flashner.co.il>
Those tests don't make sense anymore as the Cuirass 1.0 version has removed
the possibility to execute a custom registration procedure.
* gnu/tests/cuirass.scm: Remove it.
* gnu/local.mk (GNU_SYSTEM_MODULES): Ditto.
* gnu/packages/linux.scm (efibootmgr): Update to 17.
[source]: Use GIT-FETCH and GIT-FILE-NAME.
Add a patch to build against efivar@37.
* gnu/packages/patches/efibootmgr-remove-extra-decl.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/patches/busybox-CVE-2021-28831.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/busybox.scm (busybox): Apply it.
* gnu/packages/patches/ungoogled-chromium-system-opus.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/chromium.scm (%preserved-third-party-files): Adjust for 89.
(%chromium-version): Remove variable.
(%ungoogled-revision): Set to 89.0.4389.90-1.
(%ungoogled-origin): Conditionally set file name based on commit/tag.
(%guix-patches): Add the new file.
(libvpx/chromium): Update to 1.9.0-104-gb5d77a48d.
(ungoogled-chromium)[version]: Use %UNGOOGLED-REVISION.
[source]: Update hash.
[arguments]: Adjust #:configure-flags for build system changes. Don't build
with external WebRTC SSL library. Remove obsolete substitution.
[inputs]: Remove OPENSSL. Change from PIPEWIRE to PIPEWIRE-0.3.
* gnu/packages/patches/mpg321-CVE-2019-14247.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/mp3.scm (mpg321)[source]: Apply it.
Signed-off-by: Léo Le Bouter <lle-bout@zaclys.net>
Signed-off-by: Leo Famulari <leo@famulari.name>
This is a followup to commit 31d289a475,
which added, but did not use, "unzip-symlink.patch", which is
redundant with the pre-existing "unzip-initialize-symlink-flag.patch".
* gnu/packages/patches/unzip-symlink.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/patches/gdk-pixbuf-CVE-2020-29385.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gtk.scm (gdk-pixbuf)[replacement]: New field.
(gdk-pixbuf/fixed): New variable.
(gdk-pixbuf+svg): Use package/inherit.
* gnu/packages/patches/glib-CVE-2021-28153.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/glib.scm (glib/fixed): Add the new patch.
* gnu/packages/patches/geary-CVE-2020-24661.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/gnome.scm (geary): Apply it.
* gnu/packages/patches/evolution-CVE-2020-11879.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/gnome.scm (evolution): Apply it.
Unmaintained upstream and its only dependent (python-gssapi) dropped it.
* gnu/packages/patches/python-shouldbe-0.1.2-cpy3.8.patch: Remove.
* gnu/local.mk: Drop patch file.
* gnu/packages/python-xyz.scm (python-shouldbe): Remove.
* gnu/packages/patches/bsdiff-CVE-2014-9862.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/compression.scm (bsdiff): Apply it.
* gnu/packages/patches/cgal-security-pr-5371.patch: New patch. Downloaded from
<https://patch-diff.githubusercontent.com/raw/CGAL/cgal/pull/5371.patch>, with
hunks on files matching pattern "*Convex_decomposition_3*" removed because
they don't exist in cgal's released sources.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/graphics.scm (cgal): Update to 5.2.
[source]: Apply patch.
* gnu/packages/patches/python-2.7-CVE-2021-3177.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/python.scm (python-2.7)[replacement]: New field.
(python-2.7/fixed): New variable.
TALOS-2020-1222 has yet to be disclosed and has no known CVE number.
TALOS-2020-1223 has CVE-2020-28599 assigned.
* gnu/packages/engineering.scm (openscad): Update to 2021.01.
[patches]: Remove. Boost 1.72 is supported now upstream.
[arguments]: In replacement 'check phase, disable some tests requiring
experimental "lazy-union" feature. Also disable PDF-related tests requiring
ghostscript and failing either way.
* gnu/local.mk (dist_patch_DATA): Remove patch.
* gnu/packages/patches/openscad-parser-boost-1.72.patch: Ditto.
* gnu/packages/patches/qemu-CVE-2021-20203.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/virtualization.scm (qemu): Apply it.
* gnu/packages/patches/http-parser-fix-assertion-on-armhf.patch: Remove it.
* gnu/local.mk (dist_patch_DATA): Update it.
* gnu/packages/web.scm (http-parser)[source]: Remove a test assertion failing
on i686-linux.
[arguments]: Remove the "assertion.patch" that is merged upstream.
[native-inputs]: Ditto.
[synopsis]: Wrap it.
* gnu/packages/patches/python-3.8-CVE-2021-3177.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/python.scm (python-3.8)[replacement]: New field.
(python-3.8/fixed): New variable.
* gnu/packages/patches/python-3.9-CVE-2021-3177.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/python.scm (python-3.9)[source]: Use it.
* gnu/packages/diffoscope.scm (diffoscope): Update to 166.
[source]: Add patch to use magic.open compatibility interface.
* gnu/packages/patches/diffoscope-revert-to-magic-open.patch: New file.
* gnu/local.mk [dist_patch_DATA]: New patch.
* gnu/packages/pdf.scm (qpdfview)[source]: Add patch to include a missing
header.
* gnu/packages/patches/qpdfview-qt515-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu/packages/music.scm (python-mediafile): New variable.
* gnu/packages/patches/python-mediafile-wavpack.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/video.scm (obs): Use it.
* gnu/packages/patches/obs-modules-location.patch: Patch it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/telegram.scm: New module.
(webrtc-for-telegram-desktop): New variable.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
* gnu/packages/cpp.scm (c++-gsl): New variable.
* gnu/packages/patches/c++-gsl-find-system-gtest.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
* gnu/packages/patches/gst-plugins-good-fix-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gstreamer.scm (gst-plugins-good)[source]: Use it.
This package fails to build and has been superseded by avogadro2.
* gnu/packages/chemistry.scm (avogadro): Remove variable.
* gnu/packages/patches/avogadro-boost148.patch,
gnu/packages/patches/avogadro-eigen3-update.patch,
gnu/packages/patches/avogadro-python-eigen-lib.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
* gnu/packages/python-xyz.scm (python-pep517): Inherit from
python-pep517-bootstrap. Remove the inherited common fields.
(python-poetry-core, python-wheel)
(python-toml): Move to ...
* gnu/packages/python-build.scm: ... here, a new module.
(python-pep517-bootstrap): New package.
* gnu/local.mk (GNU_SYSTEM_MODULES): Register the new module.
* gnu/packages/patches/idris-disable-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/idris.scm (idris): Update to 1.3.3.
[source]: Use the patch.
[native-inputs]: Add ghc-cheapskate.
[arguments]: Adjust cheapskate version bounds. Make auxiliary test script
executable.
The stack overflow test limits the virtual memory size using setrlimit with
RLIMIT_AS argument. This is ignored when using QEMU transparent emulation,
causing the test to crash.
* gnu/packages/patches/guile-2.2-skip-so-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/guile.scm (guile-3.0-latest): Add it.
* gnu/local.mk (dist_patch_DATA): Add Smalltalk patch.
* gnu/packages/patches/smalltalk-multiplication-overflow.patch: Patch
from upstream commit 72ada189aba0283c551ead16635c1983968080b8.
* gnu/packages/smalltalk.scm (smalltalk): Use patch and link with gmp
and lightning libraries instead of the included source.
* gnu/packages/patches/shakespeare-spl-fix-grammar.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/esolangs.scm (shakespeare-spl): New variable.
Fixes <https://bugs.gnu.org/45252>.
* gnu/packages/patches/libffi-float128-powerpc64le.patch: Import patch file
from <https://github.com/libffi/libffi/pull/561.patch>.
* gnu/packages/libffi.scm (libffi)[arguments]: Apply patch conditionally for
powerpc64le-* systems in a phase.
[inputs]: Add patch as input conditionally for powerpc64le-* systems.
* gnu/local.mk (dist_patch_DATA): Add patch file to build system.
Signed-off-by: Chris Marusich <cmmarusich@gmail.com>
* gnu/packages/crates-io.scm (rust-ndarray-0.12): New variable.
* gnu/packages/patches/rust-ndarray-remove-blas-src-dep.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/patches/pciutils-hurd-fix.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/pciutils.scm (pciutils)[arguments]: Add
'apply-hurd-patch' phase when (hurd-target?) is true.
[inputs]: Add "hurd-patch" entry when (hurd-target?) is true.
This fixes a build failure from 79b31767d0.
* gnu/packages/patches/ghostscript-freetype-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/ghostscript.scm (ghostscript)[source](patches): Add it.
* gnu/packages/dns.scm (knot-resolver): Update to 5.2.0.
[source]: Add patch from upstream commit to fix the internal map() function on
32-bit platforms.
[native-inputs]: Add texinfo to enable generating the manual in Info format.
[inputs]: Add nghttp2:lib to enable the new DNS-over-HTTPS implementation.
* gnu/packages/patches/knot-resolver-fix-map-command-on-32-bit.patch: New
file.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
* gnu/packages/patches/cl-asdf-config-directories.patch: New file.
* gnu/local.mk (dist_PATCH_DATA): Add it.
* gnu/packages/lisp.scm (cl-asdf)[native-inputs]: Add it.
[arguments]: Apply the new patch.
Co-authored-by: Pierre Neidhardt <mail@ambrevar.xyz>
* gnu/packages/lisp-xyz.scm (cl-clml, sbcl-clml): New variables.
* gnu/packages/patches/sbcl-clml-fix-types.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/python-xyz.scm (python-cairocffi): Update to 1.2.0.
[source]: Fetch from Git.
[patches]: Remove field.
[inputs]: Remove pango.
[native-inputs]: Remove pkg-config and python-docutils. Add python-numpy and
python-sphinx-rtd-theme.
[phases]{patch-paths}: Adjust. Fix the patching of gdk-3.
{disable-linters}: New phase.
{install-doc}: Adjust. The license file is now installed by a build phase.
* gnu/packages/patches/python-cairocffi-dlopen-path.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): De-register it.
* gnu/packages/animation.scm (gnash): New variable.
* gnu/packages/patches/gnash-fix-giflib-version: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: Christopher Baines <mail@cbaines.net>
* gnu/packages/bittorrent.scm (transmission)[source]: Add patch to make
Transmission honor the "localedir" option to its configure script.
[arguments]<configure-flags>: Use "localedir" to set the "gui" output as the
location for (GTK-specific) localization data.
<phases>: Update "move-gui" to remove a now-superfluous call to "mkdir" and omit
"share/locale" from the list of directories needing to be moved between outputs.
* gnu/packages/patches/transmission-honor-localedir.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu/packages/patches/python-aiohttp-3.6.2-no-warning-fail.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/python-web.scm (python-aiohttp)[source](patches): Remove.
[arguments]: Use UTIME instead of calling out to 'touch'. Don't delete
now-working tests; but disable some new ones. Replace the 'check' phase.
[propagated-inputs]: Add PYTHON-TYPING-EXTENSIONS.
[native-inputs]: Remove PYTHON-PYTEST-RUNNER, PYTHON-PYTEST-XDIST,
PYTHON-PYTEST-TIMEOUT, and PYTHON-PYTEST-FORKED. Add PYTHON-PYTEST and
PYTHON-RE-ASSERT.
* gnu/packages/patches/openssh-fix-ssh-copy-id.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/ssh.scm (openssh)[source]: Use it.
Signed-off-by: Leo Famulari <leo@famulari.name>
* gnu/packages/pdf.scm (mupdf)[source]: Add patch.
[arguments]: Build and find the shared library.
(zathura-pdf-mupdf)[arguments]: Add a 'remove-libmupdfthird.a-requirement
phase to deal with the now-missing static one.
* gnu/packages/patches/mupdf-fix-linkage.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
This fixes the build of nanopolish, imp, and others.
Reported by apteryx in #guix.
* gnu/packages/algebra.scm (eigen)[source]: Add patch.
* gnu/packages/patches/eigen-remove-openmp-error-counting.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/lsof.scm (lsof)[source]: Add patch to make test suite
failures stop the build.
* gnu/packages/patches/lsof-fatal-test-failures.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
This allows Gajim to find plug-ins installed with Guix.
Reported at <http://issues.guix.gnu.org/44730>.
However, at the time of pushing both packaged plug-ins (gajim-omemo and
gajim-openpgp) require an unstable version of Gajim and will not load.
* gnu/packages/messaging.scm (gajim)[arguments]: Replace the
‘add-plugin-dirs’ substitution phase with a...
[source]: ...patch that won't silently break in the future.
* gnu/packages/patches/gajim-honour-GAJIM_PLUGIN_PATH.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/finance.scm (bitcoin-core): Update to 0.20.1.
[source]: Remove obsolete patch.
[native-inputs]: Add autoconf, automake and libtool.
[inputs]: Remove protobuf.
[arguments]: Add "set-no-git-flag" phase to indicate the build is not taking
place within a git repository.
* gnu/packages/patches/bitcoin-core-python-compat.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
Signed-off-by: Christopher Baines <mail@cbaines.net>