#!/bin/bash
set -e

PROJECT="dehydrate"

# RUN AS ROOT
if [[ $EUID -ne 0 ]]; then
    echo "This script must be run as root" >&2
    exit 1
fi

# 0. see if we were passed a folder to install to
# -----------------------------------------------------------------------------
INSTALL_DIR="$1"
if [[ -z "$INSTALL_DIR" ]]; then
    INSTALL_DIR="/usr/local/bin"
else
    if [[ ! -d "$INSTALL_DIR" ]]; then
        mkdir -p "$INSTALL_DIR"
    fi
fi
echo "Installing $PROJECT to $INSTALL_DIR"

# 1. Determine architecture
# ----------------------------------------------------------------------------- 

ARCH=$(uname -m)
if [[ "$ARCH" == "x86_64" ]]; then
    BIN=$PROJECT.amd64
elif [[ "$ARCH" == "aarch64" || "$ARCH" == "arm64" ]]; then
    BIN=$PROJECT.arm64
else
    echo "Unsupported architecture: $ARCH" >&2
    exit 1
fi

# 3. Download the appropriate binary
# -----------------------------------------------------------------------------

URL="https://gitea.jde.nz/public/$PROJECT/releases/download/latest/$BIN"
echo "Downloading $BIN from $URL to $TMPDIR..."

curl -fsSL -o "$INSTALL_DIR/$PROJECT" "$URL"

# 4. Make it executable
# -----------------------------------------------------------------------------
chmod +x "$INSTALL_DIR/$PROJECT"

# 6. Print success message
# -----------------------------------------------------------------------------
echo "$PROJECT installed successfully to $INSTALL_DIR/$PROJECT (arch $ARCH)"