Skip to content

Installing Packages

The --install flag manages package installation from the central registry.

Terminal window
lune --install colors networking ui-kit
Terminal window
lune --install colors@1.0.0
Terminal window
lune --install

This reads packages from your lune.config.json file and installs any that are missing.

Terminal window
lune --updpkg

Updates all installed packages to their latest versions and locks them in lune.config.json.

  1. Fetch manifest - Downloads package info from the registry
  2. Resolve version - Finds the latest semver-compatible tag (or uses specified version)
  3. Download - Downloads and extracts the package to lune_packages/
  4. Save info - Creates lune-pkg.json with package metadata
  5. Update config - Adds the package to lune.config.json
  6. Generate aliases - Adds path aliases to .luaurc
Lune Package Installer
[1/4] Installing 2 package(s)
→ colors
↳ tag: v1.2.0
✓ Installed
→ networking
↳ tag: v0.5.3
✓ Installed
[3/4] Updating lune.config.json
[4/4] Generating .luaurc
✓ 2 package(s) installed!

After installation, you can require packages using their alias:

local Colors = require("@colors")
local Net = require("@networking")

The aliases are defined in .luaurc and work with Luau LSP for autocompletion.

All packages are installed to ./lune_packages/<package-name>/.

The installer automatically detects the entry point by looking for:

  1. init.luau
  2. main.luau
  3. lib/init.luau
  4. src/init.luau