post_install.sh aktualisiert

This commit is contained in:
2026-01-27 23:12:53 +01:00
parent b634c0272c
commit 19e37e7c9a

View File

@@ -14,11 +14,11 @@ BOLD="\033[1m"
RESET="\033[0m" RESET="\033[0m"
# Einrückung vom linken Rand # Einrückung vom linken Rand
INDENT=" " # 6 Leerzeichen INDENT=" " # 3 Leerzeichen
# Prüfen, ob Root # Prüfen, ob Root
if [ "$EUID" -ne 0 ]; then if [ "$EUID" -ne 0 ]; then
echo -e "${RED}Bitte als Root ausführen (sudo)${RESET}" echo -e "${RED}${BOLD}${INDENT}Bitte als Root ausführen (sudo)${RESET}"
exit 1 exit 1
fi fi
@@ -50,15 +50,16 @@ ORDER=(
# Funktion für Header # Funktion für Header
print_header() { print_header() {
clear clear
echo -e "${CYAN}${BOLD}${INDENT}====================================${RESET}" echo -e "${CYAN}${BOLD}${INDENT}========================================${RESET}"
echo -e "${CYAN}${BOLD}${INDENT} POST-INSTALL TOOLBOX ${RESET}" echo -e "${CYAN}${BOLD}${INDENT} POST-INSTALL TOOLBOX v2.0 ${RESET}"
echo -e "${CYAN}${BOLD}${INDENT}====================================${RESET}" echo -e "${CYAN}${BOLD}${INDENT}========================================${RESET}"
echo
} }
# Menü starten # Menü starten
while true; do while true; do
print_header print_header
echo -e "\n${YELLOW}${INDENT}Wähle ein Script zum Ausführen:${RESET}\n" echo -e "${YELLOW}${INDENT}Bitte wähle ein Script zum Ausführen:${RESET}\n"
# Skripte nummerieren in der festen Reihenfolge # Skripte nummerieren in der festen Reihenfolge
i=1 i=1
@@ -74,7 +75,7 @@ while true; do
# Beenden # Beenden
if [ "$choice" == "0" ]; then if [ "$choice" == "0" ]; then
echo -e "${GREEN}${INDENT}Bye! 👋${RESET}" echo -e "${GREEN}${BOLD}${INDENT}Auf Wiedersehen! 👋${RESET}"
exit 0 exit 0
fi fi
@@ -82,17 +83,18 @@ while true; do
if [[ "$choice" =~ ^[0-9]+$ ]] && [ "$choice" -ge 1 ] && [ "$choice" -lt "$i" ]; then if [[ "$choice" =~ ^[0-9]+$ ]] && [ "$choice" -ge 1 ] && [ "$choice" -lt "$i" ]; then
key="${INDEX_MAP[$choice]}" key="${INDEX_MAP[$choice]}"
url="${SCRIPTS[$key]}" url="${SCRIPTS[$key]}"
echo -e "\n${CYAN}${INDENT}------------------------------------${RESET}"
echo -e "${GREEN}${INDENT}Lade Script: ${BOLD}$key${RESET}" echo -e "\n${CYAN}${INDENT}----------------------------------------${RESET}"
echo -e "${YELLOW}${INDENT}Von: $url${RESET}" echo -e "${GREEN}${BOLD}${INDENT}Lade Script: $key${RESET}"
echo -e "${CYAN}${INDENT}------------------------------------${RESET}\n" echo -e "${YELLOW}${INDENT}Quelle: $url${RESET}"
echo -e "${CYAN}${INDENT}----------------------------------------${RESET}\n"
# Temporäre Datei # Temporäre Datei
tmpfile=$(mktemp) tmpfile=$(mktemp)
curl -sSL "$url" -o "$tmpfile" curl -sSL "$url" -o "$tmpfile"
if [ ! -s "$tmpfile" ]; then if [ ! -s "$tmpfile" ]; then
echo -e "${RED}${INDENT}Fehler beim Download!${RESET}" echo -e "${RED}${BOLD}${INDENT}Fehler: Download fehlgeschlagen!${RESET}"
rm -f "$tmpfile" rm -f "$tmpfile"
read -r -p "${INDENT}Enter drücken für Menü..." read -r -p "${INDENT}Enter drücken für Menü..."
continue continue
@@ -100,16 +102,16 @@ while true; do
# Script ausführen in Subshell mit SIGINT-Handler # Script ausführen in Subshell mit SIGINT-Handler
( (
trap 'echo -e "\n${YELLOW}${INDENT}Unter-Script abgebrochen! Zurück zum Menü...${RESET}"; exit 1' SIGINT trap 'echo -e "\n${RED}${BOLD}${INDENT}⚠️ Unter-Script abgebrochen! Zurück zum Menü...${RESET}"; exit 1' SIGINT
bash "$tmpfile" bash "$tmpfile"
) )
rm -f "$tmpfile" rm -f "$tmpfile"
echo -e "\n${CYAN}${INDENT}------------------------------------${RESET}" echo -e "\n${CYAN}${INDENT}----------------------------------------${RESET}"
echo -e "${GREEN}${INDENT}Fertig!${RESET} Drücke Enter für Menü..." echo -e "${GREEN}${BOLD}${INDENT}✔ Script abgeschlossen!${RESET} Drücke Enter für Menü..."
read -r read -r
else else
echo -e "${RED}${INDENT}Ungültige Auswahl! Bitte erneut versuchen.${RESET}" echo -e "${RED}${BOLD}${INDENT}Ungültige Auswahl! Bitte erneut versuchen.${RESET}"
sleep 1 sleep 1
fi fi
done done