Commit graph

981 commits

Author SHA1 Message Date
Christopher Baines
d8ab68b929
services: guix-data-service: Allow passing extra options.
This is so that the options supported by the service configuration don't have
to always be changed. Generally though all options should be explicitly
supported and documented, so this is mostly to facilitate experimentation.

* gnu/services/guix.scm (<guix-data-service-configuration>): Add extra-options
and extra-process-jobs-options to the record type.
(guix-data-service-shepherd-services): Handle these new configuration record
fields.
* doc/guix.texi (Guix Data Service): Document these new options.
2020-03-08 23:35:03 +00:00
Jack Hill
f6713b55a1
services: certbot: Add server option.
* gnu/services/certbot.scm (certbot-configuration): Add server option.
(certbot-command): Use server option.
(certbot-actication): Use server option.
(certbot-nginx-server-configurations): Use server option.
* doc/guix.texi (Certificate Services): Document server option.

Co-authored-by: Tobias Geerinckx-Rice <me@tobias.gr>
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2020-03-08 21:21:57 +01:00
Maxim Cournoyer
5fdc5b2d57
services: nfs: Run rpc.mountd in foreground.
Fixes <https://bugs.gnu.org/39708>.

Shepherd doesn't keep track of processes that fork themselves and would
disable the process after restarting it a couple times.

* gnu/services/nfs.scm (nfs-shepherd-services): Invoke rpc.mountd with the
'--foreground' option.
2020-03-08 00:26:02 -05:00
Ludovic Courtès
24a4a635fd
gnu: eudev: Add variant with corrected Btrfs rules.
Discussed at <https://bugs.gnu.org/39926>.

* gnu/packages/linux.scm (eudev/btrfs-fix): New variable.
* gnu/services/base.scm (<udev-configuration>)[udev]: Default to it.
(udev-service): Likewise for #:udev.
2020-03-07 22:30:00 +01:00
Mathieu Othacehe
8f5a0a97b1
services: herd: Add restart-service.
* gnu/services/herd.scm (restart-service): New exported procedure.
2020-03-03 15:00:32 +01:00
Jakub Kądziołka
50be0da7bf
services: set-xorg-configuration: handle slim and sddm
* gnu/services/xorg.scm (handle-xorg-configuration): New syntax.
  (gdm-service-type, slim-service-type): Use handle-xorg-configuration.
* gnu/services/sddm.scm (sddm-service-type): Likewise.
2020-03-01 14:13:27 +01:00
Florian Pelz
00500449b0
services: udev: Do not rely on shepherd inheriting environment variables.
Fixes <https://bugs.gnu.org/39671>.

* gnu/services/base.scm (udev-shepherd-service)[start] Move or copy
environment variables to 'fork+exec-command' instead of 'setenv'.
2020-02-20 22:34:06 +00:00
Julien Lepiller
c6c447701c
gnu: services: Add openvpn options.
* gnu/services/vpn.scm (openvpn-client-configuration)
(openvpn-server-configuration): Add fast-io? and auth-user-pass options.
2020-02-19 04:08:55 +01:00
Julien Lepiller
0372dd1a1e
gnu: services: Fix openvpn boolean fields.
* gnu/services/vpn.scm (serialize-boolean): Do not print #t to the file.
2020-02-19 04:08:40 +01:00
Ludovic Courtès
8b9cad01e9
services: shepherd: Spawn services with nothing but the PATH variable.
Previously, services spawned with 'make-forkexec-constructor' &
co. would all inherit the environment variables of PID 1, which includes
things like 'BOOT_IMAGE'.  This change resets it to the bare minimum.

* gnu/services/shepherd.scm (shepherd-configuration-file): Add call to
'default-environment-variables'.  Remove 'setenv' call.
2020-02-16 23:31:08 +01:00
Efraim Flashner
3c6aca4232
doc: Fix typo.
* doc/guix.texi (X Window)[sddm-service-type]: SSDM -> SDDM typo fix.
[sddm-configuration]: Also list 'maya' theme.
* gnu/services/sddm.scm (sddm-service): Fix typo in doc string.
(sddm-configuration): Also list 'maya' theme.
2020-02-16 09:25:00 +02:00
shtwzrd
779d96c9b0
services: xorg: Filter modules based on system
Fixes <https://bugs.gnu.org/39402>.
Reported by shtwzrd <shtwzrd@protonmail.com>.

* gnu/services/xorg.scm (xorg-configuration):
  Apply a filter over %default-xorg-modules packages, excluding
  those for which the %current-system is not among the package's
  supported-systems.

This patch makes it possible to use xorg-configuration on systems
other than x86_64 and i686, as without it, xf86-video-intel would
be pulled in on the unsupported architecture and fail.

