Automic VaultAutomic Vault

brew

Install luacheck with Homebrew, apk, apt, pacman, scoop, zypper

Tool for linting and static analysis of Lua code. Version 1.2.0 via Homebrew; verified 2026-06-29.

install

Additional install commands

macOS

Homebrewverified · 100%
brew install luacheck

local Homebrew formula metadata

Linux

Alpine Linux apkverified · 92%
sudo apk add luacheck

Alpine Linux edge package indexes · luacheck · source: dl-cdn.alpinelinux.org

Debian aptverified · 92%
sudo apt install lua-check

Debian stable package indexes · lua-check · source: deb.debian.org

Arch Linux pacmanverified · 92%
sudo pacman -S luacheck

Arch Linux sync databases · luacheck · source: geo.mirror.pkgbuild.com

openSUSE zypperverified · 92%
sudo zypper install lua53-luacheck

openSUSE Tumbleweed package metadata · lua53-luacheck · source: download.opensuse.org

Windows

Scoopverified · 92%
scoop install main/luacheck

Scoop official bucket manifest trees · bucket/luacheck.json · source: api.github.com

overview

Package summary

Tool for linting and static analysis of Lua code

Commands and aliases

  • luacheck

history

Project history and usage

Luacheck is a command-line static analyzer and linter for Lua. It reports issues such as undefined globals, unused variables, uninitialized variables, unreachable code, and syntax errors, while allowing project-specific global sets and per-file configuration.

Project history

Luacheck began as a Lua linter by Peter Melnichenko, with the changelog recording 0.1.0 as the first release on 25 Mar 2014. Early releases quickly added command-line reporting, stdin and directory checking, config loading, Lua 5.2/5.3/LuaJIT syntax support, and the warning-code system that made the tool useful in editors and CI.

The project matured through the 0.x line by adding inline comments, caching, parallel checking, custom formatters, rockspec handling, and support for newer Lua versions. The README describes Luacheck as written in Lua, runnable on Lua 5.1 through 5.4 and LuaJIT, and configurable from CLI options, config files, or inline Lua comments.

In 2022 the project moved through the 1.0 milestone and adopted semver-oriented release expectations. Later changelog entries show package-maintenance work around Docker images, GitHub Actions, new builtin standard sets, NO_COLOR support, and Lua ecosystem integrations such as SILE, Ldoc, Playdate, and Minetest globals.

Adoption history

Luacheck was adopted because Lua's global-variable model makes typos and accidental globals easy to miss. Its support for named standard-global sets, project globals, inline suppressions, editor-oriented stable output, and recursive directory checking made it practical for projects that wanted CI linting without imposing a full type system.

The official README lists editor integrations for Vim/Syntastic, SublimeLinter, Atom, Emacs/Flycheck, Brackets, VS Code, Nova, Geany, Node.js bindings, Gulp, Docker, and GitHub Actions. The supplied package-manager facts show distribution packages for apk, Homebrew, Debian/Ubuntu, pacman, Scoop, and zypper.

How it is used

Users run luacheck with files, directories, stdin, or rockspecs. The CLI returns distinct exit codes for clean runs, warnings, syntax or inline-option errors, file errors, and critical argument/config/cache errors, which makes it straightforward to wire into CI.

Configuration is usually a .luacheckrc file discovered from the current directory upward, a platform-specific default config path, or a custom --config path. Config files are Lua scripts that set options such as std, globals, read_globals, ignore, enable, line length, and per-path overrides.

Why package nerds care

Luacheck is the old reliable Lua linter package: small, scriptable, available as a CLI, and easy to connect to editors and CI. Package nerds care about it because it sits at the intersection of Lua versions, LuaRocks modules, editor plugins, and distribution packages, and because its config lookup behavior directly affects how projects lint in reproducible builds.

Timeline

  • 2014-03-25: Luacheck 0.1.0 was the first release.
  • 2014: Early releases added directory checking, config loading, Lua 5.2/5.3/LuaJIT syntax support, and warning codes.
  • 2015: Luacheck added inline options, custom output formatters, caching, parallel checking, and version reporting.
  • 2020: Luacheck added Lua 5.4 standard definitions and parser/runtime compatibility work.
  • 2022: Luacheck v1.0.0 marked the semver-era milestone.
  • 2024: Luacheck 1.2.0 added Minetest standard support and performance fixes.

