wowlua is one binary with no runtime to install. The install scripts download
a release from GitHub Releases,
check its SHA-256 checksum and put the binary in ~/.wowlua/bin. Releases are
built for macOS, Linux and Windows, each on x86_64 and arm64.
macOS and Linux
Run the install script in a terminal:
curl -fsSL https://github.com/DomenikIrrgang/wowlua/releases/latest/download/install.sh | shIt installs ~/.wowlua/bin/wowlua. When that folder is not on your PATH
yet, the script says so. Add it to your shell profile (~/.zshrc,
~/.bashrc, …) and open a new terminal:
export PATH="$HOME/.wowlua/bin:$PATH"The Linux builds are for glibc (x86_64-unknown-linux-gnu,
aarch64-unknown-linux-gnu).
Windows
Run the installer in PowerShell:
irm https://github.com/DomenikIrrgang/wowlua/releases/latest/download/install.ps1 | iexIt puts wowlua.exe in $HOME\.wowlua\bin, and says so when that folder is
not on your PATH yet. To add it for your user, run this once and open a new
terminal:
[Environment]::SetEnvironmentVariable("Path", [Environment]::GetEnvironmentVariable("Path", "User") + ";$HOME\.wowlua\bin", "User")From source
Building from source needs Rust 1.96 or newer:
git clone https://github.com/DomenikIrrgang/wowluacd wowluacargo install --path crates/wowlua-cliCargo puts the binary in ~/.cargo/bin. A build from source has everything
on main, including work that is not in a release yet.
Check the install
wowlua --versionwowlua 0.9.0wowlua help lists every command, and wowlua help <command> shows its
options. The CLI reference describes them all.
Update or pin a version
Run the installer again to update to the latest release. Two environment variables change what it installs and where:
| Variable | Default | Effect |
|---|---|---|
WOWLUA_VERSION |
latest |
The release tag to install, for example v0.9.0 |
WOWLUA_INSTALL_DIR |
~/.wowlua/bin ($HOME\.wowlua\bin on Windows) |
Where the binary goes |
curl -fsSL https://github.com/DomenikIrrgang/wowlua/releases/latest/download/install.sh | WOWLUA_VERSION=v0.9.0 sh$env:WOWLUA_VERSION = "v0.9.0"; irm https://github.com/DomenikIrrgang/wowlua/releases/latest/download/install.ps1 | iexA project names the compiler versions it works with in package.wowlua of its
wowlua.json (wowlua new writes "^0.9"). An older compiler stops with
E4300 and names both versions
(Manifest §9.16).
In CI
The setup-wowlua action installs a release on GitHub Actions runners, with
the same install scripts. Its version input takes a release tag (default
latest):
- uses: DomenikIrrgang/wowlua/.github/actions/setup-wowlua@mainwowlua new --ci github writes a complete workflow that uses it
(CLI §12.10).
Remove wowlua
Delete the binary from its install folder. ~/.wowlua (or $WOWLUA_HOME)
also holds the global config.json, the dependency cache (cache/) and the
archived source maps of published builds (maps/). Delete the folder to
remove those too.
API tokens saved with wowlua login live in the OS credential store. Remove
them first with wowlua logout <site>.
wowlua uninstall removes an addon's builds from your WoW folders. It does not
remove wowlua itself.
Next steps
- Getting started:
wowlua new MyAddon, thenwowlua dev. - Adopting an addon:
wowlua initin your addon's folder.