Signed-off-by: Jakub Kądziołka <kuba@kadziolka.net>
2020-02-16 00:02:10 +01:00
Christopher Baines
f325a33e16
services: web: Use the Patchwork default-from-email.
Previously this wasn't used, but it should have been.

* gnu/services/web.scm (patchwork-settings-module-compiler): Use the
default-from-email.
2020-02-09 11:17:13 +00:00
Tim Gesthuizen
daec54f062
services: inputattach: Fix broken baud rate option.
* gnu/services/desktop.scm (inputattach-shepherd-service): Use "--baud" for
setting the baud-rate.

Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
2020-02-07 11:51:02 +08:00
Nicolas Goaziou
8a890f3c40
gnu: tlp: Update to 1.3.0.
* gnu/packages/linux.scm (tlp): Update to 1.3.0.
[source]: Hard-code name in origin URI.
[native-inputs]: Add "shellcheck".
[arguments]: Activate some tests.  Update environment variables.  Ignore
tlp-rdw man pages.
* gnu/services/pm.scm (tlp-activation): Update configuration file name.
2020-02-02 10:42:16 +01:00
Vagrant Cascadian
3d0c79186c
services: virtualization: Add riscv32 and riscv64 to qemu platforms.
* gnu/services/virtualization (%riscv32): New variable.
  (%riscv64): New variable.
  (%qemu-platforms): Add riscv32 and riscv64.
2020-02-01 16:40:41 -08:00
Maxim Cournoyer
d3e439e355
gnu: Add earlyoom-service-type.
* gnu/services/linux.scm: New file.
* tests/services/linux.scm: Add test.
* Makefile.am (SCM_TESTS): Register test.
* doc/guix.texi (Linux Services): Add a new section and document the new
service and its configuration.
2020-01-31 23:37:13 -05:00
Tobias Geerinckx-Rice
c3f146e79a
gnu: Update opensmtpd configuration grammar.
This follows up on commit 0d48690908.

* gnu/services/mail.scm (%default-opensmtpd-config-file): Adapt to ‘new’
≥6.4 grammar.
* gnu/tests/mail.scm (%opensmtpd-os): Likewise.
2020-01-31 00:42:48 +01:00
Vagrant Cascadian
9ea68dd7be
services: getmail: Fix spelling of "address".
* gnu/services/getmail (getmail-retriever-configuration): Fix typo.
2020-01-30 15:27:31 -08:00
Leo Prikler
9111f97500
services: gdm: Disable initial system setup in GDM.
* gnu/services/xorg.scm (gdm-configuration-file): Disable gnome-initial-setup.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2020-01-28 21:06:24 +01:00
Damien Cassou
9a5edd0240
services: Fix typo in spice-vdagent-service.
* gnu/services/spice.scm (spice-vdagent-service): Fix typo.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2020-01-26 18:45:09 +01:00
宋文武
244db6bbc8
services: knot-resolver: Manage a root TA at /var/cache/knot-resolver.
* gnu/services/dns.scm (%kresd.conf): Add /var/cache/knot-resolver/root.keys
as the root TA.
2020-01-22 20:18:56 +08:00
Ludovic Courtès
b2f948be9f
services: sane: Create the "scanner" account.
* gnu/services/desktop.scm (%sane-accounts, sane-service-type): New
variables.
(%desktop-services): Use SANE-SERVICE-TYPE instead of 'simple-service'.
* doc/guix.texi (Desktop Services): Document 'sane-service-type'.
2020-01-21 15:01:46 +01:00
Christopher Baines
c8defb2b2a
services: getmail: Adjust a couple of default configuration values.
Change the message-log-syslog and message-log-verbose configuration values to
match the Getmail defaults.

* gnu/services/getmail.scm (getmail-options-configuration): Change defaults
for message-log-syslog and message-log-verbose
* doc/guix.texi (Mail Services): Update the Getmail documentation accordingly.
2020-01-20 19:13:16 +00:00
Christopher Baines
2e1a314871
services: getmail: Fix some configuration documentation strings.
* gnu/services/getmail.scm (getmail-retriever-configuration): Specify proper
documentation strings for some of the fields.
* doc/guix.texi (Mail Services): Update the documentation accordingly.
2020-01-20 19:09:00 +00:00
Christopher Baines
147a7f1fd2
services: getmail: Fix stopping the shepherd service.
* gnu/services/getmail.scm (getmail-shepherd-services): Add a stop component
to the shepherd services.
2020-01-20 19:01:23 +00:00
Danny Milosavljevic
19b310901c
services: Add "sane" service.
* gnu/services/desktop.scm (%desktop-services): Add "sane" service.
2020-01-20 18:46:07 +01:00
Tobias Geerinckx-Rice
f460f8da68
gnu: Use HTTPS for avahi.org everywhere.
* gnu/packages/avahi.scm (avahi)[home-page]: Use HTTPS.
* gnu/services/avahi.scm (avahi-service): Likewise in docstring.
2020-01-19 06:09:01 +01:00
Alex Sassmannshausen
33ed8296c0
gnu: services: Allow extra content in mysql configuration.
* gnu/services/databases.scm (<mysql-configuration>): New field.
  (mysql-configuration-file): Use it.
