More specifically, this removes services.pulseaudio and adds the option
hardware.pulseaudio.systemWide which defaults to false but can be used to turn
on the system-wide PulseAudio server (previously defined in
services.pulseaudio). Since the two PulseAudio modes are mutually exclusive
anyway (maybe not strictly true, but I don't think is a good idea combining
them) its nicer to be able to reuse server and ALSA configuration between them.
Also the system-wide PulseAudio service has been adjusted to systemd, and a few
things has been fixed (there was no alsa.conf before, for example).
The bottomline is that people that was using hardware.pulseaudio before should
be able to keep doing it in exactly the same way, and people that used
services.pulseaudio must switch over to hardware.pulseaudio.systemWide instead.
* If PulseAudio is disabled in the NixOS config, then disable
autospawning of the PulseAudio server in /etc/pulse/client.conf.
svn path=/nixos/trunk/; revision=27966
because it uses strtok() to modify the environment variable in
place, it only works correctly the first time it's called.
Subsequent calls only see the first directory listed in the
variable. This causes applications such as Audacious to fail
because the Pulse plugin is not in the first directory. However, we
don't actually need $ALSA_PLUGIN_DIRS, because /etc/asound.conf
allows the full path to the Pulse plugin to be specified.
svn path=/nixos/trunk/; revision=27960
to be rerouted to PulseAudio.
Note that this is distinct from the already existing module
‘services/audio/pulseaudio.nix’ that provides a system-wide
PulseAudio daemon, which is usually not what you want.
svn path=/nixos/trunk/; revision=27958