summaryrefslogtreecommitdiff
path: root/gnu/services
Commit message (Expand)AuthorAgeFilesLines
* services: 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ès2018-09-061-1/+2
* services: 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 Lassieur2018-08-311-1/+15
* services: 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 Pykhalov2018-08-301-1/+167
* services: 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ès2018-08-281-1/+9
* services: 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 Marusich2018-08-281-2/+8
* services: tor: Rename activation procedure.•••* gnu/services/networking.scm: Rename the procedure tor-hidden-service-activation to tor-activation. Chris Marusich2018-08-281-2/+2
* services: 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 Marusich2018-08-281-3/+19
* gnu: 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 Marusich2018-08-201-8/+17
* services: 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 Lassieur2018-08-161-2/+2
* gnu: 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 Isaac2018-08-161-0/+84
* services: nginx: Use 'invoke' rather than 'system*'.•••* gnu/services/web.scm (nginx-shepherd-service): Replace SYSTEM* with INVOKE. Clément Lassieur2018-08-131-6/+5
* services: postgresql: Get the Shepherd to respawn PostgreSQL.•••* gnu/services/databases.scm (postgresql-shepherd-service): Change 'start' to return the PID. Clément Lassieur2018-08-131-1/+8
* services: prosody: Get the Shepherd to respawn Prosody.•••* gnu/services/messaging.scm (prosody-shepherd-service): Return the PID when the action is "start". Clément Lassieur2018-08-131-1/+8
* services: prosody: Use 'invoke' rather than 'system*'.•••* gnu/services/messaging.scm (prosody-shepherd-service): Replace SYSTEM* with INVOKE. Clément Lassieur2018-08-131-1/+1
* services: cgit: Disable repo booleans having a global counterpart.•••Otherwise the global counterpart is never taken into account. * doc/guix.texi (Version Control Services): Update accordingly. * gnu/services/cgit.scm (repo-boolean?, serialize-repo-boolean): Use the DEFINE-MAYBE macro to allow for the 'disabled value. (repository-cgit-configuration)[enable-commit-graph?, enable-log-filecount?, enable-log-linecount?, enable-remote-branches?, enable-subject-links?, enable-html-serving?]: Change default value to 'disabled. Clément Lassieur2018-08-131-6/+7
* services: file-system-shepherd-service: Require "udev" service.•••Fixes <https://bugs.gnu.org/32313>. Reported by Brendan Tildesley <brendan.tildesley@openmailbox.org> * gnu/services/base.scm (file-system-shepherd-service): Require "udev" service. Danny Milosavljevic2018-08-021-1/+1
* services: openssh: Add forwarding options.•••* gnu/services/ssh.scm (<openssh-configuration>)[allow-agent-forwarding?] [allow-tcp-forwarding?, gateway-ports?]: New fields. (openssh-config-file): Handle them. * doc/guix.texi (Networking Services): Adjust accordingly. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Eric Brown2018-07-291-0/+22
* gnu: services: Fix openssh service start error.•••* gnu/services/ssh.scm (openssh-shepherd-service): Require loopback. Julien Lepiller2018-07-181-1/+1
* services: cuirass: Remove the LOAD-PATH option.•••* gnu/services/cuirass.scm (<cuirass-configuration>, cuirass-shepherd-service): Remove the LOAD-PATH option. Clément Lassieur2018-07-161-8/+4
* gnu: services: Export virtlog-configuration.•••* gnu/services/virtualization.scm (virtlog-configuration): Export. Julien Lepiller2018-07-141-0/+1
* services: mcron: Add 'schedule' action.•••Inspired by <https://lists.gnu.org/archive/html/help-guix/2018-07/msg00035.html>. * gnu/services/mcron.scm (shepherd-schedule-action): New procedure. (mcron-shepherd-services): Add 'actions' field. * gnu/tests/base.scm (run-mcron-test)["schedule action"]: New test. * doc/guix.texi (Scheduled Job Execution): Mention 'herd schedule'. Ludovic Courtès2018-07-132-17/+62
* services: shepherd: Support custom actions.•••* gnu/services/shepherd.scm (<shepherd-service>)[actions]: New field. (<shepherd-action>): New record type. (shepherd-service-file): Pass #:actions to 'make'. * doc/guix.texi (Shepherd Services): Document custom actions. Ludovic Courtès2018-07-131-1/+22
* services: Add prometheus-node-exporter-service-type.•••* gnu/services/monitoring.scm (prometheus-node-exporter-service-type): New variable. (<prometheus-node-exporter-configuration>): New record type. (prometheus-node-exporter-shepherd-service): New procedure. * gnu/doc/guix.texi (Monitoring Services): Document it. * gnu/tests/monitoring.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add test module. Gábor Boskovits2018-07-091-1/+37
* services: mingetty: Use '--nohangup'.•••See the discussion at <https://lists.gnu.org/archive/html/guix-devel/2018-07/msg00049.html>. * gnu/services/base.scm (mingetty-shepherd-service): Pass "--nohangup" to mingetty. Ludovic Courtès2018-07-051-1/+8
* services: alsa-service-type: Fix the loading of 'pulse' plugin.•••Fixes <https://bugs.gnu.org/31591>. * gnu/services/sound.scm (<alsa-configuration>)[alsa-plugins]: New field. (alsa-config-file): Use 'pcm_type.pulse' and 'ctl_type.pulse' to specify file paths to the 'pulse' plugin. * doc/guix.texi (Sound Services): Document this. Co-authored-by: 宋文武 <iyzsong@member.fsf.org> Oleg Pykhalov2018-06-251-10/+24
* services: Fix "authentication" service name.•••Follow-up to 7f93bbd5aadf0427190769fba8f478c29e37b4f4. * gnu/services/authentication.scm: Fix module name. Danny Milosavljevic2018-06-231-1/+1
* services: Add fingerprint identification service.•••* gnu/services/authentication.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (Miscellaneous Services): Document it. Danny Milosavljevic2018-06-231-0/+41
* services: cuirass: Add description.•••* gnu/services/cuirass.scm (cuirass-service-type): Add description. Ricardo Wurmus2018-06-221-1/+4
* services: cups: Add description.•••* gnu/services/cups.scm (cups-service-type): Add description. Ricardo Wurmus2018-06-221-1/+4
* services: boot: Take gexps instead of monadic gexps.•••* gnu/services.scm (compute-boot-script): Rename 'mexps' to 'gexps' and remove 'mlet' form. (boot-service-type): Update comment. (cleanup-gexp): Remove 'with-monad' and 'return'. (activation-script): Rewrite in non-monadic style: use 'scheme-file' instead of 'gexp->file'. (gexps->activation-gexp): Remove 'mlet', return a gexp. * gnu/services/shepherd.scm (shepherd-boot-gexp): Remove 'with-monad' and 'return'. * gnu/system.scm (operating-system-boot-script): Remove outdated comment. * gnu/tests/base.scm (%cleanup-os): For 'dirty-service', remove 'with-monad' and 'return'. Ludovic Courtès2018-06-201-21/+19
* services: Fix GPLv3 header in cuirass and pm modules.•••* gnu/services/cuirass.scm, gnu/services/pm.scm: Adjust to canonical GPLv3 header used throughout Guix. Signed-off-by: Leo Famulari <leo@famulari.name> Nils Gillmann2018-06-202-2/+2
* store-copy: 'read-reference-graph' returns a list of records.•••The previous implementation of 'read-reference-graph' was good enough for many use cases, but it discarded the graph structure, which is useful information in some cases. * guix/build/store-copy.scm (<store-info>): New record type. (read-reference-graph): Rewrite to return a list of <store-info>. (closure-size, populate-store): Adjust accordingly. * gnu/services/base.scm (references-file): Adjust accordingly. * gnu/system/vm.scm (system-docker-image): Likewise. * guix/scripts/pack.scm (squashfs-image, docker-image): Likewise. * tests/gexp.scm ("gexp->derivation #:references-graphs"): Likewise. Ludovic Courtès2018-06-141-2/+3
* services: tor: Mark end of auto-generated configuration block.•••* gnu/services/networking.scm (tor-configuration->torrc): Clearly demarcate auto-generated lines. Tobias Geerinckx-Rice2018-06-141-1/+5
* services: nginx: Support extra content in the http block.•••This helpful when adding content to the nginx configuration file, which isn't supported by the record type used for the configuration. For example, like adding proxy_cache_path configuration. * gnu/packages/web.scm (<nginx-configuration>): Add new extra-content field. (nginx-configuration-extra-content): New field accessor. (default-nginx-config): Add support for the extra-content field. * doc/guix.texi (NGINX): Document the new extra-content field. Christopher Baines2018-06-121-2/+7
* services: dnsmasq-service-type: Add default configuration and description.•••* gnu/services/dns.scm (dnsmasq-service-type) [default-value, description]: New fields. 宋文武2018-06-081-1/+3
* services: dnsmasq: Use 'negative-cache?' instead of 'no-negcache?'.•••The 'no-negcache?' option is mapped to the '--no-negcache' command-line argument directly, but we're in the scheme world, where the general guideline is to avoid double-negations in identifiers. * gnu/services/dns.scm <dnsmasq-configuration>: Replace the 'no-negcache?' field with 'negative-cache?'. * doc/guix.texi (DNS Services)[Dnsmasq Service]: Adjust accordingly. 宋文武2018-06-081-6/+6
* services: Add dnsmasq-service-type.•••* gnu/services/dns.scm (dnsmasq-service-type): New variable. (<dnsmasq-configuration>): New record type. (dnsmasq-shepherd-service): New procedure. * doc/guix.texi (DNS Services): Document it. 宋文武2018-06-051-1/+78
* services: Add hpcguix-web.•••* gnu/service/web.scm (<hpcguix-web-configuration>): New record-type. (%hpcguix-web-accounts): New variable. (%hpcguix-web-activation,hpcguix-web-shepherd-service, hpcguix-web-service-type): New procedures. * gnu/tests/web.scm (run-hpcguix-web-server-test): New procedure. (%hpcguix-web-specs, %hpcguix-web-os, %test-hpcguix-web): New variable. * doc/guix.texi (Web Services): Add 'hpcguix-web'. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Rouby Pierre-Antoine2018-06-011-1/+71
* services: fstab: Properly handle file system labels.•••Fixes a regression introduced in a5acc17a3c10a3779b5b8b1a2565ef130be77e51. Reported by Tobias Geerinckx-Rice <me@tobias.gr>. * gnu/services/base.scm (file-system->fstab-entry): Pass LABEL, not FILE-SYSTEM, to 'file-system-label->string'. Ludovic Courtès2018-05-291-1/+1
* file-systems: Remove 'title' field and add <file-system-label>.•••The 'title' field was easily overlooked and was an endless source of confusion. Now, the value of the 'device' field is self-contained. * gnu/system/file-systems.scm (<file-system>): Change constructor name to '%file-system'. [title]: Remove. (<file-system-label>): New record type with printer. (report-deprecation, device-expression) (process-file-system-declaration, file-system): New macros. (file-system-title): New procedure. (file-system->spec, spec->file-system): Adjust to handle <file-system-label>. * gnu/system.scm (bootable-kernel-arguments): Add case for 'file-system-label?'. (read-boot-parameters): Likewise. (mapped-device-user): Avoid 'file-system-title'. (fs->boot-device): Remove. (operating-system-boot-parameters): Use 'file-system-device' instead of 'fs->boot-device'. (device->sexp): Add case for 'file-system-label?'. * gnu/bootloader/grub.scm (grub-root-search): Add case for 'file-system-label?'. * gnu/system/examples/bare-bones.tmpl, gnu/system/examples/beaglebone-black.tmpl, gnu/system/examples/lightweight-desktop.tmpl, gnu/system/examples/vm-image.tmpl: Remove uses of 'title'. * gnu/system/vm.scm (virtualized-operating-system): Remove uses of 'file-system-title'. * guix/scripts/system.scm (check-file-system-availability): Likewise, and adjust fix-it hint. (check-initrd-modules)[file-system-/dev]: Likewise. * gnu/build/file-systems.scm (canonicalize-device-spec): Remove 'title' parameter. [canonical-title]: Remove. Match on SPEC's type rather than on CANONICAL-TITLE. (mount-file-system): Adjust caller. * gnu/build/linux-boot.scm (boot-system): Interpret ROOT here. * gnu/services/base.scm (file-system->fstab-entry): Remove use of 'file-system-title'. * doc/guix.texi (File Systems): Remove documentation of the 'title' field. Rewrite documentation of 'device' and document 'file-system-label'. Ludovic Courtès2018-05-281-9/+8
* gnu: mate-desktop-service-type: Add description.•••* gnu/services/desktop.scm (mate-desktop-service-type): Add description. Ricardo Wurmus2018-05-241-1/+2
* gnu: gnome-desktop-service-type: Add description.•••* gnu/services/desktop.scm (gnome-desktop-service-type): Add description. Ricardo Wurmus2018-05-241-1/+3
* services: connman: Add polkit hooks for connman.•••* gnu/services/networking.scm (connman-service-type): Extend the polkit-service-type with actions from connman. Efraim Flashner2018-05-201-0/+2
* services: openntpd: Add openntpd to the system profile.•••* gnu/services/networking.scm (openntpd-service-type): Extend the profile-service-type and add openntpd to the system profile. Efraim Flashner2018-05-201-0/+2
* services: dbus: Search more directories for '.service' files.•••* gnu/services/dbus.scm (system-service-directory): Remove one level of directories when searching for '.service' files. Efraim Flashner2018-05-201-1/+1
* services: connman: Add default configuration to the connman-service-type.•••* gnu/services/networking.scm (connman-service-type)[default-value]: New field. Efraim Flashner2018-05-201-0/+1
* services: Add Enlightenment desktop service.•••* gnu/services/desktop.scm (<enlightenment-desktop-configuration>, enlightenment-desktop-service-type): New variables. * doc/guix.texi (Desktop Services): Document the service. * NEWS: Mention it. Efraim Flashner2018-05-201-0/+62
* services: cgit: Make project-list permit a file-object.•••Instead of having the service manage the list, it's useful to be able to point this at an existing file, for example, when using cgit together with gitolite. * gnu/services/cgit.scm (project-list?): New procedure. (serialize-project-list): Handle file-object values. (<cgit-configuration>): Change the predicate for project-list to allow lists and file-objects. Christopher Baines2018-05-181-2/+8
* services: cgit: Improve handling of extra-options.•••* gnu/services/cgit.scm (serialize-cgit-configuration): Add the extra options, one per line, before the scan-path, as this makes it possible to use the extra-options to affect the global behaviour for repositories. (serialize-extra-options): New procedure. Christopher Baines2018-05-181-0/+7
* gnu: services: Fix wesnothd-configuration? symbol export.•••* gnu/services/games.scm: Export wesnothd-configuration?, not the non-existent wesnoth-configuration?. Arun Isaac2018-05-141-1/+1