Skip to main content

Module start_at_login

Module start_at_login 

Source
Expand description

app:startatlogin: one setting, three views (docs/specs/SPEC_START_WITH_OS_2026_09_25.md §3.9).

The setting is the single source of truth, owned by srv like every other setting. The Settings toggle writes it with setconfig; the tray’s check item writes it the same way, over the launcher’s srv connection (notify::request_start_at_login, the path the tray’s “pause notifications” already uses). srv broadcasts every change to all clients, so the Settings page, the tray check mark and the OS login entry all follow the one value: this module receives it (observe), refreshes the tray, and reconciles the login entry to it (autostart::plan).

Off unless the user turns it on (owner decision, 2026-09-25).

Constants§

SETTINGS_KEY
Settings key.

Statics§

RECONCILE 🔒
Serializes reconciles, so two quick toggles cannot interleave their writes.
SEEN 🔒
The last value srv reported. None until the first config frame arrives: the tray shows the item disabled until then, rather than guess.

Functions§

current
The setting as the tray should show it: None = not known yet.
observe
srv reported the setting (on connect, and after every settings change). None means the key is not set.
reconcile_latest 🔒
toggle
The tray’s check item was clicked.