#!/bin/bash
set -e

echo "=== 1. 更新系统 ==="
sudo apt update && sudo apt upgrade -y

echo "=== 2. 安装基础工具 ==="
sudo apt install -y \
    build-essential pkg-config cmake nasm yasm \
    git curl wget xz-utils rsync \
    autoconf automake libtool ca-certificates \
    docker.io dpkg-dev

echo "=== 3. 配置 Docker ==="
sudo usermod -aG docker $USER
sudo systemctl enable --now docker

echo "=== 4. 安装 Rust ==="
if ! command -v cargo &> /dev/null; then
    curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --default-toolchain stable
    source "$HOME/.cargo/env"
fi

echo "=== 5. 安装 cross ==="
if ! command -v cross &> /dev/null; then
    cargo install cross --locked
fi

echo "=== 6. 安装 Node.js ==="
if ! command -v node &> /dev/null; then
    curl -fsSL https://deb.nodesource.com/setup_24.x | sudo -E bash -
    sudo apt install -y nodejs
fi

echo ""
echo "=== 安装完成 ==="
echo "请执行以下操作使 docker 组生效："
echo "  1. 执行: newgrp docker"
echo "  2. 或重新登录终端"
echo ""
echo "然后运行: source \$HOME/.cargo/env"