* gnu/services/virtualization.scm (<hurd-vm-configuration>)[options]: Remove
"--hda" option.
[id,net-options]: New fields.
(hurd-vm-net-options): New procedure. Parameterize port forwarding with ID.
* gnu/services/virtualization.scm (hurd-vm-shepherd-service): Use them.
Parameterize provision with ID, if set. Hardcode "--hda" option for image.
* doc/guix.texi (Virtualization Services): Document new fields. Update for
hardcoding of "--hda".
* gnu/services/virtualization.scm (hurd-vm-shepherd-service,
hurd-vm-disk-image): New procedures.
(%hurd-vm-operating-system, hurd-vm-service-type): New variables.
(<hurd-vm-configuration>): New record type.
* doc/guix.texi (Virtualization Services): Document it.
* gnu/services/shepherd.scm (scm->go): Use let-system, remove FIXME. Fixes
fixes cross-building of shepherd modules for the Hurd image.
* gnu/services/hurd.scm (<hurd-gettty-configuration>): New record.
(hurd-ttys-shepherd-service): New procedure.
(hurd-getty-service-type): New variable.
* doc/guix.texi (Hurd Services): Document it.
Fixes <https://bugs.gnu.org/40806>.
Previously the xorg-server package specified in the configuration was ignored
entirely in xorg-configuration->file. This had the effect that while the X
program of the configured package would be executed, the modules of the
configured package would be ignored in favor of the default xorg-server
package's modules. This fixes that.
* gnu/services/xorg.scm (xorg-configuration->file): honor
xorg-configuration-server.
* gnu/services/docker.scm (docker-configuration): Add a debug? field.
(containerd-shepherd-service): Pass the "--log-level=debug" argument when
DEBUG? is true.
(docker-shepherd-service): Pass the "--debug" and "--log-level=debug"
arguments when DEBUG? is true.
* doc/guix.texi (Miscellaneous Services): Update doc.
* gnu/services/nfs.scm (<nfs-configuration>)[nfsd-tcp?, nfsd-udp?]: New
fields.
(nfs-shepherd-services)[rpc.nfsd]: Populate the --{no-,}tcp and --{no-,}udp
command line options based on the values of the nfsd-tcp? and nfsd-upd?
fields.
* doc/guix.texi (Network File System): Add doc.
* gnu/services/dbus.scm (polkit-service-type)[description]: New field.
* gnu/services/dict.scm (dicod-service-type)[description]: New field.
* gnu/services/dns.scm (knot-service-type)[description]: New field.
* gnu/services/networking.scm (dhcpd-service-type)[description]: New field.
* gnu/services/shepherd.scm (shepherd-root-service-type)[description]:
New field.
* gnu/services/xorg.scm (slim-service-type)[description]: New field.
(screen-locker-service-type)[description]: New field.
* gnu/system/pam.scm (pam-root-service-type)[description]: New field.
* gnu/system/shadow.scm (account-service-type)[description]: New field.
This reverts commit 4c0cc7bed3.
Fixes <https://bugs.gnu.org/41116>.
Reported by Alex Sassmannshausen <alex@komputilo.eu>.
The problem is that reconfiguring on a system running Shepherd < 0.8.0
would lead to an error, due to #:file-creation-mask not being supported.
The error is rather harmless: it prevents service upgrade but the system
itself is upgraded.
We can reinstate that commit eventually, once #:file-creation-mask has
become widespread.
This addresses <https://bugs.gnu.org/40837> by making these configuration
files more easily accessible within the WebKitGTK sandbox.
* gnu/services/sound.scm (pulseaudio-environment): Move below
PULSEAUDIO-CONF-ENTRY. Instantiate PULSE_CONFIG and PULSE_CLIENTCONFIG
entries directly instead of referring to /etc/pulse.
(pulseaudio-etc): Do not create /etc/pulse/client.conf and /etc/pulse/daemon.conf.
This is a followup to d7113bb655 and
e3358a831e.
* gnu/services/base.scm (syslog-service-type): Change 'start' method to set
umask using the #:file-creation-mask parameter of
'make-forkexec-constructor' introduced in version 0.8.0 of the Shepherd.
Signed-off-by: Ludovic Courtès <ludo@gnu.org>
Introduce a new `addresses' field that translates to passing `--address='
multiple times to dnsmasq.
* gnu/services/dns.scm (<dnsmasq-configuration>): Add an addresses field.
(dnsmasq-shepherd-service): Match the addresses field and translate it to
multiple '--address=' flags.
* doc/guix.texi (DNS Services): Document it.
Signed-off-by: 宋文武 <iyzsong@member.fsf.org>
* gnu/system/file-systems.scm (%control-groups): Add "pids".
* gnu/services/docker.scm (docker-shepherd-service): Resolve a TODO.
This has allowed me to make a specific configuration of nsjail work.
Fixes <https://bugs.gnu.org/40839>.
Reported by Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
Fix suggested by Mathieu Othacehe <m.othacehe@gmail.com>
However, <https://bugs.gnu.org/29296> still applies; %current-target-system
may not be bound.
* gnu/services/shepherd.scm (scm->go): Use `with-target' when cross-compiling.
* gnu/packages/admin.scm (shepherd): Update to 0.8.0.
* gnu/services/shepherd.scm (shepherd-configuration-file): Use
'default-pid-file-timeout' instead of fiddling with '%pid-file-timeout'.
* gnu/services/mail.scm (dovecot-shepherd-service)[stop]: Use 'invoke'
instead of 'make-forkexec-constructor'. Previously, the 'stop' method
would return the PID of the "dovecot stop" process, which would be
interpreted as a failure to stop the service.
Passing 'make-forkexec-constructor' a string or several string arguments
has been deprecated since dmd 0.1.
* gnu/services/base.scm (rngd-service-type): In 'start' method, pass a
list as the first argument to 'make-forkexec-constructor'.
* gnu/services/desktop.scm (bluetooth-shepherd-service): Likewise.
* gnu/services/spice.scm (spice-vdagent-shepherd-service): Likewise.
* gnu/services/networking.scm (simulated-wifi-shepherd-services): New
procedure.
(simulated-wifi-service-type): New variable.
* doc/guix.texi (Networking Services): Document it.
* gnu/services/networking.scm (<hostapd-configuration>): New record
type.
(hostapd-configuration-file, hostapd-shepherd-services): New
procedures.
(hostapd-service-type): New variable.
* doc/guix.texi (Networking Services): Document it.
When running the installation image off a DVD, early I/O operations are
extremely slow, to the point that something like dbus-daemon would need
~20s to start. This change works around the issue.
Fixes <https://bugs.gnu.org/40572>.
Reported by Florian Pelz <pelzflorian@pelzflorian.de>.
* gnu/services/shepherd.scm (shepherd-configuration-file): Set
%pid-file-timeout to 30.
To match its own documentation & other similar services.
* gnu/services/desktop.scm (gnome-desktop-configuration)[gnome-package]:
Rename to…
[gnome]: …this.
To match its own documentation & other similar services.
* gnu/services/desktop.scm (gnome-desktop-configuration)[gnome-package]:
Rename to…
[gnome]: …this.
Fixes an error message '"load_module" directive is specified too late'.
* gnu/services/web.scm (default-nginx-config): Emit load_module before
global directives.
Fixes <https://bugs.gnu.org/25569>.
Reported by Divan Santana <divan@santanas.co.za>.
* gnu/services/base.scm (shepherd-set-http-proxy-action): New procedure.
(guix-shepherd-service): Add 'actions' field. Change 'start' to a
lambda; check the value of the "http_proxy" environment variable and
add "http_proxy" and "https_proxy" to #:environment-variables as a
function of that.
* gnu/tests/base.scm (run-basic-test)["guix-daemon set-http-proxy
action", "guix-daemon set-http-proxy action, clear"]: New tests.
* doc/guix.texi (Base Services): Document it.