NeoDev is the official build, image, run, test, and CI toolchain for the NeoDOS operating system.
It replaces legacy shell scripts with a single Rust binary.
# Install
cargo install --path .
# Point to NeoDOS and build
neodev --neodos-path /path/to/NeoDOS build --image
# Run in QEMU
neodev run
# Run tests
neodev test| Command | Description |
|---|---|
neodev build |
Build kernel, bootloader, user binaries, NXL, NEM |
neodev build --quick |
Kernel + bootloader only |
neodev build --image |
Build and generate disk image |
neodev image |
Create NE2, ESP, and GPT disk image |
neodev run |
Run NeoDOS in VM (QEMU default) |
neodev run --kvm --gdb |
KVM acceleration + GDB server |
neodev test |
Run automated tests in headless VM |
neodev clean |
Remove build artifacts |
neodev list |
List discovered projects |
neodev config |
Show current configuration |
neodev vm start|stop|create|delete |
Manage VMs |
NeoDev loads configuration from (in order):
~/.config/neodev/neodev.toml(global)<neodos_root>/neodev.toml(project)--config <path>(explicit override)
Example neodev.toml:
[project]
esp_size_mb = 100
kernel_target = "x86_64-unknown-none"
bootloader_target = "x86_64-unknown-uefi"
[vm]
backend = "qemu"
memory = 512
cpus = 2
network = "bridged"
[qemu]
kvm = false
ovmf_code = "/usr/share/OVMF/OVMF_CODE.fd"
ovmf_vars_template = "/usr/share/OVMF/OVMF_VARS.fd"NeoDev finds the NeoDOS project through (priority order):
--neodos-path <path>CLI flagNEODOS_PATHenvironment variable- Auto-detection: walks up from current directory looking for
neodos-kernel/Cargo.toml
| Backend | Command | Requirements |
|---|---|---|
| QEMU (default) | neodev run |
qemu-system-x86_64, OVMF |
| VirtualBox | neodev run --backend virtualbox |
VBoxManage |
Full documentation in the docs/ directory:
MIT — see LICENSE.