The service is now user-bound: each user runs their own daemon with their own config ($XDG_CONFIG_HOME/yams/config.toml), corpus ($XDG_DATA_HOME/yams) and socket ($XDG_RUNTIME_DIR/yams-daemon.sock), which is exactly what the CLI already resolves. The system service, its yams account/group, the group socket and the /etc/yams/config.toml configuration go away. - Unit: /usr/lib/systemd/user/yams-daemon.service runs `yams-daemon --foreground` with default path resolution, Restart=on-failure, WantedBy=default.target, and light hardening (NoNewPrivileges, LockPersonality, RestrictRealtime, RestrictSUIDSGID, native syscalls only). No ProtectHome/PrivateTmp: the daemon reads the files its user adds. - Enablement: /usr/lib/systemd/user-preset/80-yams.preset plus `systemctl --global preset` on first install (and on upgrade from a release with the system unit), so the unit starts with every user's next session; administrators override with a user preset or `systemctl --global disable`, and later upgrades keep that choice. Package scripts never start per-user instances: they reload running user managers, try-restart running user daemons on upgrade and stop them on removal (`systemctl --user` via runuser per /run/user/<uid>), then `systemctl --global disable` on removal. - Migration from 0.20.x and the system-service design: deb preinst, rpm %pre and Arch pre_upgrade stop and disable the old system unit while its file is still installed (deb also purges deb-systemd-helper state). /var/lib/yams, the old system corpus that the CLI never reached, is left alone and documented; user corpora are never touched. - The sysusers entry, account creation and the deb's passwd and init-system-helpers dependencies are dropped; the deb purge no longer deletes /var/lib/yams. - Install paths move to lib/systemd/user and lib/systemd/user-preset in meson, the Arch stage/PKGBUILD and the install-surface policy. - docs/install.md: the user service, enabling it now (`systemctl --user enable --now`), lingering, plugins via the user's config, opting out, upgrade and removal behaviour, and the 0.20.3 leftover. Signed-off-by: trvon <me@trevon.dev>
4 lines
275 B
Text
4 lines
275 B
Text
# systemd user preset (/usr/lib/systemd/user-preset/80-yams.preset): enable the
|
|
# per-user YAMS daemon for every user. Administrators can override it with a
|
|
# lower-numbered preset in /etc/systemd/user-preset/ (e.g. "disable yams-daemon.service").
|
|
enable yams-daemon.service
|