From 6c6794efb93b882d8bbcf68244fc8398ee3c571c Mon Sep 17 00:00:00 2001 From: ediblerope Date: Tue, 14 Apr 2026 09:46:45 +0100 Subject: [PATCH] Add GTK3 wallpaper color overrides for Electron/GTK3 apps Create gtk3-colors.css matugen template and import it in GTK3 gtk.css so apps like Vesktop get wallpaper-based headerbar colors. Co-Authored-By: Claude Opus 4.6 --- home-manager/fred.nix | 4 ++++ settings/gnome.nix | 1 + templates/gtk3-colors.css | 15 +++++++++++++++ 3 files changed, 20 insertions(+) create mode 100644 templates/gtk3-colors.css diff --git a/home-manager/fred.nix b/home-manager/fred.nix index c4ba617..62de1a2 100644 --- a/home-manager/fred.nix +++ b/home-manager/fred.nix @@ -48,6 +48,10 @@ input_path = "${inputs.self}/templates/gtk4-colors.css" output_path = "${config.home.homeDirectory}/.config/gtk-4.0/colors.css" + [templates.gtk3] + input_path = "${inputs.self}/templates/gtk3-colors.css" + output_path = "${config.home.homeDirectory}/.config/gtk-3.0/colors.css" + [templates.gnome-shell] input_path = "${inputs.self}/templates/gnome-shell.css" output_path = "${config.home.homeDirectory}/.local/share/themes/WallpaperShell/gnome-shell/gnome-shell.css" diff --git a/settings/gnome.nix b/settings/gnome.nix index 405f5a7..2484b66 100644 --- a/settings/gnome.nix +++ b/settings/gnome.nix @@ -100,6 +100,7 @@ ''; home.file.".config/gtk-3.0/gtk.css".force = true; home.file.".config/gtk-3.0/gtk.css".text = '' + @import url("colors.css"); headerbar { min-height: 0; padding: 0; diff --git a/templates/gtk3-colors.css b/templates/gtk3-colors.css new file mode 100644 index 0000000..d741887 --- /dev/null +++ b/templates/gtk3-colors.css @@ -0,0 +1,15 @@ +@define-color accent_color {{colors.primary.default.hex}}; +@define-color accent_bg_color {{colors.primary_container.default.hex}}; +@define-color accent_fg_color {{colors.on_primary_container.default.hex}}; +@define-color window_bg_color {{colors.surface.default.hex}}; +@define-color window_fg_color {{colors.on_surface.default.hex}}; +@define-color view_bg_color {{colors.surface_container_low.default.hex}}; +@define-color view_fg_color {{colors.on_surface.default.hex}}; +@define-color headerbar_bg_color {{colors.surface_container.default.hex}}; +@define-color headerbar_fg_color {{colors.on_surface.default.hex}}; +@define-color card_bg_color {{colors.surface_container_high.default.hex}}; +@define-color card_fg_color {{colors.on_surface.default.hex}}; +@define-color sidebar_bg_color {{colors.surface_container.default.hex}}; +@define-color sidebar_fg_color {{colors.on_surface.default.hex}}; +@define-color popover_bg_color {{colors.surface_container.default.hex}}; +@define-color popover_fg_color {{colors.on_surface.default.hex}};