temp-cleanup/install.sh aktualisiert
🧠 Was jetzt besser ist ✔ erkennt „ich bin schon installiert“ ✔ keine self-copy Fehler mehr ✔ funktioniert für beide Fälle: 🆕 frischer Download 🔁 Update / Reinstall
This commit is contained in:
+15
-11
@@ -5,7 +5,6 @@ set -e
|
|||||||
echo "📦 Installiere Temp Cleanup System..."
|
echo "📦 Installiere Temp Cleanup System..."
|
||||||
|
|
||||||
SOURCE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
SOURCE_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
|
||||||
|
|
||||||
TARGET_BASE="$HOME/workstation-config"
|
TARGET_BASE="$HOME/workstation-config"
|
||||||
TARGET_DIR="$TARGET_BASE/temp-cleanup"
|
TARGET_DIR="$TARGET_BASE/temp-cleanup"
|
||||||
|
|
||||||
@@ -13,7 +12,6 @@ SYSTEMD_USER_DIR="$HOME/.config/systemd/user"
|
|||||||
|
|
||||||
SERVICE_NAME="cleanup-temp.service"
|
SERVICE_NAME="cleanup-temp.service"
|
||||||
TIMER_NAME="cleanup-temp.timer"
|
TIMER_NAME="cleanup-temp.timer"
|
||||||
|
|
||||||
SCRIPT_NAME="cleanup_temp.sh"
|
SCRIPT_NAME="cleanup_temp.sh"
|
||||||
|
|
||||||
TARGET_SERVICE="$SYSTEMD_USER_DIR/$SERVICE_NAME"
|
TARGET_SERVICE="$SYSTEMD_USER_DIR/$SERVICE_NAME"
|
||||||
@@ -22,18 +20,24 @@ TARGET_TIMER="$SYSTEMD_USER_DIR/$TIMER_NAME"
|
|||||||
echo "📁 Quelle: $SOURCE_DIR"
|
echo "📁 Quelle: $SOURCE_DIR"
|
||||||
echo "📁 Ziel: $TARGET_DIR"
|
echo "📁 Ziel: $TARGET_DIR"
|
||||||
|
|
||||||
# 🧱 Struktur
|
# 🧱 Struktur sicherstellen
|
||||||
mkdir -p "$TARGET_DIR"
|
mkdir -p "$TARGET_DIR"
|
||||||
mkdir -p "$SYSTEMD_USER_DIR"
|
mkdir -p "$SYSTEMD_USER_DIR"
|
||||||
|
|
||||||
# 📄 Dateien kopieren
|
# 🧠 Nur kopieren wenn Quelle ≠ Ziel
|
||||||
cp "$SOURCE_DIR/cleanup_temp.sh" "$TARGET_DIR/"
|
if [ "$SOURCE_DIR" != "$TARGET_DIR" ]; then
|
||||||
cp "$SOURCE_DIR/systemd/$SERVICE_NAME" "$TARGET_DIR/"
|
echo "📄 Kopiere Dateien..."
|
||||||
cp "$SOURCE_DIR/systemd/$TIMER_NAME" "$TARGET_DIR/"
|
cp "$SOURCE_DIR/$SCRIPT_NAME" "$TARGET_DIR/"
|
||||||
|
cp "$SOURCE_DIR/systemd/$SERVICE_NAME" "$TARGET_DIR/"
|
||||||
|
cp "$SOURCE_DIR/systemd/$TIMER_NAME" "$TARGET_DIR/"
|
||||||
|
else
|
||||||
|
echo "ℹ️ Dateien bereits am Ziel – überspringe Kopieren"
|
||||||
|
fi
|
||||||
|
|
||||||
|
# 🔐 Script ausführbar machen
|
||||||
chmod +x "$TARGET_DIR/$SCRIPT_NAME"
|
chmod +x "$TARGET_DIR/$SCRIPT_NAME"
|
||||||
|
|
||||||
# 🔧 Service dynamisch anpassen
|
# 🔧 Service dynamisch schreiben
|
||||||
sed "s|ExecStart=.*|ExecStart=$TARGET_DIR/$SCRIPT_NAME|" \
|
sed "s|ExecStart=.*|ExecStart=$TARGET_DIR/$SCRIPT_NAME|" \
|
||||||
"$TARGET_DIR/$SERVICE_NAME" > "$TARGET_SERVICE"
|
"$TARGET_DIR/$SERVICE_NAME" > "$TARGET_SERVICE"
|
||||||
|
|
||||||
@@ -43,8 +47,8 @@ cp "$TARGET_DIR/$TIMER_NAME" "$TARGET_TIMER"
|
|||||||
# 🔄 systemd reload
|
# 🔄 systemd reload
|
||||||
systemctl --user daemon-reload
|
systemctl --user daemon-reload
|
||||||
|
|
||||||
# ▶️ Timer aktivieren (wichtig!)
|
# ▶️ Timer aktivieren
|
||||||
systemctl --user enable "$TIMER_NAME"
|
systemctl --user enable "$TIMER_NAME"
|
||||||
systemctl --user start "$TIMER_NAME"
|
systemctl --user restart "$TIMER_NAME"
|
||||||
|
|
||||||
echo "✅ Timer aktiv – Cleanup läuft automatisch täglich"
|
echo "✅ Installation abgeschlossen!"
|
||||||
Reference in New Issue
Block a user