Subject: [bug#53676] [PATCH v2 2/4] gnu: pulseaudio: Graft to adjust configuration.

From: Liliana Marie Prikler <[email-masked]>
Date: Thu, 24 Feb 2022 20:47:24 +0100

Am Donnerstag, dem 24.02.2022 um 11:38 -0500 schrieb Maxim Cournoyer:
> * gnu/packages/pulseaudio.scm (pulseaudio/fixed): New variable.
> (pulseaudio)[replacement]: Graft package with it.
> ---
>  gnu/packages/pulseaudio.scm | 17 +++++++++++++++++
>  1 file changed, 17 insertions(+)
> 
> diff --git a/gnu/packages/pulseaudio.scm
> b/gnu/packages/pulseaudio.scm
> index fe028b5202..c1b3d33d4a 100644
> --- a/gnu/packages/pulseaudio.scm
> +++ b/gnu/packages/pulseaudio.scm
> @@ -178,6 +178,7 @@ (define-public libsamplerate
>  (define-public pulseaudio
>    (package
>      (name "pulseaudio")
> +    (replacement pulseaudio/fixed)
>      (version "15.0")
>      (source (origin
>               (method url-fetch)
> @@ -269,6 +270,22 @@ (define-public pulseaudio
>      ;; 'LICENSE' for details.
>      (license l:gpl2+)))
>  
> +(define pulseaudio/fixed
> +  (package
> +    (inherit pulseaudio)
> +    (arguments
> +     (substitute-keyword-arguments (package-arguments pulseaudio)
> +       ((#:phases phases)
> +        `(modify-phases ,phases
> +           (add-after 'unpack 'customize-default-script
> +             (lambda _
> +               (substitute* "src/daemon/default.pa.in"
> +                 (("^\\.include.*default.pa.d.*" anchor)
> +                  (string-append
> +                   ;; Honor PulseAudio script extensions found under
> +                   ;; /etc/pulse/default.pa.d.
> +                   anchor ".include
> /etc/pulse/default.pa.d\n")))))))))))
> +
I still think it'd be wiser to do this inside the code that generates
the configuration when we do fill /etc/pulse/default.pa.d given that
there's stuff to source.  At the very least, we'd avoid a graft for the
moment, but we'd also avoid some "lol, just source anything" scenarios.

Cheers