feat(greeter): tuigreet + console themed from the state JSON (item 16)
Some checks failed
Check / eval (push) Has been cancelled
Some checks failed
Check / eval (push) Has been cancelled
New modules/nixos/greeter.nix owns the greetd block (moved out of
default.nix) plus the theming, the Plymouth model — baked at SYSTEM
rebuild from nomarchy.system.stateFile. Two parts, because tuigreet
draws on the VT with the 16 ANSI slots: console.colors becomes the
theme's ansi[] (vt.default_* kernel params — which also themes raw
ttys and the LUKS passphrase prompt), and tuigreet gets a --theme of
NAMED slots (its parser is ratatui Color::from_str, checked in source;
the names map to the standard indexes the retinted palette now
serves). A sparse state without ansi skips theming cleanly.
Verified: V0; V1 — the template-system toplevel bakes the full --theme
spec into greetd.toml and all three vt.default_{red,grn,blu} palettes
into kernel-params. A checks.greeter VM test was attempted and dropped
after bisecting: tuigreet dies under runNixOSTest even without the
flag (harness limit; nixpkgs's own greetd test uses agreety) —
recorded in agent/MEMORY.md. Remains: V3 rendering +
theme-follows-rebuild on hardware (HARDWARE-QUEUE).
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -83,10 +83,6 @@ the *same* outputs. **Plan (designed 2026-07-05, iteration #27):**
|
||||
- **Non-goals:** no kanshi (fights Hyprland's output management —
|
||||
decided in ROADMAP), nwg-displays stays a find-the-values helper.
|
||||
|
||||
### 16. Greeter theming from the JSON
|
||||
ROADMAP § Greeter. tuigreet themed from theme-state.json at system
|
||||
rebuild (same model as Plymouth's tint). Scope: tuigreet only (no SDDM).
|
||||
|
||||
### 17. Launch-or-focus UX scripts
|
||||
ROADMAP § launch-or-focus. Hyprland dispatch scripts: a bind launches an
|
||||
app or focuses its existing window. Curate which apps get binds;
|
||||
|
||||
Reference in New Issue
Block a user