nixos/initrd-network: add udhcpc.extraArgs option (#36305)

This can be used to fix issues where udhcpc times out before
acquiring a lease. For example of these issues, see:

https://bugs.alpinelinux.org/issues/3105#note-8

Signed-off-by: Dino A. Dai Zovi <ddz@theta44.org>
This commit is contained in:
Dino Dai Zovi 2018-03-05 10:53:59 -05:00 committed by Franz Pletz
parent 18055971cb
commit ddf13e6646

View file

@ -23,6 +23,8 @@ let
fi
'';
udhcpcArgs = toString cfg.udhcpc.extraArgs;
in
{
@ -47,6 +49,16 @@ in
'';
};
boot.initrd.network.udhcpc.extraArgs = mkOption {
default = [];
type = types.listOf types.str;
description = ''
Additional command-line arguments passed verbatim to udhcpc if
<option>boot.initrd.network.enable</option> and <option>networking.useDHCP</option>
are enabled.
'';
};
boot.initrd.network.postCommands = mkOption {
default = "";
type = types.lines;
@ -91,7 +103,7 @@ in
# Acquire a DHCP lease.
echo "acquiring IP address via DHCP..."
udhcpc --quit --now --script ${udhcpcScript} && hasNetwork=1
udhcpc --quit --now --script ${udhcpcScript} ${udhcpcArgs} && hasNetwork=1
fi
''