diff options
author | Volth <volth@webmaster.ms> | 2017-08-01 10:30:58 +0000 |
---|---|---|
committer | Volth <volth@webmaster.ms> | 2017-08-01 10:30:58 +0000 |
commit | d48b12c27c62496cb484872f2e51ea0e620738aa (patch) | |
tree | 31b1e798101a4ff6ad972b684ceda6dfea0ee66a /nixos | |
parent | 10cbb52ae7b79ca6e9d25abf9d8b103847924d76 (diff) | |
download | nixlib-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.nix | 8 |
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 ''} |