nixos/iwd: fix DriverQuirks.DefaultInterface config option (#436696)

This commit is contained in:
Fernando Rodrigues
2025-08-25 09:43:45 +00:00
committed by GitHub
+9 -8
View File
@@ -13,17 +13,18 @@ let
mkOption
types
recursiveUpdate
optionalAttrs
;
cfg = config.networking.wireless.iwd;
ini = pkgs.formats.ini { };
defaults = {
# without UseDefaultInterface, sometimes wlan0 simply goes AWOL with NetworkManager
# https://iwd.wiki.kernel.org/interface_lifecycle#interface_management_in_iwd
DriverQuirks.UseDefaultInterface =
with config.networking.networkmanager;
(enable && (wifi.backend == "iwd"));
};
defaults =
with config.networking.networkmanager;
optionalAttrs (enable && (wifi.backend == "iwd")) {
# without DefaultInterface, sometimes wlan0 simply goes AWOL with NetworkManager
# https://iwd.wiki.kernel.org/interface_lifecycle#interface_management_in_iwd
DriverQuirks.DefaultInterface = "?*";
};
configFile = ini.generate "main.conf" (recursiveUpdate defaults cfg.settings);
in
@@ -64,7 +65,7 @@ in
{
assertion = !(cfg.settings ? General && cfg.settings.General ? UseDefaultInterface);
message = ''
`networking.wireless.iwd.settings.General.UseDefaultInterface` has been deprecated. Use `networking.wireless.iwd.settings.DriverQuirks.UseDefaultInterface` instead.
`networking.wireless.iwd.settings.General.UseDefaultInterface` has been deprecated. Use `networking.wireless.iwd.settings.DriverQuirks.DefaultInterface` instead.
'';
}
];