From d0bbeede09c2b60bcbfec71cc68cd2c69ec53b84 Mon Sep 17 00:00:00 2001 From: Paul Schwarz <36771750+pavl21@users.noreply.github.com> Date: Tue, 10 May 2022 19:46:01 +0200 Subject: [PATCH] Eindeutige Darstellung beim Prozess MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Es wird jetzt deutlicher gemacht., was genau gerade passiert. Vorher wurde nur mitgeteilt, das etwas fehlt. Jetzt wird jeder Abschnitt gezeigt (Überprüfung). Zudem wurde log zu echo ersetzt und es wurden einige Farb- und Sonderzeichenformatierungen hinzugefügt, damit es nicht so langweilig aussieht. --- install.sh | 51 ++++++++++++++++++++++++++++++++++++++------------- 1 file changed, 38 insertions(+), 13 deletions(-) diff --git a/install.sh b/install.sh index 1015b259..b4febea6 100755 --- a/install.sh +++ b/install.sh @@ -1,5 +1,13 @@ #!/usr/bin/env bash +# Colors for better overview +GREEN='\033[0;32m' +BLUE='\033[1;34m' +YELLOW='\033[1;33m' +RED='\033[1;31m' +NORMAL='\033[0;39m' + + INSTALLATION_PATH="/opt/myspeed" RELEASE_URL=$(curl -s https://api.github.com/repos/gnmyt/myspeed/releases/latest | grep browser_download_url | cut -d '"' -f 4) @@ -9,13 +17,16 @@ log () { # Root check if [ $EUID -ne 0 ]; then - echo "Du musst dieses Skript als root ausführen" + echo "$RED ✗ Fehler bei der Installation: $NORMAL Du benötigst Root-Rechte, um die Installation zu starten." + echo "$BLUE Die Root-Abfrage wird ausgeführt, bitte gib das dazugehörige Passwort ein. Die Installation wird dann automatisch neu gestartet. Um abzubrechen, drücke STRG+C." + sudo -s + curl -sSL https://raw.githubusercontent.com/gnmyt/myspeed/release/install.sh | bash exit fi # Check if installed if [ -d $INSTALLATION_PATH ]; then - log "Eine MySpeed-Instanz unter $INSTALLATION_PATH wurde bereits installiert. Die Installation wird abgebrochen." + echo "$YELLOW ⚠ Fehler bei der Installation: $NORMAL MySpeed ist bereits auf diesem System installiert. ($INSTALLATION_PATH)" exit 0 fi @@ -23,63 +34,77 @@ fi # Update all packages apt-get update -y +clear +echo "$GREENℹ Info:$NORMAL Die Installation wird jetzt vorbereitet. Das kann einen Augenblick dauern..." +sleep 5 # Check for wget +clear +echo "$BLUE🔎 Status:$NORMAL Überprüfe, ob wget vorhanden ist..." if ! command -v wget &> /dev/null then - log "Das Paket \"wget\" wurde nicht gefunden, wird aber benötigt. Es wird nun installiert..." + echo "$YELLOWℹ\"wget\" ist nicht installiert.$NORMAL Die Installation wurde gestartet..." sleep 2 apt-get install wget -y fi # Check for unzip +clear +echo "$BLUE🔎 Status:$NORMAL Überprüfe, ob unzip vorhanden ist..." if ! command -v unzip &> /dev/null then - log "Das Paket \"unzip\" wurde nicht gefunden, wird aber benötigt. Es wird nun installiert..." + echo "$YELLOWℹ\"unzip\" ist nicht installiert.$NORMAL Die Installation wurde gestartet..." sleep 2 apt-get install unzip -y fi # Check for curl +clear +echo "$BLUE 🔎 Status:$NORMAL Überprüfe, ob curl vorhanden ist..." if ! command -v curl &> /dev/null then - log "Das Paket \"curl\" wurde nicht gefunden, wird aber benötigt. Es wird nun installiert..." + echo "$YELLOWℹ\"curl\" ist nicht installiert.$NORMAL Die Installation wurde gestartet..." sleep 2 apt-get install curl -y fi # Check for node +clear +echo "$BLUE 🔎 Status:$NORMAL Überprüfe, ob node vorhanden ist..." if ! command -v node &> /dev/null then - log "Das Paket \"nodejs\" wurde nicht gefunden, wird aber benötigt. Es wird nun installiert..." + echo "$YELLOWℹ\"node\" ist nicht installiert.$NORMAL Die Installation wurde gestartet..." sleep 2 curl -sSL https://deb.nodesource.com/setup_16.x | bash apt-get install nodejs -y fi -log "Alle notwendigen Pakete sind installiert. Starte installation von MySpeed..." -sleep 2 +clear +echo "$GREEN✓ Vorbereitung abgeschlossen:$NORMAL Die Installation von MySpeed wird jetzt gestartet..." +sleep 5 +clear if [ ! -d $INSTALLATION_PATH ] then - log "MySpeed wird unter $INSTALLATION_PATH installiert. Der Ordner wird nun erstellt." + echo "$BLUEℹ Info: $NORMAL MySpeed wird unter dem Verzeichnis $INSTALLATION_PATH installiert. Der Ordner wird nun erstellt." sleep 2 mkdir $INSTALLATION_PATH fi cd $INSTALLATION_PATH -log "Lade notwendige Daten herunter..." +echo "$BLUEℹ Info: $NORMAL Die aktuelle MySpeed-Instanz wird heruntergeladen. Einen Moment..." sleep 2 wget "$RELEASE_URL" -log "Entpacke notwendige Daten..." +echo "$BLUEℹ Info: $NORMAL Download abgeschlossen. Entpacken läuft..." sleep 2 unzip MySpeed*.zip rm MySpeed-*.zip -log "Lade die notwendigen Abhängigkeiten herunter..." +echo "$BLUEℹ Info: $NORMAL Die notwendigen Abhängigkeiten werden jetzt installiert..." sleep 2 npm install clear -log "Erfolg! MySpeed wurde unter $INSTALLATION_PATH installiert." \ No newline at end of file +echo "$GREEN✓ Installation abgeschlossen: $NORMAL MySpeed wurde unter $INSTALLATION_PATH installiert." +echo "Die Weboberfläche findest du unter $BLUEhttp://localhost:5216$NORMAL."