[PATCH] gnu: home: home-pipewire: Add extra-content to configuration.

  • Done
  • quality assurance status badge
Details
One participant
  • Janneke Nieuwenhuizen
Owner
unassigned
Submitted by
Janneke Nieuwenhuizen
Severity
normal

Debbugs page

Janneke Nieuwenhuizen wrote 3 months ago
(address . guix-patches@gnu.org)
20241202211630.14201-1-janneke@gnu.org
This allows for setting the default sound card/device, e.g.:

pcm.!default {type hw card 0 device 2}
ctl.!default {type hw card 0 device 2}

* gnu/home/services/sound.scm (home-pipewire-configuration)[extra-content]:
New field.
* gnu/home/services/sound.scm (home-pipewire-asoundrc): Append it to
"asoundrc".
* doc/guix.texi (Sound Home Services): Update accordingly.

Change-Id: I6ecebaaab41cd7313b16a5f365c21789db65664e
---
doc/guix.texi | 3 +++
gnu/home/services/sound.scm | 11 ++++++++---
2 files changed, 11 insertions(+), 3 deletions(-)

Toggle diff (59 lines)
diff --git a/doc/guix.texi b/doc/guix.texi
index 8a6640124c..f5bd1bc667 100644
--- a/doc/guix.texi
+++ b/doc/guix.texi
@@ -47289,6 +47289,9 @@ The WirePlumber package to use.
@item @code{enable-pulseaudio?} (default: @code{#t}) (type: boolean)
When true, enable PipeWire's PulseAudio emulation support, allowing
PulseAudio clients to use PipeWire transparently.
+
+@item @code{extra-content} (default: @code{""}) (type: string)
+Extra content to add to the end of @file{~/.config/alsa/asoundrc}.
@end table
@end deftp
diff --git a/gnu/home/services/sound.scm b/gnu/home/services/sound.scm
index 313a57305b..5366c0634f 100644
--- a/gnu/home/services/sound.scm
+++ b/gnu/home/services/sound.scm
@@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2023 Brian Cully <bjc@spork.org>
+;;; Copyright © 2024 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -49,7 +50,10 @@ (define-configuration/no-serialization home-pipewire-configuration
(enable-pulseaudio?
(boolean #t)
"When true, enable PipeWire's PulseAudio emulation support, allowing
-PulseAudio clients to use PipeWire transparently."))
+PulseAudio clients to use PipeWire transparently.")
+ (extra-content
+ (string "")
+ "Extra content to add to the end of @file{~/.config/alsa/asoundrc}."))
(define (home-pipewire-shepherd-service config)
(shepherd-service
@@ -93,7 +97,7 @@ (define (home-pipewire-shepherd-services config)
(define (home-pipewire-asoundrc config)
(match-record config <home-pipewire-configuration>
- (pipewire)
+ (pipewire extra-content)
(mixed-text-file
"asoundrc"
"<" pipewire "/share/alsa/alsa.conf.d/50-pipewire.conf>\n"
@@ -103,7 +107,8 @@ (define (home-pipewire-asoundrc config)
"}\n"
"ctl_type.pipewire {\n"
" lib \"" pipewire "/lib/alsa-lib/libasound_module_ctl_pipewire.so\"\n"
- "}\n")))
+ "}\n"
+ extra-content)))
(define home-pipewire-disable-pulseaudio-auto-start
(plain-file "client.conf" "autospawn = no"))
--
2.46.0
Janneke Nieuwenhuizen wrote 2 months ago
(address . 74657-done@debbugs.gnu.org)
877c6ngrqe.fsf@gnu.org
Janneke Nieuwenhuizen writes:

Toggle quote (13 lines)
> This allows for setting the default sound card/device, e.g.:
>
> pcm.!default {type hw card 0 device 2}
> ctl.!default {type hw card 0 device 2}
>
> * gnu/home/services/sound.scm (home-pipewire-configuration)[extra-content]:
> New field.
> * gnu/home/services/sound.scm (home-pipewire-asoundrc): Append it to
> "asoundrc".
> * doc/guix.texi (Sound Home Services): Update accordingly.
>
> Change-Id: I6ecebaaab41cd7313b16a5f365c21789db65664e

Pushed to master as 7080aaf08102ec4c9c976582d6adfa0c14e6c640.

Greetings,
Janneke

--
Janneke Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond https://LilyPond.org
Freelance IT https://www.JoyOfSource.com| Avatar® https://AvatarAcademy.com
Closed
?
Your comment

This issue is archived.

To comment on this conversation send an email to 74657@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 74657
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
You may also tag this issue. See list of standard tags. For example, to set the confirmed and easy tags
mumi command -t +confirmed -t +easy
Or, remove the moreinfo tag and set the help tag
mumi command -t -moreinfo -t +help