diff options
Diffstat (limited to 'src/caelestia')
| -rw-r--r-- | src/caelestia/data/templates/gtk.css | 17 | ||||
| -rw-r--r-- | src/caelestia/utils/theme.py | 13 |
2 files changed, 29 insertions, 1 deletions
diff --git a/src/caelestia/data/templates/gtk.css b/src/caelestia/data/templates/gtk.css new file mode 100644 index 0000000..bc9e558 --- /dev/null +++ b/src/caelestia/data/templates/gtk.css @@ -0,0 +1,17 @@ +@define-color accent_color {{ $primary }}; +@define-color accent_fg_color {{ $onPrimary }}; +@define-color accent_bg_color {{ $primary }}; +@define-color window_bg_color {{ $background }}; +@define-color window_fg_color {{ $onBackground }}; +@define-color headerbar_bg_color {{ $surfaceDim }}; +@define-color headerbar_fg_color {{ $onSurface }}; +@define-color popover_bg_color {{ $surfaceDim }}; +@define-color popover_fg_color {{ $onSurface }}; +@define-color view_bg_color {{ $surface }}; +@define-color view_fg_color {{ $onSurface }}; +@define-color card_bg_color {{ $surface }}; +@define-color card_fg_color {{ $onSurface }}; +@define-color sidebar_bg_color @window_bg_color; +@define-color sidebar_fg_color @window_fg_color; +@define-color sidebar_border_color @window_bg_color; +@define-color sidebar_backdrop_color @window_bg_color; diff --git a/src/caelestia/utils/theme.py b/src/caelestia/utils/theme.py index 0d72f9c..d60de3b 100644 --- a/src/caelestia/utils/theme.py +++ b/src/caelestia/utils/theme.py @@ -112,7 +112,17 @@ def apply_fuzzel(colours: dict[str, str]) -> None: def apply_btop(colours: dict[str, str]) -> None: template = gen_replace(colours, templates_dir / "btop.theme", hash=True) write_file(config_dir / "btop/themes/caelestia.theme", template) - subprocess.run(["killall", "-USR2", "btop"]) + subprocess.run(["killall", "-USR2", "btop"], stderr=subprocess.DEVNULL) + + +def apply_gtk(colours: dict[str, str], mode: str) -> None: + template = gen_replace(colours, templates_dir / "gtk.css", hash=True) + write_file(config_dir / "gtk-3.0/gtk.css", template) + write_file(config_dir / "gtk-4.0/gtk.css", template) + + subprocess.run(["gsettings", "set", "org.gnome.desktop.interface", "gtk-theme", "adw-gtk3-dark"]) + subprocess.run(["gsettings", "set", "org.gnome.desktop.interface", "color-scheme", f"prefer-{mode}"]) + subprocess.run(["gsettings", "set", "org.gnome.desktop.interface", "icon-theme", f"Papirus-{mode.capitalize()}"]) def apply_colours(colours: dict[str, str], mode: str) -> None: @@ -122,3 +132,4 @@ def apply_colours(colours: dict[str, str], mode: str) -> None: apply_spicetify(colours, mode) apply_fuzzel(colours) apply_btop(colours) + apply_gtk(colours, mode) |