On Wed, Mar 23, 2022 at 12:01:19PM +0400, Marc-André Lureau wrote: > Hi > > On Wed, Mar 23, 2022 at 12:47 AM Jonathon Jongsma <jjongsma@xxxxxxxxxx> wrote: > > > > This patch series enables support for the qemu-vdagent character device which > > enables copy/paste support between guest and client when using vnc graphics. > > > > The guest must be configured with something like the following: > > > > <channel type='qemu-vdagent'> > > <source clipboard='on' mouse='on'/> > > <target type='virtio' name='com.redhat.spice.0'/> > > </channel> > > > > Copy/paste sync requires a vnc client that has support for copy/paste commands. > > Currently virt-viewer does not work, but the version of tigervnc provided by > > fedora (executable name 'vncviewer') does work. > > > > More details about this device on Gerd's blog: > > https://www.kraxel.org/blog/2021/05/qemu-cut-paste/ > > > > OPEN QUESTIONS: > > > > - I'm not fully convinced that the `<source>` element is the right place for > > the new `clipboard` / `mouse` configuration options, but I'm not sure that > > adding a new xml element to the `<channel>` is the right approach either. > > Suggestions welcome. > > I am not convinced <channel> is appropriate either for -chardev > qemu-vdagent. That's why in my dbus display series it's an > implementation detail > (https://patchew.org/Libvirt/20211222194345.766352-1-marcandre.lureau@xxxxxxxxxx/20211222194345.766352-13-marcandre.lureau@xxxxxxxxxx/), > and it's not exposed to the domain XML directly. However I realize > that my approach is probably broken, as it looks like I totally missed > the associated virtserialport! :) > > As you say "source" is strange to put those extra channel options too. > > And the only really valid associated device is a virtserialport of > name "com.redhat.spice.0", so what's the point in exposing that detail > to the user? At the QEMU level we have one serial port with chardv -chardev qemu-vdagent,id=ch1,name=vdagent,clipboard=on -device virtio-serial-pci \ -device virtserialport,chardev=ch1,id=ch1,name=com.redhat.spice.0 but IIUC, we can have multiple frontends - ie both VNC and DBus display, and in that case the clipboard=on property on the chardev will apply to both VNC & DBus displays. We can't control clipboard independantly for the displays, so it is right to put the control in the XML for the <channel> for both VNC and DBus. With regards, Daniel -- |: https://berrange.com -o- https://www.flickr.com/photos/dberrange :| |: https://libvirt.org -o- https://fstop138.berrange.com :| |: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|