Skip to content

Conversation

@pgagnidze
Copy link
Member

Summary

  • Add standalone mode with --main flag (no rockspec needed)
  • Add data file embedding with --embed flag
  • Support absolute paths for luarocks modules
  • Add cache hashing for reproducible builds
  • Add parallel package fetching

New capabilities

Standalone mode:

luas -m app.lua lib/ -c lfs -t linux-x86_64 myapp

Embed data files:

luas -m app.lua -e templates/ -e config.json myapp
local embed = require("luas.embed")
local html = embed.read("templates/page.html")

LuaRocks modules:

luas -m app.lua ~/.luarocks/share/lua/5.4/inspect.lua myapp
luas -m app.lua ~/.luarocks/share/lua/5.4/pl/ myapp

Test plan

  • Standalone mode builds and runs correctly
  • Embedded files accessible at runtime
  • LuaRocks paths compute correct module names
  • Existing rockspec mode still works
  • Cross-compilation works with all new features

@pgagnidze pgagnidze merged commit cb5a504 into main Dec 11, 2025
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants