#!/usr/bin/env bash # Installs/updates the tssbot-web systemd --user units and (re)starts them. # Run this after cloning, and again any time a unit file under systemd/ changes. set -euo pipefail repo_dir="$(cd "$(dirname "${BASH_SOURCE[0]}")/.." && pwd)" unit_dir="${HOME}/.config/systemd/user" mkdir -p "${unit_dir}" for unit in tssbot-web tssbot-webhook tssbot-backend; do ln -sf "${repo_dir}/systemd/${unit}.service" "${unit_dir}/${unit}.service" done systemctl --user daemon-reload systemctl --user enable --now tssbot-web.service tssbot-webhook.service tssbot-backend.service if [ "$(loginctl show-user "$(whoami)" -p Linger --value 2>/dev/null)" != "yes" ]; then echo "Linger is not enabled for $(whoami) — user services will stop when you log out." echo "Enable it with: sudo loginctl enable-linger $(whoami)" fi systemctl --user status --no-pager tssbot-web.service tssbot-webhook.service tssbot-backend.service