Ghost Downloader
构建与工作流

本地构建

使用 python deploy.py 和扩展构建命令在本地验证改动。

本地构建用于在提交 PR 前验证桌面端能被 Nuitka 打包,Feature Pack 能被复制到输出目录,浏览器扩展能通过类型检查和构建。

桌面端构建

安装 Python 依赖。

pip install --timeout=300 -r requirements.txt

在仓库根目录运行构建脚本。

python deploy.py

检查输出目录。

平台主要输出
Windows / Linuxdist/Ghost-Downloader-3.dist
macOSdist/Ghost-Downloader-3.app

deploy.py 做了什么

阶段说明
生成 Nuitka 参数根据 Windows、macOS、Linux 选择图标、Qt 插件和平台参数。
编译入口Ghost-Downloader-3.py 作为桌面端入口。
包含依赖额外包含 urllib3qrcodelibtorrentaioftp 等包。
复制 Feature Pack将带 manifest.toml 的功能包复制到构建产物。
排除黑名单jack_yao 当前在 FEATURE_PACK_BLACKLIST 中。

本地构建不是完整发布

python deploy.py 只负责生成桌面端构建产物和复制 Feature Pack。安装器、签名、DMG、deb、AppImage 等平台产物由 GitHub Actions 中的后续步骤完成。

浏览器扩展构建

cd browser_extension\app
npm install
npm run typecheck
npm run build

修改扩展桥接协议时,需要同时检查 app/services/browser_service.pybrowser_extension/app/src/background/desktop-bridge.ts

On this page