Related projects

  • Lua is the language Luacheck analyzes.
  • LuaRocks is the installation path documented by the official README.
  • LuaFileSystem is used for recursive directory checking when installed through LuaRocks.
  • Busted, rockspec, OpenResty ngx_lua, and other named standard sets appear in Luacheck's supported globals.
  • LuaLS overlaps as a language-server tool, while Luacheck remains focused on linting and static analysis.

security posture

Risk level: green

narrow executable package without higher-risk signals.

Risk classifier

green risk · low confidence · appliance

Why

  • narrow executable package without higher-risk signals

Signals

  • metadata:no-higher-risk-signals

Install behavior

  • No Homebrew post-install hook is recorded in formula metadata.
  • Homebrew bottle metadata is available for 6 platform targets.
  • Installs with 1 runtime dependencies.
  • Build metadata lists 1 build dependencies.

Recommended review

Before unattended agent use, check whether the tool reads plaintext credentials, writes remote state, publishes artifacts, or shells out to plugins.

local files

Configuration and credential file locations

These source-backed paths show where this package keeps local settings or durable credentials. Automic Vault can use them as review targets for secret scanning, migration, and command approval.

Configuration files

Config paths the tool may read or write during local use.

macOS
~/Library/Application Support/Luacheck/.luacheckrc
Unix
.luacheckrc$XDG_CONFIG_HOME/luacheck/.luacheckrc~/.config/luacheck/.luacheckrc
Windows
%LOCALAPPDATA%\Luacheck\.luacheckrc

executables

Installed executables

CommandKindExposureNote
luacheckcliglobal executable

freshness

Version and freshness

These signals separate page generation age, package-manager activity, and upstream release comparison. Version lag is warned only when an evidence URL and comparable versions are present.

page generated2026-07-08
manager version1.2.0
manager updated2026-06-29
local dataok
upstreamcurrent
latest detectedv1.2.0

https://github.com/lunarmodules/luacheck

  • okNo freshness warnings were generated.

install metadata

Package metadata

Package keybrew:luacheck
Version1.2.0
Package managerHomebrew
Package manager pagehttps://formulae.brew.sh/formula/luacheck
Homepagehttps://luacheck.readthedocs.io/
Repositoryhttps://github.com/lunarmodules/luacheck
Upstream docshttps://luacheck.readthedocs.io/
LicenseMIT
Source archivehttps://github.com/lunarmodules/luacheck/archive/refs/tags/v1.2.0.tar.gz
Last updated2026-06-29T22:26:50Z
Pulseupdated
Dependencieslua
Build dependenciesluarocks
Bottleavailable (on arm64_linux, arm64_sequoia, arm64_sonoma, arm64_tahoe, sonoma, x86_64_linux)
Homebrew post-installnot defined
Servicenone declared

registry facts

Source database details

Source DatabaseHomebrew formula API
Taphomebrew/core
Full Nameluacheck
Version Scheme0
Revision1
Head VersionHEAD
Bottle Stable Root URLhttps://ghcr.io/v2/homebrew/core
Deprecatedno
Disabledno
Keg Onlyno
URL Keys
  • head
  • stable

source database matches

Other package-manager records

Matches are pulled from external package-manager indexes and kept separate from local Automic Vault package links.

Debian apt95%

lua-check 1.2.0-1

static analyzer and a linter for the Lua language

https://github.com/luarocks/luacheck

sudo apt install lua-check
  • Section: interpreters
  • Architecture: all
  • Source Package: luacheck
  • 3 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Luacheck
Debian stable package indexes · deb.debian.org · Debian stable package indexes: lua-check from https://deb.debian.org/debian/dists/stable/main/binary-amd64/Packages.xz
Ubuntu apt95%

lua-check 1.1.2-1

static analyzer and a linter for the Lua language

https://github.com/luarocks/luacheck

sudo apt install lua-check
  • Section: universe/interpreters
  • Architecture: all
  • Source Package: luacheck
  • 3 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Luacheck
