Commit graph

2392 commits

Author SHA1 Message Date
Giacomo Leidi
c425bac93d
Update Giacomo's email address.
The change was automated via:

git grep -l goodoldpaul@autistici.org |
    xargs sed -i 's/goodoldpaul@autistici.org/therewasa@fishinthecalculator.me/g'

* .mailmap: New entry.

Change-Id: I1629388334695d221647afe6a14faf61af5fe0d6
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-12-03 14:38:09 +09:00
Yelninei
8c1fa0ed12
services: hurd-vm: Add machine argument for qemu for 64 bit images.
Fixes issues when memory is >= 3584.

* gnu/services/virtualization.scm (hurd-vm-shepherd-service):
When type is 'hurd64-qcow2 add -M q35 to qemu arguments.

Change-Id: I58ea603faad545294aad52b71aac82c922fd9b96
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-11-29 18:46:51 +01:00
Andreas Enge
e1a3b41a4b
gnu: Remove lsh-service-type.
* gnu/services/ssh.scm (<lsh-configuration>, %yarrow-seed,
lsh-initialization, lsh-activation, lsh-shepherd-service,
lsh-pam-services, lsh-service-type): Delete variables.
* doc/guix.texi: Remove lsh-service-type documentation.

Change-Id: I18377a111c10ec6f6d362fadabc64cb66a2b122d
2025-11-21 14:35:35 +01:00
Andreas Enge
ad30252858
gnu: Remove lsh-service.
* gnu/services/ssh.scm (lsh-service): Delete variable.

Change-Id: I67589ddda78d5bd6473c7ed0a23c001ee772180f
2025-11-21 14:35:27 +01:00
Ian Eure
fa4aba28a0
gnu: Add autofs-service-type.
* gnu/services/nfs.scm (autofs-service-type): New variable.
(<autofs-configuration>): New record.
(<autofs-indirect-map>): New record.
(<autofs-map-entry>): New record.

Change-Id: I4ed1862772001470d1214c3061a306440b0d775b
2025-11-16 10:21:52 -08:00
Lilah Tascheter
7fb7d071cf
gnu: services: Add mollysocket service.
* gnu/services/messaging.scm (ms-format,ms-serialize-string,
ms-serialize-integer, ms-serialize-boolean,
ms-serialize-list-of-strings, mollysocket-shepherd-service,
mollysocket-account-service, mollysocket-activation-service): New
procedures.
(mollysocket-configuration): New configuration.
(mollysocket-service-type): New variable.
* doc/guix.texi (Messaging Services)[Mollysocket Service]: New section.

Change-Id: I87d57b69a6d8fa8841a95add084aa383385de4c7
2025-11-12 12:20:22 +02:00
Christopher Baines
f7125fb55d
gnu: Fix patchwork service test.
* gnu/packages/patchutils.scm (patchwork):[arguments]: Write version.txt,
tweak some indentation, patch the STATICFILES_DIRS entry.
[propagated-inputs]: Add python-tzdata.
* gnu/services/web.scm (patchwork-settings-module-compiler): Don't set
STATIC_ROOT on debug, as this clashes with STATICFILES_DIRS.
(patchwork-django-admin-gexp): Fix.
(patchwork-shepherd-services): Workaround issue referencing random-token.
* gnu/tests/web.scm (patchwork-initial-database-setup-service): Don't use
primitive-fork, as this doesn't work with newer shepherds.
(run-patchwork-test): Check the setup runs.

Change-Id: I7dfeb816b4f6c9070358d433fb7ca8faa1fbfd2a
2025-11-10 10:27:36 +00:00
Dariqq
49ba3adfdf
services: opensmtd: Add back option to log to syslog.
The option for syslog logging was removed in 6036f1f305.

* gnu/services/mail.scm (opensmtpd-shepherd-service): When log-file is #f
daemonize and set the pid-file.

