#!/bin/bash # Abbrechen bei Fehlern set -e echo "====================================================" echo "🚀 Starte Debian 13 Automated Wayland & Jarvis Setup" echo "====================================================" # 1. System aktualisieren & Basispakete installieren echo "📦 Aktualisiere Paketquellen und installiere Systemkomponenten..." sudo apt update sudo apt install -y labwc firefox-esr curl wget git sudo python3 python3-pip python3-venv original-awk tilix geany # 2. Architektur erkennen und wdotool installieren ARCH=$(uname -m) echo "🔍 Erkannte Systemarchitektur: $ARCH" if [ "$ARCH" = "x86_64" ]; then echo "📥 Installiere vorkompiliertes .deb für amd64..." wget https://github.com/cushycush/wdotool/releases/download/v0.5.3/wdotool_0.5.3-1_amd64.deb -O /tmp/wdotool.deb sudo apt install -y /tmp/wdotool.deb rm /tmp/wdotool.deb elif [ "$ARCH" = "aarch64" ] || [ "$ARCH" = "arm64" ]; then echo "📥 Installiere via offizieller Shell-Installer (Kompilierung/Binary für arm64)..." curl --proto '=https' --tlsv1.2 -LsSf https://github.com/cushycush/wdotool/releases/download/v0.5.3/wdotool-installer.sh | sh else echo "❌ Unbekannte Architektur: $ARCH. Installation abgebrochen." exit 1 fi # 3. Den realen Installationspfad von wdotool ermitteln echo "🛠️ Konfiguriere globalen wdotool-Wrapper..." sleep 1 if [ -f "/usr/bin/wdotool" ]; then REAL_WDOTOOL="/usr/bin/wdotool" elif [ -f "$HOME/.cargo/bin/wdotool" ]; then REAL_WDOTOOL="$HOME/.cargo/bin/wdotool" elif [ -f "$HOME/.local/bin/wdotool" ]; then REAL_WDOTOOL="$HOME/.local/bin/wdotool" else REAL_WDOTOOL=$(which wdotool || true) fi if [ -z "$REAL_WDOTOOL" ]; then echo "❌ Fehler: wdotool wurde im System nicht gefunden!" exit 1 fi # Verschiebe die echte Binary an einen sicheren Ort, um Platz für den Wrapper zu machen sudo mv "$REAL_WDOTOOL" /usr/local/bin/wdotool.real # 4. Den intelligenten Umgebungsvariablen-Wrapper erstellen sudo cat << 'EOF' | sudo tee /usr/local/bin/wdotool > /dev/null #!/bin/bash # Automatische Wayland-Umgebung laden export XDG_RUNTIME_DIR=/run/user/1000 export WAYLAND_DISPLAY=wayland-0 # Transparent an die echte Binary übergeben exec /usr/local/bin/wdotool.real "$@" EOF # Wrapper ausführbar machen sudo chmod +x /usr/local/bin/wdotool # 5. Desktop-Konfiguration (.config) im Home-Verzeichnis einrichten echo "📂 Konfiguriere labwc Autostart..." mkdir -p ~/.config/labwc # Autostart-Datei schreiben (mit funktionierenden Grafik-Parametern für Firefox) cat << 'EOF' > ~/.config/labwc/autostart # Terminal starten tilix & # Firefox absturzsicher im Software-Render-Modus starten MOZ_WEBRENDER=software MOZ_ENABLE_WAYLAND=1 firefox-esr & EOF # Autostart ausführbar machen chmod +x ~/.config/labwc/autostart echo "⚙️ Richte Auto-Start für labwc ein..." cat << 'EOF' >> ~/.profile # labwc automatisch starten, wenn die Anmeldung auf Terminal 1 erfolgt if [ "$(tty)" = "/dev/tty1" ]; then exec labwc fi EOF echo "====================================================" echo "✅ Setup erfolgreich abgeschlossen!" echo "👉 Starte das System neu oder führe 'labwc' aus." echo "===================================================="