Sorry to necrobump this, but coming across this several times in the past weeks. But how do you guys manage the size of the /boot partition? Because the default 500M, doesn’t even let me have more than two versions of the kernel.
Same for me when using unstable branch, I plan to do manual partitioning in a future reinstall (since I’m not sure how to increase the existing partition without breaking my system ^^).
I checked and unfortunately calamares (the installer used by NixOS) don’t allow to resize the partition when using “erase disk” option.
Using alternatives than the calamares installer is the easiest here.
One can use disko for declarative disk management, or just the normal manual install from the iso (which has serves a long time a good job before people added calamares).
[rant about adding calamares, no need to continue reading here]
I personally dont like our calamares images, as i have the feeling its not well maintained and dont serve sane defaults (like your example here) and IMHO it gives a very wrong impression to the new users how to handle nixos. If one wants to install nixos they should either already be very familar with consoles or become familiar very very fast.
Hiding the installation behind a graphical tooling that does a bad (IMHO) job is a very big trap.
Its the same to throw users into a gentoo system with a UI and then let them tinker with USE-Flags…
Its like giving a shotgun to a person and then wondering why they shoot their feet.
Providing a graphical live medium is a different story, so that one can easily research questions they dont understand without aborting their installation customizations, but that was already a thing before calamares.
I was thinking the same thing. Because when I first install this system I got like several generations without any issues until some change I introduced. How would I come to troubleshoot why is it this large?
The dracut package provides a program called lsinitrd that you can use to see what’s in those initrd files. Normally, it’s a very small subset of nixos, but yours has a lot of extra stuff in it. Usually this is caused by using one of the boot.initrd.* options to refer to a program by its regular path rather than copying it with copy_bin_and_libs in a boot.initrd.extraUtilsCommands script. Using its regular path copies its entire nix closure instead of just the program.