nix/home/gtk/default.nix

119 lines
4.2 KiB
Nix
Raw Normal View History

2024-06-05 20:52:52 +02:00
{
pkgs,
config,
...
}: let
gruvboxPlus = import ./gruvbox-plus.nix {inherit pkgs;};
in let
cssContent = with config.colorScheme.colors; ''
@define-color accent_color #${base0D};
@define-color accent_bg_color mix(#${base0D}, #${base00},0.3);
@define-color accent_fg_color #${base00};
@define-color destructive_color #${base0C};
@define-color destructive_bg_color mix(#${base0C}, #${base00},0.3);
2024-06-13 19:31:48 +02:00
@define-color destructive_fg_color #${base00};
2024-06-05 20:52:52 +02:00
@define-color success_color #${base0B};
@define-color success_bg_color mix(#${base0B}, black,0.6);
2024-06-13 19:31:48 +02:00
@define-color success_fg_color #${base00};
2024-06-05 20:52:52 +02:00
@define-color warning_color #${base0A};
@define-color warning_bg_color mix(#${base0A}, black,0.6);
@define-color warning_fg_color rgba(0, 0, 0, 0.8);
@define-color error_color #${base08};
@define-color error_bg_color mix(#${base0C}, #${base00},0.3);
@define-color error_fg_color #${base02};
@define-color window_bg_color #${base00};
@define-color window_fg_color #${base04};
2024-06-12 07:13:47 +02:00
@define-color view_bg_color #${base00};
2024-06-05 20:52:52 +02:00
@define-color view_fg_color #${base04};
@define-color headerbar_bg_color mix(#${base00},black,0.2);
@define-color headerbar_fg_color #${base04};
2024-06-13 19:31:48 +02:00
@define-color headerbar_border_color #${base00};
2024-06-05 20:52:52 +02:00
@define-color headerbar_backdrop_color @window_bg_color;
@define-color headerbar_shade_color rgba(0, 0, 0, 0.36);
@define-color card_bg_color rgba(255, 255, 255, 0.08);
@define-color card_fg_color #${base04};
@define-color card_shade_color rgba(0, 0, 0, 0.36);
2024-06-13 19:31:48 +02:00
@define-color dialog_bg_color #${base00};
2024-06-05 20:52:52 +02:00
@define-color dialog_fg_color #${base04};
2024-06-13 19:31:48 +02:00
@define-color popover_bg_color #${base00};
2024-06-05 20:52:52 +02:00
@define-color popover_fg_color #${base04};
@define-color shade_color rgba(0,0,0,0.36);
@define-color scrollbar_outline_color rgba(0,0,0,0.5);
@define-color blue_1 #${base0D};
@define-color blue_2 #${base0D};
@define-color blue_3 #${base0D};
@define-color blue_4 #${base0D};
@define-color blue_5 #${base0D};
@define-color green_1 #${base0B};
@define-color green_2 #${base0B};
@define-color green_3 #${base0B};
@define-color green_4 #${base0B};
@define-color green_5 #${base0B};
@define-color yellow_1 #${base0A};
@define-color yellow_2 #${base0A};
@define-color yellow_3 #${base0A};
@define-color yellow_4 #${base0A};
@define-color yellow_5 #${base0A};
@define-color orange_1 #${base09};
@define-color orange_2 #${base09};
@define-color orange_3 #${base09};
@define-color orange_4 #${base09};
@define-color orange_5 #${base09};
@define-color red_1 #${base08};
@define-color red_2 #${base08};
@define-color red_3 #${base08};
@define-color red_4 #${base08};
@define-color red_5 #${base08};
@define-color purple_1 #${base0E};
@define-color purple_2 #${base0E};
@define-color purple_3 #${base0E};
@define-color purple_4 #${base0E};
@define-color purple_5 #${base0E};
@define-color brown_1 #${base0F};
@define-color brown_2 #${base0F};
@define-color brown_3 #${base0F};
@define-color brown_4 #${base0F};
@define-color brown_5 #${base0F};
2024-06-13 19:31:48 +02:00
@define-color light_1 #${base00};
2024-06-05 20:52:52 +02:00
@define-color light_2 #f6f5f4;
@define-color light_3 #deddda;
@define-color light_4 #c0bfbc;
@define-color light_5 #9a9996;
@define-color dark_1 mix(#${base00},white,0.5);
@define-color dark_2 mix(#${base00},white,0.2);
@define-color dark_3 #${base00};
@define-color dark_4 mix(#${base00},black,0.2);
@define-color dark_5 mix(#${base00},black,0.4);
'';
in {
home.file = {
".local/share/icons/GruvboxPlus".source = "${gruvboxPlus}";
};
home.pointerCursor.name = "Bibata-Modern-Ice";
home.pointerCursor.package = pkgs.bibata-cursors;
gtk.enable = true;
gtk.theme.package = pkgs.adw-gtk3;
gtk.theme.name = "adw-gtk3";
gtk.cursorTheme.package = pkgs.bibata-cursors;
gtk.cursorTheme.name = "Bibata-Modern-Ice";
2024-06-09 10:48:58 +02:00
gtk.cursorTheme.size = 24;
2024-06-05 20:52:52 +02:00
gtk.iconTheme.package = gruvboxPlus;
gtk.iconTheme.name = "GruvboxPlus";
xdg.configFile."gtk-4.0/gtk.css" = {
text = cssContent;
};
xdg.configFile."gtk-3.0/gtk.css" = {
text = cssContent;
};
qt.enable = true;
qt.platformTheme.name= "gtk3";
qt.style.name = "Gruvbox";
}