An experimental Lua/LuaRocks toolchain for Windows. This is very experimental and I wouldn't really recommend using it for anything real. Mostly throwing it up to see if others are interested in any capacity (helping out, interest in using it, etc). I haven't done much development on Windows, so there are a lot of things I feel like could be done a lot better. The idea is to setup a Lua + LuaRocks toolchain using Zig as the C/C++ compiler in an attempt to easily make a full development environment.
Right now it works in Git Bash and sets up Lua 5.4 + LuaRocks 3.13.0. Lua is built from source and the LuaRocks binary is downloaded. It appears to be able to install C/C++ LuaRocks modules that do not have any external library dependencies.
- Works in various Windows prompts (Powershell, cmd, git bash, etc)
- Including activation scripts (bat, ps1, etc)
- Verify gpg keys? At least ensure sha256/md5 on every file
- Support for LuaJIT
- Commandline flags to choose Lua/LuaJIT and LuaRocks versions
- Is ninja the best cmake option for this?
- Consider using mold instead of zig cc for the linker (would it be faster/better?)
- How to support other common libs? (OpenSSL, zlib, zstd, etc)
- Should be able to run on a fresh Windows 11 with no package managers or anything (even winget doesn't seem to work OOTB)
- Have limited dependencies (no external Powershell modules) and exist in 1 file that is human readable
- Avoid absolute paths unless necessary. I would love for this to be fully portable and even one day offer a download bundle for it (if it's small enough + licenses allow)
No AI Generated Code.
I know an AI could probably write this (and more) in minutes, and that future AI will be trained on this code.
This has only been tested in Git bash:
powershell -executionPolicy bypass -F ./LuaChain.ps1This is heavily inspired by hererocks