summary refs log tree commit diff
path: root/gnu/services
AgeCommit message (Collapse)Author
2017-03-16services: connman: Rework service.Mathieu Othacehe
* 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>
2017-03-12services: Move configuration functions that shouldn't be factorized.Clément Lassieur
* 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>
2017-03-12services: dovecot: Reimplement proper configuration functions.Clément Lassieur
* 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>
2017-03-12services: dovecot: Fix unix_listeners and fifo_listeners path types.Clément Lassieur
* 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>
2017-03-10services: openssh: Fix 'PrintLastLog' default behaviour.Clément Lassieur
* 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>
2017-03-10services: openssh: Remove deprecated options.Clément Lassieur
* 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>
2017-03-10services: openssh: Enable PAM.Clément Lassieur
* 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>
2017-03-10services: Add exim-service-type.Carlo Zancanaro
* 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>
2017-03-08services: prosody: Use 'id' to introduce unhygienic top-level identifiers.Ludovic Courtès
* gnu/services/messaging.scm (define-all-configurations): Use 'id' to introduce raw/literal/unhygienic top-level identifiers. Fixes compilation with Guile 2.2.
2017-03-08services: prosody: Make sure 'id' is available at expansion time.Ludovic Courtès
* gnu/services/messaging.scm (id): Use 'define-syntax-rule' instead of 'define' to make sure 'id' is available at expansion time.
2017-03-06services: openssh: Parameterize the OpenSSH package used by the service.Leo Famulari
* gnu/services/ssh.scm (<openssh-configuration>)[openssh]: New field. (openssh-activation, openssh-shepherd-service): Use it.
2017-03-05services: Add agetty service.Leo Famulari
* 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.
2017-03-02services: ssh: Remove 'openssh-service' exported symbol.Alex Kost
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.
2017-02-23services: guix: Support building in a directory besides '/tmp'.Leo Famulari
* 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.
2017-02-22services: guix: Support using an HTTP proxy.Leo Famulari
* 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.
2017-02-19gnu: Remove xf86-video-modesetting.Marius Bakke
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.
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.Clément Lassieur
* 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>
2017-02-08services: shepherd: Replace spaces with hyphens in file names.Clément Lassieur
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>
2017-02-08services: Add 'special-files-service-type'.Ludovic Courtès
* 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.
2017-02-07services: bitlbee: Run in a container.Ludovic Courtès
* gnu/services/networking.scm (bitlbee-shepherd-service): Wrap in 'with-imported-modules' and add 'modules' field. Use 'make-forkexec-constructor/container' and pass #:mappings.
2017-02-07services: bitlbee: Read the PID file.Ludovic Courtès
* gnu/services/networking.scm (bitlbee-shepherd-service): Pass #:pid-file to 'make-forkexec-constructor'.
2017-02-02services: cuirass: Add load-path to cuirass configurationMathieu Othacehe
* 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>
2017-02-01services: Make 'static-networking' extensible.Ludovic Courtès
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.
2017-01-31system: Introduce 'file-systems' Shepherd service.Ludovic Courtès
* 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.
2017-01-25services: Export guix-configuration getters.Mathieu Othacehe
* gnu/services/base.scm (guix-configuration-*): Export. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-25services: Fix 'mkdir-p' in activation scripts.Clément Lassieur
* 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>
2017-01-23services: prosody: Fix activation script.Clément Lassieur
* gnu/services/messaging.scm (prosody-activation): Import (guix build utils) for 'mkdir-p'. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-22services: cuirass: Add port to cuirass configurationMathieu Othacehe
* 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>
2017-01-20services: Reindent vpn.scm.Ludovic Courtès
This fixes indentation of 'match' forms. * gnu/services/vpn.scm: Pass through 'indent-code.el'.
2017-01-20services: network-manager: Use record for configuration.Christopher Baines
* 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>
2017-01-19services: nginx: Add default values for <nginx-configuration> fields.Ludovic Courtès
* gnu/services/web.scm (<nginx-configuration>)[nginx, log-directory] [run-directory, server-blocks, upstream-blocks, file]: Add default values.
2017-01-19services: nginx: Add support for 'location' blocks.Christopher Baines
* 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>
2017-01-19services: nginx: Add support the 'upstream' module.Christopher Baines
* 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>
2017-01-15gnu: Add openvpn service.Julien Lepiller
* gnu/services/vpn.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (VPN Services): New section.
2017-01-12services: Add 'redis-service-type'.Christopher Baines
* 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>
2017-01-11services: wicd: Create /var/run/wpa_supplicant.Ludovic Courtès
* gnu/services/networking.scm (%wicd-activation): Create /var/run/wpa_supplicant.
2017-01-08gnu: Add Prosody service.Clément Lassieur
* 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>
2017-01-03services: nginx: Make service extensible.Julien Lepiller
* 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>
2017-01-03services: nginx: Fix multiple index and server name.Julien Lepiller
* gnu/services/web.scm (config-domain-strings, config-index-string): separate names with a space. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2017-01-03services: nginx: Rename "vhost" to "server".Julien Lepiller
* 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>
2017-01-01services: cuirass: Remove 'cuirass-service' procedure.Ludovic Courtès
* gnu/services/cuirass.scm (<cuirass-configuration>)[specifications]: Remove default value. (cuirass-service): Remove. * doc/guix.texi (Continuous Integration): Adjust accordingly.
2017-01-01services: cuirass: Allow for gexps in specifications.Ludovic Courtès
* 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.
2016-12-29services: Add libmtp's udev rules to '%desktop-services'.Ludovic Courtès
Suggested by Chris Marusich <cmmarusich@gmail.com>. * gnu/services/desktop.scm (%desktop-services): Add 'mtp' service via call to 'simple-service'.
2016-12-21gnu: Fix typo in comment.John Darrington
* gnu/services/sddm.scm: Fix typo.
2016-12-20services: cuirass: Add Cuirass to the system profile.Ludovic Courtès
* gnu/services/cuirass.scm (cuirass-service-type): Extend PROFILE-SERVICE-TYPE.
2016-12-20services: cuirass: Add 'cuirass' field.Ludovic Courtès
* gnu/services/cuirass.scm (<cuirass-configuration>)[cuirass]: New field. (cuirass-shepherd-service): Honor it. * doc/guix.texi (Continuous Integration): Document it.
2016-12-20services: cuirass: Create the database directory.Ludovic Courtès
* gnu/services/cuirass.scm (cuirass-activation): Create the database directory for CONFIG.
2016-12-19services: guix: Add 'log-file' configuration option.Ludovic Courtès
* gnu/services/base.scm (<guix-configuration>)[log-file]: New field. (guix-shepherd-service): Pass #:log-file to 'make-forkexec-constructor'. * gnu/services/admin.scm (simple-rotation-config): Take a list of files and join them with commas. (%default-rotations): Add /var/log/guix-daemon.log. * doc/guix.texi (Base Services): Document it.
2016-12-19services: guix: Remove dependency on lsh.Ludovic Courtès
* gnu/services/base.scm (<guix-configuration>)[lsh]: Remove. (guix-shepherd-service): Remove lsh from 'PATH'. * doc/guix.texi (Base Services): Adjust accordingly.