Commit graph

1101 commits

Author SHA1 Message Date
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
Leo Famulari
1a7633c239
services: SSH services: Provide 'ssh' and 'sshd' Shepherd services.
* gnu/services/ssh.scm (lsh-shepherd-service, dropbear-shepherd-service,
openssh-sheperd-service): Add 'ssh' and 'sshd' to provision.
2019-12-04 08:31:39 -05:00
Leo Prikler
27b77228cf
services: Add polkit-wheel-service to %desktop-services.
* gnu/services/desktop.scm: (%desktop-services): Add polkit-wheel-service.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-11-30 23:50:40 +01:00
Leo Prikler
7f25ff10e1
services: Add polkit-wheel-service.
* gnu/services/desktop.scm: (polkit-wheel): New variable.
(polkit-wheel-service): New service.
* doc/guix.texi: Document polkit-wheel-service.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-11-30 23:50:40 +01:00
Guillaume Le Vaillant
c1c6650e28
services: Add pam-mount.
* gnu/services/pam-mount.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (PAM Mount Service): New subsection.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-11-28 13:30:53 +01:00
Ludovic Courtès
73765c91ce
services: nginx: Add description.
* gnu/services/web.scm (nginx-service-type)[description]: New field.
2019-11-28 13:30:53 +01:00
Efraim Flashner
77ed06a8bf
services: sysctl: Make service one-shot.
* gnu/services/sysctl.scm (sysctl-shepherd-service): Adjust shepherd
service to use the 'one-shot?' keyword. Remove 'stop' command. Remove
'respawn' option.
2019-11-20 21:23:19 +02:00
Ludovic Courtès
1f8ca28b9e
services: dbus: Simplify 'dbus-uuidgen' invocation.
* gnu/services/dbus.scm (dbus-activation): Use the "--ensure" option of
'dbus-uuidgen' instead of forking and redirecting ports.
2019-11-13 23:26:36 +01:00
Ludovic Courtès
7462a1de22
services: dbus: Log to syslog.
* gnu/services/dbus.scm (dbus-shepherd-service): Add 'syslogd' to
'requirement'.  Pass the "--syslog-only" command-line option.
2019-11-13 23:26:36 +01:00
Ludovic Courtès
a01d2e300a
services: dbus: Add description.
* gnu/services/dbus.scm (dbus-root-service-type)[description]: New
field.
2019-11-13 23:26:36 +01:00
Alex Griffin
a2161c861f
services: Add pagekite-service-type.
* gnu/services/networking.scm (pagekite-service-type): New service type.
(<pagekite-configuration>): New record type.
(pagekite-shepherd-service): New procedure.
* doc/guix.texi (Networking Services): Document it.
2019-11-11 14:03:45 -06:00
宋文武
6ec68c69b0
services: Add knot-resolver-service-type.
* gnu/services/dns.scm (<knot-resolver-configuration>): New record type.
(knot-resolver-activation, knot-resolver-shpherd-services): New procedures.
(%knot-resolver-accounts, %kresd.conf, knot-resolver-service-type): New
variables.
* doc/guix.texi (DNS Services): Document it.
2019-11-11 20:30:53 +08:00
Ludovic Courtès
7c34c62c80
services: hpcguix-web: Delete lock files during activation.
* gnu/services/web.scm (%hpcguix-web-activation): Delete ".lock" files
from HOME-DIR.
2019-11-09 23:04:14 +01:00
Ludovic Courtès
1ce0d7e190
services: hpcguix-web: Explicitly import (guix build utils).
* gnu/services/web.scm (%hpcguix-web-activation): Add explicit
'with-imported-modules'.
2019-11-09 23:04:14 +01:00
Robert Smith
970cb5cece
services: mpd: Connect to the user's PulseAudio socket.
* gnu/services/audio.scm (mpd-shepherd-service): Set the XDG_RUNTIME_DIR
environment variable.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2019-11-08 21:32:45 +01:00
Florian Pelz
00e680a411
services: Make it possible to include dynamic modules in nginx.
* gnu/services/web.scm (<nginx-configuration>): Add modules field.
(nginx-configuration-modules): New field accessor.
(emit-load-module): New procedure.
(default-nginx-config): Add support for the modules field.
* doc/guix.texi (NGINX): Document it.
2019-11-07 22:15:11 +00:00
Miguel Ángel Arruga Vivas
2dfb9ba406
services: libvirtd: Provide ip binary at runtime.
* gnu/services/virtualization.scm (libvirt-shepherd-service): Add sbin to
the PATH variable, as ip binary is installed there.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-11-05 15:13:15 +01:00
Efraim Flashner
548efa8bdf
services: patchwork: Fix typo.
* gnu/services.web.scm (define-gexp-compiler): Use 'enable-rest-api?'
where appropriate in place of 'enable-xmlrpc?'
2019-11-05 14:51:57 +02:00
Oleg Pykhalov
13f0414ece
gnu: zabbix-agentd: Update to 4.4.1.
* gnu/packages/monitoring.scm (zabbix-agentd): Update to 4.4.1.
* gnu/services/monitoring.scm (%zabbix-front-end-configuration-nginx): Add
listen record field.
2019-11-03 14:46:51 +03:00
Ludovic Courtès
27727b18b8
services: dbus: Remove non-existent directories from 'system-local.conf'.
This typically halves the number of entries in
/etc/dbus-1/system-local.conf.

* gnu/services/dbus.scm (dbus-configuration-directory)[build](directives):
New macro.
(services->sxml): Use it.
2019-11-02 00:12:19 +01:00
Ludovic Courtès
33f9778bc8
services: dbus: Include each service's "share/dbus-1/system.d".
Fixes <https://bugs.gnu.org/37911>.
Reported by Jack Hill <jackhill@jackhill.us>.

Sometime between 1.1.8 and 1.4.3, 'colord' moved had its
'org.freedesktop.ColorManager.conf' file moved from
"etc/dbus-1/system.d" to "share/dbus-1/system.d".  Adjust to this
change.

* gnu/services/dbus.scm (dbus-configuration-directory): Add an
'includedir' directive for DIR/share/dbus-1/system.d.
2019-11-02 00:12:19 +01:00
Ludovic Courtès
5afa23e180
services: colord: Deprecate 'colord-service' procedure.
* gnu/services/desktop.scm (colord-service-type)[default-value]: New field.
(colord-service): Define with 'define-deprecated'.
(%desktop-services): Use 'colord-service-type' instead of 'colord-service'.
* doc/guix.texi (Desktop Services): Adjust accordingly.
2019-11-01 12:23:45 +01:00
Maxim Cournoyer
f37ad658ea
services: ntp: Fix a crash when using legacy configuration.
Fixes issue #37504 (see: https://bugs.gnu.org/37504).

The bug was caused by the fact that destructuring an <ntp-configuration>
record using match would bind the 'servers' field without using the
compatibility accessor.

