docs(roadmap): plan the visual theme picker (preview thumbnails)
Add the agreed approach for prettifying nomarchy-menu theme into a rofi icon grid of real themed-desktop previews: Bernardo captures previews on real hardware and commits themes/<slug>/preview.png; a build-time derivation downscales each to a thumbnail that the picker loads as the rofi element icon (rofi already renders image files — same as the Papirus menu icons), with a wallpaper/swatch/plain-name fallback while previews are added incrementally. Notes the headless VM-render route was prototyped and works (runNixOSTest + software-GL Hyprland + machine.screenshot QMP dump) but real-hardware capture was chosen for fidelity; the working VM recipe is parked in memory. The temporary flake checks.theme-shot spike is removed (too heavy for a CI gate). Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
@@ -88,6 +88,25 @@ how to override it. Items marked ✓ are shipped.
|
||||
green inputbar, yellow bottom-border). Remaining: author `.rasi`
|
||||
identities for the other four ported themes if/when they want one (the
|
||||
generated palette theme is the default and looks fine)
|
||||
- **Visual theme picker (preview thumbnails):** replace the plain-text theme
|
||||
list in `nomarchy-menu theme` with a rofi **icon grid of real desktop
|
||||
previews** — each theme shown as a screenshot of its themed desktop (waybar
|
||||
+ a floating terminal), name beneath, the active theme marked, with the
|
||||
`↩ Back` entry. **Workflow:** Bernardo captures the previews on real
|
||||
hardware and commits them as `themes/<slug>/preview.png`; a build-time
|
||||
derivation downscales each to a small thumbnail (imagemagick), and the
|
||||
picker loads it as the rofi element icon — rofi already renders image files,
|
||||
which is how the Papirus menu icons work, so a `.png` path in the icon slot
|
||||
Just Works. Grid layout via a per-invocation `-theme-str` (`listview {
|
||||
columns; }` + a larger `element-icon`). Graceful fallback when a theme has
|
||||
no `preview.png` yet: its wallpaper (`backgrounds/`), an accent swatch, or
|
||||
the plain name — so it degrades cleanly as previews are added incrementally.
|
||||
(A headless VM-render route — `runNixOSTest` + software-GL Hyprland
|
||||
(`LIBGL_ALWAYS_SOFTWARE` on virtio-gpu) + `machine.screenshot()` QMP
|
||||
framebuffer dump — was prototyped 2026-06-19 and **works** (themed waybar
|
||||
rendered + captured); real-hardware capture was chosen for fidelity +
|
||||
simplicity, with the VM route as a documented fallback if hand-capturing all
|
||||
themes gets tedious.)
|
||||
- **Faster switches:** move `backgrounds/` out of the flake source (the 86 MB
|
||||
re-copy on every state write is the main eval tax), then pre-built theme
|
||||
variants if still needed
|
||||
|
||||
Reference in New Issue
Block a user