Skip to main content

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

License

Apache-2.0

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

rtlinux-0.2.0.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

rtlinux-0.2.0-py3-none-any.whl (7.2 kB view details)

Uploaded Python 3

File details

Details for the file rtlinux-0.2.0.tar.gz.

File metadata

  • Download URL: rtlinux-0.2.0.tar.gz
  • Upload date:
  • Size: 6.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for rtlinux-0.2.0.tar.gz
Algorithm Hash digest
SHA256 7ff69285be2565bc84803799fec3b0a4fe58eba6ee84035aef8eed127a145354
MD5 d1f9896a062da072bba807de6fc9c7ed
BLAKE2b-256 48f8bcb3af73220ae9596b31e8e7cb646e682ed81c6982c4ca61e7db702c1189

See more details on using hashes here.

File details

Details for the file rtlinux-0.2.0-py3-none-any.whl.

File metadata

  • Download URL: rtlinux-0.2.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.12.3

File hashes

Hashes for rtlinux-0.2.0-py3-none-any.whl
Algorithm Hash digest
SHA256 f36adad8289f4cca05bbad2daff74b0e9581845c8abebb1a33fbea5ffa54b0a8
MD5 eba9d918793bb4c4b89a986bfc82bbf5
BLAKE2b-256 23d70a0d89ee5e731951b43c1b5098bdf9ee76eeb7db92a9027127d45b7a9249

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page