* gnu/services/networking.scm (ntp-shepherd-service): Replace `match-lambda'
by distinct `lambda' and `match' calls, so that the 'servers' field can be
generated by applying the `ntp-configuration-servers' procedure to the
configuration object.
2019-10-31 23:37:47 -04:00
Maxim Cournoyer
97bc3cbea5
services: ntp: Ensure no double quotes are output to config file.
* gnu/services/networking.scm (ntp-server->string): Use the textual
representation of the values as printed by 'display' rather than 'write', to
avoid inserting double quotes in the generated config.
* tests/networking.scm (%ntp-server-sample): Add a comment and make one of the
options a string, to exercise the fix.
("ntp-server->string"): Move the expected value to the first argument.
("ntp configuration servers deprecated form"): Likewise.
("openntpd generated config string ends with a newline"): Likewise.
2019-10-30 18:15:54 -04:00
Ricardo Wurmus
878e0e1bb0
gnu: mpd-service-type: Support configuration of outputs.
* gnu/services/audio.scm (<mpd-output>): New record type.
(<mpd-configuration>)[outputs]: New field.
(mpd-output, mpd-output?, mpd-output->string): New procedures.
(mpd-config->file): Use mpd-output->string.
* doc/guix.texi (Audio Services): Document mpd-output fields.
2019-10-29 15:14:22 +01:00
Timothy Sample
88f95687c7
services: gdm: Add 'debug?' configuration field.
* gnu/services/xorg.scm (<gdm-configuration>)[debug?]: New field.
(gdm-configuration-file): Use it.
* doc/guix.texi: Document it.
2019-10-26 17:04:36 -04:00
Ludovic Courtès
b40f4a5995
services: cuirass: Create /var/log/cuirass during activation.
* gnu/services/cuirass.scm (cuirass-activation): Create "/var/log/cuirass".
2019-10-23 21:48:51 +02:00
Ludovic Courtès
00850bb836
services: elogind, gnome, mate, xfce: Fix config type predicate identifiers.
* gnu/services/desktop.scm (<elogind-configuration>): Add question mark
in type predicate identifier.
(<gnome-desktop-configuration>): Likewise.
(<mate-desktop-configuration>): Likewise.
(<xfce-desktop-configuration>): Likewise.
2019-10-22 18:32:52 +02:00
Tim Gesthuizen
84261a233e
services: inputattach: Add 'baud-rate' parameter.
* gnu/services/desktop.scm (inputattach-configuration): Add baud-rate field.
  (inputattach-shepherd-service): Add baud-rate to parameters when specified.
* doc/guix.texi (Miscellaneous Services): [inputattach Service] Document
  baud-rate parameter.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-10-21 23:26:33 +02:00
Ludovic Courtès
5f15b42273
services: agetty: Really import (gnu build linux-boot).
This is a followup to commit 62c2217570.

* gnu/services/base.scm (agetty-shepherd-service)[start]: Wrap un
'with-imported-modules'.  This fixes a build error when TTY is true
("no code for module (gnu build linux-boot)").
2019-10-21 18:16:16 +02:00
Ludovic Courtès
cfe8d8063b
services: sddm: Add description.
* gnu/services/sddm.scm (sddm-service-type)[description]: New field.
2019-10-21 18:16:16 +02:00
Ludovic Courtès
8cf3e167c1
services: sddm: Deprecate 'sddm-service' procedure.
* gnu/services/sddm.scm (sddm-service): Mark as deprecated.
* doc/guix.texi (X Window): Document 'sddm-service-type' and
'sddm-configuration'.
2019-10-21 18:16:16 +02:00
Brendan Tildesley
5ac5f2c129
services: sddm: Add default configuration.
Unlike gdm-service-type, sddm-service-type cannot be configured in an
operating-system configuration by simply adding (service
sddm-service-type). This adds the default SDDM configuration just like
GDM does..

* gnu/services/sddm.scm (sddm-service-type)[default-value]: New field.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-10-21 18:16:16 +02:00
David Wilson
849af4ae1b
services: xfce: Add xfce4-power-manager to polkit settings.
* gnu/services/desktop.scm (xfce-desktop-service-type): Add
xfce4-power-manager to polkit-service-type service extension via
new procedure 'xfce-polkit-settings'.

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2019-10-20 12:08:03 +02:00
Ludovic Courtès
e52b953434
services: network-manager: Create account for 'network-manager-openconnect'.
Previously, on startup, we'd see:

  dbus: Unknown username nm-openconnect in message bus configuration file

This fixes it.

* gnu/services/networking.scm (network-manager-accounts): New procedure.
(network-manager-service-type): Extend 'account-service-type'.
* gnu/packages/gnome.scm (network-manager-openconnect)[properties]: Add
'user-accounts'.
2019-10-18 23:22:25 +02:00
Ludovic Courtès
4e37cf35c0
services: network-manager: Export 'network-manager-configuration-vpn-plugins'.
* gnu/services/networking.scm (<network-manager-configuration>): Export
'network-manager-configuration-vpn-plugins'.
2019-10-18 23:22:25 +02:00
Ludovic Courtès
6aeae5b90b
herd: Define 'shepherd-message-port'.
* gnu/services/herd.scm (shepherd-message-port): New variable.
(display-message): Use it instead of 'current-error-port'.
2019-10-18 23:22:25 +02:00
Florian Pelz
99190575a0
Fix documentation of delete_after in the getmail service.
* doc/guix.texi (Getmail service): Remove the word `not'.
* gnu/services/getmail.scm (getmail-options-configuration): Ditto.
2019-10-18 07:53:55 +00:00
Ricardo Wurmus
e08902d3cb
Merge branch 'master' into core-updates 2019-10-06 22:02:20 +02:00
Ludovic Courtès
63b0ce391f
services: shepherd: Compile service files.
This reduces resident memory for PID 1 from 29.8MiB to 28.7MiB right
after boot on a bare-bones system (x86_64-linux).

* gnu/services/shepherd.scm (scm->go): New procedure.
(shepherd-configuration-file)[config]: Call it and use 'load-compiled'
instead of 'primitive-load'.
2019-10-06 14:45:35 +02:00
Ludovic Courtès
38b1ea0434
services: udev: Explicitly depend on (gnu build linux-boot).
* gnu/services/base.scm (udev-shepherd-service): Wrap 'start' method in
'with-imported-modules'.
2019-10-06 14:45:35 +02:00
Ludovic Courtès
62c2217570
services: agetty: Explicitly depend on (gnu build linux-boot).
* gnu/services/base.scm (default-serial-port): Wrap in
'with-imported-modules'.
2019-10-06 14:45:35 +02:00
Ludovic Courtès
81bc4533aa
services: urandom-seed: Credit the entropy added to the PRNG.
Partly fixes <https://bugs.gnu.org/37501>.
Reported by Marius Bakke <mbakke@fastmail.com>.

* gnu/services/base.scm (urandom-seed-shepherd-service): In 'start'
method, add calls to 'add-to-entropy-count'.
2019-10-05 22:05:02 +02:00
Jan Nieuwenhuizen
3a69dd5c15
services: httpd: Fix virtual-host doc and config.
* doc/guix.texi (Web Services): Fix httpd-virtualhost examples.
* gnu/services/web.scm (httpd-process-extensions): Add missing newline
separator.
2019-10-04 17:10:58 +02:00
Jesse Gibbons
0bf7d34d77
services: For "gdm-password" pam service, include "limits.conf".
* gnu/services/base.scm (pam-limits-service-type): For "gdm-password" pam
service, include "limits.conf".

Signed-off-by: Danny Milosavljevic <dannym@scratchpost.org>
2019-10-02 00:48:45 +02:00
Christopher Baines
dd2a83270b
services: Add the Guix Data Service.
* gnu/services/guix.scm: New file.
* gnu/tests/guix.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add both new files.
* doc/guix.texi (Guix Services): New section documenting the Guix Data
Service.
2019-09-25 08:35:33 +01:00
Ludovic Courtès
46e552cb0f
services: cuirass: Remove unneeded conditional.
* gnu/services/cuirass.scm (cuirass-shepherd-service): Remove unneeded 'and'.
2019-09-23 23:41:19 +02:00
Christopher Baines
b64fa7f062
services: virtualization: Change libvirtd use syslog by default.
As defaulting by stderr, along with the shepherd service not directing the
output to a log file makes seeing the output difficult, compared to logging to
syslog.

* gnu/services/virtualization.scm (libvirt-configuration)[log-outputs]: Change
default from "3:stderr" to "3:syslog:libvirtd".
2019-09-21 17:40:04 +01:00
Alexey Abramov
ad34409e85
services: dovecot: Fix predicate names for free-form fields
* gnu/services/mail.scm (free-form-fields?, free-form-args?): Change
'string' to 'string?'.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-09-21 16:48:36 +02:00
Ludovic Courtès
a43e9157ef
services: gdm: Ensure /var/lib/gdm is owned by "gdm".
Fixes <https://bugs.gnu.org/37423>.
Reported by Jan <tona_kosmicznego_smiecia@interia.pl>.

* gnu/services/xorg.scm (%gdm-activation): New variable.
(gdm-service-type)[extensions]: Add 'activation-service-type'.
2019-09-21 16:48:36 +02:00
宋文武
3c4f5ad7f4
services: Add nftables-service-type.
* gnu/services/networking.scm (%default-nftables-ruleset): New variable.
(<nftables-configuration>): New record type.
(nftables-shepherd-service): New procedure.
(nftables-service-type): New service type.
* doc/guix.texi (Networking Services): Document it.
2019-09-18 19:04:59 +08:00
Carlo Zancanaro
ec36339dfd
services: certbot: Add --manual-public-ip-logging-ok for manual challenges
* gnu/services/certbot.scm (certbot-command): Add
  --manual-public-ip-logging-ok flag to the certbot command when doing a
  manual challenge.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-09-16 10:22:35 +02:00
Ludovic Courtès
3d8424a5ad
services: Fix /usr/bin/env special file target.
This is a followup to a916215597.

* gnu/services/base.scm (%base-services): Fix "/usr/bin/env" target.
2019-09-12 23:07:42 +02:00
宋文武
5df412bfe6
services: libvirtd: Use '/run/current-system/profile/bin' as PATH.
This is a followup to ef640db2f5.

* gnu/services/virtualization.scm (libvirt-shepherd-service): Set
'#:environment-variables' for 'make-forkexec-constructor'.
2019-09-11 23:12:02 +08:00
宋文武
ef640db2f5
gnu: libvirt: Don't wrap with PATH.
This reverts commit 903e051a71 to fix
<https://bugs.gnu.org/31365>.  The full path of the 'ip' command is already
embedded, and we want to search 'qemu' in PATH.

* gnu/packages/virtualization.scm (libvirt): Remove 'wrap-libvirtd phase.  Add
configure flags to run qemu as 'nobody:kvm'.
* gnu/services/virtualization.scm (libvirt-service-type): Add 'qemu' to the
system profile.
2019-09-11 19:15:30 +08:00
Tobias Geerinckx-Rice
a916215597
services: Add ‘/usr/bin/env’ special file.
* gnu/services/base.scm (%base-services): Add ‘/usr/bin/env‘ to
special-files-service-type.
2019-09-09 00:11:26 +02:00
Maxim Cournoyer
ccdfae388d
services: openntpd: Fix the config generation code.
This fixes issue #37318 (see: http://bugs.gnu.org/37318).

