mpd

Setup

Configuration

This is a minimum configuration file for /etc/mpd.conf

music_directory "/var/lib/mpd/music"

playlist_directory "/var/lib/mpd/playlists"

db_file "/var/lib/mpd/mpd.db"

pid_file "/run/mpd/mpd.pid"

state_file "/var/lib/mpd/mpdstate"

user "mpd"

audio_output { type "pulse" name "My Pulse Output" }

Set Pulseaudio to Run System-Wide

 1sudo mkdir -p /etc/pipewire/pipewire-pulse.conf.d
 2
 3cat > /etc/pipewire/pipewire-pulse.conf.d/pulse-server.conf << "EOF"
 4pulse.properties = {
 5    server.address = [
 6        "unix:native"
 7        "tcp:4713"                         # IPv4 and IPv6 on all addresses
 8    ]
 9}
10EOF

Give mpd access to pulse:

1grep pulse /etc/group | cut -d: -f1
2
3grep pulse /etc/group | cut -d: -f1 | while read g; do
4    sudo usermod -aG $g mpd
5done

Working with mpd will be easier if you have access to its files, so maybe:

1sudo usermod -aG mpd $USER

Remember to reboot.

Troubleshooting

Check pulse is working.

1ss | grep 4713

Notifications (AUR)

Install mpd-notification and then start the service:

1systemctl --user enable mpd-notification