[PATCH] gnu: pulseaudio: Split outputs.

  • Open
  • quality assurance status badge
Details
One participant
  • Homo
Owner
unassigned
Submitted by
Homo
Severity
normal

Debbugs page

H
H
Homo wrote 18 hours ago
(address . guix-patches@gnu.org)(name . Homo)(address . gay@disroot.org)
20241220234453.22542-2-gay@disroot.org
* gnu/packages/pulseaudio.scm (pulseaudio)[outputs]: New field.
[arguments]: Add phase to split outputs.
* gnu/services/sound.scm (pulseaudio-service-type): Use daemon output.

Change-Id: Idb9f32b1ebb4d19d3f63ef56e0e1f08cb1424006
---
Should /etc/xdg/autostart/pulseaudio.desktop be removed?

gnu/packages/pulseaudio.scm | 57 ++++++++++++++++++++++++++++++++++++-
gnu/services/sound.scm | 3 +-
2 files changed, 58 insertions(+), 2 deletions(-)

Toggle diff (91 lines)
diff --git a/gnu/packages/pulseaudio.scm b/gnu/packages/pulseaudio.scm
index dd0d3985c0..77b0330a54 100644
--- a/gnu/packages/pulseaudio.scm
+++ b/gnu/packages/pulseaudio.scm
@@ -190,6 +190,9 @@ (define-public pulseaudio
"pulseaudio-fix-mult-test.patch"
"pulseaudio-longer-test-timeout.patch"))))
(build-system meson-build-system)
+ (outputs '("out" ;library
+ "daemon" ;pulseaudio and start-pulseaudio-x11
+ "utils")) ;utilities
(arguments
(list
#:configure-flags
@@ -211,7 +214,59 @@ (define-public pulseaudio
(setenv "HOME" (getcwd))
;; 'thread-test' needs more time on hydra and on slower
;; machines, so we set the default timeout to 120 seconds.
- (setenv "CK_DEFAULT_TIMEOUT" "120"))))))
+ (setenv "CK_DEFAULT_TIMEOUT" "120")))
+ (add-after 'install 'split
+ (lambda _
+ (let* ((out #$output)
+ (daemon #$output:daemon)
+ (utils #$output:utils)
+ (autostart "etc/xdg/autostart")
+ (bin "bin")
+ (bash "/share/bash-completion/completions")
+ (etc "/etc/pulse")
+ (man1 "/share/man/man1")
+ (man5 "/share/man/man5")
+ (xwayland "/etc/xdg/Xwayland-session.d")
+ (zsh "/share/zsh/site-functions")
+ (rename-recursively
+ (lambda (prefix dir files)
+ (mkdir-p (string-append prefix "/" dir))
+ (for-each (lambda (file)
+ (rename-file
+ (string-append
+ out "/" dir "/" file)
+ (string-append
+ prefix "/" dir "/" file)))
+ files))))
+ (rename-recursively daemon autostart
+ (list "pulseaudio.desktop"))
+ (rename-recursively daemon bin
+ (list "pulseaudio" "start-pulseaudio-x11"))
+ (rename-recursively daemon bash
+ (list "pulseaudio"))
+ (rename-recursively daemon etc
+ (list "daemon.conf" "default.pa" "system.pa"))
+ (rename-recursively daemon man1
+ (list "pulseaudio.1" "start-pulseaudio-x11.1"))
+ (rename-recursively daemon man5
+ (list "default.pa.5" "pulse-daemon.conf.5"))
+ (rename-recursively daemon xwayland
+ (list "00-pulseaudio-x11"))
+ (rename-recursively utils bin
+ (list "pa-info" "pacat" "pacmd" "pactl" "pamon"
+ "paplay" "parec" "parecord" "pasuspender"
+ "qpaeq"))
+ (rename-recursively utils bash
+ (list "pacat" "pacmd" "pactl" "padsp" "paplay"
+ "parec" "parecord" "pasuspender"))
+ (rename-recursively utils man1
+ (list "pacat.1" "pacmd.1" "pactl.1" "pamon.1"
+ "paplay.1" "parec.1" "parecord.1"
+ "pasuspender.1" "pax11publish.1"))
+ (rename-recursively utils man5
+ (list "pulse-cli-syntax.5"))
+ (rename-recursively utils zsh
+ (list "_pulseaudio"))))))))
(inputs
(list alsa-lib
bluez
diff --git a/gnu/services/sound.scm b/gnu/services/sound.scm
index 8ca7acd737..d29bb4bbd0 100644
--- a/gnu/services/sound.scm
+++ b/gnu/services/sound.scm
@@ -231,7 +231,8 @@ (define pulseaudio-service-type
(list (service-extension session-environment-service-type
pulseaudio-environment)
(service-extension etc-service-type pulseaudio-etc)
- (service-extension udev-service-type (const (list pulseaudio)))))
+ (service-extension udev-service-type
+ (const (list `(,pulseaudio "daemon"))))))
(default-value (pulseaudio-configuration))
(description "Configure PulseAudio sound support.")))
--
2.46.0
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 75002@patchwise.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 75002
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch