Dangerzone项目开发环境搭建全指南
前言
Dangerzone是一款创新的文档安全处理工具,它通过容器化技术将可疑文档转换为安全的PDF格式。本文将详细介绍如何在主流操作系统上搭建Dangerzone的开发环境,帮助开发者快速上手项目开发。
Linux系统开发环境搭建
Debian/Ubuntu环境配置
系统依赖安装
在Debian/Ubuntu系统上,首先需要安装以下基础依赖包:
sudo apt install -y podman dh-python build-essential make libqt6gui6 pipx python3 python3-dev
特别注意事项(Ubuntu 22.04用户)
Ubuntu 22.04(Jammy)版本的conmon组件存在一个已知问题,会影响Dangerzone的正常运行。解决方案如下:
- 添加专用软件源获取修复版conmon:
sudo cp ./dev_scripts/apt-tools-prod.sources /etc/apt/sources.list.d/
sudo cp ./dev_scripts/apt-tools-prod.pref /etc/apt/preferences.d/
- 或者手动安装v2.0.25以上版本的conmon
Python环境配置
推荐使用pipx安装Poetry包管理工具:
pipx ensurepath
pipx install poetry
pipx inject poetry poetry-plugin-export
安装完成后需要重新启动终端会话使环境变量生效。
Fedora环境配置
Fedora系统需要安装以下依赖:
sudo dnf install -y rpm-build podman python3 python3-devel python3-poetry-core pipx qt6-qtbase-gui
同样使用pipx安装Poetry:
pipx install poetry
pipx inject poetry
项目初始化与运行
获取源代码
git clone 危险区域项目仓库地址
cd dangerzone
安装Python依赖
poetry install
注意:如果遇到keyring提示问题,可暂时禁用keyring:
keyring --disable
构建容器镜像
python3 ./install/common/build-image.py
安装运行所需资源
poetry run assets install
运行开发版本
进入虚拟环境并运行程序:
poetry shell
# 运行CLI版本
./dev_scripts/dangerzone-cli --help
# 运行GUI版本
./dev_scripts/dangerzone
打包构建
Debian/Ubuntu系统
构建.deb安装包:
./install/linux/build-deb.py
Fedora系统
构建.rpm安装包:
./install/linux/build-rpm.py
Qubes OS特殊配置
初始设置
- 创建专用模板:
qvm-clone fedora-41 fedora-41-dz
- 创建离线模板:
qvm-create --class AppVM --label red --template fedora-41-dz \
--prop netvm="" --prop template_for_dispvms=True \
--prop default_dispvm='' dz-dvm
- 创建开发环境:
qvm-create --class AppVM --label red --template fedora-41-dz dz
qvm-volume resize dz:private $(numfmt --from=auto 20Gi)
开发模式运行
QUBES_CONVERSION=1 poetry run ./dev_scripts/dangerzone-cli --help
QUBES_CONVERSION=1 poetry run ./dev_scripts/dangerzone
macOS开发环境
前置条件
- 安装Docker Desktop(根据CPU类型选择正确版本)
- 安装Python 3.12并配置PATH
- 安装Homebrew依赖:
brew install create-dmg
项目初始化
python3 -m pip install poetry
poetry install
构建应用包
poetry run ./install/macos/build-app.py
# 如需代码签名
poetry run ./install/macos/build-app.py --with-codesign
Windows开发环境
系统准备
- 安装Docker Desktop
- 安装Python 3.12(64位)并勾选添加PATH
- 安装Microsoft C++ Build Tools
- 安装Git
项目初始化
python -m pip install poetry
poetry install
构建安装包
- 安装WiX Toolset:
dotnet tool install --global wix --version 5.0.2
wix extension add --global WixToolset.UI.wixext/5.0.2
- 构建安装包:
poetry run .\install\windows\build-app.bat
容器镜像更新
Dangerzone的容器镜像具有可重现性,每次构建都会产生相同的输出。如需更新镜像,请参考项目文档中的详细说明。
通过本文的详细指导,开发者可以在各种平台上快速搭建Dangerzone的开发环境,为项目的贡献和功能开发做好准备。
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考