# Install luajit with Homebrew, apk, apt, dnf, MacPorts, Nix, pacman, scoop, winget, zypper

Just-In-Time Compiler (JIT) for the Lua programming language. Version 2.1.1783415239 via Homebrew; verified 2026-07-07.

## Install

```sh
sudo av install brew:luajit
```

Additional install commands:

### macOS

- Homebrew (100%):

```sh
brew install luajit
```

  Evidence: local Homebrew formula metadata

- MacPorts (94%):

```sh
sudo port install luajit
```

  Evidence: MacPorts ports tree: lang/luajit/Portfile from https://api.github.com/repos/macports/macports-ports/git/trees/master?recursive=1

### Linux

- apk (92%):

```sh
sudo apk add luajit
```

  Evidence: Alpine Linux edge package indexes: luajit from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz

- Debian apt (92%):

```sh
sudo apt install libluajit-5.1-2
```

  Evidence: Debian stable package indexes: libluajit-5.1-2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz

- dnf (92%):

```sh
sudo dnf install luajit
```

  Evidence: Fedora Rawhide package metadata: luajit from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst

- Nix (92%):

```sh
nix profile install nixpkgs#luajit
```

  Evidence: nixpkgs package indexes: luajit from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix

- pacman (92%):

```sh
sudo pacman -S luajit
```

  Evidence: Arch Linux sync databases: luajit from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz

- zypper (92%):

```sh
sudo zypper install libluajit-5_1-2
```

  Evidence: openSUSE Tumbleweed package metadata: libluajit-5_1-2 from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst

### Windows

- Scoop (92%):

```sh
scoop install main/luajit
```

  Evidence: Scoop official bucket manifest trees: bucket/luajit.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

- winget (92%):

```sh
winget install --id DEVCOM.LuaJIT -e
```

  Evidence: Windows Package Manager source index: DEVCOM.LuaJIT from https://cdn.winget.microsoft.com/cache/source.msix

## Package facts

- **Package key:** brew:luajit
- **Package manager:** Homebrew
- **Package manager page:** <https://formulae.brew.sh/formula/luajit>
- **Version:** 2.1.1783415239
- **Source summary:** Just-In-Time Compiler (JIT) for the Lua programming language
- **Homepage:** <https://luajit.org/luajit.html>
- **Repository:** <https://github.com/LuaJIT/LuaJIT>
- **Upstream docs:** <https://luajit.org/extensions.html>
- **License:** MIT
- **Source archive:** <https://github.com/LuaJIT/LuaJIT/archive/acb223497d84c65139a7eaaac395b42f112249ac.tar.gz>
- **Last updated:** 2026-07-07T10:41:40Z
- **Generated:** 2026-07-08T07:18:31+00:00

## Executables

- luajit (cli)
- luajit-2.1.1779665312 (cli)
- luajit (alias)
- luajit-2.1.1779665312 (alias)

## Install behavior

- Post-install hook: not defined
- Bottle: available on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux

## Freshness

- Page generated: 2026-07-08
- Package-manager version: 2.1.1783415239
- Package-manager updated: 2026-07-07
- Local data: ok
- Upstream repository: https://github.com/LuaJIT/LuaJIT
- info: No cached GitHub release or tag data was available.
## Project history and usage

LuaJIT is a just-in-time compiler and high-performance Lua 5.1-compatible runtime. It became one of the defining alternative Lua runtimes because it combines a fast interpreter, trace JIT compiler, FFI, and broad embedding support.

### Project history

LuaJIT is authored by Mike Pall and has been in continuous development since 2005. The official overview describes it as a JIT compiler for Lua that can be embedded or used as a standalone language runtime.

LuaJIT 2.0 was a major rewrite of the VM, combining an assembler-written interpreter with a trace compiler and SSA-based optimizations. The official extensions documentation also makes clear why LuaJIT became more than a faster lua executable: it adds the FFI library, built-in bit operations, JIT control modules, profiler support, and Lua/C API extensions while remaining API and ABI compatible with Lua 5.1.

### Adoption history

The official LuaJIT overview says it has been used in games, appliances, network and graphics applications, numerical simulations, trading platforms, and other specialty applications, and is part of large web, SaaS, networking, set-top-box, and embedded deployments.

Package-manager adoption is broad: the input metadata lists LuaJIT packages for Homebrew, MacPorts, Debian, Ubuntu, Fedora, Alpine, Arch, openSUSE, Nix, Scoop, and Winget. That distribution footprint reflects LuaJIT's role as both a developer tool and a dependency of packages that want Lua speed or LuaJIT FFI.

### How it is used

