NixOS on ARM: Difference between revisions

imported>Ganagram
Reword intro paragraph
Line 1: Line 1:
ARM support for NixOS is a work-in-progress, but is progressing quickly.
NixOS supports ARM.


The support varies depending on the architecture and the specific boards. The way the ARM integration is built into NixOS is by making generic builds the first-class citizens; as soon as there is upstream support for the board in the kernel and the bootloader, NixOS should work once updated to these versions. It is still possible, when needed, to build and use a customised bootloader and kernel for specific boards<sup>[[Talk:NixOS_on_ARM#NixOS_.22support.22_for_board-specific_kernels_or_bootloaders|[reference needed]]]</sup>. At this moment in time (late 2021) only AArch64 has full support upstream.
The support level varies depending on the architecture and the specific ecosystems and boards.


Though, neither armv6l or armv7l are being ignored, fixes are worked on and approved as needed; what's missing is support and upstream builds being maintained in binary form. At the time of writing, no publicly available caches for armv6l or armv7l are available.<!-- please get in touch with samueldr on the NixOS on ARM channel if you want to share your own cache, before editing. We need to review the wording to make it crystal clear it's a user-provided cache. -->
The way the ARM integration is built into NixOS is by making '''generic builds the first-class citizens'''. This means that as soon as there is upstream support for the board in the kernel and platform firmware, NixOS should work once those are updated.
 
It is still possible, when needed, to build and use a customized platform firmware and kernel for specific boards<sup>[[Talk:NixOS_on_ARM#NixOS_.22support.22_for_board-specific_kernels_or_bootloaders|[reference needed]]]</sup>.
 
At this moment in time (early 2024) '''only AArch64''' has full support upstream. With that said, neither armv6l or armv7l are being ignored, fixes are worked on and approved as needed. What's missing is support and builds being maintained in binary form. At the time of writing, no publicly available caches for armv6l or armv7l are available.<!-- please get in touch with samueldr on the NixOS on ARM channel if you want to share your own cache, before editing. We need to review the wording to make it crystal clear it's a user-provided cache. -->


'''For images links, including UEFI install''', skip to the [[NixOS on ARM#Installation|Installation]] section.
'''For images links, including UEFI install''', skip to the [[NixOS on ARM#Installation|Installation]] section.