diff --git a/nixos/modules/system/boot/initrd-network.nix b/nixos/modules/system/boot/initrd-network.nix index 8ccf56ff6e0..6e226c19060 100644 --- a/nixos/modules/system/boot/initrd-network.nix +++ b/nixos/modules/system/boot/initrd-network.nix @@ -63,9 +63,9 @@ in copy_bin_and_libs ${pkgs.mkinitcpio-nfs-utils}/bin/ipconfig ''; - boot.initrd.preLVMCommands = + boot.initrd.preLVMCommands = mkBefore ( # Search for interface definitions in command line. - mkBefore '' + '' for o in $(cat /proc/cmdline); do case $o in ip=*) @@ -87,11 +87,16 @@ in # Acquire a DHCP lease. echo "acquiring IP address via DHCP..." - udhcpc --quit --now --script ${udhcpcScript} + udhcpc --quit --now --script ${udhcpcScript} && hasNetwork=1 fi '' - + cfg.postCommands; + + '' + if [ -n "$hasNetwork" ]; then + echo "networking is up!" + ${cfg.postCommands} + fi + ''); };