From 0853afd06e871814c2058331ebcc528472760c9a Mon Sep 17 00:00:00 2001 From: Aria Nolan Date: Thu, 21 Mar 2024 23:52:03 -0400 Subject: [PATCH] mpd and ncmpcpp --- modules/nixos-common.nix | 18 ++++++++++++++++++ users/tacocat/home.nix | 1 + users/tacocat/programs/default.nix | 1 + users/tacocat/programs/ncmpcpp.nix | 13 +++++++++++++ 4 files changed, 33 insertions(+) create mode 100644 users/tacocat/programs/ncmpcpp.nix diff --git a/modules/nixos-common.nix b/modules/nixos-common.nix index 6255e43..f2ea2fc 100644 --- a/modules/nixos-common.nix +++ b/modules/nixos-common.nix @@ -54,6 +54,24 @@ enable = true; settings.PasswordAuthentication = false; }; + services.mpd = { + enable = true; + user = "tacocat"; + musicDirectory = "/data/music"; + startWhenNeeded = true; + extraConfig = '' + audio_output { + type "pipewire" + name "Pipewire sound server" + } + ''; + }; + systemd.services.mpd.environment = { + # https://gitlab.freedesktop.org/pipewire/pipewire/-/issues/609 + XDG_RUNTIME_DIR = "/run/user/1000"; + # User-id must match above user. MPD will look inside this directory for + # the PipeWire socket. + }; virtualisation.docker.enable = true; services.udev.extraRules = '' # 0d28:0204 DAPLink diff --git a/users/tacocat/home.nix b/users/tacocat/home.nix index 3f22f6a..40ae3a4 100644 --- a/users/tacocat/home.nix +++ b/users/tacocat/home.nix @@ -24,6 +24,7 @@ ]; packages = with pkgs; [ fd + mpc-cli texliveFull ripgrep matlab diff --git a/users/tacocat/programs/default.nix b/users/tacocat/programs/default.nix index 7f7c619..1c5ebd3 100644 --- a/users/tacocat/programs/default.nix +++ b/users/tacocat/programs/default.nix @@ -10,6 +10,7 @@ ./tiny.nix ./radioboat.nix ./zoxide.nix + ./ncmpcpp.nix ]; programs.eza = { diff --git a/users/tacocat/programs/ncmpcpp.nix b/users/tacocat/programs/ncmpcpp.nix new file mode 100644 index 0000000..7355550 --- /dev/null +++ b/users/tacocat/programs/ncmpcpp.nix @@ -0,0 +1,13 @@ +{...}: { + programs.ncmpcpp = { + enable = true; + bindings = [ + { key = "j"; command = "scroll_down"; } + { key = "k"; command = "scroll_up"; } + { key = "J"; command = [ "select_item" "scroll_down" ]; } + { key = "K"; command = [ "select_item" "scroll_up" ]; } + ]; + mpdMusicDir = "/data/music"; + }; +} +