Freedom251 › Runtime Version Managers
ZVM

What ZVM is
ZVM is a free, open-source version manager for the Zig programming language. It installs multiple Zig releases and switches among them, including the newest nightly with `master`, the latest stable tag with `stable`, or a specified version. The `use` command changes the active version, while `run` executes one without changing the default; when no known version is supplied, `run` checks a project’s `build.zig.zon` for `.minimum_zig_version`. Aliases provide memorable names for install, use, run, and remove commands. ZVM can install ZLS with `--zls` and documents VS Code configuration for ZVM-managed tools. Version maps support Zig or ZLS vendors such as Mach and custom URLs. Downloads can use custom mirrors or ziglang.org. Checksums are verified by default, with `--skip-shasum` disabling that check. It is a static single binary with no system dependencies, installable by scripts, Go, or manual build. Supported systems include Windows, Linux, macOS, BSD variants, Solaris, and listed Linux architectures.
Who it suits
ZVM suits developers who need different Zig versions for projects or frequent updates. It also helps users managing ZLS, custom mirrors, or version maps.
What it does well
- Installs nightly, stable, or specified Zig versions
- Runs versions without changing the default
- Installs ZLS alongside Zig
- Supports custom version maps and mirrors
- Verifies download checksums by default
What to know first
- No free trial because it is open source
- Checksum checks can be disabled
- Some listed architectures are Linux-only
Verdict
ZVM provides version installation, switching, project-aware execution, and ZLS setup in a dependency-free binary. Its mirror, vendor, alias, and checksum options suit developers with varied Zig toolchain needs.
Facts from ZVM's own pages
- Aliases
- Users can assign memorable aliases to installed Zig versions and use them in install, use, run, and remove commands. · zvm.app, 7 Oct 2026
- Company information
- The opened ZVM pages identify the software and its GitHub repository but do not state a maker company name, headquarters, or founding date. · zvm.app, 7 Oct 2026
- Custom mirrors
- Users can configure a custom mirror distribution server or restore the official mirror list. · zvm.app, 8 Oct 2026
- Custom Zig distributions
- Users can choose a version map source for Zig or ZLS, including a company-hosted fork or Mach. · zvm.app, 8 Oct 2026
- Distribution
- ZVM is a static single binary with no system dependencies and can be installed using shell scripts, Go, or a manual build. · zvm.app, 7 Oct 2026
- Download verification
- ZVM warns and asks for confirmation when installing development builds without a version-map SHA-256 checksum; `--skip-shasum` disables checksum verification. · zvm.app, 8 Oct 2026
- Installation and support
- Installation instructions cover shell scripts for Unix-like systems and PowerShell for Windows, and the site links to documentation and GitHub source code. · zvm.app, 8 Oct 2026
- Intended users
- The maker describes ZVM as useful for developers who need multiple Zig versions to compile projects as the language changes. · zvm.app, 8 Oct 2026
- Mirrors
- Users can configure a custom mirror distribution server or bypass mirrors to download Zig directly from ziglang.org. · zvm.app, 7 Oct 2026
- Project version handling
- When `zvm run` receives no known Zig version as its first argument, it checks the current project's `build.zig.zon` for `.minimum_zig_version`. · zvm.app, 8 Oct 2026
- Purpose
- ZVM installs and switches between different versions of the Zig programming language. · zvm.app, 8 Oct 2026
- Run without switching
- The `zvm run` command can run a selected Zig version without changing the default version. · zvm.app, 8 Oct 2026
- Security check
- ZVM verifies checksums for downloads by default, while `--skip-shasum` disables checksum verification for Zig and ZLS downloads. · zvm.app, 7 Oct 2026
- Support
- The `zvm bug` command opens a prefilled GitHub issue draft, which the user reviews and submits themselves. · zvm.app, 7 Oct 2026
- Supported architectures
- The listed architectures are amd64, arm64, loong64 on Linux, and ppc64le on Linux. · zvm.app, 8 Oct 2026
- Supported operating systems
- The supported operating systems listed are Windows, Linux, macOS, FreeBSD, NetBSD, OpenBSD, and Solaris. · zvm.app, 8 Oct 2026
- Supported systems
- The supported operating systems listed are Windows, Linux, macOS, FreeBSD, NetBSD, OpenBSD, and Solaris. · zvm.app, 7 Oct 2026
- Version maps
- Users can choose a Zig or ZLS vendor through a version map, including Mach, or configure a custom version map URL. · zvm.app, 7 Oct 2026
- Version selection
- It can install the latest nightly with `master`, the latest stable tagged release with `stable`, or a specified version. · zvm.app, 8 Oct 2026
- Version switching
- The `zvm use` command switches among Zig versions already installed on the machine. · zvm.app, 8 Oct 2026
- VS Code integration
- The documentation explains how to configure the VSCode Zig extension to use Zig and ZLS installed under `~/.zvm/bin`. · zvm.app, 7 Oct 2026
- VS Code setup
- The maker documents configuring the Zig extension in VS Code to use ZVM-managed Zig and ZLS paths. · zvm.app, 8 Oct 2026
- ZLS
- ZVM can install the Zig Language Server alongside Zig using the `--zls` flag. · zvm.app, 8 Oct 2026
- ZLS integration
- ZVM can install the Zig Language Server alongside Zig using the `--zls` flag. · zvm.app, 7 Oct 2026
Where ZVM stands on Freedom251
- Runtime Version Managers#27 of 30