2020-01-17 11:28:40 +01:00
Julien Lepiller
5c3d77c3b1
gnu: services: Fix mysql service activation.
This change is necessary after the split of mariadb outputs.

* gnu/services/databases.scm (%mysql-activation): Use mysql:lib in
mariadb-specific part.
2020-01-14 00:43:00 +01:00
Leo Prikler
71e33e32fc
services: Add pulseaudio to %desktop-services.
Fixes <https://bugs.gnu.org/38172>.
Reported by raingloom <raingloom@riseup.net>.

* gnu/services/desktop.scm (%desktop-services): Add pulseaudio service.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2020-01-11 18:18:51 +01:00
Leo Prikler
f1022fbf2f
services: Split ladspa-service-type from pulseaudio-service-type.
* gnu/services/sound.scm (ladspa-configuration): New record.
(ladspa-environment): New procedure.
(ladspa-service-type): New service type.
(pulseaudio-environment): Remove LADSPA_PATH.
* doc/guix.texi: Adjust documentation.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2020-01-11 18:18:51 +01:00
Leo Prikler
f6f9181130
services: pulseaudio-configuration: Set flat-volumes to no.
* gnu/services/sound (pulseaudio-configuration) [daemon-conf]: Disable
flat-volumes, which causes unpleasant experiences to users when applications
inadvertently max out the system volume (e.g. as in #38172).

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2020-01-11 18:18:51 +01:00
Leo Prikler
f547426200
services: Add pulseaudio-configuration.
* gnu/services/sound (<pulseaudio-configuration>): New record.
(pulseaudio-etc): New procedure.
(pulseaudio-environment): Add PULSE_CONFIG and PULSE_CLIENTCONFIG.
(pulseaudio-service-type): Update accordingly.

Signed-off-by: Marius Bakke <mbakke@fastmail.com>
2020-01-11 18:18:50 +01:00
Ricardo Wurmus
907eeac2e7
services: nfs: Add nfs-service-type.
* gnu/services/nfs.scm (<nfs-configuration>): New record.
(nfs-configuration, nfs-configuration?, nfs-configuration-nfs-utils,
nfs-configuration-nfs-version, nfs-configuration-exports,
nfs-configuration-rpcmountd-port, nfs-configuration-rpcstatd-port,
nfs-configuration-rpcbind, nfs-configuration-idmap-domain,
nfs-configuration-nfsd-port, nfs-configuration-nfsd-threads,
nfs-configuration-pipefs-directory, nfs-configuration-debug,
nfs-shepherd-services): New procedures.
(nfs-service-type): New variable.
* doc/guix.texi (Network File System): Document it.
* gnu/tests/nfs.scm (%test-nfs-server): New variable.
(%base-os): Use default value of rpcbind-service-type.
2020-01-08 23:56:16 +01:00
Ricardo Wurmus
a6bdca6b9b
services: nfs: Allow gss-service-type to be extended.
* gnu/services/nfs.scm (gss-service-type): Rewrite using SERVICE-TYPE to add
ability to extend the service.
2020-01-08 23:56:16 +01:00
Ricardo Wurmus
2a23942e3f
services: nfs: Add verbosity control to idmap-service-type.
* gnu/services/nfs.scm (<idmap-configuration>)[verbosity]: New field.
(idmap-configuration-verbosity): New procedure.
(idmap-service-type): Use it.
* doc/guix.texi (Network File System): Document it.
2020-01-08 23:56:16 +01:00
Ricardo Wurmus
af32ea3583
services: nfs: Allow idmap-service-type to be extended.
* gnu/services/nfs.scm (idmap-service-type): Rewrite using SERVICE-TYPE to add
ability to extend the service.
2020-01-08 23:56:16 +01:00
Ricardo Wurmus
5d4ba49891
services: nfs: Fix indentation and typo.
* gnu/services/nfs.scm (<gss-configuration>, <idmap-configuration>): Fix
indentation.
(<idmap-configuration>): Rename accessor for NFS-UTILS field to
IDMAP-CONFIGURATION-NFS-UTILS.
(idmap-service-type): Use IDMAP-CONFIGURATION-NFS-UTILS.
2020-01-08 23:56:16 +01:00
Ricardo Wurmus
25c8c8cd4f
services: nfs: Allow pipefs-service-type to be extended.
* gnu/services/nfs.scm (pipefs-service-type): Rewrite using SERVICE-TYPE to
add ability to extend the service.
2020-01-08 23:56:16 +01:00
Ricardo Wurmus
ba1808d5e7
services: nfs: Allow rpcbind-service-type to be extended.
* gnu/services/nfs.scm (rpcbind-service-type): Rewrite using SERVICE-TYPE to
add ability to extend the service.
2020-01-08 23:56:16 +01:00
Ricardo Wurmus
981ce38937
services: nfs: Fix name of package variable.
* gnu/services/nfs.scm (rpcbind-service-type): Correct name from nfs-utils to
rpcbind.
2020-01-08 23:56:11 +01:00
Oleg Pykhalov
a66ee82a05
services: Add pulseaudio service.
* gnu/services/sound.scm (pulseaudio-environment): New procedure.
(pulseaudio-service-type): New variable.
* doc/guix.texi (Sound Services): Document it.
2020-01-08 10:21:45 +03:00
Ludovic Courtès
6a7c4636d4
Adjust module autoloads.
In Guile < 2.9.7, autoloading a module would give you access to all its
bindings.  In future versions, autoloading a module gives access only to
the listed bindings, as per #:select (see <https://bugs.gnu.org/38895>).

This commit adjusts autoloads to the new semantics, allowing Guix to be
built with Guile 2.9.7/2.9.8.

* guix/build/download.scm <top level>: Remove call to 'module-autoload!'.
(load-gnutls): New procedure.
(tls-wrap): Call it.
* guix/git.scm <top level>: Remove call to 'module-autoload!'.
(load-git-submodules): New procedure.
(update-submodules): Call it instead of 'resolve-interface'.
* gnu/bootloader/grub.scm: Replace #:autoload with #:use-module.
* gnu/packages.scm: Likewise.
* gnu/packages/ssh.scm: Likewise.
* gnu/packages/tex.scm: Likewise.
* gnu/services/cuirass.scm: Likewise.
* gnu/services/mcron.scm: Likewise.
* guix/lint.scm: Augment list of bindings in #:autoload.
* guix/scripts/build.scm: Likewise.
* guix/scripts/gc.scm: Likewise.
* guix/scripts/pack.scm: Likewise.
* guix/scripts/publish.scm: Likewise.
* guix/scripts/pull.scm: Likewise.
* guix/utils.scm: Remove unnecessary #:autoload clauses; replace one
of them with #:use-module.
2020-01-06 16:31:54 +01:00
Efraim Flashner
71fc086ae9
services: host-name: Make service one-shot.
* gnu/services/base.scm (host-name-service-type): Remove 'respawn?'
keyword from shepherd-service-type, add 'one-shot?'.
2020-01-05 20:28:29 +02:00
Jan Nieuwenhuizen
022ad24c41
services: console-font: Update example with HDPI font suggestion.
This solution was kindly provided by Bernard M. Wiedemann.

* gnu/services/base.scm (console-font-service-type): Add ter132n (terminus 132
nomal) font example, for HDPI displays.
* doc/guix.texi (Invoking guix system): Update to `guix system search console'
example output.
2019-12-30 23:40:12 +01:00
Brice Waegeneire
747b7246a6
services: dhcp-client: Ignore interfaces that cannot be activated.
Fixes <https://bugs.gnu.org/38524>.

* gnu/services/networking.scm (dhcp-client-service-type): Filter interfaces
that cannot be activated.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-12-29 18:24:55 +01:00
Ludovic Courtès
6ee87461e0
services: Add Mumi service.
* gnu/services/web.scm (%mumi-activation, %mumi-accounts): New variables.
(mumi-shepherd-services): New procedure.
(mumi-service-type): New variable.
* doc/guix.texi (Web Services): Document it.
2019-12-21 23:55:25 +01:00
Robert Vollmert
e7d45693d9
services: mcron: Add description.
* gnu/services/mcron.scm (mcron-service-type): Add description.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-12-08 00:47:26 +01:00
Leo Prikler
fe7b59c6b1
services: Add GNOME Keyring service.
* gnu/services/desktop.scm: (<gnome-keyring-configuration>): New record type.
(pam-gnome-keyring): New procedure.
(gnome-keyring-service-type): New variable.
* doc/guix.texi (Desktop Services): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-12-04 18:16:08 +01:00