* gnu/services/networking.scm (openntpd-configuration->string): Rewrite in
order to make the "openntpd configuration generation sanity check" test pass.
2019-09-08 23:15:32 +09:00
Maxim Cournoyer
2625abc6aa
services: openntpd: Add test for issue #3731.
See http://debbugs.gnu.org/cgi/bugreport.cgi?bug=37318.

* gnu/services/networking.scm (openntpd-configuration->string): New procedure,
extracted from top of the `openntpd-shepherd-service' to make it testable.
(openntpd-shepherd-service): Adapt following the move of the code to the above
procedure.
* tests/networking.scm: Add a test for the `openntpd-configuration->string'
procedure.
2019-09-08 23:15:32 +09:00
Maxim Cournoyer
afd39a76e2
services: openntpd: Remove useless let.
* gnu/services/networking.scm (openntpd-shepherd-service): Remove useless let.
2019-09-08 23:15:31 +09:00
Maxim Cournoyer
5658ae8a0a
services: ntp: Support different NTP server types and options.
* gnu/services/networking.scm (ntp-server-types): New enum.
(<ntp-server>): New record type.
(ntp-server->string): New procedure.
(%ntp-servers): Define in terms of <htp-server> records.  Use the first
entrypoint server as a pool instead of a list of static servers.  This is more
resilient since a new server of the pool can be interrogated on every
request.  Add the 'iburst' options.
(ntp-configuration-servers): Define a custom accessor that warns but honors
the now deprecated server format.
(<ntp-configuration>): Use it.
(%openntpd-servers): New variable,
(<openntpd-configuration>): Use it, as a pool ('servers' field) instead of a
regular server.
* tests/networking.scm: New file.
* Makefile.am (SCM_TESTS): Register it.
* doc/guix.texi: Update documentation.
2019-09-08 23:15:31 +09:00
Maxim Cournoyer
d4de2f9ea4
services: ntp: Fix KOD warning.
Otherwise the following messages would be printed by ntpd:

Sep  2 05:18:21 localhost ntpd[15849]: restrict default: KOD does nothing without LIMITE.
Sep  2 05:18:21 localhost ntpd[15849]: restrict ::: KOD does nothing without LIMITED.

