Commit graph

2350 commits

Author SHA1 Message Date
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
Ian Eure
96c30d2bf6
gnu: Remove Tailon services and documentation.
The tailon package was removed in 63023deaf9,
but the associated service and documentation weren’t, leading to `guix pull`
breaking.

Fixes guix/guix#2689.

* doc/guix.texi: Remove Tailon documentation.
* gnu/services/web.scm (tailon-service-type): Delete variable.
(tailon-configuration-file): Delete variable.
(tailon-configuration-file?): Delete variable.
(tailon-configuration-file-files): Delete variable.
(tailon-configuration-file-bind): Delete variable.
(tailon-configuration-file-relative-root): Delete variable.
(tailon-configuration-file-allow-transfers?): Delete variable.
(tailon-configuration-file-follow-names?): Delete variable.
(tailon-configuration-file-tail-lines): Delete variable.
(tailon-configuration-file-allowed-commands): Delete variable.
(tailon-configuration-file-debug?): Delete variable.
(tailon-configuration-file-http-auth): Delete variable.
(tailon-configuration-file-users): Delete variable
(tailon-configuration): Delete variable.
(tailon-configuration?): Delete variable.
(tailon-configuration-config-file): Delete variable.
(tailon-configuration-package): Delete variable.
* gnu/tests/web.scm (%test-tailon): Delete variable.

Change-Id: I3b507df8233b0440baa6a2bce4604b5813cb3bb0
2025-09-14 11:13:17 -07:00
Rutherther
7562b50c02
services: greetd: Accept gexps in initial-session.
Recently initial-session-user and initial-session-command has been
added, but they accept only strings, not gexps.

* gnu/services/base.scm (make-greetd-terminal-configuration-file):
Ungexp initial-session-user and initial-session-command.

Change-Id: I2b247464528b6147eab8acea08c6942ac7bfd0ab
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-09-14 18:13:08 +02:00
Daniel Lakeland
b05fc57386
services: keepalived: Add ‘shepherd-requirement’ field.
* gnu/services/networking.scm (<keepalived-configuration>)[shepherd-requirement]:
New field.
(keepalived-shepherd-service): Honor it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-09-14 18:13:07 +02:00
Grigory Shepelev
82e0ba892b
services: network-manager: Create /etc/ipsec.secrets directory in activation.
* gnu/services/networking.scm (network-manager-activation): Create the
/etc/ipsec.secrets directory.

Change-Id: Ib347cc00e7cbd314b2a465b5ee681285ba0d3115
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-09-06 18:04:04 +09:00
Ludovic Courtès
d72eef9c91
services: cuirass: Add more configuration fields.
* gnu/services/cuirass.scm (<cuirass-configuration>)[parallel-evaluations]
[evaluation-ttl, web-threads]: New fields.
(cuirass-shepherd-service): Honor them.
* doc/guix.texi (Continuous Integration): Document them.

Change-Id: I33485b978d2a37ee93230b1d425731e6cb3b80e4
2025-09-05 17:25:39 +02:00
Ludovic Courtès
577f8fe184
services: cuirass: Socket activation for ‘cuirass register’.
Fixes guix/cuirass#16.

* gnu/services/cuirass.scm (cuirass-shepherd-service)[endpoint]: New
procedure.
Use ‘make-systemd-constructor’ for ‘cuirass register’.  Set the ‘COLUMNS’
environment variable.

Change-Id: If58e4e8a889ab11e4b5b89a7abaf0af24600751b
2025-09-05 17:25:22 +02:00
Ludovic Courtès
b377ec079d
services: nginx: Ensure ‘stop’ is synchronous.
Fixes guix/maintenance#17.

Fixes a bug whereby ‘nginx -s stop’ might return before the main nginx process
has actually stopped, which in turn would lead ‘herd restart nginx’ to hang.

* gnu/services/web.scm (nginx-shepherd-service): Change ‘stop’ to use
‘make-kill-destructor’.

