[libvirt] RFC: advertising graphics support (vnc, spice, sdl)

Daniel P. Berrange berrange at redhat.com
Tue Oct 23 15:21:46 UTC 2012


On Sun, Oct 21, 2012 at 04:26:39PM -0400, Cole Robinson wrote:
> On 10/19/2012 02:31 AM, Doug Goldstein wrote:
> > Currently consumers of libvirt's APIs must assume/attempt to define a
> > VM that uses spice, vnc, or sdl without knowing if the actual
> > hypervisor supports it. Obviously my discussion is very QEMU oriented
> > but it would be good to leave expansion for the future. I was thinking
> > that under the <guest> element for the capabilities we can add
> > something like:
> > 
> > <graphics>
> >   <spice/>
> >   <vnc/>
> >   <sdl/>
> > </graphics>
> > 
> 
> This is something I've wanted to do for a long long time but my scope is much
> bigger: libvirt really needs to report near everything it knows about qemu
> emulator capabilities to the API user so we don't need to keep large
> whitelists in apps like virt-manager. That doesn't mean we couldn't start here
> though.
> 
> The simplest place to put it is capabilties for sure, but if the scope is
> going to grow to cover more XML parameters it might be worth considering a
> separate API (but maybe we don't care if capabilities output is 100 pages long).
> 
> The XML format could quickly get hairy if you assume that in the future maybe
> we want to report what graphics types support password or other arbitrary XML
> elements, but maybe that's getting into the realm of rng schema.

On the one hand we already have per-emulator capabilities in the current
XML document, we machine types and the <features> block showing
<cpuselection/> and <deviceboot/> flags.

I think we should *not* put it in the existing capabilities XML document
though, because I think this will get enourmous very quickly - particularly
if you consider that we need to report this same data for every single
QEMU emulator we detect - and there are alot of them now. So I think we
ought to have a separate API that can be used to query just the specific
emulator you want to use.

Regards,
Daniel
-- 
|: http://berrange.com      -o-    http://www.flickr.com/photos/dberrange/ :|
|: http://libvirt.org              -o-             http://virt-manager.org :|
|: http://autobuild.org       -o-         http://search.cpan.org/~danberr/ :|
|: http://entangle-photo.org       -o-       http://live.gnome.org/gtk-vnc :|




More information about the libvir-list mailing list