diff --git a/nixos/modules/system/boot/initrd-network.nix b/nixos/modules/system/boot/initrd-network.nix
index 4a6e1c7e56e..33862b0965c 100644
--- a/nixos/modules/system/boot/initrd-network.nix
+++ b/nixos/modules/system/boot/initrd-network.nix
@@ -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
+ and
+ 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
''