1
0
mirror of https://git.savannah.gnu.org/git/guix.git synced 2026-04-09 06:30:36 +02:00
Commit Graph

2233 Commits

Author SHA1 Message Date
Sergio Pastor Pérez
354ffea720 services: file-database: Search ‘updatedb’ in package.
`file-database-service-type' appends 'bin/updatedb' path to the `package'
field provided by `file-database-configuration'. This prevents users from
using alternate packages which also provide 'updatedb' but in a different
location.

For example, the `plocate' package installs 'updatedb' in 'sbin/updatedb'.

Fallback to 'sbin/' if 'updatedb' is not found in 'bin/'.

* gnu/services/admin.scm (<file-database-configuration>)[package]:
Update docstring.
(file-database-shepherd-services): Locate 'updatedb' binary.
* doc/guix.texi (File Search Services): Update accordingly.

Change-Id: Ic741716044be3a8f51a157510f9f923bd66c41d7
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Modified-by: Ludovic Courtès <ludo@gnu.org>
2025-04-01 14:49:34 +02:00
Zheng Junjie
136115fa0f Partial revert "services: plasma-polkit-settings: Add missing packages."
This partially reverts commit 0cdb587628.

Fixes <https://issues.guix.gnu.org/77344>.

* gnu/services/desktop.scm (plasma-polkit-settings): Remove "kglobalaccel".

