summaryrefslogtreecommitdiff
path: root/gnu/services
Commit message (Collapse)AuthorAge
* Use substitute servers on the local network.Mathieu Othacehe2020-11-29
| | | | | | | | | | | | | | | * guix/scripts/discover.scm: New file. * Makefile.am (MODULES): Add it. * nix/nix-daemon/guix-daemon.cc (options): Add "discover" option, (parse-opt): parse it, (main): start "guix discover" process when the option is set. * guix/scripts/substitute.scm (%local-substitute-urls): New variable, (substitute-urls): add it. * gnu/services/base.scm (<guix-configuration>): Add "discover?" field, (guix-shepherd-service): honor it. * doc/guix.texi (Invoking guix-daemon): Document "discover" option, (Base Services): ditto.
* publish: Add advertising support.Mathieu Othacehe2020-11-29
| | | | | | | | | | | | | * guix/scripts/publish.scm (%options): Add "--advertise" option. (show-help): Document it. (service-name): New procedure, (publish-service-type): new variable. (run-publish-server): Add "advertise?" and "port" parameters. Use them to publish the server using Avahi. (guix-publish): Pass the "advertise?" option to "run-publish-server". * gnu/services/base.scm (<guix-publish-configuration>): Add "advertise?" field. (guix-publish-shepherd-service): Honor it.
* services: zabbix-agent: Delete not mandatory hostname configuration.Oleg Pykhalov2020-11-29
| | | | | * gnu/services/monitoring.scm (zabbix-agent-configuration)[hostname]: Set to empty string.
* services: MySQL: Upgrade database schemas automatically.Marius Bakke2020-11-28
| | | | | | | | | | | * gnu/services/databases.scm (<mysql-configuration>): Add AUTO-UPGRADE? field. (mysql-upgrade-wrapper, mysql-upgrade-shepherd-service, mysql-shepherd-services): New variables. (mysql-service-type): Use MYSQL-SHEPHERD-SERVICES instead of MYSQL-SHEPHERD-SERVICE. * doc/guix.texi (Database Services): Document the AUTO-UPGRADE? field of MYSQL-SERVICE-TYPE. * gnu/tests/databases.scm (run-mysql-test): Test that mysql_upgrade has run.
* services: MySQL: Make the socket configurable.Marius Bakke2020-11-28
| | | | | | * gnu/services/databases.scm (<mysql-configuration>): Add SOCKET field. (mysql-configuration-file): Adjust accordingly. * doc/guix.texi (Database Services): Likewise.
* services: MySQL: Bind to localhost only by default.Marius Bakke2020-11-28
| | | | | | * gnu/services/databases.scm (<mysql-configuration>): Add BIND-ADDRESS field. (mysql-configuration-file): Adjust accordingly. * doc/guix.texi (Database Services): Document it.
* services: MySQL: Deprecate 'mysql-service'.Marius Bakke2020-11-28
| | | | | | | | * gnu/services/databases.scm (mysql-service): Define in terms of DEFINE-DEPRECATED. * gnu/tests/databases.scm (%mysql-os): Adjust accordingly. * doc/guix.texi (Database Services): Adjust the MariaDB/MySQL section to document MYSQL-SERVICE-TYPE instead of MYSQL-SERVICE. While at it, document the EXTRA-CONTENT field.
* mapped-devices: Allow target to be list of strings.Mikhail Tsykalov2020-11-26
| | | | | | | | | | | * gnu/system/mapped-devices.scm (<mapped-device>): Rename constructor to %mapped-device. [target]: Remove field. [targets]: New field. Adjust users. (mapped-device-compatibility-helper, mapped-device): New macros. (mapped-device-target): New deprecated procedure. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: cups: Add Splix by default.Tobias Geerinckx-Rice2020-11-21
| | | | | * gnu/services/cups.scm (cups-configuration): Add splix to the default extensions. * doc/guix.texi (Printing Services): Document it.
* gnu: Rename escpr to epson-inkjet-printer-escpr.Tobias Geerinckx-Rice2020-11-21
| | | | | | | | | ‘escpr’ is nice and short, but everyone else calls this package ‘epson-inkjet-printer-escpr’. More importantly, so does upstream. * gnu/packages/cups.scm (escpr, epson-inkjet-printer-escpr,): Rename escpr to epson-inkjet-printer-escpr, redefining escpr as deprecated-package. Adjust all users.
* Merge branch 'version-1.2.0' into master.Maxim Cournoyer2020-11-20
|\
| * services: base: Re-export %default-substitute-urls from (guix store).Marius Bakke2020-11-18
| | | | | | | | * gnu/services/base.scm: Export %DEFAULT-SUBSTITUTE-URLS.
| * services: SDDM: Wait for elogind before starting.Marius Bakke2020-11-18
| | | | | | | | | | | | Fixes <https://bugs.gnu.org/44669>. * gnu/services/sddm.scm (sddm-shepherd-service)[requirement]: Add elogind.
* | Merge remote-tracking branch 'upstream/version-1.2.0'Tobias Geerinckx-Rice2020-11-18
|\|
| * services: shepherd: Map all the invalid store characters to dash.Ludovic Courtès2020-11-18
| | | | | | | | | | | | | | | | | | | | | | | | Fixes a regression introduced in 977eb5d023cfdf8e336f1896480eea9cef5c04e9 whereby file system services would now have a different name. * gnu/services/base.scm (file-system->shepherd-service-name): Revert changes introduced in 977eb5d023cfdf8e336f1896480eea9cef5c04e9. * gnu/services/shepherd.scm (%store-characters): New variable (shepherd-service-file-name): Map all the characters outside %STORE-CHARACTERS to #\-.
* | gnu: vpn: Make ca, key and cert optional.Julien Lepiller2020-11-18
| | | | | | | | | | | | * gnu/services/vpn.scm (openvpn-client-configuration) (openvpn-server-configuration): Make ca, key an cert fields optional. * doc/guix.texi (VPN Services): Document the change.
* | services: cups: Add some extensions by default.Danny Milosavljevic2020-11-18
| | | | | | | | | | * gnu/services/cups.scm (cups-configuration): Add some extensions by default. doc/guix.texi (Printing Services): Document the default value.
* | Merge remote-tracking branch 'origin/version-1.2.0' into masterMaxim Cournoyer2020-11-17
|\| | | | | | | | | | | | | | | Conflicts: gnu/packages/bioinformatics.scm The python-pysam package fixed in master was kept instead of the update done in the version-1.2.0 branch.
| * services: mingetty: Export configuration accessors.Marius Bakke2020-11-16
| | | | | | | | * gnu/services/base: Export configuration accessors for mingetty.
| * Properly deal with build directories containing '~'.Ludovic Courtès2020-11-16
| | | | | | | | | | | | | | | | | | | | | | | | Fixes <https://bugs.gnu.org/44626>. Reported by Vagrant Cascadian <vagrant@debian.org>. * tests/build-utils.scm ("wrap-script, simple case"): Pass SCRIPT-CONTENTS to 'display' rather than 'format'. * gnu/services/base.scm (file-system->shepherd-service-name) [valid-characters, mount-point]: New variables. Filter out invalid store file name characters from the mount point of FILE-SYSTEM.
* | services: gmnisrv: Export procedures and service type.Alexandru-Sergiu Marton2020-11-14
| | | | | | | | | | | | | | | | * gnu/services/web.scm: Export gmnisrv-configuration, gmnisrv-configuration?, gmnisrv-configuration-package, gmnisrv-configuration-config-file, gmnisrv-service-type. Signed-off-by: Christopher Baines <mail@cbaines.net>
* | Merge branch 'version-1.2.0'Ludovic Courtès2020-11-12
|\|
| * services: nginx: Re-introduce server-names-hash-bucket-size.Julien Lepiller2020-11-09
| | | | | | | | | | | | | | | | This was unintentionally removed in 00014f769233facebd84f13a00b10032a22cb440. * gnu/services/web.scm (default-nginx-config): Re-introduce processing of server-names-hash-bucket-size option.
| * services: mpd: Fix daemon startup.Ludovic Courtès2020-11-06
| | | | | | | | | | | | | | | | | | Until now it would wait for a PID file that'd never come. * gnu/services/audio.scm (mpd-shepherd-service): Add 'requirement'. Remove #:pid-file from 'start'. (mpd-service-activation): Create the ".mpd" directory since that's what the daemon expects.
| * services: mpd: Always create the "mpd" user account.Ludovic Courtès2020-11-06
| | | | | | | | | | * gnu/services/audio.scm (%mpd-accounts): New variable. (mpd-service-type)[extensions]: Add ACCOUNT-SERVICE-TYPE extension.
| * services: mpd: Do not eagerly look for a user.Maxim Cournoyer2020-11-06
| | | | | | | | | | | | | | | | | | Running 'guix system search mpd' would throw a backtrace because the mpd-shepherd-service service start Gexp contained an unquoted call to 'getpwnam', which would look for a missing 'mpd' user and fail. * gnu/services/audio.scm (mpd-shepherd-service): gexp-unquote only the relevant variable rather than the whole expression.
* | gnu: mingetty-shepherd-service: Make 'clear-on-logout' configurable.Mark H Weaver2020-11-11
| | | | | | | | | | | | | | | | | | | | | | Also change the default configuration to clear on logout, which is the upstream default. * gnu/services/base.scm (<mingetty-configuration>): Add 'clear-on-logout?' field. (mingetty-shepherd-service): Pass the "--noclear" option to mingetty only if 'clear-on-logout?' is #false. * doc/guix.texi (Base Services): Document the 'clear-on-logout?' field.
* | services: nginx: Re-introduce server-names-hash-bucket-size.Julien Lepiller2020-11-09
| | | | | | | | | | | | | | | | This was unintentionally removed in 00014f769233facebd84f13a00b10032a22cb440. * gnu/services/web.scm (default-nginx-config): Re-introduce processing of server-names-hash-bucket-size option.
* | services: guix: Fix Guix Build Coordinator substitute urls bug.Christopher Baines2020-11-07
| | | | | | | | | | * gnu/services/guix.scm (guix-build-coordinator-agent-shepherd-services): Pass the correct value as the --non-derivation-substitute-urls.
* | services: guix: Remove the Guix Build Coordinator agent pid file.Christopher Baines2020-11-07
| | | | | | | | | | | | | | | | | | As it doesn't use one. * gnu/services/guix.scm (guix-build-coordinator-agent-shepherd-services): Remove #:pid-file. (guix-build-coordinator-agent-activation): Don't create the /var/run directory.
* | services: guix: Add guix-build-coordinator-agent cache directory.Christopher Baines2020-11-07
| | | | | | | | | | | | | | | | | | As this is needed when substituting derivations. * gnu/services/guix.scm (guix-build-coordinator-agent-shepherd-services): Set XDG_CACHE_HOME. (guix-build-coordinator-agent-activation): Create /var/cache/guix-build-coordinator-agent.
* | services: Add yggdrasil-service-type.raingloom2020-11-05
|/ | | | | | | | | | | | * gnu/services/networking.scm (yggdrasil-configuration) (yggdrasil-configuration?, yggdrasil-configuration-package) (yggdrasil-configuration-auto-conf, yggdrasil-configuration-log-level) (yggdrasil-configuration-log-to): New procedures. (yggdrasil-service-type): New variable. * doc/guix.texi: Document it. * gnu/system/examples/yggdrasil.tmpl: Provide example. Signed-off-by: Julien Lepiller <julien@lepiller.eu>
* services: Remove imports of (ice-9 …) modules.Ludovic Courtès2020-11-05
| | | | | | | | * gnu/services/monitoring.scm (zabbix-server-activation): Remove (ice-9 rdelim) from the imported modules. (zabbix-agent-activation): Likewise. * gnu/tests/mail.scm (run-exim-test)[test]: Remove (ice-9 ftw) from the imported modules.
* services: guix: Do not embed the host (guix config).Ludovic Courtès2020-11-05
| | | | | | | | Fixes a bug whereby different users would get different derivations for the same service. * gnu/services/base.scm (guix-shepherd-service): In 'start' method, do not embed (guix config).
* services: guix-publish: Add 'cache-bypass-threshold' field.Ludovic Courtès2020-10-30
| | | | | | | | This is a followup to ecaa102a58ad3ab0b42e04a3d10d7c761c05ec98. * gnu/services/base.scm (<guix-publish-configuration>)[cache-bypass-threshold]: New field. (guix-publish-shepherd-service): Honor it.
* services: swap: Allow for UUIDs and file system labels.Ludovic Courtès2020-10-30
| | | | | | | | * gnu/services/base.scm (swap-service-type)[device-lookup, device-name]: New variables. Add 'modules' field to 'shepherd-service'. In 'start' and 'stop', use 'device-lookup' to resolve UUIDs and labels. * doc/guix.texi (operating-system Reference): Adjust accordingly.
* gnu: ganeti-luxid-service-type: Fix typo.Vagrant Cascadian2020-10-28
| | | | | * gnu/services/ganeti (ganeti-luxid-service-type)[description]: Fix spelling of "authoritative".
* services: knot-resolver: Replace deprecated command-line option.Simon South2020-10-27
| | | | | | | | | This silences a warning from the service at startup. * gnu/services/dns.scm (knot-resolver-shepherd-services)[start]: Use the "-n" command-line option to kresd in place of the deprecated "-f 1". Signed-off-by: Leo Famulari <leo@famulari.name>
* services: Add gmnisrv web service.Alexandru-Sergiu Marton2020-10-27
| | | | | | | | | | | * gnu/services/web.scm (<gmnisrv-configuration>): New record type. (%default-gmnisrv-config-file): New variable. (%gmnisrv-accounts, %gmnisrv-activation): New variables. (gmnisrv-shepherd-service): New procedure. (gmnisrv-service-type): New variable. * doc/guix.texi (Web Services): Document it. Signed-off-by: Ludovic Courtès <ludo@gnu.org>
* services: hpcguix-web: Set 'XDG_CACHE_HOME' to a writable directory.Ludovic Courtès2020-10-27
| | | | | | | * gnu/services/web.scm (hpcguix-web-shepherd-service): Change XDG_CACHE_HOME to /var/cache/guix/web. Previously, the authentication code would try to write to /var/cache/guix/authentication, which would fail.
* services: guix: Make /etc/guix/acl really declarative by default.Ludovic Courtès2020-10-25
| | | | | | | | | | | | Fixes <https://bugs.gnu.org/39819>. Reported by Maxim Cournoyer <maxim.cournoyer@gmail.com>. * gnu/services/base.scm (substitute-key-authorization): Symlink DEFAULT-ACL to /etc/guix/acl unconditionally. Add code to optionally back up /etc/guix/acl if it was possibly modified by hand. * doc/guix.texi (Base Services): Clarify the effect of setting 'authorize-keys?' to true. Mention the backup. Give an example showing how to authorize substitutes from another server.
* gnu: guix-build-coordinator: Propagate the guile inputs.Christopher Baines2020-10-23
| | | | | | | | | | | This means the package is usable as a library, which is useful when using the procedures to send requests to the Guix Build Coordinator. * gnu/packages/package-management.scm (guix-build-coordinator)[inputs]: Move guile inputs to propagated inputs. [propagated-inputs]: Receive some inputs. * gnu/services/guix.scm (make-guix-build-coordinator-start-script): Adjust the start script to include propagated inputs.
* services: guix: Fix the guix-build-coordinator metrics namespace.Christopher Baines2020-10-23
| | | | | | | The underscore is now handled in the guile prometheus library. * gnu/services/guix.scm (make-guix-build-coordinator-start-script): Remove the underscore from the end of the metrics namespace.
* services: guix-build-coordinator: Configure output buffering.Christopher Baines2020-10-23
| | | | | | | Otherwise the logging is garbled. * gnu/services/guix.scm (make-guix-build-coordinator-start-script): Configure line output buffering for stdout and stderr.
* services: guix-build-coordinator: Include the system profile in PATH.Christopher Baines2020-10-23
| | | | | | | As this allows hooks to use the system profile, if that's desired. * gnu/services/guix.scm (guix-build-coordinator-shepherd-services): Set PATH to include the system profile.
* services: guix-build-coordinator: Output the start script name.Christopher Baines2020-10-23
| | | | | | | As this can be useful for debugging purposes. * gnu/services/guix.scm (make-guix-build-coordinator-start-script): Output the current filename.
* services: guix: Fix hooks gexp issue for the Guix Build Coordinator.Christopher Baines2020-10-23
| | | | | * gnu/services/guix.scm (make-guix-build-coordinator-start-script): Fix handling the name within the hook gexp.
* services: databases: Don't specify a default postgresql version.Christopher Baines2020-10-20
| | | | | | | | | | | | | | | | | | | | Currently, if the postgresql package major version changes, this is going to break the service upon upgrade, because PostgreSQL will reject the data files from the differing major version of the service. Because it's important to either keep running a particular major version, or intentionally upgrade, I think the configuration would be better with no default. I think this is also going to be helpful when trying to assist users upgrading PostgreSQL. * gnu/services/databases.scm (<postgresql-configuration>): Remove default for postgresql. (postgresql-service-type): Remove the default value. * gnu/tests/databases.scm (%postgresql-os): Update accordingly. * gnu/tests/guix.scm (%guix-data-service-os): Update accordingly. * gnu/tests/monitoring.scm (%zabbix-os): Update accordingly. * gnu/tests/web.scm (patchwork-os): Update accordingly. * doc/guix.texi (PostgreSQL): Update accordingly.
* services: databases: Deprecate the postgresql-service procedure.Christopher Baines2020-10-20
| | | | | | | | | Using the service type directly is a better approach, making it easier to configure the service. * gnu/services/databases.scm (postgresql-service): Deprecate this procedure. * doc/guix.texi (PostgreSQL): Update the documentation for the use of (service postgresql-service-type).
* services: guix: Fix coordinator agent.Mathieu Othacehe2020-10-20
| | | | | * gnu/services/guix.scm (guix-build-coordinator-agent-activation): Define %user variable.