From a4b85b9601be68c66d3bf33bf05c1ef1c0032526 Mon Sep 17 00:00:00 2001 From: Benedikt Peetz Date: Sun, 17 Nov 2024 10:29:06 +0100 Subject: refactor(legacy/conf/mpd): Move to a unified `mpd` by-name module --- modules/by-name/mp/mpd/mpc.nix | 37 +++++++++++++++++++++++++++++++++++++ 1 file changed, 37 insertions(+) create mode 100644 modules/by-name/mp/mpd/mpc.nix (limited to 'modules/by-name/mp/mpd/mpc.nix') diff --git a/modules/by-name/mp/mpd/mpc.nix b/modules/by-name/mp/mpd/mpc.nix new file mode 100644 index 00000000..031465fe --- /dev/null +++ b/modules/by-name/mp/mpd/mpc.nix @@ -0,0 +1,37 @@ +{ + config, + lib, + pkgs, + ... +}: let + cfg = config.soispha.services.mpd.mpc; + parentCfg = config.soispha.services.mpd; +in { + options.soispha.services.mpd.mpc = { + enable = lib.mkEnableOption "mpc with extensions"; + + beetsPkg = lib.mkOption { + type = lib.types.package; + description = "The package to use, when calling `beet`"; + }; + }; + + config = lib.mkIf cfg.enable { + home-manager.users.soispha.home.packages = [ + pkgs.mpp # Wrapper around `mpc` that allows the usage of `mpc-{beetsrm,lyrics,searchadd}` (below) without the `-` + + # Removes the currently playing song from the disk and storage + (pkgs.mpp-beetrm.override { + beets = cfg.beetsPkg; + }) + # Works like normal `mpc searchadd` but uses the `beets` query syntax + (pkgs.mpp-searchadd.override { + beets = cfg.beetsPkg; + }) + # Displays the lyrics of the currently playing song + (pkgs.mpp-lyrics.override { + mpd_music_dir = parentCfg.directories.music; + }) + ]; + }; +} -- cgit 1.4.1