virt-manager-4.1.0-1.el9
- Rebased to virt-manager-4.1.0 (rhbz#2135791) - cloner: Sync <uuid> and <sysinfo> system uuid (rhbz#2038040) Resolves: rhbz#2038040, rhbz#2135791
This commit is contained in:
parent
101980543b
commit
ce8b68c40f
2
sources
2
sources
@ -1 +1 @@
|
||||
SHA512 (virt-manager-4.0.0.tar.gz) = 115dc3feb499bb2f1f6df537bffe150d23b9b568fe8047d43577a138ff9b9180b10259dde3476136cdc85750576da1104e81a8c2f5761b4f2a89852467761f81
|
||||
SHA512 (virt-manager-4.1.0.tar.gz) = 725cb5bcbaebaafae417f95deffb4243ccdad769668cba6e1235f4607e2b29dbd099d2a9a3885981158f53ea854dd71cc29ed9d7557b2791161c13d34f2ef883
|
||||
|
98
virt-manager-cloner-Sync-uuid-and-sysinfo-system-uuid.patch
Normal file
98
virt-manager-cloner-Sync-uuid-and-sysinfo-system-uuid.patch
Normal file
@ -0,0 +1,98 @@
|
||||
From deb27a8c7e1539e687d589edd7ea517018266f77 Mon Sep 17 00:00:00 2001
|
||||
From: Cole Robinson <crobinso@redhat.com>
|
||||
Date: Sun, 21 Aug 2022 16:21:10 -0400
|
||||
Subject: [PATCH] cloner: Sync <uuid> and <sysinfo> system uuid
|
||||
|
||||
Otherwise libvirt errors like:
|
||||
|
||||
ERROR UUID mismatch between <uuid> and <sysinfo>
|
||||
|
||||
https://bugzilla.redhat.com/show_bug.cgi?id=2038040
|
||||
|
||||
Signed-off-by: Cole Robinson <crobinso@redhat.com>
|
||||
(cherry picked from commit b0d0516736320315a70f74aff3759fb35dd35d9d)
|
||||
|
||||
Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2038040
|
||||
Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com>
|
||||
---
|
||||
tests/data/cli/compare/virt-clone-auto-unmanaged.xml | 5 +++++
|
||||
tests/data/cli/compare/virt-clone-unmanaged-preserve.xml | 5 +++++
|
||||
tests/data/cli/virtclone/clone-disk.xml | 5 +++++
|
||||
virtinst/cloner.py | 6 ++++--
|
||||
4 files changed, 19 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/tests/data/cli/compare/virt-clone-auto-unmanaged.xml b/tests/data/cli/compare/virt-clone-auto-unmanaged.xml
|
||||
index 21a9a6398..f2043be25 100644
|
||||
--- a/tests/data/cli/compare/virt-clone-auto-unmanaged.xml
|
||||
+++ b/tests/data/cli/compare/virt-clone-auto-unmanaged.xml
|
||||
@@ -1,6 +1,11 @@
|
||||
<domain type="test">
|
||||
<name>origtest-clone</name>
|
||||
<uuid>00000000-1111-2222-3333-444444444444</uuid>
|
||||
+ <sysinfo type="smbios">
|
||||
+ <system>
|
||||
+ <entry name="uuid">00000000-1111-2222-3333-444444444444</entry>
|
||||
+ </system>
|
||||
+ </sysinfo>
|
||||
<memory>8388608</memory>
|
||||
<currentMemory>2097152</currentMemory>
|
||||
<vcpu>2</vcpu>
|
||||
diff --git a/tests/data/cli/compare/virt-clone-unmanaged-preserve.xml b/tests/data/cli/compare/virt-clone-unmanaged-preserve.xml
|
||||
index 3bdbbbe36..c003ed3ee 100644
|
||||
--- a/tests/data/cli/compare/virt-clone-unmanaged-preserve.xml
|
||||
+++ b/tests/data/cli/compare/virt-clone-unmanaged-preserve.xml
|
||||
@@ -1,6 +1,11 @@
|
||||
<domain type="test">
|
||||
<name>clonetest</name>
|
||||
<uuid>00000000-1111-2222-3333-444444444444</uuid>
|
||||
+ <sysinfo type="smbios">
|
||||
+ <system>
|
||||
+ <entry name="uuid">00000000-1111-2222-3333-444444444444</entry>
|
||||
+ </system>
|
||||
+ </sysinfo>
|
||||
<memory>8388608</memory>
|
||||
<currentMemory>2097152</currentMemory>
|
||||
<vcpu>2</vcpu>
|
||||
diff --git a/tests/data/cli/virtclone/clone-disk.xml b/tests/data/cli/virtclone/clone-disk.xml
|
||||
index da1eb0a63..2f6e916d7 100644
|
||||
--- a/tests/data/cli/virtclone/clone-disk.xml
|
||||
+++ b/tests/data/cli/virtclone/clone-disk.xml
|
||||
@@ -1,6 +1,11 @@
|
||||
<domain type='test' id='1'>
|
||||
<name>origtest</name>
|
||||
<uuid>db69fa1f-eef0-e567-3c20-3ef16f10376b</uuid>
|
||||
+ <sysinfo type='smbios'>
|
||||
+ <system>
|
||||
+ <entry name='uuid'>db69fa1f-eef0-e567-3c20-3ef16f10376b</entry>
|
||||
+ </system>
|
||||
+ </sysinfo>
|
||||
<memory>8388608</memory>
|
||||
<currentMemory>2097152</currentMemory>
|
||||
<vcpu>2</vcpu>
|
||||
diff --git a/virtinst/cloner.py b/virtinst/cloner.py
|
||||
index 34a702f91..9334513c5 100644
|
||||
--- a/virtinst/cloner.py
|
||||
+++ b/virtinst/cloner.py
|
||||
@@ -352,8 +352,7 @@ class Cloner(object):
|
||||
"""
|
||||
self._new_guest.id = None
|
||||
self._new_guest.title = None
|
||||
- self._new_guest.uuid = None
|
||||
- self._new_guest.uuid = Guest.generate_uuid(self.conn)
|
||||
+ self.set_clone_uuid(Guest.generate_uuid(self.conn))
|
||||
|
||||
for dev in self._new_guest.devices.graphics:
|
||||
if dev.port and dev.port != -1:
|
||||
@@ -408,6 +407,9 @@ class Cloner(object):
|
||||
Override the new VMs generated UUId
|
||||
"""
|
||||
self._new_guest.uuid = uuid
|
||||
+ for sysinfo in self._new_guest.sysinfo:
|
||||
+ if sysinfo.system_uuid:
|
||||
+ sysinfo.system_uuid = uuid
|
||||
|
||||
def set_replace(self, val):
|
||||
"""
|
||||
--
|
||||
2.38.1
|
||||
|
@ -1,146 +0,0 @@
|
||||
From 6ec78c1b8a935bd5fe0896dc323bfdf51cc67585 Mon Sep 17 00:00:00 2001
|
||||
From: Jonathon Jongsma <jjongsma@redhat.com>
|
||||
Date: Wed, 18 May 2022 17:03:29 -0500
|
||||
Subject: [PATCH] virt-install: add support for qemu-vdagent channel
|
||||
|
||||
This allows support for host/guest clipboard sharing when using vnc
|
||||
guests (and possibly other graphics types in the future). This channel
|
||||
is similar to the spicevmc channel, but it contains a couple additional
|
||||
options to enable/disable clipboard sharing and specify the mouse mode.
|
||||
In the case of spice, these settings are specified on the 'graphics'
|
||||
element, but for qemu-vdagent, they are specified on the channel. For
|
||||
example:
|
||||
|
||||
--channel=qemu-vdagent,source.clipboard.copypaste=on,source.mouse.mode=client
|
||||
|
||||
Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com>
|
||||
(cherry picked from commit 44355e5ed0d0791675e8113732dde37664d5aa91)
|
||||
|
||||
Resolves https://bugzilla.redhat.com/show_bug.cgi?id=2060724
|
||||
|
||||
Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com>
|
||||
---
|
||||
man/virt-install.rst | 9 +++++++++
|
||||
tests/data/cli/compare/virt-install-many-devices.xml | 7 +++++++
|
||||
tests/test_cli.py | 5 +++--
|
||||
virtinst/cli.py | 2 ++
|
||||
virtinst/devices/char.py | 8 +++++++-
|
||||
5 files changed, 28 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/man/virt-install.rst b/man/virt-install.rst
|
||||
index c1d1c1aa1..3a6e8dcd2 100644
|
||||
--- a/man/virt-install.rst
|
||||
+++ b/man/virt-install.rst
|
||||
@@ -1761,6 +1761,15 @@ Some of the types of character device redirection are:
|
||||
and can be any string, such as the default com.redhat.spice.0 that
|
||||
specifies how the guest will see the channel.
|
||||
|
||||
+``--channel qemu-vdagent,target.type=virtio[,target.name=NAME]``
|
||||
+ Communication channel for QEMU vd agent, using virtio serial (requires
|
||||
+ 2.6.34 or later host and guest). This allows copy/paste functionality with
|
||||
+ VNC guests. Note that the guest clipboard integration is implemented via
|
||||
+ spice-vdagent, which must be running even when the guest does not use spice
|
||||
+ graphics. NAME is optional metadata that specifies how the guest will see
|
||||
+ the channel, and should be left as the default com.redhat.spice.0 unless you
|
||||
+ know what you are doing.
|
||||
+
|
||||
|
||||
Use --channel=? to see a list of all available sub options.
|
||||
Complete details at https://libvirt.org/formatdomain.html#elementsCharChannel
|
||||
diff --git a/tests/data/cli/compare/virt-install-many-devices.xml b/tests/data/cli/compare/virt-install-many-devices.xml
|
||||
index 4c0024225..be82032fe 100644
|
||||
--- a/tests/data/cli/compare/virt-install-many-devices.xml
|
||||
+++ b/tests/data/cli/compare/virt-install-many-devices.xml
|
||||
@@ -647,6 +647,13 @@
|
||||
<channel type="spicevmc">
|
||||
<target type="virtio" name="com.redhat.spice.0"/>
|
||||
</channel>
|
||||
+ <channel type="qemu-vdagent">
|
||||
+ <source>
|
||||
+ <clipboard copypaste="yes"/>
|
||||
+ <mouse mode="client"/>
|
||||
+ </source>
|
||||
+ <target type="virtio" name="com.redhat.spice.0"/>
|
||||
+ </channel>
|
||||
<input type="keyboard" bus="usb"/>
|
||||
<input type="tablet" bus="usb"/>
|
||||
<input type="mouse" bus="ps2"/>
|
||||
diff --git a/tests/test_cli.py b/tests/test_cli.py
|
||||
index 8b78a1a78..22749d43a 100644
|
||||
--- a/tests/test_cli.py
|
||||
+++ b/tests/test_cli.py
|
||||
@@ -669,6 +669,7 @@ source.reservations.managed=no,source.reservations.source.type=unix,source.reser
|
||||
--channel pty,target_type=virtio,name=org.linux-kvm.port1
|
||||
--channel pty,target.type=virtio,target.name=org.linux-kvm.port2
|
||||
--channel spicevmc
|
||||
+--channel qemu-vdagent,source.clipboard.copypaste=on,source.mouse.mode=client
|
||||
|
||||
|
||||
--console pty,target_type=virtio
|
||||
@@ -734,7 +735,7 @@ source.reservations.managed=no,source.reservations.source.type=unix,source.reser
|
||||
|
||||
|
||||
--rng /dev/random
|
||||
---rng device=/dev/urandom,backend.protocol.type=,backend.log.file=,backend.log.append=
|
||||
+--rng device=/dev/urandom,backend.protocol.type=,backend.log.file=,backend.log.append=,backend.source.clipboard.copypaste=,backend.source.mouse.mode=
|
||||
--rng type=egd,backend.type=nmdm,backend.source.master=/dev/foo1,backend.source.slave=/dev/foo2
|
||||
--rng egd,backend_host=127.0.0.1,backend_service=8000,backend_type=udp,backend_mode=bind,backend_connect_host=foo,backend_connect_service=708,rate.bytes=1234,rate.period=1000,model=virtio
|
||||
|
||||
@@ -786,7 +787,7 @@ source.reservations.managed=no,source.reservations.source.type=unix,source.reser
|
||||
--xml xpath.delete=./deleteme/deleteme2
|
||||
|
||||
|
||||
-""", "many-devices", predefine_check="7.4.0")
|
||||
+""", "many-devices", predefine_check="8.4.0")
|
||||
|
||||
|
||||
# Specific XML test cases #1
|
||||
diff --git a/virtinst/cli.py b/virtinst/cli.py
|
||||
index 52be9f298..c869c323a 100644
|
||||
--- a/virtinst/cli.py
|
||||
+++ b/virtinst/cli.py
|
||||
@@ -3396,6 +3396,8 @@ def _add_char_source_args(cls, prefix=""):
|
||||
_add_arg("protocol.type", "source.protocol")
|
||||
_add_arg("log.file", "source.log_file")
|
||||
_add_arg("log.append", "source.log_append", is_onoff=True)
|
||||
+ _add_arg("source.clipboard.copypaste", "source.clipboard_copypaste", is_onoff=True)
|
||||
+ _add_arg("source.mouse.mode", "source.mouse_mode")
|
||||
|
||||
|
||||
##################
|
||||
diff --git a/virtinst/devices/char.py b/virtinst/devices/char.py
|
||||
index 9547c649e..01fc634b1 100644
|
||||
--- a/virtinst/devices/char.py
|
||||
+++ b/virtinst/devices/char.py
|
||||
@@ -45,6 +45,10 @@ class CharSource(XMLBuilder):
|
||||
slave = XMLProperty("./@slave")
|
||||
mode = XMLProperty("./@mode")
|
||||
|
||||
+ # for qemu-vdagent channel
|
||||
+ clipboard_copypaste = XMLProperty("./clipboard/@copypaste", is_yesno=True)
|
||||
+ mouse_mode = XMLProperty("./mouse/@mode")
|
||||
+
|
||||
# It's weird to track these properties here, since the XML is set on
|
||||
# the parent, but this is how libvirt does it internally, which means
|
||||
# everything that shares a charsource has these values too.
|
||||
@@ -80,6 +84,7 @@ class _DeviceChar(Device):
|
||||
TYPE_SPICEVMC = "spicevmc"
|
||||
TYPE_SPICEPORT = "spiceport"
|
||||
TYPE_NMDM = "nmdm"
|
||||
+ TYPE_QEMUVDAGENT = "qemu-vdagent"
|
||||
|
||||
CHANNEL_NAME_SPICE = "com.redhat.spice.0"
|
||||
CHANNEL_NAME_QEMUGA = "org.qemu.guest_agent.0"
|
||||
@@ -117,7 +122,8 @@ class _DeviceChar(Device):
|
||||
self.source.mode = "bind"
|
||||
if not self.target_type and self.DEVICE_TYPE == "channel":
|
||||
self.target_type = "virtio"
|
||||
- if not self.target_name and self.type == self.TYPE_SPICEVMC:
|
||||
+ if not self.target_name and (self.type == self.TYPE_SPICEVMC or
|
||||
+ self.type == self.TYPE_QEMUVDAGENT):
|
||||
self.target_name = self.CHANNEL_NAME_SPICE
|
||||
|
||||
|
||||
--
|
||||
2.35.3
|
||||
|
@ -1,231 +0,0 @@
|
||||
From e4e7210b3bd669bfeb8015f66163e7e49d710d1d Mon Sep 17 00:00:00 2001
|
||||
From: Jonathon Jongsma <jjongsma@redhat.com>
|
||||
Date: Wed, 18 May 2022 17:03:30 -0500
|
||||
Subject: [PATCH] virt-manager: add support for qemu-vdagent channel
|
||||
|
||||
This provides the UI support for the qemu-vdagent channel which allows
|
||||
clipboard sharing with VNC graphics (see previous commit for more
|
||||
information).
|
||||
|
||||
The channel name in the device list was changed slightly in order to
|
||||
avoid confusion. Due to the fact that both the spice-vdagent and the
|
||||
qemu-vdagent specify the same virtio name (com.redhat.spice.0), both of
|
||||
these channels were showing up in the device list as "Channel spice",
|
||||
which is a bit confusing.
|
||||
|
||||
In order to disambiguate these, channels now show up in the device list
|
||||
as "Channel {type} ({name})" instead of "Channel {name}". So for
|
||||
example, a qemu-vdagent channel would show up as:
|
||||
Channel Qemu vdagent (spice)
|
||||
Whereas a spice-vdagent channel would show up as:
|
||||
Channel Spice agent (spice)
|
||||
|
||||
Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com>
|
||||
(cherry picked from commit caa99a6001be0c86a1dd0eb5fc0ce142ab929a31)
|
||||
|
||||
Resolves https://bugzilla.redhat.com/show_bug.cgi?id=2060724
|
||||
|
||||
Signed-off-by: Jonathon Jongsma <jjongsma@redhat.com>
|
||||
---
|
||||
ui/addhardware.ui | 28 +++++++++++++++++++++++++++-
|
||||
ui/details.ui | 27 ++++++++++++++++++++++++++-
|
||||
virtManager/addhardware.py | 10 +++++++++-
|
||||
virtManager/details/details.py | 7 +++++--
|
||||
4 files changed, 67 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/ui/addhardware.ui b/ui/addhardware.ui
|
||||
index fa88127b8..f212481a3 100644
|
||||
--- a/ui/addhardware.ui
|
||||
+++ b/ui/addhardware.ui
|
||||
@@ -725,7 +725,7 @@
|
||||
</packing>
|
||||
</child>
|
||||
<child>
|
||||
- <!-- n-columns=2 n-rows=6 -->
|
||||
+ <!-- n-columns=2 n-rows=7 -->
|
||||
<object class="GtkGrid" id="char-table">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
@@ -901,6 +901,32 @@
|
||||
<property name="top-attach">2</property>
|
||||
</packing>
|
||||
</child>
|
||||
+ <child>
|
||||
+ <object class="GtkLabel" id="char-vdagent-clipboard-label">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can-focus">False</property>
|
||||
+ <property name="label" translatable="yes">_Share Clipboard:</property>
|
||||
+ <property name="use-underline">True</property>
|
||||
+ <property name="mnemonic-widget">char-vdagent-clipboard</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="left-attach">0</property>
|
||||
+ <property name="top-attach">6</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
+ <child>
|
||||
+ <object class="GtkCheckButton" id="char-vdagent-clipboard">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can-focus">True</property>
|
||||
+ <property name="receives-default">False</property>
|
||||
+ <property name="halign">start</property>
|
||||
+ <property name="draw-indicator">True</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="left-attach">1</property>
|
||||
+ <property name="top-attach">6</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
<child internal-child="accessible">
|
||||
<object class="AtkObject" id="char-table-atkobject">
|
||||
<property name="AtkObject::accessible-name">char-tab</property>
|
||||
diff --git a/ui/details.ui b/ui/details.ui
|
||||
index 10b308242..264f7cdd4 100644
|
||||
--- a/ui/details.ui
|
||||
+++ b/ui/details.ui
|
||||
@@ -3506,7 +3506,7 @@
|
||||
<property name="margin-start">12</property>
|
||||
<property name="margin-top">3</property>
|
||||
<child>
|
||||
- <!-- n-columns=2 n-rows=7 -->
|
||||
+ <!-- n-columns=2 n-rows=8 -->
|
||||
<object class="GtkGrid" id="table37">
|
||||
<property name="visible">True</property>
|
||||
<property name="can-focus">False</property>
|
||||
@@ -3601,6 +3601,19 @@
|
||||
<property name="top-attach">6</property>
|
||||
</packing>
|
||||
</child>
|
||||
+ <child>
|
||||
+ <object class="GtkLabel" id="char-clipboard-sharing">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can-focus">False</property>
|
||||
+ <property name="halign">start</property>
|
||||
+ <property name="label" translatable="yes">label507</property>
|
||||
+ <property name="selectable">True</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="left-attach">1</property>
|
||||
+ <property name="top-attach">7</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="char-source-host">
|
||||
<property name="visible">True</property>
|
||||
@@ -3673,6 +3686,18 @@
|
||||
<property name="top-attach">6</property>
|
||||
</packing>
|
||||
</child>
|
||||
+ <child>
|
||||
+ <object class="GtkLabel" id="char-clipboard-sharing-label">
|
||||
+ <property name="visible">True</property>
|
||||
+ <property name="can-focus">False</property>
|
||||
+ <property name="halign">end</property>
|
||||
+ <property name="label" translatable="yes">Clipboard:</property>
|
||||
+ </object>
|
||||
+ <packing>
|
||||
+ <property name="left-attach">0</property>
|
||||
+ <property name="top-attach">7</property>
|
||||
+ </packing>
|
||||
+ </child>
|
||||
<child>
|
||||
<object class="GtkLabel" id="char-source-path-label">
|
||||
<property name="visible">True</property>
|
||||
diff --git a/virtManager/addhardware.py b/virtManager/addhardware.py
|
||||
index 8c7fa0c72..0a8e33d30 100644
|
||||
--- a/virtManager/addhardware.py
|
||||
+++ b/virtManager/addhardware.py
|
||||
@@ -308,6 +308,7 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
self.widget("char-path").set_text("")
|
||||
self.widget("char-channel").set_text("")
|
||||
self.widget("char-auto-socket").set_active(True)
|
||||
+ self.widget("char-vdagent-clipboard").set_active(True)
|
||||
|
||||
|
||||
# RNG params
|
||||
@@ -399,7 +400,8 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
DeviceSerial.TYPE_UNIX]
|
||||
if char_class.XML_NAME == "channel":
|
||||
ret = [DeviceSerial.TYPE_SPICEVMC,
|
||||
- DeviceSerial.TYPE_SPICEPORT] + ret
|
||||
+ DeviceSerial.TYPE_SPICEPORT,
|
||||
+ DeviceSerial.TYPE_QEMUVDAGENT] + ret
|
||||
return ret
|
||||
|
||||
@staticmethod
|
||||
@@ -425,6 +427,7 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
DeviceSerial.TYPE_UNIX: _("UNIX socket"),
|
||||
DeviceSerial.TYPE_SPICEVMC: _("Spice agent"),
|
||||
DeviceSerial.TYPE_SPICEPORT: _("Spice port"),
|
||||
+ DeviceSerial.TYPE_QEMUVDAGENT: _("QEMU vdagent"),
|
||||
}
|
||||
return labels.get(val, val)
|
||||
|
||||
@@ -1114,11 +1117,14 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
supports_path = [dev.TYPE_FILE, dev.TYPE_UNIX,
|
||||
dev.TYPE_DEV, dev.TYPE_PIPE]
|
||||
supports_channel = [dev.TYPE_SPICEPORT]
|
||||
+ supports_clipboard = [dev.TYPE_QEMUVDAGENT]
|
||||
|
||||
uiutil.set_grid_row_visible(self.widget("char-path-label"),
|
||||
devtype in supports_path)
|
||||
uiutil.set_grid_row_visible(self.widget("char-channel-label"),
|
||||
devtype in supports_channel)
|
||||
+ uiutil.set_grid_row_visible(self.widget("char-vdagent-clipboard-label"),
|
||||
+ devtype in supports_clipboard)
|
||||
|
||||
uiutil.set_grid_row_visible(
|
||||
self.widget("char-target-name-label"), ischan)
|
||||
@@ -1472,6 +1478,7 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
source_channel = self.widget("char-channel").get_text()
|
||||
target_name = self.widget("char-target-name").get_child().get_text()
|
||||
target_type = uiutil.get_list_selection(typebox)
|
||||
+ clipboard = self.widget("char-vdagent-clipboard").get_active()
|
||||
|
||||
if not self.widget("char-path").get_visible():
|
||||
source_path = None
|
||||
@@ -1486,6 +1493,7 @@ class vmmAddHardware(vmmGObjectUI):
|
||||
dev.type = devtype
|
||||
dev.source.path = source_path
|
||||
dev.source.channel = source_channel
|
||||
+ dev.source.clipboard_copypaste = clipboard
|
||||
dev.target_name = target_name
|
||||
dev.target_type = target_type
|
||||
return dev
|
||||
diff --git a/virtManager/details/details.py b/virtManager/details/details.py
|
||||
index 24810f0ff..ddc43b767 100644
|
||||
--- a/virtManager/details/details.py
|
||||
+++ b/virtManager/details/details.py
|
||||
@@ -207,10 +207,10 @@ def _label_for_device(dev, disk_bus_index):
|
||||
return _("Console %(num)d") % {"num": port + 1}
|
||||
|
||||
if devtype == "channel":
|
||||
+ pretty_type = vmmAddHardware.char_pretty_type(dev.type)
|
||||
name = vmmAddHardware.char_pretty_channel_name(dev.target_name)
|
||||
if name:
|
||||
- return _("Channel %(name)s") % {"name": name}
|
||||
- pretty_type = vmmAddHardware.char_pretty_type(dev.type)
|
||||
+ return _("Channel %(type)s (%(name)s)") % {"type": pretty_type, "name": name}
|
||||
return _("Channel %(type)s") % {"type": pretty_type}
|
||||
|
||||
if devtype == "graphics":
|
||||
@@ -2098,6 +2098,7 @@ class vmmDetails(vmmGObjectUI):
|
||||
primary = self.vm.serial_is_console_dup(chardev)
|
||||
show_target_type = not (char_type in ["serial", "parallel"])
|
||||
is_qemuga = chardev.target_name == chardev.CHANNEL_NAME_QEMUGA
|
||||
+ show_clipboard = chardev.type == chardev.TYPE_QEMUVDAGENT
|
||||
|
||||
if char_type == "serial":
|
||||
typelabel = _("Serial Device")
|
||||
@@ -2152,6 +2153,8 @@ class vmmDetails(vmmGObjectUI):
|
||||
# notifiations about connection state. For spice this UI field
|
||||
# can get out of date
|
||||
show_ui("char-target-state", chardev.target_state, doshow=is_qemuga)
|
||||
+ clipboard = _("On") if chardev.source.clipboard_copypaste else _("Off")
|
||||
+ show_ui("char-clipboard-sharing", clipboard, doshow=show_clipboard)
|
||||
|
||||
def _refresh_hostdev_page(self, hostdev):
|
||||
rom_bar = hostdev.rom_bar
|
||||
--
|
||||
2.35.3
|
||||
|
@ -7,7 +7,7 @@
|
||||
# End local config
|
||||
|
||||
Name: virt-manager
|
||||
Version: 4.0.0
|
||||
Version: 4.1.0
|
||||
Release: 1%{?dist}%{?extra_release}
|
||||
%global verrel %{version}-%{release}
|
||||
|
||||
@ -18,8 +18,7 @@ URL: https://virt-manager.org/
|
||||
Source0: https://virt-manager.org/download/sources/%{name}/%{name}-%{version}.tar.gz
|
||||
Source1: symlinks
|
||||
|
||||
Patch1: virt-manager-virt-install-add-support-for-qemu-vdagent-channel.patch
|
||||
Patch2: virt-manager-virt-manager-add-support-for-qemu-vdagent-channel.patch
|
||||
Patch1: virt-manager-cloner-Sync-uuid-and-sysinfo-system-uuid.patch
|
||||
|
||||
|
||||
Requires: virt-manager-common = %{verrel}
|
||||
@ -185,6 +184,10 @@ git config gc.auto 0
|
||||
|
||||
|
||||
%changelog
|
||||
* Tue Nov 15 2022 Jonathon Jongsma <jjongsma@redhat.com> - 4.1.0-1
|
||||
- Rebased to virt-manager-4.1.0 (rhbz#2135791)
|
||||
- cloner: Sync <uuid> and <sysinfo> system uuid (rhbz#2038040)
|
||||
|
||||
* Thu Jul 7 2022 Jonathon Jongsma <jjongsma@redhat.com> - 4.0.0-1
|
||||
- Rebased to virt-manager-4.0.0 (rhbz#2100525)
|
||||
- virt-install: add support for qemu-vdagent channel (rhbz#2060724)
|
||||
|
Loading…
Reference in New Issue
Block a user