nixos/netboot: use makeInitrdNG to shrink ramdisk size

Previously, `makeInitrd` added the whole closure of the squashfs
derivation to initrd.
This closure contains the squashfs.img and some store paths which are
still referenced by the compressed squashfs.img.
These extra store paths are unused in stage 1.

With `makeInitrdNG` only the squashfs.img is added to the initrd.
(`makeInitrdNG` only resolves shared library references instead of the
whole closure).

This shrinks the netboot ramdisk by ~6% for a minimal system and
significantly decreases the size of the uncompressed root filesystem
in stage 1.
This commit is contained in:
Erik Arvstedt 2022-06-07 14:05:59 +02:00
parent c5d810f4c7
commit 64589bcefa
No known key found for this signature in database
GPG key ID: 33312B944DD97846

View file

@ -81,7 +81,7 @@ with lib;
# Create the initrd
system.build.netbootRamdisk = pkgs.makeInitrd {
system.build.netbootRamdisk = pkgs.makeInitrdNG {
inherit (config.boot.initrd) compressor;
prepend = [ "${config.system.build.initialRamdisk}/initrd" ];