#!/bin/sh set -e REPO="charlie0077/tmux-manager" BIN="tmux-manager" INSTALL_DIR="/usr/local/bin" # Detect OS OS=$(uname -s | tr '[:upper:]' '[:lower:]') case "$OS" in linux) OS="linux" ;; darwin) OS="darwin" ;; *) echo "Unsupported OS: $OS" exit 1 ;; esac # Detect arch ARCH=$(uname -m) case "$ARCH" in x86_64) ARCH="amd64" ;; aarch64 | arm64) ARCH="arm64" ;; *) echo "Unsupported architecture: $ARCH" exit 1 ;; esac # Get latest release tag LATEST=$(curl -fsSL "https://api.github.com/repos/${REPO}/releases/latest" \ | grep '"tag_name"' | head -1 | sed 's/.*"tag_name": *"\([^"]*\)".*/\1/') if [ -z "$LATEST" ]; then echo "Could not determine latest release. Check https://github.com/${REPO}/releases" exit 1 fi FILENAME="${BIN}_${OS}_${ARCH}" URL="https://github.com/${REPO}/releases/download/${LATEST}/${FILENAME}" echo "Installing ${BIN} ${LATEST} (${OS}/${ARCH})..." TMP=$(mktemp) curl -fsSL "$URL" -o "$TMP" chmod +x "$TMP" if [ -w "$INSTALL_DIR" ]; then mv "$TMP" "${INSTALL_DIR}/${BIN}" else sudo mv "$TMP" "${INSTALL_DIR}/${BIN}" fi echo "Installed to ${INSTALL_DIR}/${BIN}" echo "Run: ${BIN}"