Alpha. Vary is under active development and not ready for production use. Syntax, APIs, performance, and behaviour may change between releases.
macOS
Note: Linux is the reference platform. macOS bundles a macOS JRE and the same compiler JAR as Linux, but has not been validated on real hardware. If you hit problems, use Docker instead.
Quick install
One command installs varyup (the toolchain manager) and the latest Vary toolchain.
curl -fsSL https://github.com/ccollicutt/vary/releases/latest/download/install.sh | sh
The script auto-detects Apple Silicon vs Intel. It will download varyup to ~/.vary/bin/, install the latest Vary toolchain, and install the vary compiler shim.
Then add ~/.vary/bin to your PATH. Add this line to ~/.zshrc:
export PATH="$HOME/.vary/bin:$PATH"
Note: The installer does not modify your shell profile automatically. Adding the PATH entry is a manual step by design, so nothing is changed in your environment without your knowledge.
Restart your shell, then verify:
vary --version
You should see:
Vary vX-alpha.Y
Options
| Flag | Effect |
|---|---|
--skip-toolchain | Skip automatic toolchain install |
Environment variables VARY_HOME (default: ~/.vary) and VARY_RELEASE_URL can override defaults.
Manual install
If you prefer not to pipe to sh, you can install manually:
1. Download varyup
# Apple Silicon (M1/M2/M3/M4):
mkdir -p ~/.vary/bin
curl -fSL "https://github.com/ccollicutt/vary/releases/latest/download/varyup-macos-arm64" -o ~/.vary/bin/varyup
chmod +x ~/.vary/bin/varyup
For Intel Macs, use varyup-macos-x64 instead of varyup-macos-arm64.
2. Verify checksum
curl -fSL "https://github.com/ccollicutt/vary/releases/latest/download/SHA256SUMS" -o /tmp/SHA256SUMS
cd ~/.vary/bin && grep "varyup-macos-arm64$" /tmp/SHA256SUMS | shasum -a 256 -c -
You should see varyup-macos-arm64: OK. For Intel Macs, replace arm64 with x64 in the grep pattern. If the check fails, delete the binary and retry the download.
3. Add to PATH
Add to ~/.zshrc (macOS default shell):
export PATH="$HOME/.vary/bin:$PATH"
Reload your shell and install a toolchain:
source ~/.zshrc
varyup toolchain install latest
Managing toolchains
List available versions:
varyup toolchain list-available
Install a specific version:
varyup toolchain install <version>
Short aliases are available:
varyup tc la # list-available
varyup tc i # install
Run varyup with no arguments to see all commands and aliases.
Install VS Code extension
Each toolchain bundles the Vary VS Code extension. Install it with:
varyup vscode install
See VS Code for full extension documentation.
Next steps
| Action | Link |
|---|---|
| Manage versions, update, pin per-project | varyup |
| Write your first program | Getting Started |
Run vary test on examples | Testing |
Run vary mutate on examples | Mutation testing |