mirror of
https://github.com/gnmyt/myspeed.git
synced 2026-02-09 15:08:35 -06:00
Eindeutige Darstellung beim Prozess
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.
This commit is contained in:
51
install.sh
51
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."
|
||||
echo "$GREEN✓ Installation abgeschlossen: $NORMAL MySpeed wurde unter $INSTALLATION_PATH installiert."
|
||||
echo "Die Weboberfläche findest du unter $BLUEhttp://localhost:5216$NORMAL."
|
||||
|
||||
Reference in New Issue
Block a user