A cross-platform 7z GUI built with Tauri.
See ARCHITECTURE.md, CONTRIBUTING.md, and SECURITY.md.
npm installnpm run tauri:devcargo doc --manifest-path src-tauri/Cargo.toml
Direct Cargo commands work without a separate npm run prepare:7z; the Tauri
build script refreshes ignored sidecar binaries from tracked assets before the
native build runs.
- Zinnia registers common archive file types in packaged builds.
- Windows NSIS builds add per-user Explorer verbs for
Open with ZinniaandExtract with Zinnia. - Linux
deb,rpm, and Flatpak bundles include desktopOpen,Extract, andCompressactions. - macOS users can choose Zinnia from Finder's Open With/Get Info default-app flow; Zinnia routes archive launches to the quick extract window.
- Windows:
npm run build:win - macOS:
npm run build:mac:universalthennpm run build:mac:zip - Linux:
npm run build:linux - Flatpak:
npm run flatpak:bundle
npm run release:sign:gpg
- Updater is already configured in
src-tauri/tauri.conf.json. - CI runs tests and checks on Linux, Windows, and macOS. It never builds release binaries, publishes releases, or consumes release signing secrets.
- Signed releases are intentionally explicit: run the platform-specific
release:win,release:mac, andrelease:linuxscripts for the same version. They stage updater manifests, artifacts, checksum files, and detached.ascsignatures in the matching draft GitHub release. - Do not push a release tag until every platform artifact is present and its updater signature and checksum have been verified.
