Skip to content

hendriknielaender/zvm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

zvm logo

⚡ Zig Version Manager (zvm)

⚡ Fast and simple zig version manager


zvm is a command-line tool that allows you to easily install, manage, and switch between multiple versions of Zig.

Features

  • List available Zig/zls versions (both remote and local).
  • Install specific Zig or zls versions.
  • Switch between installed Zig or zls versions.
  • Remove installed Zig or zls versions.
  • Display the current zvm version and helpful usage information.

Install

To install zvm with Homebrew, aka. brew, run the following commands:

brew tap hendriknielaender/zvm
brew install zvm

Now add this line to your ~/.bashrc, ~/.profile, or ~/.zshrc file.

export PATH="$HOME/.zm/current/zig:$PATH"

Windows

PowerShell

irm https://raw.githubusercontent.com/hendriknielaender/zvm/master/install.ps1 | iex

Command Prompt

powershell -c "irm https://raw.githubusercontent.com/hendriknielaender/zvm/master/install.ps1 | iex"

Usage

General Syntax:

zvm <command> [arguments]

Available Commands:

  • zvm ls or zvm list
    Lists all available versions of Zig or zls remotely by default.
    Use --system to list only locally installed versions.

    zvm ls
    zvm ls --system
    zvm ls zls --system
  • zvm i or zvm install
    Installs the specified version of Zig or zls.

    zvm install <version>         # Installs Zig and zls for the specified version
    zvm install zig <version>     # Installs only Zig for the specified version
    zvm install zls <version>     # Installs only zls for the specified version
  • zvm use
    Switches to using the specified installed version of Zig or zls.

    zvm use <version>         # Use this version of Zig and zls if installed
    zvm use zig <version>     # Use this version of Zig only
    zvm use zls <version>     # Use this version of zls only
  • zvm remove
    Removes the specified installed version of Zig or ZLS.

    zvm remove <version>      # Removes this version of Zig and/or zls if installed
    zvm remove zig <version>  # Removes only the specified Zig version
    zvm remove zls <version>  # Removes only the specified zls version
  • zvm clean Remove old download artifacts.

  • zvm --version
    Displays the current version of zvm.

  • zvm --help
    Displays detailed usage information.

Examples:

# List all available remote Zig versions
zvm ls

# List all installed local Zig versions
zvm ls --system

# List all installed local zls versions
zvm ls zls --system

# Install Zig version 0.12.0
zvm install 0.12.0

# Use Zig version 0.12.0
zvm use zig 0.12.0

# Remove Zig version 0.12.0
zvm remove zig 0.12.0

# Remove old download artifacts.
zvm clean

Compatibility Notes

Zig is in active development and the APIs can change frequently, making it challenging to support every dev build. This project currently aims to be compatible with stable, non-development builds to provide a consistent experience for the users.

Supported Version: As of now, zvm is tested and supported on Zig version 0.13.0.

Contributing

Contributions, issues, and feature requests are welcome!

Clarification

Please note that our project is not affiliated with ZVM maintained by @tristanisham. Both projects operate independently, and any similarities are coincidental.