#!/bin/sh
set -eu

: "${MBR_INSTALL_DIR:=$HOME/.local/bin}"
: "${MBR_REF:=v0.8.1}"

if ! command -v git >/dev/null 2>&1; then
  echo "mbr preview install requires git" >&2
  exit 1
fi

if ! command -v go >/dev/null 2>&1; then
  echo "mbr preview install requires Go 1.26+" >&2
  exit 1
fi

tmp_dir="$(mktemp -d)"
cleanup() {
  rm -rf "$tmp_dir"
}
trap cleanup EXIT INT TERM

if ! git clone --depth 1 --branch "$MBR_REF" https://github.com/MoveBigRocks/platform.git "$tmp_dir/mbr-src" >/dev/null 2>&1; then
  git clone --depth 1 https://github.com/MoveBigRocks/platform.git "$tmp_dir/mbr-src" >/dev/null 2>&1
fi

mkdir -p "$MBR_INSTALL_DIR"
cd "$tmp_dir/mbr-src"
go build -o "$MBR_INSTALL_DIR/mbr" ./cmd/mbr

echo "Installed mbr to $MBR_INSTALL_DIR/mbr"
echo "Add $MBR_INSTALL_DIR to PATH if needed."
