blob: ee7b2de1a8732f1bdda1418ea4fff95c8832c147 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
|
post_install() {
cat <<'EOF'
==> The Paseo desktop app manages its own daemon (with your full shell env
and DISPLAY), so no setup is needed — just launch Paseo.
==> Optional: to keep the daemon running in the background without the app
(the app and CLI then attach to it), start it from your graphical session
via an XDG autostart entry. Starting it this way — once the session is up —
gives it DISPLAY/WAYLAND_DISPLAY and avoids racing gnome-shell at login.
Create ~/.config/autostart/paseo-daemon.desktop with:
[Desktop Entry]
Type=Application
Name=Paseo Daemon
Exec=systemctl --user start paseo.service
NoDisplay=true
X-GNOME-Autostart-enabled=true
The shipped paseo.service is session-scoped (static, Restart=always) and is
meant to be started this way. Do NOT `systemctl --user enable` it: it has no
[Install] section on purpose, and binding it to a login target races
gnome-shell. `loginctl enable-linger` is not needed — the daemon is tied to
your graphical session.
EOF
}
post_upgrade() {
# Releases between the first service-shipping version and this one shipped no
# user unit (and told enable'd users to disable it). The unit is back, now
# static (started via XDG autostart, not enabled), so a leftover enable
# symlink from the original WantedBy=default.target unit is stale and harmful
# — it would auto-pull the session daemon at login and race gnome-shell.
if [ -e "${HOME:-/root}/.config/systemd/user/default.target.wants/paseo.service" ]; then
cat <<'EOF'
==> paseo.service is session-scoped (static) and must be started via an XDG
autostart entry, not enabled. Remove the stale enable symlink:
systemctl --user disable paseo.service
Then see the autostart snippet in the package notes to run it at login.
EOF
fi
}
|