Skip to content

Build From Source

Tim edited this page Aug 15, 2026 · 3 revisions

Building NebulaOS from source

Developer documentation. Full detail: docs/BUILD_FROM_SOURCE.md — this page is a summary.

git clone https://github.com/coreflake1/NebulaOS-firmware.git
cd NebulaOS-firmware
./build.sh

Evidence: LIVE_HARDWARE_VERIFIED — this exact command, from a genuinely fresh clone, was run and hardware-qualified during the Final Closure mission (2026-08-15).

Prerequisites: Docker or Podman only. build.sh pulls one digest-pinned image, ghcr.io/coreflake1/nebulaos-build (pin lives in manifests/dependencies.conf), and runs the whole pipeline inside it — no nested containers, no host apt-get, no /var/run/docker.sock requirement. ~15GB free disk, network access throughout, a few hours build time.

No normal build needs, and no current doc should claim it needs: pellcorp/k1-bash-build, ghcr.io/coreflake1/guppydev, nested Docker, or runtime host apt-get. These were the pre-2026-08-15 architecture and are fully retired. See Build Environment.

Stages (scripts/build/, run in sequence inside the container by build.sh): 00-fetch-vendor-sources.sh01-apply-kernel-patches.sh02-configure-buildroot.sh03-build-kernel-and-rootfs.sh04-cross-compile-app-stack.sh05-final-build.sh06-verify.sh

Output: artifacts/buildroot-halley5-v30-image/ (kernel image, rootfs.ext2/rootfs.squashfs, build-manifest.txt, kernel.config) and artifacts/guppyscreen-mips/.

The build fetches every component fresh — it does not use neighboring local checkouts of NebulaOS-kernel, NebulaOS-klipper, or NebulaOS-guppyscreen. Building any of those three repos standalone does not produce a working printer image.

See also: Build Provenance, A/B Slot Model.

Clone this wiki locally