Change-Id: I356f4ccacc473def35708c114947788d485d058b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-11-09 22:12:02 +01:00
dan
78f05b29c1
gnu: Add iio-sensor-proxy-service-type.
* gnu/services/desktop.scm (iio-sensor-proxy-configuration)
(iio-sensor-proxy-shepherd-service, iio-sensor-proxy-service-type): New
variables.
* doc/guix.texi (Desktop Services): Document iio-sensor-proxy-service-type.

Change-Id: I0c3d7164efcc499e4b785fd1f994c68a971ebdbd
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-11-07 18:39:59 +01:00
Nguyễn Gia Phong
b7a3ad2922
services: gitile: Add git-owner-validation? configuration.
* gnu/services/version-control.scm (gitile-configuration):
  Add git-owner-validation? field.
* doc/guix.text (Version Control Services): Document it.

Change-Id: I7d35e66e512fcaae25a5eac138b0fb2437a7c70c
2025-11-02 14:48:38 +01:00
Evgeny Pisemsky
2899ed6d9d
services: git-http-nginx-location-configuration: Add gitconfig.
* gnu/services/version-control.scm (git-http-nginx-location-configuration):
Specify a global gitconfig that marks git-root as a safe directory.

Fixes: guix/guix#3649
Change-Id: I503cd05e3247a71a4bd07df49c276e04d3a43a81
Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2025-11-02 14:28:13 +01:00
Andreas Enge
ff82763d11
services: getmail: Correct deprecated package.
* gnu/services/getmail.scm (getmail-configuration)[package]: Replace
getmail by getmail6.

Change-Id: I53389da5afca7684275e6d7e6dae3d71d115c71d
2025-10-25 12:23:23 +02:00
Christopher Baines
edb1d29cf5
tests: nar-herder: Test the control port.
* gnu/services/guix.scm (nar-herder-shepherd-services): Add missing variables.
* gnu/tests/guix.scm (%nar-herder-os): Have the control server listen on all
interfaces.
(run-nar-herder-test): Test connecting to the control server.

Change-Id: I40949e8adaf0c6491ee56c59d611395a639d497b
2025-10-25 10:54:05 +01:00
Christopher Baines
7fe4645cb7
services: nar-herder: Fix the control options.
* gnu/services/guix.scm (nar-herder-shepherd-services): Fix the control
server options.

Change-Id: Iae17300f7ae6dffb0905936389b49032e763c401
2025-10-25 10:43:31 +01:00
Christopher Baines
0b607f5e5a
services: nar-herder: Add storage-minimum-free-space and extra-options.
Also export the control-host and control-port accessors.

* gnu/services/guix.scm (<nar-herder-configuration>): Add
storage-minimum-free-space and extra-options fields.
(nar-herder-shepherd-services): Use these.

Change-Id: Ie03b5c2ffd0daf295ebf51a1998ae01d5f0f4ef6
2025-10-25 09:20:39 +01:00
Romain GARBAGE
09e9c0c21e
services: forgejo-runner: Add ‘log-file’ option.
* gnu/services/ci.scm (<forgejo-runner-configuration>) [log-file]: New field.
(forgejo-runner-shepherd-service): Use new field.
* doc/guix.texi (Continuous Integration): Add documentation.

Change-Id: Ie03e6d4b9b4f2c1cad0e9cd20032fca5ae4a4410
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-10-24 16:42:53 +02:00
Ludovic Courtès
9b15bfad51
services: herd: Remove ‘load-services/safe’.
This is a followup to 95731b4ef1.

* gnu/services/herd.scm (load-services/safe): Remove.
* guix/scripts/system/reconfigure.scm (upgrade-services-program): Use
‘load-services’.

Change-Id: Ie5ab99e69e2d7c1934fddd37794c07e6e07489a3
2025-10-24 16:42:53 +02:00
Ludovic Courtès
96558456df
services: herd: Use the non-deprecated form of ‘register-services’.
Passing a rest list to ‘register-services’ is deprecated since version 0.10.0
of the Shepherd.

* gnu/services/herd.scm (load-services): Pass a list to ‘register-services’.

