#!/bin/sh # Installiert qpush, die Kommandozeile von quick-push. # # curl -fsSL https://qpush.hfdev.de/install.sh | sh # # Das Skript lädt eine einzelne Datei herunter und legt sie in ein # Verzeichnis deines Suchpfads. Es ändert sonst nichts an deinem System. set -e URL="https://qpush.hfdev.de/downloads/qpush-linux-amd64" SERVER="qpush.hfdev.de" betriebssystem=$(uname -s) architektur=$(uname -m) if [ "$betriebssystem" != "Linux" ]; then echo "Dieses Skript richtet qpush nur unter Linux ein (erkannt: $betriebssystem)." >&2 echo "Für macOS und Windows findest du die Binärdateien im Projektarchiv." >&2 exit 1 fi case "$architektur" in x86_64 | amd64) ;; *) echo "Es liegt nur eine Fassung für x86-64 bereit (erkannt: $architektur)." >&2 exit 1 ;; esac if command -v curl > /dev/null 2>&1; then lade() { curl -fsSL "$1" -o "$2"; } elif command -v wget > /dev/null 2>&1; then lade() { wget -qO "$2" "$1"; } else echo "Es wird curl oder wget benötigt." >&2 exit 1 fi # Zielverzeichnis: bevorzugt systemweit, sonst im Heimatverzeichnis. if [ -w /usr/local/bin ]; then ziel=/usr/local/bin else ziel="$HOME/.local/bin" mkdir -p "$ziel" fi temp=$(mktemp) trap 'rm -f "$temp"' EXIT INT TERM echo "Lade qpush von $URL …" lade "$URL" "$temp" chmod 755 "$temp" mv "$temp" "$ziel/qpush" trap - EXIT INT TERM echo "qpush liegt jetzt unter $ziel/qpush." case ":$PATH:" in *":$ziel:"*) ;; *) echo "" echo "Hinweis: $ziel steht nicht in deinem PATH. Ergänze in deiner Shell-Konfiguration:" echo " export PATH=\"$ziel:\$PATH\"" ;; esac echo "" echo "Weiter geht es mit:" echo " qpush login $SERVER" echo "" echo "Tab-Vervollständigung für deine Shell einrichten:" echo " qpush completion install"