github tristanisham/zvm v0.9.4
9.4 - Dedupe, Use on CD, Per-shell Zig version support, Settings TUI/JQ-style editor, http2shell mitigation, etc...

3 hours ago

ZVM v0.9.4 adds per-shell Zig versions, automatic project switching, disk deduplication, and a settings editor—plus stronger download verification and a new logo.

  • Give each shell its own Zig version. zvm env generates setup code for Bash, Zsh, Fish, and PowerShell. Once enabled, zvm use changes that shell’s version. Use zvm use --global to change the default for new shells.
  • Switch versions when entering a project. Enable zvm env --use-on-cd to select the version declared in the nearest build.zig or build.zig.zon. Missing versions produce installation instructions.
  • Save disk space with zvm dedupe. Identical files across installed versions share storage through hard links. Deduplication includes progress reporting and reclaimed-space totals. Enable zvm dedupe --auto on to deduplicate future installations automatically; this is off by default.
  • Manage settings from the CLI. zvm settings opens an interactive editor with arrow-key and Vim-style controls. Read or change individual values with commands such as zvm settings .useColor false, or validate your configuration with zvm settings --check.
  • Use your own Zig builds. Link a local build into the ZVM directory and select it with zvm use local or zvm run local version.

Download verification now checks that official Zig signatures name the requested archive, tries other mirrors after verification failures, and records verified archive hashes to detect subsequent changes. Uninstall checks are stricter, and installation protects files shared by the dedupe store.

This release also fixes download spinners that kept drawing after interrupted or unknown-length transfers, replaces regex-based ZON version detection with a proper parser, and expands zvm clean to remove unused dedupe files and stale shell links.

Release archives are built in GitHub Actions with SHA-256 checksums and build-provenance attestations. Build tooling now uses Go 1.27.3, with updated dependencies, Nix support, manpages, and release validation.

Deduplication note: editing a shared file in place changes it in every deduplicated version that shares it. Leave locally modified Zig installations out of deduplication.

Upgrade with:

zvm upgrade

For package-manager installations, use your package manager’s update command.

Don't miss a new zvm release

NewReleases is sending notifications on new releases.