Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)

Merge pull request #27678 from volth/restore-bridge-slaves-dynamically-added-by-libvirt

nixos/networking-scripted: restore bridge slaves dynamically added by…

authored by Frederik Rietdijk and committed by GitHub 8bcdb39a 4ff4ef51

Changed files
+11
nixos
+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