#!/usr/bin/env bash
set -euo pipefail
KIT_ROOT="${1:?usage: install-in-wsl.sh <kit-root>}"
INSTALL_ROOT="${INSTALL_ROOT:-/root/essence-registry}"

echo "[wsl] install docker debs"
cd "$KIT_ROOT/host/docker-debs"
dpkg -i ./*.deb
service docker start 2>/dev/null || true
sleep 2
docker version >/dev/null

echo "[wsl] unpack offline-kit to $INSTALL_ROOT"
mkdir -p "$INSTALL_ROOT"
python3 - <<PY
import shutil
import zipfile
from pathlib import Path
z = Path(r"$KIT_ROOT") / "essence-research" / "essence-registry-offline-kit.zip"
root = Path(r"$INSTALL_ROOT")
unpack = Path("/tmp/essence-unpack")
if unpack.exists():
    shutil.rmtree(unpack)
with zipfile.ZipFile(z) as zf:
    zf.extractall(unpack)
src = unpack / "offline-kit"
if not src.is_dir():
    src = unpack
for item in src.iterdir():
    dest = root / item.name
    if item.is_dir():
        shutil.copytree(item, dest, dirs_exist_ok=True)
    else:
        shutil.copy2(item, dest)
print("unpacked", src, "->", root)
PY

echo "[wsl] docker network 1panel-network"
docker network inspect 1panel-network >/dev/null 2>&1 || docker network create 1panel-network

echo "[wsl] load images and start"
cd "$INSTALL_ROOT"
chmod +x load-images.sh start-offline.sh stop-offline.sh 2>/dev/null || true
./load-images.sh
./start-offline.sh

VIEWER_TAR="$KIT_ROOT/essence-viewer/essence-viewer-v3.9.1.tar"
if [[ -f "$VIEWER_TAR" ]]; then
  echo "[wsl] docker load viewer"
  docker load -i "$VIEWER_TAR"
fi

echo "[wsl] done. open http://127.0.0.1:8787/  demo / demo123"
docker compose -f docker-compose.offline.yml ps || true
