Disclaimer: I am not a programmer or computer scientist, and more generally still consider myself a relative novice when it comes to Linux generally. Anything that doesn’t sound sensible is likely due to my own misunderstanding. I have tried to include as many links as possible to source material when available.
I recently saw Linux content creator video about a new RFC to the Linux Kernel.
Brodie Robertson : “Turning Linux into a Library Operating System???”
https://www.youtube.com/watch?v=VNFtXNgq8ms
In it they discuss adding support for the “unikernel” model. As described by
RedHat Research : Unikernel
Linux https://research.redhat.com/blog/research_project/unikernel-linux/
, and the video linked there DevConf : “Unikernel Linux”
https://www.youtube.com/watch?v=Hu268xq9gMk
.
If I understand these sources correctly the main benefit is all applications are statically linked with a specialized kernel. With each application getting its own dedicated kernel build. So assuming that this change gets merged to the main kernel.
Kernel Mailing List : “Unikernel Linux RFC”
https://lore.kernel.org/lkml/20221003222133.20948-1-aliraza@bu.edu/
Would it be useful in extending NixOS’s reproducibility down to the hardware level? A lot of what is discussed when describing the unikernel model seems similar to the ideas underlying nix package management, and being able to specify a which kernel commit you want to build an application with as part of its derivation (sorry if I am butchering the terminology) seems like it would be useful.