zen/vesktop: tint surfaces off base00 too, dropping the purple popups

Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
This commit is contained in:
rope 2026-08-03 20:36:32 +01:00
parent bc10b078c6
commit 6937279290

View file

@ -126,6 +126,14 @@
cp -rL "$tmpthemes/Papirus-Dark" $out/share/icons/ cp -rL "$tmpthemes/Papirus-Dark" $out/share/icons/
''; '';
# Raised surfaces are tints of base00, matching quickshell's
# Theme.base01/base02 and the GTK overrides in settings/desktop.nix.
# Scaling all three channels is what Qt.lighter() does, so all three
# toolkits land on the same #2f3440 / #434a5b.
tint = f: let
ch = k: toString (builtins.floor (builtins.fromJSON c."base00-rgb-${k}" * f));
in "rgb(${ch "r"}, ${ch "g"}, ${ch "b"})";
# Map Material You placeholders to the closest base16 slot in stylix's # Map Material You placeholders to the closest base16 slot in stylix's
# palette. The mapping is approximate (Material You has more semantic # palette. The mapping is approximate (Material You has more semantic
# colours than base16), but covers the placeholders used in our Zen # colours than base16), but covers the placeholders used in our Zen
@ -151,9 +159,9 @@
"#${c.base0C}" # secondary container (cyan) "#${c.base0C}" # secondary container (cyan)
"#${c.base0E}" # tertiary container (purple) "#${c.base0E}" # tertiary container (purple)
"#${c.base00}" # surface (main bg) "#${c.base00}" # surface (main bg)
"#${c.base01}" # surface container (tint 1.7) # surface container (urlbar, panels, dialogs)
"#${c.base00}" # surface container low "#${c.base00}" # surface container low
"#${c.base02}" # surface container high (tint 2.4) # surface container high (selected tab, focused urlbar)
"#${c.base05}" # on surface (fg) "#${c.base05}" # on surface (fg)
"#${c.base04}" # on surface variant (muted fg) "#${c.base04}" # on surface variant (muted fg)
"#${c.base03}" # outline "#${c.base03}" # outline