MeshPOP Runtime Linux — L0 node OS for AI infrastructure mesh
Project description
rtlinux — MeshPOP Runtime Linux
Layer 0 of the MeshPOP stack. A Buildroot-based minimal Linux distribution purpose-built for AI infrastructure mesh nodes.
L0 rtlinux — Runtime OS (kernel + musl + busybox + MeshPOP)
L1 Wire — WireGuard mesh VPN (pip install meshpop-wire)
L2 vssh — Secure remote execution (pip install vssh)
L3 mpop — Fleet orchestration (pip install meshpop)
L4 MeshDB — Distributed search (pip install meshpop-db)
L5 Vault — Secrets management (pip install sv-vault)
What It Does
Builds a minimal, network-hardened Linux OS with the full MeshPOP tool suite pre-installed. Boot a node → it auto-joins the Wire mesh → instantly manageable via mpop exec, mpop deploy, mpop ask.
Like Talos Linux for Kubernetes, but for MeshPOP.
Install
pip install rtlinux
Quick Start
# Build runtime image (Buildroot — from source, zero dependencies)
rtlinux build --method buildroot
# Deploy to a new node
rtlinux deploy g5 --image output/meshpoplinux-rootfs.tar.gz
# Verify all nodes
rtlinux verify --all
# Full CI/CD loop: build → deploy → verify → fix
rtlinux loop --nodes "g1 g2 g3 d1 d2"
# Fleet status
rtlinux status
Build Methods
| Method | Dependencies | Time | Output |
|---|---|---|---|
| Buildroot (recommended) | None — kernel+BusyBox+musl from source | 20-60 min | bzImage + rootfs.cpio |
| Alpine | Docker | ~2 min | rootfs.tar.gz |
| Scratch | Linux host or Docker | ~1 min | rootfs.tar.gz |
MCP Server
rtlinux includes an MCP server for AI-driven node management:
{
"mcpServers": {
"rtlinux": {
"command": "python3",
"args": ["-m", "rtlinux.mcp.rtlinux_mcp_server"]
}
}
}
MCP Tools
| Tool | Description |
|---|---|
rtlinux_build |
Build runtime image |
rtlinux_deploy |
Deploy to a node |
rtlinux_verify |
Health check (all 5 layers) |
rtlinux_fleet |
Fleet status overview |
rtlinux_fix |
Auto-fix degraded node |
rtlinux_cicd |
Full CI/CD loop |
Python API
import rtlinux
# Build
result = rtlinux.build(method="buildroot")
# Deploy
result = rtlinux.deploy("g5")
# Verify single node
health = rtlinux.verify("g1")
# → {"status": "healthy", "layers_ok": "5/5", ...}
# Verify fleet
fleet = rtlinux.verify_fleet(["g1", "g2", "d1", "d2"])
# → {"summary": "4/4 healthy", "fleet": {...}}
Architecture
┌────────────────────────────────────────────────┐
│ rtlinux Node │
│ │
│ kernel (Buildroot-compiled) │
│ └─ WireGuard (mesh VPN, auto-peering) │
│ └─ vssh daemon (remote execution) │
│ └─ mpop agent (orchestration) │
│ └─ MeshDB indexer (file search) │
│ └─ minimal userspace (BusyBox + musl) │
│ │
│ No SSH. No package manager. No systemd. │
│ Just MeshPOP. │
└────────────────────────────────────────────────┘
The MeshPOP Stack
| Layer | Package | PyPI |
|---|---|---|
| L0 | rtlinux | pip install rtlinux |
| L1 | Wire | pip install meshpop-wire |
| L2 | vssh | pip install vssh |
| L3 | mpop | pip install meshpop |
| L4 | MeshDB | pip install meshpop-db |
| L5 | Vault | pip install sv-vault |
Links
- Homepage: mpop.dev
- GitHub: github.com/meshpop/rtlinux
- All repos: github.com/meshpop
License
Apache-2.0
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file rtlinux-0.1.0.tar.gz.
File metadata
- Download URL: rtlinux-0.1.0.tar.gz
- Upload date:
- Size: 6.9 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3291be7114b4aec8314ddb97aee0b41a18dd1982b79c957e475c58194034e386
|
|
| MD5 |
8376cb372d5e95e299180e2a98373187
|
|
| BLAKE2b-256 |
56cdef7db085453362c84cce5c9e725077fa2a29e42a0472507d3b4e874d31e7
|
File details
Details for the file rtlinux-0.1.0-py3-none-any.whl.
File metadata
- Download URL: rtlinux-0.1.0-py3-none-any.whl
- Upload date:
- Size: 7.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5168b9dc95bc8b4b60897312572822619b879b1bec4c8fb33df984e690fe6613
|
|
| MD5 |
94e60f714ff8ed1a25172ed28d13558e
|
|
| BLAKE2b-256 |
aaad63f3527291b5b68d68618d793d95d87232c20f0bd638ff9c3c7e62c9382b
|