#!/bin/bash

set -e

BASEDIR="$(cd "$(dirname "$0")" && pwd)"

if [ "$EUID" -ne 0 ]; then
  echo "Bitte mit sudo ausführen:"
  echo "sudo $0"
  exit 1
fi

echo "Installiere RustDesk fuer Nolte Engineering..."

# ===== Paketmanager erkennen =====
if command -v apt >/dev/null 2>&1; then
  PKG="apt"
elif command -v dnf >/dev/null 2>&1; then
  PKG="dnf"
elif command -v yum >/dev/null 2>&1; then
  PKG="yum"
elif command -v zypper >/dev/null 2>&1; then
  PKG="zypper"
else
  echo "Kein unterstuetzter Paketmanager gefunden."
  exit 1
fi

# ===== RustDesk installieren =====
echo "Installiere RustDesk ueber Paketmanager ($PKG)..."

case "$PKG" in
  apt)
    apt update
    apt install -y rustdesk || apt install -y ./rustdesk*.deb
    ;;
  dnf)
    dnf install -y rustdesk || dnf install -y ./rustdesk*.rpm
    ;;
  yum)
    yum install -y rustdesk || yum install -y ./rustdesk*.rpm
    ;;
  zypper)
    zypper install -y rustdesk
    ;;
esac

# ===== Konfiguration setzen =====
CFGDIR="/etc/rustdesk"
mkdir -p "$CFGDIR"

if [ -f "$BASEDIR/RustDesk.toml" ]; then
  cp "$BASEDIR/RustDesk.toml" "$CFGDIR/RustDesk.toml"
  chmod 644 "$CFGDIR/RustDesk.toml"
else
  echo "Fehler: RustDesk.toml nicht gefunden."
  exit 1
fi

echo "Installation abgeschlossen."
echo "RustDesk ist jetzt fuer rustdesk.nolte-eng.de vorkonfiguriert."

