Pre-installed Packages
These packages are available on the Barionet operating system out of the box. They are already present and can be imported or used directly.
Python 3 (v3.8.11) — Standard Library + Pre-installed Packages
Python apps can import any of these without installation:
Networking & HTTP
Package | Version | Notes |
|---|---|---|
| 2.23.0 | HTTP client |
| 1.25.7 | Low-level HTTP |
| 1.5.0 | MQTT client (use instead of raw mosquitto) |
| 1.1.1 | Lightweight web server / REST API |
| 20.0.4 | WSGI server for Flask |
| 1.0.1 | WSGI utilities (Flask dependency) |
| 1.0 | mDNS / service discovery |
| 0.1.7 | List network interfaces |
| 1.7.1 | SOCKS proxy support |
| 0.5.1 | HTTPS via PyOpenSSL |
Security & Cryptography
Package | Version | Notes |
|---|---|---|
| 2.8 | TLS, encryption primitives |
| 19.1.0 | OpenSSL bindings |
| 2019.11.28 | CA bundle |
| 1.3.0 | ASN.1 parsing |
| 0.4.8 | ASN.1 types |
Protocols & Automation
Package | Version | Notes |
|---|---|---|
| 3.6.7 | Modbus TCP/RTU client & server |
| 3.4 | Serial port (RS-232/RS-485) |
| 0.18.8 | BACnet protocol |
| 3.0.7110 | Audio/video playback via libVLC |
| 0.10.0 | ALSA audio (direct sound card access) |
| 1.0 | SIP/VoIP client via PJSIP (make/receive calls, audio) |
Data & Serialization
Package | Version | Notes |
|---|---|---|
| 3.17.0 | Fast JSON (use alongside stdlib |
| 3.2.0 | JSON schema validation |
| 2.0 | JSON Pointer (RFC 6901) |
| 0.1.12 | ISO 8601 date parsing |
| 3.6.0 | M3U8 playlist parsing |
System & Process
Package | Version | Notes |
|---|---|---|
| 5.7.0 | CPU, memory, process info |
| 0.9.24 | Multi-process safe logging |
| 2.8.2 | File locking |
| 7.0 | CLI argument parsing |
| 1.14.0 | Python 2/3 compat |
| 4.1 | I2C / SMBus access |
Web / Templating
Package | Version | Notes |
|---|---|---|
| 2.11.3 | Templating engine |
| 1.1.1 | Safe HTML escaping |
| 1.1.0 | Signed tokens |
SNMP
Package | Version | Notes |
|---|---|---|
| 2.0.0 | SNMP pass-persist subagent |
UCI (OpenWrt config)
Package | Version | Notes |
|---|---|---|
| 0.6 | Read/write UCI config files (OpenWrt) |
Text & Encoding
Package | Version | Notes |
|---|---|---|
| 3.0.4 | Character encoding auto-detection (useful for serial/text data) |
| 2.8 | Internationalized domain names |
| 1.8.1 | CSS color name ↔ hex/RGB conversion |
| 0.7 | Strict RFC 3339 date/time validation |
| 1.3.8 | URI/IRI validation per RFC 3987 |
Native Interop
Package | Version | Notes |
|---|---|---|
| 1.14.0 | Call C libraries from Python |
| 2.20 | C source parser (cffi dependency) |
Data Structures
Package | Version | Notes |
|---|---|---|
| 19.3.0 | Declarative Python classes |
| 0.15.7 | Immutable/persistent data structures |
| 3.11 | Lexer & parser toolkit (useful for custom protocol parsing) |
Lua (v5.3.6 and 5.1.5)
Both Lua 5.3 and Lua 5.1 are available. The following libraries are pre-installed:
Library | Notes |
|---|---|
| JSON encode/decode |
| MQTT client |
| TLS / crypto |
| TCP/UDP networking |
| TLS over luasocket |
| XML parsing |
| SOAP/XML web services |
| OpenWrt UCI config |
| HTTP via libcurl |
| Async I/O (libuv bindings) |
System-level Tools & Daemons
Available as shell commands or via subprocess:
Tool | Notes |
|---|---|
| MQTT broker (v1.6.10) — can run a local broker or use as client |
| HTTP/HTTPS requests from shell |
| JSON processing in shell scripts |
| Audio/video transcoding (v4.2.2) |
| Audio streaming server (v2.4.4) |
| MP3 playback |
| mDNS/DNS-SD daemon |
| SNMP agent |
| Time sync |
| HTTP server (v1.4.55) |
| CGI scripting for lighttpd (embed scripts in HTML) |
| Full Bash 5.0 (not just busybox sh) |
| CLI for certs, hashing |
| Python 3.8.11 interpreter |
| Lua 5.3.6 interpreter |
| Lua 5.1.5 interpreter |
| Embedded SQL database |
| Terminal multiplexer |
| Cron daemon — available for scheduled/recurring tasks |
| Raw TCP/UDP testing |
| Network interface diagnostics |
| Serial terminal (debugging) |
| I2C bus utilities ( |
| USB Device Firmware Upgrade utility |
| Java 8 runtime (v272) |
| SSH server — present on device (users cannot SSH in by default) |
C / Native Libraries (for compiled extensions or subprocess use)
Library | Notes |
|---|---|
| WebSocket support |
| Secure Reliable Transport |
| RIST streaming protocol |
| Audio file I/O |
| Audio resampling |
| GPIO line access |
| Async I/O event loop |
| C++ networking/utility framework |
| SIP/VoIP (PJSIP) |
Key Practical Notes for App Development
MQTT: Prefer
paho-mqtt(Python) orlua-mosquitto(Lua) over shelling out tomosquitto_pub/sub.Modbus:
pymodbus3.6.7 is available — no need to implement raw TCP framing.Serial/RS-485: Use
pyserialfor serial comms.Audio:
pyalsaaudiofor direct ALSA access;python-vlcfor higher-level playback;ffmpegvia subprocess for transcoding.Web API:
flask+gunicorncan expose a REST API from within an app.SQLite:
sqlite3is in both the Python stdlib and as a system binary — safe for local persistent storage.I2C: Use
python3-smbusfor I2C bus access (in addition toi2c-toolsCLI).Scheduled tasks:
cronieis available — use it for recurring jobs instead of implementing sleep loops where a cron schedule is more appropriate.Java:
openjre-8is present if a task requires running a.jarfile via subprocess.CGI / lighttpd:
haserlenables CGI scripts embedded in HTML served bylighttpd— an alternative to Flask for very lightweight web UIs.No pip: There is no pip/package manager available to end users. Only the packages listed here are available.