From 14d6ed084c162c36a2b5de1329e8f9a8f8ba4f60 Mon Sep 17 00:00:00 2001 From: rene Date: Tue, 10 Mar 2026 06:07:28 +0100 Subject: [PATCH] =?UTF-8?q?setup.sh:=20Reboot=20zwischen=20Phase=201=20und?= =?UTF-8?q?=202,=20Autostart=20f=C3=BCr=20Desktop-Setup?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit setup-desktop.sh braucht laufende XFCE-Session und die Hardware-Fixes aus setup-base.sh (GPU-Blacklist, Treiber) erfordern einen Reboot. Daher: setup-base.sh sofort ausführen, setup-desktop.sh als XFCE- Autostart einrichten, Reboot dazwischen. --- setup.sh | 35 ++++++++++++++++++++--------------- 1 file changed, 20 insertions(+), 15 deletions(-) diff --git a/setup.sh b/setup.sh index de86e5c..f082137 100644 --- a/setup.sh +++ b/setup.sh @@ -1,21 +1,20 @@ #!/bin/bash # macbook-setup/setup.sh -# Vollautomatisches Post-Install-Skript für Linux auf MacBook Pro -# Ruft setup-base.sh (als root) und setup-desktop.sh (als User) auf +# Post-Install-Skript für Linux auf MacBook Pro +# Startet setup-base.sh und richtet setup-desktop.sh als Autostart ein # # Verwendung: curl -fsSL https://git.motocamp.de/rene/macbook-setup/raw/branch/main/setup.sh | bash -# Oder: bash setup.sh [13|16] (Modell optional, wird sonst abgefragt) -set -e SETUP_RAW="https://git.motocamp.de/rene/macbook-setup/raw/branch/main" # ── Farben ────────────────────────────────────────────────────────────── RED='\033[0;31m'; GREEN='\033[0;32m'; YELLOW='\033[1;33m'; NC='\033[0m' ok() { echo -e "${GREEN}✓ $*${NC}"; } -err() { echo -e "${RED}✗ $*${NC}"; exit 1; } +warn() { echo -e "${YELLOW}⚠ $*${NC}"; } +fail() { echo -e "${RED}✗ $*${NC}"; exit 1; } # ── Root-Check ─────────────────────────────────────────────────────────── -[[ $EUID -eq 0 ]] && err "Nicht als root ausführen. sudo wird intern verwendet." +[[ $EUID -eq 0 ]] && fail "Nicht als root ausführen. sudo wird intern verwendet." # ── Modell ermitteln ───────────────────────────────────────────────────── if [[ "$1" == "13" || "$1" == "16" ]]; then @@ -24,14 +23,14 @@ else echo "" echo "Welches MacBook Pro?" echo " 13 = MBP 13\" Late 2013" - echo " 16 = MBP 16\" Mid 2014 (Intel + Nvidia)" + echo " 16 = MBP 16\" Mid 2014 (Intel + AMD Radeon)" read -rp "Modell [13/16]: " MODEL - [[ "$MODEL" != "13" && "$MODEL" != "16" ]] && err "Ungültiges Modell: $MODEL" + [[ "$MODEL" != "13" && "$MODEL" != "16" ]] && fail "Ungültiges Modell: $MODEL" fi echo "" echo "════════════════════════════════════════════" -echo " macbook-setup für MBP $MODEL\" (komplett)" +echo " macbook-setup für MBP $MODEL\"" echo "════════════════════════════════════════════" # ── Phase 1: System-Setup (als root) ──────────────────────────────────── @@ -39,14 +38,20 @@ echo -e "\n>>> Phase 1: setup-base.sh (System)" curl -fsSL "$SETUP_RAW/setup-base.sh" | sudo bash -s -- "$MODEL" ok "Phase 1 abgeschlossen" -# ── Phase 2: Desktop-Setup (als User) ─────────────────────────────────── -echo -e "\n>>> Phase 2: setup-desktop.sh (Desktop)" -curl -fsSL "$SETUP_RAW/setup-desktop.sh" | bash -ok "Phase 2 abgeschlossen" +# ── Phase 2: Desktop-Setup als Autostart einrichten ────────────────────── +echo -e "\n>>> Phase 2: setup-desktop.sh wird als Autostart eingerichtet" +mkdir -p ~/.config/autostart +printf '[Desktop Entry]\nType=Application\nName=MacBook Setup Desktop\nExec=bash -c "curl -fsSL %s/setup-desktop.sh | bash 2>&1 | tee /tmp/setup-desktop.log"\nHidden=false\nX-GNOME-Autostart-enabled=true\n' "$SETUP_RAW" \ + > ~/.config/autostart/macbook-setup-desktop.desktop +ok "Autostart für setup-desktop.sh eingerichtet" echo "" echo "════════════════════════════════════════════" -echo -e " ${GREEN}Komplett-Setup abgeschlossen!${NC}" +echo -e " ${GREEN}Phase 1 abgeschlossen!${NC}" echo "════════════════════════════════════════════" echo "" -echo "Neustart empfohlen: sudo reboot" +echo "Nächster Schritt:" +echo " sudo reboot" +echo "" +echo "Nach dem Reboot in XFCE einloggen —" +echo "setup-desktop.sh startet automatisch."