From 1fd59ceb040154439be4393aa3720ac63c3a5d08 Mon Sep 17 00:00:00 2001 From: kenji Date: Sat, 27 Dec 2025 21:35:22 -0600 Subject: [PATCH] add: cava --- apps/cava/home.nix | 5 +++++ apps/hyprland/hypr/exec.nix | 1 + apps/hyprland/hypr/rules.nix | 16 ++++++++-------- apps/matugen/config.toml | 5 +++++ apps/matugen/templates/cava | 25 +++++++++++++++++++++++++ modules/home/apps-optional.nix | 1 + 6 files changed, 45 insertions(+), 8 deletions(-) create mode 100644 apps/cava/home.nix create mode 100644 apps/matugen/templates/cava diff --git a/apps/cava/home.nix b/apps/cava/home.nix new file mode 100644 index 0000000..3992ab7 --- /dev/null +++ b/apps/cava/home.nix @@ -0,0 +1,5 @@ +{pkgs, ...}: { + home.packages = with pkgs; [ + cava + ]; +} diff --git a/apps/hyprland/hypr/exec.nix b/apps/hyprland/hypr/exec.nix index f0e9bc5..8327930 100644 --- a/apps/hyprland/hypr/exec.nix +++ b/apps/hyprland/hypr/exec.nix @@ -25,6 +25,7 @@ "[workspace special:steam silent] uwsm app -- steam" "[workspace special:music silent] uwsm app -- /usr/bin/env ghostty --class=jellyfin-tui --title=jellyfin-tui -e jellyfin-tui" + "[workspace special:music silent] uwsm app -- /usr/bin/env ghostty --class=cava --title=cava -e cava" ]; }; } diff --git a/apps/hyprland/hypr/rules.nix b/apps/hyprland/hypr/rules.nix index 5efe6c3..d3749a5 100644 --- a/apps/hyprland/hypr/rules.nix +++ b/apps/hyprland/hypr/rules.nix @@ -27,19 +27,19 @@ # --- MUSIC RULES (Jellyfin-TUI) --- "workspace special:music silent, title:^(jellyfin-tui)$" "workspace special:music silent, initialTitle:^(jellyfin-tui)$" - "float, title:^(jellyfin-tui)$" - "float, initialTitle:^(jellyfin-tui)$" - "center, title:^(jellyfin-tui)$" - "center, initialTitle:^(jellyfin-tui)$" - "size 80% 70%, title:^(jellyfin-tui)$" - "size 80% 70%, initialTitle:^(jellyfin-tui)$" - "dimaround, title:^(jellyfin-tui)$" - "dimaround, initialTitle:^(jellyfin-tui)$" "noinitialfocus, title:^(jellyfin-tui)$" "noinitialfocus, initialTitle:^(jellyfin-tui)$" "suppressevent activate, title:^(jellyfin-tui)$" "suppressevent activate, initialTitle:^(jellyfin-tui)$" + # --- CAVA RULES --- + "workspace special:music silent, title:^(cava)$" + "workspace special:music silent, initialTitle:^(cava)$" + "noinitialfocus, title:^(cava)$" + "noinitialfocus, initialTitle:^(cava)$" + "suppressevent activate, title:^(cava)$" + "suppressevent activate, initialTitle:^(cava)$" + # --- GAMING RULES --- # Steam Apps, Gamescope, Lutris, Heroic, and Wine/Proton apps "fullscreen, class:^steam_app_\d+$" diff --git a/apps/matugen/config.toml b/apps/matugen/config.toml index 59c6291..d17fdc8 100644 --- a/apps/matugen/config.toml +++ b/apps/matugen/config.toml @@ -29,3 +29,8 @@ input_path = '~/.config/matugen/templates/firefox' output_path = '~/.cache/wal/colors.json' post_hook = 'pywalfox update' +[templates.cava] +input_path = "~/.config/matugen/templates/cava" +output_path = "~/.config/cava/config" +post_hook = "pkill -USR1 cava" + diff --git a/apps/matugen/templates/cava b/apps/matugen/templates/cava new file mode 100644 index 0000000..25466bf --- /dev/null +++ b/apps/matugen/templates/cava @@ -0,0 +1,25 @@ +[general] +framerate = 60 +autosens = 1 +bars = 0 +bar_width = 3 +bar_spacing = 1 +sleep_timer = 5 + +[input] +method = pipewire +source = auto + +[output] +method = ncurses +style = stereo + +[color] +gradient = 1 +gradient_count = 6 +gradient_color_1 = '{{colors.primary.default.hex}}' +gradient_color_2 = '{{colors.primary_container.default.hex}}' +gradient_color_3 = '{{colors.secondary.default.hex}}' +gradient_color_4 = '{{colors.secondary_container.default.hex}}' +gradient_color_5 = '{{colors.tertiary.default.hex}}' +gradient_color_6 = '{{colors.tertiary_container.default.hex}}' diff --git a/modules/home/apps-optional.nix b/modules/home/apps-optional.nix index 36b244f..bbc155a 100644 --- a/modules/home/apps-optional.nix +++ b/modules/home/apps-optional.nix @@ -1,6 +1,7 @@ { imports = [ ../../apps/jellyfin-tui/home.nix + ../../apps/cava/home.nix ../../apps/btop/home.nix ]; }