Fixes <https://issues.guix.gnu.org/58221>.
Reported by Tobias Kortkamp <tobias.kortkamp@gmail.com>.
Previously, if NAUTILUS_EXTENSION_PATH contained the same directory
several times, Nautilus could end up loading the same extension a second
time and crash. This patch ensures that each extension cannot be loaded
more than once.
* gnu/packages/patches/nautilus-extension-search-path.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/gnome.scm (nautilus)[source]: Use it.
[arguments]: Remove 'make-extensible' phase.
sbcl 2.2.10 currently doesn't build on aarch64. Upstream has fixed the
issue (https://bugs.launchpad.net/sbcl/+bug/1996942), but this patch is
needed until the next release.
* gnu/packages/patches/sbcl-fix-build-on-arm64-with-clisp-as-host.patch: New
file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/lisp.scm (sbcl)[source]: Use it.
Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
* gnu/packages/llvm.scm (llvm-15): New variable.
(llvm-14): Inherit from it, removing duplicated fields.
* gnu/packages/patches/clang-15.0-libc-search-path.patch: New file.
* gnu/local.mk: Register it.
* gnu/installer/hardware.scm: New file.
* gnu/local.mk (INSTALLER_MODULES): Add it.
* po/guix/POTFILES.in: Add it.
* gnu/installer.scm (installer-steps): Pass #:pci-database to the
'welcome' step procedure.
* gnu/installer/newt.scm (welcome-page): Add #:pci-database and pass it
to 'run-welcome-page'.
* gnu/installer/newt/welcome.scm (check-hardware-support): Add #:pci-database.
Enumerate unsupported PCI devices and run an error page when unsupported
devices are found.
(run-welcome-page): Add #:pci-database and pass it to
'check-hardware-support' and to the recursive call.
* gnu/installer/record.scm (<installer>)[welcome-page]: Adjust comment.
* doc/guix.texi (Hardware Considerations): Mention it.
* gnu/packages/linux.scm (spectre-meltdown-checker): New variable.
* gnu/packages/patches/spectre-meltdown-checker-find-kernel.patch: New file.
* gnu/packages/patches/spectre-meltdown-checker-externalize-fwdb.patch:
New file.
* gnu/local.mk (dist_patch_DATA): Register them here.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
Fixes <https://issues.guix.gnu.org/58631>.
* gnu/packages/patches/guile-fibers-fd-finalizer-leak.patch: New file.
* gnu/packages/guile-xyz.scm (guile-fibers-1.1)[source]: Use it.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/patches/guile-continuation-stack-leak.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/guile.scm (guile-3.0-latest)[source]: Use it.
* gnu/packages/protobuf.scm (protobuf): Update to 3.21.9. Move outputs field before
build system. Move inputs field below arguments.
[source]: Apply patch and update URL.
[build-system]: Use cmake-build-system. This causes the CMake support files
to be installed, which is expected by some packages such as hyperledger-iroha.
[arguments]: Use gexps.
[configure-flags]: Add BUILD_SHARED_LIBS=ON.
[phases]: Add set-c++-standard.
[home-page]: Update URL.
(protobuf-3.6): Adjust to continue using the gnu-build-system.
* gnu/packages/patches/protobuf-fix-build-on-32bit.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
Fix previous commit, which did not contain the following changes:
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/statistics.scm (r-mixedpower)[source]: Use it.
This removes the need to import (gnu packages python-xyz) in (gnu packages
python), avoiding issues with circular imports.
* gnu/packages/python.scm (pypy): Move…
* gnu/packages/pypy.scm (pypy): …here
* gnu/local.mk: Register new file.
Co-authored-by: Marius Bakke <marius@gnu.org>
* gnu/packages/patches/emacs-native-comp-driver-options.patch: New file.
* gnu/local.mk: Register it here.
* gnu/packages/emacs.scm (emacs-next): Update to 29.0.50-2.4aeb80c.
* gnu/packages/patches/gemmi-fix-pegtl-usage.patch: New file.
* gnu/packages/patches/gemmi-fix-sajson-types.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register them here.
* gnu/packages/chemistry.scm (gemmi): New variable.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/patches/pocketfft-cpp-prefer-preprocessor-if.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it here.
* gnu/packages/cpp.scm (pocketfft-cpp): New variable.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
The patch is included in version 1.9.0, so remove it from Guix.
On i686-linux, test t/pop3d.t fails unless the File::FcntlLock module is
present so add it.
* gnu/packages/patches/public-inbox-fix-spawn-test.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Remove patch.
* gnu/packages/mail.scm (public-inbox)[version]: Change to 1.9.0.
[source]: Update hash. Remove patch.
[inputs]: Add perl-file-fcntllock if target is x86-32.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This is a followup to commit bb762ac517.
* gnu/packages/patches/icecat-use-older-reveal-hidden-html.patch:
Delete file.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/algebra.scm (giac)[source]<origin>: Add a patch to fix build
issue with Pari-GP 2.15.
[arguments]<#:phase>: Skip another test.
* gnu/packages/patches/giac-pari-gp-anyarg.patch: New file.
* gnu/local.mk: Register it.
This fixes <https://issues.guix.gnu.org/58274>.
* gnu/packages/music.scm (picard): Update to 2.8.3.
[source]: Remove patch.
[arguments]: Use G-expressions. Remove trailing #t.
[native-inputs]: Remove input labels.
[inputs]: Add python-fasteners, python-pyyaml, python-markdown, python-pyjwt. Remove a transitive
dependency on QtWebKit. See <https://issues.guix.gnu.org/53289> for more information about this change.
* gnu/packages/patches/picard-fix-id3-rename-test.patch: Remove it.
* gnu/local.mk (dist_path_DATA): Update accordingly.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* gnu/packages/cpp.scm (crc32c): New variable.
* gnu/packages/patches/crc32c-unbundle-googletest.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it here.
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
* gnu/packages/databases.scm (firebird)[source]: Add patches.
[arguments]: Add custom phase when building for riscv64-linux to force
the bootstrap phase to occur.
[native-inputs]: When building for riscv64-linux add autoconf, automake
and libtool.
* gnu/packages/patches/firebird-riscv64-support-pt1.patch,
gnu/packages/patches/firebird-riscv64-support-pt2.patch: New files.
* gnu/local.mk (dist_patch_DATA): Register them.
Move the compression record to a dedicated module so that it can be used
outside (guix scripts pack) module.
* guix/scripts/pack.scm (<compressor>, %compressors, lookup-compressor): Move
it to ...
* gnu/compression.scm: ... this new file.
* gnu/ci.scm: Adapt it.
* local.mk (GNU_SYSTEM_MODULES): Add it.
Recent version of emacs 29 with pgtk flag has a problem with handling super
key modifier, due to gtk bug: https://gitlab.gnome.org/GNOME/gtk/-/issues/4913
This commit workarounds it.
* gnu/packages/patches/emacs-pgtk-super-key-fix.patch: New file.
* gnu/packages/emacs.scm (emacs-next-pgtk): Use it here.
* gnu/local.mk (dist_patch_DATA): Register it here.
* gnu/packages/java.scm (java-antlr4-runtime): Update to 4.10.1.
[source](patches): Remove obsolete patch.
(java-antlr4-runtime-cpp): Add #:configure-flags.
(antlr4)[arguments]: Don't run tests from removed directory. Enable one test;
exclude one file.
* gnu/packages/fontutils.scm (python-afdko)[arguments]: Add phase to build
with the C++ 17 standard.
Conflicts resolved in:
gnu/local.mk
gnu/packages/cmake.scm
gnu/packages/glib.scm
gnu/packages/gnome.scm
gnu/packages/gtk.scm
gnu/packages/sdl.scm
pango-next, vala-next and librsvg-bootstrap were removed in the process.
Build fails with emacs-next cause of copypasted test defined two times.
* gnu/packages/patches/emacs-kv-fix-tests.patch: New file.
* gnu/packages/emacs-xyz.scm (emacs-kv): Use it here.
* gnu/local.mk (dist_patch_DATA): Register it here.
* gnu/packages/cmake.scm (cmake): Update to 3.24.2.
[source]: Adjust snippet to preserve "Utilities/cmelf". Override with new
patch.
[native-inputs]: Use modify-inputs and remove labels.
* gnu/packages/patches/cmake-curl-certificates-3.24.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/gnome.scm (gnome-shell): Update to 42.4.
[source](patches): Remove.
[arguments]: Adjust substitution to disable GTK icon cache. Filter disallowed
references from GUIX_PYTHONPATH. While at it, also prevent MESON from ending
up in the closure.
[inputs]: Change from LIBGWEATHER to LIBGWEATHER4.
* gnu/packages/patches/gnome-shell-polkit-autocleanup.patch:
* gnu/local.mk (dist_patch_DATA):
* gnu/packages/gnome.scm (gnome-shell): Update to 42.4.
[source](patches): Remove.
[arguments]: Adjust substitution to disable GTK icon cache. Filter disallowed
references from GUIX_PYTHONPATH. While at it, also prevent MESON from ending
up in the closure.
[inputs]: Change from LIBGWEATHER to LIBGWEATHER4.
* gnu/packages/patches/gnome-shell-polkit-autocleanup.patch:
* gnu/local.mk (dist_patch_DATA):
This fixes a test failure introduced in commit
c527b0ce23.
* gnu/packages/patches/ghc-testsuite-grep-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/haskell.scm (ghc-8.6, ghc-8.8, ghc-8.10)[native-inputs]: Patch
the 'ghc-testsuite' input.
This fixes a regression introduced in c37a31e9ab.
* gnu/packages/patches/inkscape-poppler-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/inkscape.scm (inkscape/stable)[source](patches): New field.
* gnu/packages/databases.scm (python-apsw): Update to 3.39.2.1.
[source]: Change back to compressed release.
* gnu/packages/patches/python-apsw-3.39.2.1-test-fix.patch: New file.
* gnu/local.mk: Add patch.
Signed-off-by: Marius Bakke <marius@gnu.org>
This is a follow-up to commit 290ac5cd1e.
* gnu/packages/polkit.scm (polkit-mozjs)[source](snippet): Add substitutions.
[source](patches): New field.
[arguments]: Pass --sysconfdir and -Dsession_tracking in #:configure-flags.
* gnu/packages/patches/polkit-disable-systemd.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
The unsuccessful attempt to execute "/bin/sh" by Chez Scheme's 'process'
function seems to have caused parts of the Chez Scheme test suite to
have been silently skipped. The issue was exposed by the upcoming
changes to Racket's build system.
* gnu/packages/patches/chez-scheme-bin-sh.patch,
gnu/packages/patches/racket-chez-scheme-bin-sh.patch: New patches.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/racket.scm (%racket-origin)[patches]: Update accordingly.
* gnu/packages/chez.scm (chez-scheme)[origin]<patches>: Likewise.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Use '_PATH_BSHELL' instead of a custom preprocessor macro. This may not
be The Right Thing in the long term, but it at least avoids a
proliferation of 'CPPFLAGS'.
* gnu/packages/patches/racket-minimal-sh-via-rktio.patch: Rename to ...
* gnu/packages/patches/racket-rktio-bin-sh.patch: ... this, and change
to use '_PATH_BSHELL'.
* gnu/local.mk (dist_patch_DATA): Update accordingly.
* gnu/packages/racket.scm (%racket-origin)[patches]: Likewise.
(racket-vm-common-configure-flags): Stop setting 'CPPFLAGS'. Change to a
constant instead of a function, since we no longer need the delay.
(racket-vm-cgc, racket-vm-bc,
racket-vm-cs)[arguments]<#:configure-flags>: Update accordingly.
[inputs]: Remove 'bash-minimal'.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Excplicitly set the user write bit when initializing the gifs or math
directories from the skeletons installed in the store. See also upstream
discussion at <https://github.com/dybvig/stex/pull/6>. This problem
would be exposed by the upcoming changes to Racket's build system.
* gnu/packages/patches/stex-copy-from-immutable-store.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/chez.scm (stex-bootstrap)[patches]: Use it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/games.scm:
(ktuberling picmi kolf libkmahjongg kmahjongg kshisen kajongg kbreakout
kmines konquest kbounce kblocks ksudoku klines kgoldrunner kdiamond
kfourinline kblackbox knetwalk bomber granatier ksirk palapeli kiriki
kigo kubrick lskat kapman kspaceduel bovo killbots ksnakeduel kollision
knavalbattle kreversi ksquares kjumpingcube):
Move to gnu/packages/kde-games.scm.
[define-module]: Remove (gnu packages kde), (gnu packages
kde-frameworks).
* gnu/packages/kde-games.scm: New module.
[header]: Copy over any copyrights I could find that affected these games.
* gnu/local.mk (GNU_SYSTEM_MODULES): Register it.
Why? games.scm is very large, and will only get larger, so splitting it
helps. Also, it is convenient for singling out and updating KDE games.
Signed-off-by: Marius Bakke <marius@gnu.org>
Add a new image test module to validate the image creation itself. The images
structures are validated using guile-parted. Checking the content of those
images is out of scope and should be performed in other modules (installation
for instance).
* gnu/tests/image.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* gnu/packages/version-control.scm (mercurial): Update to 6.2.1.
[source](patches): Add patch for compatibility with OpenSSL 3.0.
[arguments]: Patch /usr/bin/env and /bin/sh unconditionally in all tests.
Disable four more tests.
[inputs]: Change from PYTHON to PYTHON-WRAPPER.
* gnu/packages/patches/mercurial-openssl-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/services/lightdm.scm: New service.
* tests/services/lightdm.scm: Test it.
* doc/guix.texi (X Window): Document it.
* gnu/local.mk (GNU_SYSTEM_MODULES): Register it.
Co-authored-by: L p R n d n <guix@lprndn.info>
Co-authored-by: Ricardo Wurmus <rekado@elephly.net>
* gnu/packages/patches/lightdm-vnc-color-depth.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/display-managers.scm (lightdm): Apply it.
* gnu/packages/patches/lightdm-arguments-ordering.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/display-managers.scm (lightdm): Apply it.
* gnu/packages/patches/lightdm-vncserver-check.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/display-managers.scm (lightdm): Apply it.
* gnu/packages/patches/accountsservice-extensions.patch: New patch.
* gnu/packages/freedesktop.scm (accountsservice)[source]: Apply it.
[phases]{wrap-with-xdg-data-dirs}: New phase.
* gnu/packages/patches/scons-test-environment.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/build-tools.scm (scons): Update to 4.4.0.
[source](patches): New field.
[arguments]: Adjust bootstrap for the new version. Enable tests.
[native-inputs]: Add PYTHON-WHEEL and PYTHON-PSUTIL.
(scons-3): New variable.
(scons-python2): Inherit from it.
* gnu/packages/web.scm (serf)[arguments]: Stick with SCONS-3 to prevent rebuilds.
This fixes some indeterministic test failures for gnunet-scheme observed while
developing gnunet-scheme. The following checks were made:
All dependents compile for x86_64:
$ ./pre-inst-env guix build shepherd gnunet-scheme guix-build-coordinator nar-herder guix-data-service guile-fibers --system=x86_64-linux
Everything except guix-build-coordinator (which depends on the
non-cross-compilable sqitch) cross-compile from x86_64 to aarch64-linux-gnu:
$ ./pre-inst-env guix build shepherd gnunet-scheme nar-herder guile-fibers --system=x86_64-linux --target=aarch64-linux-gnu
I tried testing for reproducibility but the check phase took to long.
However, you can compare the hash you get against the hash I got:
$ ./pre-inst-env guix hash --serializer=nar $(./pre-inst-env guix build guile-fibers --no-grafts --system=x86_64-linux) 0qsaqx27b6q2s22h7y93417ijpkwl6gc1fhhck8aha6bvmawk5h0
I tried an emulated build for another architecture, but there the tests took
overly long.
There were no lint warnings for guile-fibers.
* gnu/packages/patches/guile-fibers-epoll-instance-is-dead.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register the patch.
* gnu/packages/guile-xyz.scm (guile-fibers)[source]{patches}: Use the patch.
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
The replacement was ignored in 77eb3008e3 as the
fix was already present in the current package.
* gnu/packages/patches/gnupg-CVE-2022-34903.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/gnupg.scm (gnupg/fixed): Remove variable.
* gnu/packages/gnupg.scm (gnupg)[replacement]: New field.
(gnupg/replacement): New variable.
* gnu/packages/patches/gnupg-CVE-2022-34903.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/compression.scm (unzip)[replacement]: New field.
(unzip/fixed): New variable.
* gnu/packages/patches/unzip-CVE-2022-0529+CVE-2022-0530.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/onc-rpc.scm (libtirpc)[replacement]: New field.
(libtirpc/fixed): New variable.
(libtirpc-hurd)[source]: Add patch.
* gnu/packages/patches/libtirpc-CVE-2021-46828.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
For the GDBM and Marshal dictionary adapters to be useful with their
default settings, we must initialize their data files during the package
build: upstream would initialize them lazily, but that doesn't work with
an immutable installation directory (at least, not without more complex
patches). Otherwise, we would always end up rebuilding the dictionary at
startup, which is “slow” and “not recommended”.
* gnu/packages/patches/ruby-anystyle-fix-dictionary-populate.patch: New
patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/ruby.scm (ruby-anystyle)[patches]: Use it.
[arguments]<#:phases>: Add 'populate-dictionaries' phase.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/patches/ruby-anystyle-data-immutable-install.patch: New
patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/ruby.scm (ruby-anystyle-data)[patches]: Use it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/patches/nsis-source-date-epoch.patch: Drop this patch.
* gnu/local.mk (dist_patch_DATA): Remove it.
* gnu/packages/patches/nsis-env-passthru.patch: Adjust the patch.
* gnu/packages/installers.scm (make-nsis): Update to 3.08.
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
* gnu/packages/patches/jami-fix-esc-bug.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/jami.scm (%jami-sources): Apply it.
* gnu/packages/patches/jami-fix-crash-on-quit.patch: Delete file.
* gnu/packages/patches/jami-images-loading.patch: Likewise.
* gnu/packages/patches/jami-libclient-audio-managers.patch: Likewise.
* gnu/packages/patches/jami-memory-usage.patch: Likewise.
* gnu/local.mk (dist_patch_DATA): De-register removed patches.
* gnu/packages/jami.scm (%jami-version): Update to 20220726.1515.da8d1da.
(libjami)[configure-flags]: Add '--disable-static'.
(jami-apply-custom-patches): Adjust for top directory renaming.
(%ffmpeg-default-configure-flags): Add muxer support
for g726 and g726le. Add demuxer support for g723_1, g726 and g726le. Add
encoder/decoder support for g726, g726le and g723_1. Add decoder support for
g729.
(ffmpeg-jami)[patches]: Add 'libopusenc-reload-packet-loss-at-encode'.
(jami-libclient)[native-inputs]: New field.
[inputs]: Add ffmpeg-jami and libxkbcommon.
[propagated-inputs]: Replace qtbase-5 with qtbase.
Fixes <https://issues.guix.gnu.org/51093>.
* gnu/packages/games.scm (pokerth) [source]: Apply patch
[inputs]: Use new style.
[phases]: Delete trailing #t. Use gexps.
{fix-paths}: Remove the gsasl and libircclient related substitutions.
* gnu/packages/patches/pitivi-fix-build-with-meson-0.60.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): De-register it.
* gnu/packages/video.scm (pitivi): Update to 2022.06.0.
[version]: Do not prefix with previous semver version.
[inputs]{gst-plugins/selection}: Add comment about cvtracker.
{python-librosa}: New input.
* gnu/packages/curl.scm (curl-7.84.0)[source]: Add patch to work around
implicit function declaration.
* gnu/packages/patches/curl-easy-lock.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.
* gnu/packages/patches/mcrl2-fix-1687.patch,
gnu/packages/patches/mcrl2-fix-counterexample.patch: New files.
* gnu/local.mk (dist_patch_DATA): Add them.
* gnu/packages/maths.scm (mcrl2): Update to 202206.0 and use them.
* gnu/packages/compression.scm (zlib): Update to 1.2.12.
[source](patches): New field.
[arguments]: Set CC variable.
* gnu/packages/commencement.scm (zlib-final)[source]: New field.
* gnu/packages/patches/zlib-cc.patch,
gnu/packages/patches/zlib-correct-crc32-inputs.patch: New files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
If this commit gives a deja vu, you are not dreaming; see commit
3e3a37b2bc.
* gnu/packages/base.scm (binutils): Update to 2.38.
[source](patches): Remove obsolete.
[arguments]: Add #:make-flags.
[properties]: New field.
(binutils+documentation): New variable.
(binutils-gold): Inherit from BINUTILS+DOCUMENTATION.
* gnu/packages/make-bootstrap.scm (%binutils-static)[arguments]: Inherit
#:make-flags.
* gnu/packages/patches/binutils-2.37-file-descriptor-leak.patch,
gnu/packages/patches/binutils-CVE-2021-45078.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
This is a follow-up to commit fce910af55.
* gnu/packages/patches/postgresql-riscv-spinlocks.patch: Delete file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/home/services/ssh.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* po/guix/POTFILES.in: Add it.
* doc/guix.texi (Secure Shell): New section.
This patch makes the public-inbox testsuite pass. Some tests are skipped,
so the test coverage could likely be increased with more massaging.
Perhaps the most significant change is using tini to run the testsuite so
that the testsuite's sub-processes are reaped. The ‘check’ phase is based on
the one from the mutter package. Thanks to Maxim Cournoyer for pointing out
this solution.
* gnu/packages/patches/public-inbox-fix-spawn-test.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add new patch.
* gnu/packages/mail.scm (public-inbox)[source]: Add new patch.
[arguments]<#:tests?>: Remove argument.
<#:imported-modules>: Add argument.
<#:modules>: Likewise.
<#:phases>{qualify-paths}: Substitute path for ‘/bin/cp’.
{pre-check}: Don't skip httpd-unix.t test. Remove unnecessary path
substitutions for “env” and “/bin/sh”.
{check}: Replace with custom version that launches the tests under tini.
[native-inputs]: Add tini.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
All packages updated at the same time as they have a shared version. rocclr is
no longer a stand-alone package, so the previous version is kept as rocclr-4
and the current version is just the source, rocclr-src, needed by rocm-opencl-runtime.
* gnu/packages/patches/rocm-opencl-runtime-3.10.0-includes.patch,
gnu/packages/patches/rocm-opencl-runtime-4.3-nocltrace.patch: Delete files.
* gnu/local.mk (dist_patch_DATA): Remove them.
* gnu/packages/patches/rocm-comgr-3.1.0-dependencies.patch,
gnu/packages/patches/rocm-opencl-runtime-4.3-noclinfo.patch,
gnu/packages/patches/rocm-opencl-runtime-4.3-noopencl.patch: Update patches.
* gnu/packages/rocm.scm (rocm-cmake, rocm-device-libs, rocm-comgr,
roct-thunk-interface, rocr-runtime, rocm-opencl-runtime, rocminfo,
rocm-bandwidth-test): Update to 5.1.3.
(roct-thunk-interface)[inputs]: Add libdrm.
[native-inputs]: Add gcc:lib and pkg-config.
(rocclr-src): New variable.
(rocclr-4): New variable (previous version of the package).
(rocm-opencl-runtime)[source]: Remove obsolete patches.
[arguments]: Rewrite with gexps. Add needed #:configure-flags.
[inputs]: Remove rocclr, add numactl.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/llvm.scm (llvm-for-rocm): Update to 5.1.3, now based on llvm-14.
[source]{patches}: Remove unneeded patches (add_Object and add_libraries) and add new one (linkdl).
* gnu/packages/patches/llvm-roc-3.0.0-add_libraries.patch,
gnu/packages/patches/llvm-roc-4.2.0-add_Object.patch: Delete files.
* gnu/packages/patches/llvm-roc-5.0.0-linkdl.patch: New file.
* gnu/local.mk (dist_patch_DATA): Update to match current patches.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/algebra.scm (fplll): Update to 5.4.2.
[source]: Remove patch; for unknown reasons the package now compiles
without it.
* gnu/packages/patches/fplll-std-fenv.patch: Remove file.
* gnu/local.mk (dist_patch_DATA): Unregister patch.
* gnu/packages/patches/mathjax-3.1.2-no-a11y.patch: New file.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/javascript.scm (js-mathjax-for-r-mathjaxr): New variable.
This partially fixes <https://issues.guix.gnu.org/54786>, allowing the 'jami'
and 'jami-provisioning' system tests to pass again.
In version 0.9.0, Shepherd constructors are now run concurrently, via
cooperative scheduling (Guile Fibers). The Jami service previously relied on
blocking sleeps while polling for D-Bus services to become ready after forking
a process; this wouldn't work anymore since while blocking the service process
wouldn't be given the chance to finish starting. The new reliance on Fibers
in Shepherd's fork+exec-command in the helper 'send-dbus' procedure also meant
that it wouldn't work outside of Shepherd anymore. Finally, the
'start-service' Shepherd procedure used in the test suite would cause the Jami
daemon to be spawned multiple times (a bug introduced in Shepherd 0.9.0).
To fix/simplify these problems, this change does the following:
1. Use the Guile AC/D-Bus library for D-Bus communication, which simplify
things, such as avoiding the need to fork 'dbus-send' processes.
2. The non-blocking 'sleep' version of Fiber is used for the 'with-retries'
waiting syntax.
3. A 'dbus' package variant is used to adjust the session bus configuration,
tailoring it for the use case at hand.
4. Avoid start-service in the tests, preferring 'jami-service-available?' for
now.
* gnu/build/jami-service.scm (parse-dbus-reply, strip-quotes)
(deserialize-item, serialize-boolean, dbus-dict->alist)
(dbus-array->list, parse-account-ids, parse-account-details)
(parse-contacts): Delete procedures.
(%send-dbus-binary, %send-dbus-bus, %send-dbus-user, %send-dbus-group)
(%send-dbus-debug): Delete parameters.
(jami-service-running?): New procedure.
(send-dbus/configuration-manager): Rename to...
(call-configuration-manager-method): ... this. Turn METHOD into a positional
argument. Turn ARGUMENTS into an optional argument. Invoke
`call-dbus-method' instead of `send-dbus', adjusting callers accordingly.
(get-account-ids, id->account-details, id->account-details)
(id->volatile-account-details, username->id, add-account remove-account)
(username->contacts, remove-contact, add-contact, set-account-details)
(set-all-moderators, username->all-moderators?, username->moderators)
(set-moderator): Adjust accordingly.
(with-retries, send-dbus, dbus-available-services)
(dbus-service-available?): Move to ...
* gnu/build/dbus-service.scm: ... this new module.
(send-dbus): Rewrite to use the Guile AC/D-Bus library.
(%dbus-query-timeout, sleep*): New variables.
(%current-dbus-connection): New parameter.
(initialize-dbus-connection!, argument->signature-type)
(call-dbus-method): New procedures.
(dbus-available-services): Adjust accordingly.
* gnu/local.mk (GNU_SYSTEM_MODULES): Register new module.
* gnu/packages/glib.scm (dbus-for-jami): New variable.
* gnu/services/telephony.scm: (jami-configuration)[dbus]: Default to
dbus-for-jami.
(jami-dbus-session-activation): Write a D-Bus daemon configuration file at
'/var/run/jami/session-local.conf'.
(jami-shepherd-services): Add the closure of guile-ac-d-bus and guile-fibers
as extensions. Adjust imported modules. Remove no longer used parameters.
<jami-dbus-session>: Use a PID file, avoiding the need for the manual
synchronization.
<jami>: Set DBUS_SESSION_BUS_ADDRESS environment variable. Poll using
'jami-service-available?' instead of 'dbus-service-available?'.
* gnu/tests/telephony.scm (run-jami-test): Add needed Guile extensions. Set
DBUS_SESSION_BUS_ADDRESS environment variable. Adjust all tests to use
'jami-service-available?' to determine if the service is started rather than
the now problematic Shepherd's 'start-service'.