# Activate the tanin-greet greetd config. greetd owns /etc/greetd/config.toml, # so we can't package that path — install it from the shipped template here, # backing up any existing (e.g. distro default / regreet) config once. _activate() { local src=/usr/share/tanin/greetd/config.toml local dst=/etc/greetd/config.toml [ -f "$src" ] || return 0 if [ -e "$dst" ] && ! grep -q 'tanin-greet' "$dst" 2>/dev/null && [ ! -e "$dst.tanin-bak" ]; then cp -a "$dst" "$dst.tanin-bak" fi install -Dm644 "$src" "$dst" } post_install() { _activate cat <<'EOF' >> tanin-greet: greetd now launches the TANINUX greeter (backup: /etc/greetd/config.toml.tanin-bak) Enable the login screen with: systemctl enable greetd (disable any other DM first) EOF } post_upgrade() { _activate } # Package files (incl. the greeter binary greetd is pointed at) are gone by the # time post_remove runs, so restore the pre-tanin greetd config we backed up in # _activate — otherwise greetd keeps launching a deleted greeter and login breaks. post_remove() { local dst=/etc/greetd/config.toml if [ -e "$dst.tanin-bak" ]; then mv -f "$dst.tanin-bak" "$dst" echo ">> tanin-greet: restored the previous greetd config from $dst.tanin-bak" >&2 else cat >&2 <<'EOF' !! tanin-greet: WARNING — /etc/greetd/config.toml still points at the TANINUX !! greeter, which was just REMOVED, and no backup (.tanin-bak) exists to restore. !! greetd will fail to start (no login) until you edit /etc/greetd/config.toml !! to reference an installed greeter (e.g. agreety) or disable greetd. EOF fi }