This changes the 'custom-serializer' field into a generic 'extra-args' field that can be extended to support new literals. Within extra-args, the literals 'sanitizer' and 'serializer' allow for user-defined sanitization and serialization procedures respectively. The 'empty-serializer' was also added as a literal to be used as before. To prevent confusion between the new “explicit” style of specifying a sanitizer, and the old “implicit” style, the latter has been deprecated, and a warning is issued if it is encountered. * gnu/services/configuration.scm (define-configuration-helper): Rename 'custom-serializer' to 'extra-args'. Add support for literals 'sanitizer', 'serializer' and 'empty-serializer'. Rename procedure 'field-sanitizer' to 'default-field-sanitizer' to avoid syntax clash. Only define default field sanitizers if user-defined ones are absent. (normalize-extra-args): New variable. (<configuration-field>)[sanitizer]: New field. * doc/guix.texi (Complex Configurations): Document the newly added literals. * tests/services/configuration.scm: Add tests for the new literals. Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com> |
||
---|---|---|
.. | ||
admin.scm | ||
audio.scm | ||
auditd.scm | ||
authentication.scm | ||
avahi.scm | ||
base.scm | ||
certbot.scm | ||
cgit.scm | ||
ci.scm | ||
configuration.scm | ||
cuirass.scm | ||
cups.scm | ||
databases.scm | ||
dbus.scm | ||
desktop.scm | ||
dict.scm | ||
dns.scm | ||
docker.scm | ||
file-sharing.scm | ||
games.scm | ||
ganeti.scm | ||
getmail.scm | ||
guix.scm | ||
herd.scm | ||
hurd.scm | ||
kerberos.scm | ||
ldap.scm | ||
lightdm.scm | ||
linux.scm | ||
lirc.scm | ||
mail.scm | ||
mcron.scm | ||
messaging.scm | ||
monitoring.scm | ||
networking.scm | ||
nfs.scm | ||
nix.scm | ||
pam-mount.scm | ||
pm.scm | ||
rsync.scm | ||
samba.scm | ||
science.scm | ||
sddm.scm | ||
security-token.scm | ||
security.scm | ||
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 | ||
xorg.scm |