aboutsummaryrefslogtreecommitdiff
path: root/gnu/services
Commit message (Collapse)AuthorAge
* services: zabbix-front-end: Tweak error and hint messages.Ludovic Courtès2018-12-20
| | | | | * gnu/services/monitoring.scm (zabbix-front-end-config): Adjust error and hint mssages.
* services: zabbix-front-end: Improve hint and error messages.Oleg Pykhalov2018-12-19
| | | | | * gnu/services/monitoring.scm (zabbix-front-end-config): Improve hint and error messages.
* file-systems: Spawn a REPL only when interaction is possible.Ludovic Courtès2018-12-18
| | | | | | | | | | | Fixes <https://bugs.gnu.org/23697>. Reported by Jan Nieuwenhuizen <janneke@gnu.org>. * gnu/build/file-systems.scm (check-file-system): Call 'start-repl' only if current-input-port passes 'isatty?'. * gnu/services/shepherd.scm (shepherd-configuration-file): After 'for-each' expression, call 'redirect-port'. * gnu/tests/base.scm (run-basic-test)["stdin is /dev/null"]: New test.
* services: udev: Add 'rules' action.Ludovic Courtès2018-12-17
| | | | | | * gnu/services/base.scm (udev-shepherd-service): Add 'actions' field. * doc/guix.texi (Base Services): Move "@end deffn" after 'udev-service' definition. Mention 'herd rules udev'.
* services: monitoring: Add 'zabbix-front-end'.Oleg Pykhalov2018-12-17
| | | | | | | | | | * gnu/services/monitoring.scm (nginx-server-configuration-list?, serialize-nginx-server-configuration-list, zabbix-front-end-configuration, zabbix-front-end-config, zabbix-front-end-activation, generate-zabbix-front-end-documentation): New procedures. (%zabbix-front-end-configuration-nginx, %maintenance.inc.php, zabbix-front-end-service-type): New variables. * doc/guix.texi (Monitoring Services): Document this.
* services: php-fpm: Add 'timezone' configuration.Oleg Pykhalov2018-12-17
| | | | | | | * gnu/services/web.scm: (<php-fpm-configuration>)[timezone]: New record field. (default-php-fpm-config, php-fpm-shepherd-service, php-fpm-activation): Use this. * doc/guix.texi (Web Services): Document this.
* services: monitoring: Add 'zabbix-agent'.Oleg Pykhalov2018-12-17
| | | | | | | | | | | * gnu/services/monitoring.scm (zabbix-server-service-type, zabbix-agent-account, zabbix-agent-activation, zabbix-agent-config-file, zabbix-agent-shepherd-service, generate-zabbix-agent-documentation): New procedures. (zabbix-agent-service-type): New 'service-type'. * gnu/tests/monitoring.scm (run-zabbix-server-test): Test 'zabbix-agent'. (%zabbix-os): Add 'zabbix-agent' service. * doc/guix.texi (Monitoring Services): Document 'zabbix-agent'.
* services: monitoring: Add 'zabbix-server'.Oleg Pykhalov2018-12-17
| | | | | | | | | | | | | | | | | * gnu/services/monitoring.scm (uglify-field-name, serialize-field, serialize-number, serialize-list, serialize-string, group?, serialize-group, include-files?, serialize-include-files, zabbix-server-account, zabbix-server-config-file, zabbix-server-activation, zabbix-server-shepherd-service, generate-zabbix-server-documentation, extra-options, serialize-extra-options): New procedures. (zabbix-server-service-type): New variable. * gnu/tests/monitoring.scm (%psql-user-create-zabbix, %psql-db-zabbix-create-script, %psql-db-create-zabbix, %psql-db-import-zabbix, %zabbix-os, %test-zabbix): New variables. (run-zabbix-server-test): New procedure. * doc/guix.texi (Monitoring Services): Document 'zabbix-server'. squash! services: monitoring: Add 'zabbix-server'.
* services: guix: Run 'guix-daemon' in UTF-8 locale.Ludovic Courtès2018-12-10
| | | | | | | | Fixes <https://bugs.gnu.org/32942>. Reported by Julien Lepiller <julien@lepiller.eu>. * gnu/services/base.scm (guix-shepherd-service) <start>: In #:environment-variables, add "GUIX_LOCPATH" and "LC_ALL".
* services: guix-daemon: Fix authorization of multiple keys.Ludovic Courtès2018-12-05
| | | | | | | | | Previously, the 'unless (file-exists? "/etc/guix/acl")' guard would mean that only the first key in the list would get registered since were were generating one registration snippet per key. This fixes that. * gnu/services/base.scm (hydra-key-authorization): Change to be a 'for-each' loop iterating on #$KEYS.
* Remove most references to hydra.gnu.org.Ludovic Courtès2018-12-04
| | | | | | | | | | | | | | | * Makefile.am (assert-binaries-available): Don't mention hydra.gnu.org in comment. * build-aux/check-available-binaries.scm: Likewise. * build-aux/check-final-inputs-self-contained.scm: Likewise. * doc/guix.texi (SUBSTITUTE-SERVER): New variable. Use it throughout instead of "mirror.hydra.gnu.org". * doc/contributing.texi (Submitting Patches): Likewise. * gnu/services/base.scm (hydra-key-authorization) (guix-activation): Remove mentions of "hydra.gnu.org" in comments and messages. * gnu/system/install.scm (%installation-services): Likewise. * guix/scripts/size.scm (guix-size): Likewise.
* services: ddclient: Fix unrecognized keywords.Oleg Pykhalov2018-12-04
| | | | | | This patch fixes warnings about unrecognized keywords in logs. * gnu/services/dns.scm (serialize-field): Skip some field names.
* services: openssh: Install OpenSSH in the system profile.Ludovic Courtès2018-11-26
| | | | | | | | | | 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.
* services: wesnothd: Run as wesnothd user and group.Arun Isaac2018-11-20
| | | | | * gnu/services/games.scm (wesnothd-shepherd-service): Run as wesnothd user and group.
* services: nscd: Add 'invalidate' and 'statistics' actions.Ludovic Courtès2018-11-13
| | | | | | | | | | * 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.
* services: mcron: Fix typo in comment.Ludovic Courtès2018-11-13
| | | | * gnu/services/mcron.scm (shepherd-schedule-action): Fix typo in comment.
* services: dovecot: Set correct default value for the "auth" service.Clément Lassieur2018-11-10
| | | | | * gnu/services/mail.scm (dovecot-configuration): Set 'service-count' to 0 for the "auth" service.
* services: dovecot: Allow to set 'process-limit'.Clément Lassieur2018-11-10
| | | | | | | * 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.
* services: dovecot: Allow to set 'client-limit'.Clément Lassieur2018-11-10
| | | | | | | * 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.
* services: elogind: Fix spelling errors of left value fields in elogind ↵Stefan Stefanović2018-11-08
| | | | | | | | | | config file. * 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>
* services: cuirass: Add 'ttl' configuration field.Ludovic Courtès2018-11-07
| | | | | * gnu/services/cuirass.scm (<cuirass-configuration>)[ttl]: New field. (cuirass-shepherd-service): Honor it.
* services: kmscon: Add an auto-login option.Mathieu Othacehe2018-11-07
| | | | | | | | 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.
* services: kmscon: Do not switch to vt at start.Mathieu Othacehe2018-11-07
| | | | | * gnu/services/base.scm (kmscon-service-type): Add "--no-switchvt" to kmscon command.
* gnu: services: dns: Fix 'ddclient-activation'.Oleg Pykhalov2018-11-06
| | | | * gnu/services/dns.scm (ddclient-activation): Fix procedure.
* services: httpd: Allow using it with PHP.Florian Pelz2018-10-27
| | | | | | | * 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>
* services: ntp: Document 'ntp-service-type' and 'ntp-configuration'.Ludovic Courtès2018-10-19
| | | | | | | | | | | * 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'.
* services: WPA Supplicant: Fix syntax error.Marius Bakke2018-10-19
| | | | | | | | This is a followup to commit acce0a474c1493ab18912bc46285248e4ccb0314. No idea how these disappeared.. :-/ * gnu/services/networking.scm (wpa-supplicant-shepherd-service): Add missing parens.
* services: dhcp-client: Deprecate 'dhcp-client-service' procedure.Ludovic Courtès2018-10-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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'.
* services: wpa-supplicant: Extend to support configuration parameters.Marius Bakke2018-10-17
| | | | | | | | | | 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.
* services: rottlog: Use command strings in the mcron jobs.Ludovic Courtès2018-10-04
| | | | | | * 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").
* services: Add Gitolite.Christopher Baines2018-10-02
| | | | | | | | | | | * 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.
* Revert "services: Add Gitolite."Mark H Weaver2018-09-29
| | | | This reverts commit 258a6d944ed891fa92fa87a16731e5dfe0bac477.
* services: Add Gitolite.gitolite-serviceChristopher Baines2018-09-28
| | | | | | | | | | | * 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.
* services: virtual-terminal: Write to "default_utf8" only if necessary.Ludovic Courtès2018-09-26
| | | | | | | | 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.
* services: udev: Don't attempt to read "modules.devname" from a container.Ludovic Courtès2018-09-26
| | | | | | | | 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.
* services: shepherd: Add workaround for 0.5.0 in containers.Ludovic Courtès2018-09-26
| | | | | * gnu/services/shepherd.scm (%containerized-shepherd-service): New service. * gnu/system.scm (essential-services): Use it when CONTAINER? is true.
* services: dhcp-client: Use 'read-pid-file'.Ludovic Courtès2018-09-26
| | | | | * gnu/services/networking.scm (dhcp-client-service-type)[start]: Use 'read-pid-file' instead of the custom and possibly infinite loop.
* guix system: Load all services on reconfigure, not just stopped ones.Carlo Zancanaro2018-09-26
| | | | | | | | | | | | | | | | | 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>
* services: Add Varnish service.Marius Bakke2018-09-26
| | | | | | | | | * 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.
* gnu: services: Add iptables service.Arun Isaac2018-09-20
| | | | | | | | * 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.
* services: networking: Remove unbound variable reference in 'stop'.Ludovic Courtès2018-09-19
| | | | | | * gnu/services/base.scm (static-networking-shepherd-service): Remove spurious ":" in 'stop' method inadvertently introduced in commit c9436025a90b86047ba2203d58bbf238f8f9b2f9.
* services: udev: Simplify 'start' method.Ludovic Courtès2018-09-19
| | | | | | * 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'.
* services: hpcguix-web: Produce a log file and rotate it.Ludovic Courtès2018-09-10
| | | | | | | * 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.
* services: tailon: Move to (gnu services web).Ludovic Courtès2018-09-10
| | | | | | | | | | | | | | | 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.
* services: nginx: 'stop' returns #f.Ludovic Courtès2018-09-08
| | | | | | | | 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.
* services: nginx: Don't read PID file when passed a custom config file.Ludovic Courtès2018-09-08
| | | | | | | | 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.
* services: hpcguix-web: Set SSL_CERT_DIR.Ludovic Courtès2018-09-06
| | | | | | | | | | | 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.
* services: nginx: Get the Shepherd to respawn NGINX.Clément Lassieur2018-08-31
| | | | | | | * 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.
* services: Add ddclient service.Oleg Pykhalov2018-08-30
| | | | | | | | | | * 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.
* services: openssh: Add 'log-level' field.Ludovic Courtès2018-08-28
| | | | | | * gnu/services/ssh.scm (<openssh-configuration>)[log-level]: New field. (openssh-config-file): Honor it. * doc/guix.texi (Networking Services): Document it.