#!/usr/bin/env bash # Install rein-aharness claim-loop as a user systemd service (railiance01). # Run from a rein-aharness checkout ON the host: # ./deploy/scripts/install-claim-loop-user.sh set -euo pipefail ROOT="$(cd "$(dirname "$0")/../.." && pwd)" UNIT_DIR="${HOME}/.config/systemd/user" ENV_DIR="${HOME}/.config/rein-aharness" mkdir -p "${UNIT_DIR}" "${ENV_DIR}" cp -f "${ROOT}/deploy/systemd/rein-aharness-claim-loop.service" "${UNIT_DIR}/" if [[ ! -f "${ENV_DIR}/claim-loop.env" ]]; then cp "${ROOT}/deploy/systemd/claim-loop.env.example" "${ENV_DIR}/claim-loop.env" chmod 600 "${ENV_DIR}/claim-loop.env" echo "Created ${ENV_DIR}/claim-loop.env — set ACTIVITY_CORE_URL, token, REPO_MAP." else echo "Keeping existing ${ENV_DIR}/claim-loop.env" fi # Ensure package entrypoint exists if [[ ! -x "${ROOT}/.venv/bin/rein-aharness" ]]; then echo "warning: ${ROOT}/.venv/bin/rein-aharness missing; install with: cd ${ROOT} && uv sync" fi systemctl --user daemon-reload systemctl --user enable rein-aharness-claim-loop.service echo "Enabled. Start when env is filled:" echo " systemctl --user start rein-aharness-claim-loop.service" echo " journalctl --user -u rein-aharness-claim-loop -f" echo "Host timers remain break-glass until T05 cutover (docs/ops-run-claim-loop.md)."