+11
nixos/modules/tasks/network-interfaces-scripted.nix
+11
nixos/modules/tasks/network-interfaces-scripted.nix
···
288
288
${i}
289
289
'')}" > /run/${n}.interfaces
290
290
291
+
${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
+
291
302
# Enable stp on the interface
292
303
${optionalString v.rstp ''
293
304
echo 2 >/sys/class/net/${n}/bridge/stp_state