aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--AGENTS.md12
-rw-r--r--README.md4
-rw-r--r--TODO-icons.md6
-rwxr-xr-xbin/udt-palette65
-rwxr-xr-xinstall.sh2
-rw-r--r--palette/roles-candy-night.conf8
-rw-r--r--palette/roles-dracula.conf8
-rw-r--r--palette/roles-frappe.conf11
-rw-r--r--palette/roles-macchiato.conf11
-rw-r--r--palette/roles-material-darker.conf8
-rw-r--r--palette/roles-material-ocean.conf8
-rw-r--r--palette/roles-material-palenight.conf8
-rw-r--r--palette/roles-mocha.conf11
-rw-r--r--palette/roles-nord.conf8
-rw-r--r--palette/roles-tokyo-night.conf8
-rw-r--r--templates/gtk/README.md2
-rw-r--r--templates/sublime/udt.sublime-theme.in2
-rw-r--r--templates/waybar/README.md54
-rw-r--r--templates/waybar/fonts.css29
20 files changed, 18 insertions, 248 deletions
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/<name>.conf` for the colours under the
scheme's own names, and `palette/roles-<name>.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;
-}