Description of problem:
The current netcf backend in libvirt requires root privileges to operate. It should be possible to provide an alternative implementation that talks to NetworkManager to perform changes. This will work as root and non-root.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
A current blocker is of course that NM doesn't support the configuration of bridge interfaces. AFAIK, the plan to make that happen is still to have NM use netcf, but no resources have been put on that project.
Since NM is written in python, one prerequisite of that is python bindings for netcf.
I'm not sure where upstream NetworkManager's equivalent of bugzilla is located.
Even if NM doesn't yet support bridges, there's still value in letting unprivileged users configure plain eth/wifi interfaces via libvirt, so that NAT based connectivity can be setup. In fact for qemu://session that's pretty much all we want to be able todo via NM. Only changing qemu://system is dependant on bridging/bonding/vlans
Which reminds me that the libvirt/netcf XML/API doesn't have any way to provide wifi keys, or ESSID, channel, etc :-)
Just a FYI, I'm working on getting both bonding and bridging support into NM and it will be available for RHEL7.0.
Can you elaborate on the interfaces you would need on NM's side?
I'd rather have netcf or a small python script be able to write an ifcfg file unprivleged and have NM pick it.
This is a nice idea, but since the interface APIs never really took off with applications and netcf has more or less languished, I don't think this will ever be implemented, nor is it worth tracking