summaryrefslogtreecommitdiff
path: root/gnu/services
AgeCommit message (Expand)Author
2017-03-24doc: Document 'guix-publish-service-type' instead of 'guix-publish-service'....* doc/guix.texi (Base Services): Document 'guix-publish-service-type' and 'guix-configuration'. Remove 'guix-publish-service'. (Invoking guix publish): Mention 'guix-publish-service-type'. * gnu/services/base.scm (guix-publish-service): Mark as deprecated. (<guix-configuration>): Export getters. Ludovic Courtès
2017-03-21file-systems: Do not use (gnu packages …)....Fixes a regression introduced in 7208995426714c9fc3ad59cadc3cc0f52df0f018 whereby (gnu system file-systems) would pull in (gnu packages …) module, which in turn breaks when importing things like (gnu build shepherd). * gnu/system/file-systems.scm (file-system-type-predicate): Export. (file-system-packages): Move to... * gnu/system/linux-initrd.scm (file-system-packages): ... here. Add docstring. * gnu/services/base.scm: Use it. * tests/file-systems.scm ("does not pull (gnu packages …)"): New test. Ludovic Courtès
2017-03-21services: openssh: Add 'subsystems' option....* gnu/services/ssh.scm (openssh-config-file): Add it. (<openssh-configuration>)[subsystems]: Add it. * doc/guix.texi (Networking Services): Document it. Clément Lassieur
2017-03-21services: openssh: Cosmetic changes....* gnu/services/ssh.scm (<openssh-configuration>): Reformat to fit in 80 columns. Clément Lassieur
2017-03-19services: Remove Tab character from source code whitespace....* gnu/services/base.scm (file-system-shepherd-service): Remove Tab character from source code whitespace. Danny Milosavljevic
2017-03-19services: file-system-shepherd-service: Make it find the fsck programs....Fixes <https://bugs.gnu.org/25917>. * gnu/services/base.scm (file-system-shepherd-service): Use file-system-packages. Danny Milosavljevic
2017-03-16services: connman: Rework service....* gnu/services/networking.scm (connman-service): Remove. (<connman-configuration>): New record specifying the package to be used (connman) and whether vpn plugin shall be disabled (disable-vpn?). (connman-configuration): New exported variable. (connman-configuration?): New exported variable. (connman-service-type): Export it. * doc/guix.texi (Networking Services): Adjust accordingly. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Mathieu Othacehe
2017-03-12services: Move configuration functions that shouldn't be factorized....* gnu/services/configuration.scm (serialize-field, serialize-string) (serialize-space-separated-string-list, space-separated-string-list?) (serialize-file-name, file-name?, serialize-boolean): Move these functions... * gnu/services/cups.scm: ...to this file. * gnu/services/kerberos.scm: ...to this file. Configuration syntaxes are very specific to services. Some services may have the same configuration syntax, but none of them is common enough to be abstracted in configuration.scm. Signed-off-by: Clément Lassieur <clement@lassieur.org> Clément Lassieur
2017-03-12services: dovecot: Reimplement proper configuration functions....* gnu/services/mail.scm (uglify-field-name, serialize-field, serialize-string) (space-separated-string-list?, serialize-space-separated-string-list) (file-name?, serialize-file-name, serialize-boolean): Add them. These functions were inadvertently changed while being factorized in gnu/service/configuration.scm. Signed-off-by: Clément Lassieur <clement@lassieur.org> Clément Lassieur
2017-03-12services: dovecot: Fix unix_listeners and fifo_listeners path types....* gnu/services/mail.scm (unix-listener-configuration)[path] (fifo-listener-configuration)[path]: Change type from 'file-name' to 'string'. * doc/guix.texi (Mail Services): Document it. Signed-off-by: Clément Lassieur <clement@lassieur.org> Clément Lassieur
2017-03-10services: openssh: Fix 'PrintLastLog' default behaviour....* gnu/services/ssh.scm (openssh-config-file): Add 'print-last-log?' option. (<openssh-configuration>)[print-last-log?]: Add it. (openssh-activation): Touch /var/log/lastlog. * doc/guix.texi (Networking Services): Document 'print-last-log?'. Before that, the service did not work as expected because /var/log/lastlog did not exist. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org> Clément Lassieur
2017-03-10services: openssh: Remove deprecated options....* gnu/services/ssh.scm (openssh-config-file): Remove them. (<openssh-configuration>)[rsa-authentication?]: Remove it. (<openssh-configuration>)[protocol-number]: Remove it. * doc/guix.texi (Networking Services): Remove them. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org> Clément Lassieur
2017-03-10services: openssh: Enable PAM....* gnu/services/ssh.scm: (openssh-pam-services): New procedure. (openssh-service-type): Use it to extend PAM-ROOT-SERVICE-TYPE. (<openssh-configuration>)[challenge-response-authentication?]: New field. (<openssh-configuration>)[use-pam?]: New field. (openssh-config-file): Add them. * doc/guix.texi (Networking Services): Document them. Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org> Clément Lassieur
2017-03-10services: Add exim-service-type....* gnu/services/mail.scm (<exim-configuration>): New record type. (exim-computed-config-file, exim-shepherd-service, exim-activation, exim-etc, exim-profile): New procedures. (exim-service-type, %exim-accounts): New variables. * doc/guix.text (Mail Services): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Carlo Zancanaro
2017-03-08services: prosody: Use 'id' to introduce unhygienic top-level identifiers....* gnu/services/messaging.scm (define-all-configurations): Use 'id' to introduce raw/literal/unhygienic top-level identifiers. Fixes compilation with Guile 2.2. Ludovic Courtès
2017-03-08services: prosody: Make sure 'id' is available at expansion time....* gnu/services/messaging.scm (id): Use 'define-syntax-rule' instead of 'define' to make sure 'id' is available at expansion time. Ludovic Courtès
2017-03-06services: openssh: Parameterize the OpenSSH package used by the service....* gnu/services/ssh.scm (<openssh-configuration>)[openssh]: New field. (openssh-activation, openssh-shepherd-service): Use it. Leo Famulari
2017-03-05services: Add agetty service....* gnu/services/base.scm (<agetty-configuration>): New record type. (agetty-shepherd-service, agetty-service): New procedures. (agetty-service-type): New variable. * doc/guix.texi (Base Services): Document it. [mingetty-configuration],[kmscon-configuration]: Specify the types of supported consoles. Leo Famulari
2017-03-02services: ssh: Remove 'openssh-service' exported symbol....This is a followup to commit d8f3128119d32bcc186c8a1fe15b037bba25b4b8. Reported by thomasd on #guix. * gnu/services/ssh.scm: Do not export 'openssh-service' as it does not exist. Alex Kost
2017-02-23services: guix: Support building in a directory besides '/tmp'....* gnu/services/base.scm (<guix-configuration>)[tmpdir]: New field. (guix-shepherd-service): Use 'tmpdir' in #:environment-variables. * doc/guix.texi (Base Services)[guix-configuration]: Document it. Leo Famulari
2017-02-22services: guix: Support using an HTTP proxy....* gnu/services/base.scm (<guix-configuration>)[http-proxy]: New field. (guix-shepherd-service): Use 'http-proxy' in #:environment-variables. * doc/guix.texi (Base Services)[guix-configuration]: Document it. Leo Famulari
2017-02-19gnu: Remove xf86-video-modesetting....This is part of xorg-server since version 1.17: https://cgit.freedesktop.org/xorg/xserver/commit/?id=35dc7c75150733dbcef8a18b6796f49a7c48ebee * gnu/packages/xorg.scm (xf86-video-modesetting): Remove variable. * gnu/services/xorg.scm (xorg-configuration-file, %default-xorg-modules): Adjust accordingly. Marius Bakke
2017-02-12services: Add openvswitch-service-type....* gnu/services/networking.scm (<openvswitch-configuration>): New record type. (openvswitch-activation, openvswitch-shepherd-service): New procedures. (openvswitch-service-type): New variable. * doc/guix.texi (Networking Services): Document it. 宋文武
2017-02-10tests: Add 'prosody-service-type' test....* gnu/tests/messaging.scm: New file. * gnu/services/messaging.scm: New exported procedure. (<shepherd-service>)[provision]: Add 'xmpp-daemon'. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Clément Lassieur
2017-02-08services: shepherd: Replace spaces with hyphens in file names....This fixes a bug whereby names of files defining services would be invalid if 'provisions' contained more than one element. * gnu/services/shepherd.scm (shepherd-service-file-name): Update 'match-lambda' accordingly. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Clément Lassieur
2017-02-08services: Add 'special-files-service-type'....* gnu/build/activation.scm (activate-/bin/sh): Remove. (activate-special-files): New procedure. * gnu/services.scm (activation-script): Remove call to 'activate-/bin/sh'. (special-files-service-type): New variable. (extra-special-file): New procedure. * gnu/services/base.scm (%base-services): Add SPECIAL-FILES-SERVICE-TYPE instance. * gnu/tests/base.scm (run-basic-test)[special-files]: New variables. ["special files"]: New test. Ludovic Courtès
2017-02-07services: bitlbee: Run in a container....* gnu/services/networking.scm (bitlbee-shepherd-service): Wrap in 'with-imported-modules' and add 'modules' field. Use 'make-forkexec-constructor/container' and pass #:mappings. Ludovic Courtès
2017-02-07services: bitlbee: Read the PID file....* gnu/services/networking.scm (bitlbee-shepherd-service): Pass #:pid-file to 'make-forkexec-constructor'. Ludovic Courtès
2017-02-02services: cuirass: Add load-path to cuirass configuration...* gnu/services/cuirass.scm (<cuirass-configuration>): Add load-path field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Continuous Integration): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Mathieu Othacehe
2017-02-01services: Make 'static-networking' extensible....This allows users to statically define several interfaces. * gnu/services/networking.scm (<static-networking>)[provision] [name-servers]: Add default values. (static-networking-shepherd-service) (static-networking-etc-files) (static-networking-shepherd-services): New procedures. (static-networking-service-type): Change to extend both SHEPHERD-ROOT-SERVICE-TYPE and ETC-SERVICE-TYPE. (static-networking-service): Remove default value of #:provision. Implement using 'simple-service'. * gnu/services/base.scm (%base-services): Replace 'static-networking-service' call with 'service' form. * doc/guix.texi (Networking Services): Update documentation. Ludovic Courtès
2017-01-31system: Introduce 'file-systems' Shepherd service....* gnu/services/base.scm (file-system-shepherd-services): New procedure. (file-system-service-type): Use it as the SHEPHERD-ROOT-SERVICE-TYPE extension. (user-processes-service-type): Change to take a single 'grace-delay' parameter. (user-processes-service): Remove 'file-systems' parameter. Pass GRACE-DELAY as the only value for the service. * gnu/system.scm (essential-services): Adjust accordingly. Ludovic Courtès
2017-01-25services: Export guix-configuration getters....* gnu/services/base.scm (guix-configuration-*): Export. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Mathieu Othacehe
2017-01-25services: Fix 'mkdir-p' in activation scripts....* gnu/services/cups.scm (%cups-activation): Import (guix build utils). * gnu/services/mail.scm (opensmtpd-activation): Idem. * gnu/services/networking.scm (ntp-service-activation): Idem. * gnu/services/spice.scm (spice-vdagent-activation): Idem. * gnu/services/ssh.scm (openssh-activation): Idem. (dropbear-activation): Idem. * gnu/services/vpn.scm (%openvpn-activation): Idem. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Clément Lassieur
2017-01-23services: prosody: Fix activation script....* gnu/services/messaging.scm (prosody-activation): Import (guix build utils) for 'mkdir-p'. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Clément Lassieur
2017-01-22services: cuirass: Add port to cuirass configuration...* gnu/services/cuirass.scm (<cuirass-configuration>): Add port field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Continuous Integration): Document it. Signed-off-by: Mathieu Lirzin <mthl@gnu.org> Mathieu Othacehe
2017-01-20services: Reindent vpn.scm....This fixes indentation of 'match' forms. * gnu/services/vpn.scm: Pass through 'indent-code.el'. Ludovic Courtès
2017-01-20services: network-manager: Use record for configuration....* gnu/services/network-manager.scm (<network-manager-configuration>): New record type. (network-manager-shpeherd-service): Change to use the network-manager-configuration record, rather than a package. Generate a simple configuration file from the network-manager-configuration record. (network-manager-service-type): Update extensions to take the network-manager-configuration rather than a package. (network-manager-service): Remove function, the network-manager-service-type can be used instead, and this avoids keeping the function signature and value coresponding to the service type in sync. * doc/guix.texi (Networking Services): Remove documentation for the removed network-manager-service procedure, and add documentation of the network-manager-service-type variable and network-manager-configuration record. Signed-off-by: 宋文武 <iyzsong@member.fsf.org> Christopher Baines
2017-01-19services: nginx: Add default values for <nginx-configuration> fields....* gnu/services/web.scm (<nginx-configuration>)[nginx, log-directory] [run-directory, server-blocks, upstream-blocks, file]: Add default values. Ludovic Courtès
2017-01-19services: nginx: Add support for 'location' blocks....* gnu/services/web.scm (<nginx-server-configuration>): Add field 'locations'. (<nginx-location-configuration>): New record type. (<nginx-named-location-configuration>): New record type. (nginx-location-config): New function. (default-nginx-server-config): Include locations. * doc/guix.texi (Web Services): Document the new nginx-location-configuration and nginx-named-location-configuration data types, as well as the changes to the nginx-server-configuration. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Christopher Baines
2017-01-19services: nginx: Add support the 'upstream' module....* gnu/services/web.scm (<nginx-upstream-configuration>): New record type. (<nginx-configuration>): Add new field upstream-blocks. (nginx-upstream): New function. (default-nginx-config): Add upstream-list parameter. (nginx-service): Add optional upstream list keyword argument. * doc/guix.texi (Web Services): Document the new nginx-upstream-configuration data type and changes to the nginx function. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Christopher Baines
2017-01-15gnu: Add openvpn service....* gnu/services/vpn.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (VPN Services): New section. Julien Lepiller
2017-01-12services: Add 'redis-service-type'....* gnu/services/database.scm (<redis-configuration>): New record type. (%redis-accounts, redis-service-type): New variables. (default-redis.conf, redis-activation, redis-shepherd-service): New procedures. * doc/guix.texi (Database Services): Document the new redis service. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Christopher Baines
2017-01-11services: wicd: Create /var/run/wpa_supplicant....* gnu/services/networking.scm (%wicd-activation): Create /var/run/wpa_supplicant. Ludovic Courtès
2017-01-08gnu: Add Prosody service....* gnu/services/messaging.scm: New file. * gnu/services/configuration.scm: New exported procedures. * gnu/local.mk (GNU_SYSTEM_MODULES): Add gnu/services/messaging.scm. * doc/guix.texi (Messaging Services): New section. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Clément Lassieur
2017-01-03services: nginx: Make service extensible....* gnu/services/web.scm (<nginx-configuration>)[server-blocks]: New field. (nginx-activation): When CONFIG-FILE is #f, use 'default-nginx-config'. (nginx-shepherd-service): Likewise. (nginx-service-type): Add 'compose' and 'extend' fields. (nginx-service): Change default value of #:server-list to '(), and default value of #:config-file to #f. * doc/guix.texi (Web Services): Document it. Co-authored-by: Ludovic Courtès <ludo@gnu.org> Julien Lepiller
2017-01-03services: nginx: Fix multiple index and server name....* gnu/services/web.scm (config-domain-strings, config-index-string): separate names with a space. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Julien Lepiller
2017-01-03services: nginx: Rename "vhost" to "server"....* gnu/services/web.scm (<nginx-vhost-configuration>): Rename to... (<nginx-server-configuration>): ... this. * doc/guix.texi (Web Services): Adjust accordingly. Signed-off-by: Ludovic Courtès <ludo@gnu.org> Julien Lepiller
2017-01-01services: cuirass: Remove 'cuirass-service' procedure....* gnu/services/cuirass.scm (<cuirass-configuration>)[specifications]: Remove default value. (cuirass-service): Remove. * doc/guix.texi (Continuous Integration): Adjust accordingly. Ludovic Courtès
2017-01-01services: cuirass: Allow for gexps in specifications....* gnu/services/cuirass.scm (<cuirass-configuration>)[specifications]: Change default value to #~'(). (cuirass-shepherd-service): Remove conditional for "--specifications". Use 'scheme-file' instead of 'plain-file'. Change file name to "cuirass-specs.scm". * doc/guix.texi (Continuous Integration): Change the example to use a gexp where #:file refers to a file within Cuirass. Adjust documentation. Ludovic Courtès
2016-12-29services: Add libmtp's udev rules to '%desktop-services'....Suggested by Chris Marusich <cmmarusich@gmail.com>. * gnu/services/desktop.scm (%desktop-services): Add 'mtp' service via call to 'simple-service'. Ludovic Courtès