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:
@@ -64,7 +64,6 @@ HARDWARE-QUEUE. Close #76 on PASS.
|
||||
- **Installer round 2** (ROADMAP § Installer): multi-disk BTRFS RAID,
|
||||
impermanence, BIOS/legacy boot.
|
||||
- **Boot-from-snapshot**: a systemd-boot equivalent of grub-btrfs.
|
||||
- **Night-light geo mode**: lat/long auto sunset/sunrise (means wlsunset).
|
||||
- **MIPI/IPU software-ISP camera** support (no-UVC machines).
|
||||
- **VPN exit-node richer display** (country/city) (optional).
|
||||
- **NixOS release bump → v2** `[human]`: deliberate, hand-edited, never
|
||||
|
||||
@@ -224,6 +224,16 @@ the **T14s** (webcam case).
|
||||
hibernate — likely no swap is configured. See docs/MIGRATION.md →
|
||||
Enabling hibernation."), **not** a silent no-op. (`swapon` after, if you
|
||||
swapoff'd for the test.)
|
||||
- [ ] **Night-light geo mode (2026-07-11)** — in `home.nix` set
|
||||
`nomarchy.nightlight = { enable = true; latitude = "<lat>";
|
||||
longitude = "<long>"; }` (your real coordinates), `nomarchy-home`,
|
||||
relogin. Then: `systemctl --user status wlsunset` is running (and
|
||||
`hyprsunset` is NOT); after local sunset the screen visibly warms
|
||||
(or test by setting coordinates where it's currently night); the
|
||||
Waybar moon + menu toggle still flip it instantly and an *off*
|
||||
survives relogin (the ExecCondition gate on the swapped unit —
|
||||
the eval check proves the wiring, not the runtime gate). **Pass** =
|
||||
warm shift at the location's night + toggle/persistence intact.
|
||||
|
||||
## AMD dev box only
|
||||
- [ ] **AMD runtime bits** — VA-API (`vainfo` → radeonsi), amd-pstate EPP
|
||||
|
||||
@@ -19,6 +19,24 @@ Template:
|
||||
|
||||
---
|
||||
|
||||
## 2026-07-11 — Night-light geo mode (lat/long → wlsunset)
|
||||
- **Task:** BACKLOG LATER "Night-light geo mode" (human-picked).
|
||||
- **Did:** `nomarchy.nightlight.latitude`/`.longitude` (both set = geo mode):
|
||||
`services.wlsunset` (location-computed sunrise/sunset, `.temperature` →
|
||||
night temp) replaces hyprsunset; the toggle script's `unit=` and the
|
||||
live-state ExecCondition follow via one `unit` let-binding. Template
|
||||
example lines, README row, ROADMAP ✓. New `checks.nightlight-geo`:
|
||||
pure-eval asserts on the rendered units (coords + temp in ExecStart,
|
||||
ExecCondition present, hyprsunset off). Declarative-only (no menu writer —
|
||||
coords are machine config like keyboard layout).
|
||||
- **Verified:** V1 — `nix flake check --no-build` exit 0 (evals the new
|
||||
asserts + option-docs); built `downstream-template-home` (default
|
||||
hyprsunset path unregressed) + the check drv. Caught en route: HM renders
|
||||
`ExecStart` as a list (`toString` needed in eval asserts).
|
||||
- **Pending:** V3 queued (HARDWARE-QUEUE § Any machine): visible warm shift
|
||||
at location night + toggle/persistence on the swapped unit.
|
||||
- **Next suggestion:** wallpapers artifact split (LATER, decided).
|
||||
|
||||
## 2026-07-11 — Sync-sweep rule + grooming + zram user docs (human-requested)
|
||||
- **Task:** Bernardo: groom stale items and codify the check so they don't
|
||||
recur; close the zram user-doc gap.
|
||||
|
||||
Reference in New Issue
Block a user