Reported-by: Maxim Cournoyer <maxim@guixotic.coop>
Change-Id: I69e8626aab07f806ddc8b1d09d9f0e052a85cf47
2025-09-03 12:34:13 +02:00
Yelninei
fecaf550cf
services: hurd-vm: Support different hurd types.
* gnu/services/virtualization.scm (sanitize-hurd-vm-configuration-type): New procedure.
(hurd-vm-confiuration): Add type field.
(hurd-vm-disk-image): Use it.
* doc/guix.texi (hurd-vm-configuration): Document it.

* gnu/tests/virtualization.scm (%childhurd64-os): New variable.
(run-childhurd-test): Add the os a parameter.
(%test-childhurd): Adjust accordingly.
(%test-childhurd64): New system test.

Change-Id: Ie1c55a9414657ced4bf8b4324527037f1a1f78f4
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-08-30 23:52:09 +02:00
Ludovic Courtès
b12844f5e0
services: cuirass: Increase default polling interval to 5mn.
* gnu/services/cuirass.scm (<cuirass-configuration>)[interval]: Change to 300.
* doc/guix.texi (Continuous Integration): Update accordingly and explain where
it is used.

Change-Id: I30e38ffe0d75cd1f5857b422b4fa5d05dd47a7e5
2025-08-29 17:43:35 +02:00
Ludovic Courtès
23b22f75e9
services: dicod: Remove reference to (gnu packages dico).
This is a followup to 4c130c980f.

* gnu/services/dict.scm (gnu): Remove reference to (gnu packages dico).

Change-Id: Idf0d2c43d63d5ad040ecbc13629ffed5c603ddf3
2025-08-25 13:54:26 +02:00
Giacomo Leidi
60f4d72590
services: Add oci-service-type.
This patch implements a generalization of the
oci-container-service-type, which consequently is made deprecated.  The
oci-service-type, in addition to all the features from the
oci-container-service-type, can now provision OCI networks and volumes.
It only handles OCI objects creation, the user is supposed to handle
state once the objects are provsioned.

It currently supports two different OCI runtimes: Docker and rootless
Podman.  Both runtimes are tested to make sure provisioned containers
can connect to each other through provisioned networks and can
read/write data with provisioned volumes.

At last the Scheme API is thought to facilitate the implementation of a
Guix Home service in the future.

* gnu/build/oci-containers.scm: New file containg OCI runtime business
logic used in OCI backed Shepherd services.
oci-read-lines
(oci-system*,oci-object-exists?,oci-object-service-available?
oci-image-load,oci-log-verbose,oci-container-execlp,oci-object-create):
New procedures.
* gnu/local.mk: Add it.
* gnu/services/containers.scm (list-of-oci-containers?,
list-of-oci-networks?,list-of-oci-volumes?,%oci-supported-runtimes,
oci-runtime?,oci-runtime-system-environment,oci-runtime-system-extra-arguments,
oci-runtime-system-requirement,oci-runtime-cli,oci-runtime-system-cli,
oci-runtime-home-cli,oci-runtime-name,oci-runtime-group,
oci-container-shepherd-name,oci-networks-shepherd-name,
oci-networks-home-shepherd-name,oci-volumes-shepherd-name,
oci-volumes-home-shepherd-name,oci-container-configuration->options,
oci-network-configuration->options,oci-volume-configuration->options,
oci-container-shepherd-service,oci-objects-merge-lst,oci-extension-merge,
oci-service-accounts,oci-service-profile,oci-service-subids,
oci-configuration->shepherd-services,oci-configuration-extend): New
procedures.
(image-reference): Implement unambiguous naming convention, that paired
with the new implementation for listing caches images with docker ls or
podman ls, allows for more efficient image caching.
(oci-container-configuration)[user,group]: Change default-type to
maybe-string, since by default containers will run under the user and
group declared in oci-configuration records. When unset the
oci-service-type will derive their value from the OCI runtime state.
[runtime,host-environment,environment,shepherd-actions,ports,extra-arguments]:
define a predicate and use it as a type in the configuration.  This
way errors are reported with source location information.
(lower-manifest): Defer to caller the logic of setting up an image tag.
(lower-oci-image): Rename to load-oci-image-state.
(oci-runtime-state): Intermediate representation of the OCI runtime
details. It is supposed to be an internal API.
(oci-state): Intermediate representation of the OCI provisioning state,
such as containers and networks. It is supposed to be an internal API.
(oci-container-invocation): Intermediate representation of the OCI
runtime run command to start a container. It is supposed to be an
internal API.
(%oci-image-loader): Rename to oci-image-loader and use
oci-runtime-state and (gnu build oci-containers).
(oci-container-shepherd-service): Use oci-state and oci-runtime-state,
add command-line action.
(oci-network-configuration,oci-volume-configuration,oci-configuration,
oci-extension): New record types.
(oci-service-type): New service-type.
* doc/guix.texi: Document it.
* gnu/tests/containers.scm: Test it.
* gnu/services/docker.scm: Deprecate the oci-container-service-type.

