# Install luaver with Homebrew

Manage and switch between versions of Lua, LuaJIT, and Luarocks. Version 1.1.0 via Homebrew; verified from local package data.

## Install

```sh
sudo av install brew:luaver
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install luaver
```

  Evidence: local Homebrew formula metadata

## Package facts

- **Package key:** brew:luaver
- **Package manager:** Homebrew
- **Version:** 1.1.0
- **Source summary:** Manage and switch between versions of Lua, LuaJIT, and Luarocks
- **Homepage:** <https://github.com/DhavalKapil/luaver>
- **Repository:** <https://github.com/DhavalKapil/luaver>
- **Generated:** 2026-08-03T19:37:03+00:00

## Executables

- luaver (alias)

## Install behavior

- Bottle: not available

## Freshness

- Page generated: 2026-08-03
- Package-manager version: 1.1.0
## Project history and usage

luaver is a shell-based version manager for Lua, LuaJIT, and LuaRocks. It gives Lua developers a way to install and switch runtimes and package-manager versions without relying only on system packages.

### Project history

The project README describes luaver as a Lua Version Manager that manages and switches between versions of Lua, LuaJIT, and LuaRocks. Its feature set is intentionally narrow: install or uninstall versions, switch versions, keep Lua and LuaRocks trees consistent, and allow different terminal sessions to use different environments.

### Adoption history

luaver is a niche developer convenience tool rather than a broad platform dependency. Its adoption is visible mainly through its GitHub repository, Homebrew formula, and author documentation; the input metadata lists Homebrew as its package-manager surface.

### How it is used

Typical usage is shell-driven: install a Lua version, install a LuaJIT or LuaRocks version, switch with luaver use, use-luajit, or use-luarocks, and optionally set defaults for new terminal sessions.

It is most useful when a developer needs to test Lua libraries against several Lua, LuaJIT, and LuaRocks combinations while keeping rock trees and shell state separated.

### Why package nerds care

luaver matters to package nerds because Lua's ecosystem has several actively used runtime versions plus LuaJIT, and LuaRocks state depends on the chosen runtime. A small version manager reduces global-package drift during testing.

Its ceiling is also clear: it is a convenience wrapper around building and switching Lua-family tools, not a universal package manager. That simplicity is exactly why it remains easy to package.

### Timeline

- 2016: The luaver author publishes Lua Version Manager documentation.
- 2020s: The GitHub project remains the official source and Homebrew packages the tool.

### Related projects

- Lua is the main runtime luaver installs and switches.
- LuaJIT is the alternate runtime luaver supports.
- LuaRocks is the package manager luaver installs and keeps version-associated with Lua runtimes.

### Sources

- <https://dhavalkapil.com/blogs/Lua-Version-Manager/>
- <https://github.com/DhavalKapil/luaver>
- source_facts.package-manager


## Security Notes

generalized runtime or code generation signal.

- **Geiger risk:** yellow / medium
- generalized runtime or code generation signal


## Combined YAML source

View the package source record on GitHub. [combined/luaver.yml](https://github.com/mxcl/pkgdb/blob/main/combined/luaver.yml)


## Sources

- pkg.so package database
- Geiger risk classifier
- curated package history
- pkgdb category and tag curation
- cross-ecosystem install command graph
