summary refs log tree commit diff
path: root/gnu/services
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/services')
-rw-r--r--gnu/services/databases.scm17
-rw-r--r--gnu/services/desktop.scm27
-rw-r--r--gnu/services/kerberos.scm12
-rw-r--r--gnu/services/lirc.scm6
-rw-r--r--gnu/services/mail.scm15
-rw-r--r--gnu/services/monitoring.scm9
-rw-r--r--gnu/services/nfs.scm19
-rw-r--r--gnu/services/spice.scm5
-rw-r--r--gnu/services/sysctl.scm4
-rw-r--r--gnu/services/virtualization.scm9
-rw-r--r--gnu/services/vpn.scm13
-rw-r--r--gnu/services/web.scm15
12 files changed, 114 insertions, 37 deletions
diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm
index 15a2036037..fb3cd3c478 100644
--- a/gnu/services/databases.scm
+++ b/gnu/services/databases.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
-;;; Copyright © 2015, 2016 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015, 2016, 2022 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
 ;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
 ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
@@ -328,7 +328,8 @@ host	all	all	::1/128 	md5"))
            profile-service-type
            (compose list postgresql-configuration-postgresql))))
    (default-value (postgresql-configuration
-                   (postgresql postgresql-10)))))
+                   (postgresql postgresql-10)))
+   (description "Run the PostgreSQL database server.")))
 
 (define-deprecated (postgresql-service #:key (postgresql postgresql)
                                        (port 5432)
@@ -514,7 +515,10 @@ created after the PostgreSQL database is started.")))
                                           (const memcached-activation))
                        (service-extension account-service-type
                                           (const %memcached-accounts))))
-                (default-value (memcached-configuration))))
+                (default-value (memcached-configuration))
+                (description "Run @command{memcached}, a daemon that provides
+an in-memory caching service, intended for use by dynamic web
+applications.")))
 
 
 ;;;
@@ -680,7 +684,9 @@ FLUSH PRIVILEGES;
                              %mysql-activation)
           (service-extension shepherd-root-service-type
                              mysql-shepherd-services)))
-   (default-value (mysql-configuration))))
+   (default-value (mysql-configuration))
+   (description "Run the MySQL or MariaDB database server,
+@command{mysqld}.")))
 
 (define-deprecated (mysql-service #:key (config (mysql-configuration)))
   mysql-service-type
@@ -759,4 +765,5 @@ FLUSH PRIVILEGES;
                                           redis-activation)
                        (service-extension account-service-type
                                           (const %redis-accounts))))
-                (default-value (redis-configuration))))
+                (default-value (redis-configuration))
+                (description "Run Redis, a caching key/value store.")))
diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm
index ecadb16b2f..24fd43a207 100644
--- a/gnu/services/desktop.scm
+++ b/gnu/services/desktop.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2014-2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2014-2022 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015 Andy Wingo <wingo@igalia.com>
 ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
 ;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
@@ -366,7 +366,11 @@ users are allowed."
                  (list (service-extension dbus-root-service-type
                                           geoclue-dbus-service)
                        (service-extension account-service-type
-                                          (const %geoclue-accounts))))))
+                                          (const %geoclue-accounts))))
+                (description "Run the @command{geoclue} location service.
+This service provides a D-Bus interface to allow applications to request
+access to a user's physical location, and optionally to add information to
+online location databases.")))
 
 (define* (geoclue-service #:key (geoclue geoclue)
                           (whitelist '())
@@ -914,7 +918,11 @@ screens and scanners.")))
 
                          ;; Profile 'udisksctl' & co. in the system profile.
                          (service-extension profile-service-type
-                                            udisks-package))))))
+                                            udisks-package)))
+                  (description "Run UDisks, a @dfn{disk management} daemon
+that provides user interfaces with notifications and ways to mount/unmount
+disks.  Programs that talk to UDisks include the @command{udisksctl} command,
+part of UDisks, and GNOME Disks."))))
 
 (define* (udisks-service #:key (udisks udisks))
   "Return a service for @uref{http://udisks.freedesktop.org/docs/latest/,
@@ -1129,7 +1137,12 @@ seats.)"
                        ;; We need /run/user, /run/systemd, etc.
                        (service-extension file-system-service-type
                                           (const %elogind-file-systems))))
