summaryrefslogtreecommitdiff
path: root/gnu/services
AgeCommit message (Collapse)Author
2018-08-13services: cgit: Disable repo booleans having a global counterpart.Clément Lassieur
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.
2018-08-02services: file-system-shepherd-service: Require "udev" service.Danny Milosavljevic
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.
2018-07-29services: openssh: Add forwarding options.Eric Brown
* 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>
2018-07-18gnu: services: Fix openssh service start error.Julien Lepiller
* gnu/services/ssh.scm (openssh-shepherd-service): Require loopback.
2018-07-16services: cuirass: Remove the LOAD-PATH option.Clément Lassieur
* gnu/services/cuirass.scm (<cuirass-configuration>, cuirass-shepherd-service): Remove the LOAD-PATH option.
2018-07-14gnu: services: Export virtlog-configuration.Julien Lepiller
* gnu/services/virtualization.scm (virtlog-configuration): Export.
2018-07-13services: mcron: Add 'schedule' action.Ludovic Courtès
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'.
2018-07-13services: shepherd: Support custom actions.Ludovic Courtès
* 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.
2018-07-09services: Add prometheus-node-exporter-service-type.Gábor Boskovits
* 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.
2018-07-05services: mingetty: Use '--nohangup'.Ludovic Courtès
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.
2018-06-25services: alsa-service-type: Fix the loading of 'pulse' plugin.Oleg Pykhalov
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>
2018-06-23services: Fix "authentication" service name.Danny Milosavljevic
Follow-up to 7f93bbd5aadf0427190769fba8f478c29e37b4f4. * gnu/services/authentication.scm: Fix module name.
2018-06-23services: Add fingerprint identification service.Danny Milosavljevic
* gnu/services/authentication.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (Miscellaneous Services): Document it.
2018-06-22services: cuirass: Add description.Ricardo Wurmus
* gnu/services/cuirass.scm (cuirass-service-type): Add description.
2018-06-22services: cups: Add description.Ricardo Wurmus
* gnu/services/cups.scm (cups-service-type): Add description.
2018-06-20services: boot: Take gexps instead of monadic gexps.Ludovic Courtès
* 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'.
2018-06-20services: Fix GPLv3 header in cuirass and pm modules.Nils Gillmann
* gnu/services/cuirass.scm, gnu/services/pm.scm: Adjust to canonical GPLv3 header used throughout Guix. Signed-off-by: Leo Famulari <leo@famulari.name>
2018-06-14store-copy: 'read-reference-graph' returns a list of records.Ludovic Courtès
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.
2018-06-14services: tor: Mark end of auto-generated configuration block.Tobias Geerinckx-Rice
* gnu/services/networking.scm (tor-configuration->torrc): Clearly demarcate auto-generated lines.
2018-06-12services: nginx: Support extra content in the http block.Christopher Baines
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.
2018-06-08services: dnsmasq-service-type: Add default configuration and description.宋文武
* gnu/services/dns.scm (dnsmasq-service-type) [default-value, description]: New fields.
2018-06-08services: 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-05services: 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-01services: Add hpcguix-web.Rouby Pierre-Antoine
* 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>
2018-05-29services: fstab: Properly handle file system labels.Ludovic Courtès
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'.
2018-05-28file-systems: Remove 'title' field and add <file-system-label>.Ludovic Courtès
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'.
2018-05-24gnu: mate-desktop-service-type: Add description.Ricardo Wurmus
* gnu/services/desktop.scm (mate-desktop-service-type): Add description.
2018-05-24gnu: gnome-desktop-service-type: Add description.Ricardo Wurmus
* gnu/services/desktop.scm (gnome-desktop-service-type): Add description.
2018-05-20services: connman: Add polkit hooks for connman.Efraim Flashner
* gnu/services/networking.scm (connman-service-type): Extend the polkit-service-type with actions from connman.
2018-05-20services: openntpd: Add openntpd to the system profile.Efraim Flashner
* gnu/services/networking.scm (openntpd-service-type): Extend the profile-service-type and add openntpd to the system profile.
2018-05-20services: dbus: Search more directories for '.service' files.Efraim Flashner
* gnu/services/dbus.scm (system-service-directory): Remove one level of directories when searching for '.service' files.
2018-05-20services: connman: Add default configuration to the connman-service-type.Efraim Flashner
* gnu/services/networking.scm (connman-service-type)[default-value]: New field.
2018-05-20services: Add Enlightenment desktop service.Efraim Flashner
* gnu/services/desktop.scm (<enlightenment-desktop-configuration>, enlightenment-desktop-service-type): New variables. * doc/guix.texi (Desktop Services): Document the service. * NEWS: Mention it.
2018-05-18services: cgit: Make project-list permit a file-object.Christopher Baines
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.
2018-05-18services: cgit: Improve handling of extra-options.Christopher Baines
* 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.
2018-05-14gnu: services: Fix wesnothd-configuration? symbol export.Arun Isaac
* gnu/services/games.scm: Export wesnothd-configuration?, not the non-existent wesnoth-configuration?.
2018-05-11services: desktop: Add alsa-service-type.Oleg Pykhalov
* gnu/services/desktop.scm (%desktop-services): Add 'alsa-service-type'.
2018-05-11services: bitlbee: Add plugins.Pierre-Antoine Rouby
* doc/guix.texi (Bitlbee Service): Add plugins. * gnu/services/messaging.scm (<bitlbee-configuration>): Add plugins argument. (bitlbee-shepherd-service): Update config file. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2018-05-02gnu: Add sound service.Oleg Pykhalov
* gnu/services/sound.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add this. * doc/guix.texi (Sound Services): New chapter.
2018-05-01services: prosody: Add a default value to the prosody-service-type.Clément Lassieur
* gnu/services/messaging.scm (prosody-service-type)[default-value]: New field.
2018-05-01services: prosody: Add a description to the prosody-service-type.Clément Lassieur
* gnu/services/messaging.scm (prosody-service-type)[description]: New field.
2018-04-30services: gpm: Provide a default value and document 'gpm-service-type'.Ludovic Courtès
* gnu/services/base.scm (%default-gpm-options): New variable. (<gpm-configuration>)[gpm, options]: Add default values. (gpm-service-type)[default-value]: New field. (gpm-service): Use %DEFAULT-GPM-OPTIONS and mark as deprecated. * doc/guix.texi (Base Services): Document 'gpm-service-type' and 'gpm-configuration'. Remove 'gpm-service'.
2018-04-30services: Re-export static-networking-service, static-networking-service-type.Danny Milosavljevic
* gnu/services/networking.scm: Re-export static-networking-service, static-networking-service-type.
2018-04-30services: Add modem-manager-service-type.Danny Milosavljevic
* gnu/services/networking.scm (modem-manager-service-type): New variable. (<modem-manager-configuration>): New variable. (modem-manager-configuration): New procedure. (modem-manager-configuration?): New procedure. * doc/guix.texi (Networking Services): Document it. * gnu/tests/networking.scm: Import (gnu services base).
2018-04-30services: Move static-networking to (gnu services base).Danny Milosavljevic
* gnu/services/networking.scm (static-networking, static-networking?, static-networking-interface, static-networking-ip, static-networking-netmask, static-networking-gateway, static-networking-requirement, static-networking-service, static-networking-service-type): Move to... * gnu/services/base.scm: ...here.
2018-04-27services: Set default <dhcpd-configuration> version to "4".Chris Marusich
* gnu/services/networking.scm (<dhcpd-configuration>) <version>: Set the default to "4" instead of "6"; both our manual and upstream says the default should be "4".
2018-04-21services: Add dhcpd-service-type and <dhcpd-configuration>.Chris Marusich
* doc/guix.texi (Networking Services): Document it. * gnu/services/networking.scm (dhcpd-service-type): Add it. (dhcpd-configuration, dhcpd-configuration?): Add it. (dhcpd-configuration-package): Add it. (dhcpd-configuration-config-file): Add it. (dhcpd-configuration-version): Add it. (dhcpd-configuration-run-directory): Add it. (dhcpd-configuration-lease-file): Add it. (dhcpd-configuration-pid-file): Add it. (dhcpd-configuration-interfaces): Add it. * gnu/tests/networking.scm (minimal-dhcpd-v4-config-file) (dhcpd-v4-configuration, %dhcpd-os, run-dhcpd-test, %test-dhcpd): New variables.
2018-04-11services: cgit: Add support for project-list.Clément Lassieur
* doc/guix.texi (Version Control Services): Update accordingly. * gnu/services/cgit.scm (cgit-configuration)[project-list]: New field. (serialize-project-list): New procedure that uses PLAIN-FILE to generate a file from the string list given by the user as input. (serialize-cgit-configuration): Make sure to serialize 'project-list' before 'repostory-directory'.
2018-04-11services: cgit: Enforce serialization order.Clément Lassieur
* gnu/services/cgit.scm (serialize-cgit-configuration): New procedure that serializes fields with a precise order. (cgit-activation): Replace the generic SERIALIZE-CONFIGURATION with SERIALIZE-CGIT-CONFIGURATION.
2018-04-11services: cgit: Add support for file-like objects.Clément Lassieur
* doc/guix.texi (Version Control Services): Update accordingly. * gnu/services/cgit.scm (serialize-field, serialize-string, serialize-boolean, serialize-integer, serialize-repository-cgit-configuration-list, serialize-nginx-server-configuration-list, serialize-repo-field, serialize-repo-boolean, serialize-repo-integer, serialize-module-link-path, serialize-repository-directory, serialize-mimetype-alist): Return strings or string-valued gexps and stop printing. (repository-cgit-configuration)[source-filter, about-filter, commit-filter, logo, owner-filter], (cgit-configuration)[auth-filter, commit-filter, css, email-filter, favicon, include, logo, owner-filter, mimetype-file, readme, source-filter]: Replace STRING with FILE-OBJECT. (file-object?, serialize-file-object, repo-file-object?, serialize-repo-file-object): New procedures. (cgit-activation): Use SERIALIZE-CONFIGURATION's return value with MIXED-TEXT-FILE instead of using its output with PLAIN-FILE.