The normal command-line entry point is luajit on POSIX systems and luajit.exe on Windows. It runs Lua chunks, scripts, and interactive sessions, and it supports Lua-like CLI options plus LuaJIT-specific bytecode, JIT-control, and optimization switches.

In package ecosystems, LuaJIT is commonly selected when a project targets Lua 5.1 semantics but wants faster execution, C interop through FFI, or compatibility with ecosystems such as OpenResty and LuaJIT-oriented LuaRocks modules.

### Why package nerds care

LuaJIT is package-nerd-famous because it sits at the intersection of language runtime, C ABI, and distribution policy. The project now uses rolling releases from git rather than release tarballs, so downstream packages often package snapshots and must track branch policy carefully.

It also explains a lot of Lua packaging behavior: LuaRocks modules may distinguish Lua versions, LuaJIT, FFI availability, and ABI compatibility. Having LuaJIT as a separate package lets distributions provide both stock Lua and the high-performance Lua 5.1-compatible runtime.

### Timeline

- 2005: LuaJIT development begins.
- 2010s: LuaJIT 2.0 rewrites the VM around a fast interpreter and trace compiler.
- 2020s: LuaJIT documents rolling releases and recommends following versioned branches rather than old tarball-style releases.
- 2026: Official status page lists v2.1 as the production branch.

### Related projects

- Lua is the upstream language whose 5.1 API and ABI LuaJIT targets.
- OpenResty maintains its own LuaJIT branch for nginx/OpenResty workloads.
- LuaRocks packages Lua modules that may run on LuaJIT or depend on LuaJIT-specific FFI behavior.

### Sources

- <https://luajit.org/download.html>
- <https://luajit.org/extensions.html>
- <https://luajit.org/luajit.html>
- <https://luajit.org/running.html>
- <https://luajit.org/status.html>
- source_facts.package-manager


## Security Notes

generalized runtime or code generation signal.

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

## Source Database Details

- **Source Database:** Homebrew formula API
- **Tap:** homebrew/core
- **Full Name:** luajit
- **Version Scheme:** 0
- **Revision:** 0
- **Head Version:** HEAD
- **Bottle Stable Root URL:** <https://ghcr.io/v2/homebrew/core>
- **Deprecated:** no
- **Disabled:** no
- **Keg Only:** no
- **URL Keys:** head, stable

## Other Package-Manager Records

- Debian apt - libluajit-5.1-2 - 2.1.0+openresty20250117-2: normalized package name match | Debian stable package indexes: libluajit-5.1-2 from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | OpenResty-maintained branch of LuaJIT (shared objects) | https://github.com/openresty/luajit2
- Debian apt - libluajit-5.1-common - 2.1.0+openresty20250117-2: normalized package name match | Debian stable package indexes: libluajit-5.1-common from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | OpenResty-maintained branch of LuaJIT (common files) | https://github.com/openresty/luajit2
- Debian apt - libluajit-5.1-dev - 2.1.0+openresty20250117-2: normalized package name match | Debian stable package indexes: libluajit-5.1-dev from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | OpenResty-maintained branch of LuaJIT (development files) | https://github.com/openresty/luajit2
- Debian apt - luajit - 2.1.0+openresty20250117-2: normalized package name match | Debian stable package indexes: luajit from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz | OpenResty-maintained branch of LuaJIT (interpreter) | https://github.com/openresty/luajit2
- Nix - luajit: normalized package name match | nixpkgs package indexes: luajit from https://raw.githubusercontent.com/NixOS/nixpkgs/master/pkgs/top-level/all-packages.nix
- Ubuntu apt - libluajit-5.1-2 - 2.1.0+git20231223.c525bcb+dfsg-1: normalized package name match | Ubuntu 24.04 LTS package indexes: libluajit-5.1-2 from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Just in time compiler for Lua - library version | https://luajit.org
- Ubuntu apt - libluajit-5.1-common - 2.1.0+git20231223.c525bcb+dfsg-1: normalized package name match | Ubuntu 24.04 LTS package indexes: libluajit-5.1-common from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Just in time compiler for Lua - common files | https://luajit.org
- Ubuntu apt - libluajit-5.1-dev - 2.1.0+git20231223.c525bcb+dfsg-1: normalized package name match | Ubuntu 24.04 LTS package indexes: libluajit-5.1-dev from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Just in time compiler for Lua - development files | https://luajit.org
- Ubuntu apt - luajit - 2.1.0+git20231223.c525bcb+dfsg-1: normalized package name match | Ubuntu 24.04 LTS package indexes: luajit from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz | Just in time compiler for Lua programming language version 5.1 | https://luajit.org
- apk - luajit - 2.1_p20251030-r0: normalized package name match | Alpine Linux edge package indexes: luajit from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | OpenResty's branch of LuaJIT | https://github.com/openresty/luajit2
- apk - luajit-dbg - 2.1_p20251030-r0: normalized package name match | Alpine Linux edge package indexes: luajit-dbg from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | OpenResty's branch of LuaJIT (debug symbols) | https://github.com/openresty/luajit2
- apk - luajit-dev - 2.1_p20251030-r0: normalized package name match | Alpine Linux edge package indexes: luajit-dev from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | OpenResty's branch of LuaJIT (development files) | https://github.com/openresty/luajit2
- apk - luajit-doc - 2.1_p20251030-r0: normalized package name match | Alpine Linux edge package indexes: luajit-doc from https://dl-cdn.alpinelinux.org/alpine/edge/main/x86_64/APKINDEX.tar.gz | OpenResty's branch of LuaJIT (documentation) | https://github.com/openresty/luajit2
- dnf - luajit - 2.1.1767980792-1.fc44: normalized package name match | Fedora Rawhide package metadata: luajit from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Just-In-Time Compiler for Lua | http://luajit.org
- dnf - luajit-devel - 2.1.1767980792-1.fc44: normalized package name match | Fedora Rawhide package metadata: luajit-devel from https://dl.fedoraproject.org/pub/fedora/linux/development/rawhide/Everything/x86_64/os/repodata/e5ca8ce900cd68f5419e1c39ae517343100b306336cbaeb70a3c153121d95094-primary.xml.zst | Development files for luajit | http://luajit.org
- pacman - luajit - 2.1.1780076327+b925b3e-1: normalized package name match | Arch Linux sync databases: luajit from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz | Just-in-time compiler and drop-in replacement for Lua 5.1 | https://luajit.org/