Change-Id: I656b3db85832e42d53072fcbfb91d1226f39ef38
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-08-25 13:04:36 +09:00
Arun Isaac
825d3baa87
services: nginx: Rotate log files.
* gnu/services/web.scm (nginx-access-log-file, nginx-error-log-file,
nginx-log-files): New functions.
(nginx-service-type): Extend log-rotation-service-type.
2025-08-24 09:30:02 +01:00
Ludovic Courtès
c1e3c49135
services: system-log: Allow ‘max-silent-time’ to be #f.
* gnu/services/shepherd.scm (gexp-or-integer-or-false?): New procedure.
(system-log-configuration)[max-silent-time]: Change to
‘gexp-or-integer-or-false’.
* doc/guix.texi (Shepherd Services): Regenerate documentation with
‘configuration->documentation’.

Change-Id: I75228cd19ca892c26347a64cbb952668fc893669
2025-08-23 16:57:48 +02:00
Maxim Cournoyer
af9e540b71
gnu: nss-certs: Relocate to (gnu packages nss).
This is made so that the source can be shared without introducing module
circular dependencies.

* gnu/packages/certs.scm (nss-certs)
(nss-certs-for-test): Move to...
* gnu/packages/nss.scm: ... here.

Adjust the module imports via:

  git grep -l '(gnu packages certs)' |
  xargs sed 's/(gnu packages certs)/(gnu packages nss)/' -i

Change-Id: I56d7bc52ddcdffbced8a162e8db8ea5071b0cb0f
2025-08-17 22:34:42 +02:00
Maxim Cournoyer
7a48af07fd
services: vfs-mapping-shepherd-services: Add missing (ice-9 match) module.
* gnu/services/linux.scm (vfs-mapping-shepherd-services)
[modules]: New field.

Fixes: #1747
Change-Id: Ia462a2894d644343164ff9b8f84172a6aa286bad
2025-08-05 21:11:47 +09:00
Maxim Cournoyer
a4f3216ce8
gnu: tigervnc-client/server: Relocate to (gnu packages xorg).
This is made to avoid cyclic module dependencies, which is due to the use of
inheritance between tigervnc-server and xorg-server, which is not a delayed
field (info "(guix) Cyclic Module Dependencies").

* gnu/packages/vnc.scm (tigervnc-client, %tigervnc-client-source)
(tigervnc-server): Move to...
* gnu/packages/xorg.scm: ... here.

Change-Id: I4c13659874f74bccde897d9a6fc8152f60932b4a
2025-08-05 21:11:47 +09:00
Zacchaeus
c40c69766d
doc: Correct tor-onion-service-configuration mapping documentation.
* doc/guix.texi (Networking Services): Fix tor-onion-service-configuration
description which was broken in commit 9be1ee6a49 when documentation was
changed to indicated that port-location mappings should be provided as cons
cells when the code always expected lists

Change-Id: Ib12d273cbd37976f9507a60a6d088078f71d4e7a
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2025-08-03 11:07:45 +02:00
Sughosha
315f0218bf
services: plasma-desktop: Remove "bluedevil" from plasma-dbus-service.
The package bluedevil no more provides a dbus service.

* gnu/packages/desktop.scm (plasma-dbus-service): Remove "bluedevil".

