diff options
| author | Danilo M. <danix@danix.xyz> | 2026-09-11 18:51:17 +0200 |
|---|---|---|
| committer | Danilo M. <danix@danix.xyz> | 2026-09-11 18:51:17 +0200 |
| commit | fd0a0e63d78138b485c2440781f6c210dd3df8a2 (patch) | |
| tree | 710858fdb57e28fbddc926ddd65927f8aa592d83 /palette | |
| parent | ee39bd927e056c2dae9d61230a95a05715b3a8c6 (diff) | |
| download | unified-desktop-theme-fd0a0e63d78138b485c2440781f6c210dd3df8a2.tar.gz unified-desktop-theme-fd0a0e63d78138b485c2440781f6c210dd3df8a2.zip | |
feat(palette): generate the Kvantum theme so Qt apps follow the scheme
Qt and GTK were the one part of the desktop the palette never reached: Kvantum
was pinned to a hand-installed catppuccin-macchiato-lavender directory, so
pcmanfm-qt and every other Qt app stayed Macchiato no matter which scheme was
selected.
A Kvantum theme is a .kvconfig of colours and a .svg of widget artwork with
colours baked into the paths, which looked like it needed redrawing. It did
not: the SVG carries only 27 distinct colours, 12 of them palette colours and
the rest neutral greys that are shading, not theme colour. Both files are now
templates with the 12 as placeholders, derived from the theme this desktop was
already running.
Installs to ~/.config/Kvantum/udt/ under one fixed name for every scheme, so a
switch needs no change to kvantum.kvconfig and leaves no stale theme behind.
Adds accent_dim and accent_bright roles for Kvantum's hover and pressed states.
Verified: no placeholders survive generation, the SVG still parses as XML, and
pcmanfm-qt picks up the new colours on restart. Qt reads a theme at startup
only, so running apps need restarting; AGENTS.md says so.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_015gbjA2bmswN8jyPDKzrvqe
Diffstat (limited to 'palette')
| -rw-r--r-- | palette/roles-dracula.conf | 4 | ||||
| -rw-r--r-- | palette/roles-frappe.conf | 4 | ||||
| -rw-r--r-- | palette/roles-macchiato.conf | 4 | ||||
| -rw-r--r-- | palette/roles-material-darker.conf | 4 | ||||
| -rw-r--r-- | palette/roles-material-ocean.conf | 4 | ||||
| -rw-r--r-- | palette/roles-material-palenight.conf | 4 | ||||
| -rw-r--r-- | palette/roles-mocha.conf | 4 | ||||
| -rw-r--r-- | palette/roles-nord.conf | 4 | ||||
| -rw-r--r-- | palette/roles-tokyo-night.conf | 4 |
9 files changed, 36 insertions, 0 deletions
diff --git a/palette/roles-dracula.conf b/palette/roles-dracula.conf index ea3d71f..8c54813 100644 --- a/palette/roles-dracula.conf +++ b/palette/roles-dracula.conf @@ -103,6 +103,10 @@ scrollbar_track = current_line bell_border = yellow tab_bar_bg = surface_low +# Kvantum hover and pressed states, a shade either side of the accent. +accent_dim = purple*92 +accent_bright = purple*110 + [accents] # Dracula ships six accents. snap = pink purple red orange yellow green cyan diff --git a/palette/roles-frappe.conf b/palette/roles-frappe.conf index 4ae5ea4..bfe5ac2 100644 --- a/palette/roles-frappe.conf +++ b/palette/roles-frappe.conf @@ -115,6 +115,10 @@ scrollbar_track = surface1 bell_border = yellow tab_bar_bg = crust +# Kvantum hover and pressed states, a shade either side of the accent. +accent_dim = lavender*92 +accent_bright = lavender*105 + [accents] # The hues udt-accent snaps a wallpaper to. Near-neutral tints (rosewater, # flamingo) and near-duplicate hues (maroon, sapphire) are left out so the diff --git a/palette/roles-macchiato.conf b/palette/roles-macchiato.conf index f5d12ea..a7c11d7 100644 --- a/palette/roles-macchiato.conf +++ b/palette/roles-macchiato.conf @@ -115,6 +115,10 @@ scrollbar_track = surface1 bell_border = yellow tab_bar_bg = crust +# Kvantum hover and pressed states, a shade either side of the accent. +accent_dim = lavender*92 +accent_bright = lavender*105 + [accents] # The hues udt-accent snaps a wallpaper to. Near-neutral tints (rosewater, # flamingo) and near-duplicate hues (maroon, sapphire) are left out so the diff --git a/palette/roles-material-darker.conf b/palette/roles-material-darker.conf index 0db4a58..152e179 100644 --- a/palette/roles-material-darker.conf +++ b/palette/roles-material-darker.conf @@ -103,6 +103,10 @@ scrollbar_track = surface bell_border = yellow tab_bar_bg = deep +# Kvantum hover and pressed states, a shade either side of the accent. +accent_dim = cyan*92 +accent_bright = cyan*110 + [accents] # Material ships one accent per hue, seven usable. snap = purple violet blue cyan green yellow orange red diff --git a/palette/roles-material-ocean.conf b/palette/roles-material-ocean.conf index 6291123..8a657a9 100644 --- a/palette/roles-material-ocean.conf +++ b/palette/roles-material-ocean.conf @@ -103,6 +103,10 @@ scrollbar_track = surface bell_border = yellow tab_bar_bg = deep +# Kvantum hover and pressed states, a shade either side of the accent. +accent_dim = cyan*92 +accent_bright = cyan*110 + [accents] # Material ships one accent per hue, seven usable. snap = purple violet blue cyan green yellow orange red diff --git a/palette/roles-material-palenight.conf b/palette/roles-material-palenight.conf index e09d54b..3e6a985 100644 --- a/palette/roles-material-palenight.conf +++ b/palette/roles-material-palenight.conf @@ -103,6 +103,10 @@ scrollbar_track = surface bell_border = yellow tab_bar_bg = deep +# Kvantum hover and pressed states, a shade either side of the accent. +accent_dim = cyan*92 +accent_bright = cyan*110 + [accents] # Material ships one accent per hue, seven usable. snap = purple violet blue cyan green yellow orange red diff --git a/palette/roles-mocha.conf b/palette/roles-mocha.conf index 8d5c509..318edce 100644 --- a/palette/roles-mocha.conf +++ b/palette/roles-mocha.conf @@ -115,6 +115,10 @@ scrollbar_track = surface1 bell_border = yellow tab_bar_bg = crust +# Kvantum hover and pressed states, a shade either side of the accent. +accent_dim = lavender*92 +accent_bright = lavender*105 + [accents] # The hues udt-accent snaps a wallpaper to. Near-neutral tints (rosewater, # flamingo) and near-duplicate hues (maroon, sapphire) are left out so the diff --git a/palette/roles-nord.conf b/palette/roles-nord.conf index b79e6f4..29b2854 100644 --- a/palette/roles-nord.conf +++ b/palette/roles-nord.conf @@ -103,6 +103,10 @@ scrollbar_track = nord2 bell_border = aurora_yellow tab_bar_bg = nord0 +# Kvantum hover and pressed states, a shade either side of the accent. +accent_dim = frost_cyan*92 +accent_bright = frost_cyan*110 + [accents] # Nord has nine usable hues, one fewer than Catppuccin. snap = aurora_purple frost_blue aurora_red aurora_orange aurora_yellow aurora_green frost_teal frost_cyan frost_deep diff --git a/palette/roles-tokyo-night.conf b/palette/roles-tokyo-night.conf index d56659c..984876b 100644 --- a/palette/roles-tokyo-night.conf +++ b/palette/roles-tokyo-night.conf @@ -102,5 +102,9 @@ scrollbar_track = fg_gutter bell_border = yellow tab_bar_bg = bg_dark +# Kvantum hover and pressed states, a shade either side of the accent. +accent_dim = blue*92 +accent_bright = blue*110 + [accents] snap = magenta purple blue red orange yellow green teal cyan blue1 |
