#!/bin/bash set -e VERSION=${VERSION:-latest} OS=$(uname -s | tr '[:upper:]' '[:lower:]') ARCH=$(uname -m) case "$ARCH" in x86_64) ARCH="amd64" ;; arm64|aarch64) ARCH="arm64" ;; *) echo "unsupported architecture: $ARCH" && exit 1 ;; esac # set install dir INSTALL_DIR="./" # resolve download url if [ "$VERSION" = "latest" ]; then URL=$(curl -fsSL https://dist.inference.sh/engine/manifest.json | grep -o "\"$OS-$ARCH\":{[^}]*}" | grep -o 'https[^"]*') else URL="https://dist.inference.sh/engine/inferencesh-engine-${VERSION}-${OS}-${ARCH}.tar.gz" fi NAME=$(basename "$URL" .tar.gz) TMP=$(mktemp -d) trap 'rm -rf "$TMP"' EXIT echo "downloading engine $VERSION for $OS-$ARCH..." curl -fsSL "$URL" -o "$TMP/engine.tar.gz" tar -xzf "$TMP/engine.tar.gz" -C "$TMP" BIN="$TMP/$NAME" chmod +x "$BIN" rm -f "$INSTALL_DIR/inferencesh-engine" mv "$BIN" "$INSTALL_DIR/inferencesh-engine" echo "installed to $INSTALL_DIR" echo "run '$INSTALL_DIR/inferencesh-engine' to start the engine" echo "run '$INSTALL_DIR/inferencesh-engine --tui' to run the engine in TUI mode" echo "run '$INSTALL_DIR/inferencesh-engine --quiet' to run the engine in quiet mode"