eli - Lua interpreter & essentials
Contains libs and function necessary for basic server side scripting.
Embedded libraries:
- eli
- eli.fs.extra
- eli.proc.extra
- eli.env.extra
- eli.os.extra
- eli.pipe.extra
- eli.stream.extra
- eli.extra.utils
- hjson
- lustache
- lua-cURLv3
- lzip + libzip + zlib
- mbedtls
Predefined variables:
interpreter
- path to interpreterAPP_ROOT_SCRIPT
- path to executed scriptAPP_ROOT
- path to directory containingAPP_ROOT_SCRIPT
ELI_LIB_VERSION
- version of eli library
Install latest binary release (currently unix only)
wget -q https://raw.githubusercontent.com/alis-is/eli/main/install.sh -O /tmp/install.sh && sudo sh /tmp/install.sh
Build eli
Build requirements:
- docker or podman
Steps:
git clone https://github.com/alis-is/eli && cd eli
docker build -t elibuild ./containers/build
docker build -t elitest ./containers/test
docker run -w "/root/luabuild" -v $(pwd):"/root/luabuild" -v "$(pwd)/toolchains:/opt/cross" -e TOOLCHAINS='x86_64-linux-musl-cross;i686-linux-musl-cross;aarch64-linux-musl-cross' -it elibuild
docker run -w "/root/luabuild" -v $(pwd):"/root/luabuild" -it elitest
- Built binaries
eli
andelic
will be created in release directory
Note: You can choose build toolchain you like from https://musl.cc/ and set its name in TOOLCHAINS
Tests:
- Run
run_tests.sh
with args and- Example:
./run_tests.sh $(pwd)/build/eli all.lua
- Example:
Libraries used for build:
- eli 0.23.2
- luasrcdiet (for minfication)