initrd-network: call postCommands only if network is up

This commit is contained in:
Nikolay Amiantov 2016-02-03 15:51:28 +03:00
parent 20b54bd989
commit b4528a696a

View file

@ -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
'');
};