diff --git a/nixos/doc/manual/release-notes/rl-2103.xml b/nixos/doc/manual/release-notes/rl-2103.xml
index e40598082f9..e0857e7731e 100644
--- a/nixos/doc/manual/release-notes/rl-2103.xml
+++ b/nixos/doc/manual/release-notes/rl-2103.xml
@@ -107,6 +107,15 @@
user D-Bus session available also for non-graphical logins.
+
+
+ The networking.wireless.iwd module now installs
+ the upstream-provided 80-iwd.link file, which sets the NamePolicy=
+ for all wlan devices to "keep kernel", to avoid race conditions
+ between iwd and networkd. If you don't want this, you can set
+ systemd.network.links."80-iwd" = lib.mkForce {}.
+
+
rubyMinimal was removed due to being unused and
diff --git a/nixos/modules/services/networking/iwd.nix b/nixos/modules/services/networking/iwd.nix
index 6be67a8b96f..99e5e78badd 100644
--- a/nixos/modules/services/networking/iwd.nix
+++ b/nixos/modules/services/networking/iwd.nix
@@ -22,6 +22,11 @@ in {
systemd.packages = [ pkgs.iwd ];
+ systemd.network.links."80-iwd" = {
+ matchConfig.Type = "wlan";
+ linkConfig.NamePolicy = "keep kernel";
+ };
+
systemd.services.iwd.wantedBy = [ "multi-user.target" ];
};