Subject: Re: [bug#29678] [PATCH] gnu: qemu: Add pulseaudio support.

From: Marius Bakke <[email-masked]>
Date: Wed, 31 Jan 2018 16:04:54 +0100

Oleg Pykhalov <[email-masked]> writes:

>>>         #:phases
>>>         (modify-phases %standard-phases
>>>           (replace 'configure
>>> @@ -166,6 +171,7 @@
>>>         ("ncurses" ,ncurses)
>>>         ;; ("pciutils" ,pciutils)
>>>         ("pixman" ,pixman)
>>> +       ("pulseaudio" ,pulseaudio)
>>
>> I see pulseaudio is already in Qemus closure,
>
> How do you see this?
>
> Is that what do you use?
> --8<---------------cut here---------------start------------->8---
> guix graph --type=references pulseaudio | dot -Tsvg > pulseaudio.svg
> --8<---------------cut here---------------end--------------->8---

I used `guix size qemu | grep pulseaudio`.

However "qemu-minimal" does not include pulseaudio, which increases the
size by about 25%.  Can you drop the input from qemu-minimal at the same
time?  Unfortunately we might have to override #:configure-flags as well.

[...]

> @@ -96,10 +97,13 @@
>       '(;; Running tests in parallel can occasionally lead to failures, like:
>         ;; boot_sector_test: assertion failed (signature == SIGNATURE): (0x00000000 == 0x0000dead)
>         #:parallel-tests? #f
> -       #:configure-flags (list "--enable-usb-redir" "--enable-opengl"
> -                               (string-append "--smbd="
> -                                              (assoc-ref %outputs "out")
> -                                              "/libexec/samba-wrapper"))
> +       #:configure-flags
> +       (list "--enable-usb-redir"
> +             "--enable-opengl"
> +             (string-append "--smbd=" (assoc-ref %outputs "out")
> +                            "/libexec/samba-wrapper")
> +             (string-append "--audio-drv-list="
> +                            (string-join (list "alsa" "pa" "sdl") ",")))

Nit-pick: I don't really see the benefit of using string-join here.  But
no strong opinion.  However: use '() instead of (list ...) when the
elements do not need to be evaluated.