-                (default-value (elogind-configuration))))
+                (default-value (elogind-configuration))
+                (description "Run the @command{elogind} login and seat
+management service.  The @command{elogind} service integrates with PAM to
+allow other system components to know the set of logged-in users as well as
+their session types (graphical, console, remote, etc.).  It can also clean up
+after users when they log out.")))
 
 (define* (elogind-service #:key (config (elogind-configuration)))
   "Return a service that runs the @command{elogind} login and seat management
@@ -1177,7 +1190,11 @@ when they log out."
                                           (const %accountsservice-activation))
                        (service-extension dbus-root-service-type list)
                        (service-extension polkit-service-type list)))
-                (default-value accountsservice)))
+                (default-value accountsservice)
+                (description "Run AccountsService, a system service available
+over D-Bus that can list available accounts, change their passwords, and so
+on.  AccountsService integrates with PolicyKit to enable unprivileged users to
+acquire the capability to modify their system configuration.")))
 
 (define* (accountsservice-service #:key (accountsservice accountsservice))
   "Return a service that runs AccountsService, a system service that
diff --git a/gnu/services/kerberos.scm b/gnu/services/kerberos.scm
index f09f47893c..f845c1bd89 100644
--- a/gnu/services/kerberos.scm
+++ b/gnu/services/kerberos.scm
@@ -410,8 +410,10 @@ machine does not have a keytab.")
   (service-type (name 'krb5)
                 (extensions
                  (list (service-extension etc-service-type
-                                          krb5-etc-service)))))
-
+                                          krb5-etc-service)))
+                (description "Programs using a Kerberos client library
+normally expect a configuration file in @file{/etc/krb5.conf}.  This service
+generates such a file.  It does not cause any daemon to be started.")))
 
 
 
@@ -455,4 +457,8 @@ machine does not have a keytab.")
                 (extensions
                  (list
                   (service-extension pam-root-service-type
-                                     pam-krb5-pam-services)))))
+                                     pam-krb5-pam-services)))
+                (description "The @code{pam-krb5} service allows for login
+authentication and password management via Kerberos.  You will need this
+service if you want PAM-enabled applications to authenticate users using
+Kerberos.")))
diff --git a/gnu/services/lirc.scm b/gnu/services/lirc.scm
index 1f5adcdd5f..492d77defa 100644
--- a/gnu/services/lirc.scm
+++ b/gnu/services/lirc.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
-;;; Copyright © 2015, 2016 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015, 2016, 2022 Ludovic Courtès <ludo@gnu.org>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -79,7 +79,9 @@
                  (list (service-extension shepherd-root-service-type
                                           lirc-shepherd-service)
                        (service-extension activation-service-type
-                                          (const %lirc-activation))))))
+                                          (const %lirc-activation))))
+                (description "Run LIRC, a daemon that decodes infrared signals
+from remote controls.")))
 
 (define* (lirc-service #:key (lirc lirc)
                        device driver config-file
diff --git a/gnu/services/mail.scm b/gnu/services/mail.scm
index 4ad6ddb534..d99743ac31 100644
--- a/gnu/services/mail.scm
+++ b/gnu/services/mail.scm
@@ -1600,7 +1600,9 @@ greyed out, instead of only later giving \"not selectable\" popup error.
                        (service-extension pam-root-service-type
                                           (const %dovecot-pam-services))
                        (service-extension activation-service-type
-                                          %dovecot-activation)))))
+                                          %dovecot-activation)))
+                (description "Run Dovecot, a mail server that can run POP3,
+IMAP, and LMTP.")))
 
 (define* (dovecot-service #:key (config (dovecot-configuration)))
   "Return a service that runs @command{dovecot}, a mail server that can run
@@ -1729,7 +1731,9 @@ match from local for any action outbound
           (service-extension profile-service-type
                              (compose list opensmtpd-configuration-package))
           (service-extension shepherd-root-service-type
-                             opensmtpd-shepherd-service)))))
+                             opensmtpd-shepherd-service)))
+   (description "Run the OpenSMTPD, a lightweight @acronym{SMTP, Simple Mail
+Transfer Protocol} server.")))
 
 
 ;;;
@@ -1754,7 +1758,9 @@ match from local for any action outbound
    (extensions
     (list (service-extension etc-service-type mail-aliases-etc)))
    (compose concatenate)
-   (extend append)))
+   (extend append)
+   (description "Provide a @file{/etc/aliases} file---an email alias
+database---computed from the given alias list.")))
 
 
 ;;;
@@ -1831,7 +1837,8 @@ exim_group = exim
           (service-extension account-service-type (const %exim-accounts))
           (service-extension activation-service-type exim-activation)
           (service-extension profile-service-type exim-profile)
-          (service-extension mail-aliases-service-type (const '()))))))
+          (service-extension mail-aliases-service-type (const '()))))
+   (description "Run the Exim mail transfer agent (MTA).")))
 
 
 ;;;
diff --git a/gnu/services/monitoring.scm b/gnu/services/monitoring.scm
index 0e6aed2cac..9c8704092c 100644
--- a/gnu/services/monitoring.scm
+++ b/gnu/services/monitoring.scm
@@ -419,7 +419,10 @@ configuration file."))
                              zabbix-server-account)
           (service-extension activation-service-type
                              zabbix-server-activation)))
