summaryrefslogtreecommitdiff
path: root/gnu/services
AgeCommit message (Expand)Author
2018-12-03Merge branch 'master' into stagingMarius Bakke
2018-11-26services: openssh: Install OpenSSH in the system profile....This ensures one can scp to or from the GuixSD machine that uses the service. * gnu/services/ssh.scm (openssh-service-type)[extensions]: Add PROFILE-SERVICE-TYPE extension. * gnu/system/examples/bare-bones.tmpl <packages>: Remove OPENSSH. * doc/guix.texi (Using the Configuration System): Adjust accordingly. Ludovic Courtès
2018-11-20services: wesnothd: Run as wesnothd user and group....* gnu/services/games.scm (wesnothd-shepherd-service): Run as wesnothd user and group. Arun Isaac
2018-11-13services: nscd: Add 'invalidate' and 'statistics' actions....* gnu/services/base.scm (nscd-action-procedure, nscd-actions): New procedures. (nscd-shepherd-service): Add 'modules' and 'actions' fields. * gnu/tests/base.scm (run-basic-test)["nscd invalidate action"] ["nscd invalidate action, wrong table"]: New tests. * doc/guix.texi (Services): Mention 'herd doc nscd action'. (Base Services): Document the actions. Ludovic Courtès
2018-11-13services: mcron: Fix typo in comment....* gnu/services/mcron.scm (shepherd-schedule-action): Fix typo in comment. Ludovic Courtès
2018-11-10services: dovecot: Set correct default value for the "auth" service....* gnu/services/mail.scm (dovecot-configuration): Set 'service-count' to 0 for the "auth" service. Clément Lassieur
2018-11-10services: dovecot: Allow to set 'process-limit'....* doc/guix.texi (Mail Services): Update accordingly. * gnu/services/mail.scm (service-configuration)[process-limit]: New field. (dovecot-configuration)[services]: Set 'process-limit' to its correct default value. Clément Lassieur
2018-11-10services: dovecot: Allow to set 'client-limit'....* doc/guix.texi (Mail Services): Update accordingly. * gnu/services/mail.scm (service-configuration)[client-limit]: New field. (dovecot-configuration)[services]: Set 'client-limit' to its correct default value. Clément Lassieur
2018-11-08services: elogind: Fix spelling errors of left value fields in elogind config......* gnu/services/desktop.scm (elogind-configuration-file)[ini-file]: Fix spelling of left value fields: InhibitDelayMaxSecs, HoldoffTimeoutSecs, IdleActionSeconds, RemoveIpc. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Stefan Stefanović
2018-11-07services: cuirass: Add 'ttl' configuration field....* gnu/services/cuirass.scm (<cuirass-configuration>)[ttl]: New field. (cuirass-shepherd-service): Honor it. Ludovic Courtès
2018-11-07services: kmscon: Add an auto-login option....Add an auto-login option that behaves as the one of mingetty-service. * gnu/services/base.scm (kmscon-configuration)[auto-login]: New field. (kmscon-service-type): Pass it to kmscon command. * doc/guix.texi (Base Services): Document it. Mathieu Othacehe
2018-11-07services: kmscon: Do not switch to vt at start....* gnu/services/base.scm (kmscon-service-type): Add "--no-switchvt" to kmscon command. Mathieu Othacehe
2018-11-06gnu: services: dns: Fix 'ddclient-activation'....* gnu/services/dns.scm (ddclient-activation): Fix procedure. Oleg Pykhalov
2018-10-27services: httpd: Allow using it with PHP....* gnu/services/web.scm (httpd): Make existing httpd-module API public. * doc/guix.texi (Apache HTTP Server): Document its usage with PHP-FPM. Signed-off-by: Christopher Baines <mail@cbaines.net> Florian Pelz
2018-10-19services: ntp: Document 'ntp-service-type' and 'ntp-configuration'....* gnu/services/networking.scm (<ntp-configuration>)[servers]: Add default value. (ntp-service-type)[default-value]: New field. (ntp-service): Mark as deprecated. * gnu/services/desktop.scm (%desktop-services): Use (service ntp-service-type) instead of calling 'ntp-service'. * doc/guix.texi (Networking Services): Document 'ntp-service-type' and 'ntp-configuration'. Ludovic Courtès
2018-10-19services: WPA Supplicant: Fix syntax error....This is a followup to commit acce0a474c1493ab18912bc46285248e4ccb0314. No idea how these disappeared.. :-/ * gnu/services/networking.scm (wpa-supplicant-shepherd-service): Add missing parens. Marius Bakke
2018-10-18services: dhcp-client: Deprecate 'dhcp-client-service' procedure....* gnu/services/networking.scm (dhcp-client-service-type): Add default value. * gnu/system/examples/bare-bones.tmpl: Use (service dhcp-client-service-type) instead of (dhcp-client-service). * gnu/system/examples/beaglebone-black.tmpl: Likewise. * gnu/tests/base.scm (%avahi-os): Likewise. * gnu/tests/databases.scm (%memcached-os): Likewise. (%mongodb-os): Likewise. * gnu/tests/dict.scm (%dicod-os): Likewise. * gnu/tests/mail.scm (%opensmtpd-os): Likewise. (%exim-os): Likewise. (%dovecot-os): Likewise. * gnu/tests/messaging.scm (run-xmpp-test): Likewise. (run-bitlbee-test): Likewise. * gnu/tests/monitoring.scm (%prometheus-node-exporter-os): Likewise. * gnu/tests/networking.scm (%inetd-os): Likewise. (run-iptables-test): Likewise. * gnu/tests/nfs.scm (%base-os): Likewise. * gnu/tests/rsync.scm (%rsync-os): Likewise. * gnu/tests/ssh.scm (run-ssh-test): Likewise. * gnu/tests/version-control.scm (%cgit-os): Likewise. (%git-http-os): Likewise. (%gitolite-os): Likewise. * gnu/tests/virtualization.scm (%libvirt-os): Likewise. * gnu/tests/web.scm (%httpd-os): Likewise. (%nginx-os): Likewise. (%varnish-os): Likewise. (%php-fpm-os): Likewise. (%hpcguix-web-os): Likewise. (%tailon-os): Likewise. * tests/guix-system.sh: Likewise. * doc/guix.texi (Networking Services): Document 'dhcp-client-service-type' and remove 'dhcp-client-service'. Ludovic Courtès
2018-10-17services: wpa-supplicant: Extend to support configuration parameters....This allows using WPA Supplicant "standalone" without an additional network manager. The default configuration is unchanged. * gnu/services/networking.scm (<wpa-supplicant-configuration>): New record type. (wpa-supplicant-shepherd-service): Pass configuration records to the daemon. (wpa-supplicant-service-type): Adjust accordingly. * doc/guix.texi (Networking Services): Document the new service type. Marius Bakke
2018-10-04gnu: postgresql: Add extension-packages....* gnu/services/databases.scm (postgresql-configuration): Add extension-packages. (postgresql-shepherd-service): New key #:extension-packages. * doc/guix.texi (Database Services): Document it. Julien Lepiller
2018-10-04services: rottlog: Use command strings in the mcron jobs....* gnu/services/admin.scm (default-jobs): Remove the lambda around "/…/bin/rottlog" to make "herd schedule mcron" more transparent (otherwise it just says "Lambda function"). Ludovic Courtès
2018-10-02services: Add Gitolite....* gnu/services/version-control.scm (<gitolite-configuration>, <gitolite-rc-file>): New record types. (gitolite-accounts, gitolite-activation): New procedures. (gitolite-service-type): New variables. * gnu/tests/version-control.scm (%gitolite-test-admin-keypair, %gitolite-os, %test-gitolite): New variables. (run-gitolite-test): New procedure. * doc/guix.texi (Version Control): Document the gitolite service. Christopher Baines
2018-09-29Revert "services: Add Gitolite."...This reverts commit 258a6d944ed891fa92fa87a16731e5dfe0bac477. Mark H Weaver
2018-09-28services: Add Gitolite....* gnu/services/version-control.scm (<gitolite-configuration>, <gitolite-rc-file>): New record types. (gitolite-accounts, gitolite-activation): New procedures. (gitolite-service-type): New variables. * gnu/tests/version-control.scm (%gitolite-test-admin-keypair, %gitolite-os, %test-gitolite): New variables. (run-gitolite-test): New procedure. * doc/guix.texi (Version Control): Document the gitolite service. Christopher Baines
2018-09-26services: virtual-terminal: Write to "default_utf8" only if necessary....Fixes a bug in containers whereby 'virtual-terminal' would always fail to start because writing to /sys/…/default_utf8 would fail with EROFS. * gnu/services/base.scm (virtual-terminal-service-type): Read from "default_utf8" before attempting to write to it. Ludovic Courtès
2018-09-26services: udev: Don't attempt to read "modules.devname" from a container....Fixes <https://bugs.gnu.org/32814>. Reported by Julien Lepiller <julien@lepiller.eu>. * gnu/services/base.scm (udev-shepherd-service)[start]: Check whether DIRECTORY exists and skip 'make-static-device-nodes' call if it doesn't. Ludovic Courtès
2018-09-26services: shepherd: Add workaround for 0.5.0 in containers....* gnu/services/shepherd.scm (%containerized-shepherd-service): New service. * gnu/system.scm (essential-services): Use it when CONTAINER? is true. Ludovic Courtès
2018-09-26services: dhcp-client: Use 'read-pid-file'....* gnu/services/networking.scm (dhcp-client-service-type)[start]: Use 'read-pid-file' instead of the custom and possibly infinite loop. Ludovic Courtès
2018-09-26guix system: Load all services on reconfigure, not just stopped ones....This uses the 'replacement' service slot introduced in the Shepherd version 0.5.0. * gnu/services/shepherd.scm (shepherd-service-upgrade): Return a list of services that need to be restarted to complete their upgrade. * guix/scripts/system.scm (call-with-service-upgrade-info): Rename an internal variable to reflect the change to shepherd-service-upgrade. (upgrade-shepherd-services): Call 'load-services/safe' instead of 'load-services'. Print a message about services that need to be manually restarted. * gnu/services/herd.scm (load-services/safe): New procedure. * doc/guix.texi (Invoking guix system): Document the new behaviour. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Carlo Zancanaro
2018-09-26services: Add Varnish service....* gnu/services/web.scm (<varnish-configuration>): New record type. (%varnish-accounts, %varnish-service-type): New variables. (varnish-shepherd-service): New procedure. * gnu/tests/web.scm (%varnish-vcl, %varnish-os): New variables. (%test-varnish): New test. * doc/guix.texi (Web Services): Document it. Marius Bakke
2018-09-20gnu: services: Add iptables service....* gnu/services/networking.scm (<iptables-configuration>): New record type. (iptables-service-type): New variable. * gnu/tests/networking.scm (run-iptables-test): New procedure. (%test-iptables): New variable. * doc/guix.texi (Networking Services): Document it. Arun Isaac
2018-09-19services: networking: Remove unbound variable reference in 'stop'....* gnu/services/base.scm (static-networking-shepherd-service): Remove spurious ":" in 'stop' method inadvertently introduced in commit c9436025a90b86047ba2203d58bbf238f8f9b2f9. Ludovic Courtès
2018-09-19services: udev: Simplify 'start' method....* gnu/services/base.scm (udev-shepherd-service)[start](find): Remove. (udev): Hardwire the eudev file name. Use 'fork+exec-command' instead of 'primitive-fork' and 'exec-command'. Ludovic Courtès
2018-09-10services: hpcguix-web: Produce a log file and rotate it....* gnu/services/web.scm (%hpcguix-web-log-file) (%hpcguix-web-log-rotations): New variables. (hpcguix-web-shepherd-service): Pass #:log-file. (hpcguix-web-service-type): Extend ROTTLOG-SERVICE-TYPE. Ludovic Courtès
2018-09-10services: tailon: Move to (gnu services web)....This allows (gnu services admin) to remain deeper in the module graph and to be used by (gnu services web). * gnu/services/admin.scm (<tailon-configuration-file>) (tailon-configuration-files-string) (tailon-configuration-file-compiler, <tailon-configuration>) (tailon-shepherd-service, %tailon-accounts) (tailon-service-type): Move to... * gnu/services/web.scm: ... here. * gnu/tests/admin.scm: Remove. Move test to... * gnu/tests/web.scm (%tailon-os) (run-tailon-test, %test-tailon): ... here. Ludovic Courtès
2018-09-08services: nginx: 'stop' returns #f....Previously we'd return #t, which the Shepherd would consider a failure to stop the service. * gnu/services/web.scm (nginx-shepherd-service): In 'nginx-action', return #f when stopping the service. Ludovic Courtès
2018-09-08services: nginx: Don't read PID file when passed a custom config file....Fixes <https://bugs.gnu.org/32665>. * gnu/services/web.scm (nginx-shepherd-service): Check whether FILE is true and don't read the PID file if it is; use 'read-pid-file' instead of a potentially endless loop. Ludovic Courtès
2018-09-06services: hpcguix-web: Set SSL_CERT_DIR....Previously Git pulls over HTTPS would fail with: guix/git.scm:132:7: In procedure update-cached-checkout: Throw to key `git-error' with args `(#<<git-error> code: -17 message: "the SSL certificate is invalid" class: 16>)'. * gnu/services/web.scm (hpcguix-web-shepherd-service): Pass "SSL_CERT_DIR=/etc/ssl/certs". * doc/guix.texi (Web Services): Mention certificates. Ludovic Courtès
2018-08-31services: nginx: Get the Shepherd to respawn NGINX....* gnu/services/web.scm (nginx-shepherd-service): Change 'start' (that is, all actions that don't send a signal to the master process) to return the PID. Wait until the PID file is created and contains an integer because it might be created after the parent process exits. Clément Lassieur
2018-08-30services: Add ddclient service....* gnu/services/dns.scm (ddclient-configuration, ddclient-service-type): New variables. (uglify-field-name, serialize-field, serialize-boolean, serialize-integer, serialize-string, serialize-list, serialize-extra-options, ddclient-activation, ddclient-shepherd-service, generate-ddclient-documentation): New procedures. * doc/guix.texi (DNS Services): Document it. Oleg Pykhalov
2018-08-28services: openssh: Add 'log-level' field....* gnu/services/ssh.scm (<openssh-configuration>)[log-level]: New field. (openssh-config-file): Honor it. * doc/guix.texi (Networking Services): Document it. Ludovic Courtès
2018-08-28services: tor: Make it easier to use UNIX sockets....* doc/guix.texi (Networking Services): Document it, and mention that tor-service is deprecated. * gnu/services/networking.scm (<tor-configuration>) <socks-socket-type>: New field. (tor-configuration->torrc): When socks-socket-type is 'unix, set SocksPort to UNIX domain socket /var/run/tor/socks-sock and set UnixSocksGroupWritable to 1. * gnu/tests/networking.scm (%tor-os/unix-socks-socket): Instead of using a custom config file, just set socks-socket-type to 'unix. Chris Marusich
2018-08-28services: tor: Rename activation procedure....* gnu/services/networking.scm: Rename the procedure tor-hidden-service-activation to tor-activation. Chris Marusich
2018-08-28services: tor: Add a system test....* gnu/services/networking.scm (tor-configuration->torrc): Set PidFile to /var/run/tor/tor.pid in the base torrc configuration. (tor-shepherd-service) <start>: Call make-forkexec-constructor/container with a new #:pid-file argument to tell Shepherd where to find the PID file. Add a a new <file-system-mapping> to its existing #:mappings argument to share /var/run/tor with the the container. (tor-hidden-services-activation): Update docstring. Create /var/run/tor and set its permissions so only the tor user can access it. * gnu/tests/networking.scm (%test-tor, %tor-os): New variables. (run-tor-test): New procedure. Chris Marusich
2018-08-20gnu: services: Fix pcscd activation bug....Fixes: <https://bugs.gnu.org/32478>. * gnu/services/security-token.scm (pcscd-activation): Idempotently create the /var/lib/pcsc symlink so that it does not fail when it already exists. Chris Marusich
2018-08-16services: cuirass: Put data in /var/lib to avoid removal at boot....Fixes <https://bugs.gnu.org/32330>. * gnu/services/cuirass.scm (<cuirass-configuration>)[database]: Change default from /var/run/cuirass/cuirass.db to /var/lib/cuirass/cuirass.db. (cuirass-account): Change home directory from /var/run/<user> to /var/lib/<user>. Clément Lassieur
2018-08-16gnu: services: Add pcscd service....* gnu/services/security-token.scm: New file. * gnu/tests/security-token.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Register new files. * doc/guix.texi (Miscellaneous Services): Document the service. Arun Isaac
2018-08-13services: nginx: Use 'invoke' rather than 'system*'....* gnu/services/web.scm (nginx-shepherd-service): Replace SYSTEM* with INVOKE. Clément Lassieur
2018-08-13services: postgresql: Get the Shepherd to respawn PostgreSQL....* gnu/services/databases.scm (postgresql-shepherd-service): Change 'start' to return the PID. Clément Lassieur
2018-08-13services: prosody: Get the Shepherd to respawn Prosody....* gnu/services/messaging.scm (prosody-shepherd-service): Return the PID when the action is "start". Clément Lassieur
2018-08-13services: prosody: Use 'invoke' rather than 'system*'....* gnu/services/messaging.scm (prosody-shepherd-service): Replace SYSTEM* with INVOKE. Clément Lassieur