services: guix: Allow ‘guix-daemon’ to run without root privileges. * gnu/services/base.scm (run-with-writable-store) (guix-ownership-change-program): New procedures. (<guix-configuration>)[privileged?]: New field. (guix-shepherd-service): Rename to… (guix-shepherd-services): … this. Add the ‘guix-ownership’ service. Change ‘guix-daemon’ service to depend on it; when unprivileged, prefix ‘daemon-command’ by ‘run-with-writable-store’ and omit ‘--build-users-group’; adjust socket activation endpoints. (guix-accounts): When unprivileged, create the “guix-daemon” user and group in addition to the others. (guix-service-type)[extensions]: Adjust to name change. * gnu/tests/base.scm (run-guix-daemon-test): Add ‘name’ parameter. (%test-guix-daemon): Adjust accordingly. (%test-guix-daemon-unprivileged): New test. * doc/guix.texi (Base Services): Document ‘privileged?’. (Migrating to the Unprivileged Daemon): Explain that this is automatic on Guix System. Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Change-Id: I28a9a22e617416c551dccb24e43a253b544ba163
tests: guix-daemon: Wait for the ‘guix-daemon’ service to be up. * gnu/tests/base.scm (run-guix-daemon-test): Add “guix-daemon service is up” test. Change-Id: I4d44a1248599fec45c854c285d4da201c30eb00c
tests: guix-daemon: Send system log output to /dev/console. * gnu/tests/base.scm (%daemon-os): New variable. (%test-guix-daemon): Use it. Change-Id: Iea31808cc59e94971ea4cbc12d565c94348bf7a4
services: account: Create /var/guix/profiles/per-user/$USER. * gnu/system/shadow.scm (account-shepherd-service): Create /var/guix/profiles/per-user/$USER in ‘user-homes’ service. Change-Id: I22e66e8a34d63686df9bae64c68df65c8889e72a
syscalls: Add ‘unshare’. * guix/build/syscalls.scm (unshare): New procedure. Change-Id: I344273b8bdeaa9366334e6e20ee7efc37eb6c8f7
doc: Document migration to the unprivileged daemon. * doc/guix.texi (Build Environment Setup): Add “Migrating to the Unprivileged Daemon” section. (Upgrading Guix): Link to it. Change-Id: I2bac3f4419d85b7c718c6c4a3908387b4f6ee582
self: Install systemd ‘.service’ files. This is consistent with the ‘guix’ package and will prove helpful when people want to replace /etc/systemd/system/guix*.service with newer versions thereof. * guix/self.scm (parameterized-file): New procedure, based on… (selinux-policy): … this. Use ‘parameterized-file’. (systemd-file): New procedure. (miscellaneous-files): Add systemd files. Change-Id: Ia489a955347cf648a86000cc1265769d66c3f0e8
gnu: prusa-slicer: Fix segfault on startup * gnu/packages/wxwidgets.scm (prusa-wxwidgets): Inherit arguments and inputs from wxwidgets-sans-egl. Change-Id: If0f7df1fadba30de3e4da043cac90c3e7b7c830c Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
gnu: cl-simple-matrix: Update to 1.6-0.6a95ac2. * gnu/packages/lisp-xyz.scm (sbcl-simple-matrix): Update to 1.6-0.6a95ac2. Change-Id: I931976ba8171f8b98fea06dbd59980800693382b
gnu: magic-wormhole-mailbox-server: Fix build. * gnu/packages/magic-wormhole.scm (magic-wormhole-mailbox-server)[phases]: Add 'fix-read-mode-in-setup.py. Change-Id: I1ec05080619010ebe2e3d8f9ba571fc311a73c23
gnu: python-scikit-learn: Update to 1.6.1. * gnu/packages/machine-learning.scm (python-scikit-learn): Update to 1.6.1. [arguments] <test-flags>: Run tests in parallel by providing "--numprocesses" options, it's save and supported upstream. Disable more failing tests. <phases>: Add 'remove-notice-rgx; remove 'build-ext. [native-inputs]: Remove python-setuptools and python-wheel; add gfortran and meson-python. [propagated-inputs]: Sort alphabetically. Change-Id: I594d1cbd36815e4faf6ba8907ac1410bc45a239d
gnu: python-scikit-learn: Use G-expressions. * gnu/packages/machine-learning.scm (python-scikit-learn): Adjust package indentation, use G-expressions. Change-Id: I332d5f13096d94bc2a8e4f1daa8e44b6dcb0d6d5
gnu: packages/machine-learning: Sort use-module. * gnu/packages/machine-learning.scm: Fix sorting of use-module. Change-Id: Iaf05eae20ca523f043ae4dd8ea99f6f19741019d
Merge remote-tracking branch 'origin/python-team' Change-Id: I08cf47c4ee8c4019615ba45cef4cca1bd362d31b
services: ngircd: Require networking. Otherwise the service could fail starting if the networking interface takes some time to be created during the boot (one such example are WireGuard interfaces). * gnu/services/messaging.scm (ngircd-configuration) [shepherd-requirement]: Add networking. * doc/guix.texi (Messaging Services): Update. Change-Id: I387ae5780a35cad5b74d9883ac53f13de1a08c78
services: ngircd: Streamline wrapper definition. * gnu/services/messaging.scm (ngircd-shepherd-service): Streamline wrapper definition. Change-Id: Ie48a02d141ab329a5b684897fb2562b4e6745452
least-authority: Export default preserved environment variables. * guix/least-authority.scm (%precious-variables): Rename to... (%default-preserved-environment-variables): ... this, and export it. (least-authority-wrapper): Adjust accordingly. Change-Id: Idd259b15463920965f530e1917d76bf97def3b7b
gnu: python-django-compressor: Include package data. It's a follow up of commit 0879cb6f667a6c1aaa7774e44b8e806314edf621. * gnu/packages/django.scm (python-django-compressor): [phases]{add-missing-init-files}: Adjust setup.py to include package data files. Change-Id: Ic6d8380ec07a01badabaf596888ba0455ff416f8
gnu: python-conda-inject: Switch off tests. * gnu/packages/package-management.scm (python-conda-inject): Disable tests as they expect configured Conda environment to run. [native-inptus]: Remove python-pytest. Change-Id: I5372a3234b567f305449a645c60b87098f8d89ac
gnu: python-mgatk: Update to 0.7.0. * gnu/packages/bioinformatics.scm (python-mgatk): Update to 0.7.0. [arguments] <phases>: Remove 'python3-compatibility as resolved upstream. Change-Id: I389dd546f4a112bf52758c216baedfdcf0613bf9