#!/usr/bin/env sh set -eu BASE_URL="${EZTMUX_BASE_URL:-https://github.com/KohliNaman/eztmux-dist/releases/latest/download}" INSTALL_DIR="${EZTMUX_INSTALL_DIR:-$HOME/.local/bin}" need(){ command -v "$1" >/dev/null 2>&1 || { echo "missing required command: $1" >&2; exit 1; }; } os(){ case "$(uname -s | tr '[:upper:]' '[:lower:]')" in darwin) echo darwin;; linux) echo linux;; *) echo "unsupported OS: $(uname -s)" >&2; exit 1;; esac; } arch(){ case "$(uname -m)" in arm64|aarch64) echo arm64;; x86_64|amd64) echo amd64;; *) echo "unsupported architecture: $(uname -m)" >&2; exit 1;; esac; } need curl need tar OS="$(os)" ARCH="$(arch)" ASSET="eztmux_${OS}_${ARCH}.tar.gz" URL="${BASE_URL}/${ASSET}" TMP_DIR="$(mktemp -d)" trap 'rm -rf "$TMP_DIR"' EXIT mkdir -p "$INSTALL_DIR" echo "Installing eztmux for ${OS}/${ARCH} from $URL" curl -fsSL "$URL" -o "$TMP_DIR/eztmux.tar.gz" tar -xzf "$TMP_DIR/eztmux.tar.gz" -C "$TMP_DIR" install -m 0755 "$TMP_DIR/eztmux" "$INSTALL_DIR/eztmux" "$INSTALL_DIR/eztmux" --version case ":$PATH:" in *":$INSTALL_DIR:"*) ;; *) echo "Add this to PATH if needed: export PATH=\"$INSTALL_DIR:\$PATH\"" ;; esac