#!/bin/bash
# Mac Mini 端：下载并安装 AICODE-2026 项目
# 运行方式：bash setup_on_mac.sh <WSL_IP>
# 示例：bash setup_on_mac.sh 192.168.31.91

set -e

WSL_IP="${1:-192.168.31.91}"
PORT=8899
ARCHIVE_NAME="aicode2026_transfer.tar.gz"
PROJECT_DEST="$HOME/Projects"
EXTRACT_DIR="/tmp/aicode_extract"

echo "=== Mac Mini 安装脚本 ==="
echo "从 WSL ($WSL_IP:$PORT) 下载项目..."
echo ""

# 1. 下载压缩包
echo "→ 下载中..."
curl -# -o "/tmp/$ARCHIVE_NAME" "http://$WSL_IP:$PORT/$ARCHIVE_NAME"

# 2. 解压
echo "→ 解压中..."
rm -rf "$EXTRACT_DIR"
mkdir -p "$EXTRACT_DIR"
tar -xzf "/tmp/$ARCHIVE_NAME" -C "$EXTRACT_DIR"

# 3. 安装项目文件
echo "→ 安装项目到 $PROJECT_DEST/AICODE-2026 ..."
mkdir -p "$PROJECT_DEST"
if [ -d "$PROJECT_DEST/AICODE-2026" ]; then
  echo "  已存在旧目录，备份为 AICODE-2026.bak"
  mv "$PROJECT_DEST/AICODE-2026" "$PROJECT_DEST/AICODE-2026.bak"
fi
tar -xzf "$EXTRACT_DIR/project.tar.gz" -C "$PROJECT_DEST"

# 4. 安装全局 Claude 配置
echo "→ 安装 Claude 全局配置到 ~/.claude ..."
if [ -d "$HOME/.claude" ]; then
  echo "  已存在 ~/.claude，备份为 ~/.claude.bak"
  mv "$HOME/.claude" "$HOME/.claude.bak"
fi
tar -xzf "$EXTRACT_DIR/claude_global.tar.gz" -C "$HOME"

# 5. 初始化 git（如果没有）
cd "$PROJECT_DEST/AICODE-2026"
if [ ! -d ".git" ]; then
  echo "→ 初始化 git 仓库..."
  git init
  git add -A
  git commit -m "Initial commit from WSL migration"
fi

# 6. 检查 Claude Code
echo ""
echo "=== 检查环境 ==="
if command -v claude &>/dev/null; then
  echo "✓ Claude Code 已安装：$(claude --version 2>/dev/null || echo '版本未知')"
else
  echo "✗ Claude Code 未安装，请运行："
  echo "  npm install -g @anthropic-ai/claude-code"
fi

if command -v python3 &>/dev/null; then
  echo "✓ Python3：$(python3 --version)"
else
  echo "✗ Python3 未安装"
fi

# 7. 清理
rm -rf "$EXTRACT_DIR" "/tmp/$ARCHIVE_NAME"

echo ""
echo "=== 完成 ==="
echo "项目位置：$PROJECT_DEST/AICODE-2026"
echo "进入项目：cd $PROJECT_DEST/AICODE-2026"
echo "启动 Claude Code：claude"
