guix/gnu/services
Bruno Victal 5c5f0fc113
services: mpd: Refactor MPD service.
Refactor mpd-service-type to support additional mpd.conf directives
and move activation-service-extension into service constructor.

* gnu/services/audio.scm (mpd-plugin, mpd-partition): New records.

(mpd-serialize-boolean): Alias to and integrate logic into...
(mpd-serialize-field): ... this.
(mpd-serialize-list-of-string): New variable.

(mpd-plugin?, mpd-partition?, list-of-string?, list-of-symbol?)
(list-of-mpd-plugin?, list-of-mpd-partition?)
(list-of-mpd-plugin-or-output?, port?): New variables.

(mpd-file-name, mpd-service-activation): Remove variables.

(mpd-configuration)
[package, group, shepherd-requirement, log-file, log-level, music-directory]
[playlist-directory, endpoints, database, partitions, neighbors, inputs]
[archive-plugins, input-cache-size, decoders, resampler, filters]
[playlist-plugins, extra-options]: New fields.
[music-dir, playlist-dir, address]: Deprecate shorthand fields.
[db-file, state-file, sticker-file, port, outputs]: Change admissible type.

(mpd-shepherd-service)
[actions]: New shepherd actions: 'reopen' and 'configuration'.
[requirement]: Splice with 'shepherd-requirement' field.
[start]: Use 'package' field. Remove #:log-file parameter.
Move activation-service extension into constructor.

(mpd-accounts): Honor user and group names from configuration.
(mpd-log-rotation): New procedure.
(mpd-service-type)[extensions]: Add rottlog-service-type extension.
Remove activation-service-type extension.

(mpd-output-name, mpd-output-type, mpd-output-enabled?, mpd-output-format)
(mpd-output-tags?, mpd-output-always-on?, mpd-output-mixer-type)
(mpd-output-replay-gain-handler, mpd-output-extra-options)
(mpd-plugin-plugin, mpd-plugin-name, mpd-plugin-enabled?)
(mpd-plugin-extra-options)
(mpd-partition-name, mpd-partition-extra-options)
(mpd-configuration-package, mpd-configuration-user)
(mpd-configuration-group, mpd-configuration-shepherd-requirement)
(mpd-configuration-log-file, mpd-configuration-log-level)
(mpd-configuration-music-directory, mpd-configuration-music-dir)
(mpd-configuration-playlist-directory, mpd-configuration-playlist-dir)
(mpd-configuration-db-file, mpd-configuration-state-file)
(mpd-configuration-sticker-file, mpd-configuration-default-port)
(mpd-configuration-endpoints, mpd-configuration-address)
(mpd-configuration-database, mpd-configuration-partitions)
(mpd-configuration-neighbors, mpd-configuration-inputs)
(mpd-configuration-archive-plugins, mpd-configuration-input-cache-size)
(mpd-configuration-decoders, mpd-configuration-resampler)
(mpd-configuration-filters, mpd-configuration-outputs)
(mpd-configuration-playlist-plugins, mpd-configuration-extra-options): Export accessors.

* doc/guix.texi (Audio Services)[Music Player Daemon]: Update documentation.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
2023-02-05 06:56:43 +01:00
..
admin.scm
audio.scm services: mpd: Refactor MPD service. 2023-02-05 06:56:43 +01:00
auditd.scm
authentication.scm
avahi.scm
base.scm services: greetd: Add 'source-profile?' configuration field. 2023-01-15 20:30:12 +01:00
certbot.scm
cgit.scm
ci.scm
configuration.scm
cuirass.scm
cups.scm
databases.scm
dbus.scm gnu: services: Export polkit-configuration. 2023-01-16 15:08:22 +08:00
desktop.scm
dict.scm
dns.scm
docker.scm
file-sharing.scm
games.scm gnu: services: Add joycond-service. 2023-01-14 07:53:21 -05:00
ganeti.scm
getmail.scm
guix.scm services: nar-herder: Add cached compression support. 2023-02-03 15:18:44 +01:00
herd.scm
hurd.scm
kerberos.scm
ldap.scm
lightdm.scm
linux.scm
lirc.scm
mail.scm
mcron.scm
messaging.scm
monitoring.scm
networking.scm services: connman: Add iwd backend support. 2023-01-16 20:59:30 +04:00
nfs.scm
nix.scm
pam-mount.scm
pm.scm
rsync.scm
samba.scm
science.scm
sddm.scm
security-token.scm
security.scm gnu: services: Fix fail2ban configuration serialization. 2023-01-10 10:47:27 -05:00
shepherd.scm
sound.scm
spice.scm
ssh.scm
syncthing.scm
sysctl.scm
telephony.scm
version-control.scm
virtualization.scm
vnc.scm
vpn.scm
web.scm services: hpcguix-web: Provide default values. 2023-01-22 18:12:09 +01:00
xorg.scm