This is lame, but on a fresh install the user will not have the key in
their keyring. We could add it, but doing that blindly seems even worse
than just skipping it. This way the user will at least get an error
whenever they try to upgrade the package, which will prompt them to
acquire and verify the key manually.
Ansible doesn't seem to have a way to interact with systemd user
instances. All the prep is done, but the user still needs to manually
enable and start the mpd user service.
$ systemd --user enable mpd.service
$ systemd --user start mpd.service
Alternatively, the user could include mpd in their shell profile,
xinitrc, or just call it whenever they want it to run. We jail mpd in
/usr/local/bin, just like everything else.
$ mpd
I don't know if this is the best way to handle building go packages.
Basically the idea is to treat GOPATH like python virtualenvs. A
different one for each thing we install. I'm open to other ideas (or
just moving the root to someplace other than /usr/local/go).
This seems kind of lame but solves two problems.
One of my USB audio devices only shows up with a Speaker channel, so I
can't just use my keyboard shortcut to adjust Master all the time.
Trying to adjust channels that don't exist doesn't hurt anything, so I
might as well just adjust all 3 outputs that I potentially care about.
Sometimes I'll end up with Capture off and Mic unmuted or vice versa.
Toggling them both together means they're always in the same state,
making it easier to figure out what is going on.
I'm assuming this won't break anything because most users will already
be 1000. Existing users whose primary accounts have a different UID
should set the var appropriately.
Existing users should remove the old udev rules.
# rm /etc/udev/rules.d/99-lowbat.rules
notify-send doesn't work since the script is being called as root, but
that is fixable. This at least gets the low battery notification via
wall and suspension at critical levels working consistently, unlike the
unreliable udev approach.