#!/usr/bin/env bash # # ftptui – Deinstallations-Skript (systemweit) # # Entfernt die systemweite Installation (venv unter /opt/ftptui und den # Einstiegspunkt /usr/local/bin/ftptui). # # Verwendung: # ./uninstall.sh # entfernt das Paket (Nutzdaten bleiben) # ./uninstall.sh --purge # entfernt zusätzlich die Konfigurationsdateien # set -euo pipefail SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)" APP_NAME="ftptui" VENV_DIR="/opt/ftptui/venv" BIN_LINK="/usr/local/bin/$APP_NAME" PURGE=0 for arg in "$@"; do case "$arg" in --purge|-p) PURGE=1 ;; -h|--help) echo "Verwendung: $0 [--purge]"; exit 0 ;; *) echo "Unbekanntes Argument: $arg"; exit 1 ;; esac done run_sudo() { if [ "$(id -u)" -eq 0 ]; then "$@" else sudo "$@" fi } echo "==> ftptui Deinstallations-Skript" if [ -x "$BIN_LINK" ] || [ -d "$VENV_DIR" ]; then echo "==> Entferne systemweite Installation ..." run_sudo rm -f "$BIN_LINK" run_sudo rm -rf /opt/ftptui echo "==> Entfernt: $BIN_LINK und $VENV_DIR" else echo "==> Keine systemweite Installation gefunden (kein $BIN_LINK / $VENV_DIR)." fi CONFIG_DIR="${XDG_CONFIG_HOME:-$HOME/.config}/ftptui" if [ "$PURGE" -eq 1 ]; then if [ -e "$CONFIG_DIR" ]; then rm -rf "$CONFIG_DIR" echo "==> Konfigurationsverzeichnis entfernt: $CONFIG_DIR" else echo "==> Kein Konfigurationsverzeichnis gefunden." fi else echo "==> Nutzdaten (Verbindungsprofile) bleiben erhalten: $CONFIG_DIR" echo " (mit --purge werden auch diese entfernt)" fi echo echo "Deinstallation abgeschlossen."