diff --git a/agent/BACKLOG.md b/agent/BACKLOG.md index 1c474c6..a3e8fb2 100644 --- a/agent/BACKLOG.md +++ b/agent/BACKLOG.md @@ -55,18 +55,16 @@ runtime-computed `resume_offset` into the boot cmdline, and the dev box runs exactly this layout (`/proc/cmdline` verified) but isn't Nomarchy. Steps in HARDWARE-QUEUE. Close #76 on PASS. -### 84. Dock life polish (`VISION § C`) `[big]` -Split before starting: (a) clamshell — lid closed with external monitor -connected must not suspend (logind lidSwitchDocked/ExternalPower audit + -display-profile interplay), wake behaves; (b) default audio sink follows -dock/undock (dock sink on plug, internal on unplug — WirePlumber policy -or a udev hook). Display profiles + auto-switch already exist; this is -the remaining edge-case pass. +### 86. Clamshell dock: lid + external monitor (`VISION § C`) +Lid closed with external monitor connected must not suspend +(`logind` `lidSwitchDocked` / `ExternalPower` audit + display-profile +interplay); wake behaves. Display profiles + auto-switch already exist — +this is the lid/suspend edge case. VM where possible; residual V3 on +real dock hardware. -### 85. Hardware hall of fame (`VISION § F`) -A HARDWARE.md "install-tested machines" table (model, DMI, profile, -date, notes) seeded from the Latitude/dev-box sessions + a short "send -your DMI line" PR invite. Docs-only. +### 87. Dock audio sink follows plug/unplug (`VISION § C`) +Default audio sink: dock sink on plug, internal on unplug (WirePlumber +policy or udev hook). Complements #86; can ship independently. ## LATER @@ -120,8 +118,8 @@ high-ROI, etc.) live in the journal + ROADMAP — not here.* 2026-07-10). Keep #59 commented install guidance; no `nomarchy.hardware.nvidia.*` until a hybrid maintainer + queue. -_(#80–#83 shipped 2026-07-11. Remaining promoted: dock life `[big]`, - hall of fame → **NEXT #84–#85**. Split #84 before starting.)_ +_(#80–#83 + #85 shipped 2026-07-11. #84 split → **NEXT #86–#87** dock + clamshell + dock audio.)_ ### v1.0 pointer diff --git a/agent/JOURNAL.md b/agent/JOURNAL.md index 910cc1b..d0d2961 100644 --- a/agent/JOURNAL.md +++ b/agent/JOURNAL.md @@ -19,6 +19,15 @@ Template: --- +## 2026-07-11 — #85 hardware hall of fame + split #84 +- **Task:** NEXT #85 docs hall of fame; #84 was `[big]` → split. +- **Did:** HARDWARE.md §9 install-tested table (T14s Gen 4 AMD, Latitude + 5410/5310) + DMI PR invite; renumbered following sections. #84 → #86 + clamshell + #87 dock audio. VISION/ROADMAP; closed #85. +- **Verified:** V0 (docs only). +- **Pending:** — +- **Next suggestion:** #86 clamshell or #87 dock audio (both product). + ## 2026-07-11 — #83 doctor first-boot pre-activate flag - **Task:** NEXT #83 — doctor points at failed installer HM pre-activate. - **Did:** doctor row: if `/var/log/nomarchy-hm-preactivate.log` is present diff --git a/docs/HARDWARE.md b/docs/HARDWARE.md index 4c23dc7..ba1d5cb 100644 --- a/docs/HARDWARE.md +++ b/docs/HARDWARE.md @@ -346,7 +346,40 @@ nomarchy-detect-hw --raw # MODULE / NOMARCHY / DETAIL protocol lines Prints suggested `hardwareProfile` and `system.nix` lines; **does not** rewrite the flake. Paste after review, then `sudo nixos-rebuild switch`. -## 9. Adding your model to the distro +## 9. Install-tested machines (hall of fame) + +Models that have seen a real Nomarchy session (live ISO, install, or +day-to-day QA) — not a guarantee of every feature, just a public seed +list. **DB coverage** (hardware-db.sh) is broader; this table is the +smaller “someone actually sat at it” set. + +| Model | DMI (`sys_vendor` × `product_name` / version) | Typical `hardwareProfile` | Last noted | Notes | +|-------|-----------------------------------------------|---------------------------|------------|-------| +| Lenovo ThinkPad T14s Gen 4 (AMD) | `LENOVO` × `21F8CTO1WW` / `ThinkPad T14s Gen 4` | common AMD laptop + SSD (plus `nomarchy.hardware.amd` / fingerprint / IR cam as probed) | 2026-07 | Maintainer day-to-day + HARDWARE-QUEUE (IR portal, fingerprint, NPU). Dual-sensor webcam is the motivating IR case. | +| Dell Latitude 5410 | Dell Latitude 5410 (Intel) | common Intel laptop + SSD (+ GuC when enabled) | 2026-07 | Primary Intel hardware-QA host (session, themes, polkit, bar). | +| Dell Latitude 5310 | Dell Latitude 5310 (Intel) | same family as 5410 | 2026-07 | Charge-limit / power QA sibling (see HARDWARE-QUEUE). | + +### Send your DMI line + +If you install Nomarchy on a machine and it works (or fails in an +interesting way), open a PR that: + +1. Adds a row to the table above (model, DMI, profile, date, short notes). +2. Optionally adds a `HARDWARE_DB` line in + `pkgs/nomarchy-install/hardware-db.sh` when nixos-hardware has a + matching module (§10). + +Quick DMI grab: + +```sh +printf '%s | %s | %s\n' \ + "$(cat /sys/class/dmi/id/sys_vendor)" \ + "$(cat /sys/class/dmi/id/product_name)" \ + "$(cat /sys/class/dmi/id/product_version)" +nomarchy-detect-hw # suggested MODULE / NOMARCHY lines +``` + +## 10. Adding your model to the distro For contributors (and power users who will PR): @@ -374,8 +407,9 @@ For contributors (and power users who will PR): `nixosModules` is queued so lock bumps cannot silently break installs. 5. Optional: note on-hardware QA steps in `agent/HARDWARE-QUEUE.md`. + Install-tested status goes in the hall-of-fame table (§9). -## 10. Doctor and hardware health (current vs target) +## 11. Doctor and hardware health (current vs target) **Today** (`nomarchy-doctor`): failed units, disk space, theme-state validity/git, generation age, snapper; hardware section self-gates per @@ -395,7 +429,7 @@ fix command. | First-boot pre-activate | installer log present + no HM generation | `home-manager switch --flake ~/.nomarchy -b bak` | | Hibernate / zram | disk swap + resume=; zram active | docs/MIGRATION.md → Enabling hibernation | -## 11. Option quick reference +## 12. Option quick reference Full tables: [README § options](../README.md). Hardware-shaped surface: @@ -413,7 +447,7 @@ Full tables: [README § options](../README.md). Hardware-shaped surface: | `nomarchy.system.bluetooth.enable` | BT stack | | `services.fwupd.enable` | LVFS (native NixOS, default on) | -## 12. Ease summary +## 13. Ease summary | Situation | Effort | |-----------|--------| @@ -425,7 +459,7 @@ Full tables: [README § options](../README.md). Hardware-shaped surface: | ROCm / NPU userspace | High — opt-in + expert | | Contribute a new DMI line | Medium for someone who can PR | -## 13. Related files +## 14. Related files | Path | Role | |------|------| diff --git a/docs/ROADMAP.md b/docs/ROADMAP.md index a8199fb..fbee770 100644 --- a/docs/ROADMAP.md +++ b/docs/ROADMAP.md @@ -386,6 +386,9 @@ Design/decision records and a running log of shipped work (items marked generation is present, doctor ✖ with `home-manager switch --flake ~/.nomarchy -b bak`. Skips when log absent; ok once a generation exists. `checks.doctor` covers both arms. + ✓ **Hardware hall of fame (#85, `VISION § F`):** HARDWARE.md §9 + install-tested table (T14s Gen 4, Latitude 5410/5310) + “send your DMI + line” PR invite; §10 points contributors at the table. - ✓ **Hibernate double-unlock:** on resume from hibernate the LUKS passphrase already gates the machine, but locking hyprlock before sleep meant a second password. Fixed by *not locking* before an encrypted diff --git a/docs/VISION.md b/docs/VISION.md index 18049b3..a17ac62 100644 --- a/docs/VISION.md +++ b/docs/VISION.md @@ -112,7 +112,7 @@ Reference: [HARDWARE.md](HARDWARE.md) §4–§5, §10. | Idea | Intent | Notes | |------|--------|-------| | **Omarchy migrant one-pager** ✓ | Bindings/theme/install map | ✓ shipped `docs/OMARCHY.md` (#78, 2026-07-10) | -| **Hardware hall of fame** | Install-tested models; invite DMI PRs | Ties to HARDWARE.md §9 | +| **Hardware hall of fame** ✓ | Install-tested models; invite DMI PRs | ✓ shipped #85 — HARDWARE.md §9 table + DMI PR invite | | **60s demo** | Live → install → theme → menu | Outside repo OK | ---