Change-Id: Id6325259aed86d02510d4c741c0cd41c4566d3c8
2025-10-24 16:42:53 +02:00
Evgeny Pisemsky
231562b68b
services: unbound: Remove dns from provision.
Fixes <https://issues.guix.gnu.org/76301>.

The ‘dns’ provision collides with that of Knot.

* gnu/services/dns.scm (unbound-shepherd-service): Remove dns from provision.

Change-Id: Ice774a9a338416e865dbc4d26a8f37243f084a35
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-10-23 19:35:07 +02:00
Christopher Baines
b0ef1997d8
services: nar-herder: Add control server options.
* gnu/services/guix.scm (<nar-herder-configuration>): Add control host and
control port fields.
(nar-herder-shepherd-services): Use them.
* doc/guix.texi (Guix Services): Document them.

Change-Id: Ie738fb30302496d2ec530ca3b5c8b0628fdd4c05
2025-10-23 16:43:17 +01:00
Ludovic Courtès
69710d1d3a
services: guix: Populate /etc/subgid so guix-daemon can map the “kvm” GID.
* gnu/services/base.scm (guix-activation): Add a line for ‘guix-daemon’
in /etc/subgid.
(guix-shepherd-services): Add /run/privileged/bin to ‘PATH’.

Change-Id: Ic103d86986ce2ace194b0a4296a00278bf0617eb
2025-10-21 16:32:04 +02:00
Ludovic Courtès
84c60c3c3b
services: guix: Preserve ‘guix-daemon’ user supplementary groups.
When running ‘guix-daemon’ unprivileged, supplementary groups such as
“kvm” were dropped by ‘run-with-writable-store’.

* gnu/services/base.scm (run-with-writable-store): Use ‘read-group’ to
determine the list of supplementary groups for ‘user’ and pass that to
‘setgroups’.

Change-Id: I21cc546a91a1a24cc94cafb44fa93e088f8673a7
2025-10-21 16:31:56 +02:00
Sughosha
d9a6e1e8b2
gnu: services/desktop.scm: Remove reference to (gnu packages kde-frameworks).
* gnu/services/desktop.scm: Remove reference to (gnu packages kde-frameworks)
module.

Change-Id: I3a8fa749af7b6141fe09609da32914e6f57fb70d
2025-10-17 11:27:17 +02:00
Sughosha
c987080c88
gnu: qca, qca-qt6: Move to kde-frameworks.scm.
* gnu/packages/kde.scm: Remove file.
* gnu/local.mk: Deregister it.
* po/packages/POTFILES.in: Ditto.
* gnu/packages/kde-frameworks.scm (qca): New variable.
(qca-qt6): Ditto.
* gnu/packages/geo.scm: Replace (gnu packages kde) with (gnu packages
kde-frameworks).
* gnu/packages/messaging.scm: Ditto.
* gnu/packages/web.scm: Ditto.
* gnu/packages/irc.scm: Remove reference to (gnu packages kde) module.
* gnu/packages/kde-education.scm: Ditto.
* gnu/packages/kde-games.scm: Ditto.
* gnu/packages/kde-graphics.scm: Ditto.
* gnu/packages/kde-internet.scm: Ditto.
* gnu/packages/kde-office.scm: Ditto.
* gnu/packages/kde-pim.scm: Ditto.
* gnu/packages/kde-plasma.scm: Ditto.
* gnu/packages/kde-systemtools.scm: Ditto.
* gnu/packages/kde-utils.scm: Ditto.
* gnu/services/desktop.scm: Ditto.

Change-Id: Ib632bc46588a2400c61fd549389001ff367c0d66
2025-10-17 11:27:17 +02:00
Ludovic Courtès
ba29b569ea
services: cuirass: Start ‘cuirass register’ eagerly.
* gnu/services/cuirass.scm (cuirass-shepherd-service): Pass #:lazy-start?.

Change-Id: Ib91c82e74ce9c80616a3de693d858939e670a03d
2025-10-16 15:14:36 +02:00
Ludovic Courtès
03640d3cf0
services: cuirass: Validate specifications at build time.
This ensures problems in the spec are caught before the system is
instantiated.

