Go to file
Markus Maiwald d55b72a791
Rumpk CI / Build RISC-V 64 (push) Failing after 5s Details
Rumpk CI / Security Scan (push) Successful in 3s Details
license: Libertaria Sovereign License (LSL) v1.0
2026-02-15 20:15:33 +01:00
.forgejo/workflows ci: add Forgejo Actions workflow 2026-02-15 20:04:42 +01:00
.zig-cache/h feat(rumpk): dignified exit & sovereign vfs 2025-12-31 21:54:44 +01:00
apps chore: add operational notes and test shell source 2026-02-15 20:00:00 +01:00
boot feat(hal): ARM64 port, VirtIO MMIO, dual-arch HAL (M3.1-M3.3) 2026-02-15 19:58:51 +01:00
core feat(build): dual-arch build system — build_nim.sh, build_full.sh, run_aarch64.sh 2026-02-15 19:59:26 +01:00
docs docs(core): add Network Membrane technical documentation 2026-01-06 18:40:30 +01:00
hal chore: remove build artifacts — initrd.tar, compiled binaries, temp ELFs 2026-02-15 20:04:27 +01:00
io Rumpk Stability, NipBox Boot, and Repository Cleanup 2026-01-04 21:39:06 +01:00
libs feat(membrane): dual-arch membrane, freestanding stubs, Libertaria LWF integration 2026-02-15 19:59:20 +01:00
npl feat(userland): NipBox LITE subject binary, ARM64 init support 2026-02-15 19:59:30 +01:00
rootfs Phase 34: Orbital Drop - Fix console echo and eliminate 'R' flood regression 2026-01-03 18:07:18 +01:00
src/npl/system fix(virtio): overcome capability probe hang with paging enabled 2026-01-06 13:39:40 +01:00
vendor chore: remove build artifacts — initrd.tar, compiled binaries, temp ELFs 2026-02-15 20:04:27 +01:00
.gitignore chore: add .gitignore 2026-02-15 20:04:48 +01:00
LICENSE license: Libertaria Sovereign License (LSL) v1.0 2026-02-15 20:15:33 +01:00
README.md feat: Initialize Rumpk Modular Unikernel 2025-12-31 20:18:47 +01:00
build.zig feat(build): dual-arch build system — build_nim.sh, build_full.sh, run_aarch64.sh 2026-02-15 19:59:26 +01:00
build_full.sh feat(build): dual-arch build system — build_nim.sh, build_full.sh, run_aarch64.sh 2026-02-15 19:59:26 +01:00
build_lwip.sh feat(build): dual-arch build system — build_nim.sh, build_full.sh, run_aarch64.sh 2026-02-15 19:59:26 +01:00
build_nim.sh feat(build): dual-arch build system — build_nim.sh, build_full.sh, run_aarch64.sh 2026-02-15 19:59:26 +01:00
run.sh feat(build): dual-arch build system — build_nim.sh, build_full.sh, run_aarch64.sh 2026-02-15 19:59:26 +01:00
run_aarch64.sh feat(build): dual-arch build system — build_nim.sh, build_full.sh, run_aarch64.sh 2026-02-15 19:59:26 +01:00
zig-cc-wrapper.sh feat(build): dual-arch build system — build_nim.sh, build_full.sh, run_aarch64.sh 2026-02-15 19:59:26 +01:00

README.md

Rumpk: The Modular Unikernel

"The Kernel is a Library. The App is the OS."

Status: EXPERIMENTAL
Languages: Zig (L0) + Nim (L1)
Design: POSIX-hostile, Military-grade

Directory Structure

rumpk/
├── boot/           [L0] Entry & Architecture (Zig/Asm)
│   ├── start.S     Multiboot2/EFI entry point
│   └── arch/       Architecture-specific code
├── hal/            [L0] Hardware Abstraction (Zig)
│   ├── mm.zig      Physical/Virtual Memory
│   ├── irq.zig     Interrupt handling
│   ├── serial.zig  UART/Early logging
│   └── abi.zig     C-ABI export to Nim
├── core/           [L1] Logic (Nim)
│   ├── kernel.nim  kmain() entry
│   ├── sched.nim   LWKT Scheduler
│   ├── fiber.nim   Fiber/Context management
│   └── ring.nim    Disruptor buffer
├── sys/            [L2] ABI Glue
│   └── syscall.zig System call handlers
├── payload/        [L3] NPL/NPK Loaders
│   └── loader.nim  Signature verification
└── io/             I/O Subsystem
    └── governor.nim Adaptive War/Peace mode

Key Features

  • Adaptive I/O: War Mode (polling) ↔ Peace Mode (interrupts)
  • Disruptor Ring: Lock-free inter-fiber communication
  • SipHash IDs: Collision-resistant process identification
  • Ed25519: Only signed code executes

Specifications

Build (Coming Soon)

cd core/rumpk
zig build          # Build L0 HAL
nimble build       # Build L1 Logic