这个项目能做什么
Zinnia 是基于 Tauri 构建的 7-Zip 归档处理图形前端,面向 Windows、macOS 和 Linux 分发。README 将其定位为通过原生 GUI 而非命令行操作的桌面归档工具,打包和安装程序工作旨在让归档操作可从操作系统本身访问。
README 中的平台支持说明:macOS 26 或更高版本,通用构建覆盖能运行该版本的 Intel 和 Apple Silicon 机型;Windows 10 版本 2004(构建 19041)或更高版本的 x64 或 ARM64;Linux x64 适用于 Ubuntu 24.04+、Debian 13+ 或 Fedora 43+(或具有所需 WebKitGTK 运行时兼容发行版)。公共 Linux 发布版本提供 x64 AppImage、DEB、RPM 及侧载 Flatpak 包,而 ARM64 AppImage/DEB/RPM 仅在为发布显式构建时才提供,Flatpak 仍为 x64。
一个显著重点是操作系统集成。打包构建注册了常见的归档文件类型。在 Windows 上,NSIS 构建添加了面向用户的资源管理器命令,包括"使用 Zinnia 打开"、"使用 Zinnia 解压"和"使用 Zinnia 压缩"作为经典回退,包括通过资源管理器"显示更多选项"的路径。签名 Windows NSIS 构建还通过稀疏标识 MSIX 和 zinnia_shell.dll 注册 Windows 11 现代上下文菜单,为归档文件提供 Zinnia 子菜单和顶级"解压"条目;一旦现代注册成功,经典命令将被移除以避免叠加,若包注册失败则保留为回退。README 指出 Zinnia 保持正常的面用户 NSIS Win32 安装,MSIX 不是应用商店/AppX 应用包,仅提供包身份以便资源管理器加载 shell DLL。
在 Linux 上,deb、rpm 和 Flatpak 包包含桌面打开、解压和压缩操作。在 macOS 上,用户可以通过访达的"打开方式/获取信息"默认应用流程选择 Zinnia,归档启动路由到快速解压窗口。打包构建还暴露 Finder Sync 上下文菜单项和用于"使用 Zinnia 解压"和"使用 Zinnia 压缩"的访达服务;Finder Sync 仅监控桌面、文稿、下载、影片、音乐、图片和当前挂载卷,对于其他位置的文件建议使用访达服务。
开发指令遵循标准 Tauri 项目惯例:npm install、npm run tauri:dev,以及对 src-tauri/Cargo.toml 执行 cargo doc。直接 Cargo 命令无需单独准备步骤即可工作,因为 Tauri 构建脚本会在原生构建运行前刷新从跟踪资产中提取的被忽略的旁路二进制文件。
构建脚本按平台命名:build:win、build:mac:universal 后接 build:mac:zip、build:linux(或 build:linux:x64)、build:linux:arm64 用于原生 ARM64 环境,以及 flatpak:bundle。可通过 GPG 脚本进行发布签名。
README 还详细记录了更新和发布流程:更新器配置在 src-tauri/tauri.conf.json 中;CI 在 Linux、Windows 和 macOS 上运行测试和检查,但从不构建发布版本、发布发布内容或使用发布签名密钥。签名发布是显式的,各平台发布脚本将更新器清单、制品、校验和文件和分离签名放入同一版本的 GitHub 发布草稿中。Beta 续期脚本自动将 VM 的 beta 清单同步到最新稳定发布源,即使在标签仍处于草稿状态时也是如此,因为 beta 客户端轮询实时源;还有一个独立的同步脚本用于恢复。提供了针对草稿和已发布发布的验证步骤,检查预期的目标矩阵、版本和更新器制品签名及校验和。还包括处理 GitHub 临时未标记草稿标识符的指导,以及恢复绑定到特定提交、锁定文件、平台、架构和工具链的现有发布准备会话的指南,还有将包版本复制到原生清单、changelog 下载 URL 和 AppStream 元数据的版本传播脚本。README 最后警告不要在每个平台制品都存在且其更新器签名和校验和验证完成之前推送发布标签。
其他项目文档通过 ARCHITECTURE.md、CONTRIBUTING.md 和 SECURITY.md 引用,仓库中还包含 Windows shell 和 QA 上下文菜单说明。
评论
0 评分人数达到10人后显示
登录后参与讨论。