summary refs log tree commit diff
path: root/nixos
diff options
context:
space:
mode:
authorVolth <volth@webmaster.ms>2017-08-01 10:30:58 +0000
committerVolth <volth@webmaster.ms>2017-08-01 10:30:58 +0000
commitd48b12c27c62496cb484872f2e51ea0e620738aa (patch)
tree31b1e798101a4ff6ad972b684ceda6dfea0ee66a /nixos
parent10cbb52ae7b79ca6e9d25abf9d8b103847924d76 (diff)
downloadnixlib-d48b12c27c62496cb484872f2e51ea0e620738aa.tar
nixlib-d48b12c27c62496cb484872f2e51ea0e620738aa.tar.gz
nixlib-d48b12c27c62496cb484872f2e51ea0e620738aa.tar.bz2
nixlib-d48b12c27c62496cb484872f2e51ea0e620738aa.tar.lz
nixlib-d48b12c27c62496cb484872f2e51ea0e620738aa.tar.xz
nixlib-d48b12c27c62496cb484872f2e51ea0e620738aa.tar.zst
nixlib-d48b12c27c62496cb484872f2e51ea0e620738aa.zip
support lxc:/// and ignore weird bridges (like openvswitch)
Diffstat (limited to 'nixos')
-rw-r--r--nixos/modules/tasks/network-interfaces-scripted.nix8
1 files changed, 6 insertions, 2 deletions
diff --git a/nixos/modules/tasks/network-interfaces-scripted.nix b/nixos/modules/tasks/network-interfaces-scripted.nix
index 8328eed076ec..0cfb8d525e33 100644
--- a/nixos/modules/tasks/network-interfaces-scripted.nix
+++ b/nixos/modules/tasks/network-interfaces-scripted.nix
@@ -253,8 +253,12 @@ let
 
               ${optionalString config.virtualisation.libvirtd.enable ''
                   # Enslave dynamically added interfaces which may be lost on nixos-rebuild
-                  for dom in $(${pkgs.libvirt}/bin/virsh list --name); do
-                    ${pkgs.libvirt}/bin/virsh dumpxml "$dom" | ${pkgs.xmlstarlet}/bin/xmlstarlet sel -t -m "//domain/devices/interface[@type='bridge']"  -v "concat('ip link set ',target/@dev,' master ',source/@bridge)" | ${pkgs.bash}/bin/bash
+                  for uri in qemu:///system lxc:///; do
+                    for dom in $(${pkgs.libvirt}/bin/virsh -c $uri list --name); do
+                      ${pkgs.libvirt}/bin/virsh -c $uri dumpxml "$dom" | \
+                      ${pkgs.xmlstarlet}/bin/xmlstarlet sel -t -m "//domain/devices/interface[@type='bridge'][target/@dev][source/@bridge]" -v "concat('ip link set ',target/@dev,' master ',source/@bridge)" | \
+                      ${pkgs.bash}/bin/bash
+                    done
                   done
                 ''}