feat(nightlight): geo mode — lat/long-computed sunset via wlsunset
All checks were successful
Check / eval (push) Successful in 4m20s
All checks were successful
Check / eval (push) Successful in 4m20s
Set BOTH nomarchy.nightlight.latitude/.longitude and the night light switches backing unit: wlsunset computes sunrise/sunset from the location daily (the fixed .sunrise/.sunset are ignored; .temperature feeds the night temp). Everything user-facing is unchanged — same nomarchy-nightlight toggle script, Waybar moon, and live-state ExecCondition gate; the unit name is a single let-binding so all three follow together. Declarative-only on purpose: coordinates are machine config like the keyboard layout, so home.nix (commented template example), not a menu writer. checks.nightlight-geo guards the wiring at pure eval: rendered wlsunset ExecStart carries the coords + night temperature, the ExecCondition gate landed on the swapped unit, hyprsunset stays off in geo mode. Verification: V1 — nix flake check --no-build exit 0 (evals the new asserts + option-docs sync); built downstream-template-home (default hyprsunset path unregressed). V3 pending: visible warm shift at the location's night + instant toggle/off-persistence on the swapped unit (HARDWARE-QUEUE § Any machine). Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -721,10 +721,16 @@ Design/decision records and a running log of shipped work (items marked
|
||||
outside the checkout** (Phase 1 night-light + Phase 2 the per-device
|
||||
keyboard-layout memory below are done — both now in the git-tracked state
|
||||
file; next target: opt-in auto-commit of the flake on each mutation, owned
|
||||
files only). Remaining (optional): geo (lat/long) auto
|
||||
sunset/sunrise (would mean wlsunset, which schedules by location). Pending an
|
||||
on-machine check (first enable rebuilds + comes on; later toggles instant; off
|
||||
persists across reboot via ExecCondition; stopping hyprsunset restores gamma).
|
||||
files only). The on-machine check PASSed 2026-07-04 (enable/disable on
|
||||
hardware). **Geo mode shipped 2026-07-11:** set BOTH
|
||||
`nomarchy.nightlight.latitude`/`.longitude` and wlsunset replaces
|
||||
hyprsunset — sunrise/sunset computed from the location daily, the fixed
|
||||
times ignored; same toggle script, moon indicator, and live-state
|
||||
`ExecCondition` gate (the backing unit name is a single let-binding).
|
||||
Declarative-only on purpose (coords are hardware-independent machine
|
||||
config, like the keyboard layout — no menu writer). Guarded by
|
||||
`checks.nightlight-geo` (pure eval over the rendered units); the visible
|
||||
warm shift is hardware-tier, queued.
|
||||
- ✓ **Automatic timezone (location-following clock):** `nomarchy.system.autoTimezone`
|
||||
(opt-in, off by default) — geoclue + `services.automatic-timezoned` drive
|
||||
`/etc/localtime` from your location, so travelling to another zone updates the
|
||||
|
||||
Reference in New Issue
Block a user