NixOS on ARM/Kosagi Novena

From NixOS Wiki

We now have repository that can be used to build Novena specific kernel and few other tools like novena-eeprom and novena-usb-hub.

Also check out for general purpose documentation. This guide might move there at some point.

Using generic image

NixOS on ARM

use generic armv7l image (sd-image-armv7l-linux.img)


Build u-boot according to


make novena_defconfig
dd if=SPL of=/dev/sdc seek=1 bs=1k

Store u-boot.bin on /boot (mounted sd-image).

Proceed with standard installation steps and NixOS_on_ARM#Building_U-Boot_from_your_NixOS_PC

You can use your own layout when installing on the hard drive (SD-card is still needed to boot from SATA), extlinux insted of grub is important.

Configuring SATA boot

To enable booting from SATA by default enable sataroot feature with novena-eeprom and then break to u-boot shell and run following commands to set different boot order:

TODO: disk ID

setenv boot_targets sata0