summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--home/default.nix1
-rw-r--r--home/gtk/default.nix50
-rw-r--r--home/gtk/gtk.css115
3 files changed, 166 insertions, 0 deletions
diff --git a/home/default.nix b/home/default.nix
index aa9f2db..b580605 100644
--- a/home/default.nix
+++ b/home/default.nix
@@ -10,6 +10,7 @@
in {
imports = [
inputs.home-manager.nixosModules.home-manager
+ ./gtk
./neovim
./ssh
./tmux
diff --git a/home/gtk/default.nix b/home/gtk/default.nix
new file mode 100644
index 0000000..086f8d1
--- /dev/null
+++ b/home/gtk/default.nix
@@ -0,0 +1,50 @@
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}: let
+ baseCss = ''
+ @define-color text #${config.theme.colors.text};
+ @define-color subtext #${config.theme.colors.subtext};
+
+ @define-color base #${config.theme.colors.base};
+ @define-color surface #${config.theme.colors.surface};
+ @define-color overlay #${config.theme.colors.overlay};
+
+ @define-color primary #${config.theme.colors.primary};
+ @define-color success #${config.theme.colors.success};
+ @define-color warning #${config.theme.colors.warning};
+ @define-color error #${config.theme.colors.error};
+
+ @define-color black #${config.theme.colors.bright.black};
+ @define-color red #${config.theme.colors.bright.red};
+ @define-color green #${config.theme.colors.bright.green};
+ @define-color yellow #${config.theme.colors.bright.yellow};
+ @define-color blue #${config.theme.colors.bright.blue};
+ @define-color magenta #${config.theme.colors.bright.magenta};
+ @define-color cyan #${config.theme.colors.bright.cyan};
+ @define-color white #${config.theme.colors.bright.white};
+ @define-color pink #${config.theme.colors.bright.pink};
+ @define-color orange #${config.theme.colors.bright.orange};
+ '';
+ finalCss = pkgs.runCommandLocal "gtk.css" {} ''
+ echo ${lib.escapeShellArg baseCss} >>$out
+ cat ${./gtk.css} >>$out
+ '';
+in {
+ home-manager.users.${config.user} = {
+ gtk = {
+ enable = true;
+ theme = {
+ package = pkgs.adw-gtk3;
+ name = "adw-gtk3";
+ };
+ };
+
+ xdg.configFile = {
+ "gtk-3.0/gtk.css".source = finalCss;
+ "gtk-4.0/gtk.css".source = finalCss;
+ };
+ };
+}
diff --git a/home/gtk/gtk.css b/home/gtk/gtk.css
new file mode 100644
index 0000000..af50b02
--- /dev/null
+++ b/home/gtk/gtk.css
@@ -0,0 +1,115 @@
+@define-color accent_color @primary;
+@define-color accent_bg_color @base;
+@define-color accent_fg_color @text;
+
+@define-color destructive_color @error;
+@define-color destructive_bg_color @error;
+@define-color destructive_fg_color @text;
+
+@define-color success_color @success;
+@define-color success_bg_color @success;
+@define-color success_fg_color @text;
+
+@define-color warning_color @warning;
+@define-color warning_bg_color @warning;
+@define-color warning_fg_color @text;
+
+@define-color error_color @error;
+@define-color error_bg_color @error;
+@define-color error_fg_color @text;
+
+@define-color window_bg_color @base;
+@define-color window_fg_color @text;
+
+@define-color view_bg_color @base;
+@define-color view_fg_color @text;
+
+@define-color headerbar_bg_color @base;
+@define-color headerbar_fg_color @text;
+@define-color headerbar_border_color @base;
+@define-color headerbar_backdrop_color @base;
+@define-color headerbar_shade_color @base;
+@define-color headerbar_darker_shade_color @base;
+
+@define-color sidebar_bg_color @base;
+@define-color sidebar_fg_color @text;
+@define-color sidebar_border_color @base;
+@define-color sidebar_backdrop_color @base;
+@define-color sidebar_shade_color @base;
+
+@define-color secondary_sidebar_bg_color @base;
+@define-color secondary_sidebar_fg_color @text;
+@define-color secondary_sidebar_border_color @base;
+@define-color secondary_sidebar_backdrop_color @base;
+@define-color secondary_sidebar_shade_color @base;
+
+@define-color card_bg_color @base;
+@define-color card_fg_color @text;
+@define-color card_shade_color @base;
+
+@define-color dialog_bg_color @base;
+@define-color dialog_fg_color @text;
+
+@define-color popover_bg_color @base;
+@define-color popover_fg_color @text;
+@define-color popover_shade_color @base;
+
+@define-color thumbnail_bg_color @base;
+@define-color thumbnail_fg_color @text;
+
+@define-color shade_color @base;
+@define-color scrollbar_outline_color @base;
+
+@define-color blue_1 @blue;
+@define-color blue_2 @blue;
+@define-color blue_3 @blue;
+@define-color blue_4 @blue;
+@define-color blue_5 @blue;
+
+@define-color green_1 @green;
+@define-color green_2 @green;
+@define-color green_3 @green;
+@define-color green_4 @green;
+@define-color green_5 @green;
+
+@define-color yellow_1 @yellow;
+@define-color yellow_2 @yellow;
+@define-color yellow_3 @yellow;
+@define-color yellow_4 @yellow;
+@define-color yellow_5 @yellow;
+
+@define-color orange_1 @orange;
+@define-color orange_2 @orange;
+@define-color orange_3 @orange;
+@define-color orange_4 @orange;
+@define-color orange_5 @orange;
+
+@define-color red_1 @red;
+@define-color red_2 @red;
+@define-color red_3 @red;
+@define-color red_4 @red;
+@define-color red_5 @red;
+
+@define-color purple_1 @magenta;
+@define-color purple_2 @magenta;
+@define-color purple_3 @magenta;
+@define-color purple_4 @magenta;
+@define-color purple_5 @magenta;
+
+@define-color brown_1 @orange;
+@define-color brown_2 @orange;
+@define-color brown_3 @orange;
+@define-color brown_4 @orange;
+@define-color brown_5 @orange;
+
+@define-color light_1 @base;
+@define-color light_2 @base;
+@define-color light_3 @base;
+@define-color light_4 @base;
+@define-color light_5 @base;
+
+@define-color dark_1 @base;
+@define-color dark_2 @base;
+@define-color dark_3 @base;
+@define-color dark_4 @base;
+@define-color dark_5 @base;