lua-users home
lua-l archive

[Date Prev][Date Next][Thread Prev][Thread Next] [Date Index] [Thread Index]




On Feb 3, 2020, at 7:55 PM, Paul K <paul@zerobrane.com> wrote:

There are definitely limitations to what LuaDist does, but those are
primarily related to modules not being refreshed and binaries not
updated for Lua 5.3.

If there is still any interest in LuaDist[1] I do have an unpublished development version with the following feature set:

* Can download and automatically use LuaRocks based modules of certain build types
* Uses Conan[2] package manager instead of LuaRocks and legacy LuaDist
* This means I can have indexed, searchable modules cache in Atrifactory[3]
* It can download and cache binary modules for multiple platforms, architectures and compilers
* It can quickly integrate with existing C/C++ libraries[4]
* It can consume the generated packages and modules in C/C++ applications with minimum effort
* Feature compatible with current LuaDist but no “luadist” Lua module yet
* This variant still supports LuaDist based single directory deployments of all binaries and modules as Michal Kottman mentioned.
* However it can also compile all modules as static library. It is trivial to embed entire module libraries as source/bytecode in applications.
* Also supports embedded bare metal static builds without filesystems
* Is still Windows/Linux/macOS compatible and can use almost any modern compiler
* Supports Lua 5.1 - 5.4 and LuaJIT

This approach has much lower maintenance than the original LuaDist. It is mostly in sync with compatible LuaRocks modules automatically. Modules that require more effort to be portable because of complex dependencies can rely on Conan packaged C/C++ libraries. The entire thing can even manage cross-compilation by using Conan profiles.

pd

[1] https://github.com/LuaDist/Repository
[2] https://conan.io
[3] https://jfrog.com/artifactory/ (community version)
[4] https://conan.io/center/