# We rely on PulseAudio's autospawn feature to automatically start the daemon
# in Sato. The graphical session in Sato runs under root, however, and
# PulseAudio disables autospawning for root by default. In a normal setup it's
# not desirable to autospawn for root, because it can easily interfere with
# other users' PulseAudio instances, but in Sato there are no other users, so
# it's OK to enable this in Sato.
allow-autospawn-for-root = yes