Change-Id: If0f414c59f40e0b41f138673137e7221578de3f2
2025-03-29 11:35:26 +08:00
Maxim Cournoyer
2eb22e3d0f services: libvirt: Add UEFI firmware support.
This makes libvirt able to boot images that require a UEFI bootloader, with
the available firmwares exposed to libvirt made configurable via a new
configuration field.  For more background on the problem this fixes, see the
same issue that was reported in NixOS (see:
https://github.com/NixOS/nixpkgs/issues/115996).

* gnu/services/virtualization.scm: (list-of-file-likes?): New predicate.
(libvirt-configuration): [firmwares]: New field.
(/etc/qemu/firmware): New procedure.
(libvirt-service-type): Extend the etc-service-type with it.
(generate-libvirt-documentation): Delete obsolete procedure.
* doc/guix.texi: Re-generate doc.
* gnu/tests/virtualization.scm (run-libvirt-test): Augment memory from 256 to
512 MiB.  Test it.

Series-to: 77110@debbugs.gnu.org
Change-Id: I40694964405f13681520bf1e28b7365b0200d8f7
2025-03-27 21:21:06 +09:00
Jonathan Brielmaier
8afea02d4d services: Use beaconDB as location provider in geoclue.
The previous used Mozilla Location Service (MLS) was retired in 2024:
https://github.com/mozilla/ichnaea/issues/2065

* gnu/services/desktop.scm (<geoclue-configuration>)
[wifi-geolocation-url]: Switch default provider to beaconDB.
[wifi-submission-url]: Likewise.

Change-Id: I95e4600a2d5454bdde4be44b09273694536bd44e
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-03-27 21:11:26 +09:00
Sughosha
0cdb587628 services: plasma-polkit-settings: Add missing packages.
* gnu/services/desktop.scm (plasma-polkit-settings): Add kdeplasma-addons,
kglobalaccel, kpmcore and kwalletmanager.

Change-Id: I4e5544a7211fdf898b02ea51750e6d66a3b79ca9
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-03-26 21:47:28 +01:00
Sughosha
f0f33b837a services: plasma-dbus-service: Add missing packages.
* gnu/services/desktop.scm (plasma-dbus-service): Add kdeplasma-addons,
kpmcore and kwalletmanager.

Change-Id: Icef5290368f681b95be3cf14d0238f1bbf47c0f6
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-03-26 21:47:28 +01:00
Ludovic Courtès
92205bab4d services: unattended-upgrade: Exit with non-zero upon failure.
Until now, the service would always exit with 0, which makes failures
harder to distinguish in the output of ‘herd status’, for instance.

* gnu/services/admin.scm (unattended-upgrade-shepherd-services)[code]:
Call ‘exit’ after ‘report-invoke-error’.

Change-Id: Idfc74a48a6a798e813db96d5770a897595b27240
2025-03-26 17:55:50 +01:00
Sughosha
cfe68843a8 services: readymedia: Change cache and log directory permissions to 755.
Create cache directory and log directory with 755 permission, which passes
run-readymedia-test.

* gnu/services/upnp.scm (readymedia-activation): Change directory permissions
of cache-directory and log-directory to 755.

Change-Id: Iff30040c3fd52564510f66d3568dab0ef89e0449
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-03-25 11:37:02 +01:00
Ludovic Courtès
a35fa2d2cb services: shepherd: Add ‘shepherd-timer’.
* gnu/services/shepherd.scm (shepherd-timer): New procedure.
* gnu/home/services/shepherd.scm: Re-export it.

Suggested-by: Luis Guilherme Coelho <lgcoelho@disroot.org>
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I5f702d4119eee47381a7a1ac650b8ad3fc5e6cdd
2025-03-23 19:30:57 +01:00
Ludovic Courtès
230f1a9c1c services: virtual-build-machine: Turn GC job into a Shepherd timer.
* gnu/services/virtualization.scm (gc-service-type): New variable.
(%virtual-build-machine-operating-system): Use instead of extending
‘mcron-service-type’.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I56d7f9293f582269e5a34d91bf4f3edddfa844e0
2025-03-23 19:30:52 +01:00
Ludovic Courtès
7cec434865 services: ganeti: Produce Shepherd timers instead of mcron jobs.
* gnu/services/ganeti.scm (<ganeti-watcher-configuration>)[schedule]:
Change default value to a cron string.
(ganeti-timer): New procedure.
(ganeti-watcher-jobs): Rename to…
(ganeti-watcher-service): … this.  Return Shepherd services.
(ganeti-watcher-service-type)[extensions]: Adjust accordingly.
(ganeti-cleaner-jobs): Rename to…
(ganeti-cleaner-service): … this.  Return Shepherd services.
(ganeti-cleaner-service-type)[extensions]: Adjust accordingly.
(ganeti-shepherd-services): Include the watcher and cleaner services.
(ganeti-mcron-jobs): Remove.
(ganeti-service-type)[extensions]: Adjust accordingly.
* doc/guix.texi (Virtualization Services): Update ‘schedule’
documentation.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: Id209a3c50271203dc7190c4c6d0c0ffdf6c10875
2025-03-23 19:30:44 +01:00
Ludovic Courtès
27806fde37 services: ganeti: Update to Shepherd 1.0 interface.
* gnu/services/ganeti.scm (shepherd-wconfd-force-start-action)[procedure]:
Use ‘enable-service’ and ‘perform-service-action’ instead of ‘action’,
which was deprecated in 0.10.x and replaced in 1.0.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I2ba7d973b95f17f6ce093185fec7b246cf427be9
2025-03-23 19:30:39 +01:00
Ludovic Courtès
59bd1337d0 services: wireguard: Turn monitoring into a Shepherd timer.
* gnu/services/vpn.scm (<wireguard-configuration>)[schedule]: Change
default value.
(wireguard-monitoring-program): New procedure, with code taken from…
(wireguard-monitoring-jobs): … here.  Remove.
(wireguard-shepherd-services): New procedure, with code taken from…
(wireguard-shepherd-service): … here.  Remove.
* doc/guix.texi (VPN Services): Update.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I6851ddf1eb9480bdc9e6c6c6b88958ab2e6225d7
2025-03-23 19:30:05 +01:00
Ludovic Courtès
8d77e252d2 services: certbot: Turn into a Shepherd timer.
* gnu/services/certbot.scm (certbot-renewal-jobs): Rename to…
(certbot-renewal-shepherd-services): … this.  Return a list of Shepherd
services, including ‘renew-certbot-certificates’, formally defined…
(certbot-renewal-one-shot): … here.  Remove.
(certbot-service-type): Adjust accordingly.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I25ad9fc1277f4f6f948ab5fce7c6626f22591d10
2025-03-23 19:29:57 +01:00
Ludovic Courtès
465ce8c6a6 services: fstrim: Turn into a Shepherd timer.
* gnu/services/linux.scm (mcron-time?): Remove.
(shepherd-calendar-event?): New procedure.
(fstrim-configuration)[schedule]: Change type to
‘shepherd-calendar-event’ and update docstring.
(fstrim-mcron-job): Rename to…
(fstrim-shepherd-services): … this.  Return a list of Shepherd services.
(fstrim-service-type): Adjust accordingly.
* doc/guix.texi (Linux Services): Update.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I9a7433cb15a1f4600470a915769d612e6e644dd8
2025-03-23 19:29:49 +01:00
Ludovic Courtès
71ae6f2a19 services: package-database: Turn into a Shepherd timer.
* gnu/services/admin.scm (package-database-mcron-jobs): Rename to…
(package-database-shepherd-services): … this.  Return a shepherd
service.
(package-database-service-type): Update accordingly.
* doc/guix.texi (File Search Services): Update documentation of the
‘schedule’ field.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: Id7b4c5cff95a7117dca7d95af37db7389bb5ca92
2025-03-23 19:29:41 +01:00
Ludovic Courtès
f4c832b277 services: file-database: Exclude /dev by default.
* gnu/services/admin.scm (%default-file-database-excluded-directories):
Add “/dev’.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I06af6621cd363e140a6fc49e1cee97d15b365b89
2025-03-23 19:29:33 +01:00
Ludovic Courtès
667248948a services: file-database: Turn into a Shepherd timer.
* gnu/services/admin.scm (file-database-mcron-jobs): Rename to…
(file-database-shepherd-services): … this.  Return a list of Shepherd
services.
(file-database-service-type): Adjust accordingly.
* doc/guix.texi (File Search Services): Update documentation of
‘schedule’.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I5734c629b113e54057694d2ec480abd26b7815db
2025-03-23 19:29:25 +01:00
Ludovic Courtès
aed019b646 services: shepherd: Factorize ‘trigger’ action.
* gnu/services/shepherd.scm (shepherd-trigger-action): New variable.
* gnu/services/admin.scm (log-cleanup-shepherd-services)
(unattended-upgrade-shepherd-services): Use it.
* gnu/services/backup.scm (restic-backup-job->shepherd-service): Use it.
* gnu/home/services/shepherd.scm: Re-export ‘shepherd-trigger-action’.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I834b5b9b61c78f012ee9306df6cf4fd8a93dd6d2
2025-03-23 19:29:14 +01:00
45mg
a1e87abaa3 services: network-manager: Handle existing configuration directory.
* gnu/services/networking.scm (network-manager-activation):
Handle the case where /etc/NetworkManager/conf.d already exists.

Change-Id: I7af4f4ad226eef28bd8667f0708525e77a6a50c8
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2025-03-23 10:28:33 -07:00
Ludovic Courtès
a9dcd548fb services: cuirass: Really allow ‘parameters’ to be a file-like object.
This is a followup to 7238114911.

* gnu/services/cuirass.scm (cuirass-shepherd-service): Turn
‘--parameters=’ bit into a gexp.

Change-Id: I5dd886b90ecea45157873e9c701e34988d6d31cc
2025-03-21 13:29:18 +01:00
Ludovic Courtès
7238114911 services: cuirass: Allow ‘parameters’ to be a file-like object.
* gnu/services/cuirass.scm (cuirass-shepherd-service): Turn
‘--parameters=’ bit into a gexp.

Change-Id: I3b533d97f59757cc8c18fdafe8d26b4f29f04202
2025-03-21 12:37:29 +01:00
Janneke Nieuwenhuizen
2f204a7303 services: Add snuik-service-type.
* gnu/services/messaging.scm (snuik-configuration): New type.
(snuik-services): New procedure.
(snuik-activation, %snuik-accounts, snuik-service-type): New variables.
* doc/guix.texi (Messaging Services): Document it.

Change-Id: I0c52b4804948876dc1b4d3b5ac660af848a13f25
2025-03-20 09:32:05 +01:00
Sergey Trofimov
81a911eab8 services: wireguard: Add the shepherd-requirement field.
* gnu/services/vpn.scm (<wireguard-configuration>): Add
shepherd-requirement.
(wireguard-shepherd-service): Pass shepherd-requirement. Add
user-processes to requirements.
* doc/guix.texi (VPN Services):[wireguard]: Document it.

Change-Id: Ia85add5067f6f9e023b8d65d6ce067b98eeb111e
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-03-19 11:26:08 +01:00
Maxim Cournoyer
fa39695bbc services/libvirt: Export libvirt-configuration field accessors.
* gnu/services/virtualization.scm: Export libvirt-configuration field
accessors.

Change-Id: I191235504ba0d2aaeffac9a10bd469ae0a561855
2025-03-18 23:35:24 +09:00
Ludovic Courtès
3f44387416 services: nginx: ‘stop’ method returns #f.
* gnu/services/web.scm (nginx-shepherd-service)[nginx-action]: Return #f
for ‘stop’.

Change-Id: I85290b5297f71a1dbfcd17b864d672d38c986d9b
2025-03-18 11:17:35 +01:00
Maxim Cournoyer
8b6e9acc26 services/configuration: Fix case where sub-documentation is nonexistent.
Commit 766ad072ad introduced a regression
where (configuration->documentation 'libvirt-configuration) would raise:

  (configuration->documentation 'libvirt-configuration)
  ice-9/boot-9.scm:1685:16: In procedure raise-exception:
  In procedure symbol->string: Wrong type argument in position 1 (expecting symbol): #f

* gnu/services/configuration.scm (generate-documentation): Re-introduce
previous handling of sub-documentation.

Change-Id: If2dbb59db5d22da221abfa2ffe7889854528a49c
2025-03-18 16:12:38 +09:00
Maxim Cournoyer
372802fe9a services: libvirt: Fixup setting LINUX_MODULE_DIRECTORY variable.
This is a follow-up to commit 614ba97d98 ("gnu: libvirt: Fix path to Linux
modules.gnu: libvirt: Fix path to Linux modules."), which I had inadvertently
broken with a small change before applying.  Apologies!

* gnu/services/virtualization.scm (libvirt-shepherd-service): Add missing
string append to form LINUX_MODULE_DIRECTORY variable definition.

Change-Id: I304bdf20584d475fb01e3da995f0eddf430fb73b
2025-03-18 09:57:14 +09:00
nathan
614ba97d98 gnu: libvirt: Fix path to Linux modules.
* gnu/packages/virtualization.scm (libvirt): Use LINUX_MODULE_DIRECTORY to
find modules.
[source]: Add libvirt-respect-modules-path.patch.
* gnu/packages/patches/libvirt-respect-modules-path.patch: New file.
* gnu/local.mk: Register new file.
* gnu/services/virtualization.scm (libvirt-shepherd-service)
<#:environment-variables>: Pass LINUX_MODULE_DIRECTORY.

Change-Id: Idde5b59df3c1641fcbab376e6c694730769294d3
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-03-17 20:55:38 +09:00
Arun Isaac
fd19785a9a gnu: mumi: Update to 0.11.0.
* gnu/packages/mail.scm (mumi): Update to 0.11.0.
* gnu/services/web.scm (<mumi-configuration>)[file-tags]: Remove field.
[packages]: New field.
(<mumi-package-configuration>): New record type.
(mumi-package-configuration->alist): New function.
* gnu/services/web.scm (mumi-config-file): Serialize packages configuration.
* doc/guix.texi (Web Services)[mumi]: Document packages configuration.
2025-03-17 03:02:31 +00:00
Zacchaeus
0e51c6547f services: syncthing: Improve Syncthing code standard compliance.
* gnu/services/syncthing.scm: (syncthing-config-file,
syncthing-folder, syncthing-device, syncthing-folder-device): Rename
fields to avoid abbreviation, boolean values switched to use #t or #f,
numbers no longer provided as strings, config directory moved to
~/.local/state/syncthing
* doc/guix.texi: (syncthing-service-type): Update documentation to
reflect these changes.

Change-Id: I01c059e13658a0d1ad38aaebca3dcb0a268bbdba
2025-03-14 16:01:34 -04:00
Arun Isaac
85b0321908 gnu: mumi: Update to 0.9.0.
* gnu/packages/mail.scm (mumi): Update to 0.9.0.
* gnu/services/web.scm (mumi-config-file): Write mailer-enabled? field.
(mumi-shepherd-services): Remove --disable-mailer argument.
2025-03-14 16:02:10 +00:00
Christopher Baines
6a499bbb8e services: guix-data-service: Use a script for database setup.
To avoid loading data service code in to the shepherd.

* gnu/services/guix.scm (guix-data-service-shepherd-services): Use a script
for database setup.

Change-Id: Ic67b33a98d63be69c8ee36d6e279d2c5690c179e
2025-03-12 09:27:47 +00:00
Tomas Volf
60e549975c Add missing license file headers.
* gnu/packages/power.scm: Add the license file header.
* gnu/services/power.scm: Same.

Change-Id: I64a8d74a569797739735b9f08ecffa845219822c
Signed-off-by: Vagrant Cascadian <vagrant@debian.org>
2025-03-11 14:50:47 -07:00
Ludovic Courtès
d0510dcd82 gnu: Adjust tests for ‘shepherd-system-log-service-type’.
This is a followup to 8492a3c896.

* gnu/services/virtualization.scm (%minimal-vm-syslog-config): Remove.
(%system-log-message-destination): New variable.
(%virtual-build-machine-operating-system): Use it, and modify
‘shepherd-system-log-service-type’ instead of ‘syslog-service-type’.
* gnu/tests/base.scm (%avahi-os): Likewise.
* gnu/tests/install.scm (%syslog-conf): Remove.
(operating-system-with-console-syslog): Modify
‘shepherd-system-log-service-type’ instead of ‘syslog-service-type’.
* gnu/tests/nfs.scm (%nfs-os, run-nfs-full-test): Likewise.
* gnu/tests/reconfigure.scm (run-kexec-test): Likewise.

Change-Id: I142d34ad27594a538f5b75daf087e48c690171b8
2025-03-10 00:38:05 +01:00
Maxim Cournoyer
43c4d16ad9 services: Integrate gnome-keyring service in gnome-desktop service.
Previous to this change, GNOME users would have to manually add the
gnome-keyring-service-type to their services to have a default login keyring
created and unlocked at login time.  Some applications depend on a default
keyring being available, prompt repeatedly for it, which is confusing and
doesn't match user expectations, given most distributions use the GNOME
keyring pam module to unlock the login keyring by default.

* doc/guix.texi (Desktop Services): Update doc.
* gnu/services/desktop.scm (<gnome-keyring-configuration>): Move above
gnome-desktop-service-type, and streamline description.
(pam-gnome-keyring): Return the empty list when CONFIG is #f.
(gnome-desktop-configuration) [keyring]: New field.

Change-Id: Ica26c1e1b85a038c1187edfb3ec3691fcd429641
Reviewed-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-03-09 15:30:33 +09:00
Arun Isaac
ded45b7b9f services: mumi: Add file-tags configuration.
* gnu/services/web.scm (<mumi-configuration>)[file-tags]: New field.
* gnu/services/web.scm (mumi-config-file): New function.
(mumi-shepherd-services): Pass --config argument.
* doc/guix.texi (Web Services)[mumi]: Document file-tags.
2025-03-08 22:57:36 +00:00
Sughosha
f7cf9fbec7 services: readymedia: Change directory permissions to 775.
Allow users in the ‘readymedia’ group to write in the directory created
by ‘readymedia-activation’.

* gnu/services/upnp.scm (readymedia-activation): Change directory permissions
to 775.

Change-Id: Ifda8e4fe8594fb5a1cdf6e329a8c83551eab9c06
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-03-08 18:11:14 +01:00
Sören Tempel
5ead9fa56c services: networking: Add dhcpcd service.
This is intended as an alternative to dhcp-client-service-type as
isc-dhcp has reached its end-of-life in 2022 (three years ago!),
see #68619 for more details.  Long-term, this services is therefore
intended to replace dhcp-client-service-type.

* gnu/services/networking.scm (dhcpcd-service-type): New service.
(dhcpcd-shepherd-service): New procedure.
(dhcpcd-account-service): New variable.
(dhcpcd-config-file): New procedure.
(dhcpcd-configuration): New record type.
(dhcpcd-serialize-list-of-strings, dhcpcd-serialize-boolean)
(dhcpcd-serialize-string): New procedures.
(serialize-field-name): New procedure.
* gnu/tests/networking.scm (run-dhcpcd-test): New procedure.
(%dhcpcd-os, %test-dhcpcd): New variables.
* doc/guix.texi (Networking Services): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-03-08 16:09:41 +01:00
Maxim Cournoyer
97be0a837e Revert "services/udev: Allow configuring udev to run in debug mode."
This reverts commit dd64f441d3.  Enabling debug
output for udevd apparently hangs the boot.
2025-03-05 14:25:05 +09:00
Ludovic Courtès
8492a3c896 services: Switch to ‘shepherd-system-log-service-type’ in ‘%base-services’.
This reinstates c83bfc0415, which had been
reverted in 8c483c12e9 in response to
<https://issues.guix.gnu.org/76315>.

* gnu/services/base.scm (%base-services): Replace ‘syslog-service-type’
by ‘shepherd-system-log-service-type’.
* doc/guix.texi (Base Services): Update ‘syslog-service-type’
documentation.
(Shepherd Services): Mention that ‘system-log-service-type’ is in
‘%base-services’.  Add anchor.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Change-Id: I21082300f6a052865a6ab1bdff27fbe71f73d492
2025-03-05 00:28:49 +01:00
Ludovic Courtès
749eb1a2dd services: ‘shepherd-service-upgrade’ handles canonical name changes.
Partly fixes <https://issues.guix.gnu.org/76315>.

Fixes a bug whereby a service whose canonical name has changed would not
be restarted—e.g., if '(syslogd) has a replacement providing
'(system-log syslogd).

* gnu/services/shepherd.scm (shepherd-service-upgrade)[running?]:
Remove.
[to-restart]: Change to a subset of LIVE.  Look up all the names of each
element of TARGET.
* guix/scripts/system/reconfigure.scm (upgrade-shepherd-services):
TO-RESTART is now a list of <live-service>; adjust accordingly.
* tests/services.scm ("shepherd-service-upgrade: one unchanged, one upgraded, one new"):
("shepherd-service-upgrade: service depended on is not unloaded"):
("shepherd-service-upgrade: obsolete services that depend on each other"):
("shepherd-service-upgrade: transient service"): Adjust accordingly.
("shepherd-service-upgrade: service has new canonical name"): New test.

Reported-by: Tomas Volf <~@wolfsden.cz>
Change-Id: I7cec495b4e824da5fad5518f039607cf92f935d9
2025-03-05 00:28:49 +01:00
Ryan Barber
b8645fc0bf services: tlp: Add config for CPU energy performance policy.
* gnu/services/pm.scm (tlp-configuration): Add cpu-energy-perf-policy-on-ac
and cpu-energy-perf-policy-on-bat.
* doc/guix.texi (Power Management Services): Document
cpu-energy-perf-policy-on-bat and cpu-energy-perf-policy-on-ac.

Change-Id: Ieddf949a325c317abffce00a4f1d047175342d78
Signed-off-by: Nicolas Goaziou <mail@nicolasgoaziou.fr>
2025-03-04 08:32:49 +01:00
宋文武
ad5140e5c2 services: gdm: Set GUIX_GDK_PIXBUF_MODULE_FILES.
* gnu/packages/patches/gdm-pass-gdk-pixbuf-loader-env.patch: Replace
GDK_PIXBUF_MODULE_FILE with GUIX_GDK_PIXBUF_MODULE_FILES.
* gnu/services/xorg.scm (gdm-shepherd-service): Replace GDK_PIXBUF_MODULE_FILE
with GUIX_GDK_PIXBUF_MODULE_FILES.

Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2025-03-02 20:31:48 +01:00
Maxim Cournoyer
dd64f441d3 services/udev: Allow configuring udev to run in debug mode.
* gnu/services/base.scm (<udev-configuration>): <debug?>: New field.
* gnu/services/base.scm (udev-shepherd-service): Use it to add '--debug' to
the command line, if applicable.
* doc/guix.texi (Base Services): Document it.

Change-Id: I88243fb4f321ff0876dd227e3c2b22082d37cfcf
2025-03-03 00:31:46 +09:00
Tomas Volf
d0e46a0003 services: Add apcupsd-service-type.
* gnu/services/power.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (Power Management Services): Document service and data types.

Change-Id: If205d19bea1d20a99309626e28521a2d6fe6702f
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Reviewed-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-03-03 00:31:45 +09:00
Carlo Zancanaro
4319fb1aa9 services: wireguard: Add the auto-start? field.
* gnu/services/vpn.scm (<wireguard-configuration>): Add auto-start?.
(wireguard-shepherd-service): Pass auto-start? to Shepherd service.
* doc/guix.texi (VPN Services)[wireguard]: Document it.

Change-Id: I7880a8c8e9860250f875e845e94eb118a4b852fa
Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2025-03-03 00:31:45 +09:00
Leo Famulari
8bc831325a services: syncthing: Fix typo in file name.
This is a followup to commit 651f8765b6

* gnu/services/syncthing.scm (syncthing-files-service): Fix typo.

Change-Id: I55d1d480d356f41e65b85f8503ceb38c5c1a021b
2025-02-25 13:10:25 -05:00
Alexey Abramov via Guix-patches via
f83b91a4ee services: dovecot: Provide plugins through a /gnu/store directory.
* gnu/services/mail.scm (package-list?, serialize-package-list): New
procedures.
* gnu/services/mail.scm (dovecot-configuration)[extensions]: New field. The
field lets you provide a list of dovecot plugins that need to be available
during the runtime. A union of the set of modules will be created on the
activation time.
* gnu/services/mail.scm (opaque-dovecot-configuration)[extensions]: Likewise.
* gnu/services/mail.scm (make-dovecot-moduledir): New function.
* gnu/services/mail.scm (%dovecot-activation): Add step to compute a set of
modules, and provide them over the shared link at /usr/lib/dovecot.
* doc/guix.texi (Mail Services)[extension]: Add documentation. Clarify the
purpose and usage of the extensions parameter. Add an example showing how to
enable Sieve filtering using dovecot-pigeonhole. Better explain the module
directory structure and requirements.

Change-Id: I3c3955bb04b09d245242112f6810ecc0558109a1
Signed-off-by: Christopher Baines <mail@cbaines.net>
2025-02-25 10:57:51 +00:00
Ludovic Courtès
61a9aa7fbe services: cuirass: Respawn ‘cuirass-web’ more slowly.
* gnu/services/cuirass.scm (cuirass-shepherd-service): Add
‘respawn-delay’ and ‘respawn-limit’ fields for ‘cuirass-web’.

Change-Id: I38c65d3a13fb3abc7c8f14784de3c93f5d7603f7
2025-02-24 23:33:51 +01:00