Skip to content

跨平台构建与分发

平台边界

Windows、macOS 和 Linux 桌面应用需要各自的原生工具链。Windows 本机不能可靠生成和签名 macOS DMG,普通 Linux 容器也不能替代 macOS 原生构建环境。

PetPack 提供两种可验证的跨平台路径:目标设备轻量构建,或 GitHub Actions 原生 runner 构建。

当前平台成品和跨平台构建包

发布方式产物适用场景
当前平台成品当前系统运行程序、petpack.bundle、说明和 ZIP当前设备使用,或分发给相同平台和架构的用户
跨平台构建包宠物资源、构建请求、轻量 builder 和目标设备脚本分发到不同操作系统,在目标设备生成原生桌宠

目标设备构建流程

  1. 在 Studio 导入并验证宠物。
  2. 在“发布桌宠”区域选择“导出跨平台构建包”。
  3. 将生成的 ZIP 分发到目标设备。
  4. 解压后双击 START-HERE.html,按接收设备选择一键入口:
    • Windows:双击 BUILD-WINDOWS.cmd
    • macOS:右键 BUILD-MAC.command 并选择“打开”;
    • Linux:运行 BUILD-LINUX.sh
  5. output/ 获取原生桌宠目录和 ZIP。

构建包结构:

text
petpack-cross-platform/
├── petpack.bundle/
├── build-request.json
├── builders/
├── START-HERE.html
├── BUILD-WINDOWS.cmd
├── BUILD-MAC.command
├── BUILD-LINUX.sh
├── build-here.ps1
├── build-here.sh
└── README.md

接收端不需要完整 Studio,也不需要 Codex。一键入口会检查构建器;若接力包未携带对应版本,首次运行会从固定的 PetPack Builder Release 自动下载,随后执行构建并打开 output/。失败时终端窗口会保留明确错误,不会一闪而过。

首次自动下载需要能访问 GitHub Release。下载失败时,START-HERE.html 会给出构建器发布页,可手动下载并解压到 builders/。Windows 可执行文件仍不能直接生成 macOS .app;macOS 构建器会按 Apple Silicon 或 Intel 自动选择。

GitHub Actions 原生构建

仓库包含三套工作流:

工作流用途
build.yml构建 Studio 的 Windows NSIS、macOS DMG、Linux AppImage/DEB
build-builders.yml构建 Windows、macOS、Linux 轻量 builder
build-pet.yml从可下载的跨平台构建包生成各平台桌宠

运行 build-pet.yml 时填写 source_url。工作流会下载、检查并解压构建包,然后在原生 runner 上调用对应 builder。

Studio Release 产物

正式 Release 建议包含:

  • Windows x64 NSIS;
  • macOS Apple Silicon DMG;
  • macOS Intel DMG;
  • Linux x64 AppImage;
  • Debian/Ubuntu x64 DEB;
  • SHA256SUMS.txt
  • 简短更新说明和未签名提示。

代码签名

未配置证书时,CI 只能生成未商业签名的社区构建:

  • Windows 正式公开分发建议使用 Authenticode 代码签名;
  • macOS 建议使用 Developer ID、Hardened Runtime、公证和 stapling;
  • Linux 可根据发行版补充仓库签名或包签名。

未签名包的首次启动方法见常见问题与排错

Docker 的作用

Docker Web Studio 提供与桌面版一致的导入、校验、逐行动画预览和接力包导出流程,但不显示“构建当前 Linux 平台”。容器中可以挂载由原生 runner 预构建的 builder;容器 Linux 不被视为用户的目标设备,也不负责生成或签名 macOS 原生应用。详见 Docker Web 版

Released under the MIT License.