What works:
- GRUB chainloads FreeBSD's bootloader
- Both systems share a ZFS pool
- Everything is defined in a single Nix flake
- Fully reproducible builds (some dependencies are now cached on Cachix)
Planned: - Support native compilation of NixBSD (currently cross-compiled on Linux)
- Many shortcuts were taken to get this working, needs lots of cleanup
- Add a semi-automated installer like nixos-wizard
Try it: qemu-system-x86_64 -enable-kvm -m 2048 \
-bios /usr/share/ovmf/OVMF.fd \
-drive file=nixos.root.img,format=raw
Login: nixos/nixos or root/toorThe hardest parts were getting mounts working at boot, making the bootloader setup idempotent, and debugging early init. This disk image could potentially work on a USB stick with a bit more work.
This is very much experimental. My goal is to eventually produce a proper NixBSD installation ISO and consolidate all configuration into one repository while still consuming upstream NixBSD as a flake.
Download: https://github.com/jonhermansen/nixbsd-demo/releases/tag/bui...
Feel free to leave feedback here or on GitHub! Thanks!