diff --git a/modules/desktop/themes/catppuccin/default.nix b/modules/desktop/themes/catppuccin/default.nix index 8f093d9..edd6bbd 100644 --- a/modules/desktop/themes/catppuccin/default.nix +++ b/modules/desktop/themes/catppuccin/default.nix @@ -24,6 +24,14 @@ in { }; }; + kvantumTheme = { + name = "Catppuccin-${pascalCase variant}-${pascalCase accent}"; + package = pkgs.catppuccin-kvantum.override { + variant = pascalCase variant; + accent = pascalCase accent; + }; + }; + iconTheme = { name = "WhiteSur-dark"; package = pkgs.whitesur-icon-theme; diff --git a/modules/desktop/themes/default.nix b/modules/desktop/themes/default.nix index 8cc93d7..65e03cf 100644 --- a/modules/desktop/themes/default.nix +++ b/modules/desktop/themes/default.nix @@ -18,6 +18,10 @@ in { name = mkOpt str ""; package = mkPackageOption pkgs "gtk" {}; }; + kvantumTheme = { + name = mkOpt str ""; + package = mkPackageOption pkgs "kvantum" {}; + }; iconTheme = { name = mkOpt str ""; package = mkPackageOption pkgs "icon" {}; @@ -84,10 +88,10 @@ in { gtk4.extraConfig.gtk-application-prefer-dark-theme = mkIf cfg.dark "1"; }; - qt = { + hm.qt = { enable = true; - platformTheme = "gnome"; - style = "adwaita"; + platformTheme.name = "kvantum"; + style.name = "kvantum"; }; hm.home.pointerCursor = { @@ -127,5 +131,15 @@ in { }; hm.programs.rofi.theme = cfg.rofi; + + hm.xdg.configFile ={ + "Kvantum/${cfg.kvantumTheme.name}".source = "${cfg.kvantumTheme.package}/share/Kvantum/${cfg.kvantumTheme.name}"; + "Kvantum/kvantum.kvconfig" = { + text = '' + [General] + theme=${cfg.kvantumTheme.name} + ''; + }; + }; }; }