- Add users.py with avatar detection (pwd, AccountsService, ~/.face) - Display avatar + username above action buttons - Look up 22px icon variant (same as moonlock) and render at 64px - Round action buttons (border-radius 50%) - 9 new tests for user/avatar detection (63 total)
915 B
Hekate — Journal
2026-03-27
Erster Tag. Moonset von Null auf v0.1.0 gebracht. TDD durchgezogen — alle 54 Tests grün, bevor der erste manuelle Start passiert ist. Das Pattern aus moongreet/moonlock hat sich bewährt: power.py, i18n.py, config.py sind fast 1:1 übernommen, nur mit den 5 Aktionen erweitert.
Layer Shell brauchte LD_PRELOAD — selbes Thema wie bei moongreet. GI-Import allein reicht nicht, weil die Linker-Reihenfolge stimmen muss. Erster Start ohne LD_PRELOAD gab die bekannten Warnings, mit LD_PRELOAD lief alles sauber: Overlay auf allen Monitoren, Escape schließt, Buttons da.
Designentscheidung: Lock ohne Confirmation, alles andere mit Inline-Confirm. Fühlt sich richtig an — Lock ist sofort reversibel, Shutdown nicht.
Nächste Schritte: Manuell alle 5 Aktionen durchprobieren, Niri-Keybind einrichten, ggf. LD_PRELOAD in einen Wrapper-Script oder moonarch-Config packen.