#!/usr/bin/env bash set -Eeuo pipefail if [[ "${1:-}" != --jobs-finished || $# -ne 1 ]]; then printf 'Dieser Neustart unterbricht laufende Backend-Jobs.\n' >&2 printf 'Erst nach Jobende ausführen: %s --jobs-finished\n' "$0" >&2 exit 2 fi config_dir="${XDG_CONFIG_HOME:-$HOME/.config}/hermes-stack-maintenance" # shellcheck disable=SC1090,SC1091 source "$config_dir/config.env" exec 8>"${XDG_RUNTIME_DIR:-/tmp}/hermes-stack-hermes-update.lock" if ! flock -n 8; then printf 'Maintenance läuft gerade. Kein Neustart ausgeführt.\n' >&2 exit 1 fi "$(dirname -- "${BASH_SOURCE[0]}")/hermes-stack-llama-run" --check printf 'Starte %s neu …\n' "$LLAMA_SERVICE" systemctl --user restart "$LLAMA_SERVICE" printf 'Neustart ausgelöst. Das Modell kann noch laden.\n'