Ubuntu 24.04 LTS package indexes · archive.ubuntu.com · Ubuntu 24.04 LTS package indexes: lua-check from https://archive.ubuntu.com/ubuntu/dists/noble/universe/binary-amd64/Packages.gz
apk95%

luacheck 1.2.0-r1

A tool for linting and static analysis of Lua code

https://github.com/lunarmodules/luacheck

sudo apk add luacheck
  • License: MIT
  • Architecture: x86_64
  • Source Package: luacheck
  • 1 dependencies
  • 1 provides
  • normalized package name match
  • Matched by: Luacheck
Alpine Linux edge package indexes · dl-cdn.alpinelinux.org · Alpine Linux edge package indexes: luacheck from https://dl-cdn.alpinelinux.org/alpine/edge/community/x86_64/APKINDEX.tar.gz
pacman95%

luacheck 1.2.0-4

A tool for linting and static analysis of Lua code

https://github.com/lunarmodules/luacheck

sudo pacman -S luacheck
  • License: MIT
  • Architecture: any
  • 3 dependencies
  • 1 optional deps
  • normalized package name match
  • Matched by: Luacheck
Arch Linux sync databases · geo.mirror.pkgbuild.com · Arch Linux sync databases: luacheck from https://geo.mirror.pkgbuild.com/extra/os/x86_64/extra.db.tar.gz
zypper95%

lua53-luacheck 1.1.0-4.1

Command-line tool for linting and static analysis of Lua code

https://github.com/lunarmodules/luacheck

sudo zypper install lua53-luacheck
  • License: MIT
  • Category: Development/Languages/Other
  • Architecture: noarch
  • Source Package: lua53-luacheck
  • 5 dependencies
  • 2 provides
  • normalized package name match
  • Matched by: Luacheck
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: lua53-luacheck from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
zypper95%

lua54-luacheck 1.1.0-4.1

Command-line tool for linting and static analysis of Lua code

https://github.com/lunarmodules/luacheck

sudo zypper install lua54-luacheck
  • License: MIT
  • Category: Development/Languages/Other
  • Architecture: noarch
  • Source Package: lua54-luacheck
  • 5 dependencies
  • 3 provides
  • normalized package name match
  • Matched by: Luacheck
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: lua54-luacheck from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
zypper95%

lua55-luacheck 1.1.0-4.1

Command-line tool for linting and static analysis of Lua code

https://github.com/lunarmodules/luacheck

sudo zypper install lua55-luacheck
  • License: MIT
  • Category: Development/Languages/Other
  • Architecture: noarch
  • Source Package: lua55-luacheck
  • 5 dependencies
  • 2 provides
  • normalized package name match
  • Matched by: Luacheck
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: lua55-luacheck from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
zypper95%

luajit-luacheck 1.1.0-4.1

Command-line tool for linting and static analysis of Lua code

https://github.com/lunarmodules/luacheck

sudo zypper install luajit-luacheck
  • License: MIT
  • Category: Development/Languages/Other
  • Architecture: noarch
  • Source Package: luajit-luacheck
  • 5 dependencies
  • 2 provides
  • normalized package name match
  • Matched by: Luacheck
openSUSE Tumbleweed package metadata · download.opensuse.org · openSUSE Tumbleweed package metadata: luajit-luacheck from https://download.opensuse.org/tumbleweed/repo/oss/repodata/be8d3611d25469107f32075a1697e69ec57a2b850b42348a658cc671ad5ec2b50760d02c3e59524d50da9a11d5be799bdaffba2e166e8ca8858512e3c0bd665d-primary.xml.zst
Scoop95%

main/luacheck

scoop install main/luacheck
  • normalized package name match
  • Matched by: Luacheck
Scoop official bucket manifest trees · api.github.com · Scoop official bucket manifest trees: bucket/luacheck.json from https://api.github.com/repos/ScoopInstaller/Main/git/trees/master?recursive=1

source trail

Generated from repository data

This page is generated by av-web from the private package SQLite artifact built by scripts/generate-pkg-sqlite.py.

Used sources

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