aboutsummaryrefslogtreecommitdiff
path: root/gnu/services
Commit message (Collapse)AuthorAge
* services: mcron: Add 'schedule' action.Ludovic Courtès2018-07-13
| | | | | | | | | | 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'.
* services: shepherd: Support custom actions.Ludovic Courtès2018-07-13
| | | | | | | * 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.
* services: Add prometheus-node-exporter-service-type.Gábor Boskovits2018-07-09
| | | | | | | | | | * 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.
* services: mingetty: Use '--nohangup'.Ludovic Courtès2018-07-05
| | | | | | | | 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.
* services: alsa-service-type: Fix the loading of 'pulse' plugin.Oleg Pykhalov2018-06-25
| | | | | | | | | | | 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>
* services: Fix "authentication" service name.Danny Milosavljevic2018-06-23
| | | | | | Follow-up to 7f93bbd5aadf0427190769fba8f478c29e37b4f4. * gnu/services/authentication.scm: Fix module name.
* services: Add fingerprint identification service.Danny Milosavljevic2018-06-23
| | | | | | * gnu/services/authentication.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (Miscellaneous Services): Document it.
* services: cuirass: Add description.Ricardo Wurmus2018-06-22
| | | | * gnu/services/cuirass.scm (cuirass-service-type): Add description.
* services: cups: Add description.Ricardo Wurmus2018-06-22
| | | | * gnu/services/cups.scm (cups-service-type): Add description.
* services: boot: Take gexps instead of monadic gexps.Ludovic Courtès2018-06-20
| | | | | | | | | | | | | | | * 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'.
* services: Fix GPLv3 header in cuirass and pm modules.Nils Gillmann2018-06-20
| | | | | | | * gnu/services/cuirass.scm, gnu/services/pm.scm: Adjust to canonical GPLv3 header used throughout Guix. Signed-off-by: Leo Famulari <leo@famulari.name>
* store-copy: 'read-reference-graph' returns a list of records.Ludovic Courtès2018-06-14
| | | | | | | | | | | | | | 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.
* services: tor: Mark end of auto-generated configuration block.Tobias Geerinckx-Rice2018-06-14
| | | | | * gnu/services/networking.scm (tor-configuration->torrc): Clearly demarcate auto-generated lines.
* services: nginx: Support extra content in the http block.Christopher Baines2018-06-12
| | | | | | | | | | | 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.
* services: dnsmasq-service-type: Add default configuration and description.宋文武2018-06-08
| | | | | * gnu/services/dns.scm (dnsmasq-service-type) [default-value, description]: New fields.
* services: dnsmasq: Use 'negative-cache?' instead of 'no-negcache?'.宋文武2018-06-08
| | | | | | | | | | 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.
* services: Add dnsmasq-service-type.宋文武2018-06-05
| | | | | | | * 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.
* services: Add hpcguix-web.Rouby Pierre-Antoine2018-06-01
| | | | | | | | | | | | * 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>
* services: fstab: Properly handle file system labels.Ludovic Courtès2018-05-29
| | | | | | | | | | 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'.
* file-systems: Remove 'title' field and add <file-system-label>.Ludovic Courtès2018-05-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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'.
* gnu: mate-desktop-service-type: Add description.Ricardo Wurmus2018-05-24
| | | | * gnu/services/desktop.scm (mate-desktop-service-type): Add description.
* gnu: gnome-desktop-service-type: Add description.Ricardo Wurmus2018-05-24
| | | | * gnu/services/desktop.scm (gnome-desktop-service-type): Add description.
* services: connman: Add polkit hooks for connman.Efraim Flashner2018-05-20
| | | | | * gnu/services/networking.scm (connman-service-type): Extend the polkit-service-type with actions from connman.
* services: openntpd: Add openntpd to the system profile.Efraim Flashner2018-05-20
| | | | | * gnu/services/networking.scm (openntpd-service-type): Extend the profile-service-type and add openntpd to the system profile.
* services: dbus: Search more directories for '.service' files.Efraim Flashner2018-05-20
| | | | | * gnu/services/dbus.scm (system-service-directory): Remove one level of directories when searching for '.service' files.
* services: connman: Add default configuration to the connman-service-type.Efraim Flashner2018-05-20
| | | | | * gnu/services/networking.scm (connman-service-type)[default-value]: New field.
* services: Add Enlightenment desktop service.Efraim Flashner2018-05-20
| | | | | | | * gnu/services/desktop.scm (<enlightenment-desktop-configuration>, enlightenment-desktop-service-type): New variables. * doc/guix.texi (Desktop Services): Document the service. * NEWS: Mention it.
* services: cgit: Make project-list permit a file-object.Christopher Baines2018-05-18
| | | | | | | | | | 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.
* services: cgit: Improve handling of extra-options.Christopher Baines2018-05-18
| | | | | | | * 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.
* gnu: services: Fix wesnothd-configuration? symbol export.Arun Isaac2018-05-14
| | | | | * gnu/services/games.scm: Export wesnothd-configuration?, not the non-existent wesnoth-configuration?.
* services: desktop: Add alsa-service-type.Oleg Pykhalov2018-05-11
| | | | * gnu/services/desktop.scm (%desktop-services): Add 'alsa-service-type'.
* services: bitlbee: Add plugins.Pierre-Antoine Rouby2018-05-11
| | | | | | | | * 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>
* gnu: Add sound service.Oleg Pykhalov2018-05-02
| | | | | | * gnu/services/sound.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add this. * doc/guix.texi (Sound Services): New chapter.
* services: prosody: Add a default value to the prosody-service-type.Clément Lassieur2018-05-01
| | | | * gnu/services/messaging.scm (prosody-service-type)[default-value]: New field.
* services: prosody: Add a description to the prosody-service-type.Clément Lassieur2018-05-01
| | | | * gnu/services/messaging.scm (prosody-service-type)[description]: New field.
* services: gpm: Provide a default value and document 'gpm-service-type'.Ludovic Courtès2018-04-30
| | | | | | | | | * 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'.
* services: Re-export static-networking-service, static-networking-service-type.Danny Milosavljevic2018-04-30
| | | | | * gnu/services/networking.scm: Re-export static-networking-service, static-networking-service-type.
* services: Add modem-manager-service-type.Danny Milosavljevic2018-04-30
| | | | | | | | | * 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).
* services: Move static-networking to (gnu services base).Danny Milosavljevic2018-04-30
| | | | | | | | * 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.
* services: Set default <dhcpd-configuration> version to "4".Chris Marusich2018-04-27
| | | | | | * 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".
* services: Add dhcpd-service-type and <dhcpd-configuration>.Chris Marusich2018-04-21
| | | | | | | | | | | | | | | | * 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.
* services: cgit: Add support for project-list.Clément Lassieur2018-04-11
| | | | | | | | | * 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'.
* services: cgit: Enforce serialization order.Clément Lassieur2018-04-11
| | | | | | | * 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.
* services: cgit: Add support for file-like objects.Clément Lassieur2018-04-11
| | | | | | | | | | | | | | | | | | * 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.
* services: cgit: Simplify 'serialize-module-link-path'.Clément Lassieur2018-04-11
| | | | | * gnu/services/cgit.scm (serialize-module-link-path): Remove STRING-DROP-RIGHT and UGLIFY-FIELD-NAME.
* services: cgit: Simplify 'uglify-field-name'.Clément Lassieur2018-04-11
| | | | | * gnu/services/cgit.scm (uglify-field-name): Remove STRING-JOIN and STRING-SPLIT.
* gnu: Add x11-socket-directory-service.Thorsten Wilms2018-04-04
| | | | | | | | * gnu/services/desktop.scm (x11-socket-directory-service): New variable. (%desktop-services): Add it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: certbot: Don't try to renew certificates on activation.Clément Lassieur2018-04-03
| | | | | | | | | | Because it takes too much time and it requires networking. Thanks to Mathieu Othacehe for suggesting this. * gnu/services/certbot.scm (certbot-activation): Do not run the renewal command, copy its path to a fixed location, display it, so that the user can run the command when they want.
* gnu: shepherd: Update to 0.4.0.Ludovic Courtès2018-03-22
| | | | | | | | | * gnu/packages/admin.scm (shepherd): Update to 0.4.0. Remove patches. * gnu/packages/patches/shepherd-close-fds.patch, gnu/packages/patches/shepherd-herd-status-sorted.patch: Remove. * gnu/local.mk (dist_patch_DATA): Remove them. * gnu/services/admin.scm (%default-rotations): Remove /var/log/shepherd.log.
* services: rottlog: Add /var/log/debug to '%default-rotations'.Ludovic Courtès2018-03-22
| | | | * gnu/services/admin.scm (%rotated-files): Add "/var/log/debug".