Skip to content

Developer Install From Stock

Tim edited this page Aug 15, 2026 · 3 revisions

First install from stock

Full detail lives in docs/DEVELOPER_INSTALL_FROM_STOCK.md — this page is the short version.

NebulaOS goes into the printer's second, normally-empty custom slot, so you don't need to touch or overwrite the stock system to try it.

This assumes you already have root/SSH access on the printer's stock firmware — getting that in the first place is out of scope here, same as every other Creality K1/KE mod project.

The sequence:

  1. Build (./build.sh) or grab the artifacts — see Build From Source.
  2. scp them to the printer, staged under /usr/data (not /tmp — it's tmpfs, and can run out of space partway through the transfer).
  3. Check the transferred files' sha256sum against build-manifest.txt.
  4. scripts/flash-spare-slot.sh --check-only — doesn't write anything, just confirms the slot mapping, active slot, target slot, sizes, and manifest hashes all check out.
  5. Run the real flash. It always targets slot 2, and refuses if that turns out to be the slot you're currently running from.
  6. Flip the boot marker forward using stock's own tool: sh -c '. /etc/ota_bin/ota_local_method.sh; local_set_next_boot_device'
  7. Reboot, and watch it go through S00revert-safety → service bring-up → S99confirm-good.

See A/B Slot Model for what each of those boot stages is actually doing.

One honest caveat: we've tested this flashing path thoroughly on real hardware, but every run on record had already had something flashed to the custom slot before. We haven't specifically tested a printer whose custom slot has literally never been written — there's no reason to expect it'd behave differently, but it hasn't been directly verified.

Clone this wiki locally