{ pkgs, lib, config, ... }: { config = lib.mkIf config.frogeye.desktop.xorg { home = { packages = with pkgs; [ ashuffle mpc-cli vimpc ]; 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; }; extraConfig = '' restore_paused "yes" ''; musicDirectory = "${config.home.homeDirectory}/Musiques"; }; xdg = { configFile = { "vimpc/vimpcrc" = { text = '' map FF :browsegg/ map à :set add nexta:set add end map @ :set add nexta:set add end:next map ° D:browseA:shuffle:play:playlist set songformat {%a - %b: %t}|{%f}$E$R $H[$H%l$H]$H set libraryformat %n \| {%t}|{%f}$E$R $H[$H%l$H]$H set ignorecase set sort library ''; }; }; }; 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"; }; }; }