diff options
author | Leo Prikler <leo.prikler@student.tugraz.at> | 2020-01-10 02:48:22 +0100 |
---|---|---|
committer | Marius Bakke <mbakke@fastmail.com> | 2020-01-11 18:18:51 +0100 |
commit | f1022fbf2f16b0c9ae9fa0f8af4e61e035fec4cf (patch) | |
tree | 8f65ed1787843137d5c792fdf2eef2ff913bd751 /gnu/services | |
parent | f6f918113052fe781fa7a1c4c6b666b5aa57c834 (diff) | |
download | guix-f1022fbf2f16b0c9ae9fa0f8af4e61e035fec4cf.tar guix-f1022fbf2f16b0c9ae9fa0f8af4e61e035fec4cf.tar.gz |
services: Split ladspa-service-type from pulseaudio-service-type.
* gnu/services/sound.scm (ladspa-configuration): New record.
(ladspa-environment): New procedure.
(ladspa-service-type): New service type.
(pulseaudio-environment): Remove LADSPA_PATH.
* doc/guix.texi: Adjust documentation.
Signed-off-by: Marius Bakke <mbakke@fastmail.com>
Diffstat (limited to 'gnu/services')
-rw-r--r-- | gnu/services/sound.scm | 38 |
1 files changed, 33 insertions, 5 deletions
diff --git a/gnu/services/sound.scm b/gnu/services/sound.scm index 4ec6120ac7..a1c928222a 100644 --- a/gnu/services/sound.scm +++ b/gnu/services/sound.scm @@ -36,7 +36,10 @@ alsa-service-type pulseaudio-configuration - pulseaudio-service-type)) + pulseaudio-service-type + + ladspa-configuration + ladspa-service-type)) ;;; Commentary: ;;; @@ -125,10 +128,7 @@ ctl.!default { (file-append pulseaudio "/etc/pulse/system.pa")))) (define (pulseaudio-environment config) - ;; Define this variable in the global environment such that - ;; pulseaudio swh-plugins works. - `(("LADSPA_PATH" . ,(file-append swh-plugins "/lib/ladspa")) - ;; Define these variables, so that pulseaudio honors /etc. + `(;; Define these variables, so that pulseaudio honors /etc. ("PULSE_CONFIG" . "/etc/pulse/daemon.conf") ("PULSE_CLIENTCONFIG" . "/etc/pulse/client.conf"))) @@ -166,4 +166,32 @@ ctl.!default { (default-value (pulseaudio-configuration)) (description "Configure PulseAudio sound support."))) + +;;; +;;; LADSPA +;;; + +(define-record-type* <ladspa-configuration> + ladspa-configuration make-ladspa-configuration + ladspa-configuration? + (plugins ladspa-plugins (default '()))) + +(define (ladspa-environment config) + ;; Define this variable in the global environment such that + ;; pulseaudio swh-plugins (and similar LADSPA plugins) work. + `(("LADSPA_PATH" . + (string-join + ',(map (lambda (package) (file-append package "/lib/ladspa")) + (ladspa-plugins config)) + ":")))) + +(define ladspa-service-type + (service-type + (name 'ladspa) + (extensions + (list (service-extension session-environment-service-type + ladspa-environment))) + (default-value (ladspa-configuration)) + (description "Configure LADSPA plugins."))) + ;;; sound.scm ends here |