#!/bin/bash
set -e

DMG_URL="https://github.com/borawong/AiMaMi/releases/download/v1.0.1/AiMaMi-1.0.1-universal.dmg"
DMG_PROXY_URLS=(
  "https://gh-proxy.com/${DMG_URL}"
  "https://gh.llkk.cc/${DMG_URL}"
  "https://ghproxy.net/${DMG_URL}"
)
EXPECTED_SHA256="bd8d0526eaba753c451a9c3f20171d564602165b7118474131c060ae73485cbc"
APP_NAME="AiMaMi"

echo "=== AiMaMi 安装 ==="

# 检查 macOS 版本
OS_VER=$(sw_vers -productVersion)
if [[ "$(printf '%s\n' "12.0" "$OS_VER" | sort -V | head -1)" != "12.0" ]]; then
  echo "❌ 需要 macOS 12.0 以上，当前 $OS_VER"
  exit 1
fi

# 下载
TMP_DMG="/tmp/AiMaMi-1.0.1.dmg"
echo "📥 下载中..."
rm -f "$TMP_DMG"
DOWNLOAD_OK=0
for url in "$DMG_URL" "${DMG_PROXY_URLS[@]}"; do
  echo "尝试下载：$url"
  if curl -L --fail --connect-timeout 15 --max-time 180 -o "$TMP_DMG" "$url"; then
    DOWNLOAD_OK=1
    break
  fi
done

if [[ "$DOWNLOAD_OK" != "1" ]]; then
  echo "❌ 下载失败，请检查网络或手动下载 DMG"
  exit 1
fi

ACTUAL_SHA256="$(shasum -a 256 "$TMP_DMG" | awk '{print $1}')"
if [[ "$ACTUAL_SHA256" != "$EXPECTED_SHA256" ]]; then
  echo "❌ SHA256 校验失败"
  echo "期望：$EXPECTED_SHA256"
  echo "实际：$ACTUAL_SHA256"
  rm -f "$TMP_DMG"
  exit 1
fi

# 挂载
echo "📦 挂载中..."
hdiutil detach "/Volumes/$APP_NAME" -quiet 2>/dev/null || true
hdiutil attach "$TMP_DMG" -nobrowse -quiet
VOLUME="/Volumes/$APP_NAME"

# 安装
echo "📋 安装到 /Applications..."
rm -rf "/Applications/$APP_NAME.app"
cp -R "$VOLUME/$APP_NAME.app" /Applications/

# 卸载镜像
hdiutil detach "$VOLUME" -quiet

# 去隔离
xattr -dr com.apple.quarantine "/Applications/$APP_NAME.app" 2>/dev/null || true

# 清理
rm -f "$TMP_DMG"

echo "✅ 完成，启动中..."
open -a "$APP_NAME"
