#!/bin/bash
###############################################################
# GDS Display Deinstallation
# Kehrt gdssetup.sh vollständig um
###############################################################

if [ "$EUID" -ne 0 ]; then
    echo "Dieses Skript muss mit sudo ausgeführt werden."
    exit 1
fi

MARKER="/home/snowtv/bin/.gds_installed"
LOG="/var/log/stv.log"

if [ ! -f "$MARKER" ]; then
    echo "$(date)  INFO: Kein GDS-Setup vorhanden (kein Marker). Abbruch." | tee -a "$LOG"
    exit 0
fi

echo "$(date)  INFO: GDS-Deinstallation gestartet" | tee -a "$LOG"

# humidity.service stoppen und entfernen
systemctl stop humidity.service
systemctl disable humidity.service
rm -f /etc/systemd/system/humidity.service
systemctl daemon-reload
echo "$(date)  INFO: humidity.service entfernt" | tee -a "$LOG"

# sagds deinstallieren
systemctl stop sagds 2>/dev/null || true
dpkg --purge --force-remove-reinstreq gds-snmp-subagent-singlepanel 2>&1 | tee -a "$LOG" || true
echo "$(date)  INFO: sagds deinstalliert" | tee -a "$LOG"

# snmpd deinstallieren inkl. Konfig (wurde von gdssetup.sh installiert)
systemctl stop snmpd 2>/dev/null || true
DEBIAN_FRONTEND=noninteractive apt-get purge -y snmpd snmp libsnmp-base libusb-0.1-4 2>&1 | tee -a "$LOG"
rm -f /etc/snmp/snmpd.conf /var/lib/snmp/snmpd.conf
echo "$(date)  INFO: snmpd und Abhängigkeiten entfernt" | tee -a "$LOG"

# Kompatibilitäts-Symlinks entfernen
rm -f /usr/lib/x86_64-linux-gnu/libnetsnmp.so.30
rm -f /usr/lib/x86_64-linux-gnu/libnetsnmpagent.so.30
echo "$(date)  INFO: libnetsnmp-Symlinks entfernt" | tee -a "$LOG"

# MIB entfernen
rm -f /usr/share/snmp/mibs/GDS-SINGLE-DISPLAY-MIB-METRA-.mib
echo "$(date)  INFO: MIB entfernt" | tee -a "$LOG"

# Marker entfernen
rm -f "$MARKER"
echo "$(date)  INFO: GDS-Deinstallation abgeschlossen" | tee -a "$LOG"
