# 打包指南

## Windows 系统打包

### 构建前端
```bash
npm run web:build
```

### 打包可执行文件（推荐）
```bash
npm run build-win
```
生成：`dist/CapCut-Mate-win32-x64/` 文件夹

### 打包安装包（需要网络）
```powershell
# 清除代理
npm config delete proxy
npm config delete https-proxy

# 打包
npm run build-win-installer
```
生成：`dist/capcut-mate-windows-x64-installer.exe`

## Mac 系统打包

### 方案一：使用 Mac 电脑（推荐开发测试）
在 Mac 电脑上执行：
```bash
npm run web:build
npm run build-mac          # 生成可执行文件
npm run build-mac-installer  # 生成 .dmg 安装包
```

### 方案二：使用 GitHub Actions（正式发布）

**重要**：GitHub Actions 现在仅用于正式发布，不再使用 artifacts 临时下载。

**发布流程**：
1. 创建版本标签：
   ```bash
   git tag v1.0.0
   git push origin v1.0.0
   ```
2. GitHub Actions 会自动构建所有平台（Windows + macOS）
3. 构建完成后自动发布到 GitHub Releases（不受 Actions 配额限制）
4. 用户从 Releases 页面下载安装包

**下载地址**：
```
https://github.com/javalittlebird/capcut-electron/releases
```

**注意事项**：
- macOS 构建仅在 tag 触发时运行，避免占用 GitHub 存储配额
- Release Assets 不受 Actions 配额限制，可以长期保存
- GitHub Actions 会自动生成正确的 macOS 图标格式
- 新版本已包含 macOS 文件权限配置

**安装说明**：
安装后用户需要执行以下命令解除隔离：
```bash
sudo xattr -rd com.apple.quarantine /Applications/剪映小助手.app
```

**图标说明**：
- 确保源图标 `assets/icons/logo.png` 为 1024x1024 像素的 PNG
- GitHub Actions 会在 macOS 系统上自动生成正确的 `.icns` 文件
- 如果手动构建，可以运行 `npm run icon:mac` 生成图标

详见：
- [macOS 安装指南](./mac-install-guide.md)
- [macOS 图标指南](./mac-icon-guide.md)
- [发布流程指南](./RELEASE-GUIDE.md)

### 方案三：使用云服务
- GitHub Codespaces
- MacStadium
- CircleCI (支持 macOS runner)

## 常见问题

### 网络问题
在 `.npmrc` 中设置镜像：
```
ELECTRON_MIRROR=https://npmmirror.com/mirrors/electron/
```

### 代理问题
```powershell
npm config delete proxy
npm config delete https-proxy
$env:HTTP_PROXY=""
$env:HTTPS_PROXY=""
```

### Docker Desktop 无法打包 Mac 版本
Docker Desktop 运行的是 Linux 容器，无法生成真正的 macOS 应用（.app 或 .dmg）。必须使用：
1. 真实的 Mac 电脑
2. GitHub Actions（提供 macOS runner）
3. 其他云 Mac 服务
