Add mpris support
This commit is contained in:
parent
f011b376bb
commit
86f9f75bd7
6 changed files with 126 additions and 21 deletions
|
@ -6,26 +6,36 @@
|
|||
ashuffle
|
||||
mpc-cli
|
||||
vimpc
|
||||
playerctl
|
||||
];
|
||||
sessionVariables = {
|
||||
MPD_PORT = "${toString config.services.mpd.network.port}";
|
||||
};
|
||||
};
|
||||
services.mpd = {
|
||||
enable = true;
|
||||
network = {
|
||||
listenAddress = "0.0.0.0"; # Can be controlled remotely, determined with firewall
|
||||
startWhenNeeded = true;
|
||||
services = {
|
||||
mpd = {
|
||||
enable = true;
|
||||
network = {
|
||||
listenAddress = "0.0.0.0"; # Can be controlled remotely, determined with firewall
|
||||
startWhenNeeded = true;
|
||||
};
|
||||
extraConfig = ''
|
||||
restore_paused "yes"
|
||||
audio_output {
|
||||
type "pipewire"
|
||||
name "PipeWire Sound Server"
|
||||
}
|
||||
'';
|
||||
# UPST auto audio_output ?
|
||||
musicDirectory = "${config.home.homeDirectory}/Musiques";
|
||||
};
|
||||
extraConfig = ''
|
||||
restore_paused "yes"
|
||||
audio_output {
|
||||
type "pipewire"
|
||||
name "PipeWire Sound Server"
|
||||
}
|
||||
'';
|
||||
# UPST auto audio_output ?
|
||||
musicDirectory = "${config.home.homeDirectory}/Musiques";
|
||||
# Expose mpd to mpris
|
||||
# mpd-mpris also exists but is MIT and make playerctld not pick up on play/pause events
|
||||
mpdris2.enable = true;
|
||||
# Allow control from headset
|
||||
mpris-proxy.enable = true;
|
||||
# Remember the last player
|
||||
playerctld.enable = true;
|
||||
};
|
||||
xdg = {
|
||||
configFile = {
|
||||
|
@ -45,9 +55,9 @@
|
|||
};
|
||||
xsession.windowManager.i3.config.keybindings =
|
||||
{
|
||||
"XF86AudioPrev" = "exec ${pkgs.mpc-cli}/bin/mpc prev";
|
||||
"XF86AudioPlay" = "exec ${pkgs.mpc-cli}/bin/mpc toggle";
|
||||
"XF86AudioNext" = "exec ${pkgs.mpc-cli}/bin/mpc next";
|
||||
"XF86AudioPrev" = "exec ${lib.getExe pkgs.playerctl} previous";
|
||||
"XF86AudioPlay" = "exec ${lib.getExe pkgs.playerctl} play-pause";
|
||||
"XF86AudioNext" = "exec ${lib.getExe pkgs.playerctl} next";
|
||||
};
|
||||
};
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue