feat(control-center): battery charge-limit as a preset toggle
All checks were successful
Check / eval (push) Successful in 3m10s

The "Battery Limit" entry was a raw number prompt; make it a proper
toggle picker — Off / 80% (recommended) / 90% / 60% / Custom… — writing
settings.power.batteryChargeLimit. Kept in the control-center, where the
baked rebuild-valued System Toggles live (the rofi nomarchy-menu is the
instant surface; the CC holds config values), and reachable from the menu
via System › Control Center. Base machinery (the sysfs oneshot + AC-replug
udev in power.nix) is unchanged, so it lands on the next sys-rebuild like
its siblings.

Instant-effect (no rebuild) is refiled in BACKLOG § PROPOSED as
[blocked:hw]: it needs a udev-writable threshold node, confirmable only on
a laptop with the control.

Verified: V0 (bash -n; nix flake check --no-build, green) + V1
(nomarchy-control-center package builds — the writeShellApplication
shellcheck gate passes). Session spot-check queued in HARDWARE-QUEUE.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
This commit is contained in:
2026-07-07 19:06:15 +01:00
parent ce89fddab6
commit d078ba2a82
4 changed files with 69 additions and 22 deletions

View File

@@ -222,6 +222,13 @@ QA machine), the **T14s** (webcam case).
draining. (Crossing logic VM-verified — this checks the real
swaync rendering in a session.)
- [ ] **Battery charge-limit toggle** (iteration #55) — control-center
(menu System Control Center System Toggles Battery Limit):
the preset picker (Off / 80% / 90% / 60% / Custom…) writes the value
(`nomarchy-theme-sync get settings.power.batteryChargeLimit` reflects
the pick); after a `sys-rebuild` the sysfs
`charge_control_end_threshold` reads it. (UX-only over the already
VM-verified writer — a session sanity pass, not a deep check.)
- [ ] **Waybar hides under fullscreen video** (item 30) — after
`home-update` + relogin, put a browser video (YouTube) into
fullscreen (F): the bar is now *covered* by the video, not drawn