None of these packages use a compiler, except for alsa-firmware, which
has the appropriate compiler in depsBuildBuild already.
Tested by building a NixOS system with hardware.enableAllFirmware = true.
This patch was originally added in 2014 to support running apps with
32bit sound on 64bit architecture.
The patch itself add a "libs" field to syntax recognized in /etc/asound.conf:
ab8ef63ff4
The pulseaudio module then used the "libs" to declare locations for both native
and 32bit plugins:
0c8ad65560
In a recent alsa-lib upgrade (1.2.5.1 -> 1.2.6.1), the patch was removed
without understanding its purpose, leaving alsa-lib unable to parse the
etc/asound.conf that the pulseaudio module generated:
aeea1bb53b
As a result, ALSA utils are failing on x86_64 architecture if pulseaudio
is enabled. E.g.
$ alsactl monitor default
alsa-lib control.c:1464:(snd_ctl_open_conf) Unknown field libs
Cannot open ctl default
$ alsamixer
ALSA lib control.c:1464:(snd_ctl_open_conf) Unknown field libs
cannot open mixer: Invalid argument
$ speaker-test -t wav -c 2
speaker-test 1.2.6
Playback device is default
Stream parameters are 48000Hz, S16_LE, 2 channels
WAV file(s)
ALSA lib pcm.c:2576:(snd_pcm_open_conf) Unknown field libs
Playback open error: -22,Invalid argument
Put the patch back in place to fix what was broken.