Description of problem: If virbr0 (or whatever LIBGUESTFS_BACKEND_SETTINGS=network_bridge=... points to) doesn't exist, then when we start libvirt we get a pretty useless error: virt-builder: error: libguestfs error: could not create appliance through libvirt. Try running qemu directly without libvirt using this environment variable: export LIBGUESTFS_BACKEND=direct Original error from libvirt: Cannot get interface MTU on 'virbr0': No such device [code=38 domain=0] We could avoid this error entirely by checking if the network exists before starting libvirt. Version-Release number of selected component (if applicable): libguestfs from git How reproducible: 100% Steps to Reproduce: $ LIBGUESTFS_BACKEND=libvirt \ LIBGUESTFS_BACKEND_SETTINGS=network_bridge=nosuchnetwork \ guestfish --network run libguestfs: error: could not create appliance through libvirt. Try running qemu directly without libvirt using this environment variable: export LIBGUESTFS_BACKEND=direct Original error from libvirt: failed to retrieve file descriptor for interface: Transport endpoint is not connected [code=38 domain=10]
https://stackoverflow.com/questions/19227781/linux-getting-all-network-interface-names
Patch posted: https://www.redhat.com/archives/libguestfs/2015-September/msg00042.html
Fixed upstream in libguestfs >= 1.31.6.