## Related links

- [Secret-risk packages](https://www.automicvault.com/pkg/secret-risk-packages/) - Has protected-tool coverage, approval-gate, or non-low Geiger security signals.
- [Terminal utility packages](https://www.automicvault.com/pkg/terminal-utilities/) - Matched terminal and command-line workflow metadata.
- [Developer build packages](https://www.automicvault.com/pkg/developer-build-tools/) - Matched build, compiler, generator, or developer workflow metadata.
- [Language runtime packages](https://www.automicvault.com/pkg/language-runtime-packages/) - Matched language runtime, compiler, or interpreter metadata.
- [dnsdist](https://www.automicvault.com/pkg/brew/dnsdist/) - Popular package that depends on this formula.
- [efl](https://www.automicvault.com/pkg/brew/efl/) - Popular package that depends on this formula.
- [fluent-bit](https://www.automicvault.com/pkg/brew/fluent-bit/) - Popular package that depends on this formula.
- [instead](https://www.automicvault.com/pkg/brew/instead/) - Popular package that depends on this formula.
- [knot-resolver](https://www.automicvault.com/pkg/brew/knot-resolver/) - Popular package that depends on this formula.
- [luaradio](https://www.automicvault.com/pkg/brew/luaradio/) - Popular package that depends on this formula.
- [luvit](https://www.automicvault.com/pkg/brew/luvit/) - Popular package that depends on this formula.
- [mpv](https://www.automicvault.com/pkg/brew/mpv/) - Popular package that depends on this formula.
- [luajit-openresty](https://www.automicvault.com/pkg/brew/luajit-openresty/) - Shares av.db curated category or tags: cli, jit-compiler, language-runtime, lua, runtime.
- [chicken](https://www.automicvault.com/pkg/brew/chicken/) - Shares av.db curated category or tags: cli, interpreter, language-runtime, runtime.
- [ecl](https://www.automicvault.com/pkg/brew/ecl/) - Shares av.db curated category or tags: cli, interpreter, language-runtime, runtime.
- [gauche](https://www.automicvault.com/pkg/brew/gauche/) - Shares av.db curated category or tags: cli, interpreter, language-runtime, runtime.
- [gerbil-scheme](https://www.automicvault.com/pkg/brew/gerbil-scheme/) - Shares av.db curated category or tags: cli, ffi, interpreter, language-runtime.
- [gravity](https://www.automicvault.com/pkg/brew/gravity/) - Shares av.db curated category or tags: cli, interpreter, language-runtime, runtime.
- [lua](https://www.automicvault.com/pkg/brew/lua/) - Shares av.db curated category or tags: cli, interpreter, language-runtime, lua.

## Combined YAML source

View the package source record on GitHub. [combined/luajit.yml](https://github.com/automic-vault/db/blob/main/combined/luajit.yml)


## Sources

- Nucleus package database
- Geiger risk classifier
- package-page enrichment
- curated package history
- package version freshness
- av.db category and tag curation
- package relationship graph
- external package-manager database matches
- cross-ecosystem install command graph
