30 lines
577 B
Nix
30 lines
577 B
Nix
{
|
|
config,
|
|
osConfig,
|
|
lib,
|
|
pkgs,
|
|
...
|
|
}: let
|
|
cfg = config.marleyos.programs.cava;
|
|
has-mpd = osConfig.services.mpd.enable || config.services.mpd.enable;
|
|
in {
|
|
options.marleyos.programs.cava.enable = lib.mkEnableOption "cava";
|
|
|
|
config = lib.mkIf (cfg.enable && pkgs.stdenv.isLinux) {
|
|
programs.cava = {
|
|
enable = true;
|
|
|
|
settings = {
|
|
input = lib.mkIf has-mpd {
|
|
method = "fifo";
|
|
source = "/tmp/mpd.fifo";
|
|
};
|
|
};
|
|
};
|
|
|
|
stylix.targets.cava = {
|
|
enable = true;
|
|
rainbow.enable = true;
|
|
};
|
|
};
|
|
}
|