Brain Phrye

code cooking diy fiction personal photos politics reviews tools 


Desktop Audio Source (revisited)

[ Listen to article ]

Last week I wrote up my desktop microphone configs. Unfortunately I didn’t fully test them.

The real test was to log out and log back in again. If I’d done that I would have learned that pulseaudio hadn’t restarted it. That was due to my change to ~/.pulse/default.pa.

When you log into an Ubuntu desktop, a bunch of systemd user units get run. Two of them start the pulseaudio daemon:

1
2
systemctl --user status pulseaudio.service
systemctl --user status pulseaudio.socket

Both of these were returning an error that no modules were loaded and they just quit.

After some hunting around I learned that pulseaudio will check if ~/.pulse/default.pa exists and load it. If not it will see if /etc/pulse/default.pa exists and load that. It will never load both.

This is vaguely annoying as most things in Unix will load the configs in /etc first and then load from the user’s home directory. But, kids today, etc.

Once I removed my configs - rm ~/.pulse/default.pa - it ran fine. Alternatively I could have copied the contents of /etc/pulse/default.pa into the beginning of ~/.pulse/default.pa and left my changes at the end of the combined files. However seeing as how sensitive it is to “mistakes” I decided to just delete my change in case my TONOR mic wasn’t seen for some reason. The udev script run when I add my headphones to the system is sufficient.