Lilush: The Next Small Thing

Lilush logo

Overview

Lilush is a couple of things: a LuaJIT runtime and a Linux Shell

lilu — static LuaJIT runtime with batteries.

One binary. Under 2MB. No dependencies.

Lilu is a statically compiled LuaJIT interpreter bundled with everything you need to build real software on Linux — networking, crypto, filesystem, terminal UI, and more — without installing a single dependency.

What's in the box

Networking — TCP/UDP with SSL, a full HTTP(S) client, and an HTTP/1.1 server, all powered by WolfSSL compiled right into the binary.

Cryptography — Modern crypto primitives ready to use.

Filesystem & Processes — File operations, process manipulation, everything you'd expect from a systems scripting tool.

Terminal UI — UTF-8 aware terminal I/O, styling via TSS (Terminal Style Sheets), and a set of widgets for building CLI apps.

And then some — Markdown processing, Redis protocol support, JSON, Base64, embedded WireGuard and ACMEv2 clients


lilush — Linux Lua Shell on top of lilu

lilush extends lilu with a modular Linux Shell (as in Bash, Csh or Fish). The most notable features of Lilush Shell are:

Smart prompts — host, user, directory, git branch, Kubernetes context, Python venv — all preconfigured.

Completions & navigation — Tab completions with scrolling, intelligent directory navigation and history search in the spirit of McFly and zoxide.

Built-in toolskat (file viewer + pager), ktl for kubectl, netstat, dig, wgcli, and many more.

Extensible — Add your own plugins. Style everything with TSS.

Lilush Shell uses Kitty's keyboard protocol and requires a compatible terminal emulator (kitty, foot, alacritty, konsole, etc.).


Get started

# Download the latest release
curl -fLO "https://codeberg.org/latimar/lilush/releases/download/latest/lilush"

# Install
chmod +x lilush
install -Dm755 lilush ~/.local/bin/lilush

Release binaries are signed with an SSH key — see the repository for verification instructions and building from source.


Built with lilush

RELIW — An HTTP server & framework.

zxkitty — A ZX80 emulator for the terminal.