# === ~/.config/sway/config.d/00-gruvbox.conf === # gruvbox material dark hard — wired through gsettings so Thunar, Firefox chrome, # and any GTK3/4 app pick it up the moment sway starts. # Run gsettings in a sh -c wrapper so we can pipe stderr to /dev/null. # This is necessary because the very first exec block runs before dbus is # always reachable, and gsettings prints a long bar-warning to stderr when # it can't find the bus. We don't want the red bar to surface that. exec_always { gsettings set org.gnome.desktop.interface gtk-theme 'Gruvbox-Material-Dark-Hard' 2>/dev/null gsettings set org.gnome.desktop.interface icon-theme 'Gruvbox-Material-Dark' 2>/dev/null gsettings set org.gnome.desktop.interface cursor-theme 'Gruvbox-Material-Dark' 2>/dev/null gsettings set org.gnome.desktop.interface color-scheme 'prefer-dark' 2>/dev/null gsettings set org.cinnamon.desktop.interface gtk-theme 'Gruvbox-Material-Dark-Hard' 2>/dev/null } # gnome-keyring (in case any GTK app needs secret service for ssh-agent bridge) exec gnome-keyring-daemon --start --components=secrets