~ruther/guix-local

61cd4e90d5638ce5b02a18a9e71661a91856385d — Bruno Victal 3 years ago 10093ab
services: mpd: Fix unintentional API breakage for mixer-type field.

* gnu/services/audio.scm (mpd-output)[mixer-type]: Use sanitizer to
accept both strings and symbols as values.

Signed-off-by: Liliana Marie Prikler <liliana.prikler@gmail.com>
1 files changed, 16 insertions(+), 1 deletions(-)

M gnu/services/audio.scm
M gnu/services/audio.scm => gnu/services/audio.scm +16 -1
@@ 140,6 140,11 @@
(define list-of-symbol?
  (list-of symbol?))


;;;
;;; MPD
;;;

(define (mpd-serialize-field field-name value)
  (let ((field (if (string? field-name) field-name
                   (uglify-field-name field-name)))


@@ 294,7 299,17 @@ disconnect all listeners even when playback is accidentally stopped.")
for this audio output: the @code{hardware} mixer, the @code{software}
mixer, the @code{null} mixer (allows setting the volume, but with no
effect; this can be used as a trick to implement an external mixer
External Mixer) or no mixer (@code{none}).")
External Mixer) or no mixer (@code{none})."
   (sanitizer
    (lambda (x)  ; TODO: deprecated, remove me later.
      (cond
       ((symbol? x)
        (warning (G_ "symbol value for 'mixer-type' is deprecated, \
use string instead~%"))
        (symbol->string x))
       ((string? x) x)
       (else
        (configuration-field-error #f 'mixer-type x))))))

  (replay-gain-handler
   maybe-string