Change-Id: I8d6160a83fe5339ffa3ba12a24b0b4c4f06b6b67
2025-07-28 12:17:59 +08:00
Zacchaeus
16dbd20852
services: tor: add auto-start?
* gnu/services/networking.scm (tor-configuration): Add `auto-start?' field.
Fix indent.
* doc/guix.texi (tor-configuration): Document this.

Change-Id: I9339291e3329d615550f97e9cc0f0d773f0d1c51
Reviewed-by: André Batista <nandre@riseup.net>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-07-27 09:28:31 +01:00
Edouard Klein
b740fe801e
services: Add shared-cache-service-type.
* gnu/services/guix.scm (shared-cache-service-type)
(shared-cache-configuration, user-cache): New variables.
* doc/guix.texi (Shared Cache Service): New subsubsection under
"Guix Services".

Change-Id: I73a8db228d9a892c8bb93c6cdfef12d0d06e25a6
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-07-25 23:36:10 +09:00
Edouard Klein
f05f8fb6b4
services: Add vfs-mapping-service-type.
* gnu/services/linux.scm (vfs-mapping-service-type, vfs-mapping-configuration,
vfs-mapping-binding): New variables.
* doc/guix.texi: (Vfs Mapping Service): New subsubsection under "Linux Services".

Change-Id: I7ebd48afb809ded9fa6fe9eb80c618accb856716
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-07-25 23:36:10 +09:00
wrobell
c65da197cf
services: Add rabbitmq service.
* gnu/services/high-availability.scm (<rabbitmq-configuration>): New record.
  (rabbitmq-shepherd-service): New procedure.
  (rabbitmq-service-type): New variable.
* gnu/tests/high-availability.scm (run-rabbitmq-test): New procedure.
  (%rabbitmq-os, %tests-rabbitmq): New variables.
* doc/gnu.texi (High Availability Services): Document it.

Change-Id: I53e9f2881b6340e1ed314785e4c5529b81381a3b
Co-authored-by: Christopher Baines <mail@cbaines.net>
Reviewed-by: Ludovic Courtès <ludo@gnu.org>
Signed-off-by: Sharlatan Hellseher <sharlatanus@gmail.com>
2025-07-19 01:47:50 +01:00
Danny Milosavljevic
72996cd573
services: greetd: Support initial-session.
* gnu/services/base.scm (<greetd-terminal-configuration>): Add
initial-session-user, initial-session-command.
* doc/guix.texi (Base Services): Document them.

Change-Id: Iaf7a8203f34794bc36b031166e1ff7005d7a7104
2025-07-12 02:39:54 +02:00
Pierre Langlois
57fc58ba48
services: certbot: Add dry-run? certificate option.
* gnu/services/certbot.scm (certificate-configuration): Add dry-run? field.
(certbot-command): Use it to pass --dry-run to certbot.
* doc/guix.texi (Certificate Services): Document dry-run? option.

Change-Id: I26b0dc06e2b7e5fb34305deee09e311d085f8a4b
Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
Modified-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-07-08 16:54:06 +09:00
Pierre Langlois
76d816d559
services: certbot: Remove deprecated --manual-public-ip-logging-ok.
The --manual-public-ip-logging-ok flag is now a no-op and was deprecated
https://github.com/certbot/certbot/pull/8381

* gnu/sevices/certbot.scm (certbot-command): Remove
--manual-public-ip-logging-ok when doing a manual challenge.

Signed-off-by: Maxim Cournoyer <maxim@guixotic.coop>
2025-07-08 16:54:06 +09:00
Ludovic Courtès
6b42df3ad6
services: ci: Add Forgejo Runner service.
* gnu/services/ci.scm (<forgejo-runner-configuration>): New record type.
(create-forgejo-runner-account, forgejo-runner-activation)
(write-yaml, yaml-file, forgejo-runner-shepherd-service): New procedures.
(forgejo-runner-service-type): New variable.
* doc/guix.texi (Continuous Integration): Add “Forgejo Runner” heading.

Co-authored-by: David Thompson <davet@gnu.org>
Change-Id: Iba42d84da35812afa60e94773fbbadd68eca9813
2025-07-04 18:41:43 +02:00
Ludovic Courtès
c33bc80080
services: guix: ‘guix-ownership’ changes store ownership last.
Fixes <https://issues.guix.gnu.org/78355>.

* gnu/services/base.scm (guix-ownership-change-program)[claim-data-ownership]:
Replace hard-coded “/gnu/store” with #$(store-prefix).  Change store
ownership last.

Reported-by: Rutherther <rutherther@ditigal.xyz>
Change-Id: I55189f8bb82bf0c9e030aa042aa928f6f552569e
2025-07-01 23:40:09 +02:00
vicvbcun
6fd46129fe
services: knot: Depend on `user-processes'.
* gnu/services/dns.scm (knot-shepherd-service): Add `user-processes' to the
`requirement' field.

