How to Use ZVM
Install
Use install
or i
to download a specific version of Zig. To install the
latest version, use “master”.
Force Install
As of v0.7.6
ZVM will now skip downloading a version if it is already installed. You can always force an install with the --force
or -f
flag.
You can also enable the old behavior by setting the new alwaysForceInstall
field to true
in
~/.zvm/settings.json
.
Install ZLS with ZVM
You can now install ZLS with your Zig download! To install ZLS with ZVM, simply
pass the --zls
flag with zvm i
. For example:
Select ZLS compatibility mode
By default, ZVM will install a ZLS build, which can be used with the given Zig version,
but may not be able to build ZLS from source.
If you want to use a ZLS build, which can be built using the selected Zig version, pass
the --full
flag with zvm i --zls
. For example:
[!IMPORTANT] This does not apply to tagged releases, e.g.:
0.13.0
Switch between installed Zig versions
Use use
to switch between versions of Zig.
List installed Zig versions
Use ls
to list all installed version of Zig.
List all versions of Zig available
The --all
flag will list the available verisons of Zig for download. Not the
versions locally installed.
List set version maps
The --vmu
flag will list set version maps for Zig and ZLS downloads.
Uninstall a Zig version
Use uninstall
or rm
to remove an uninstalled version from your system.
Upgrade your ZVM installation
As of zvm v0.2.3
you can now upgrade your ZVM installation from, well, zvm.
Just run:
The latest version of ZVM should install on your machine, regardless of where
your binary lives (though if you have your binary in a privaledged folder, you
may have to run this command with sudo
).
Clean up build artifacts
Use clean
to remove build artifacts (Good if you’re on Windows).
Run installed version of Zig without switching your default
If you want to run a version of Zig without setting it as your default, the new run
command is your friend.
This can be helpful if you want to test your project on a newer version of Zig without having to switch between bins, or on alternative flavor of Zig.
How to use with alternative VMUs
Make sure you switch your VMU before using run
.
If you would like to run the currently set Zig, please keep using the standard zig
command.
Set Version Map Source
ZVM lets choose your vendor for Zig and ZLS. This is great if your company hosts it’s own internal fork of Zig, you prefer a different flavor of the language, like Mach.
Print program help
Print global help information by running:
Print help information about a specific command or subcommand.
Print program version
Prints the version of ZVM you have installed.
Option flags
Color Toggle
Enable or disable colored ZVM output. No value toggles colors.
Enable
- on
- yes/y
- enabled
- true
Disabled
- off
- no/n
- disabled
- false
Environment Variables
ZVM_DEBUG
enables DEBUG logging for your executable. This is meant for contributors and developers.ZVM_SET_CU
Toggle the automatic upgrade checker. If you want to reenable the checker, justuset ZVM_SET_CU
.ZVM_PATH
replaces the default install location for ZVM Set the environment variable to the parent directory of where you’ve placed the.zvm
directory.
Settings
ZVM has additional setting stored in ~/.zvm/settings.json
. You can manually update version maps, toggle color support, and disable the automatic upgrade checker here. All settings are also exposed as flags or environment variables. This file is stateful, and ZVM will create it if it does not exist and utilizes it for its operation.