ekil1100/zigup
A simple Zig version manager for Linux and macOS - install, switch, and manage multiple Zig versions
A Zig version manager - install, manage, and switch between multiple Zig versions.
# Clone and build
git clone https://github.com/yourusername/zigup.git
cd zigup
zig build
# Copy to your PATH
cp zig-out/bin/zigup ~/.local/bin/
# Ensure ~/.local/bin is in your PATH
export PATH="$HOME/.local/bin:$PATH"
# Install latest stable version and set as default
zigup install latest --default
# Install specific version
zigup install 0.13.0
# Install master (development) version
zigup install master
# Switch to a different installed version
zigup use 0.13.0
# List installed versions
zigup list
# List all available versions
zigup list -r
# Uninstall a version
zigup uninstall 0.11.0
i
= install
rm
= uninstall
ls
= list
# These are equivalent
zigup install 0.13.0
zigup i 0.13.0
zigup list
zigup ls
~/.zigup/
├── cache/ # Download cache
│ ├── index.json # Version index
│ └── zig-linux-x86_64-*.tar.xz
├── versions/ # Installed versions
│ ├── 0.11.0/
│ ├── 0.13.0/
│ └── master/
└── current # Current version (text file)
~/.local/bin/zig -> ~/.zigup/versions/0.13.0/zig
zigup automatically detects your platform at runtime:
# Build
zig build
# Run with arguments
zig build run -- install latest
# Run tests
zig build test
This is a learning project with the following educational objectives:
See CLAUDE.md for development notes and architecture details.
curl
(for downloads)tar
(for extraction)MIT