aboutsummaryrefslogtreecommitdiff
path: root/gnu/services
Commit message (Collapse)AuthorAge
* services: hurd-vm: Use the new 'targets' field of <bootloader-configuration>.Ludovic Courtès2021-08-30
| | | | | * gnu/services/virtualization.scm (%hurd-vm-operating-system): Use 'targets' instead of 'target' for the 'bootloader-configuration' field.
* services: xorg: Delay the xorg-configuration-modules field evaluation.Mathieu Othacehe2021-08-30
| | | | | | | | | | When building an image with the "system" parameter set to an emulated architecture, the xorg-configuration-modules field needs to be evaluated once the %current-system parameter is set, otherwise this parameter is set to the current host system. * gnu/services/xorg.scm (<xorg-configuration>)[modules]: Make it a thunked field.
* services: Remove i486 qemu target.Efraim Flashner2021-08-29
| | | | | | | The i486 target has been removed from qemu since at least 5.2.0. * gnu/services/virtualization.scm (%i486): Remove variable. (%qemu-platforms): Remove it.
* services: base: Honor file-system-create-mount-point? at all times.Maxim Cournoyer2021-08-29
| | | | | | | | | | Fixes <https://issues.guix.gnu.org/40158>. * gnu/services/base.scm (file-system-shepherd-service): Update doc. Return a shepherd service for the mount point when either MOUNT? or CREATE? is true. [start]: Only mount when MOUNT? is true. (file-system-shepherd-services): Also consider file systems with create-mount-point? set to #t.
* services: slim: Add pam-gnupg support.Oleg Pykhalov2021-08-17
| | | | | | | | | * gnu/system/pam.scm (unix-pam-service): Add account and session PAM entries for pam-gnupg. Don't pass "#f" to "allow-root?" argument, because "lambda*" already does this by default. * doc/guix.texi (X Window): Document this. * gnu/services/xorg.scm (<slim-configuration>)[gnupg?]: New record field. (slim-pam-service): Pass "#:gnupg?" argument to "unix-pam-service".
* Update copyright/name notices for Christine Lemmer-Webber.Christopher Lemmer Webber2021-08-15
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * doc/guix-cookbook.texi: Update copyright/name for Christine Lemmer-Webber. * gnu/build/image.scm: Likewise. * gnu/build/vm.scm: Likewise. * gnu/packages/admin.scm: Likewise. * gnu/packages/assembly.scm: Likewise. * gnu/packages/audio.scm: Likewise. * gnu/packages/backup.scm: Likewise. * gnu/packages/check.scm: Likewise. * gnu/packages/databases.scm: Likewise. * gnu/packages/emacs-xyz.scm: Likewise. * gnu/packages/finance.scm: Likewise. * gnu/packages/gnupg.scm: Likewise. * gnu/packages/guile-xyz.scm: Likewise. * gnu/packages/guile.scm: Likewise. * gnu/packages/haskell-xyz.scm: Likewise. * gnu/packages/linux.scm: Likewise. * gnu/packages/mail.scm: Likewise. * gnu/packages/password-utils.scm: Likewise. * gnu/packages/perl.scm: Likewise. * gnu/packages/python-web.scm: Likewise. * gnu/packages/python-xyz.scm: Likewise. * gnu/packages/python.scm: Likewise. * gnu/packages/sphinx.scm: Likewise. * gnu/packages/ssh.scm: Likewise. * gnu/packages/xdisorg.scm: Likewise. * gnu/services/networking.scm: Likewise. * gnu/system/vm.scm: Likewise.
* services: cuirass: Reverse the no-publish logic.Mathieu Othacehe2021-08-13
| | | | | | | | | | This is a follow-up of d128c6fd33f46ec4e2d0ef352d20a858c377bf6f. * gnu/services/cuirass.scm (<cuirass-remote-server-configuration>) [no-publish?]: Rename it to ... [publish?]: ... this new field. (cuirass-shepherd-service): Adapt it. * doc/guix.texi (Cuirass remote building): Document it.
* services: cuirass: Fix the substitute-urls argument.Mathieu Othacehe2021-08-12
| | | | | | This is a follow-up of: 23b5b168ae95aed04cbaa0598449361af3423688. * gnu/services/cuirass.scm (cuirass-remote-worker-shepherd-service): Fix it.
* services: cuirass: Add a substitute-urls argument.Mathieu Othacehe2021-08-12
| | | | | | | * gnu/services/cuirass.scm (<cuirass-remote-worker-configuration>): Add a substitute-urls field. (cuirass-remote-worker-shepherd-service): Honor it. * doc/guix.texi (Cuirass remote building): Document it.
* services: cuirass: Add a no-publish argument.Mathieu Othacehe2021-08-12
| | | | | | | * gnu/services/cuirass.scm (<cuirass-remote-server-configuration>): Add a no-publish? field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Cuirass remote building): Document it.
* services: pam-limits: fix limits.conf locationmuradm2021-08-07
| | | | | | | | * gnu/services/base.scm: fix limits.conf location This fixes #49771 Signed-off-by: Julien Lepiller <julien@lepiller.eu>
* services: guix: Use "match-record" in activation.Brice Waegeneire2021-08-04
| | | | | | | | It's more explicit to specify used fields instead of depending on their position. * gnu/services/base.scm (guix-activation): Replace "match" with "match-record".
* Reinstate "services: Add a service for Jami."Maxim Cournoyer2021-08-02
| | | | | | | | | | | | | This reverts commit 4673f817938d9d2b1b40a072ab2e0c44a32ccc97, which reverted commit 69dcc24c9f0cdfea674eb690e7755d26a25ced2b with the fix detailed below. Thanks to Christopher Baines for reporting the failure and proposing a fix. * guix/self.scm (compiled-guix) [*system-test-modules*]: Add the test data files via the 'extra-files' argument. * gnu/local.mk (dist_patch_DATA): Move the tests/data/jami-dummy-account.dat file to... * gnu/local.mk (MODULES_NOT_COMPILED): ... here.
* Revert "services: Add a service for Jami."Maxim Cournoyer2021-08-02
| | | | | This reverts commit 69dcc24c9f0cdfea674eb690e7755d26a25ced2b. It broke 'guix pull'.
* services: Add a service for Jami.Maxim Cournoyer2021-08-02
| | | | | | | | | | | | | | | | | | | | | | * gnu/services/telephony.scm (string-or-computed-file?) (string-list?, account-fingerprint-list?): New procedures. (maybe-string-list, maybe-account-fingerprint-list) (maybe-boolean, maybe-string, jami-account-list): New configuration field types. (serialize-string-list, serialize-boolean, serialize-string) (jami-account, jami-account->alist, jami-configuration) (jami-account-list?, jami-account-list-maybe): New procedures. (%jami-accounts): New variable. (jami-configuration->command-line-arguments): New procedure. (jami-dbus-session-activation, jami-shepherd-services): New procedures. (jami-service-type): New variable. * gnu/build/jami-service.scm: New file. * gnu/tests/data/jami-dummy-account.dat: Likewise. * gnu/tests/telephony.scm: Likewise. * gnu/local.mk (GNU_SYSTEM_MODULES): Register them. * Makefile.am (SCM_TESTS): Register the test file. (dist_patch_DATA): Register the new data file. * doc/guix.texi (Telephony Services): Document it.
* services: configuration: Derive the default value from the package variable.Xinglu Chen2021-08-02
| | | | | | | | | | | | If the type of a configuration field is a package, show the name of its package *variable* as the default value. * gnu/services/configuration.scm (generate-documentation){show-default} {package->symbol}: New nested procedures. Use them to format the field entries. Co-authored-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* services: configuration: Uniformize the generated documentation.Xinglu Chen2021-08-02
| | | | | | | | | | | Make the formatting of the generated docs more consistent with the rest of the docs in the “Services” section of the manual. * gnu/services/configuration (generate-documentation): Represent the data type documentation of a field using a DEFTP table rather than DEFTYPEVR elements. Modified-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
* services: Migrate to <setuid-program>.Brice Waegeneire2021-07-29
| | | | | | | | | | | | | | | * gnu/services/dbus.scm (dbus-setuid-programs, polkit-setuid-programs): Return setuid-programs. * gnu/services/desktop.scm (enlightenment-setuid-programs): Return setuid-programs. (%desktop-services)[mount-setuid-helpers]: Use setuid-programs. * gnu/services/docker.scm (singularity-setuid-programs): Return setuid-programs. * gnu/services/xorg.scm(screen-locker-setuid-programs): Return setuid-programs. * gnu/system.scm (%setuid-programs): Return setuid-programs. * doc/guix.texi (Setuid Programs, operating-system Reference): Replace 'list of G-expressions' with 'list of <setuid-program>'.
* services: dhcpd: Fix activation with IPv6 configuration.Guillaume Le Vaillant2021-07-24
| | | | | * gnu/services/networking.scm (dhcpd-activation): Pass the IP version parameter to dhcpd.
* gnu: hpcguix-web: Update to 0.1.0.Ludovic Courtès2021-07-23
| | | | | | | | | * gnu/packages/web.scm (hpcguix-web): Update to 0.1.0. [arguments]: In 'wrap-program' phase, change "/bin/run" to "/bin/hpcguix-web". [inputs]: Add BASH-MINIMAL. * gnu/services/web.scm (hpcguix-web-shepherd-service): Run "/bin/hpcguix-web".
* services: ntp: Log to file.Brice Waegeneire2021-07-13
| | | | | * gnu/services/networking.scm (ntp-shepherd-service)[start]: Specify log file.
* services: tor: Log to file.Brice Waegeneire2021-07-13
| | | | | * gnu/services/networking.scm (tor-shepherd-service)[start]: Specify log file.
* services: gpm: Use "make-forkexec-contstructor".Brice Waegeneire2021-07-13
| | | | | * gnu/services/base.scm (gpm-shepherd-service)[start]: Replace custom logic with "make-forkexec-constructor".
* services: qemu-binfmt: Preserve argv[0] by default.Ludovic Courtès2021-07-10
| | | | | | | | Previously, argv[0] would be replaced by the absolute file name of the executable. This could cause discrepancies, for example in the Coreutils test suite: <https://issues.guix.gnu.org/49485>. * gnu/services/virtualization.scm (<qemu-platform>)[flags]: Default to "FP".
* services: Add bitmask-service-type.Raghav Gururajan2021-07-07
| | | | | | | * gnu/services/vpn.scm (bitmask-service-type): New variable. * doc/guix.texi: Document it. Co-authored-by: jgart <jgart@dismail.de>
* services: pcscd: Fix daemon signal handling.Brice Waegeneire2021-07-03
| | | | | | | | | "pcscd" wouldn't handle SIGTERM as it inherit ignoring this signal (and others) from its parent shepherd; fork+exec-command restore signal handling. Fixes <https://issues.guix.gnu.org/45202>. * gnu/services/security-token.scm (pcscd)[start]: Use fork+exec-command to start "pcscd".
* services: kmscon: Add keyboard-layout fields.luhui2021-06-29
| | | | | | | * gnu/services/base.scm (<kmscon-configuration>): Add keyboard-layout fields. * doc/guix.texi (Base Services): Document them. Signed-off-by: Mathieu Othacehe <othacehe@gnu.org>
* services: configuration: Allow specifying prefix for serializer names.Xinglu Chen2021-06-29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Sometimes two configurations might have the same types for their field values, but the values might be serialized in two completely different ways (e.g. because the two programs have different configuration languages). An example of this would be the ‘serialize-boolean’ procedure in (gnu services mail) and (gnu services getmail). They both serialize a boolean value, but because the Dovecot’s configuration language has a different syntax to the configuration language for Getmail, two different procedures have to be defined. One way to workaround this would be to specify custom serializers for many fields in order to separate the serialization of the values that have the same type but serialize in different ways. This could get very tedious, especially if there are many configurations in the same module. Another way would be to move one of the configurations to its own module, like what was done with (gnu services getmail). However, this would mean that there would be multiple modules containing configurations for related programs, e.g. we have (gnu services mail) and (gnu services getmail), it doesn’t make much sense to keep the Getmail configuration in its own module. This patch will allow one to write something like this: (define-configuration foo-configuration (bar (string "bob") "Option bar.") (prefix bar-)) and the value of the ‘bar’ field would be serialized using a procedure named ‘bar-serialize-string’ instead of just ‘serialize-string’. * gnu/services/configuration.scm (define-maybe-helper): Accept ‘prefix’ argument for using serializer with custom prefix. (define-maybe): Pattern match on ‘prefix’ literal. (define-configuration-helper): Accept ‘prefix’ argument for using serializer with custom prefix. (define-configuration): Pattern match on ‘prefix’ literal. * tests/services/configuration.scm ("serialize-configuration with prefix"): New test. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* Remove unused module imports from (gnu services vpn).Tobias Geerinckx-Rice2021-06-25
| | | | * gnu/services/vpn.scm: Remove (gnu packages networking) and (guix utils) imports.
* gnu: Add strongswan service.Domagoj Stolfa2021-06-25
| | | | | | | * gnu/services/vpn.scm (<strongswan-configuration>): New record type. (charon-plugins, strongswan-configuration-file) (strongswan-shepherd-service, strongswan-service-type): New variables. * doc/guix.tex (VPN Services): Document them all.
* services: certbot: Add option to use CSR file.Raghav Gururajan2021-06-24
| | | | | | * gnu/services/certbot.scm (<certificate-configuration>): Add csr field. (certbot-command): Modify. * doc/guix.texi (Certificate Services): Document it.
* services: cups: Remove obsolete KeepAliveTimeout directive.Tobias Geerinckx-Rice2021-06-23
| | | | | | | https://github.com/apple/cups/commit/461bd4e50142b2928a0d164bd1aae274e4d34da5 * gnu/services/cups.scm (<cups-configuration>): Remove keep-alive-timeout field. * doc/guix.texi (Printing Services): Likewise.
* services: cups: Fix ‘files-config’ typo/left-over.Tobias Geerinckx-Rice2021-06-23
| | | | | | * gnu/services/cups.scm (<policy-configuration>): Substitute <files-configuration> for <files-config> in documentation. * doc/guix.texi (Printing Services): Likewise.
* services: openssh: Replace 'without-password' by 'prohibit-password'.Brice Waegeneire2021-06-20
| | | | | | | | | | | | | | | | | | For some time, OpenSSH's option 'PermitRootLogin' has deprecated the ambiguous argument 'without-password' with 'prohibit-password'. * doc/guix.texi (Network Services): Replace 'without-password by 'prohibit-password. * gnu/machine/digital-ocean.scm (guix-infect): Change system configuration to use 'prohibit-password. * gnu/services/ssh.scm (openssh-configuration): Change comment to use 'prohibit-password. (openssh-config-file): Add support for 'prohibit-password to 'permit-root-login'. Warn about deprecated 'without-password usage. * gnu/tests/ganeti.scm (%ganeti-os): Replace 'without-password by 'prohibit-password. Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
* services: pcscd: Cleanup socket when started.Brice Waegeneire2021-06-19
| | | | | | | | Otherwise when pcscd doesn't terminate properly (ie. receive a SIGKILL), it won't start again because of it's socket already existing. * gnu/services/security-token.scm (pcscd-shepherd-service)[start]: Remove existing socket file.
* services: guix: Authorize 'bordeaux.guix.gnu.org.pub' by default.Jack Hill2021-06-19
| | | | | | | | | This follows on from the changes in 4985a4272497bf9ba87a2190353d915da9b55906. * gnu/services/base.scm (%default-authorized-guix-keys): Add bordeaux.guix.gnu.org.pub. Signed-off-by: Christopher Baines <mail@cbaines.net>
* services: Remove deprecated service procedures.Ludovic Courtès2021-06-14
| | | | | | | | | | | | | | | These service procedures were deprecated in January 2019, for instance in commit 65a67bf711b14bc7200f6730c0f173375ca12974. * gnu/services/avahi.scm (avahi-service): Remove. * gnu/services/base.scm (console-keymap, guix-service) (guix-publish-service, gpm-service, urandom-seed-service): Remove. * gnu/services/desktop.scm (upower-service, colord-service): Remove. * gnu/services/mcron.scm (mcron-service): Remove. * gnu/services/messaging.scm (bitlbee-service): Remove. * gnu/services/networking.scm (dhcp-client-service, ntp-service) (tor-service): Remove. * gnu/services/xorg.scm (slim-service, gdm-service): Remove.
* services: laminar: Create parent directory for unix socket.Arun Isaac2021-06-10
| | | | | | * gnu/services/ci.scm (laminar-activation): New function. (laminar-service-type): Extend activation-service-type with laminar-activation.
* services: cuirass: Do not export record type descriptors.Ludovic Courtès2021-06-01
| | | | | | * gnu/services/cuirass.scm (<cuirass-remote-server-configuration>) (<cuirass-configuration>, <cuirass-remote-worker-configuration>): Do not export.
* services: cuirass: Create the profile and GC root directory.Ludovic Courtès2021-06-01
| | | | | * gnu/services/cuirass.scm (cuirass-activation): Create /var/guix/profiles/per-user/cuirass/cuirass or similar.
* services: dnsmasq: Extend 'activation-service'.Brice Waegeneire2021-05-31
| | | | | * gnu/services/dns.scm (dnsmasq-activation): New procedure … (dnsmasq-service-type): … use it.
* services: hostapd: Use package from configuration.Brice Waegeneire2021-05-31
| | | | | * gnu/services/networking.scm (hostapd-shepherd-services): Replace 'hostapd' by the package specified in the configuration.
* gnu: services: Add missing wireguard related exports.Solene Rapenne2021-05-24
| | | | | | | * gnu/services/vpn.scm: Export 'wireguard-peer-public-key' and 'wireguard-peer-keep-alive'. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net>
* services: opendht: Fix hang at boot.Maxim Cournoyer2021-05-19
| | | | | | | | | | | | Fixes <https://issues.guix.gnu.org/48521>. The problem was caused by the 'file-system-mapping' record not being in scope. * gnu/services/networking.scm (opendht-shepherd-service): Import the (gnu system file-systems) module. [requirement]: Depend on networking, to avoid spurious output. [modules]: New field. [start] <group>: New argument.
* services: Add a service for opendht.Maxim Cournoyer2021-05-17
| | | | | | | | | * gnu/services/networking.scm (maybe-number?, maybe-string?): New procedures. (<opendht-configuration>): New configuration record. (%opendht-accounts): New variable. (opendht-configuration->command-line-arguments): New procedure. (opendht-shepherd-service, opendht-service-type): New variables. * doc/guix.texi (Networking Services): Document the new service.
* services: configuration: Add a define-configuration/no-serialization syntax.Maxim Cournoyer2021-05-17
| | | | | | | | This is added for convenience and for uniformity with the define-maybe/no-serialization syntax introduced in the previous commit. * gnu/services/configuration.scm (define-configuration/no-serialization): New syntax.
* services: configuration: Add a define-maybe/no-serialization syntax.Maxim Cournoyer2021-05-17
| | | | | | | | | | | | | | | | | | | | | | | | | | Before this change, using define-maybe along define-configuration with the no-serialization syntactic keyword would result in the following warning: warning: possibly unbound variable `VARIABLE-NAME' This change introduces the define-maybe/no-serialization variant that does away with defining a serialization helper procedure, which makes it possible to avoid the above warning. * gnu/services/configuration.scm (define-maybe/no-serialization): New syntax. (define-maybe-helper): New procedure. (define-maybe): Define syntax using the above procedure. * tests/services/configuration.scm (tests): Fix module name. (custom-number-serializer): Do not print to standard output. (maybe-number?, serialize-maybe-number): New procedures defined via the define-maybe macro. (config-with-maybe-number): New configuration. (serialize-number): New procedure. ("maybe value serialization"): New test. (maybe-string?): New procedure defined via the define-maybe/no-serialization macro. (config-with-maybe-string/no-serialization): New configuration. ("maybe value without serialization no procedure bound"): New test.
* Merge branch 'version-1.3.0'Maxim Cournoyer2021-05-11
|\
| * services: spice-vdagent: Clear the socket file prior to starting.Maxim Cournoyer2021-05-06
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This fixes the following issue where spice-vdagent would fail to start if the spice-vdagent-sock socket file already existed: spice-vdagentd: Fatal could not create the server socket /run/spice-vdagentd/spice-vdagent-sock: Error binding to address: Address already in use The requirement is also modified to depend on dbus-system, a cue taken from upstream's own systemd service file (see 'data/spice-vdagentd.service' in the sources). * gnu/services/spice.scm (spice-vdagent-activation): Delete procedure. (spice-vdagent-shepherd-service): Fix indentation. [requirement]: Replace udev by dbus-system. [start]: Ensure the spice-vdagentd run-time directory exists and that the spice-vdagent-sock socket file does *not* exist before forking the daemon.
| * services: Fix the spice-vdagent service.Maxim Cournoyer2021-05-05
| | | | | | | | | | | | * gnu/services/spice.scm (spice-vdagent-activation): Update runtime directory from /var/run/spice-vdagentd to /run/spice-vdagentd. (spice-vdagent-service-type): Specify a default value and fix indentation.