summaryrefslogtreecommitdiff
path: root/gnu/services
AgeCommit message (Collapse)Author
2020-12-01services: MySQL: Fix indentation.Marius Bakke
* gnu/services/databases.scm (mysql-upgrade-wrapper): Adjust indentation.
2020-12-01services: databases: Do not export record type descriptors.Marius Bakke
* gnu/services/databases.scm (<postgresql-config-file>, <postgresql-configuration>, <memcached-configuration>, <mongodb-configuration>): Remove exports.
2020-11-29Use substitute servers on the local network.Mathieu Othacehe
* 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.
2020-11-29publish: Add advertising support.Mathieu Othacehe
* 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.
2020-11-29services: zabbix-agent: Delete not mandatory hostname configuration.Oleg Pykhalov
* gnu/services/monitoring.scm (zabbix-agent-configuration)[hostname]: Set to empty string.
2020-11-28services: MySQL: Upgrade database schemas automatically.Marius Bakke
* 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.
2020-11-28services: MySQL: Make the socket configurable.Marius Bakke
* gnu/services/databases.scm (<mysql-configuration>): Add SOCKET field. (mysql-configuration-file): Adjust accordingly. * doc/guix.texi (Database Services): Likewise.
2020-11-28services: MySQL: Bind to localhost only by default.Marius Bakke
* gnu/services/databases.scm (<mysql-configuration>): Add BIND-ADDRESS field. (mysql-configuration-file): Adjust accordingly. * doc/guix.texi (Database Services): Document it.
2020-11-28services: MySQL: Deprecate 'mysql-service'.Marius Bakke
* 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.
2020-11-26mapped-devices: Allow target to be list of strings.Mikhail Tsykalov
* 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>
2020-11-21services: cups: Add Splix by default.Tobias Geerinckx-Rice
* gnu/services/cups.scm (cups-configuration): Add splix to the default extensions. * doc/guix.texi (Printing Services): Document it.
2020-11-21gnu: Rename escpr to epson-inkjet-printer-escpr.Tobias Geerinckx-Rice
‘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.
2020-11-20Merge branch 'version-1.2.0' into master.Maxim Cournoyer
2020-11-18services: base: Re-export %default-substitute-urls from (guix store).Marius Bakke
* gnu/services/base.scm: Export %DEFAULT-SUBSTITUTE-URLS.
2020-11-18services: SDDM: Wait for elogind before starting.Marius Bakke
Fixes <https://bugs.gnu.org/44669>. * gnu/services/sddm.scm (sddm-shepherd-service)[requirement]: Add elogind.
2020-11-18Merge remote-tracking branch 'upstream/version-1.2.0'Tobias Geerinckx-Rice
2020-11-18gnu: vpn: Make ca, key and cert optional.Julien Lepiller
* 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.
2020-11-18services: shepherd: Map all the invalid store characters to dash.Ludovic Courtès
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 #\-.
2020-11-18services: cups: Add some extensions by default.Danny Milosavljevic
* gnu/services/cups.scm (cups-configuration): Add some extensions by default. doc/guix.texi (Printing Services): Document the default value.
2020-11-17Merge remote-tracking branch 'origin/version-1.2.0' into masterMaxim Cournoyer
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.
2020-11-16services: mingetty: Export configuration accessors.Marius Bakke
* gnu/services/base: Export configuration accessors for mingetty.
2020-11-16Properly deal with build directories containing '~'.Ludovic Courtès
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.
2020-11-14services: gmnisrv: Export procedures and service type.Alexandru-Sergiu Marton
* 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>
2020-11-12Merge branch 'version-1.2.0'Ludovic Courtès
2020-11-11gnu: mingetty-shepherd-service: Make 'clear-on-logout' configurable.Mark H Weaver
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.
2020-11-09services: nginx: Re-introduce server-names-hash-bucket-size.Julien Lepiller
This was unintentionally removed in 00014f769233facebd84f13a00b10032a22cb440. * gnu/services/web.scm (default-nginx-config): Re-introduce processing of server-names-hash-bucket-size option.
2020-11-09services: nginx: Re-introduce server-names-hash-bucket-size.Julien Lepiller
This was unintentionally removed in 00014f769233facebd84f13a00b10032a22cb440. * gnu/services/web.scm (default-nginx-config): Re-introduce processing of server-names-hash-bucket-size option.
2020-11-07services: guix: Fix Guix Build Coordinator substitute urls bug.Christopher Baines
* gnu/services/guix.scm (guix-build-coordinator-agent-shepherd-services): Pass the correct value as the --non-derivation-substitute-urls.
2020-11-07services: guix: Remove the Guix Build Coordinator agent pid file.Christopher Baines
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.
2020-11-07services: guix: Add guix-build-coordinator-agent cache directory.Christopher Baines
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.
2020-11-06services: mpd: Fix daemon startup.Ludovic Courtès
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.
2020-11-06services: mpd: Always create the "mpd" user account.Ludovic Courtès
* gnu/services/audio.scm (%mpd-accounts): New variable. (mpd-service-type)[extensions]: Add ACCOUNT-SERVICE-TYPE extension.
2020-11-06services: mpd: Do not eagerly look for a user.Maxim Cournoyer
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.
2020-11-05services: Add yggdrasil-service-type.raingloom
* 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>
2020-11-05services: Remove imports of (ice-9 …) modules.Ludovic Courtès
* 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.
2020-11-05services: guix: Do not embed the host (guix config).Ludovic Courtès
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).
2020-10-30services: guix-publish: Add 'cache-bypass-threshold' field.Ludovic Courtès
This is a followup to ecaa102a58ad3ab0b42e04a3d10d7c761c05ec98. * gnu/services/base.scm (<guix-publish-configuration>)[cache-bypass-threshold]: New field. (guix-publish-shepherd-service): Honor it.
2020-10-30services: swap: Allow for UUIDs and file system labels.Ludovic Courtès
* 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.
2020-10-28gnu: ganeti-luxid-service-type: Fix typo.Vagrant Cascadian
* gnu/services/ganeti (ganeti-luxid-service-type)[description]: Fix spelling of "authoritative".
2020-10-27services: knot-resolver: Replace deprecated command-line option.Simon South
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>
2020-10-27services: Add gmnisrv web service.Alexandru-Sergiu Marton
* 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>
2020-10-27services: hpcguix-web: Set 'XDG_CACHE_HOME' to a writable directory.Ludovic Courtès
* 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.
2020-10-25services: guix: Make /etc/guix/acl really declarative by default.Ludovic Courtès
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.
2020-10-23gnu: guix-build-coordinator: Propagate the guile inputs.Christopher Baines
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.
2020-10-23services: guix: Fix the guix-build-coordinator metrics namespace.Christopher Baines
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.
2020-10-23services: guix-build-coordinator: Configure output buffering.Christopher Baines
Otherwise the logging is garbled. * gnu/services/guix.scm (make-guix-build-coordinator-start-script): Configure line output buffering for stdout and stderr.
2020-10-23services: guix-build-coordinator: Include the system profile in PATH.Christopher Baines
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.
2020-10-23services: guix-build-coordinator: Output the start script name.Christopher Baines
As this can be useful for debugging purposes. * gnu/services/guix.scm (make-guix-build-coordinator-start-script): Output the current filename.
2020-10-23services: guix: Fix hooks gexp issue for the Guix Build Coordinator.Christopher Baines
* gnu/services/guix.scm (make-guix-build-coordinator-start-script): Fix handling the name within the hook gexp.
2020-10-20services: databases: Don't specify a default postgresql version.Christopher Baines
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.