dotfiles/modules/home/cli/fun/mpd/default.nix

58 lines
1.1 KiB
Nix
Raw Normal View History

2025-11-25 00:14:51 -06:00
{
services = {
mpd = {
enable = true;
musicDirectory = "/mnt/media/ceres/storage/Music";
extraConfig = ''
audio_output {
type "pulse"
2025-11-25 03:10:38 -06:00
name "PulseAudio"
}
audio_output {
type "fifo"
2025-11-25 00:14:51 -06:00
name "my_fifo"
path "/tmp/mpd.fifo"
format "44100:16:2"
}
'';
};
mpd-discord-rpc = {
enable = true;
settings = {
format = {
hosts = [ "localhost:6600" ];
details = "$title";
state = "$artist";
2025-11-25 00:14:51 -06:00
display_type = "state";
};
};
};
};
2025-11-25 03:10:38 -06:00
programs.cava = {
enable = true;
settings = {
input = {
method = "fifo";
source = "/tmp/mpd.fifo";
};
};
};
systemd.user.services.mpd-discord-rpc = {
Unit = {
After = [
"mpd.service"
"graphical-session.target"
];
Requires = [ "mpd.service" ];
PartOf = [ "graphical-session.target" ];
};
Service = {
Restart = "on-failure";
RestartSec = "10s";
};
};
2025-11-25 00:14:51 -06:00
}