summary refs log tree commit diff
path: root/gnu/services
AgeCommit message (Collapse)Author
2023-01-22services: hpcguix-web: Provide default values.Ludovic Courtès
* gnu/services/web.scm (<hpcguix-web-configuration>)[specs]: Default to #f. (hpcguix-web-shepherd-service): Do not pass '--config' when SPECS is #f. (hpcguix-web-service-type)[default-value]: New field. * doc/guix.texi (Web Services): Adjust accordingly.
2023-01-16services: connman: Add iwd backend support.Declan Tsien
* gnu/services/networking.scm (connman-configuration)[iwd?]: New field. (connman-shepherd-service): Add iwd? logic, remove wpa-supplicant requirement. * doc/guix.texi: Add information about connman-configuration iwd? option. Co-authored-by: Andrew Tropin <andrew@trop.in> Signed-off-by: Andrew Tropin <andrew@trop.in>
2023-01-16gnu: services: Export polkit-configuration.Zhu Zihao
Export for user customization. * gnu/services/dbus.scm (polkit-configuration): Export. (polkit-configuration?): Export. Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2023-01-15services: greetd: Add 'source-profile?' configuration field.Jelle Licht
* gnu/services/base.scm (<greetd-terminal-configuration>)[source-profile?]: New field. (make-greetd-terminal-configuration-file): Serialize new field to configuration file. * doc/guix.texi (Base Services): Document it.
2023-01-14gnu: services: Add joycond-service.David Thompson
* gnu/services/games.scm (joycond-configuration): New configuration type. (joycond-shepherd-service): New procedure. (joycond-service-type): New variable. * doc/guix.texi (Game Services): Document it.
2023-01-10gnu: services: Fix fail2ban configuration serialization.muradm
This fixes a regression from 543d971ed2a1d9eb934af1f51930741d7cc4e7ef whereby match-lambda due to configuration field reordering. * gnu/services/security.scm: [serialize-fail2ban-ignore-cache-configuration]: Switch to match-record. [serialize-fail2ban-jail-filter-configuration]: Switch to match-record. [serialize-fail2ban-jail-action-configuration]: Switch to match-record. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2023-01-10services: unattended-upgrade: Add 'operating-system-expression' field.Giacomo Leidi
* gnu/services/admin.scm (<unattended-upgrade-configuration>) [operating-system-expression]: New field. (unattended-upgrade-mcron-jobs): Honor it. * doc/guix.texi (Unattended Upgrades): Document it. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2023-01-10services: git-daemon: Deprecate 'git-daemon-service' procedure.Bruno Victal
* gnu/services/version-control.scm (git-daemon-service): Define with 'define-deprecated' * doc/guix.texi (Version Control Services): Replace with 'git-daemon-service-type' Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2023-01-09services: base: Add environment support to guix-configuration.Mathieu Othacehe
* gnu/services/base.scm (<guix-configuration>)[extra-env]: New field. (guix-shepherd-service): Honor it. * doc/guix.texi (Base Services): Document it.
2023-01-07Revert "services: base: Add extra-env support to guix-configuration."Mathieu Othacehe
This reverts commit 78a9b4f996ba18b4460ba380b87e9538007c27e0. It was pushed by error, while not reviewed yet.
2023-01-07services: base: Add extra-env support to guix-configuration.Mathieu Othacehe
* gnu/services/base.scm (<guix-configuration>)[extra-env]: New field. (guix-shepherd-service): Honor it. * doc/guix.texi (Base Services): Document it.
2023-01-03services: certbot: Fix broken link.jgart
* gnu/services/certbot.scm (certbot-renewal-jobs): Fix broken link. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
2022-12-30services: enlightenment: Load ddcutil udev rules.Efraim Flashner
* gnu/services/desktop.scm (enlightenment-desktop-service-type): Extend the enlightenment-desktop-service-type with the udev rules from the ddcutil input in the udev-service-type.
2022-12-28services: pulseaudio: Fix /etc/pulse/default.pa not being used.Maxim Cournoyer
Fixes <https://issues.guix.gnu.org/60383>. * gnu/services/sound.scm (pulseaudio-etc): Produce daemon.conf unconditionally, with the correct default-script-file location. Produce client.conf unconditionally. Reported-by: Bruno Victal <mirai@makinata.eu>
2022-12-26gnu: services: Fix bluetooth-service docstring.Ivan Vilata i Balaguer
* gnu/services/desktop.scm (bluetooth-service): Sync docstring with info, remove mention to group not really needed to access D-Bus service. * doc/guix.texi (Desktop Services): Also remove mention to group here. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-12-25services: wireguard: Allow specifying pre-shared keys.Timo Wilken
* gnu/services/vpn.scm (<wireguard-peer>)[preshared-key]: New field. * doc/guix.texi (VPN Services): Document it. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
2022-12-25services: ganeti: Label mcron jobs.Marius Bakke
* gnu/services/ganeti.scm (ganeti-watcher-jobs): Label job as "ganeti-watcher". (ganeti-cleaner-jobs): Labels jobs as "ganeti master cleaner" and "ganeti node cleaner".
2022-12-20services: opensmtpd: Add 'shepherd-requirement' field.Bruno Victal
* gnu/services/mail.scm (<opensmtpd-configuration>)[shepherd-requirement]: New field. (opensmtpd-shepherd-service): Honor it. * doc/guix.texi (Mail Services): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-12-20services: opensmtpd: Use 'match-record' instead of 'match'.Bruno Victal
* gnu/services/mail.scm (opensmtpd-shepherd-service) (opensmtpd-activation) (opensmtpd-set-gids): Use 'match-record' instead of 'match'. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-12-20services:·kmscon:·Display·CJK·characters.Florian Pelz
Follow-up·to d7d049fdcd80e27a42b31766890f589f482a4f23. * gnu/services/base.scm·(kmscon-service-type):·Use·GNU·Unifont, which bundles CJK glyphs from WenQuanYi and elsewhere.
2022-12-19Merge branch 'version-1.4.0'Ludovic Courtès
2022-12-18services: kmsconf: Load GNU Freefont.Ludovic Courtès
This provides glyphs for additional fonts such as Amharic that were otherwise missing. Fixes <https://issues.guix.gnu.org/60164>. Reported by Wolf <wolf@wolfsden.cz>. * gnu/services/base.scm (kmscon-service-type): In 'start' method, pass #:environment-variables to set 'XDG_DATA_DIRS'.
2022-12-17services: ganeti: Add support for cluster hooks.Marius Bakke
* gnu/services/ganeti.scm (<ganeti-configuration>): Add HOOKS. (hooks->directory): Rename to ... (debootstrap-hooks->directory): ... this, for clarity. (debootstrap-configuration-compiler): Adjust accordingly. (ganeti-directory): Add HOOKS when set. (ganeti-etc-service): Pass HOOKS. * doc/guix.texi (Virtualization Services): Mention it.
2022-12-15services: nix: Fix nix-shepherd-service.Christopher Baines
* gnu/services/nix.scm (nix-shepherd-service): Un-gexp build-directory.
2022-12-14gnu: slapd-configuration: Update default for run-dir.Ricardo Wurmus
* gnu/services/ldap.scm (slapd-configuration): Update default value for run-dir to match defaults of 389-ds-base package. * doc/guix.texi: Update documentation.
2022-12-14gnu: Add directory-server-service-type.Ricardo Wurmus
* gnu/services/ldap.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (LDAP Services): Document it.
2022-12-14services: configuration: Remove orphan reference to example.Bruno Victal
'generic-serialize-alist' refers to (gnu home services version-control) for usage examples but there's no such module. * gnu/services/configuration.scm (generic-serialize-alist): Adjust docstring. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-12-13services: nix: Add more configuration fields.Petr Hodina
* gnu/services/nix.scm (<nix-configuration>)[build-directory]: New field. (nix-service-etc, nix-shepherd-service): Take them into account. * doc/guix.texi (Nix): Update it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2022-12-12services: guix-build-coordinator: Fix service startup.Christopher Baines
Previously the service would keep starting more and more processes. * gnu/services/guix.scm (guix-build-coordinator-shepherd-services): Fix how make-forkexec-constructor is called.
2022-12-12services: zabbix-server: Increase Shepherd grace period.Marius Bakke
* gnu/services/monitoring.scm (zabbix-server-shepherd-service)[stop]: Add #:grace-period.
2022-12-12Merge branch 'version-1.4.0'Ludovic Courtès
2022-12-09services: nscd: Use nscd from 'glibc-final' on native builds.Ludovic Courtès
This reduces the closure size of systems by removing one glibc copy--namely (@ (gnu packages base) glibc) in addition to (@ (gnu packages commencement) glibc-final). * gnu/services/base.scm (<nscd-configuration>)[glibc]: Change default value to use 'let-system' and 'canonical-package' as appropriate.
2022-12-08services: base: Use 'match-record' instead of 'match'.Ludovic Courtès
* gnu/services/base.scm (agetty-shepherd-service) (mingetty-shepherd-service) (nscd.conf-file) (udev-shepherd-service) (udev-etc) (gpm-shepherd-service) (network-set-up/linux) (network-tear-down/linux) (static-networking-shepherd-service) (greetd-agreety-tty-session-command) (greetd-agreety-tty-xdg-session-command): Use 'match-record' instead of 'match'. (guix-accounts): Use <guix-configuration> accessors. (udev-service-type): Use <udev-configuration> accessors.
2022-12-08records: 'match-record' checks fields at macro-expansion time.Ludovic Courtès
This allows 'match-record' to be more efficient (field offsets are computed at compilation time) and to report unknown fields at macro-expansion time. * guix/records.scm (map-fields): New macro. (define-record-type*)[rtd-identifier]: New procedure. Define TYPE as a macro and use a separate identifier for the RTD. (lookup-field, match-record-inner): New macros. (match-record): Rewrite in terms of 'match-error-inner'. * tests/records.scm ("match-record, simple") ("match-record, unknown field"): New tests. * gnu/services/cuirass.scm (cuirass-shepherd-service): Rename 'log-file' local variable to 'main-log-file'. * gnu/services/getmail.scm (serialize-getmail-configuration-file): Move after <getmail-configuration-file> definition.
2022-12-06services: fail2ban: Start server in the foreground.Ludovic Courtès
Previously, we were passing '-b', thereby starting the server in the background. Consequently the 'start' method could complete before the server was ready to accept connections on its socket, leading to non-deterministic test failures. Reported by Mathieu Othacehe <othacehe@gnu.org>. * gnu/services/security.scm (fail2ban-shepherd-service): Change FAIL2BAN-ACTION to invoke 'fail2ban-client'. Change 'start' method to use 'make-forkexec-constructor'; start the server in the foreground with '-f' and pass '-x' to force execution of the server, as done upstream in 'fail2ban.service.in'.
2022-12-06services: fail2ban: Remove unnecessary Shepherd 'modules' field.Ludovic Courtès
* gnu/services/security.scm (fail2ban-shepherd-service): Remove unnecessary 'modules' field.
2022-12-06services: fail2ban: 'stop' returns #f when the dameon is stopped.Ludovic Courtès
* gnu/services/security.scm (fail2ban-shepherd-service): Change FAIL2BAN-ACTION to return an 'invoke' gexp. Adjust the shepherd 'start' and 'stop' fields accordingly. Have 'stop' return #f on success.
2022-12-04services: configuration: Rename location accessor to "source-location".Maxim Cournoyer
Fixes <https://issues.guix.gnu.org/59423>. * gnu/services/configuration.scm (define-configuration-helper): Rename the accessor of the %location field from "NAME-location" to "NAME-source-location". Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Reported-by: Pierre Langlois <pierre.langlois@gmx.com>
2022-12-09services: wireguard: Use the parameterized wireguard package.EuAndreh
* gnu/services/vpn.scm (wireguard-activation): Use the "wg" binary from the package given to <wireguard-configuration>. Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2022-12-08services: configuration: Rewrite 'alist?' procedure.Bruno Victal
* gnu/services/configuration.scm (alist?): Rewrite. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2022-12-07services: guix-publish: Keep fewer rotated logs.Ludovic Courtès
* gnu/services/base.scm (%guix-publish-log-rotations): Add 'options' field.
2022-12-07service: cuirass: Rotate remote server logs.Ludovic Courtès
* gnu/services/cuirass.scm (cuirass-log-rotations): Add the remote server log when it is used.
2022-12-07services: cuirass-remote-worker: Rotate logs.Ludovic Courtès
* gnu/services/cuirass.scm (cuirass-remote-worker-log-rotations): New procedure. (cuirass-remote-worker-service-type): Use it.
2022-12-07services: zabbix-agent: Adjust command-line when using zabbix_agent2.Marius Bakke
* gnu/services/monitoring.scm (zabbix-agent-arguments): New procedure. (zabbix-agent-shepherd-service): Use that to determine command line arguments.
2022-12-07services: zabbix: Don't write user to configuration file.Marius Bakke
The service already runs with the specified user and group, so there is no use in writing it to the configuration files. This change is mainly done for compatibility with 'zabbix-agent2' which does not understand the User= setting, but also to document the correct data type for the "group" setting. * gnu/services/monitoring.scm (serialize-string): Filter USER and GROUP fields. (group?, serialize-group): Remove variables. (zabbix-server-configuration, zabbix-agent-configuration): Document the GROUP field as 'string'. * doc/guix.texi (Monitoring Services): Adjust accordingly.
2022-12-02services: configuration: Rename location accessor to "source-location".Maxim Cournoyer
Fixes <https://issues.guix.gnu.org/59423>. * gnu/services/configuration.scm (define-configuration-helper): Rename the accessor of the %location field from "NAME-location" to "NAME-source-location". Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Reported-by: Pierre Langlois <pierre.langlois@gmx.com>
2022-12-02services: networking: Avoid 'match' on records.Ludovic Courtès
* gnu/services/networking.scm (dhcp-client-shepherd-service): Use accessors instead of 'match'. (inetd-shepherd-service): Likewise. (tor-shepherd-service): Likewise. (network-manager-service-type): Likewise. (modem-manager-service-type): Likewise. (wpa-supplicant-service-type): Likewise. (openvswitch-activation): Likewise. (openvswitch-shepherd-service): Likewise. (dhcpd-shepherd-service): Use 'match-record' instead of 'match'. (dhcpd-activation): Likewise. (ntp-server->string): Likewise. (ntp-shepherd-service): Likewise. (tor-configuration->torrc): Likewise. (network-manager-activation): Likewise. (network-manager-environment): Likewise. (network-manager-shepherd-service): Likewise. (usb-modeswitch-configuration->udev-rules): Likewise. (wpa-supplicant-shepherd-service): Likewise. (iptables-shepherd-service): Likewise. (nftables-shepherd-service): Likewise. (keepalived-shepherd-service): Likewise.
2022-12-02services: base: Use 'match-record' instead of 'match'.Ludovic Courtès
* gnu/services/base.scm (agetty-shepherd-service) (mingetty-shepherd-service) (nscd.conf-file) (udev-shepherd-service) (udev-etc) (gpm-shepherd-service) (network-set-up/linux) (network-tear-down/linux) (static-networking-shepherd-service) (greetd-agreety-tty-session-command) (greetd-agreety-tty-xdg-session-command): Use 'match-record' instead of 'match'. (guix-accounts): Use <guix-configuration> accessors. (udev-service-type): Use <udev-configuration> accessors.
2022-12-02records: 'match-record' checks fields at macro-expansion time.Ludovic Courtès
This allows 'match-record' to be more efficient (field offsets are computed at compilation time) and to report unknown fields at macro-expansion time. * guix/records.scm (map-fields): New macro. (define-record-type*)[rtd-identifier]: New procedure. Define TYPE as a macro and use a separate identifier for the RTD. (lookup-field, match-record-inner): New macros. (match-record): Rewrite in terms of 'match-error-inner'. * tests/records.scm ("match-record, simple") ("match-record, unknown field"): New tests. * gnu/services/cuirass.scm (cuirass-shepherd-service): Rename 'log-file' local variable to 'main-log-file'. * gnu/services/getmail.scm (serialize-getmail-configuration-file): Move after <getmail-configuration-file> definition.
2022-12-01services: network-manager: Add iwd backend support.Andrew Tropin
* gnu/services/networking.scm (network-manager-configuration)[iwd?]: New field. (network-manager-shepherd-service): Add iwd to requirements if needed. * doc/guix.texi: Add information about iwd? option.