Change-Id: I59f95aeb25c02944418eb3ea20a42d344703a011
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-06-20 17:59:02 +02:00
Quentin Vincent
e417692c4b
gnu: services: base: Set a home directory for the "greeter" user.
Fix a problem that caused an "unable to set working directory: no such file
or directory (os error 2)" error before every login prompt.
The reason for this is that greetd starts agreety as the "greeter" user.
The working directory for the newly created process is, by default,
"/home/greeter", which does not exist (per our instructions).

* gnu/services/base.scm (greetd-accounts)[home-directory]: Set to /var/empty
[shell]: Set to /sbin/nologin.

Change-Id: I6d971968e8b6a7825c261d4695caf0dd70127e5d
Signed-off-by: Danny Milosavljevic <dannym@friendly-machines.com>
2025-06-15 23:29:26 +02:00
Hilton Chain
a2b36ad311
services: directory-server: Fix backend-userroot-configuration export.
* gnu/services/ldap.scm (backend-userroot-configuration): Fix export.

Change-Id: I06b9c87016ad117ba56a675f45d9c950040e0b0a
2025-06-15 23:53:21 +08:00
Ian Eure
f662e50745
gnu: %standard-geoclue-applications: Add more programs.
If Firefox merits a spot on this list, LibreWolf and IceCat certainly do.

Redshift also requires geoclue to work, add it.

* gnu/services/desktop.scm (%standard-geoclue-applications): Add LibreWolf and
Redshift.

Change-Id: Ide54f6bfe8ad8d9282da6105eca07bbd4bd27c14
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-06-09 22:05:14 +02:00
Sören Tempel
a9f0a0635d
services: Deprecate dhcp-client-service-type.
ISC's dhcclient has reached its end-of-life in 2022 and is since
unsupported [1]. I have added a service for dhcpcd as an alternative a
few months ago [2]. Presently, I am not aware of any issues with it;
hence, I believe it is now time to deprecate dhcp-client-service-type in
favor of dhcpcd-service-type.

See also: https://issues.guix.gnu.org/68619

* gnu/services/networking.scm (dhcp-client-service-type): Deprecate.

[1]: https://www.isc.org/blogs/isc-dhcp-eol/
[2]: https://issues.guix.gnu.org/75934

Change-Id: I282c6a68570ccc5dfbb21176758c71cf03864ddd
Signed-off-by: Hilton Chain <hako@ultrarare.space>
2025-06-08 22:56:48 +08:00
Ludovic Courtès
5a0271c43f
services: iwd: Use the official name.
* gnu/services/networking.scm (iwd-shepherd-service): Fix name and
mention “iwd” in ‘description’.
* doc/guix.texi (Networking Setup): Correct iwd’s name and add link.

