#!/bin/bash
# ============================================================
#  INFORMATECH - Installation RustDesk MODE PONCTUEL
#  Assistance à la demande - pas de service permanent
#  L'utilisateur doit lancer RustDesk manuellement
# ============================================================

RD_SERVER="support.informatech.pro"
RD_KEY="niOvH+gf3Qw4mB5TVUjWSDGCxsCItkHk7nMKVC7tfMA="
RD_VERSION="1.3.8"

echo ""
echo "================================================"
echo "  INFORMATECH - Installation RustDesk Ponctuel"
echo "================================================"
echo ""

if [ "$(id -u)" -ne 0 ]; then
    echo "Ce script doit être exécuté en root (sudo)."
    exit 1
fi

ARCH=$(uname -m)
case $ARCH in
    x86_64)  PKG_ARCH="x86_64" ;;
    aarch64) PKG_ARCH="aarch64" ;;
    armv7l)  PKG_ARCH="armv7" ;;
    *) echo "Architecture non supportée: $ARCH"; exit 1 ;;
esac

TMPDIR=$(mktemp -d)
cd "$TMPDIR"

echo "[1/4] Téléchargement de RustDesk ${RD_VERSION}..."
wget -q "https://github.com/rustdesk/rustdesk/releases/download/${RD_VERSION}/rustdesk-${RD_VERSION}-${PKG_ARCH}.deb" -O rustdesk.deb

echo "[2/4] Installation..."
DEBIAN_FRONTEND=noninteractive dpkg -i rustdesk.deb || apt-get install -f -y

echo "[3/4] Configuration du serveur (sans service automatique)..."
CONF_DIR="/root/.config/rustdesk"
mkdir -p "$CONF_DIR"
cat > "$CONF_DIR/RustDesk2.toml" << TOML
rendezvous_server = '${RD_SERVER}:21116'
nat_type = 1
serial = 0

[options]
custom-rendezvous-server = '${RD_SERVER}'
key = '${RD_KEY}'
relay-server = '${RD_SERVER}'
TOML

if [ -n "$SUDO_USER" ]; then
    USER_HOME=$(getent passwd "$SUDO_USER" | cut -d: -f6)
    mkdir -p "$USER_HOME/.config/rustdesk"
    cp "$CONF_DIR/RustDesk2.toml" "$USER_HOME/.config/rustdesk/"
    chown -R "$SUDO_USER:$SUDO_USER" "$USER_HOME/.config/rustdesk"
fi

echo "[4/4] Désactivation du service automatique..."
systemctl disable rustdesk 2>/dev/null || true
systemctl stop rustdesk 2>/dev/null || true

echo ""
echo "================================================"
echo "  Installation terminée !"
echo "================================================"
echo "  Pour lancer RustDesk : rustdesk"
echo "  Communiquez l'ID et le code affiché à votre technicien."
echo "  RustDesk ne démarre PAS automatiquement."
echo "================================================"
echo ""

rm -rf "$TMPDIR"
