https://wiki.archlinux.org/title/Music_Player_Daemon
ncmpcpp
Nice TUI client.
mpc
Cli client.
beet
Music organizer.
config
Make sure to actually create the directories referenced in your config.
~/.config/mpd/mpd.conf
music_directory "~/music"
playlist_directory "~/.config/mpd/playlists"
db_file "~/.config/mpd/mpd.db"
pid_file "~/.config/mpd/mpd.pid"
state_file "~/.config/mpd/mpdstate"
audio_output {
type "pulse"
name "My Pulse Output"
}
user service
You can start mpd manually as a user, systemwide, or as a userservice. I start mine with xinitrc and I've used i3 in the past. Start it after pipewire if you're using it.
xinitrc
# start pipewire and pipewire-pulse
exec pipewire &
exec pipewire-pulse &
# start mpd
exec mpd &
systemd
sudo systemctl --user enable mpd
runit
I haven't bothered, but you can create a user service with runit once you've
setup user services by creating a script at ~/.service/mpd/run
#!/bin/sh
exec mpd > /dev/null