summaryrefslogtreecommitdiff
path: root/gnu/services
AgeCommit message (Expand)Author
2021-06-01services: cuirass: Do not export record type descriptors....* gnu/services/cuirass.scm (<cuirass-remote-server-configuration>) (<cuirass-configuration>, <cuirass-remote-worker-configuration>): Do not export. Ludovic Courtès
2021-06-01services: cuirass: Create the profile and GC root directory....* gnu/services/cuirass.scm (cuirass-activation): Create /var/guix/profiles/per-user/cuirass/cuirass or similar. Ludovic Courtès
2021-05-31services: dnsmasq: Extend 'activation-service'....* gnu/services/dns.scm (dnsmasq-activation): New procedure … (dnsmasq-service-type): … use it. Brice Waegeneire
2021-05-31services: hostapd: Use package from configuration....* gnu/services/networking.scm (hostapd-shepherd-services): Replace 'hostapd' by the package specified in the configuration. Brice Waegeneire
2021-05-24gnu: services: Add missing wireguard related exports....* gnu/services/vpn.scm: Export 'wireguard-peer-public-key' and 'wireguard-peer-keep-alive'. Signed-off-by: Guillaume Le Vaillant <glv@posteo.net> Solene Rapenne
2021-05-19services: opendht: Fix hang at boot....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. Maxim Cournoyer
2021-05-17services: Add a service for opendht....* 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. Maxim Cournoyer
2021-05-17services: configuration: Add a define-configuration/no-serialization syntax....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. Maxim Cournoyer
2021-05-17services: configuration: Add a define-maybe/no-serialization syntax....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. Maxim Cournoyer
2021-05-11Merge branch 'version-1.3.0'Maxim Cournoyer
2021-05-08services: configuration: Export 'no-serialization' syntactic keyword....This is a followup to 3f9a12dc082b20426fc740416601b69ea1897193. * gnu/services/configuration.scm (no-serialization): New variable. Ludovic Courtès
2021-05-08services: docker: Disable configuration serialization....* gnu/services/docker.scm (serialize-boolean): Delete procedure. (docker-configuration) <no-serialization>: New syntactic keyword. Maxim Cournoyer
2021-05-08services: configuration: Fix %location accessor name....The non-hygienic binding of the source location accessor was set to '-location'; in modules where multiple configurations were defined, it would cause compilation warnings such as: gnu/services/mail.scm:175:0: warning: shadows previous definition of `%-location-procedure' at gnu/services/mail.scm:165:0 * gnu/services/configuration.scm (define-configuration-helper) <id>: Add a missing #'stem argument to use the configuration name as a prefix to the location accessor identifier. Maxim Cournoyer
2021-05-08services: configuration: Allow specifying a custom serializer....In some cases, rather than globally disabling serialization, it may be more appropriate to disable or otherwise alter the serialization procedure of a specific field. In large module, multiple configurations may also exist that would need to alter the default serialization procedure, which is named after the field type. Being able to specify a per-field serialization procedure provides more flexibility. * gnu/services/configuration.scm (define-configuration): Add an optional pattern variable to allow specifying a custom serialization procedure. (define-configuration-helper) <field-serializer>: Use it to transform the syntax. (empty-serializer): New procedure. (serialize-package): Alias to ‘empty-serializer’. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Xinglu Chen
2021-05-08services: configuration: Allow disabling serialization....Serialization is not always useful, for example when deriving command line arguments from a configuration. This change provides a way to turn it off, which removes the need to define a bunch of dummy serialization procedures. Credit goes to Andrew Gierth (RhodiumToad) from #guile for providing the solution. Thank you! * gnu/services/configuration.scm (define-configuration-helper): New procedure. (define-configuration) <no-serialization>: New syntactic keyword. Use it in a new pattern. Refactor the macro so that it makes use of the above helper procedure. Maxim Cournoyer
2021-05-08services: configuration: Avoid a compilation warning....This resolves a compilation warning introduced with commit bb716e8d9d. * gnu/services/configuration.scm (configuration->documentation): Use display to print the string instead of format. Maxim Cournoyer
2021-05-07services: configuration: Add a new helper to ease generating documentation....The original (undocumented) procedure to generate the doc has a difficult to grasp interface; add a simpler one on top of it. * gnu/services/configuration.scm (configuration->documentation): New procedure. Maxim Cournoyer
2021-05-07services: configuration: Support fields without default values....Not all fields in a configuration have a sensible default value. This changes makes it possible to omit a default value for a configuration field, requiring the user to provide a value. * gnu/services/configuration.scm (configuration-missing-field): New procedure. (define-configuration): Make default value optional. Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com> Xinglu Chen
2021-05-06services: spice-vdagent: Clear the socket file prior to starting....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. Maxim Cournoyer
2021-05-06services: dovecot: Add ‘managesieve-sieve-capability’ option....* gnu/services/mail.scm (protocol-configuration): Add a ‘managesieve-sieve-capability’ field. * doc/guix.texi (Mail Services): Document it. Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr> Alexey Abramov
2021-05-06services: dovecot: Add ‘managesieve-notify-capability’ option....* gnu/services/mail.scm (protocol-configuration): Add a ‘managesieve-notify-capability’ field. * doc/guix.texi (Mail Services): Document it. Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr> Alexey Abramov
2021-05-06services: dovecot: Add ‘imap-metadata?’ protocol configuration option....* gnu/services/mail.scm (protocol-configuration): Add an ‘imap-metadata?’ setting to enable IMAP METADATA support in the ‘imap’ protocol. * doc/guix.texi (Mail Services): Document it. Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr> Alexey Abramov
2021-05-06services: dovecot: Add ‘mail-attribute-dict’ configuration option....* gnu/services/mail.scm (dovecot-configuration): Define a ‘mail-attribute-dict’ directive for IMAP METADATA storage. * doc/guix.texi (Mail Services): Document it. Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr> Alexey Abramov
2021-05-05services: Fix the spice-vdagent service....* 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. Maxim Cournoyer
2021-05-02services: guix-build-coordinator: Fix queue builds state directory....This service doesn't create a PID file, but it does write a file with the processed commits in it, so create a directory to contain that. * gnu/services/guix.scm (guix-build-coordinator-queue-builds-activation): Ensure /var/cache/guix-build-coordinator-queue-builds exists. Christopher Baines
2021-04-27services: mysql: Add extra-environment as configuration option....* gnu/services/databases.scm (mysql-configuration): Add extra-environment (mysql-service): Use #:log-file and #:environment-variables * doc/guix.texi: Document it. Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at> methuselah-0
2021-04-26services: nix: Add /bin/sh to build-sandbox-paths....Fixes <https://bugs.gnu.org/46297>. * gnu/services/nix.scm (nix-service-etc): Add /bin/sh to build-sandbox-paths. Oleg Pykhalov
2021-04-24services: Add a service for rasdaemon....* gnu/services/linux.scm (rasdaemon-configuration, rasdaemon-configuration?, rasdaemon-configuration-record?, rasdaemon-service-type): New variables. * doc/guix.texi (Linux Services): Document it. Signed-off-by: Leo Famulari <leo@famulari.name> B. Wilson
2021-04-23services: guix-build-coordinator: Fix queue builds default config....Use the default client port rather than the default agent communication port for the queue builds script. * gnu/services/guix.scm (<guix-build-coordinator-queue-builds-configuration>): Change coordinator default. Christopher Baines
2021-04-23services: guix-build-coordinator: Remove incorrect pid file....The queue builds script doesn't create a pid file, so don't have the shepherd expect to find one. * gnu/services/guix.scm (guix-build-coordinator-queue-builds-shepherd-services): Remove #:pid-file. Christopher Baines
2021-04-23services: guix-build-coordinator: Fix service activation parts....Don't hardcode usernames, as these are in the config. Also fix the %user being missing from the queue-builds service activation. * gnu/services/guix.scm (guix-build-coordinator-activation, guix-build-coordinator-agent-activation): Use config for the user name. (guix-build-coordinator-queue-builds-activation): Define %user. Christopher Baines
2021-04-23services: guix-build-coordinator: Add max-1min-load-average option....To the agent configuration. * gnu/services/guix.scm (<guix-build-coordinator-agent-configuration>): New field, max-1min-load-average. (guix-build-coordinator-agent-configuration-max-1min-load-average): New procedure. (guix-build-coordinator-agent-shepherd-services): If set, include the max-1min-load-average in the agent arguments. Christopher Baines
2021-04-20services: wireguard: Add keep-alive support....* gnu/services/vpn.scm (<wireguard-peer>): Add 'keep-alive' field. (wireguard-configuration-file): Use it. * doc/guix.texi (VPN Services): Document it. Guillaume Le Vaillant
2021-04-14services: cuirass: Use "/tmp" database host....This is a follow-up of c311147bd16aa0e5746d9cbf31502f5fd61e470c. * gnu/services/cuirass.scm (%cuirass-default-database): Use "/tmp" database host. Mathieu Othacehe
2021-04-14Revert "services: mysql: Add extra-environment as configuration option."...This reverts commit f3626119d738f30b5ab59e76c105fd7b4c077ddc. This commit inadvertently broke a string freeze. Let's be nice to our translators and not do that. Leo Prikler
2021-04-13services: postgresql: Use "/tmp" host directory....This is a follow-up of c311147bd16aa0e5746d9cbf31502f5fd61e470c. * gnu/services/databases.scm (<postgresql-role-configuration>)[host]: Set to "/tmp" which the default Postgresql socket directory. Mathieu Othacehe
2021-04-13services: mysql: Add extra-environment as configuration option....* gnu/services/databases.scm (mysql-configuration): Add extra-environment (mysql-service): Use #:log-file and #:environment-variables * doc/guix.texi: Document it. Signed-off-by: Leo Prikler <leo.prikler@student.tugraz.at> methuselah-0
2021-04-12services: postgresql: Change service default socket directory....Fixes <https://bugs.gnu.org/46737>. PostgreSQL running with a different socket directory to the default one in the package itself breaks some services, this commit restores the previous behaviour where PostgreSQL by default will run with a socket directory that matches the default used by PostgreSQL packaged for Guix. Switching to a different default value can happen, but only alongside changing the PostgreSQL package. * gnu/services/databases.scm (<postgresql-config-file>)[socket-directory]: Change default to #false. * doc/guix.texi (Database Services): Update documentation, and specify a different value for disabling connections via sockets. * gnu/tests/guix.scm (%guix-data-service-os): Use default PostgreSQL behaviour. * gnu/tests/monitoring.scm (%zabbix-os): Likewise. * gnu/tests/web.scm (patchwork-os): Likewise. Signed-off-by: Leo Famulari <leo@famulari.name> Christopher Baines
2021-04-12services: ipfs: Tweak description....* gnu/services/networking.scm (ipfs-service-type)[description]: Avoid abbreviation. Ludovic Courtès
2021-04-12services: Add ipfs-service-type...* gnu/services/networking.scm (ipfs-service-type) (%ipfs-home-mapping, %ipfs-environment) (%ipfs-accounts, %ipfs-home): New variables. (ipfs-configuration, ipfs-configuration?) (ipfs-configuration-package, ipfs-configuration-gateway) (ipfs-configuration-api, ipfs-shepherd-service) (ipfs-binary, %ipfs-activation): New procedures. * doc/guix.texi (Networking Services): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Maxime Devos
2021-04-10services: git-daemon: Fix typo in docstring....* gnu/services/version-control.scm (git-daemon-service): Fix docstring typo. Tobias Geerinckx-Rice
2021-04-09services: Add Laminar....* gnu/services/ci.scm: New file. * gnu/tests/ci.scm: New file. * doc/guix.texi (Laminar): Document the Laminar service. Christopher Baines
2021-04-06services: dovecot: Fix serialization of a free-form-args arguments....* gnu/services/mail.scm (serialize-free-form-args): Change destination and return a string containing the formated text. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Alexey Abramov
2021-04-03services: guix-publish: Add zstd compression by default....That way, the default config with (advertises? #t) and without a cache will offer zstd-compressed substitutes, which should lead to much higher throughput than gzip. * gnu/services/base.scm (default-compression): When 'guix-publish-configuration-cache' returns true, use higher level compression ratios. Add "zstd". * doc/guix.texi (Base Services): Mention zstd. Ludovic Courtès
2021-04-01services: kmscon: Add font-engine and font-size fields....* gnu/services/base.scm (<kmscon-configuration>): Add font-engine and font-size fields. (kmscon-service-type): Honor them. * doc/guix.texi (Base Services): Document them. qblade
2021-04-01gnu: services: web: Have fcgiwrap log to a file....This makes it easier to access the output. * gnu/services/web.scm (fcgiwrap-shepherd-service): Pass #:log-file to make-forkexec-constructor. Christopher Baines
2021-04-01gnu: services: web: Cleanup whitespace....Replace tabs with spaces, and delete trailing whitespace. * gnu/services/web.scm: Cleanup whitespace. Christopher Baines
2021-03-31services: sysctl: Export <sysctl-configuration> record field accessors....* gnu/services/sysctl.scm (sysctl-configuration-sysctl) (sysctl-configuration-settings): Export. Signed-off-by: Ludovic Courtès <ludo@gnu.org> muradm
2021-03-31services: xorg: Export %default-xorg-server-arguments....* gnu/services/xorg.scm (%default-xorg-server-arguments): Export. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Valentin Herrmann
2021-03-29services: rottlog: Add /var/log/mcron.log to '%default-rotations'....Fixes <https://bugs.gnu.org/47436>. Reported by Leo Famulari <leo@famulari.name>. * gnu/services/admin.scm (%rotated-files): Add "/var/log/mcron.log". Ludovic Courtès