-   (default-value (zabbix-server-configuration))))
+   (default-value (zabbix-server-configuration))
+   (description "Run the Zabbix server, a high-performance monitoring system
+that can collect data about machines from a variety of sources and provide the
+results in a Web interface.")))
 
 (define (generate-zabbix-server-documentation)
   (generate-documentation
@@ -546,7 +549,9 @@ configuration file."))
                              zabbix-agent-account)
           (service-extension activation-service-type
                              zabbix-agent-activation)))
-   (default-value (zabbix-agent-configuration))))
+   (default-value (zabbix-agent-configuration))
+   (description "Run the Zabbix agent, @command{zabbix_agentd}, which gathers
+information about the running system for the Zabbix monitoring server.")))
 
 (define (generate-zabbix-agent-documentation)
   (generate-documentation
diff --git a/gnu/services/nfs.scm b/gnu/services/nfs.scm
index 0d1617354e..9b795c9e71 100644
--- a/gnu/services/nfs.scm
+++ b/gnu/services/nfs.scm
@@ -92,7 +92,10 @@
                (match values
                  ((first . rest) first)
                  (_ config))))
-     (default-value (rpcbind-configuration)))))
+     (default-value (rpcbind-configuration))
+     (description "Run the RPC Bind service, which provides a facility to map
+ONC RPC program numbers into universal addresses.  Many NFS related services
+use this facility."))))
 
 
 
@@ -129,7 +132,9 @@
      ;; override it with the value returned by the extending service.
      (compose identity)
      (extend (lambda (config values) (first values)))
-     (default-value (pipefs-configuration)))))
+     (default-value (pipefs-configuration))
+     (description "Mount the pipefs file system, which is used to transfer
+NFS-related data between the kernel and user-space programs."))))
 
 
 
@@ -174,7 +179,10 @@
                (match values
                  ((first . rest) first)
                  (_ config))))
-     (default-value (gss-configuration)))))
+     (default-value (gss-configuration))
+     (description "Run the @dfn{global security system} (GSS) daemon, which
+provides strong security for protocols based on remote procedure calls (ONC
+RPC)."))))
 
 
 
@@ -239,7 +247,10 @@
      ;; override it with the value returned by the extending service.
      (compose identity)
      (extend (lambda (config values) (first values)))
-     (default-value (idmap-configuration)))))
+     (default-value (idmap-configuration))
+     (description "Run the idmap daemon, which provides a mapping between user
+IDs and user names.  It is typically required to access file systems mounted
+via NFSv4."))))
 
 (define-record-type* <nfs-configuration>
   nfs-configuration make-nfs-configuration
diff --git a/gnu/services/spice.scm b/gnu/services/spice.scm
index 3b88e29043..e5ec46b9b5 100644
--- a/gnu/services/spice.scm
+++ b/gnu/services/spice.scm
@@ -69,7 +69,10 @@
     (list (service-extension shepherd-root-service-type
                              spice-vdagent-shepherd-service)
           (service-extension profile-service-type
-                             spice-vdagent-profile)))))
+                             spice-vdagent-profile)))
+   (description "Start the @command{vdagentd} and @command{vdagent} daemons
+from the @code{spice-vdagent} package to enable window resizing and clipboard
+sharing for @acronym{VM, virtual machine} guests.")))
 
 (define* (spice-vdagent-service
           #:optional (config (spice-vdagent-configuration)))
diff --git a/gnu/services/sysctl.scm b/gnu/services/sysctl.scm
index 80ed2ff46f..05fe6f4f7f 100644
--- a/gnu/services/sysctl.scm
+++ b/gnu/services/sysctl.scm
@@ -81,4 +81,6 @@
               (inherit config)
               (settings (append (sysctl-configuration-settings config)
                                 settings)))))
-   (default-value (sysctl-configuration))))
+   (default-value (sysctl-configuration))
+   (description "Set Linux kernel parameters under @file{/proc/sys} at system
+startup time.")))
diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm
index 70d4d6c34c..41afe451c1 100644
--- a/gnu/services/virtualization.scm
+++ b/gnu/services/virtualization.scm
@@ -501,7 +501,10 @@ potential infinite waits blocking libvirt."))
                                      libvirt-shepherd-service)
                   (service-extension account-service-type
                                      (const %libvirt-accounts))))
