Since I’ve missed 5 years of Linux advances I figured it would be better to get caught up before I started installing Arch on my Netbook.
I decided the best way to do this was just update my Arch desktop and fix whatever broke. Turns out it wasn’t all that much.
Muting with unexpected results
Sound died on my Arch desktop sometime ago. Since I have an onboard and separate SB card I thought maybe it was a driver conflict. I spent several evenings, already exhausted from work, tinkering with various things but after much googling and reading of the Arch Wiki ALSA page I was still clueless. Then, I cracked it.
This breakthough was achieved through poise, precision and audacity. Basically, I sat down one night and said “Right, I’m fixing the sound tonight.” Starting from scratch I opened the Arch Wiki ALSA page and read it from top to bottom, word for word, no skimming.
I very quickly spotted this:
Some cards need to have digital output muted/turned off in order to hear analog sound.
For the Soundblaster Audigy LS mute the IEC958 channel.
Weird. My previous investigations had reminded me of the make and model of my card and I’d also read about what all the various channels are for. It’s worth noting that at one point I was paranoid I had my speakers plugged into the wrong jack so I check all that out too.
Anyway, this sounded promising. I launched alsamixer, previously in which I had diligently unmuted ALL my channels, and looked for what might be a digital channel. There was one called PDIF. I tabbed over to it and pressed “m”.
I am not an elephant
I use mpd to play music. I like the simple interface and lack of super bloat. I like Sonata as a front end. I installed Rhythmbox recently and the dep list gave me the 🙁
Once sound was working again I tried to use mpd to play some songs. Nada.
This time, though, having learned from my previous mistake I went straight to the wiki and read carefully.
The stock Arch mpd.conf had been heavily modified since I set it up so I migrated my settings to the new file format while following the wiki. I quickly realised that at some point in the past I’d deleted the ALSA output section in favour of an http streaming section. Genius. I later realised I’d done this remotely via SSH from work to get some Firefox extension working or something. I have a very visual memory, which explains why I had no recollection of ever having touched it at home.
Last but certainly not least
This pissed me off. This is typical developers sticking to “rules” when it seems to suit them even if it contravenes reasonable expectation or logic.
I won’t tell the whole story but basically I wanted to mount partitions in Thunar. Permission to do this is controlled by udisks (I think) and managed thorough policykit now. Arch ships with great polkit defaults that most people won’t need to change.
However, the rule that allows any user to mount a partition requires the user to give a password. You may know that for polkit to ask you for that password you need something called a User Authentication Agent. There are two main ones: polkit-gnome and polkit-qt.
Obviously, the basic installs of gnome and kde depend on these packages respectively. Not so with XFCE! Oh, no, no! Even though it means that Arch’s perfectly sane polkit defaults are impossible to implement without it, the dependencies for Arch’s XFCE packages do not include a User Authentication Agent.
What’s worse is that you have an Arch Dev on the forums basically telling people they’re retarded whenever they can’t get this to work and smugly telling them to install polkit-gnome.
The Policykit package should depend on a User Authentication Agent. That’s a simple fact. However, because there is a choice of two and Arch would never be partisan, it depends on none.
There’s not even an .install script to warn you. Instead polkit-gnome is an optional dependency for Thunar…