* gnu/packages/patches/mosaicatcher-unbundle-htslib.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/bioinformatics.scm (mosaicatcher): New variable.
This is a followup to 4ebd4a58ce which
removed the patch, but it was still necessary for some dependents.
* gnu/packages/patches/ucx-tcp-iface-ioctl.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/fabric-management.scm (ucx)[source](patches): New field.
* gnu/packages/games.scm (pinball): Update to 3.1.20201218.
[source]: Tarballs no longer published on sourceforge, so use git-fetch.
[native-inputs]: New field for bootstrapping inputs.
[inputs]: Add libltdl.
[arguments]: Add custom 'bootstrap' phase.
* gnu/packages/patches/pinball-system-ltdl.patch: Adjust to latest source.
* gnu/packages/patches/pinball-const-fix.patch,
gnu/packages/patches/pinball-cstddef.patch,
gnu/packages/patches/pinball-missing-separators.patch,
gnu/packages/patches/pinball-src-deps.patch: Delete upstreamed patches.
* gnu/local.mk (dist_patch_DATA): Remove them.
* gnu/packages/patches/libxml2-xpath0-Add-option-xpath0.patch: New file...
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/xml.scm (libxml2-xpath0): New variable.
Signed-off-by: Marius Bakke <marius@gnu.org>
This follows commit 0b1f70d1a7, which inadvertently broke the build of Guix
for i586-pc-gnu (Hurd).
* gnu/packages/patches/disarchive-cross-compilation.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/backup.scm (disarchive)[source]: Apply it.
[phases]{delete-configure}: New phase.
[native-inputs]: Add guile-3.0 and guile-gcrypt.
This will make Mercurial be able to find third-party extensions installed with
Guix, without having to set PYTHONPATH.
* gnu/packages/patches/mercurial-hg-extension-path.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register the patch.
* gnu/packages/version-control.scm (mercurial)[origin](patches): Apply the
patch.
[native-search-paths]: Add HGEXTENSIONPATH.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/patches/graphviz-CVE-2020-18032.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/graphviz.scm (graphviz)[replacement]: New field.
(graphviz/fixed): New variable.
* gnu/packages/cups.scm (hplip): Update to 3.21.4.
[source]: Remove fussy patch. Replace it with an short snippet
substitution and...
[arguments]: ...the new "--disable-imageProcessor-build" configure flag.
* gnu/packages/patches/hplip-remove-imageprocessor.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/compression.scm (snappy): Update to 1.1.9.
[source]: Add another patch.
[arguments]: Add new #:configure-flags and an
'unpack-third_party-subprojects phase.
[native-inputs]: Add the sources for benchmark and googletests.
* gnu/packages/patches/snappy-add-inline-for-GCC.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/syndication.scm (giara): New variable.
* gnu/packages/patches/giara-fix-login.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/patches/perl-image-exiftool-CVE-2021-22204.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/photo.scm (perl-image-exiftool)[source]: Use it.
This introduces tla2tools.jar, which contains the TLA+ model checker
and simulator (TLC); a TLA+ REPL; a semantic analyzer (SANY); the TLATeX
typesetting system; PlusCal translator; and more. I have added five
wrapper scripts for convenience, rather than invoking `java' manually.
The wrapper scripts are not comprehensive; users who are familiar with
tla2tools.jar, or have read the book Specifying Systems, may still
invoke the commands in the traditional way.
The minimum JDK version is 11. I chose to stick with that rather than
bumping it to 14 (which is the largest version currently in Guix)
because each OpenJDK version in Guix depends on the version before it,
and so it needlessly results in many 100s of MiB of unnecessary
dependencies.
Note that this is _not_ the TLA+ Toolbox, which is the GUI commonly used
with TLA+.
* gnu/packages/java.scm (tla2tools): New variable.
* gnu/packages/patches/tla2tools-build-xml.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/racket.scm (racket)[source](patches): Remove
"racket-store-checksum-override.patch", which is no longer needed since
we stopped injecting store paths into Racket files in commit 834aa48:
see <https://issues.guix.gnu.org/47180>.
* gnu/packages/patches/racket-store-checksum-override.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
The previous workaround stopped the preboot phase from loading USB
support, which makes it impossible to use a USB keyboard to select a
generation from the boot menu without using a serial console.
* gnu/packages/patches/u-boot-rockchip-inno-usb.patch: New File.
* gnu/local.mk (dist_patch_DATA): Add patch.
* gnu/packages/bootloaders.scm (%u-boot-rockchip-inno-usb-patch): New variable.
(u-boot)[source]: Add patch.
(u-boot-rockpro64-rk3399, u-boot-pinebook-pro-rk3399): Remove obsolete phase.
* gnu/packages/patches/emacs-geiser-guile-auto-activate.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/emacs-xyz.scm (emacs-geiser-guile): New variable.
Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
* gnu/packages/patches/emacs-geiser-autoload-activate-implementation.patch:
New file.
* gnu/local.mk (dist_patch_DATA): Add it here.
* gnu/packages/emacs-xyz.scm (emacs-geiser): Update to 0.13.
[source]: Change upstream URL.
[build-system]: Change to emacs-build-system.
[arguments]: Adjust accordingly.
[native-inputs]: Remove emacs, autoconf, and automake.
[description]: State that other packages are needed for geiser to be useful.
Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at>
Kmscon may discover multiple inputs, corresponding to multiple devices. This
means that the uxkb_dev_keymap_update function may be called multiple times,
and the FIFO is registered on each input poll loop.
When a new layout is written on the FIFO by the installer, the first input
picking up the message, will apply the new layout. However, that input may not
be the input that the user is currently using.
To fix it, register the FIFO on the first input poll loop, but apply the new
layout on all the inputs in the uxkb_keymap_update_handler function.
* gnu/packages/patches/kmscon-runtime-keymap-switch.patch
(uxkb_keymap_update_handler): Apply the new layout to all the inputs.
(input_new_dev): Register the FIFO fd only on the first input poll loop.
support for Pinebook Pro.
* gnu/packages/linux.scm (linux-libre-5.11-source): Add Pinebook Pro
lcd patch.
(linux-libre-arm64-generic): Enable audio and battery modules for
Pinebook Pro.
* gnu/packages/patches/linux-libre-arm64-generic-pinebook-lcd.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add patch.
* gnu/packages/patches/ungoogled-chromium-system-nspr.patch,
gnu/packages/patches/ungoogled-chromium-system-opus.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/chromium.scm (%preserved-third-party-files): Adjust for 90.
(debian-patch): Make REVISION optional, default to %DEBIAN-REVISION.
(%chromium-version): New variable.
(%ungoogled-revision): Set to 90.0.4430.85-1-11-g3184907.
(%debian-revision): Set to debian/90.0.4430.85-1.
(%debian-patches): Add more patches; update hashes.
(%ungoogled-origin): Update hash.
(%guix-patches): Remove obsolete patches.
(libvpx/chromium): Update to 1.9.0-147-g61edec1ef.
(ungoogled-chromium)[version]: Base on %CHROMIUM-REVISION and the last
component of %UNGOOGLED-REVISION, a 'git describe --long' style ID.
[arguments]: Add build_with_flite_lib in #:configure-flags. Add openjpeg
substitution in #:phases.
* gnu/packages/patches/gst-plugins-ugly-fix-out-of-bound-reads.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gstreamer.scm (gst-plugins-ugly)[source]: Use it.
* gnu/packages/patches/gst-plugins-base-fix-id3v2-invalid-read.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gstreamer.scm (gst-plugins-base)[source]: Use it.
* gnu/packages/patches/gst-plugins-bad-fix-overflow.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gstreamer.scm (gst-plugins-bad)[source]: Use it.
* gnu/packages/patches/gst-libav-64channels-stack-corruption.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gstreamer.scm (gst-libav)[source]: Use it.
Fixes <https://bugs.gnu.org/39341>.
Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>.
Until now, as soon as you had selected the keyboard layout in the
Guix System installer, kmscon would start spinning on epoll_wait(2)
calls because of an event on the initial FIFO file
descriptor (corresponding to the fact that the client closed it.)
* gnu/packages/patches/kmscon-runtime-keymap-switch.patch: In
'uxkb_keymap_update_handler', add calls to 'ev_eloop_rm_fd', 'close',
and 'uxkb_dev_keymap_update' In 'uxkb_dev_keymap_update', add call
to 'unlink'.
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/ebook.scm (calibre): Update to 5.14.0.
[source]: Adjust the snippet to preserve some files used by the HTML reader.
[native-inputs]: Add python-pyqt-builder. Replace python2-flake8 with
python-flake8.
[inputs]: Remove chmlib, js-mathjax, python-chardet, and python-sip. Add
python-cchardet, python-speechd, python-zeroconf, python-py7zr, python-pychm,
python-pycryptodome, libjpeg, and libjxr. Replace all Python 2 dependencies
with their Python 3 equivalents.
[arguments]: Build with the default Python and adjust custom phases accordingly.
Adjust the 'configure' phase to changes in how Calibre uses SIP, and patch
lookup paths for libjpeg and libjxr.
Rename the 'build-extra' phase to 'install-rapydscript', and run it after the
'install' phase. Adjust it for Calibre 5.14.0.
* gnu/packages/patches/calibre-no-updates-dialog.patch,
gnu/packages/patches/calibre-remove-test-sqlite.patch,
gnu/packages/patches/calibre-remove-test-unrar.patch: Adjust patches for Calibre
5.14.0.
The makeinfo command splits the generated info output in multiple files (in
300 KiB chunks) by default; this meant the build system would have had to
install the multiple QEMU.info-1, QEMU.info-2, etc. files for the info manual
to work as intended. Instead, keep the info manual as one single file by
specifying the --no-split option to makeinfo.
* gnu/packages/patches/qemu-build-info-manual.patch (sphinxinfo)
<makeinfo>: Invoke with the --no-split argument.
* 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.