Dotfiles/desktopenvs
Amir Alexander Abdelbaki 1fa5ebee70 feat(presence-detect): 4-state caffeine widget + steadier, faster detection
Rework the Eww caffeine widget into two independent inputs — manual inhibit
and presence detected — yielding four states across all three bars:
  neither            → 󰒲 sleep,  purple
  manual only        →  coffee, purple
  presence only      → 󰈈 eye,    pink
  manual + presence  →  coffee, pink
Colour tracks presence; the coffee cup shows only while manually inhibiting.

To make the two inputs independent, the daemon now writes a standalone
/tmp/presence-detected flag each tick (decoupled from lock ownership, so it's
true even during a manual session). presence-status.sh reports that flag
(presence input); new caffeine-manual-status.sh reports lock-held-and-not-
presence-owned (manual input).

Make detection less finnicky: space the detector's frame grabs (0.06s) so slow
movement registers and loopback reads never diff a stale duplicate frame, and
lower the thresholds (delta 25→18, area 2%→0.8%). Add a 90s grace window so
brief stillness never flickers presence off; any motion resets the clock.

Add a third poll tier — INTERVAL_FAST=2s when CPU-or-RAM usage is below 30%
(LOAD_LIGHT) — alongside the existing 20s normal and 120s busy tiers.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-07-11 03:07:22 +02:00
..
hyprland fix(eww): stop duplicate stacked bars from ewwstart race 2026-06-28 02:23:45 +02:00
hyprlua feat(presence-detect): 4-state caffeine widget + steadier, faster detection 2026-07-11 03:07:22 +02:00
niri feat(presence-detect): switch to motion detection, adaptive interval, shared caffeine lock 2026-07-10 16:23:49 +02:00
sway added sway option 2025-01-13 21:50:09 +01:00
migrate-hyprland-to-hyprlua.sh refactor(hyprlua): move hypr-usr/ into hypr/usr/ and wire sysupdate sync 2026-06-11 15:46:01 +02:00