A modern, batteries-included overlay distribution for OpenComputers OpenOS.
Aurora takes a stock OpenOS install and layers on a real package manager, a developer toolchain ("compilers"), networking libraries, shell themes, and security + reliability fixes — without breaking OpenOS compatibility. Anything that runs on stock OpenOS keeps running; Aurora just makes the system far more capable and pleasant to use.
It installs on top of an existing OpenOS (as an overlay + a couple of targeted core patches), so there is nothing to re-learn and nothing to lose.
📖 Documentation site: https://alexmelanfromringo.github.io/aurora/ · API reference · Architecture · Patches
| Area | What you get |
|---|---|
| 📦 Packages | opm — install/remove/update/search with semver dependency resolution and sha256-verified, atomic downloads from a GitHub-hosted registry |
| 🛠️ Dev toolchain | acc (compile = transpile→lint→bundle→minify), aminify (Lua-aware minifier), abundle (require-graph linker), atpl (compound-assignment transpiler), alint (scope-aware linter on a real Lua AST), afmt (AST-based code formatter), adoc (API-doc generator), atest, arepl |
| 🌐 Networking | ahttp (status-checked HTTP with JSON + verified downloads), anet (modem messaging + JSON-RPC 2.0) |
| 🎨 Shell & UX | atheme color themes, configurable prompt, afetch system summary, alocale (i18n: English + Russian), curated aliases |
| 🔒 Security & reliability | patched wget (checks HTTP status, atomic, --sha256), cp crash fix, strict global guard, safe-remove, asandbox (run untrusted Lua with no system access) |
| 🧰 Libraries | json, inspect, class, argparse, aurora.hash (SHA-256/CRC-32), aurora.semver, aurora.fsx, aurora.util, aurora.optimize |
Every shipped Lua file is syntax-linted, every pure module is unit-tested on the host (112 tests), and the whole distribution is booted and self-tested inside a real OpenOS under an emulator (15 in-VM checks, including the data card's hardware SHA-256).
On any OpenOS machine with an internet card:
wget https://raw.githubusercontent.com/AlexMelanFromRingo/aurora/main/install/install.lua /tmp/ai.lua
/tmp/ai.luaThe installer fetches a checksummed manifest, verifies every file's sha256,
writes atomically, backs up any core file it patches (*.orig-aurora), and wires
a guarded login hook. It is idempotent — safe to re-run. Open a new shell or
reboot afterwards.
Clone or copy this repository onto a disk the machine can see, then:
/mnt/<disk>/install/apply.lua /mnt/<disk>This applies the same overlay + patches with no network, verifying checksums from the local copy.
afetch # system summary
atheme set matrix # switch shell theme (persists)
opm update # refresh package lists
opm install acowsay # install a package (sha256-verified)
acowsay "hello from Aurora"
arepl # nicer Lua REPL (multiline, pretty-print)
# compile a multi-file project into one minified, linted file:
acc src/main.lua -o build/app.lua
# safer downloads:
awget --sha256=<hex> https://host/file.lua /usr/bin/file.luaEvery command has a man page (man opm, man acc, …) and --help.
local json = require("json")
local ahttp = require("ahttp")
local class = require("class")
local res = ahttp.getJSON("https://api.example.com/status")
print(json.encode(res, {pretty = true}))
local Animal = class("Animal")
function Animal:init(name) self.name = name endSee docs/ARCHITECTURE.md for the full library map.
overlay/ files laid over OpenOS (bin/, lib/, etc/, usr/man/)
patches/ patched core files + pristine *.orig + rationale
install/ install.lua (online), apply.lua (offline), manifest.lua
registry/ opm package registry (index.json + packages/)
tools/ build.sh, test.sh, lint.sh, integration.sh, generators
tests/ host unit tests + OpenComputers shim + in-VM self-test
docs/ ARCHITECTURE.md, PATCHES.md, design spec
tools/lint.sh # syntax-lint every Lua file (luac5.3 -p)
tools/test.sh # lint + host unit tests + in-VM integration
tools/test.sh --no-integration # skip the emulator step
tools/build.sh # regenerate manifest + registry after editsHost unit tests run pure-Lua modules under lua5.3 against an OpenComputers
shim. The integration step stages stock OpenOS + Aurora into a throwaway
instance and boots it under ocvm, running an
in-system self-test. See docs/ARCHITECTURE.md.
- OpenComputers 1.7+, OpenOS, Lua 5.3.
- The data card (SHA-256, deflate) is used when present, with pure-Lua fallbacks — nothing requires a particular tier.
- Aurora never replaces the OpenOS boot path,
require, or component model.
MIT — see LICENSE.