NexBox
First Boot Complete
NexBox is the primary distribution — a Linux-musl based system for desktops, cloud servers, and Kubernetes deployments.
Base Stack
| Component | Implementation | Size |
|---|---|---|
| Kernel | Linux 6.18.2 (LLVM-compiled) | 5.3MB |
| Userland | ToyBox 0.8.11 (static, 86 applets) | ~200KB |
| Init | Dinit 0.17.1 (static) | ~100KB |
| Package Manager | nip (cross-compiled) | ~2MB |
| C Library | musl (static) | Linked into binaries |
| Network | udhcpc (from ToyBox) | Included |
Boot Image
The build produces a 256MB ext4 image:
sh
cd nexus-forge/core/nexus && ./nexus forge --target=nexbox --arch=x86_64Output: build/nexbox/dist/nexbox.img + vmlinuz
Build time: ~36 seconds (kernel cached). All 4 components build clean.
Filesystem Layout
NexBox uses the Sovereign FSH with POSIX compatibility symlinks:
/Cas/current/bin/ # 90 binaries (toybox applets + dinit + dinitctl + nip + udhcpc)
/Nexus/ # Kernel, boot config
/Cell/ # Per-process state
/Bus/ # Communication endpoints
/Data/ # Persistent data
# Compatibility symlinks
/bin → /Cas/current/bin
/lib → /Cas/current/lib
/tmp → ephemeralBoot Sequence
- QEMU/hardware loads
vmlinuz - Linux kernel initializes, mounts root filesystem
- Dinit starts as PID 1
- Services are started per Dinit service definitions
- NexBox banner displayed, shell prompt available
Boot command:
sh
./boot_nexbox.shDesktop Variants
Default Desktop (Planned)
- KDE Plasma 6 on Wayland
- systemd (replaces Dinit for desktop)
- Immutable root filesystem
- nip + NipCells for application management
Pro Desktop (Planned)
- Hyprland or Niri window manager
- Dinit init
- nip only (no Flatpak/Snap)
- Minimal footprint
Cloud/Server
- containerd / podman pre-installed
- Kubernetes-ready (kubeadm, kubectl)
- Pledge/unveil enforcement on containers
- UTCP for inter-node communication
Known Issues
mkdir: write: Bad file descriptorduring init (cosmetic, non-blocking)- nimkdl
parseKdlFilenot implemented — usereadFile+parseKdlworkaround