* gnu/services/cuirass.scm (cuirass-configuration->specification-file):
New procedure.
(cuirass-shepherd-service): Use it instead of ‘scheme-file’.

Change-Id: I90187ed4ed1a51958159741a55b6dc635c97312a
2025-10-16 15:14:36 +02:00
Maxim Cournoyer
1d77413c56
services/base: Only remount read-write if needed in run-with-writable-store.
* gnu/services/base.scm (run-with-writable-store): Make it a no-op when
the store is already writable (useful for testing).

Change-Id: If598638e9d3eeac242c265cba77f27e4a15f8d9b
2025-10-11 21:57:59 +09:00
Oleg Pykhalov
0824f8a3eb
services: libvirt: Add configurable service requirements.
This enhances flexibility by allowing users to specify custom service
dependencies for libvirt, rather than being limited to the default hardcoded
requirements. This is particularly useful for complex deployments or when
integrating with custom service configurations.

Note that default 'dbus-system' requirement may not be strictly necessary for
basic libvirt operation. For instance, libvirt can function without issues in
many cases even when dbus-system is not included in the requirements, allowing
for more minimal deployments.

* gnu/services/virtualization.scm (list-of-symbols?,
serialize-list-of-symbols): New procedures.
(libvirt-configuration): Add 'requirement' field to allow custom service
dependencies.
(libvirt-shepherd-service): Use the configured requirements instead of
hardcoded ones.
* doc/guix.texi (Virtualization Services): Document the new 'requirement'
option.

Change-Id: I05cfbb5227cff9b7d9b55ee37774c96e39c4c526
2025-10-07 14:18:05 +03:00
Oleg Pykhalov
dad7b8d70d
services: libvirt: Make dmidecode available to fix SMBIOS error.
The libvirt daemon requires 'dmidecode' to provide Host SMBIOS information
to virtual machines. Without it in the PATH, it fails with the error:
"Host SMBIOS information is not available".

* gnu/services/virtualization.scm (libvirt-configuration): Add 'dmidecode'
field to specify the dmidecode package.
(libvirt-service-type): Add dmidecode to system profile to ensure it's
available in PATH.
* doc/guix.texi (Virtualization Services): Document the new 'dmidecode'
option.

Change-Id: I8e5e565e95149c5aeba2dc0c5c757046efa6de2d
2025-10-07 14:18:04 +03:00
Benjamin Chabanne
be39b5dee5
services: log-rotation: Allow to pass procedure as compression method.
* gnu/services/admin.scm (log-rotation-configuration): Change
    validation method and accept gexp procedure.

Change-Id: I67cd5051a05d211349ecbc66ee3a55ab5b1a5971
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-10-06 11:00:08 +02:00
Nguyễn Gia Phong
af16ef27af
services: rottlog: Remove.
* gnu/services/admin.scm (rottlog-service{,-type},
rottlog-configuration{,?,-rottlog,-rc-file,-rotations,-jobs}
log-rotation{,?,-frequency,-files,-options,-post-rotate},
%default-rotations, %rotated-files, %default-log-rotation-options):
Remove variables.
* doc/guix.texi (Rottlog): Remove subheading.
* .dir-locals.el: De-register rottlog-configuration.

References: a9f21036e4 ("services: rottlog: Deprecate.")
Change-Id: I9d62deb4dba31a07c3ef82cde0fca3a05ece064d
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-09-30 21:58:38 +09:00
Sergey Trofimov
dfe010d84b
gnu: sane-backends: Remove hplip dependency.
* gnu/packages/scanner.scm (sane-backends)[inputs]: Omit hplip.
[arguments]: Remove hplip phases.
* gnu/services/desktop.scm (lift-sane-configuration): Warn user that
hplip needs to be explicitly enabled in sane-configuration.

Change-Id: I05ffc3a2d04c5ee3da2739b68085557ff791814f
2025-09-30 16:48:23 +09:00
Sergey Trofimov
a87944f94e
services: sane: Support pluggable backends.
* gnu/services/desktop.scm (sane-configuration): New record.
(sane-service-type): Add native search paths to environment.

