···288 ${i}
289 '')}" > /run/${n}.interfaces
290291+ ${optionalString config.virtualisation.libvirtd.enable ''
292+ # Enslave dynamically added interfaces which may be lost on nixos-rebuild
293+ for uri in qemu:///system lxc:///; do
294+ for dom in $(${pkgs.libvirt}/bin/virsh -c $uri list --name); do
295+ ${pkgs.libvirt}/bin/virsh -c $uri dumpxml "$dom" | \
296+ ${pkgs.xmlstarlet}/bin/xmlstarlet sel -t -m "//domain/devices/interface[@type='bridge'][source/@bridge='${n}'][target/@dev]" -v "concat('ip link set ',target/@dev,' master ',source/@bridge,';')" | \
297+ ${pkgs.bash}/bin/bash
298+ done
299+ done
300+ ''}
301+302 # Enable stp on the interface
303 ${optionalString v.rstp ''
304 echo 2 >/sys/class/net/${n}/bridge/stp_state