Fixes a regression introduced in
938448bf40 whereby
'fork+exec-command/container' would return #t, then used as the running
value of the 'guix-daemon' service in the installer. Upon installation
completion, stopping the 'guix-daemon' service would fail with
wrong-type-arg because that #t would be passed to the 'stop' method in
lieu of a PID.
* gnu/build/shepherd.scm (fork+exec-command/container): Return a PID
rather than #t.
Fixes a regression introduced in
938448bf40 where 'exec-command*' could
get #:directory #f, in particular when called by
'fork+exec-command/container'.
* gnu/build/shepherd.scm (exec-command*): Add default value for #:directory.
* gnu/home/services/shells.scm (home-zsh-service-type): Make zsh related
private functions more consistently named.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
The 'ar' matched the 'ar' in 'aarch64-linux-gnu' to unfun consequences.
* gnu/packages/bioinformatics.scm (smithwaterman)[arguments]: More
closely match the 'ar' and 'ld' commands when substituting them.
* gnu/packages/patches/efivar-211.patch: New patch.
* gnu/local.mk (dist_patch_DATA): Add it.
* gnu/packages/linux.scm (efivar)[source]<origin>: Use it.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Fixes <https://issues.guix.gnu.org/54812>.
Starting with Shepherd 0.9.0 and the use of 'make-inetd-constructor' in
commit 808b9e8504, systems might be
running transient Shepherd services such as those corresponding to SSH
connections. Before this change, 'shepherd-service-upgrade' would have
those transient services in the list of services to unload; concretely,
that would lead all SSH connections to be closed upon 'guix system
reconfigure'.
* gnu/services/shepherd.scm (shepherd-service-upgrade): Remove transient
services to TO-UNLOAD.
* gnu/services/herd.scm (<live-service>)[transient?]: New field.
(current-services): Check the value of 'transient?'. Call
'resolve-transients'.
(resolve-transients): New procedure.
This fixes a regression that was introduced in
27720d0fe1.
* gnu/packages/patches/ganeti-pyyaml-compat.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/virtualization.scm (ganeti)[source](patches): Add it.
Cross-compiling lsof is failing with an "invalid G-expression input"
error. Fix this by using a quoted list.
* gnu/packages/lsof.scm (lsof): Fix invalid G-Expression.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This ensures those programs, if invoked by shepherd (where standard
input is /dev/null), can still interact with the user if needed.
* gnu/build/file-systems.scm (check-ext2-file-system)
(check-bcachefs-file-system, check-btrfs-file-system):
(check-fat-file-system, check-jfs-file-system):
(check-f2fs-file-system, check-ntfs-file-system):
(check-xfs-file-system): Use 'system*/tty' instead of 'system*'.
Fixes <https://issues.guix.gnu.org/54770>.
Regression introduced in 400c9ed3d7.
Previously, for an encrypted /home (say), "cryptsetup open" would be
invoked by shepherd, with /dev/null as its standard input. It would
thus run in non-interactive mode and, instead of asking for a
passphrase, fail with:
Nothing to read on input.
This change ensures it runs in interactive mode.
* gnu/build/file-systems.scm (system*/console, system*/tty): New
procedures.
* gnu/system/mapped-devices.scm (open-luks-device): Use 'system*/tty'
instead of 'system*'.
* gnu/packages/lisp-xyz.scm (sbcl-legit): Update to 1.0.0-2.5f8a2d4 and use
revision variable in let block.
[arguments]: Add 'patch-git-executable' phase.
[inputs]: Add formatting and add missing git input.
Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
* gnu/packages/chromium.scm (%preserved-third-party-files): Adjust for 100.
(%chromium-version): Set to 100.0.4896.75.
(%debian-revision): Set to debian/100.0.4896.60-1.
(%ungoogled-origin): Update hash.
(%debian-patches): Updates hashes. Remove obsolete.
(ungoogled-chromium): Update hash.
[arguments]: Remove obsolete substitution. Patch libvulkan.so.1 in more
files, and add absolute reference to Mesa ICDs.
* gnu/packages/chromium.scm (%preserved-third-party-files): Adjust for 99.
(%chromium-version): Set to 99.0.4844.84.
(%ungoogled-origin): Update hash.
(ungoogled-chromium): Likewise.
[arguments]: Patch absolute file names to GTK libraries. Patch one more
Opus header inclusion. Remove labels in wrapping phase.
[native-inputs]: Change from CLANG-13 to CLANG-14.
[inputs]: Add AT-SPI2-ATK.
* gnu/packages/llvm.scm (%llvm-monorepo-hashes, %llvm-patches, llvm-monorepo):
New variables.
(clang-runtime-from-llvm): Make HASH optional; use monorepo when not present.
(clang-from-llvm): Likewise.
(llvm-14, clang-runtime-14, clang-14, clang-toolchain-14, lld-14): New variables.
(llvm-13): Inherit from LLVM-14.
(lld-13): Inherit from LLD-14.
(lld): Turn into alias for LLD-14.
* gnu/packages/patches/clang-14.0-libc-search-path.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/zig.scm (zig): Change from LLD to LLD-13.
* gnu/packages/lisp-xyz.scm (sbcl-sxql): Update to 0.1.0-3.cc3478c and use
revision variable in let block.
[inputs]: Add missing sbcl-trivia input.
Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
This lets the 'childhurd' service start in the background, letting
shepherd perform other tasks in the meantime, including serving
clients (such as the 'herd' command).
* gnu/build/secret-service.scm (with-modules): New macro.
(wait-for-readable-fd): Add cooperative implementation when Fibers is in
use.
(secret-service-send-secrets): Define 'sleep' so that it cooperates when
Fibers is in use.
* gnu/services/ssh.scm (openssh-shepherd-service): Use
'make-inetd-constructor' when it is defined.
(<openssh-configuration>)[max-connections]: New field.
* gnu/tests/ssh.scm (run-ssh-test)["sshd PID"]: Adjust to cope with
PID-FILE being #f.
* gnu/tests/ssh.scm (%test-openssh): Pass #f as the 'pid-file'
argument.
* doc/guix.texi (Networking Services): Document 'max-connections'.
* gnu/home/services/shepherd.scm (<home-shepherd-configuration>)[shepherd]:
Default to SHEPHERD-0.9.
(home-shepherd-configuration-file): Use 'start-in-the-background' when
it is defined.
* gnu/services/shepherd.scm (scm->go): Define 'shepherd&co' and pass it
to 'with-extensions'.
(shepherd-configuration-file): Call 'start-in-the-background' when it is
defined.
(<shepherd-configuration>)[shepherd]: Default to SHEPHERD-0.9.
* gnu/system.scm (hurd-default-essential-services): Use SHEPHERD-0.8.
* gnu/build/shepherd.scm (exec-command*): New procedure, with code
formerly...
(make-forkexec-constructor/container): ... here. Use it.
(fork+exec-command/container): Use 'fork+exec-command' only when
CONTAINER-SUPPORT? is false or PID is the current process.
* gnu/packages/admin.scm (shepherd): Rename to...
(shepherd-0.8): ... this. New variable.
(shepherd): Define as an alias for SHEPHERD-0.8.
(shepherd-0.9): New variable.
(guile2.2-shepherd): Inherit from SHEPHERD-0.9 and adjust inputs
accordingly.
Forbid root user creation as it could lead to a system without any
non-priviledged user accouts.
Fixes: <https://issues.guix.gnu.org/54666>.
* gnu/installer/newt/user.scm (run-user-add-page): Forbid it.
Includes fixes for CVE-2022-1097, CVE-2022-1196, CVE-2022-24713,
CVE-2022-28281, CVE-2022-28282, CVE-2022-28285, CVE-2022-28286, and
CVE-2022-28289.
* gnu/packages/gnuzilla.scm (%icecat-version, %icecat-build-id): Update.
(icecat-source): Update gnuzilla commit, base version, and hashes.
[[PGP Signed Part:No public key for 2208D20958C1DEB0 created at 2022-03-28T11:03:48+0200 using RSA]]
* gnu/packages/mail.scm (l2md): Update to 9db252bc.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Current plocate package sets the --sharedstatedir to a store directory, which
causes updatedb and plocate to fail by default since the store is immutable.
This will set the default database path to /var/cache/plocate.db instead.
* gnu/packages/search.scm (plocate): Change build options.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Looks like phodav requires libsoup 2. Example of failing build logs,
wanting libsoup 2.4: <https://ci.guix.gnu.org/build/584454/log/raw>
After swapping the dependency, tests were failing due to HOME not being
writable. I added a new build phase to account for this. I also removed
the start-virtual-dir-server phase which no longer seems required, the
tests pass without it.
* gnu/packages/gnome.scm (phodav): Fix build, tests.
[inputs]: Replace libsoup 3 with libsoup 2.
[arguments]<#:phases>[set-temporary-home]: New phase.
[arguments]<#:phases>[start-virtual-dir-server]: Remove phase.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/linux.scm (config->string): add a clause handling strings
Allows for the declarative configuration of kconfig options which accept
strings, such as CONFIG_MODULE_SIG_KEY.
I've enclosed the given string in quotes, but don't do any kind of
escaping. See the kernel mailing list for the current state of escaped
strings upstream:
https://patchwork.kernel.org/project/linux-kbuild/patch/1431003982-992-1-git-send-email-sr@denx.de/
Apologies to those with double-quotes or backslashes in their
CONFIG_SYSTEM_*_KEYS.
Signed-off-by: antlers <autumnalantlers@gmail.com>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* gnu/packages/wm.scm (xmonad-next)[arguments]: Use #$output, #$name
and #$synopsis instead of %output, name and synopsis.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
This is needed since the update of python-loompy.
* gnu/packages/bioinformatics.scm (pigx-scrnaseq)[arguments]: Rename
'set-PYTHONPATH to 'set-additional-environment-variables and set
NUMBA_CACHE_DIR.
This reverts commit 223a3d7f7f, as it triggered
thousands of rebuilds due to inadvertently touching git-minimal/fixed.
Reported-by: Christopher Baines <mail@cbaines.net>
* gnu/packages.scm (package-unique-version-prefix): New procedure.
* guix/scripts/package.scm (manifest-entry-version-prefix): Use it.
* tests/packages.scm ("package-unique-version-prefix, gcc@8")
("package-unique-version-prefix, grep"): New tests.
* gnu/services/admin.scm (<log-cleanup-configuration>): New record
type.
(log-cleanup-program, log-cleanup-mcron-jobs): New procedures.
(log-cleanup-service-type): New variable.
* doc/guix.texi (Log Rotation): Document it.
* gnu/packages/bioinformatics.scm (smithwaterman)[arguments]: Add
make-flag to use cxx-for-target. Adjust custom 'patch-source and
'build-dynamic phases to use cross toolchain binaries when cross
compiling. Remove trailing #t from phases.
* gnu/packages/crates-io.scm (rust-criterion-0.3): Update to 0.3.5.
[arguments]<cargo-inputs>: Replace rust-approx-0.4 with 0.5,
rust-quickcheck-0.9 with 1.
* gnu/packages/crates-io.scm (rust-ndarray-0.14): New variable.
* gnu/packages/patches/rust-ndarray-0.14-remove-blas-src.patch: New file.
* gnu/local.mk (dist_patch_DATA): Register it.