#!/usr/bin/env bash set -euo pipefail host="$(hostname -s)" case "$host" in NytegearArch) BEETS_ROOT="/data/Music/Beets" BEETSDIR="/data/Music/Beets/config" ;; NytegearMusic) BEETS_ROOT="/music/beets" BEETSDIR="/music/beets/config" ;; *) echo "Unknown beets host: $host" >&2 exit 2 ;; esac VIRTUAL_ENV="$BEETS_ROOT/venv" if [[ ! -x "$VIRTUAL_ENV/bin/python" ]]; then echo "Missing venv Python: $VIRTUAL_ENV/bin/python" >&2 exit 1 fi if [[ ! -x "$VIRTUAL_ENV/bin/beet" ]]; then echo "Missing beet executable: $VIRTUAL_ENV/bin/beet" >&2 exit 1 fi export VIRTUAL_ENV export BEETSDIR # Match the important part of venv activation without polluting the interactive shell. export PATH="$VIRTUAL_ENV/bin:$PATH" # Avoid weird inherited Python state. unset PYTHONHOME # Optional hardening: prevents accidental imports from user site-packages. # Usually desirable for repeatability. export PYTHONNOUSERSITE=1 exec "$VIRTUAL_ENV/bin/beet" "$@"