45 lines
1.7 KiB
Bash
Executable File
45 lines
1.7 KiB
Bash
Executable File
#!/usr/bin/env bash
|
|
# =============================================================================
|
|
# ~/bin/otop — Observatoř Top Launcher (Grid Telemetry & Fleet Matrix)
|
|
# =============================================================================
|
|
ARCH="$(uname -m)"
|
|
|
|
# 0. Termux / Android Bionic: prefer local Bionic build first
|
|
if [ -d "/data/data/com.termux" ] && [ -x "$HOME/src/observator/otop/bin/otop" ]; then
|
|
exec "$HOME/src/observator/otop/bin/otop" "$@"
|
|
fi
|
|
|
|
# 1. Nativní architektura v ~/bin/arch/$ARCH/otop (glibc Linux)
|
|
if [ ! -d "/data/data/com.termux" ] && [ -x "$HOME/bin/arch/$ARCH/otop" ]; then
|
|
exec "$HOME/bin/arch/$ARCH/otop" "$@"
|
|
fi
|
|
|
|
# 2. Lokální sestavení v observator/otop
|
|
if [ -x "$HOME/src/observator/otop/bin/otop" ]; then
|
|
exec "$HOME/src/observator/otop/bin/otop" "$@"
|
|
fi
|
|
|
|
# 3. Systémově nainstalovaný otop
|
|
if [ -x "/usr/local/bin/otop" ]; then
|
|
exec "/usr/local/bin/otop" "$@"
|
|
fi
|
|
|
|
# 4. Automatické stažení pro x86_64 / aarch64 (glibc Linux) pokud chybí
|
|
if [ ! -d "/data/data/com.termux" ] && { [ "$ARCH" = "x86_64" ] || [ "$ARCH" = "aarch64" ]; }; then
|
|
mkdir -p "$HOME/bin/arch/$ARCH"
|
|
if curl -sfL "http://192.168.1.101/otop-$ARCH" -o "$HOME/bin/arch/$ARCH/otop" || \
|
|
curl -sfL "https://xn--peek-h6a.com/otop-$ARCH" -o "$HOME/bin/arch/$ARCH/otop" || \
|
|
curl -sfL "http://91.139.118.43/otop-$ARCH" -o "$HOME/bin/arch/$ARCH/otop"; then
|
|
chmod +x "$HOME/bin/arch/$ARCH/otop"
|
|
exec "$HOME/bin/arch/$ARCH/otop" "$@"
|
|
fi
|
|
fi
|
|
|
|
# 5. Fallback na standardní btop
|
|
if command -v btop >/dev/null 2>&1; then
|
|
exec btop "$@"
|
|
fi
|
|
|
|
echo "Chyba: otop ani btop nebyl nalezen pro architekturu $ARCH." >&2
|
|
exit 1
|