Change-Id: Ia7b66b62cf027200dd94533f32c1e4bc0ed373d3
2025-09-30 16:48:22 +09:00
Trevor Arjeski
b4b4be47cb
services: tor: Add nss-certs.
When using a tor-transport-plugin, namely a webtunnel with lyrebird, it is
necessary to have access to ssl certs to establish a connection to the bridge
over https.

* gnu/services/networking.scm (tor-shepherd-service): add nss-certs
file-sytem-mapping

Change-Id: Ifb7488d406cc6300eb6ac95e7dc0dfef0ff571db
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Modified-by: Ludovic Courtès <ludo@gnu.org>
2025-09-29 15:28:08 +02:00
Rodion Goritskov
054aae7bb2
services: Add miniflux-service-type.
* doc/guix.texi: Document Miniflux service and configuration.
* gnu/services/web.scm: New service.
* gnu/services/web.scm: Define shepherd service and account roles.
* gnu/tests/web.scm: (%miniflux-create-admin-credentials,
miniflux-base-system, %test-miniflux-admin-string, %test-miniflux-admin-file,
%test-miniflux-socket): Add system tests for Miniflux service.

Change-Id: I4a336e677ec8b46aed632f0ded9cc11c2d38975f
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-09-26 21:39:40 +02:00
Arun Isaac
7b8ef76b0f
services: mumi: Raise maximum duration of indexing job.
Indexing all Debbugs issues from scratch can take more than an hour.

* gnu/services/web.scm (mumi-shepherd-services): Raise #:max-duration to 2
hours.
2025-09-25 11:37:06 +01:00
Arun Isaac
1a22809928
services: mumi: Add Debbugs rsync as shepherd timer.
* gnu/services/web.scm (<mumi-configuration>)[data-directory, rsync-remote,
rsync-flags]: New fields.
(%mumi-worker-log): Delete variable.
(%mumi-rsync-and-index-log): New variable.
(mumi-rsync-and-index): New function.
(mumi-shepherd-services): Remove mumi-worker service. Add mumi-rsync-and-index
service.
(mumi-service-type): Remove default value.
* doc/guix.texi (Web Services)[mumi]: Document data-directory, rsync-remote
and rsync-flags fields.

Co-authored-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-09-25 01:33:10 +01:00
Arun Isaac
464d738655
services: nginx: Add stream configuration.
* gnu/services/web.scm (<nginx-stream-configuration>): New record type.
(<nginx-configuration>)[stream]: New field.
(emit-nginx-server-config): Add context argument.
(default-nginx-config): Serialize stream.
* doc/guix.texi (Web Services): Document it.
2025-09-24 12:21:30 +01:00
Alexey Abramov
7365e16db8
services: dhcpcd: Add shepherd-provision field.
* doc/guix.texi (Networking Setup)<dhcpcd-configuration>: Regenerate
the dhcpcd-configuration documentation.
* gnu/services/networking.scm (dhcpcd-configuration)
<shepherd-provision>: Add new field.  Fix typo in client-id description.
(dhcpcd-shepherd-service): Use it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-09-23 14:57:22 +02:00
Maxim Cournoyer
7d10553db7
services: fail2ban: Extend profile with fail2ban package.
* gnu/services/security.scm (fail2ban-service-type): Register
profile-service-type extension.

Change-Id: Ia7d908ba68c82fb7b5f016d4d246112679c49415
2025-09-23 21:43:30 +09:00
Jean-Pierre De Jesus DIAZ
12699cf858
services: nix: Point Nix to bin/bash.
The nix-service-type will create the nix.conf file pointing to
`bin/sh' file in the bash-minimal package, however this is a symbolic
link to `bin/bash' in that same package, so when the sandbox gets
created there will be a symlink in the Nix sandbox like this:

  drwxr-xr-x  2 nobody nogroup 4096 Sep 18 13:10 .
  drwxr-x--- 10 nobody nixbld  4096 Sep 18 13:10 ..
  lrwxrwxrwx  1 nobody nogroup    4 Jan  1  1970 sh -> bash