-                (default-value (libvirt-configuration))))
+                (default-value (libvirt-configuration))
+                (description "Run @command{libvirtd}, a daemon of the libvirt
+virtualization management system.  This daemon runs on host servers and
+performs required management tasks for virtualized guests.")))
 
 
 (define-record-type* <virtlog-configuration>
@@ -550,7 +553,9 @@ potential infinite waits blocking libvirt."))
                  (list
                   (service-extension shepherd-root-service-type
                                      virtlogd-shepherd-service)))
-                (default-value (virtlog-configuration))))
+                (default-value (virtlog-configuration))
+                (description "Run @command{virtlogd}, a daemon libvirt that is
+used to manage logs from @acronym{VM, virtual machine} consoles.")))
 
 (define (generate-libvirt-documentation)
   (generate-documentation
diff --git a/gnu/services/vpn.scm b/gnu/services/vpn.scm
index b24e9cffb3..a3dc96c1a2 100644
--- a/gnu/services/vpn.scm
+++ b/gnu/services/vpn.scm
@@ -522,7 +522,9 @@ is truncated and rewritten every minute.")
                        (service-extension account-service-type
                                           (const %openvpn-accounts))
                        (service-extension activation-service-type
-                                          (const %openvpn-activation))))))
+                                          (const %openvpn-activation))))
+                (description "Run the OpenVPN server, which allows you to
+@emph{host} a @acronym{VPN, virtual private network}.")))
 
 (define openvpn-client-service-type
   (service-type (name 'openvpn-client)
@@ -532,7 +534,10 @@ is truncated and rewritten every minute.")
                        (service-extension account-service-type
                                           (const %openvpn-accounts))
                        (service-extension activation-service-type
-                                          (const %openvpn-activation))))))
+                                          (const %openvpn-activation))))
+                (description
+                 "Run the OpenVPN client service, which allows you to connect
+to an existing @acronym{VPN, virtual private network}.")))
 
 (define* (openvpn-client-service #:key (config (openvpn-client-configuration)))
   (validate-configuration config openvpn-client-configuration-fields)
@@ -819,4 +824,6 @@ PostUp = ~a set %i private-key ~a
     (list (service-extension shepherd-root-service-type
                              wireguard-shepherd-service)
           (service-extension activation-service-type
-                             wireguard-activation)))))
+                             wireguard-activation)))
+   (description "Set up Wireguard @acronym{VPN, Virtual Private Network}
+tunnels.")))
diff --git a/gnu/services/web.scm b/gnu/services/web.scm
index 2c7df19222..4f06d4e0bb 100644
--- a/gnu/services/web.scm
+++ b/gnu/services/web.scm
@@ -1,6 +1,6 @@
 ;;; GNU Guix --- Functional package management for GNU
 ;;; Copyright © 2015 David Thompson <davet@gnu.org>
-;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2015-2022 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2016 Nikita <nikita@n0.is>
 ;;; Copyright © 2016, 2017, 2018 Julien Lepiller <julien@lepiller.eu>
 ;;; Copyright © 2017, 2018, 2019 Christopher Baines <mail@cbaines.net>
@@ -486,7 +486,8 @@
                 (compose concatenate)
                 (extend httpd-process-extensions)
                 (default-value
-                  (httpd-configuration))))
+                  (httpd-configuration))
+                (description "Run the Apache httpd Web server.")))
 
 (define-record-type* <nginx-server-configuration>
   nginx-server-configuration make-nginx-server-configuration
@@ -867,7 +868,9 @@ of index files."
                                           fcgiwrap-accounts)
                        (service-extension activation-service-type
                                           fcgiwrap-activation)))
-                (default-value (fcgiwrap-configuration))))
+                (default-value (fcgiwrap-configuration))
+                (description "Run FastCGI, an interface between the front-end
+and the back-end of a Web service.")))
 
 (define-record-type* <php-fpm-configuration> php-fpm-configuration
   make-php-fpm-configuration
@@ -2010,10 +2013,12 @@ root=/srv/gemini
 
 (define agate-service-type
   (service-type
-   (name 'guix)
+   (name 'agate)
    (extensions
     (list (service-extension account-service-type
                              agate-accounts)
           (service-extension shepherd-root-service-type
                              agate-shepherd-service)))
-   (default-value (agate-configuration))))
+   (default-value (agate-configuration))
+   (description "Run Agate, a simple Gemini protocol server written in
+Rust.")))