I used nixos-infect on a system, so it uses the old networking.interfaces etc for the network configuration, but I added networking.useNetworkd = true; to get it working system working with systemd-networkd.
...
Starting Network Configuration...
Aug 08 20:03:59 spalf systemd-networkd[27228]: wg0: Failed to read private key from /run/keys/wireguard-privkey. Ignoring network device.
Aug 08 20:03:59 spalf systemd-networkd[27228]: lo: Link UP
...
For posterity: I ran into a similar issue with sops-nix. By adding the user systemd-network to the group keys (which is the group that sops-nix assigns to the directories that contain secrets), I was able to resolve it, without chown.
For reference, from systemd 256 onwards (which is the version on nixos-unstable), you can set a credential on the systemd-networkd service with a specific name, pointing to the private key file, which will automatically be used for the private key of the corresponding wireguard interface. The credentials are loaded as root, so no need anymore to change permissions on the actual secret files.