38 lines
871 B
Bash
38 lines
871 B
Bash
#!/usr/bin/env bash
|
|
set -e
|
|
|
|
VENV_DIR=".venv"
|
|
REQ_FILE="requirements.txt"
|
|
|
|
echo "== Homelab Watchdog: Setup =="
|
|
|
|
# 1. venv erstellen, falls nicht vorhanden
|
|
if [ ! -d "$VENV_DIR" ]; then
|
|
echo "-> Erstelle virtuelle Umgebung in $VENV_DIR ..."
|
|
python3 -m venv "$VENV_DIR"
|
|
else
|
|
echo "-> venv existiert bereits, überspringe."
|
|
fi
|
|
|
|
# 2. venv aktivieren (nur innerhalb dieses Scripts)
|
|
source "$VENV_DIR/bin/activate"
|
|
|
|
# 3. pip selbst aktualisieren
|
|
pip install --upgrade pip
|
|
|
|
# 4. requirements.txt anlegen, falls nicht vorhanden
|
|
if [ ! -f "$REQ_FILE" ]; then
|
|
echo "-> Keine requirements.txt gefunden, erstelle Standard-Stückliste."
|
|
cat > "$REQ_FILE" <<EOF
|
|
textual
|
|
pymysql
|
|
EOF
|
|
fi
|
|
|
|
# 5. Pakete installieren
|
|
echo "-> Installiere Pakete aus $REQ_FILE ..."
|
|
pip install -r "$REQ_FILE"
|
|
|
|
echo "== Setup fertig =="
|
|
echo "Aktivieren mit: source $VENV_DIR/bin/activate"
|