Alternatively, networking.wireguard.useNetworkd = false; should also help.
Edit: disregard that, you aren’t using wireguard module.
But yes, you can try networking.wireguard.interfaces option if you’re on nixos-unstable, it uses networkd as backend now when networking.useNetworkd = true; is set.
Weird… Maybe disabling ProtectSystem will help ensuring that it is actually a reason why it doesn’t work… Probably something like systemd.services.systemd-networkd.serviceConfig.ProtectSystem = lib.mkForce false;
Same error. I did not reboot with those values, btw. Only ran nixos-rebuild test. But since the override.conf was changed the effect should be the same. Even ran systemctl daemon-reload, just to be sure.
I tried enabling debug logging, but it didn’t shed any additional light. Figured I might as well share the debug log up to the wireguard interface failing:
systemd-networkd[70405]: Bus bus-api-network: changing state UNSET → OPENING
systemd-networkd[70405]: sd-bus: starting bus bus-api-network by connecting to /run/dbus/system_bus_socket...
systemd-networkd[70405]: Bus bus-api-network: changing state OPENING → AUTHENTICATING
systemd-networkd[70405]: Registering bus object implementation for path=/org/freedesktop/network1 iface=org.freedesktop.network1.Manager
systemd-networkd[70405]: Registering bus object implementation for path=/org/freedesktop/network1/link iface=org.freedesktop.network1.Link
systemd-networkd[70405]: Registering bus object implementation for path=/org/freedesktop/network1/link iface=org.freedesktop.network1.DHCPServer
systemd-networkd[70405]: Registering bus object implementation for path=/org/freedesktop/network1/link iface=org.freedesktop.network1.DHCPv4Client
systemd-networkd[70405]: Registering bus object implementation for path=/org/freedesktop/network1/link iface=org.freedesktop.network1.DHCPv6Client
systemd-networkd[70405]: Registering bus object implementation for path=/org/freedesktop/network1/network iface=org.freedesktop.network1.Network
systemd-networkd[70405]: Registering bus object implementation for path=/org/freedesktop/LogControl1 iface=org.freedesktop.LogControl1
systemd-networkd[70405]: sd-device-monitor(n/a): Failed to stat PID1's netns, ignoring: No such file or directory
systemd-networkd[70405]: wg0: Failed to read private key from /run/keys/wireguard-privkey. Ignoring network device.