NyxOS, rebuilt from scratch in Zig — a freestanding Multiboot kernel that boots on bare metal
Part of the NyxOS family — the same OS, rebuilt from zero in a different language each time. This is the Zig cut: a small Multiboot assembly stub hands control to kmain(), compiled by Zig for a x86-freestanding target — no std, no runtime. It writes its banner straight to VGA text memory.
Why Zig: freestanding by default, first-class C interop, and comptime. A single-binary toolchain that cross-compiles anywhere. Proven in the wild by a healthy crop of hobby kernels.
Needs zig (0.13), nasm, ld, and qemu.
make # -> nyxos-zig.elf (verified Multiboot with grub-file)
make run # boot it in QEMUboot.asm— Multiboot header + entry stub that callskmainkernel.zig— the freestanding Zig kernel (VGA console)linker.ld— links the kernel at 1 MiB, Multiboot header firstMakefile— build and boot
Early — it boots and paints the screen. Next up: a GDT, interrupts, and a VGA console backed by Zig's comptime.
