#!/usr/bin/env bash
# Nexus: bundle the AngelAuraMC Android JREs (8/17/21/25, arm64) into the APK assets,
# in the "binpack" layout the launcher expects (universal.tar.xz + bin-<arch>.tar.xz + version).
# Same runtimes the upstream launcher downloads on demand (NewJREUtil.getJreSource).
set -euo pipefail
cd "$(dirname "$0")/.."
CACHE="${JRE_CACHE:-/root/jre}"
ARCH=arm64
mkdir -p "$CACHE"
declare -A DEST=([8]=jre [17]=jre-new [21]=jre-21 [25]=jre-25)
EMPTY="$CACHE/empty.tar.xz"
[ -f "$EMPTY" ] || (d=$(mktemp -d); tar -C "$d" -cf - --files-from /dev/null | xz -9 > "$EMPTY"; rmdir "$d")
for v in 8 17 21 25; do
  tarball="$CACHE/jre$v-$ARCH.tar.xz"
  [ -s "$tarball" ] || curl -fL -o "$tarball" \
    "https://github.com/AngelAuraMC/angelauramc-openjdk-build/releases/download/download_jre$v/jre$v-android-$ARCH.tar.xz"
  out="app_pojavlauncher/src/main/assets/components/${DEST[$v]}"
  rm -rf "$out"; mkdir -p "$out"
  cp "$tarball" "$out/universal.tar.xz"
  cp "$EMPTY" "$out/bin-$ARCH.tar.xz"
  printf 'nexus-jre%s-%s' "$v" "$(sha1sum "$tarball" | cut -c1-12)" > "$out/version"
  echo "bundled Java $v -> $out ($(cat "$out/version"))"
done
