From 1db739eaf7c2155cee80084183a0a0bbe590d3cd Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Tue, 15 Sep 2026 17:08:37 +0200 Subject: fix(waybar): drop the per-module colours, and aim at the bar that runs The bar these roles existed for is gone. The stock one alternated module backgrounds so it read as stripes, and carried a role for each: workspaces, temperature, memory, cpu, time, date, tray, volume, backlight, battery, plus charging. waybar-theme-udt draws every pill on main_bg, and its stylesheets reference seven names in total, none of them a module. So all eleven had no consumer left in any of the nine schemes. They are deleted rather than renamed. Renaming them after the new bar's modules would have invented consumers that do not exist: nothing reads a "mail" or "launcher" colour, because the pills are deliberately uniform. Re-adding one means a stylesheet that actually references it. install.sh was still writing the theme into ~/.config/waybar/, which hyprland no longer launches, so switching scheme recoloured a bar nobody sees while the running one kept its old palette. It writes to ~/.config/waybar-udt/ now, under the fixed name that bar imports, so there is no import to repoint. The stock directory is left exactly as it was, and deliberately gets no new theme: its stylesheets still ask for the per-module names, so writing one there would leave it referencing colours that no longer exist. Co-Authored-By: Claude Opus 5 --- bin/udt-palette | 19 ++++++++++--------- 1 file changed, 10 insertions(+), 9 deletions(-) (limited to 'bin/udt-palette') diff --git a/bin/udt-palette b/bin/udt-palette index ceed64d..3fcb355 100755 --- a/bin/udt-palette +++ b/bin/udt-palette @@ -155,9 +155,15 @@ def gen_rofi(res, scheme, palette): def gen_waybar(res, scheme, palette): """waybar: one file holding the palette and the role layer. - Both halves together because style.css imports a single themes/.css, - and the stylesheets reference names from each: @lavender and @surface1 by - Catppuccin name, @cpu and @hover-bg by role. + Both halves together because the stylesheet imports a single theme.css and + references names from each: @lavender and @surface1 by Catppuccin name, + @main-bg and @hover-bg by role. + + There are no per-module colours. The old bar alternated module backgrounds + so it read as stripes, and carried a role per module to do it. The current + one draws every pill on @main-bg, which left those ten roles with no + consumer: emitting them anyway would be ten colours nothing reads, and the + next reader would reasonably assume something did. The Catppuccin-named half is emitted from roles, exactly as gen_rofi does and for the same reason: styles/main.css and styles/global.css are edited @@ -183,9 +189,7 @@ def gen_waybar(res, scheme, palette): return f"@define-color {(css_name or role.replace('_', '-')):<12}{rgba(c)};" ui = ["main_br", "main_bg", "main_fg", "hover_bg", "hover_fg", "outline"] - modules = ["workspaces", "temperature", "memory", "cpu", "time", "date", - "tray", "volume", "backlight", "battery"] - states = ["warning", "critical", "charging"] + states = ["warning", "critical"] return "\n".join([ f"/* {BANNER.format(scheme=scheme)} */", @@ -201,9 +205,6 @@ def gen_waybar(res, scheme, palette): f"@define-color accent {rgba(res['accent'])};", *(emit(r) for r in ui), "", - "/* module colors */", - *(emit(r) for r in modules), - "", "/* state colors */", *(emit(r) for r in states), "", -- cgit v1.2.3