Debian uses the same set of "restrict" keywords (see:
https://sources.debian.org/src/ntp/1:4.2.8p13+dfsg-2/debian/ntp.conf).

* gnu/services/networking.scm (ntp-shepherd-service): Add the 'limited'
keyword to both the IPv4 and IPv6 'restrict' directives.
2019-09-08 23:15:30 +09:00
Maxim Cournoyer
08b4a10fa6
services: ntp: Allow large adjustment by default.
This is documented as best practice in `man ntpd', and is required to allow
the date to be set correctly when traveling (without having to manually update
the hardware clock in the BIOS/UEFI).

* gnu/services/networking.scm (<ntp-server>)[allow-large-adjustment?]: Set the
default value to #t.
* doc/guix.texi (Networking Services): Update documentation.
2019-09-08 23:15:29 +09:00
Mark H Weaver
3fe53f49a7
Revert "services: Add ‘/usr/bin/env’ special file."
This reverts commit 3b38bf141a.

The Guix project discussed this years ago and decided against including
/usr/bin/env.  That decision should not be reversed without a wider
discussion.
2019-09-06 19:35:08 -04:00
Efraim Flashner
e15f55208f
services: Fix typo.
This is a follow-up to 3b38bf141a.

* gnu/services/base.scm (%base-services): Remove duplicated line.
2019-09-06 13:52:33 +03:00
Tobias Geerinckx-Rice
3b38bf141a
services: Add ‘/usr/bin/env’ special file.
* gnu/services/base.scm (%base-services): Add ‘/usr/bin/env‘ to
special-files-service-type.
2019-09-06 12:24:32 +02:00
Robert Vollmert
c26f562e5e
services: nginx: Pass run-directory on config test.
Fixes <https://bugs.gnu.org/36388>.
This fixes error logging errors in the activation script.

* gnu/services/web.scm (nginx-activation): Add "-p" flag.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-09-04 23:41:07 +02:00
Tobias Geerinckx-Rice
5a097cdd54
services: cups: Rename ‘retry-this-job’ to ‘retry-current-job’.
* gnu/services/cups.scm (error-policy, cups-configuration): Substitute
RETRY-CURRENT-JOB for the obsolete RETRY-THIS-JOB name of this policy.
* doc/guix.texi (Printing Services): Likewise.
2019-08-31 03:24:41 +02:00
Tobias Geerinckx-Rice
70186c24ee
services: cups: Move SET-ENV to FILES-CONFIGURATION.
* gnu/services/cups.scm (cups-configuration): Move SET-ENV from here…
(files-configuration): …to here.
* doc/guix.texi (Printing Services): Adjust accordingly.
2019-08-30 03:41:42 +02:00
Tobias Geerinckx-Rice
ee0de99454
services: cups: Add BrowseDNSSDSubTypes directive.
* gnu/services/cups.scm (comma-separated-string-list?)
(serialize-comma-separated-string-list): New variables.
(cups-configuration)[browse-dns-sd-sub-types]: New field.
* doc/guix.texi (Printing Services): Document it.
2019-08-30 03:41:42 +02:00
Ricardo Wurmus
3e7a62e2e4
services: cuirass: Log web interface to separate file.
* gnu/services/cuirass.scm (<cuirass-configuration>): Add web-log-file field.
(cuirass-shepherd-service): Read it and use it.
* doc/guix.texi (Continuous Integration): Document it.
2019-08-29 08:06:54 +02:00
Efraim Flashner
dd2031169a
gnu: enlightenment: Update to 0.23.0.
* gnu/packages/enlightenment.scm (enlightenment): Update to 0.23.0.
[build-system]: Switch to meson-build-system.
[arguments]: Add configure-flag to build without systemd.  Remove
'bootstrap phase.  Update substitutions in custom
'set-system-actions phase.
[inputs]: Add bluez, pulseaudio.
* gnu/packages/patches/enlightenment-fix-setuid-path.patch: Update.
* gnu/services/desktop.scm (enlightenment-setuid-programs): Update
location of 'freqset binary.  Add 'cpuclock_sys to setuid binaries.
2019-08-28 13:29:51 +03:00
Tobias Geerinckx-Rice
9e3ef6f3e3
services: cups: Update SSL-OPTIONS docstring.
This follows up on commit f9c1ebdb7d.

* gnu/services/cups.scm (cups-configuration)<ssl-options>:
Update docstring.
2019-08-27 08:58:37 +02:00
Tobias Geerinckx-Rice
f9c1ebdb7d
services: cups: Complete SSL-OPTIONS.
…except for ‘AllowDH’, which makes no sense on GNU TLS systems.

* gnu/services/cups.scm (ssl-options?): Validate ‘DenyCBC’ and
‘DenyTLS1.0’.
* doc/guix.texi (Printing Services): Document them both.
2019-08-27 08:49:14 +02:00
Ricardo Wurmus
159b5e1f8a
services: cuirass: Split into two separate services.
* gnu/services/cuirass.scm (cuirass-shepherd-service): Return two shepherd
services, one for the web interface, another for building packages.
2019-08-26 22:21:10 +02:00
Ludovic Courtès
94b98ef7a0
services: tlp, thermald: Add descriptions.
* gnu/services/pm.scm (tlp-service-type)[description]: New field.
(thermald-service-type)[description]: New field.
2019-08-26 13:40:45 +02:00
John Soo
74a98b5cdd
services: console-fonts: Update docstring.
* gnu/services/base (console-font-service-type):
Add documentation about valid arguments.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2019-08-22 17:59:30 +02:00
Jakob L. Kreuze
5c793753b3
guix system: Add 'reconfigure' module.
* guix/scripts/system/reconfigure.scm: New file.
* Makefile.am (MODULES): Add it.
* guix/scripts/system.scm (bootloader-installer-script): Export variable.
* gnu/machine/ssh.scm (switch-to-system, upgrade-shepherd-services)
(install-bootloader): Delete variable.
* gnu/machine/ssh.scm (deploy-managed-host): Rewrite procedure.
* gnu/services/herd.scm (live-service): Export variable.
* gnu/services/herd.scm (live-service-canonical-name): New variable.
* tests/services.scm (live-service): Delete variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-07-26 19:19:49 +02:00
Jelle Licht
4efdede284
services: network-manager: Clear default OpenVPN user.
* gnu/services/networking.scm (network-manager-shepherd-service): Clear
'NM_OPENVPN_USER' and 'NM_OPENVPN_GROUP' in #:environment-variables.
2019-07-17 11:08:26 +02:00
Jelle Licht
40557aeab5
services: network-manager: Properly load vpn plugins
Extends the dbus service when vpn plugins are enabled.

* gnu/services/networking.scm (network-manager-service-type): Load vpn plugins
when extending dbus service.
2019-07-17 11:08:19 +02:00
Robert Vollmert
334a2f4def
gnu: postgres service: More secure default permissions.
This changes to 'peer' authentication for local socket connections,
and password-based authentication for local network connections.

* gnu/services/databases.scm (%default-postgres-hba): Change
authentication method.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-07-02 18:33:51 +02:00
Tobias Geerinckx-Rice
3a8bfebed9
etc: Remove hydra.gnu.org.pub key.
* etc/substitutes/hydra.gnu.org.pub: Delete file.
* guix/self.scm (miscellaneous-files): Don't install it.
* Makefile.am (dist_pkgdata_DATA): Remove it.
* gnu/services/base.scm (%default-authorized-guix-keys): Likewise.
(hydra-key-authorization): Rename to…
(substitute-key-authorization): …this.  Adjust only call site.
2019-06-29 14:27:22 +02:00
Florian Pelz
57c16c97cb
services: network-manager: Create '/var/lib/misc' directory for dnsmasq.
* gnu/services/networking.scm (%network-manager-activation): Rename to...
(network-manager-activation): ... this and make it a procedure.  Make it
create '/var/lib/misc' when using dnsmasq.
(network-manager-service-type): Use it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-06-24 23:25:11 +02:00
Kristofer Buffington
ace8e269a4
services: opensmtpd: Extend the PAM service.
* gnu/services/mail.scm (%opensmtpd-pam-services): New variable.
(opensmtpd-service-type)[extensions]: Add it, extending
PAM-ROOT-SERVICE-TYPE.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2019-06-20 15:54:51 +02:00
Tobias Geerinckx-Rice
f7dbf186b4
services: Fix typo in (gnu services mail) exports.
* gnu/services/mail.scm (define-module):
Re-spell ‘%default-imap4d-config-file’.
2019-06-20 10:43:25 +02:00
Florian Pelz
7dbeb5a791
services: Include USB_ModeSwitch in %desktop-services.
Fixes <https://bugs.gnu.org/35640>.

* gnu/services/desktop.scm (%desktop-services): Add usb-modeswitch-service-type.
* doc/guix.texi (Networking Services): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-06-15 18:37:57 +02:00
Florian Pelz
f5be51040c
services: Add usb-modeswitch-service-type.
* gnu/services/networking.scm (usb-modeswitch-service-type): New variable.
(usb-modeswitch-configuration): New variable.
(usb-modeswitch-sh): New procedure.
(usb-modeswitch-configuration->udev-rules): New procedure.
* doc/guix.texi (Networking Services): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-06-15 18:37:54 +02:00
Ludovic Courtès
f3d7970053
services: Remove unneeded imports that led to cycles.
Fixes <https://bugs.gnu.org/36207>.
Reported by Jack Hill <jackhill@jackhill.us>.

* gnu/services/admin.scm: Remove unneeded import of (gnu services
base).
* gnu/services/mcron.scm: Likewise.
2019-06-15 18:15:23 +02:00
Tobias Geerinckx-Rice
79d19d7d90
services: Import (srfi srfi-26) from the build side.
See <https://lists.gnu.org/archive/html/guix-devel/2019-06/msg00119.html>.

* gnu/services/nix.scm (nix-activation): Remove (srfi srfi-26) from (host-)
imported modules.
2019-06-12 17:26:28 +02:00
Tobias Geerinckx-Rice
2be6b5e2ee
services: Add SRFI-26 to Nix activation gexp.
Fix the following fatal error on ‘guix system reconfigure’:

Backtrace:
          18 (primitive-load "/home/nckx/.config/guix/current/bin/guix")
In guix/ui.scm:
  1620:12 17 (run-guix-command _ . _)
In ice-9/boot-9.scm:
    829:9 16 (catch _ _ #<procedure 7a7caa2d4c80 at guix/ui.scm:587:2 (key c)> _)
    829:9 15 (catch _ _ #<procedure 7a7caa2d4c98 at guix/ui.scm:710:6 (key proc format-string format-args . …> …)
In guix/scripts/system.scm:
   1325:8 14 (_)
In guix/status.scm:
    768:4 13 (call-with-status-report _ _)
In guix/scripts/system.scm:
   1181:4 12 (process-action _ _ _)
In guix/store.scm:
   623:10 11 (call-with-store _)
  1800:24 10 (run-with-store _ _ #:guile-for-build _ #:system _ #:target _)
In guix/scripts/system.scm:
   920:13  9 (_ _)
    409:8  8 (_ _)
In unknown file:
           7 (primitive-load "/gnu/store/dha7j9gcz3vgb8cy7vfvvaswwsywrrzj-activate")
In ice-9/boot-9.scm:
   260:13  6 (for-each #<procedure primitive-load (_)> _)
In unknown file:
           5 (primitive-load "/gnu/store/ql1xjxrssxm51z2bn2v6l3mlrncij84h-activate-service")
In ice-9/eval.scm:
    619:8  4 (_ #f)
   196:35  3 (_ #f)
   196:27  2 (_ #f)
   223:20  1 (proc #<directory (guile-user) 1fa4140>)
In unknown file:
           0 (%resolve-variable (7 . cut) #<directory (guile-user) 1fa4140>)

ERROR: In procedure %resolve-variable:
error: cut: unbound variable

Reported-by: Alex McGrath on #guix.

* gnu/services/nix.scm (nix-activation): Import and use (srfi srfi-26).
2019-06-11 21:05:32 +02:00
Diego Nicola Barbato
2f9f792a1e
services: slim: Update SLiM theme to 1.x.
* gnu/services/xorg.scm (%default-slim-theme-name): Change to "1.x".

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-06-10 23:11:15 +02:00
Christopher Baines
4252dace19
services: guix-publish: Configure log rotation.
* gnu/services/base.scm (%guix-publish-log-rotations): New variable.
(guix-publish-service-type): Extend the rottlog-service-type.
2019-06-10 07:58:09 +01:00
Christopher Baines
b09793172f
services: guix-publish: Log to a file.
This makes it easier to read the output, as it's recorded in a file.

* gnu/services/base.scm (guix-publish-shepherd-service): Add #:log-file to
make-forkexec-constructor.
2019-06-10 07:58:06 +01:00
Oleg Pykhalov
47b9614b31
services: Add 'nix-service-type'.
* gnu/services/nix.scm: New file.
* gnu/local.mk: Add this.
* doc/guix.texi (Miscellaneous Services): Document this.
2019-06-10 09:15:45 +03:00
Ludovic Courtès
08814aec6a
services: Add Singularity.
* gnu/packages/linux.scm (singularity)[source](snippet): Change file
name of setuid helpers in libexec/cli/*.exec.
[arguments]: Remove "--disable-suid".
* gnu/services/docker.scm (%singularity-activation): New variable.
(singularity-setuid-programs): New procedure.
(singularity-service-type): New variable.
* gnu/tests/singularity.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (Miscellaneous Services): Document it.
2019-06-07 09:57:19 +02:00
Danny Milosavljevic
07023ebc18
services: Add auditd.
* gnu/services/auditd.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (Miscellaneous Services): Document it.
2019-06-06 22:23:35 +02:00
Alex Griffin
36273ebde2
services: cups: Create /var/cache on activation.
* gnu/services/cups.scm (%cups-activation): Create /var/cache if it doesn't
exist yet.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-06-05 17:27:23 +02:00
Ludovic Courtès
ee2691fa33
services: guix-publish: Allow for multi-compression.
This is a followup to b8fa86adfc.

* guix/deprecation.scm (warn-about-deprecation): Make public.
* gnu/services/base.scm (<guix-publish-configuration>)[compression]: New
field.
[compression-level]: Default to #f.  Add '%' to getter name.
(guix-publish-configuration-compression-level): Define as deprecated.
(default-compression): New procedure.
(guix-publish-shepherd-service)[config->compression-options]: New
procedure.
Use 'match-record' instead of 'match'.
* doc/guix.texi (Base Services): Remove 'compression-level' and document
'compression'.
2019-06-03 23:18:47 +02:00
Ludovic Courtès
bb64b2e7c0
herd: Use the Guile 2.2 'setvbuf' API.
* gnu/services/herd.scm (open-connection): Use 'block for 'setvbuf'.
2019-06-02 01:38:36 +02:00
Christopher Baines
2177d9222f
services: Add patchwork.
* gnu/service/web.scm (<patchwork-database-configuration>
<patchwork-settings-module>, <patchwork-configuration>): New record types.
(patchwork-virtualhost): New procedure.
(patchwork-service-type): New variable.
* gnu/tests/web.scm (%test-patchwork): New variable.
* doc/guix.text (Web Services): Document it.
2019-05-31 20:22:23 +01:00
Christopher Baines
f6b0e1f8ff
services: Add getmail.
Getmail is a mail retriever written in Python, this commit adds a service-type
to run getmail. I'm looking at this, as it's a convinient way of getting
mailing list messages in to Patchwork.

I initially tried putting this in the (gnu services mail) module, but due to
also trying to use the define-configuration pattern, it conflicted with the
dovecot service.

* gnu/services/getmail.scm: New file.
* gnu/local.mk: Add it.
* gnu/tests/mail.scm (%getmail-os, %test-getmail): New variables.
(run-getmail-test): New procedure.
2019-05-31 20:22:20 +01:00
Reza Alizadeh Majd
ed90104cc8
services: sddm: Fix root login failure issue.
* gnu/services/sddm.scm (sdm-pam-service): Set uid from CONFIG.
(sdm-autologin-pam-service): Set uid from CONFIG.
(sdm-pam-services): Pass CONFIG to 'sddm-pam-service' and
'sddm-autologin-pam-service'.
* doc/guix.texi (X Window): Adjust 'minimum-uid' documentation.

Co-authored-by: Ludovic Courtès <ludo@gnu.org>
2019-05-26 01:34:16 +02:00
Arun Isaac
336674549d
services: cgit: Fix typo.
* gnu/services/cgit.scm (cgit-configuration)[root-readme]: Replace "thef" with
"the".
2019-05-25 15:58:03 +05:30
Vagrant Cascadian
f8df47633c
gnu: git-daemon-service-type: Fix typo "repositories".
* gnu/services/version-control (git-daemon-service-type)[description]: Fix typo.
2019-05-22 18:30:10 -07:00
Vagrant Cascadian
f3a2c29750
gnu: darkstat-service-type: Fix typo "statistics".
* gnu/services/monitoring (darkstat-service-type)[description]: Fix typo.
2019-05-22 18:30:08 -07:00
Ludovic Courtès
33572a3662
tests: Skip unreliable "herd invalidate nscd" test.
* gnu/tests/base.scm (run-basic-test)["nscd invalidate action, wrong
table"]: Skip unconditionally.
2019-05-15 12:18:51 +02:00
Florian Pelz
36f5d78d4a
services: Include ModemManager in %desktop-services.
* gnu/services/desktop.scm (%desktop-services): Add modem-manager-service-type.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-05-15 12:18:50 +02:00
Gábor Boskovits
0f9bbd32c1
gnu: Update copyright line.
* gnu/services/monitoring.scm: Update copyright line.
2019-05-15 09:52:17 +02:00
Ludovic Courtès
05d907ac6f
services: Add 'network-manager-applet' to %DESKTOP-SERVICES.
Fixes <https://bugs.gnu.org/35554>.
Reported by Calle Kabo <calle@kabo.nu>.

* gnu/services/desktop.scm (%desktop-services): Add
'network-manager-applet' service.
2019-05-14 12:11:04 +02:00
Gábor Boskovits
4074ee4ef7
services: prometheus-node-exporter add default.
* gnu/services/monitoring.scm (prometheus-node-exporter-service-type):
Add default-value with default configuration.
2019-05-13 15:28:37 +02:00
Christopher Baines
f8cd07e8d8
services: mcron: Log to a file.
This makes it easier to read the output, as it's recorded in a file.

* gnu/services/mcron.scm (mcron-shepherd-services): Add #:log-file to
make-forkexec-constructor.
2019-05-12 18:16:37 +01:00
Timothy Sample
dcb3a0fe0a
services: gdm: Include user profile in D-Bus paths.
This partially addresses <https://bugs.gnu.org/35267>.

* gnu/services/xorg.scm (dbus-daemon-wrapper): When available, include
directories from '~/.guix-profile' in the search paths of the D-Bus
daemon.
2019-05-11 13:41:34 -04:00
Marius Bakke
6c2180f5d0
services: dhcp-client: Ignore interfaces that are not ARP capable.
* gnu/services/networking.scm (dhcp-client-service-type): Filter interfaces
that do not support the ARP protocol.
2019-05-09 20:00:22 +02:00
Ludovic Courtès
e6b1a2248f
services: Log-in services now require "pam_loginuid".
Fixes <https://bugs.gnu.org/35553>.
Reported by Bruno Haible <bruno@clisp.org>.

* gnu/services/base.scm (login-pam-service): Pass #:login-uid? #t to
'unix-pam-service'.
* gnu/services/ssh.scm (lsh-pam-services, openssh-pam-services):
Likewise.
* gnu/services/xorg.scm (slim-pam-service): Likewise.
(gdm-pam-service): Likewise for "gdm-autologin" and "gdm-password".
* gnu/tests/base.scm (run-basic-test)["getlogin on tty1"]: New test.
* gnu/tests/ssh.scm (run-ssh-test): Add #:test-getlogin? parameter.
["getlogin"]: New test.
(%test-dropbear): Pass #:test-getlogin? #f.
2019-05-09 12:11:36 +02:00
Ludovic Courtès
6ad799d7c5
services: slim: Provide the 'xorg-server' Shepherd service.
This is a followup to 61569171d0.

* gnu/services/xorg.scm (slim-shepherd-service): Add 'xorg-server' to
'provision' when VT is "vt7".
2019-05-09 12:11:36 +02:00
Christopher Baines
5b3d3cf71c
services: dovecot: Rename auth-verbose-passwords?.
* gnu/services/mail.scm (dovecot-configuration)[auth-verbose-passwords?]:
Rename to auth-verbose-passwords, and change the type to a string, as this
parameter can take one of three string values.
* doc/guix.texi (Dovecot service): Update the corresponding documentation.
2019-05-07 20:52:02 +01:00
Diego Nicola Barbato
61569171d0
services: slim: Allow SLiM to be started on multiple ttys.
This change makes it possible to add multiple SLiM services to an operating
system configuration by setting the new 'display' and 'vt' fields in their
configurations to different values.  Each SLiM service will get its own
authfile, logfile, lockfile, and shepherd service, which will start SLiM on a
different tty.

* gnu/services/xorg.scm: Export slim-configuration-display and
  slim-configuration-vt.
  (<slim-configuration>)[display, vt]: New fields.
  (slim-shepherd-service): Refactor let.
  [slim.cfg]: Use new fields for setting display_name, xserver_arguments,
  authfile, lockfile, and logfile.
  [shepherd-service][provision]: Name the shepherd service according to the
  value of 'vt'.
  [shepherd-service][start]: Delete the right lockfile.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-05-07 15:46:54 +02:00
Maxim Cournoyer
7a31d93a61
services: docker: Add new fields to support proxy.
The Docker proxy enables inter-container and outside-to-container loopback,
and is required by the Docker registry server.

* gnu/services/docker.scm (docker-configuration)[proxy,
enable-proxy?]: Add fields.
(docker-shepherd-service): Use them.
(serialize-boolean): New function.
2019-05-05 20:14:15 -04:00
Ludovic Courtès
92597c3cec
services: colord: Make public and searchable.
* gnu/services/desktop.scm (colord-service-type): Make public.
[description]: New field.
2019-04-30 12:03:02 +02:00
Ludovic Courtès
7614193099
services: bluetooth: Make public and searchable.
Until now 'guix system search bluetooth' would turn up nothing.

* gnu/services/desktop.scm (bluetooth-service-type)
(bluetooth-configuration): Make public.
(bluetooth-service-type)[description]: New field.
2019-04-30 11:59:47 +02:00
Diego Nicola Barbato
b901b72545
services: slim: Honor the value of slim from slim-configuration.
Previously setting the slim field in slim-configuration would have no effect.

* gnu/services/xorg.scm (slim-shepherd-service): Remove unused let binding for
  slim.  Use (slim-configuration-slim config) instead of the default slim.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-04-29 09:33:55 +02:00
Ricardo Wurmus
cee06123c8
gnu: Remove unused module reference.
* gnu/services/web.scm: Remove reference to (gnu packages guile).
2019-04-28 16:05:57 +02:00
Julien Lepiller
b8e2bd4fc8
gnu: knot: Fix typos.
* gnu/services/dns.scm: Fix typos.
2019-04-27 15:56:35 +02:00
Julien Lepiller
6cd7b1be7e
gnu: knot: Add configuration fields.
* gnu/services/dns.scm (knot-zone-configuration)[zonefile-load]
[journal-content, max-journal-usage, max-journal-depth, max-zone-size]:
New fields.
(knot-zone-config): Serialize them.
* doc/guix.texi (DNS Services): Document them.
2019-04-27 13:02:31 +02:00
Ludovic Courtès
435551f0fa
services: knot: Fix configuration file generation.
Fixes a regression introduced in
92eb600f8a.

* gnu/services/dns.scm (knot-config-file): Add ungexp around call to
'knot-configuration-includes'.
2019-04-27 00:19:41 +02:00
Ludovic Courtès
74685a4369
services: file-system: Filter what goes to /etc/fstab.
Fixes a longstanding issue whereby, due to our long fstab that included
pseudo file systems like cgroup mounts, graphical file managers would
display all of these.  Initially reported at
<https://lists.gnu.org/archive/html/help-guix/2017-11/msg00084.html>.

* gnu/services/base.scm (file-system-fstab-entries): New procedure.
(file-system-service-type): Use it to extend FSTAB-SERVICE-TYPE.
2019-04-27 00:11:52 +02:00
Julien Lepiller
e379d1b5ef
gnu: dns: Fix configuration formating.
* gnu/services/dns.scm (format-string-list): Fix formating of lists with
only one symbol.
2019-04-26 18:37:48 +02:00
Ludovic Courtès
94e1439800
services: cups-pk-helper: Export.
* gnu/services/desktop.scm (cups-pk-helper-service-type): Export.
2019-04-26 18:07:46 +02:00
Julien Lepiller
92eb600f8a
gnu: knot-service: Add includes field in configuration.
* gnu/services/dns.scm (knot-configuration): Add includes field.
(verify-knot-configuration): Check includes content.
(knot-config-file): Serialize includes.
* doc/guix.texi (DNS Services): Document it.
2019-04-25 21:44:55 +02:00
Julien Lepiller
b68aff1f05
gnu: certbot: Add support for manual plugin.
* gnu/services/certbot.scm (certificate-configuration): Add challenge,
auth-hook and cleanup-hook fields.
(certbot-command): Use them.
* doc/guix.texi (Certificate Services): Document them.
2019-04-25 19:46:18 +02:00
Danny Milosavljevic
9374cbd1fb
services: fprintd: Provide polkit policy.
* gnu/services/authentication.scm (fprintd-service-type)[extensions]: Add
polkit-service-type.
2019-04-24 22:21:35 +02:00
Ludovic Courtès
06e5c3af8b
services: connman: Redirect output to a log file.
* gnu/services/networking.scm (connman-shepherd-service): Pass
 #:log-file to 'make-forkexec-constructor'.
2019-04-23 23:44:36 +02:00
Ludovic Courtès
86b8869fff
linux-container: Remove '%containerized-shepherd-service' hack.
This hack worked around a defect in the Shepherd 0.5.0 and is no longer
needed.

* gnu/services/shepherd.scm (%containerized-shepherd-service): Remove.
* gnu/system/linux-container.scm (container-essential-services): Don't
use it.
2019-04-23 16:38:12 +02:00
Ludovic Courtès
95ef8b85b1
services: shepherd: Support one-shot services.
* gnu/services/shepherd.scm (<shepherd-service>)[one-shot?]: New field.
(shepherd-service-file): Pass #:one-shot? to the <service> constructor.
* doc/guix.texi (Shepherd Services): Document it.
2019-04-23 16:38:11 +02:00
Danny Milosavljevic
dc01978288
services: fprintd: Use define-configuration.
* gnu/services/authentication.scm: Use define-configuration in fprintd.
2019-04-21 10:40:19 +02:00
Danny Milosavljevic
0682f08463
services: fprintd: Fix service.
* gnu/services/authentication.scm (<fprintd-configuration>)[ntp]: Rename to...
[fprintd]: ...this.
(fprintd-dbus-service): New procedure.
(fprintd-service-type): Use it.
[default-value]: Add value.
2019-04-17 08:51:11 +02:00
frozenpigs
02394462fc
services: sddm: Switch back to using ‘startx’.
* gnu/services/sddm.scm (sddm-configuration-file):
Use XORG-START-COMMAND.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2019-04-11 05:42:41 +02:00
Ludovic Courtès
3613ce46dc
services: dropbear: Add default value.
* gnu/services/ssh.scm (dropbear-service-type)[default-value]: New
field.
2019-04-07 18:04:08 +02:00
宋文武
412e6396bb
services: Add 'imap4d-service-type'.
* gnu/services/mail.scm (<imap4d-configuration>): New record type.
(imap4d-shepherd-service): New procedure.
(%default-imap4d-config-file, imap4d-service-type): New variables.
* gnu/services/mail.scm (Mail Services): Document it.
2019-04-07 14:18:01 +08:00
Ludovic Courtès
177bc62d63
services: wpa-supplicant: Log to syslog.
* gnu/services/networking.scm (wpa-supplicant-shepherd-service): Pass
"-s" to 'wpa_supplicant'.  Add 'syslogd' to 'requirement'.
2019-04-05 17:55:51 +02:00
Ludovic Courtès
1361584983
services: localed: Do nothing for unconfigured keyboards.
* gnu/services/xorg.scm (localed-service-type)[package]: Return the
empty list when the 'keyboard-layout' field is #f.
[compose]: Use 'find' instead of 'first'.
2019-04-05 17:55:51 +02:00
Ludovic Courtès
3ef3bdf1cd
services: localed: Properly handle lack of a 'keyboard-layout'.
Fixes a type error when KEYBOARD-LAYOUT is #f.

* gnu/services/xorg.scm (localed-dbus-service): Return the empty list
when KEYBOARD-LAYOUT is #f.
2019-04-05 17:55:50 +02:00
Ludovic Courtès
0cf981a606
services: gdm: Properly handle empty extensions lists.
Fixes a bug whereby not extending GDM would lead us to do:

  (first '())

in the 'compose' method.

Regression introduced in 305a732a0a.

* gnu/services/xorg.scm (gdm-service-type)[compose]: Handle the case
where EXTENSIONS is empty.
[extend]: Handle the case where XORG-CONFIGURATION is #f.
2019-04-05 17:55:50 +02:00
Ludovic Courtès
3a665637af
services: console-keymap: Deprecate.
* gnu/services/base.scm (console-keymap-service): Mark as deprecated.
* doc/guix.texi (Base Services): Remove its documentation.
2019-04-05 15:39:35 +02:00
Ludovic Courtès
305a732a0a
services: xorg: Add 'set-xorg-configuration'.
* gnu/services/xorg.scm (gdm-service-type)[compose, extend]: New fields.
(set-xorg-configuration): New procedure.
* doc/guix.texi (Keyboard Layout): Use it.
(X Window): Document it.
* gnu/system/examples/desktop.tmpl: Add 'keyboard-layout' fields.
2019-04-05 15:39:35 +02:00
Ludovic Courtès
607fcc7540
services: Add 'localed' service type and have GDM extend it.
This fixes a bug whereby GDM would always switch to US English keyboard
layout regardless to the configured Xorg keyboard layout.

* gnu/services/xorg.scm (<localed-configuration>): New record type.
(localed-dbus-service): New procedure.
(localed-service-type): New variable.
(gdm-service-type): Extend LOCALED-SERVICE-TYPE.
2019-04-05 15:39:35 +02:00
Ludovic Courtès
aa071ca049
services: dbus: 'wrapped-dbus-service' accepts a list of variables.
* gnu/services/dbus.scm (wrapped-dbus-service): Replace 'variable' and
'value' by 'variables', and adjust code accordingly.
* gnu/services/desktop.scm (upower-dbus-service):
(geoclue-dbus-service, elogind-dbus-service): Adjust accordingly.
2019-04-05 15:39:35 +02:00
Ludovic Courtès
b68f65007f
services: dbus: Add 'wrapped-dbus-service'.
* gnu/services/desktop.scm (wrapped-dbus-service): Move to...
* gnu/services/dbus.scm (wrapped-dbus-service): ... here.  New
procedure.
2019-04-05 15:39:35 +02:00
Ludovic Courtès
c1ef50ac79
gexp: Remove workarounds for <https://bugs.gnu.org/15602>.
* gnu/services/base.scm (hydra-key-authorization)[aaa]: Remove.
[default-acl]: Don't import it.
* guix/scripts/pack.scm (store-database)[build]: Don't import
(gnu build install).
2019-04-04 17:47:02 +02:00
Tim Gesthuizen
bab7a49558
services: slim-configuration: Adapt exported getter methods.
Commit 554b860739 introduces changes to the
slim-configuration record without updating the exported methods.

* gnu/services/xorg.scm: Export slim-configuration-xorg and
  slim-configuration-sessreg.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-03-31 23:32:46 +02:00
Ludovic Courtès
631a6e6377
doc: Document 'gdm-service-type'.
* doc/guix.texi (X Window): Document 'gdm-service-type' and
'gdm-configuration'.  Take description of '.desktop' files from the
'slim-service-type' description.
* gnu/services/xorg.scm (gdm-service): Remove outdated comment.
2019-03-31 23:32:46 +02:00
Marius Bakke
e73ded3c71
services: Open vSwitch: Provide a default configuration.
* gnu/services/networking.scm (openvswitch-service-type): Provide
OPENVSWITCH-CONFIGURATION as a default value.
* gnu/tests/networking.scm (%openvswitch-os): Don't configure the service.
2019-03-31 21:26:15 +02:00
Ludovic Courtès
357b287b8f
services: desktop: Switch to GDM.
* gnu/services/desktop.scm (%desktop-services): Replace
SLIM-SERVICE-TYPE instance with an instance of GDM-SERVICE-TYPE.
* doc/guix.texi (Keyboard Layout): Change example to mention
GDM-SERVICE-TYPE.
(X Window): Mention GDM.
(Desktop Services): Adjust references to SLiM.
2019-03-28 23:06:59 +01:00
Ludovic Courtès
391e0d65d7
services: Deprecate 'xfce-desktop-service'.
* gnu/services/desktop.scm (xfce-desktop-service-type)[default-value]
[description]: New fields.
(xfce-desktop-service): Deprecate.
* gnu/system/examples/desktop.tmpl: Use the (service …) form.
* gnu/installer/services.scm (%desktop-environments): Add TODO comment.
* doc/guix.texi (Desktop Services): Adjust accordingly, and fix spelling
of "Xfce" throughout.
2019-03-27 11:54:06 +01:00
Ludovic Courtès
ee05cc7fe3
services: Deprecate 'gnome-desktop-service'.
* gnu/services/desktop.scm (gnome-desktop-service-type)[default-value]:
New field.
(gnome-desktop-service): Deprecate.
* gnu/installer/services.scm (%desktop-environments): Use the (service …)
form for GNOME.
* gnu/system/examples/desktop.tmpl: Likewise.
* doc/guix.texi (Desktop Services): Adjust accordingly.
2019-03-27 11:54:06 +01:00
Marius Bakke
b283d5f630
services: SDDM: Specify absolute path to the X server.
I'm not sure how this service ever worked, but SDDM started consistently
failing on one machine seemingly because of this setting.

* gnu/services/sddm.scm (sddm-configuration-file): Append /bin/X to the
ServerPath setting.
2019-03-25 19:24:22 +01:00
Ludovic Courtès
70bb83b7b2
services: xorg: Fix cases where 'keyboard-layout' is #f.
This is a followup to 598757e038.

* gnu/services/xorg.scm (xorg-configuration->file): Check whether
'xorg-configuration-keyboard-layout' returns #f before calling
'keyboard-layout-options'.
2019-03-25 00:21:48 +01:00
Ludovic Courtès
598757e038
services: xorg: Add a 'keyboard-layout' field in <xorg-configuration>.
* gnu/services/xorg.scm (<xorg-configuration>)[keyboard-layout]: New
field.
(xorg-configuration->file)[input-class-section]: New procedure.
Use it.
* doc/guix.texi (X Window): Document 'keyboard-layout' field.

Co-authored-by: nee <nee-git@hidamari.blue>
2019-03-24 23:06:11 +01:00
Ludovic Courtès
554b860739
services: sddm, slim, gdm: Take an <xorg-configuration> record.
* gnu/services/sddm.scm (<sddm-configuration>)[xorg-server-path]
[xserver-arguments]: Remove.
[xorg-configuration]: New field.
(sddm-configuration-file): Adjust accordingly.
* gnu/services/xorg.scm (<slim-configuration>)[startx]: Remove.
[xorg-configuration]: New field.
(slim-shepherd-service, slim-service): Adjust accordingly.
(<gdm-configuration>)[x-server]: Remove.
[xorg-configuration]: New field.
(gdm-shepherd-service, gdm-service): Adjust accordingly.
* doc/guix.texi (X Window): Update accordingly.
2019-03-24 23:06:11 +01:00
Ludovic Courtès
b2e564515a
services: xorg: Define an <xorg-configuration> record type.
* gnu/services/xorg.scm (<xorg-configuration>): New record type.
(xorg-configuration-file): Remove.
(xorg-wrapper): Remove #:modules, #:configuration-file, and
 #:xorg-server; add optional 'config' parameter instead.  Adjust
accordingly.
(xorg-start-command): Likewise.
* doc/guix.texi (X Window): Document 'xorg-configuration'.  Update
'xorg-start-command' documentation.  Remove 'xorg-configuration-file'
documentation.
2019-03-24 23:06:11 +01:00
Ludovic Courtès
956607e340
services: xorg: Remove unused #:guile parameter.
* gnu/services/xorg.scm (xorg-wrapper): Remove #:guile, which was unused.
(xorg-start-command): Likewise.
(xinitrc): Likewise.
2019-03-24 23:06:11 +01:00
Ricardo Wurmus
c16423f143
services: Add nslcd-service-type.
* gnu/services/authentication.scm (nslcd-service-type, nslcd-configuration,
%nslcd-accounts): New variables.
(uglify-field-name, value->string, serialize-field, serialize-list,
ssl-option?, tls-reqcert-option?, deref-option?,
comma-separated-list-of-strings?, serialize-ignore-users-option, log-option?,
serialize-log-option, valid-map?, scope-option?, serialize-scope-option,
map-entry?, list-of-map-entries?, filter-entry?, list-of-filter-entries?,
serialize-filter-entry, serialize-list-of-filter-entries, serialize-map-entry,
serialize-list-of-map-entries, nslcd-config-file, nslcd-etc-service,
nslcd-shepherd-service, pam-ldap-pam-services, pam-ldap-pam-service,
generate-nslcd-documentation): New procedures.
* gnu/tests/ldap.scm: New file.
* gnu/local.mk (GNU_SYSTEM_MODULES): Add it.
* doc/guix.texi (LDAP Services): Document it.
2019-03-20 20:31:15 +01:00
ng0
47956fa0c2
Correct name and email address for ng0.
* .mailmap, Makefile.am, doc/guix.de.texi, doc/guix.fr.texi,
doc/guix.texi, etc/completion/fish/guix.fish,
gnu/packages/accessibility.scm, gnu/packages/admin.scm,
gnu/packages/audio.scm, gnu/packages/autotools.scm,
gnu/packages/cdrom.scm, gnu/packages/check.scm,
gnu/packages/cinnamon.scm, gnu/packages/compression.scm,
gnu/packages/crypto.scm, gnu/packages/databases.scm,
gnu/packages/django.scm, gnu/packages/dns.scm, gnu/packages/elixir.scm,
gnu/packages/emacs-xyz.scm, gnu/packages/emacs.scm,
gnu/packages/enlightenment.scm, gnu/packages/erlang.scm,
gnu/packages/fonts.scm, gnu/packages/fontutils.scm,
gnu/packages/forth.scm, gnu/packages/fvwm.scm, gnu/packages/games.scm,
gnu/packages/gl.scm, gnu/packages/gnome.scm, gnu/packages/gnunet.scm,
gnu/packages/gnupg.scm, gnu/packages/gnuzilla.scm, gnu/packages/gtk.scm,
gnu/packages/guile-wm.scm,gnu/packages/guile-xyz.scm,
gnu/packages/haskell-check.scm, gnu/packages/haskell-crypto.scm,
gnu/packages/haskell.scm, gnu/packages/image-viewers.scm,
gnu/packages/image.scm, gnu/packages/irc.scm,
gnu/packages/language.scm, gnu/packages/libcanberra.scm,
gnu/packages/linux.scm, gnu/packages/lisp.scm, gnu/packages/lolcode.scm,
gnu/packages/lxde.scm, gnu/packages/lxqt.scm, gnu/packages/mail.scm,
gnu/packages/markup.scm, gnu/packages/mate.scm, gnu/packages/maths.scm,
gnu/packages/mc.scm, gnu/packages/messaging.scm, gnu/packages/music.scm,
gnu/packages/ncurses.scm, gnu/packages/networking.scm,
gnu/packages/nickle.scm, gnu/packages/openbox.scm, gnu/packages/pdf.scm,
gnu/packages/perl-check.scm, gnu/packages/perl.scm,
gnu/packages/python-compression.scm, gnu/packages/python-crypto.scm,
gnu/packages/python-web.scm, gnu/packages/python-xyz.scm,
gnu/packages/python.scm, gnu/packages/qt.scm, gnu/packages/ruby.scm,
gnu/packages/rust.scm, gnu/packages/scheme.scm,
gnu/packages/serialization.scm, gnu/packages/shells.scm,
gnu/packages/ssh.scm, gnu/packages/suckless.scm, gnu/packages/tbb.scm,
gnu/packages/telephony.scm, gnu/packages/text-editors.scm,
gnu/packages/textutils.scm, gnu/packages/time.scm, gnu/packages/tls.scm,
gnu/packages/tor.scm, gnu/packages/version-control.scm,
gnu/packages/video.scm, gnu/packages/vim.scm, gnu/packages/web.scm,
gnu/packages/wm.scm, gnu/packages/xdisorg.scm, gnu/packages/xfce.scm,
gnu/packages/xml.scm, gnu/packages/xorg.scm, gnu/services/certbot.scm,
gnu/services/desktop.scm, gnu/services/version-control.scm,
gnu/services/web.scm, guix/import/hackage.scm, guix/licenses.scm:
Correct name and email address for ng0.

Signed-off-by: Tobias Geerinckx-Rice <me@tobias.gr>
2019-03-18 15:05:08 +01:00
Tim Gesthuizen
97ab799afe
gnu: Add inputattach service.
Add a service that runs inputattach as a daemon to translate events from
serial ports.

* gnu/services/desktop.scm (<inputattach-configuration>): New record type.
* gnu/services/desktop.scm (inputattach-service-type): New service type.
* doc/guix.texi (Miscellaneous Services): Add inputattach Service
  subsubheading.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-03-18 10:51:06 +01:00
nixo
c71b7b5b37
services: mpd: add more configuration options
* gnu/services/audio.scm (<mpd-configuration>): Add 'db-file', 'state-file'
  and 'sticker-file' fields.
* doc/guix.texi (Music Player Daemon): Document it.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-03-15 23:27:59 +01:00
Ludovic Courtès
59e8044588
Remove traces of "GuixSD".
* gnu/bootloader/extlinux.scm (extlinux-configuration-file): Remove
mentions of "GuixSD".
* gnu/bootloader/grub.scm (install-grub-efi): Likewise.
* gnu/build/vm.scm (make-iso9660-image): Change default #:volume-id to
"Guix_image".
(initialize-hard-disk): Search for the "Guix_image" label.
* gnu/ci.scm (system-test-jobs, tarball-jobs): Remove "GuixSD".
* gnu/installer/newt/welcome.scm (run-welcome-page): Likewise.
* gnu/packages/audio.scm (supercollider)[description]: Likewise.
* gnu/packages/curl.scm (curl): Likewise.
* gnu/packages/emacs.scm (emacs): Likewise.
* gnu/packages/gnome.scm (network-manager): Likewise.
* gnu/packages/julia.scm (julia): Likewise.
* gnu/packages/linux.scm (alsa-plugins): Likewise.
(powertop, wireless-regdb): Likewise.
* gnu/packages/package-management.scm (guix): Likewise.
* gnu/packages/polkit.scm (polkit): Likewise.
* gnu/packages/tex.scm (texlive-bin): Likewise.
* gnu/services/base.scm (file-systems->fstab): Likewise.
* gnu/services/cups.scm (%cups-activation): Likewise.
* gnu/services/mail.scm (%dovecot-activation): Likewise.
* gnu/services/messaging.scm (prosody-configuration)[log]: Likewise.
* gnu/system/examples/vm-image.tmpl (vm-image-motd): Likewise.
* gnu/system/install.scm (installation-os)[file-systems]: Change root
file system label to "Guix_image".
* gnu/system/mapped-devices.scm (check-device-initrd-modules):
Remove "GuixSD".
* gnu/system/vm.scm (system-docker-image): Likewise.
(system-disk-image)[root-label]: Change to "Guix_image".
* gnu/tests/install.scm (run-install): Remove "GuixSD".
* guix/modules.scm (guix-module-name?): Likewise.
* nix/libstore/optimise-store.cc: Likewise.
2019-03-13 23:12:43 +01:00
Ludovic Courtès
082c648d28
services: mate-desktop: Deprecate the 'mate-desktop-service' procedure.
* gnu/services/desktop.scm (mate-desktop-service): Deprecate.
* doc/guix.texi (Desktop Services): Document 'mate-desktop-service-type'
and 'mate-desktop-configuration'.  Fix spelling of "Enlightenment".
2019-03-11 23:12:26 +01:00
Ludovic Courtès
984a61624c
services: mate-desktop: Add default value.
* gnu/services/desktop.scm (mate-desktop-service-type)[default-value]:
New field.
2019-03-11 23:12:26 +01:00
Ludovic Courtès
8b3ad455be
services: guix: Pre-compute the default ACL.
This makes the first boot slightly faster.

* gnu/services/base.scm (not-config?): New procedure.
(hydra-key-authorization): Rewrite to pre-compute the default ACL, and
pre-compute it using (guix pki) directly.
2019-03-10 23:41:33 +01:00
Ludovic Courtès
309d87c3aa
services: guix: Allocate build user UIDs in the system range.
Until now we were allocating the UIDs of build users above 30000, which
is in "normal" user UID range.  This static allocation was unnecessary,
so this change lets the system allocate UIDs in the system range (below
1000).

* gnu/services/base.scm (guix-build-accounts): Remove #:first-uid, and
remove 'uid' field from 'user-account'.
2019-03-10 23:41:33 +01:00
Oleg Pykhalov
e44de1d2fb
services: zabbix-front-end: Show location in messages.
* gnu/services/monitoring.scm (zabbix-front-end-config): Show location in
messages.
2019-03-10 21:32:38 +03:00
Oleg Pykhalov
d132d9f96b
services: configuration: Add '%location'.
* gnu/services/configuration.scm (define-configuration): Add '%location'.
2019-03-10 21:32:38 +03:00
Ludovic Courtès
d429878daf
activation: Shared system home directories are now 555 and root-owned.
Fixes <https://bugs.gnu.org/34788>.
Reported by Jack Hill <jackhill@jackhill.us>.

Regression introduced by the combination of
8bb76f3d44 and
0ae735bcc8: /var/empty would be 700 and
owned by one of the system accounts (thus inaccessible to others), and
/var/run/dbus would be 700 as well, thereby preventing D-Bus clients
from connecting to the daemon.

* gnu/build/activation.scm (duplicates): New procedure.
(activate-users+groups)[system-accounts]: New variable.
Use it.  Make shared system account home directories #o555 and
root-owned.
* gnu/services/dbus.scm (dbus-activation): Make /var/run/dbus #o755.
* gnu/tests/base.scm (run-basic-test): Test the ownership and
permissions of /var/empty.
2019-03-08 23:21:59 +01:00
Ludovic Courtès
56a93cb975
services: Use 'file-append' for user account shells.
* gnu/services/cuirass.scm (cuirass-account): Use 'file-append' instead
of #~(string-append #$shadow "/sbin/nologin").
* gnu/services/monitoring.scm (zabbix-server-account): Likewise.
(zabbix-agent-account): Likewise.
* gnu/services/rsync.scm (rsync-account): Likewise.
* gnu/services/ssh.scm (%openssh-accounts): Likewise.
2019-03-04 15:22:58 +01:00
Christopher Baines
bb65f66ce0
services: desktop: Fix define for the upower-service procedure.
* gnu/services/desktop.scm (upower-service): Fill in the replacement for
upower-service.
2019-02-24 21:48:47 +00:00
Jan Nieuwenhuizen
24f11b06bb
services: xorg: Enable override of xserver-arguments.
* gnu/services/xorg.scm (xorg-start-command): Add parameter #:xserver-arguments.
* doc/guix.texi (X Window): Document it.
2019-02-17 08:48:49 +01:00
Timothy Sample
41fa9f1815
services: gdm: Allow for custom X session scripts.
* gnu/packages/gnome.scm (gdm)[arguments]: Update pre-configure phase so
that GDM runs an X session script specified by the variable
GDM_X_SESSION; remove the '--enable-gdm-xsession' configuration
option.
* gnu/services/xorg.scm (<gdm-configuration>): Add 'x-session' field.
(gdm-shepherd-service): Set the GDM_X_SESSION variable.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-02-17 00:04:57 +01:00
Timothy Sample
7e61419892
services: gdm: Make dependencies explicit.
This commit removes the remaining implicit dependencies that the GDM
service had on the GNOME Desktop service.

* gnu/services/xorg.scm (gdm-configuration): Add a gnome-shell-assets
field for specifying any icons or fonts that the GNOME Shell theme
needs.
(gdm-shepherd-service): Remove environment variables pointing to
'/run/current-system' and set XDG_DATA_DIRS so that it points to
'gnome-shell' and its assets.
(gdm-service-type): Extend 'profile-service-type' to ensure that
necessary fonts are installed in the system profile.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-02-17 00:04:57 +01:00
Timothy Sample
1f564c1573
gnu: gdm: Run dbus-daemon via a wrapper script.
* gnu/packages/gnome.scm (gdm)[arguments]: Modify the pre-configure
phase so that GDM propagates the GDM_DBUS_DAEMON variable into the
session environment and uses its value to invoke dbus-daemon.
* gnu/services/xorg.scm (dbus-daemon-wrapper): New variable.
(<gdm-configuration>): Add 'dbus-daemon' field.
(gdm-shepherd-service): Set GDM_DBUS_DAEMON before invoking gdm.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-02-17 00:04:57 +01:00
Timothy Sample
e57c2adb2a
services: gdm: Remove etc service.
* gnu/packages/gnome.scm (gdm)[arguments]: Update pre-configure phase to
make GDM get the configuration file path from an environment variable.
* gnu/services/xorg.scm (gdm-etc-service): Remove function.
(gdm-configuration-file): New function.
(gdm-shepherd-service): Set GDM_CUSTOM_CONF before invoking GDM.
(gdm-service-type)[extensions]: Remove etc-service-type extension.

Signed-off-by: Ludovic Courtès <ludo@gnu.org>
2019-02-17 00:04:56 +01:00
Christopher Baines
8d2c3c54ee
services: desktop: Deprecate the upower-service procedure.
This has now been replaced by the upower-service-type and
<upower-configuration> record.

* gnu/services/desktop.scm (upower-service): Deprecate this procedure.
2019-02-16 22:05:15 +00:00
Christopher Baines
8b9a7b26c2
services: Improve the upower-service-type.
Add a description and default value. Switch the documentation to mention the
service-type and the configuration record, rather than the upower-service
procedure.

* gnu/services/desktop.scm (upower-service-type)[description, default-value]:
Define these fields.
(%desktop-services): Change (upower-service) to (service upower-service-type).
* doc/guix.texi (Desktop Services): Update the upower service documentation.
2019-02-16 22:05:15 +00:00