#!/usr/bin/env bash set -euo pipefail repo="${CODEX_TMUX_SCROLL_REPO:-GuanhuaYe/codex-tmux-scroll}" version="${CODEX_TMUX_SCROLL_VERSION:-latest}" install_root="${CODEX_TMUX_SCROLL_INSTALL_ROOT:-$HOME/.local/lib/codex-tmux-scroll}" bin_dir="${CODEX_TMUX_SCROLL_BIN_DIR:-$HOME/.local/bin}" os="$(uname -s | tr '[:upper:]' '[:lower:]')" arch="$(uname -m)" case "${os}:${arch}" in linux:x86_64 | linux:amd64) target="x86_64-unknown-linux-gnu" ;; *) echo "Unsupported platform: ${os}/${arch}" >&2 echo "Currently supported: Linux x86_64" >&2 exit 1 ;; esac asset="codex-tmux-scroll-${target}.tar.gz" if [[ "${version}" == "latest" ]]; then url="https://github.com/${repo}/releases/latest/download/${asset}" else url="https://github.com/${repo}/releases/download/${version}/${asset}" fi tmpdir="$(mktemp -d)" trap 'rm -rf "${tmpdir}"' EXIT echo "Downloading ${url}" curl -fL "${url}" -o "${tmpdir}/${asset}" mkdir -p "${install_root}" "${bin_dir}" tar -xzf "${tmpdir}/${asset}" -C "${install_root}" install_root_quoted="$(printf '%q' "${install_root}")" cat > "${bin_dir}/codex-tmux-scroll" <&2 ;; esac