Making builds that depend on /bin/sh fail since /bin/bash does not
exist in the sandbox.

* gnu/services/nix.scm (nix-service-etc): Change ‘build-sandbox-paths’ to
point to ‘bin/bash’.

Change-Id: I9138e9b772b8468382cfde6d133f0758837d03ff
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-09-21 19:20:19 +02:00
Ludovic Courtès
2a42babb2b
services: secret-service: Add missing import for ‘reboot’.
* gnu/services/virtualization.scm (secret-service-shepherd-services): In
‘modules’, add (shepherd system).

Change-Id: I23201f0ee3ce102f0d48d4f5ea24ddbfc06c247f
2025-09-21 18:35:50 +02:00
Sughosha
5fc7a9968c
services: plasma-desktop: Add "packagekit" to plasma-dbus-service.
* gnu/services/desktop.scm (plasma-dbus-service): Add "packagekit".

Change-Id: I4c1a3509ee8d5fa512b715188f32652f70f67506
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-09-20 21:45:24 +09:00
Sughosha
56931676cc
services: plasma-desktop: Add "packagekit" to plasma-polkit-settings.
* gnu/services/desktop.scm (plasma-polkit-settings): Add "packagekit".

Change-Id: I8f201f6dbab587b8075e45e10725d8bebf05ca3b
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-09-20 21:45:24 +09:00
Edouard Klein
43e5e856e1
services/vfs-mapping: Fix default name.
* gnu/services/linux.scm (vfs-mapping): Fix vfs-mapping default name.

Fixes: #1953
Change-Id: I7e05cc19d9dbcd7a4ccb86ee009ee947349738da
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-09-20 20:46:09 +09:00
Amy Pillow
b06afc5805
services: sddm: Require ‘pam_env.so’.
* gnu/services/sddm.scm (sddm-pam-service): New pam entry

Change-Id: Ia5912258a8da974b60fd74b02d0779c31ea7edf3
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Modified-by: Ludovic Courtès <ludo@gnu.org>
2025-09-18 12:14:35 +02:00
Giacomo Leidi
877610c1ce
services: oci: Fix OCI backed Shepherd services HOME variable.
This patch allows containers run with podman to run each with their own
specific user.

* doc/guix.texi: Fix wrong type for oci-container-configuration's
shepherd-dependencies field.
* gnu/services/containers.scm (oci-container-shepherd-service): In case
a specific container is not run through the user provisioned by the
oci-service-type, its environment is different from the globally
provisioned one and must be recomputed.

Change-Id: I5d636ad0616ced0af124002de4403da3067334de
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-09-18 12:14:35 +02:00
Maxim Cournoyer
10482f731e
Reapply "Update Maxim's email address."
This reverts commit a7db92d9b3, this time with
the more careful command, to avoid a world rebuild:

grep -rl --exclude-dir=build --exclude-dir=patches --exclude=ld-wrapper.in \
  --exclude=sitecustomize.py --exclude=guix-emacs.el maxim.cournoyer@gmail.com |
  xargs sed -i 's/maxim.cournoyer@gmail.com/maxim@guixotic.coop/g'

Change-Id: I0871f5cf9ace79e34e78e24154d0da6ea95a3a91
2025-09-18 13:44:12 +09:00
Maxim Cournoyer
a7db92d9b3
Revert "Update Maxim's email address."
This reverts commit d0d87a744d. Oops! This
caused a world rebuild.

Change-Id: I25fff644b2b61d0ee93d69b457b04c72b5b74d15
2025-09-18 12:07:31 +09:00
Maxim Cournoyer
d0d87a744d
Update Maxim's email address.
The change was automated via:

  git grep -l maxim.cournoyer@gmail.com |
    xargs sed -i 's/maxim.cournoyer@gmail.com/maxim@guixotic.coop/g'

* .mailmap: New entry.

Change-Id: Iaa88b1e51c94159c49138fb43910badb990eb169
2025-09-18 08:05:19 +09:00