services: audio: Remove redundant list-of-string? predicate.

Use list-of-strings? predicate defined in (gnu services configuration).

* gnu/services/audio.scm (list-of-string?): Remove predicate.
(mpd-serialize-list-of-string): Rename procedure to ...
(mpd-serialize-list-of-strings): ... this.
(mpd-configuration)[environment-variables]: Switch to list-of-strings.
[endpoints]: Switch to maybe-list-of-strings.
(mympd-ip-acl)[allow, deny]: Switch to list-of-strings.
(mympd-serialize-configuration): Rename serialize-list-of-string to
serialize-list-of-strings.
* doc/guix.texi (Audio Services): Update it.

Signed-off-by: Maxim Cournoyer <maxim.cournoyer@gmail.com>
This commit is contained in:
Bruno Victal 2023-03-23 15:02:13 +00:00 committed by Maxim Cournoyer
parent 0185b2f9b2
commit 206446b484
No known key found for this signature in database
GPG key ID: 1260E46482E63562
2 changed files with 15 additions and 18 deletions

View file

@ -33501,7 +33501,7 @@ The group to run mpd as.
This is a list of symbols naming Shepherd services that this service This is a list of symbols naming Shepherd services that this service
will depend on. will depend on.
@item @code{environment-variables} (default: @code{()}) (type: list-of-string) @item @code{environment-variables} (default: @code{()}) (type: list-of-strings)
A list of strings specifying environment variables. A list of strings specifying environment variables.
@item @code{log-file} (default: @code{"/var/log/mpd/log"}) (type: maybe-string) @item @code{log-file} (default: @code{"/var/log/mpd/log"}) (type: maybe-string)
@ -33532,7 +33532,7 @@ The location of the sticker database.
@item @code{default-port} (default: @code{6600}) (type: maybe-integer) @item @code{default-port} (default: @code{6600}) (type: maybe-integer)
The default port to run mpd on. The default port to run mpd on.
@item @code{endpoints} (type: maybe-list-of-string) @item @code{endpoints} (type: maybe-list-of-strings)
The addresses that mpd will bind to. A port different from @var{default-port} The addresses that mpd will bind to. A port different from @var{default-port}
may be specified, e.g. @code{localhost:6602} and IPv6 addresses must be may be specified, e.g. @code{localhost:6602} and IPv6 addresses must be
enclosed in square brackets when a different port is used. enclosed in square brackets when a different port is used.
@ -33808,10 +33808,10 @@ Whether to preserve caches between service restarts.
Available @code{mympd-ip-acl} fields are: Available @code{mympd-ip-acl} fields are:
@table @asis @table @asis
@item @code{allow} (default: @code{()}) (type: list-of-string) @item @code{allow} (default: @code{()}) (type: list-of-strings)
Allowed IP addresses. Allowed IP addresses.
@item @code{deny} (default: @code{()}) (type: list-of-string) @item @code{deny} (default: @code{()}) (type: list-of-strings)
Disallowed IP addresses. Disallowed IP addresses.
@end table @end table

View file

@ -2,7 +2,7 @@
;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com> ;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2022 Bruno Victal <mirai@makinata.eu> ;;; Copyright © 20222023 Bruno Victal <mirai@makinata.eu>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -137,9 +137,6 @@ (define (uglify-field-name field-name)
str) str)
#\-) "_"))) #\-) "_")))
(define list-of-string?
(list-of string?))
(define list-of-symbol? (define list-of-symbol?
(list-of symbol?)) (list-of symbol?))
@ -159,11 +156,11 @@ (define (mpd-serialize-alist field-name value)
(define mpd-serialize-string mpd-serialize-field) (define mpd-serialize-string mpd-serialize-field)
(define mpd-serialize-boolean mpd-serialize-field) (define mpd-serialize-boolean mpd-serialize-field)
(define (mpd-serialize-list-of-string field-name value) (define (mpd-serialize-list-of-strings field-name value)
#~(string-append #$@(map (cut mpd-serialize-string field-name <>) value))) #~(string-append #$@(map (cut mpd-serialize-string field-name <>) value)))
(define-maybe string (prefix mpd-)) (define-maybe string (prefix mpd-))
(define-maybe list-of-string (prefix mpd-)) (define-maybe list-of-strings (prefix mpd-))
(define-maybe boolean (prefix mpd-)) (define-maybe boolean (prefix mpd-))
;;; TODO: Procedures for deprecated fields, to be removed. ;;; TODO: Procedures for deprecated fields, to be removed.
@ -349,7 +346,7 @@ (define-configuration mpd-configuration
empty-serializer) empty-serializer)
(environment-variables (environment-variables
(list-of-string '()) (list-of-strings '())
"A list of strings specifying environment variables." "A list of strings specifying environment variables."
empty-serializer) empty-serializer)
@ -400,7 +397,7 @@ (define-configuration mpd-configuration
"The default port to run mpd on.") "The default port to run mpd on.")
(endpoints (endpoints
maybe-list-of-string maybe-list-of-strings
"The addresses that mpd will bind to. A port different from "The addresses that mpd will bind to. A port different from
@var{default-port} may be specified, e.g. @code{localhost:6602} and @var{default-port} may be specified, e.g. @code{localhost:6602} and
IPv6 addresses must be enclosed in square brackets when a different IPv6 addresses must be enclosed in square brackets when a different
@ -409,7 +406,7 @@ (define-configuration mpd-configuration
can be specified here." can be specified here."
(lambda (_ endpoints) (lambda (_ endpoints)
(if (maybe-value-set? endpoints) (if (maybe-value-set? endpoints)
(mpd-serialize-list-of-string "bind_to_address" endpoints) (mpd-serialize-list-of-strings "bind_to_address" endpoints)
""))) "")))
(address ; TODO: deprecated, remove later (address ; TODO: deprecated, remove later
@ -581,11 +578,11 @@ (define (string-or-symbol? x)
(define-configuration/no-serialization mympd-ip-acl (define-configuration/no-serialization mympd-ip-acl
(allow (allow
(list-of-string '()) (list-of-strings '())
"Allowed IP addresses.") "Allowed IP addresses.")
(deny (deny
(list-of-string '()) (list-of-strings '())
"Disallowed IP addresses.")) "Disallowed IP addresses."))
(define-maybe/no-serialization integer) (define-maybe/no-serialization integer)
@ -707,12 +704,12 @@ (define serialize-value
((? string? val) val))) ((? string? val) val)))
(define (ip-acl-serialize-configuration config) (define (ip-acl-serialize-configuration config)
(define (serialize-list-of-string prefix lst) (define (serialize-list-of-strings prefix lst)
(map (cut format #f "~a~a" prefix <>) lst)) (map (cut format #f "~a~a" prefix <>) lst))
(string-join (string-join
(append (append
(serialize-list-of-string "+" (mympd-ip-acl-allow config)) (serialize-list-of-strings "+" (mympd-ip-acl-allow config))
(serialize-list-of-string "-" (mympd-ip-acl-deny config))) ",")) (serialize-list-of-strings "-" (mympd-ip-acl-deny config))) ","))
;; myMPD configuration fields are serialized as individual files under ;; myMPD configuration fields are serialized as individual files under
;; <work-directory>/config/. ;; <work-directory>/config/.