Measured fixes, one line each, from the review of everything that landed on 2026-10-20 (issue #60). Each page keeps its own facts; nothing was moved. - inventory/index, index: the census blurb says what the page actually covers (tracked-vs-box-only per file), not "all userspace configuration" - dotfiles-deploy: the wallpaper re-fetch recipe resolves the CDN URL through the wallhaven API — /w/<id> answers text/html, so curl -L never yields a JPEG; description widened to the whole page, tools/index blurb matched - okf-maintenance: the link example and the mistake bullet now agree with okf-spec, which RECOMMENDS absolute bundle paths (they said the opposite) - decisions/index: the unlisted-page gate is kb-coverage.py, not kb-lint - AGENTS.md: the three skill-config subsections are pointers again; the pages own issue tracker, labels and domain docs - swayidle-lock.service: Description names what the unit does (arms the idle lock over noctalia-shell IPC); suspend belongs to noctalia's inhibitor - common.pkgs: git-lfs re-justified by the tracked .gitattributes filter contract; the swayidle comment drops its lid-policy claim
29 lines
1.4 KiB
Desktop File
29 lines
1.4 KiB
Desktop File
[Unit]
|
|
Description=swayidle idle lock watcher (arms the idle lock via noctalia-shell IPC; suspend is covered by noctalia's sleep inhibitor)
|
|
Documentation=https://github.com/swaywm/swayidle
|
|
After=graphical-session.target
|
|
# Restart together with the session, not merely at boot: this unit is wanted by
|
|
# default.target, so a compositor restart used to leave it orphaned while the target came
|
|
# back without it. Refs #47.
|
|
PartOf=graphical-session.target
|
|
# With Restart=always below, a fast failure loop must never wedge the watcher into `failed`:
|
|
# a lock that keeps trying beats a lock that stopped trying. Refs #47.
|
|
StartLimitIntervalSec=0
|
|
|
|
[Service]
|
|
# Locks via the noctalia v5 shell; `noctalia msg` resolves the running instance
|
|
# through the D-Bus session bus, so no WAYLAND_DISPLAY pinning is needed in unit context.
|
|
# deploy.sh enables it only where the ExecStart binary resolves, so it stays inert until swayidle is installed.
|
|
ExecStart=/usr/bin/swayidle -w \
|
|
timeout 300 '/usr/bin/noctalia msg session lock' \
|
|
before-sleep '/usr/bin/noctalia msg session lock' \
|
|
after-resume '/usr/bin/noctalia msg session lock'
|
|
# `swayidle -w` exits 0 on SIGTERM, and that is how this watcher died on 2026-10-12: a clean
|
|
# exit that `Restart=on-failure` cannot see, leaving the box unlocked for a week. A supervisor
|
|
# restarts always. Refs #47.
|
|
Restart=always
|
|
RestartSec=5s
|
|
|
|
[Install]
|
|
WantedBy=default.target
|