From 2bbd88fc4bf6a172468abe29562c1238b197a6ac Mon Sep 17 00:00:00 2001 From: "Danilo M." Date: Fri, 30 Oct 2026 17:34:34 +0100 Subject: Remove the waybar target waybar is uninstalled and waybar-theme-udt archived; the island has been the bar for a while. Drop gen_waybar, templates/waybar/, the [waybar] role section from every scheme, and the docs that still listed waybar as a consumer. Co-Authored-By: Claude Opus 5.5 --- .gitignore | 1 - AGENTS.md | 12 +++---- README.md | 4 +-- TODO-icons.md | 6 +--- bin/udt-palette | 65 ++-------------------------------- install.sh | 2 +- palette/roles-candy-night.conf | 8 ----- palette/roles-dracula.conf | 8 ----- palette/roles-frappe.conf | 11 +----- palette/roles-macchiato.conf | 11 +----- palette/roles-material-darker.conf | 8 ----- palette/roles-material-ocean.conf | 8 ----- palette/roles-material-palenight.conf | 8 ----- palette/roles-mocha.conf | 11 +----- palette/roles-nord.conf | 8 ----- palette/roles-tokyo-night.conf | 8 ----- templates/gtk/README.md | 2 +- templates/sublime/udt.sublime-theme.in | 2 +- templates/waybar/README.md | 54 ---------------------------- templates/waybar/fonts.css | 29 --------------- 20 files changed, 18 insertions(+), 248 deletions(-) delete mode 100644 templates/waybar/README.md delete mode 100644 templates/waybar/fonts.css diff --git a/.gitignore b/.gitignore index 23e734a..d73bb5b 100644 --- a/.gitignore +++ b/.gitignore @@ -7,7 +7,6 @@ __pycache__/ # install.sh, so tracking them would turn every scheme switch into a diff. /rofi/udt/palette.rasi /templates/conky.conf -/templates/waybar/theme.css /templates/terminal/kitty-theme.conf /templates/nvim/udt.lua # The lock border is NOT ignored: it is the static seed install.sh copies on a diff --git a/AGENTS.md b/AGENTS.md index 1982427..b34cdc5 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -6,7 +6,7 @@ Guidance for agents working in this repository. One visual identity for a Hyprland desktop: Catppuccin Macchiato, Noto Sans for UI text, Inconsolata Nerd Font Mono for monospace. It covers rofi, Hyprland -window borders, conky, Qt5/Qt6, GTK3/GTK4, waybar, kitty, Sublime Text, +window borders, conky, Qt5/Qt6, GTK3/GTK4, kitty, Sublime Text, hyprlock, neovim, btop, Joplin and Feishin. Font **sizes** are not this repo's. The keystone settings window (quickshell @@ -91,7 +91,7 @@ All ten are dark. A light scheme is not a role remap: homepage is pinned Generated files are gitignored, because tracking them would turn every scheme switch into a diff. Editing one is pointless: the next install overwrites it. The generated set is `rofi/udt/palette.rasi`, -`templates/conky.conf`, `templates/waybar/theme.css`, +`templates/conky.conf`, `templates/terminal/kitty-theme.conf`, `templates/homepage/custom.css`, `templates/kvantum/theme.{kvconfig,svg}`, `templates/kde/udt.colors`, `templates/sublime/udt.sublime-color-scheme`, @@ -188,7 +188,7 @@ theme class the generated CSS targets. The last is imported by `udt-accent`, which is why its accent table follows the scheme. Roles are a flat namespace, so a name collides across sections: conky's outline -is `body_outline` because waybar already has `outline`. A role value is a +is `body_outline`, a name chosen when another section still had `outline`. A role value is a palette name with two optional modifiers, `name/75` for 75% alpha and `name*50` for half brightness. The second exists only because GTK's `shade(@main-bg, 0.5)` has no palette name to point at: half-brightness crust @@ -363,7 +363,7 @@ profile, and the new tab stays blank. Not everything tracks the wallpaper. rofi, quickshell, Hyprland borders, hyprlock's border (through `~/.cache/udt/hyprlock-border.conf`), Sublime's -colour scheme, Firefox, GRUB, the homepage, conky's headings and icons, the AK820 Pro keyboard, the LED strip and the TRADFRI bulbs do; the rest of conky, Qt, GTK, waybar, hyprlock's panel palette +colour scheme, Firefox, GRUB, the homepage, conky's headings and icons, the AK820 Pro keyboard, the LED strip and the TRADFRI bulbs do; the rest of conky, Qt, GTK, hyprlock's panel palette (from `templates/hyprlock/hyprlock-palette.conf`) and Sublime's UI chrome sit on the scheme's accent, lavender by default, which is also the fallback when a wallpaper is too grey to snap. Qt and GTK apps only reread a theme on restart, @@ -412,8 +412,8 @@ them by exit code: rofi exits non-zero for ordinary reasons such as Escape. already finished. Redirect its output when calling it from a script. - **There is no waybar.** The bar is the quickshell island (the `quickshell` repo, `desktop/island/`), which reads the generated palette itself, so - `install.sh` neither themes nor reloads a bar. `waybar-theme-udt` and - `templates/waybar/` are leftovers from before the island. + `install.sh` neither themes nor reloads a bar. `waybar-theme-udt` is + archived and its template and roles were removed. ## Editing rules diff --git a/README.md b/README.md index 282bdf3..a87d9ff 100644 --- a/README.md +++ b/README.md @@ -6,7 +6,7 @@ fixed base, Noto Sans for UI text, Inconsolata Nerd Font Mono for monospace. The accent color follows the current wallpaper, but is always snapped to a real Macchiato accent, so it can never render as unreadable. -Phase 1 covers rofi. Later phases extend the same palette to waybar, conky, +Phase 1 covers rofi. Later phases extend the same palette to conky, hyprland and quickshell. Quickshell reads the palette rather than restating it: `udt-accent` writes @@ -52,7 +52,7 @@ the working tree clean. the switch is visible immediately. Qt and GTK apps only reread a theme on startup, so those need restarting by hand. Ships with `macchiato`, `tokyo-night`, `nord` and `dracula`; rofi, conky, kitty, Firefox and -quickshell all follow. The bar is quickshell's island now; waybar is gone. +quickshell all follow. The bar is quickshell's island. A scheme is two files: `palette/.conf` for the colours under the scheme's own names, and `palette/roles-.conf` saying what each is for. diff --git a/TODO-icons.md b/TODO-icons.md index ca776b7..4187ae1 100644 --- a/TODO-icons.md +++ b/TODO-icons.md @@ -29,12 +29,8 @@ the top. These *consumed* an icon theme to resolve icon paths rather than setting the system theme, so a drawer switch left them pointing at the old theme's icons -until edited by hand. All three now follow the drawer: +until edited by hand. Both now follow the drawer: -- waybar-theme-udt: `bin/wb-icon` reads the gsettings key and resolves names - through GTK icon lookup; `install.sh` bakes the results into the generated - `modules.css` and `taskbar.jsonc`. Re-run its `install.sh` and restart waybar - after a switch. See that repo's `TODO-icons.md`. - `~/.config/rofi/config.rasi`: `icon-theme:` commented out, so rofi uses the desktop theme. - `~/.local/share/applications/firefox-clean.desktop`: absolute `Icon=` path diff --git a/bin/udt-palette b/bin/udt-palette index 86c53d6..e000999 100755 --- a/bin/udt-palette +++ b/bin/udt-palette @@ -29,7 +29,7 @@ SELECTOR = Path.home() / ".config" / "udt" / "roles.conf" SELECTOR_SEED = PALETTE_DIR / "roles.conf.default" # The Lua dashboard lives in its own repo; UDT only renders its colours. -# A sibling checkout, like waybar-theme-udt; skipped when it is not cloned. +# A sibling checkout, skipped when it is not cloned. CONKY_REPO = REPO.parent / "conky-theme-udt" GRUB_REPO = REPO.parent / "grub-theme-udt" @@ -177,64 +177,6 @@ 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 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 - in place, not generated, and ask for @surface1 and @text outright. Tokyo - Night calls those surface_alt and fg, so emitting only the scheme's own - palette names left every such reference dangling and GTK fell back to a - default, which is how the bar's separators went bright. - - Role names keep their existing hyphenated spelling (main-bg, not main_bg): - the stylesheets reference them and are not generated. - """ - palette_rows = "\n".join(f"@define-color {k:<12}{v};" - for k, v in sorted(palette.items())) - - # The names the hand-edited stylesheets reference, all in ROFI_NAMES. - compat_rows = "\n".join( - f"@define-color {name:<12}{rgba(res[role])};" - for name, role in ROFI_NAMES) - - def emit(role, css_name=None): - c = res[role] - return f"@define-color {(css_name or role.replace('_', '-')):<12}{rgba(c)};" - - ui = ["main_br", "main_bg", "main_fg", "hover_bg", "hover_fg", "outline"] - states = ["warning", "critical"] - - return "\n".join([ - f"/* {BANNER.format(scheme=scheme)} */", - "", - palette_rows, - "", - "/* Catppuccin names, from roles: the hand-edited stylesheets use these. */", - compat_rows, - "", - "/* br - border, bg - background, fg - foreground */", - "", - "/* main colors */", - f"@define-color accent {rgba(res['accent'])};", - *(emit(r) for r in ui), - "", - "/* state colors */", - *(emit(r) for r in states), - "", - ]) - - def gen_kitty(res, scheme, palette): """kitty: the 16 ANSI slots plus chrome. @@ -664,7 +606,7 @@ def gen_sublime_theme(res, scheme, palette, template): The accent is the scheme's fixed one, not the wallpaper's: Sublime reads a theme once per window, so a moving accent would leave open windows - disagreeing with new ones. Same reasoning as conky, Qt, GTK and waybar. + disagreeing with new ones. Same reasoning as conky, Qt and GTK. """ out = template.replace("@SCHEME@", scheme) for role in ("bg", "bg_alt", "bg_deep", "fg", "fg_dim", "fg_faint", @@ -803,7 +745,7 @@ def gen_btop(res, scheme, palette): btop has no include or variables, so every key is written. The graphs are three-stop gradients; they run through the state colours so a meter reads - the same way a waybar pill does, calm to critical. + calm to critical. """ def c(role): return hex6(res[role]) @@ -947,7 +889,6 @@ def gen_feishin(res, scheme, palette): TARGETS = [ ("rofi/udt/palette.rasi", gen_rofi, None), - ("templates/waybar/theme.css", gen_waybar, None), ("templates/terminal/kitty-theme.conf", gen_kitty, None), ("templates/hyprlock/hyprlock-palette.conf", gen_hyprlock, None), ("templates/nvim/udt.lua", gen_nvim, None), diff --git a/install.sh b/install.sh index 1c28ce2..fe31748 100755 --- a/install.sh +++ b/install.sh @@ -333,7 +333,7 @@ c_conky() { # desktop dashboard # The Lua dashboard lives in its own repo; udt-palette renders its colours into # conky.conf there. Both the config and the Lua it loads are linked, since # lua_load points at ~/.config/conky/dashboard.lua. -# A sibling checkout, like waybar-theme-udt, and skipped when absent. +# A sibling checkout, skipped when absent. conky_repo="$(realpath -m "$repo/../conky-theme-udt")" if [ -d "$conky_repo" ]; then mkdir -p "$HOME/.config/conky" diff --git a/palette/roles-candy-night.conf b/palette/roles-candy-night.conf index 58bb7a6..822ef8b 100644 --- a/palette/roles-candy-night.conf +++ b/palette/roles-candy-night.conf @@ -37,14 +37,6 @@ critical = red success = green info = cyan -[waybar] -main_br = light -main_bg = dock -main_fg = foreground -hover_bg = background -hover_fg = foreground/75 -outline = deep*50 - [conky] heading = magenta label = light diff --git a/palette/roles-dracula.conf b/palette/roles-dracula.conf index 26ca7a7..1d1e661 100644 --- a/palette/roles-dracula.conf +++ b/palette/roles-dracula.conf @@ -35,14 +35,6 @@ critical = red success = green info = cyan -[waybar] -main_br = comment -main_bg = surface_low -main_fg = foreground -hover_bg = background -hover_fg = foreground/75 -outline = surface_low*50 - [conky] heading = purple label = comment diff --git a/palette/roles-frappe.conf b/palette/roles-frappe.conf index 2fc4704..de6112c 100644 --- a/palette/roles-frappe.conf +++ b/palette/roles-frappe.conf @@ -34,21 +34,12 @@ accent = lavender peach = peach [state] -# Notification urgency, waybar module states, conky warnings. +# Notification urgency, conky warnings. warning = yellow critical = red success = green info = teal -[waybar] -# Bar chrome. These were already role names in ~/.config/waybar/theme.css. -main_br = subtext0 -main_bg = crust -main_fg = text -hover_bg = base -hover_fg = text/75 -outline = crust*50 - [conky] # conky indexes colours by number. The names say what each number draws. heading = lavender diff --git a/palette/roles-macchiato.conf b/palette/roles-macchiato.conf index dcbe493..b20c9d9 100644 --- a/palette/roles-macchiato.conf +++ b/palette/roles-macchiato.conf @@ -34,21 +34,12 @@ accent = lavender peach = peach [state] -# Notification urgency, waybar module states, conky warnings. +# Notification urgency, conky warnings. warning = yellow critical = red success = green info = teal -[waybar] -# Bar chrome. These were already role names in ~/.config/waybar/theme.css. -main_br = subtext0 -main_bg = crust -main_fg = text -hover_bg = base -hover_fg = text/75 -outline = crust*50 - [conky] # conky indexes colours by number. The names say what each number draws. heading = lavender diff --git a/palette/roles-material-darker.conf b/palette/roles-material-darker.conf index 4d5d50f..6d9e6f4 100644 --- a/palette/roles-material-darker.conf +++ b/palette/roles-material-darker.conf @@ -35,14 +35,6 @@ critical = red success = green info = cyan -[waybar] -main_br = light -main_bg = deep -main_fg = foreground -hover_bg = background -hover_fg = foreground/75 -outline = deep*50 - [conky] heading = cyan label = light diff --git a/palette/roles-material-ocean.conf b/palette/roles-material-ocean.conf index d3bf906..3d4f124 100644 --- a/palette/roles-material-ocean.conf +++ b/palette/roles-material-ocean.conf @@ -35,14 +35,6 @@ critical = red success = green info = cyan -[waybar] -main_br = light -main_bg = deep -main_fg = foreground -hover_bg = background -hover_fg = foreground/75 -outline = deep*50 - [conky] heading = cyan label = light diff --git a/palette/roles-material-palenight.conf b/palette/roles-material-palenight.conf index de42201..f6d3992 100644 --- a/palette/roles-material-palenight.conf +++ b/palette/roles-material-palenight.conf @@ -35,14 +35,6 @@ critical = red success = green info = cyan -[waybar] -main_br = light -main_bg = deep -main_fg = foreground -hover_bg = background -hover_fg = foreground/75 -outline = deep*50 - [conky] heading = cyan label = light diff --git a/palette/roles-mocha.conf b/palette/roles-mocha.conf index 389d89d..ebdf28e 100644 --- a/palette/roles-mocha.conf +++ b/palette/roles-mocha.conf @@ -34,21 +34,12 @@ accent = lavender peach = peach [state] -# Notification urgency, waybar module states, conky warnings. +# Notification urgency, conky warnings. warning = yellow critical = red success = green info = teal -[waybar] -# Bar chrome. These were already role names in ~/.config/waybar/theme.css. -main_br = subtext0 -main_bg = crust -main_fg = text -hover_bg = base -hover_fg = text/75 -outline = crust*50 - [conky] # conky indexes colours by number. The names say what each number draws. heading = lavender diff --git a/palette/roles-nord.conf b/palette/roles-nord.conf index 5881ba6..be4bd41 100644 --- a/palette/roles-nord.conf +++ b/palette/roles-nord.conf @@ -35,14 +35,6 @@ critical = aurora_red success = aurora_green info = frost_teal -[waybar] -main_br = nord4 -main_bg = nord0 -main_fg = nord6 -hover_bg = nord1 -hover_fg = nord6/75 -outline = nord0*50 - [conky] heading = frost_cyan label = nord4 diff --git a/palette/roles-tokyo-night.conf b/palette/roles-tokyo-night.conf index 5c9eb27..89d49f0 100644 --- a/palette/roles-tokyo-night.conf +++ b/palette/roles-tokyo-night.conf @@ -34,14 +34,6 @@ critical = red success = green info = cyan -[waybar] -main_br = fg_dark -main_bg = bg_dark -main_fg = fg -hover_bg = bg -hover_fg = fg/75 -outline = bg_dark*50 - [conky] heading = blue label = fg_dark diff --git a/templates/gtk/README.md b/templates/gtk/README.md index 2af1a38..dd6862e 100644 --- a/templates/gtk/README.md +++ b/templates/gtk/README.md @@ -20,7 +20,7 @@ assumed: 338 occurrences in GTK3 and 328 in GTK4 sit outside the block. `#eff1f5` is upstream's foreground, which is Latte `text`, a near-white it pairs with a Macchiato background. It maps to the `fg` role so GTK text matches -rofi, kitty and waybar rather than being brighter than all of them. +rofi and kitty rather than being brighter than all of them. The generator replaces `@ROLE_RGB@` before `@ROLE@`, because `@FG@` is a prefix of `@FG_RGB@` and the other order would eat the start of the triple placeholder diff --git a/templates/sublime/udt.sublime-theme.in b/templates/sublime/udt.sublime-theme.in index 17d1c1a..44d261f 100644 --- a/templates/sublime/udt.sublime-theme.in +++ b/templates/sublime/udt.sublime-theme.in @@ -20,7 +20,7 @@ // The chrome does NOT track the wallpaper, unlike the colour scheme's accent. // Sublime reads a theme once per window, so a moving accent would leave open // windows disagreeing with new ones. The accent here is the scheme's fixed one, -// which is what conky, Qt, GTK and waybar already sit on. +// which is what conky, Qt and GTK already sit on. [ // Editor ground, behind the tabs and in an empty window. { diff --git a/templates/waybar/README.md b/templates/waybar/README.md deleted file mode 100644 index 7e4eb09..0000000 --- a/templates/waybar/README.md +++ /dev/null @@ -1,54 +0,0 @@ -# Waybar - -The bar is [waybar-theme-udt](../../../waybar-theme-udt), which lives in its -own repository and its own config directory, `~/.config/waybar-udt/`. This -project supplies only its colours. - -`theme.css` is generated here, but `install.sh` does not copy it there itself: -it calls the bar's own `install.sh`, with `UDT_PALETTE_DONE=1` so that script -skips regenerating the palette it has just been handed. - -That is because the palette reaches the bar as **three** generated files, not -one: `styles/theme.css`, `dots.colors` for the two dot scripts, which are bash -and cannot read `@define-color`, and two tints of the Slackware mark, which -has to contrast with the accent pill at rest and the dark pill on hover. -Copying only the stylesheet recoloured every pill and left the dots and the -mark on the previous scheme's colours. Generating them here instead would mean -two writers for the same files, drifting apart the moment either is edited. - -The call is never fatal: a failure in the bar's install warns and leaves the -bar on its old colours rather than stopping kitty, Kvantum and Sublime from -being themed. Same reasoning as `udt-appthemes`. - -## What the bar asks for - -Seven names, and nothing else: - - @accent @main-bg @main-fg @hover-bg @hover-fg @outline @critical - -plus `@warning`, and the Catppuccin-named compat rows, which the bar's dot -scripts read indirectly: `waybar-theme-udt/install.sh` parses `green`, `teal`, -`mauve`, `overlay0`, `warning` and `critical` back out of the generated file to -write a shell fragment, because those scripts are bash and cannot read -`@define-color`. - -**There are no per-module colours.** The stock bar alternated module -backgrounds so it read as stripes, and carried a role per module to do it: -`workspaces`, `temperature`, `memory`, `cpu`, `time`, `date`, `tray`, `volume`, -`backlight`, `battery`, plus `charging`. The current bar draws every pill on -`@main-bg`, so all eleven had no consumer left and were removed from every -`roles-*.conf` and from `gen_waybar`. Re-adding one means a stylesheet that -actually references it. - -## The stock config is gone - -`~/.config/waybar/` was the stock bar, which nothing launched once hyprland's -autostart switched to the new one. It has been deleted. `install.sh` never -wrote a theme into it: its stylesheets referenced the per-module names above, -which this generator no longer emits. - -## Reloading - -`killall -SIGUSR2 waybar` applies a CSS change, and the bar sets -`reload_style_on_change`, so rewriting `theme.css` reaches it on its own. A -change to `config.jsonc` needs a restart rather than a signal. diff --git a/templates/waybar/fonts.css b/templates/waybar/fonts.css deleted file mode 100644 index 249b77f..0000000 --- a/templates/waybar/fonts.css +++ /dev/null @@ -1,29 +0,0 @@ -* { - font-family: "Inconsolata Nerd Font Mono"; - font-weight: bold; - font-size: 18px; -} - -#custom-user, -#window label, -#mpris, -tooltip label { - font-weight: normal; -} - -#workspaces button.active label, -#workspaces button.focused label, -#custom-distro { - font-size: 22px; -} - -#custom-power_menu { - font-size: 20px; -} - -#custom-left_div, -#custom-left_inv, -#custom-right_div, -#custom-right_inv { - font-size: 24px; -} -- cgit v1.2.3