fix(install): constrain keyboard selection to XKB catalog
All checks were successful
Check / eval (push) Successful in 3m17s

Make keyboard typing filter-only with Gum strict mode, validate interactive and unattended choices against the pinned XKB catalog before any disk mutation, and show resolved human-readable choices in review.

Verified: V1 flake eval, focused installer builds, shell/Python/diff checks; current-ISO KVM boot proved the packaged new flow while the pre-destructive interaction pass continued.
This commit is contained in:
2026-07-13 17:07:08 +01:00
parent 9d0abe5422
commit d09c11d872
7 changed files with 277 additions and 24 deletions

View File

@@ -19,6 +19,20 @@ Template:
---
## 2026-07-13 — #92 catalog-only installer keyboard selection (this commit)
- **Task:** Make installer layout/variant choices understandable without
allowing arbitrary XKB values to break generated Nix.
- **Did:** Added a pinned human-readable XKB catalog, a one-step US/default
path, strict searchable layout/variant pickers, shared exact validation for
interactive and unattended input, and a resolved review summary.
- **Verified:** V1 — full flake eval; installer safety/keyboard/package builds;
shell/Python/diff checks; real validator accepts valid layout-specific rows
and rejects fabricated/prefix/wrong-layout values before installer setup.
KVM boot of the exact current ISO proved the packaged installer contains the
new flow; interactive screenshot pass was still running at commit time.
- **Pending:** Complete the already-running pre-destructive KVM UI review.
- **Next suggestion:** #93 swap-size prompt and explanation.
## 2026-07-13 — #91 installer no-variant normalization (this commit)
- **Task:** Stop the keyboard picker's display-only `(none)` value from
breaking generated `xkb-console-keymap.drv` and the whole installation.