Files
hms-mediaengine/HMS-Mac-Install.command
T

77 lines
3.2 KiB
Bash
Raw Normal View History

#!/bin/bash
# HMS MediaEngine macOS-Installation per Doppelklick (Finder)
# Ablauf: brew pruefen/installieren -> python3+tk pruefen ->
# GUI-Installer starten (Passwort-Dialog kommt von macOS selbst).
# Kein Tippen im Terminal noetig: Passwort-Eingabe laeuft ueber den
# nativen macOS-Dialog (osascript administrator privileges).
cd "$(dirname "$0")"
echo "=================================================="
echo " HMS MediaEngine Installation"
echo " (Dieses Fenster zeigt nur den Fortschritt an "
echo " alle Abfragen kommen als eigene macOS-Fenster)"
echo "=================================================="
echo ""
# Dialog mit Buttons: gibt nur bei 'Weiter' true zurueck
eingabe() {
local antwort
antwort=$(osascript -e 'display alert "'$1'" message "'$2'" buttons {"Abbrechen","Weiter"} default button "Weiter" as informational' 2>/dev/null)
echo "$antwort" | grep -q "Weiter"
}
# --- Homebrew ---
BREW=""
for p in /opt/homebrew/bin/brew /usr/local/bin/brew; do
if [ -x "$p" ]; then BREW="$p"; break; fi
done
if [ -z "$BREW" ]; then
if eingabe "Homebrew installieren?" "HMS MediaEngine benoetigt Homebrew (Paketmanager fuer macOS). Die Installation dauert einige Minuten danach geht es automatisch weiter. Das Passwort wird im naechsten Fenster von macOS abgefragt."; then
echo ""
echo ">> Installiere Homebrew (macOS fragt nach deinem Administrator-Passwort)..."
osascript -e 'do shell script "NONINTERACTIVE=1 /bin/bash -c \"$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)\"" with administrator privileges with prompt "Homebrew fuer HMS MediaEngine installieren"' >/dev/null 2>&1
if [ $? -ne 0 ]; then
osascript -e 'display alert "Homebrew-Installation fehlgeschlagen" message "Bitte das Fenster nochmal versuchen oder Meldung an den Support schicken." as critical' >/dev/null 2>&1
exit 1
fi
BREW=/opt/homebrew/bin/brew
[ -x "$BREW" ] || BREW=/usr/local/bin/brew
else
osascript -e 'display alert "Abgebrochen" message "Ohne Homebrew kann HMS MediaEngine nicht installiert werden." as informational' >/dev/null 2>&1
exit 1
fi
fi
echo ">> Homebrew gefunden: $BREW"
# --- Python 3.12 + tkinter ---
if ! "$BREW" list --versions python-tk >/dev/null 2>&1; then
if eingabe "Python-Komponenten installieren?" "python@3.12 mit tkinter (grafische Oberflaeche) wird installiert."; then
echo ""
echo ">> Installiere Python + tkinter..."
"$BREW" install python@3.12 python-tk
fi
fi
# --- GStreamer ---
if ! "$BREW" list --versions gstreamer >/dev/null 2>&1; then
if eingabe "GStreamer installieren?" "GStreamer mit allen Video-/Audio-Plugins wird installiert (ca. 5-10 Minuten, je nach Internet)."; then
echo ""
echo ">> Installiere GStreamer + Plugins..."
"$BREW" install gstreamer gst-plugins-base gst-plugins-good gst-plugins-bad gst-plugins-ugly gst-libav pygobject
fi
fi
# --- GUI-Installer starten ---
PY=/opt/homebrew/bin/python3
if [ ! -x "$PY" ]; then PY=/usr/local/bin/python3; fi
if [ ! -x "$PY" ]; then PY=python3; fi
echo ""
echo ">> Starte grafischen Installer (Fenster oeffnet sich)..."
"$PY" installer_gui.py
echo ""
echo "Fertig. Ab jetzt genuegt: 'HMS MediaEngine.app' doppelklicken."