Change-Id: I7605488f2018b8ac60664c6617a82f05ddadf6ec
2025-06-06 18:30:27 +02:00
Ludovic Courtès
33ec2f58ff
services: iwd: Provide default value in <iwd-settings>.
Fixes a failure of ‘tests/guix-system.sh’, when running ‘guix system
search .’:

    2296:10  3 (iwd-environment _)
     2165:0  2 (%iwd-network-settings-name-resolving-service-procedure #)
  In ice-9/boot-9.scm:
    1685:16  1 (raise-exception _ #:continuable? _)
    1685:16  0 (raise-exception _ #:continuable? _)

  ice-9/boot-9.scm:1685:16: In procedure raise-exception:
  In procedure struct-vtable: Wrong type argument in position 1 (expecting struct): %unset-marker%

* gnu/services/networking.scm (iwd-settings)[network]: Provide default
value.

Change-Id: I2ea28853f698583ceeaa0b56cde8447fe3546dc3
2025-06-06 18:22:51 +02:00
Ludovic Courtès
5f3a33f659
services: rsync: Remove Shepherd 0.9.0 compatibility shim.
* gnu/services/rsync.scm (rsync-shepherd-service): Remove
‘inetd-style?’.

Change-Id: Iab4a72ade621add1cf6e186c6c6a8be415829d11
2025-06-06 18:16:30 +02:00
Ashish SHUKLA
d2d961b76a
services: iwd: Fix expression.
This is a follow-up to c4e1081f82.  The return
value of ‘iwd-environment’ wasn't quoted.

* gnu/services/networking.scm (iwd-environment): Return list in a
G-expression.

Change-Id: I5c2fb9ecd5d5c1aa61bd7758b66c7284f6e568b3
Signed-off-by: Hilton Chain <hako@ultrarare.space>
Fixes: https://codeberg.org/guix/guix/issues/450
2025-06-06 21:18:15 +08:00
Sergey Trofimov
c4e1081f82
services: networking: Add iwd-service-type.
* gnu/services/networking.scm (iwd-service-type): New service type.
(iwd-configuration), (iwd-settings), (iwd-scan-settings),
(iwd-general-settings), (iwd-network-settings): New configuration types.
* doc/guix.texi (Networking setup): Document it.

Change-Id: I852115b9c6768b3ec4eedb34a7f9e66438bd1429
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-06-05 22:43:36 +02:00
Sergey Trofimov
e4995c9978
services: network-manager: Require wireless-daemon.
* gnu/services/networking.scm
(<network-manager-configuration>)[shepherd-requirement]:
Replace wpa-supplicant with wireless-daemon.
* doc/guix.texi (Networking Setup): Adjust.

Change-Id: Id1a51429ccb6ea24839fc2aacd051a3ffe91c33c
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-06-05 22:42:14 +02:00
Sergey Trofimov
faa8cdfc09
services: wpa-supplicant: Add 'wireless-daemon' provision.
* gnu/services/networking.scm (wpa-supplicant-configuration):
[requirement]: Deprecate, [shepherd-requirement]: New field,
[shepherd-provision]: Extract to a field. Add 'wireless-daemon to it.
* doc/guix.texi (Networking Setup): Document it.

Change-Id: Icc6fdd695e6e96ef168a085524989da639f77cd3
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-06-05 22:42:14 +02:00
Sergey Trofimov
2ec1469104
services: networking: Add shepherd-requirement for dhcpcd.
* gnu/services/networking.scm (dhcpcd-configuration): Add
shepherd-requirement field.
(dhcpcd-shepherd-service): Use it.
* doc/guix.texi (Networking Setup): Regenerate dhcpcd-configuration
documentation.
(File Systems): Fix typo.

Change-Id: Id347e2bed2569237685a47be82dbf686640db25b
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-06-05 22:42:13 +02:00
Sergey Trofimov
38756ac03d
services: configuration: Add define-enumerated-field-type helper.
* gnu/services/cups.scm (define-enumerated-field-type): Move...
* gnu/services/configuration.scm (define-enumerated-field-type): ...here.
* gnu/services/vpn.scm (define-enumerated-field-type): Remove.
* gnu/services/power.scm
(define-enum): Replace with define-enumerated-field-type.

Change-Id: I89ec40f479e3f800268e714f1f88d638be017c7e
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2025-06-05 22:42:13 +02:00
Ludovic Courtès
1cd221c9e9
services: static-networking: Remove use of unbound variable.
Use of ‘G_’ was added in 670d985cab but
it’s actually unbound.

* gnu/services/base.scm (network-set-up/linux): Remove uses of ‘G_’,
which is unbound.

Change-Id: I6e879688ceee2fcb738e5e213cd3d539c9d89e20
2025-06-04 16:45:08 +02:00