Asahi-Skripte: GNOME-Desktop, WireGuard, FreeCAD, p10k-Fix

setup-base-asahi.sh:
- WireGuard-Setup (wireguard-tools + m1.conf Hinweis)
- Header bereinigt, Nummerierung auf 1-8

setup-desktop-asahi.sh:
- XFCE-Block durch GNOME-Einstellungen ersetzt
  (Dash to Panel, Power, Uhr 24h, Batterie-%, Terminal-Font)
- FreeCAD als Flatpak
- Powerlevel10k Instant Prompt quiet-Fix
This commit is contained in:
René 2026-03-15 15:49:25 +01:00
parent b27d5c81c1
commit 3f33bdf776
2 changed files with 68 additions and 51 deletions

View file

@ -2,7 +2,7 @@
# macbook-setup/setup-base-asahi.sh
# Basis-Setup fuer Asahi Linux (Fedora Remix) auf Apple Silicon M1
# Fokus: Terminal-Umgebung (zsh, Tools, Screensaver)
# System-spezifisches (XFCE, HiDPI, WireGuard, Energie) wird vor Ort gemacht
# System-spezifisches (HiDPI, Energie) wird vor Ort gemacht
# Verwendung: sudo bash setup-base-asahi.sh
# Kann mehrfach ausgefuehrt werden (idempotent)
@ -22,7 +22,7 @@ echo " Terminal-Grundsetup"
echo "============================================"
# ── 1. sudoers ───────────────────────────────────────────────────────────
echo -e "\n=== 1/7 sudoers ==="
echo -e "\n=== 1/8 sudoers ==="
cat > /etc/sudoers <<'SUDOEOF'
Defaults env_reset
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"
@ -38,24 +38,24 @@ chmod 440 /etc/sudoers.d/rene
ok "sudoers: Linux-Standard + NOPASSWD fuer rene"
# ── 2. Locale & Timezone ────────────────────────────────────────────────
echo -e "\n=== 2/7 Locale & Timezone ==="
echo -e "\n=== 2/8 Locale & Timezone ==="
dnf install -y glibc-langpack-de 2>/dev/null || true
localectl set-locale LANG=de_DE.UTF-8
timedatectl set-timezone Europe/Berlin 2>/dev/null || true
ok "Locale: de_DE.UTF-8, Timezone: Europe/Berlin"
# ── 3. Sleep verhindern waehrend Installation ───────────────────────────
echo -e "\n=== 3/7 Sleep verhindern ==="
echo -e "\n=== 3/8 Sleep verhindern ==="
systemctl mask sleep.target suspend.target hibernate.target hybrid-sleep.target 2>/dev/null || true
ok "Sleep/Suspend deaktiviert (fuer Installation)"
# ── 4. System aktualisieren ─────────────────────────────────────────────
echo -e "\n=== 4/7 System aktualisieren ==="
echo -e "\n=== 4/8 System aktualisieren ==="
dnf upgrade -y || warn "dnf upgrade hatte Probleme"
ok "System aktuell"
# ── 5. Pakete installieren ──────────────────────────────────────────────
echo -e "\n=== 5/7 Pakete installieren ==="
echo -e "\n=== 5/8 Pakete installieren ==="
# Basis-Tools
dnf install -y \
@ -103,8 +103,17 @@ if ! command -v asciiquarium &>/dev/null; then
rm -rf /tmp/asciiquarium*
fi
# ── 6. /etc/hosts ───────────────────────────────────────────────────────
echo -e "\n=== 6/7 /etc/hosts ==="
# ── 6. WireGuard VPN ──────────────────────────────────────────────────────
echo -e "\n=== 6/8 WireGuard VPN ==="
dnf install -y wireguard-tools 2>/dev/null || true
if [[ -f /etc/wireguard/m1.conf ]] || nmcli connection show m1 &>/dev/null; then
ok "WireGuard m1 bereits konfiguriert"
else
warn "WireGuard: m1.conf nach /etc/wireguard/ kopieren, dann: nmcli connection import type wireguard file /etc/wireguard/m1.conf"
fi
# ── 7. /etc/hosts ───────────────────────────────────────────────────────
echo -e "\n=== 7/8 /etc/hosts ==="
for entry in "10.47.11.10 dsm.motocamp.de" "10.47.11.23 git.motocamp.de"; do
host="${entry##* }"
if ! grep -q "$host" /etc/hosts; then
@ -115,8 +124,8 @@ for entry in "10.47.11.10 dsm.motocamp.de" "10.47.11.23 git.motocamp.de"; do
fi
done
# ── 7. Services & Shell ─────────────────────────────────────────────────
echo -e "\n=== 7/7 Services & Shell ==="
# ── 8. Services & Shell ─────────────────────────────────────────────────
echo -e "\n=== 8/8 Services & Shell ==="
systemctl enable sshd 2>/dev/null || true
systemctl start sshd 2>/dev/null || true
@ -136,4 +145,4 @@ echo ""
echo "Naechste Schritte:"
echo " 1. Ausloggen und als rene mit zsh neu einloggen"
echo " 2. setup-desktop-asahi.sh ausfuehren (oh-my-zsh, Dotfiles, p10k)"
echo " 3. System-Setup (XFCE, HiDPI, WireGuard etc.) vor Ort machen"
echo " 3. WireGuard: m1.conf einrichten (falls noch nicht importiert)"