# devstation_for_macos **Repository Path**: duan_pj/devstation_for_macos ## Basic Information - **Project Name**: devstation_for_macos - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-11-08 - **Last Updated**: 2025-12-09 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # DevStation for macOS DevStation 是一个基于 UTM 虚拟化技术的 macOS 开发环境一键安装工具。本仓库提供了构建 DevStation 安装包(DMG)的工具和脚本。 ## 功能特性 - 🚀 **一键安装**:自动安装 UTM.app 和 DevStation 虚拟机镜像 - 📦 **DMG 打包**:将 UTM 和虚拟机镜像打包成标准的 macOS DMG 安装文件 - 🎨 **自定义图标**:支持自定义应用程序图标 - 📝 **安装日志**:在终端窗口中实时显示安装进度和日志 - ✅ **智能检测**:自动检测已安装的组件,避免重复安装 ## 系统要求 - macOS 10.14 或更高版本 - Python 3.6 或更高版本 - 已安装 `create-dmg` 工具(通过 Homebrew 安装:`brew install create-dmg`) ## 快速开始 ### 1. 安装依赖 ```bash # 安装 create-dmg(用于创建 DMG 文件) brew install create-dmg ``` ### 2. 准备资源文件 构建 DMG 需要以下文件: - **UTM.app 或 UTM.dmg**:UTM 虚拟化应用 - **DevStation_25.09.utm/**:DevStation 虚拟机镜像目录 - **DevStation.icns**(可选):应用程序图标文件 ### 3. 构建 DMG ```bash cd src python3 dmg_build.py \ --utm /path/to/UTM.app \ --vm /path/to/DevStation_25.09.utm \ --out DevStation_25.09.dmg \ --icns /path/to/DevStation.icns ``` #### 参数说明 - `--utm`:UTM.app 或 UTM.dmg 的路径(必需) - `--vm`:DevStation_25.09.utm 目录的路径(必需) - `--out`:输出的 DMG 文件名(默认:`DevStation_25.09.dmg`) - `--icns`:应用程序图标文件路径(可选) - `--outdir`:额外文件目录,该目录中的文件会被复制到 DMG 根目录(可选) #### 使用示例 ```bash # 基本用法 python3 dmg_build.py \ --utm ./UTM.app \ --vm ./DevStation_25.09.utm \ --out ./DevStation_25.09.dmg # 带自定义图标 python3 dmg_build.py \ --utm ./UTM.app \ --vm ./DevStation_25.09.utm \ --out ./DevStation_25.09.dmg \ --icns ./DevStation.icns # 如果输入是 UTM.dmg 而不是 UTM.app python3 dmg_build.py \ --utm ./UTM.dmg \ --vm ./DevStation_25.09.utm \ --out ./DevStation_25.09.dmg ``` ## 使用构建好的 DMG ### 安装步骤 1. **挂载 DMG** - 双击 `DevStation_25.09.dmg` 文件 - DMG 会在 Finder 中打开 2. **安装应用程序** - 将 `DevStation_25.09.app` 拖拽到 `Applications` 文件夹(或直接拖到 Applications 符号链接) 3. **运行安装程序** - 在 Applications 文件夹中找到 `DevStation_25.09.app` - 双击运行(首次运行可能需要右键选择"打开") - 安装脚本会自动打开终端窗口并显示安装进度 4. **处理安全提示**(如需要) - 如果 macOS 提示"无法打开,因为无法验证开发者": 1. 点击"取消" 2. 打开"系统设置" > "隐私与安全性" 3. 找到 UTM.app,点击"仍要打开" 5. **完成安装** - 安装完成后,DevStation 虚拟机会自动启动 - 如果已安装过,会直接启动虚拟机 ## 验证构建 项目提供了自验证脚本来检查构建结果: ```bash cd src python3 verify_build.py --dmg /path/to/DevStation_25.09.dmg ``` 验证脚本会检查: - DMG 文件是否存在且可挂载 - DevStation.app 结构是否完整 - 资源文件(UTM.dmg、虚拟机镜像 zip)是否存在 - 安装脚本是否可执行 ## 项目结构 ``` devstation_mac/ ├── src/ │ ├── dmg_build.py # DMG 构建脚本 │ ├── verify_build.py # 自验证脚本 │ ├── check_install_log.sh # 安装日志检查脚本 │ └── DevStation.icns # 应用程序图标 ├── doc/ │ └── 设计文档.md # 详细设计文档 └── README.md # 本文件 ``` ## 工作原理 1. **构建阶段**(`dmg_build.py`): - 如果输入是 UTM.app,会先创建 UTM.dmg - 将虚拟机镜像目录压缩为 zip 文件 - 创建 DevStation.app 应用程序结构 - 将资源文件复制到 app 内部 - 使用 `create-dmg` 创建最终的 DMG 文件 2. **安装阶段**(DevStation.app 内的脚本): - 检测 UTM.app 和虚拟机镜像是否已安装 - 挂载 UTM.dmg 并安装到 /Applications - 解压虚拟机镜像到 UTM 默认目录 - 自动启动虚拟机 ## 故障排除 ### 构建问题 **问题**:`create-dmg: command not found` - **解决**:安装 create-dmg:`brew install create-dmg` **问题**:权限错误 - **解决**:确保有足够的文件系统权限,可能需要使用 `sudo` **问题**:磁盘空间不足 - **解决**:清理临时文件或增加可用磁盘空间 ### 安装问题 **问题**:无法打开 DevStation.app - **解决**:右键点击,选择"打开",或在系统设置中允许运行 **问题**:UTM.app 安装失败 - **解决**:检查 UTM.dmg 是否完整,手动挂载并安装 UTM.app **问题**:虚拟机镜像解压失败 - **解决**:检查 zip 文件是否完整,确保有足够的磁盘空间 ## 开发文档 详细的设计文档请参考:[doc/设计文档.md](doc/设计文档.md) ## 参与贡献 1. Fork 本仓库 2. 创建特性分支(`git checkout -b feature/AmazingFeature`) 3. 提交更改(`git commit -m 'Add some AmazingFeature'`) 4. 推送到分支(`git push origin feature/AmazingFeature`) 5. 创建 Pull Request ## 许可证 本项目采用开源许可证,详情请查看 LICENSE 文件。 ## 联系方式 如有问题或建议,请通过 Issue 或 Pull Request 提交。