summary refs log tree commit diff
path: root/gnu/services
AgeCommit message (Collapse)Author
2016-09-10system: Use 'file-append' to denote file names.Ludovic Courtès
* gnu/services/avahi.scm, gnu/services/base.scm, gnu/services/databases.scm, gnu/services/dbus.scm, gnu/services/desktop.scm, gnu/services/dict.scm, gnu/services/mail.scm, gnu/services/networking.scm, gnu/services/sddm.scm, gnu/services/spice.scm, gnu/services/ssh.scm, gnu/services/web.scm, gnu/services/xorg.scm, gnu/system.scm: Replace the #~(string-append #$pkg "/bin/foo") idiom with (file-append pkg "/bin/foo").
2016-09-08services: ntpd: Use a dedicated directory for drift file.John Darrington
Fixes <https://bugs.gnu.org/24366>. Drift file now resides in a dedicated directory owned by the daemon. * gnu/services/networking.scm (ntp-service-activation): New procedure, (ntp-service-type): Add new service-extension.
2016-09-07gnu: Add rpc-daemon serviceJohn Darrington
* gnu/services/nfs.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
2016-09-07services: syslog: Use a PID file.Ludovic Courtès
* gnu/services/base.scm (syslog-service-type)[start]: Remove --no-detach and use #:pid-file.
2016-09-06services: Add sddm service.David Craven
* gnu/services/sddm.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (@deftp, @deffn): Add documentation.
2016-09-06services: syslog: Use syslog-configuration.David Craven
* gnu/services/base.scm (<syslog-configuration>): New variable. (syslog-service-type): Use <syslog-configuration>. (syslog-service): Use <syslog-configuration>. * gnu/tests/base.scm (%avahi-os): Use <syslog-configuration>. * doc/guix.texi (syslog-configuration-type): Add @deftp. (syslog-service): Update @deffn.
2016-09-06services: Export initrc.David Craven
* gnu/services/xorg.scm (define-module): Export initrc.
2016-09-01gnu: Fix typo in description of xfce-desktop-service.John Darrington
* gnu/services/desktop.scm (xfce-desktop-service) abilit --> ability.
2016-09-01Reinstate "services: elogind: Provide '%elogind-file-systems' by extension."Ludovic Courtès
This reverts commit 17073dafc59d62fb8cbb8b94d61d3ecc488ac59f.
2016-09-01gnu: slim: Move to display-managers.scm.Marius Bakke
* gnu/packages/display-managers.scm: New file. * gnu/packages/slim.scm: Delete file. * gnu/local.mk (GNU_SYSTEM_MODULES): Adjust accordingly. * gnu/services/xorg.scm: Likewise.
2016-08-31services: shepherd: Add 'shepherd-service-upgrade', from 'guix system'.Ludovic Courtès
* guix/scripts/system.scm (service-upgrade): Move to... * gnu/services/shepherd.scm (shepherd-service-upgrade): ... here. * tests/system.scm ("service-upgrade: nothing to do", "service-upgrade: one unchanged, one upgraded, one new", "service-upgrade: service depended on is not unloaded", "service-upgrade: obsolete services that depend on each other"): Move to... * tests/services.scm: ... here. Adjust to 'service-upgrade' rename.
2016-08-31services: shepherd: Parameterize 'shepherd-service-back-edges'.Ludovic Courtès
* gnu/services/shepherd.scm (shepherd-service-back-edges): Add #:provision and #:requirement parameter. Honor them.
2016-08-31services: shepherd: Add 'shepherd-service-lookup-procedure'.Ludovic Courtès
* gnu/services/shepherd.scm (shepherd-service-lookup-procedure): New procedure. (shepherd-service-back-edges)[provision->service]: Use it. * tests/services.scm ("shepherd-service-lookup-procedure"): New test.
2016-08-31services: herd: Provide <live-service> objects.Ludovic Courtès
* gnu/services/herd.scm (<live-service>): New record type. (current-services): Change to return a single value: #f or a list of <live-service>. * guix/scripts/system.scm (call-with-service-upgrade-info): Adjust accordingly. * gnu/tests/base.scm (run-basic-test)["shepherd services"]: Adjust accordingly.
2016-08-22Revert "services: elogind: Provide '%elogind-file-systems' by extension."Mark H Weaver
This reverts commit 3cf319a3f8e23831960a0f1320122cc514188a37.
2016-08-22services: elogind: Provide '%elogind-file-systems' by extension.Ludovic Courtès
* gnu/system/file-systems.scm (%base-file-systems): Remove %ELOGIND-FILE-SYSTEMS. * gnu/services/desktop.scm (elogind-service-type): Extend FILE-SYSTEM-SERVICE-TYPE to provide %ELOGIND-FILE-SYSTEMS.
2016-08-22services: Make a single extensible 'file-systems' service.Ludovic Courtès
Previously we would create one 'file-system-service-type' instead per file system. Now, we create only one instance for all the file systems. * gnu/services/base.scm (fstab-service-type)[compose]: Change to CONCATENATE. (file-system-shepherd-service): Change to return either one <shepherd-service> or #f. (file-system-service-type): Pluralize 'name'. Adjust SHEPHERD-ROOT-SERVICE-TYPE extension to above changes. Add 'compose' and 'extend'. (file-system-service): Remove. * gnu/system.scm (other-file-system-services): Rename to... (non-boot-file-system-service): ... this. Change to return a single FILE-SYSTEM-SERVICE-TYPE instance. (essential-services): Adjust accordingly.
2016-08-19services: guix: Add 'authorized-keys' configuration knob.Ludovic Courtès
* gnu/services/base.scm (hydra-key-authorization): Add 'key' parameter and honor it. (%default-authorized-guix-keys): New variable. (<guix-configuration>)[authorized-keys]: New field. (guix-shepherd-service): Adjust 'match' clause accordingly. (guix-activation): Adjust call to 'hydra-key-authorization'. * doc/guix.texi (Base Services): Document 'authorized-keys'.
2016-08-14services: guix: Fix activation when 'authorize-key?' is false.Mark H Weaver
* gnu/services/base.scm (guix-activation): Ensure that a gexp is returned when 'authorize-key?' is false.
2016-08-05services: Add spice vdagent service.David Craven
* gnu/services/spice.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (Various Services): New subheading.
2016-07-21services: Export *-service-type and *-configuration.Tomáš Čech
This allows users to use 'modify-services' and similar constructs for all these service types. * gnu/services/avahi.scm: export avahi-configuration. * gnu/services/base.scm: export gpm-configuration and rngd-configuration. * gnu/services/databases.scm: export *-service-type and *-configuration. * gnu/services/dbus.scm: export dbus-configuration. * gnu/services/dict.scm: export dicod-service-type. * gnu/services/lirc.scm: export lirc-configuration and lirc-service-type. * gnu/services/mail.scm: export dovecot-service-type. * gnu/services/web.scm: export nginx-configuration and nginx-service-type. * gnu/services/xorg.scm: export screen-locker and screen-locker?. * gnu/services/ssh.scm: export lsh-configuration and lsh-service-type. * gnu/services/desktop.scm: export *-service, *-service-type and *-configuration. * gnu/services/networking.scm: export *-configuration and *-service-type. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2016-07-19services: Add pam-limits-service.Ricardo Wurmus
* gnu/system/pam.scm (<pam-limits-entry>): New record type. (pam-limits-entry, pam-limits-entry->string): New procedures. * gnu/services/base.scm (pam-limits-service-type): New variable. (pam-limits-service): New procedure. * doc/guix.texi (Base Services): Document it.
2016-07-19services: shepherd: Clarify error message about missing service.Ludovic Courtès
Suggested by Tobias Geerinckx-Rice <me@tobias.gr>. * gnu/services/shepherd.scm (assert-valid-graph)[assert-satisfied-requirements]: Clarify error message.
2016-07-16services: dbus: Synchronize startup using dbus-daemon's PID file.Ludovic Courtès
* gnu/services/dbus.scm (dbus-shepherd-service): Pass #:pid-file to 'make-forkexec-constructor'.
2016-07-15services: Add 'dropbear-service'.David Craven
* gnu/services/ssh.scm (<dropbear-configuration>): New record type. (dropbear-activation, dropbear-shepherd-service, dropbear-service): New procedures. (dropbear-service-type): New variable. * doc/guix.texi (Networking Services): Document it. Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2016-07-15gnu: lsh: Move to (gnu packages ssh)David Craven
* gnu/packages/lsh.scm: Remove. Move 'lsh and liboop' to... * gnu/packages/ssh.scm (liboop, lsh): ... here. New variables. * gnu/services/ssh.scm, gnu/services/base.scm: Adjust accordingly. * gnu/local.mk (GNU_SYSTEM_MODULES): Adjust accordingly. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-07-12services: <shepherd-service> no longer has an 'imported-modules' field.Ludovic Courtès
* gnu/services/shepherd.scm (<shepherd-service>)[imported-modules]: Remove. (%default-imported-modules): Make private. (shepherd-service-file): Use 'with-imported-modules'. (shepherd-configuration-file): Remove 'modules' and the calls to 'imported-modules' and 'compiled-modules'. Use 'with-imported-modules' instead. * doc/guix.texi (Shepherd Services): Adjust accordingly. * gnu/services/base.scm (file-system-shepherd-service): Use 'with-imported-modules'. Remove 'imported-modules' field. * gnu/system/mapped-devices.scm (device-mapping-service-type): Remove 'imported-modules'. (open-luks-device): Use 'with-imported-modules'. * gnu/tests.scm (marionette-shepherd-service): Remove 'imported-modules' field and use 'with-imported-modules'.
2016-07-12gnu: Switch to 'with-imported-modules'.Ludovic Courtès
* gnu/services.scm (directory-union): Use 'with-imported-modules' instead of the '#:modules' argument of 'computed-file'. * gnu/services/base.scm (udev-rules-union): Likewise. * gnu/services/dbus.scm (system-service-directory): Likewise. * gnu/services/desktop.scm (wrapped-dbus-service): (polkit-directory): Likewise. * gnu/services/networking.scm (tor-configuration->torrc): Likewise. * gnu/services/xorg.scm (xorg-configuration-directory): Likewise. * gnu/system/install.scm (self-contained-tarball): Likewise. * gnu/system/linux-container.scm (container-script): Likewise. * gnu/system/linux-initrd.scm (expression->initrd): Likewise, and remove #:modules parameter. (flat-linux-module-directory): Use 'with-imported-modules'. (base-initrd): Likewise. * gnu/system/locale.scm (locale-directory): Likewise. * gnu/system/shadow.scm (default-skeletons): Likewise. * gnu/system/vm.scm (expression->derivation-in-linux-vm): Likewise. * gnu/tests/base.scm (run-basic-test): Likewise. * gnu/tests/install.scm (run-install): Likewise. * doc/guix.texi (Initial RAM Disk): Update 'expression->initrd' documentation.
2016-07-07services: nginx: Fix typo.ng0
* gnu/services/web.scm (nginx-service): Fix typo. Signed-off-by: Leo Famulari <leo@famulari.name>
2016-07-05services: Add rngd-service.David Craven
* gnu/services/base.scm (<rngd-configuration>): New record type. (rngd-service-type): New variable. (rngd-service): New procedure. * doc/guix.texi (Base Services): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2016-06-27services: avahi: Add #:debug? parameter.Ludovic Courtès
* gnu/services/avahi.scm (<avahi-configuration>)[debug?]: New field. (avahi-shepherd-service): Honor it. (avahi-service): Add #:debug? and honor it. * doc/guix.texi (Networking Services): Adjust accordingly.
2016-06-27services: avahi: Pass --daemonize and check for the PID file.Ludovic Courtès
This makes sure the service's 'start' finishes when avahi-daemon is ready to process requests. * gnu/services/avahi.scm (avahi-shepherd-service): Use --daemonize instead of --syslog and add #:pid-file.
2016-06-27services: Export more service types.Ludovic Courtès
* gnu/services/base.scm (syslog-service-type): Export. (urandom-seed-service-type): Export.
2016-06-27services: nscd: Wait for the PID file.Ludovic Courtès
* gnu/services/base.scm (nscd-shepherd-service): Pass #:pid-file.
2016-06-22services: Add 'mcron-service'.Ludovic Courtès
* gnu/services/mcron.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * gnu/tests/base.scm (%mcron-os, %test-mcron): New variables. (run-mcron-test): New procedure. * doc/guix.texi (Scheduled Job Execution): New node.
2016-06-18gnu: services: Add bluetooth-service.宋文武
* gnu/services/desktop.scm (bluetooth-shepherd-service) (bluetooth-service): New Prodecures. (bluetooth-service-type): New variable. * doc/guix.text (Desktop Services): Document it.
2016-06-17services: dicod: Add 'interfaces' configuration field.Ludovic Courtès
This makes 'dicod' listen on 'localhost' by default, whereas it was previously listening on all the interfaces, which is not a good default security-wise. * gnu/services/dict.scm (<dicod-configuration>)[interfaces]: New field. (dicod-configuration-file)[database->text]: New procedure, with code formerly in 'dicod-configuration->text'. [dicod-configuration->text]: Rename to... [configuration->text]: ... this. Honor 'interfaces'. * doc/guix.texi (Various Services): Document 'interfaces'.
2016-06-16gnu: services: Add mysql-service.宋文武
* gnu/services/database.scm (<mysql-configuration>): New record type. (%mysql-accounts, mysql-service-type): New variables. (mysql-configuration-file, %mysql-activation, mysql-shepherd-services) (mysql-services): New procedures. * doc/guix.texi (Database Services): Document it.
2016-06-05gnu: services: Add dicod-service.宋文武
* gnu/services/dict.scm: New file. * gnu/local.mk (GNU_SYSTEM_MODULES): Add it. * doc/guix.texi (Various Services): Document it.
2016-06-05services: urandom-seed: Refresh seed at boot.Leo Famulari
* gnu/services/base.scm (urandom-seed-shepherd-service): Refresh the random seed unconditionally at boot. Ensure directory structure for %random-seed-file exists when shutting down. (%urandom-seed-activation): Remove variable. (urandom-seed-service-type): Remove deleted variable from list of extensions.
2016-05-31services: urandom-seed: Set umask to 077 while shutting down.Leo Famulari
* gnu/services/base.scm (urandom-seed-shepherd-service): Call 'umask'.
2016-05-28services: Add urandom-seed-service.Leo Famulari
Fixes <http://bugs.gnu.org/23605>. * gnu/services/base.scm (urandom-seed-service): New procedure. (%random-seed-file, urandom-seed-service-type): New variables. (%urandom-seed-shepherd-service): New procedure. (%base-services): Call 'urandom-seed-service'. * doc/guix.texi (Base Services): Document it.
2016-05-05services: Add connman-service.Efraim Flashner
* gnu/services/networking.scm (connman-service): New procedure. (connman-service-type, %connman-activation): New variables. (connman-shepherd-service): New procedure. * doc/guix.texi (Networking Services): Document it.
2016-05-04utils: Move combinators to (guix combinators).Ludovic Courtès
* guix/utils.scm (compile-time-value, memoize, fold2) (fold-tree, fold-tree-leaves): Move to... * guix/combinators: ... here. New file. * tests/utils.scm ("fold2, 1 list", "fold2, 2 lists") (fold-tree tests): Move to... * tests/combinators.scm: ... here. New file. * Makefile.am (MODULES, SCM_TESTS): Add them. * gnu/packages.scm, gnu/packages/bootstrap.scm, gnu/services/herd.scm, guix/build-system/gnu.scm, guix/build-system/python.scm, guix/derivations.scm, guix/gnu-maintenance.scm, guix/import/elpa.scm, guix/scripts/archive.scm, guix/scripts/build.scm, guix/scripts/graph.scm, guix/scripts/lint.scm, guix/scripts/size.scm, guix/scripts/substitute.scm, guix/serialization.scm, guix/store.scm, guix/ui.scm: Adjust imports accordingly.
2016-05-04services: herd: Move UI handling to 'guix system'.Ludovic Courtès
This makes (gnu services herd) independent of (guix ui). * gnu/services/herd.scm (&shepherd-error, &service-not-found-error) (&action-not-found-error, &action-exception-error) (&unknown-shepherd-error): New error condition types. (report-action-error): Remove. (raise-shepherd-error): New procedure. (display-message): Do not use 'info' and '_'. (invoke-action): Use 'raise-shepherd-error' instead of 'report-action-error'. Do not use 'warning'. (current-services): Do not use 'warning'. * guix/scripts/system.scm (with-shepherd-error-handling): New macro. (report-shepherd-error, call-with-service-upgrade-info): New procedures. (upgrade-shepherd-services): Use it.
2016-04-18services: Move 'device-mapping-service' to (gnu system mapped-devices).Ludovic Courtès
* gnu/services/base.scm (device-mapping-service-type) (device-mapping-service): Move to... * gnu/system/mapped-devices.scm (device-mapping-service-type): (device-mapping-service): ... here. New variables.
2016-04-18system: Add (gnu system mapped-devices).Ludovic Courtès
* gnu/system/file-systems.scm (<mapped-device>, <mapped-device-type>): Move to... * gnu/system/mapped-devices.scm: ... here. New file. * gnu/system.scm, gnu/services/base.scm, gnu/system/linux-initrd.scm: Use it. * gnu-system.am (GNU_SYSTEM_MODULES): Add it. * gnu.scm (%public-modules): Add it.
2016-04-17services: 'console-keymap-service' takes multiple files.Alex Kost
* gnu/services/base.scm (console-keymap-service-type): Type procedure takes a list of files instead of a single file. (console-keymap-service): Take 'files' as rest arguments. * doc/guix.texi (Base Services): Improve documentation of 'console-keymap-service'.
2016-03-24services: nscd: Make respawnable.Ludovic Courtès
* gnu/services/base.scm (nscd-shepherd-service): Remove 'respawn?' field.
2016-03-24services: xorg: Fix ~/.xsession handling.Ludovic Courtès
Fixes a regression introduced in c510cbb4ecb270ca3edf282c6769aa2bfb144822. * gnu/services/xorg.scm (xinitrc)[builder]: Add missing 'apply' when XSESSION-FILE exists.