From a5ecca96e36931a94ca449036c00783566d02392 Mon Sep 17 00:00:00 2001 From: James Antill Date: Thu, 26 May 2022 15:48:25 -0400 Subject: [PATCH] Auto sync2gitlab import of virt-manager-3.2.0-4.el8.src.rpm --- .gitignore | 1 + EMPTY | 1 - sources | 1 + symlinks | 5 + ...ew-nodedev-name-for-mediated-devices.patch | 112 ++ ...Don-t-pass-None-to-widget.set_active.patch | 33 + ...er-cli-add-ioapic.driver-to-features.patch | 112 ++ ...e-resource-fibrechannel.appid-option.patch | 71 + ...console-fix-error-with-old-pygobject.patch | 50 + ...ger-hostdev-use-method-get_mdev_uuid.patch | 35 + virt-manager-tests-verify-MDEV-support.patch | 230 ++++ ...ger-virt-install-add-mediated-device.patch | 256 ++++ ...ger-virt-manager-enable-MDEV-support.patch | 164 +++ ...xml-add-support-for-mediated-devices.patch | 77 ++ virt-manager.spec | 1190 +++++++++++++++++ 15 files changed, 2337 insertions(+), 1 deletion(-) create mode 100644 .gitignore delete mode 100644 EMPTY create mode 100644 sources create mode 100644 symlinks create mode 100644 virt-manager-Handle-new-nodedev-name-for-mediated-devices.patch create mode 100644 virt-manager-addstorage-Don-t-pass-None-to-widget.set_active.patch create mode 100644 virt-manager-cli-add-ioapic.driver-to-features.patch create mode 100644 virt-manager-cli-introduce-resource-fibrechannel.appid-option.patch create mode 100644 virt-manager-console-fix-error-with-old-pygobject.patch create mode 100644 virt-manager-hostdev-use-method-get_mdev_uuid.patch create mode 100644 virt-manager-tests-verify-MDEV-support.patch create mode 100644 virt-manager-virt-install-add-mediated-device.patch create mode 100644 virt-manager-virt-manager-enable-MDEV-support.patch create mode 100644 virt-manager-virt-xml-add-support-for-mediated-devices.patch create mode 100644 virt-manager.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..734647a --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +/virt-manager-3.2.0.tar.gz diff --git a/EMPTY b/EMPTY deleted file mode 100644 index 0519ecb..0000000 --- a/EMPTY +++ /dev/null @@ -1 +0,0 @@ - \ No newline at end of file diff --git a/sources b/sources new file mode 100644 index 0000000..8121dcb --- /dev/null +++ b/sources @@ -0,0 +1 @@ +SHA512 (virt-manager-3.2.0.tar.gz) = 90cd98fe6b269007cd30f628490c65df440abe39b4925c65dc80667e7d80d059752695353ccf6ac3e2436206da311bc402eda50df31874d82ef8fe115966e1ec diff --git a/symlinks b/symlinks new file mode 100644 index 0000000..6eb4415 --- /dev/null +++ b/symlinks @@ -0,0 +1,5 @@ +data/hicolor icons +tests/testdriver.xml data/testdriver/testdriver.xml +tests/data/urldetect/debian/buster/main/installer-arm64 installer-amd64/ +tests/data/urldetect/debian/buster/main/installer-ppc64el installer-amd64/ +tests/data/urldetect/debian/buster/main/installer-s390x installer-amd64/ diff --git a/virt-manager-Handle-new-nodedev-name-for-mediated-devices.patch b/virt-manager-Handle-new-nodedev-name-for-mediated-devices.patch new file mode 100644 index 0000000..8aef44f --- /dev/null +++ b/virt-manager-Handle-new-nodedev-name-for-mediated-devices.patch @@ -0,0 +1,112 @@ +From 3e150cab1c478e1ce95f4f1466ecbac0b693e375 Mon Sep 17 00:00:00 2001 +From: Jonathon Jongsma +Date: Tue, 26 Oct 2021 14:18:40 -0500 +Subject: [PATCH] Handle new nodedev name for mediated devices + +libvirt recently changed the nodedev names for mediated devices due to +the fact that mdevctl supports defining multiple mediated devices with +the same UUID as long as only one is active at a time. This means that +the nodedev name changed from the format 'mdev_$UUID' to the format +'mdev_$UUID_$PARENT'. + +Unfortunately, virt-install was parsing the nodedev name to extract the +UUID of a mediated device. This fails with the new name format. +Fortunately, in libvirt 7.3.0, a field was added to the xml +schema for mdev devices, so we can simply use this instead, and fall +back to the name parsing if it doesn't exist. + +Signed-off-by: Jonathon Jongsma +(cherry picked from commit 0c146b250384ddddcefd2cc0d76b9e808377ebe5) + +https://bugzilla.redhat.com/show_bug.cgi?id=2020241 + +Signed-off-by: Jonathon Jongsma +--- + tests/data/testdriver/testdriver.xml | 14 ++++++++++++++ + tests/test_nodedev.py | 14 ++++++++++++++ + virtinst/nodedev.py | 7 +++++++ + 3 files changed, 35 insertions(+) + +diff --git a/tests/data/testdriver/testdriver.xml b/tests/data/testdriver/testdriver.xml +index 5875732a..e4880936 100644 +--- a/tests/data/testdriver/testdriver.xml ++++ b/tests/data/testdriver/testdriver.xml +@@ -3725,4 +3725,18 @@ ba + + + ++ ++ mdev_35ceae7f_eea5_4f28_b7f3_7b12a3e62d3c_0000_06_00_0 ++ /sys/devices/pci0000:00/0000:00:02.0/35ceae7f-eea5-4f28-b7f3-7b12a3e62d3c ++ pci_0000_06_00_0 ++ ++ vfio_mdev ++ ++ ++ ++ ++ 35ceae7f-eea5-4f28-b7f3-7b12a3e62d3c ++ ++ ++ + +diff --git a/tests/test_nodedev.py b/tests/test_nodedev.py +index 79678bc8..41435262 100644 +--- a/tests/test_nodedev.py ++++ b/tests/test_nodedev.py +@@ -8,6 +8,7 @@ + import os.path + + import pytest ++import libvirt + + from virtinst import Guest + from virtinst import NodeDevice +@@ -154,6 +155,19 @@ def testPCIMdev(): + assert dev.parent == "pci_0000_06_00_0" + assert dev.device_type == "mdev" + assert dev.type_id == "nvidia-11" ++ assert dev.get_mdev_uuid() == "4b20d080-1b54-4048-85b3-a6a62d165c01" ++ ++# libvirt <7.3.0 doesn't support in the mdev node device xml ++@pytest.mark.skipif(libvirt.getVersion() < 7003000, reason="libvirt version doesn't support new mdev format") ++def testPCIMdevNewFormat(): ++ conn = utils.URIs.open_testdriver_cached() ++ devname = "mdev_35ceae7f_eea5_4f28_b7f3_7b12a3e62d3c_0000_06_00_0" ++ dev = _nodeDevFromName(conn, devname) ++ assert dev.name == devname ++ assert dev.parent == "pci_0000_06_00_0" ++ assert dev.device_type == "mdev" ++ assert dev.type_id == "nvidia-11" ++ assert dev.get_mdev_uuid() == "35ceae7f-eea5-4f28-b7f3-7b12a3e62d3c" + + + # NodeDevice 2 Device XML tests +diff --git a/virtinst/nodedev.py b/virtinst/nodedev.py +index f54a311c..248723b9 100644 +--- a/virtinst/nodedev.py ++++ b/virtinst/nodedev.py +@@ -94,6 +94,12 @@ class NodeDevice(XMLBuilder): + device_type = XMLProperty("./capability/@type") + + def get_mdev_uuid(self): ++ # libvirt 7.3.0 added a element to the nodedev xml for mdev ++ # types. For older versions, we unfortunately have to parse the nodedev ++ # name, which uses the format "mdev_$UUID_WITH_UNDERSCORES" ++ if self.uuid is not None: ++ return self.uuid ++ + return self.name[5:].replace('_', '-') + + def compare_to_hostdev(self, hostdev): +@@ -191,6 +197,7 @@ class NodeDevice(XMLBuilder): + + # type='mdev' options + type_id = XMLProperty("./capability/type/@id") ++ uuid = XMLProperty("./capability/uuid") + + + def _AddressStringToHostdev(conn, addrstr): +-- +2.31.1 + diff --git a/virt-manager-addstorage-Don-t-pass-None-to-widget.set_active.patch b/virt-manager-addstorage-Don-t-pass-None-to-widget.set_active.patch new file mode 100644 index 0000000..51b77dc --- /dev/null +++ b/virt-manager-addstorage-Don-t-pass-None-to-widget.set_active.patch @@ -0,0 +1,33 @@ +From b533019b5776207412ed1aa886d97ead2550695a Mon Sep 17 00:00:00 2001 +From: Cole Robinson +Date: Sat, 21 Nov 2020 17:17:33 -0500 +Subject: [PATCH] addstorage: Don't pass None to widget.set_active() + +Older pygobject can't handle it. Mentioned here: +https://github.com/virt-manager/virt-manager/issues/188 + +Signed-off-by: Cole Robinson +(cherry picked from commit e7222b5058c8874b15fbfd998e5eeb233f571075) + +Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2026987 +Signed-off-by: Jonathon Jongsma +--- + virtManager/device/addstorage.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/virtManager/device/addstorage.py b/virtManager/device/addstorage.py +index dee0160c..49d0b693 100644 +--- a/virtManager/device/addstorage.py ++++ b/virtManager/device/addstorage.py +@@ -310,7 +310,7 @@ class vmmAddStorage(vmmGObjectUI): + detect_zeroes = disk.driver_detect_zeroes + ro = disk.read_only + share = disk.shareable +- removable = disk.removable ++ removable = bool(disk.removable) + serial = disk.serial + + self.set_disk_bus(disk.bus) +-- +2.31.1 + diff --git a/virt-manager-cli-add-ioapic.driver-to-features.patch b/virt-manager-cli-add-ioapic.driver-to-features.patch new file mode 100644 index 0000000..07c33ea --- /dev/null +++ b/virt-manager-cli-add-ioapic.driver-to-features.patch @@ -0,0 +1,112 @@ +From fa5f5f8f9b2b00b7580cb55f82c17e66e54b438d Mon Sep 17 00:00:00 2001 +From: Jonathon Jongsma +Date: Tue, 11 Jan 2022 11:21:39 -0600 +Subject: [PATCH] cli: add 'ioapic.driver' to --features + +Add the ability to set the ioapic driver using the --features argument: + + $ virt-install --features ioapic.driver=qemu ... + +This results in the following xml: + + + ... + + + +This is required in order to install a guest with >255 cpus. Such a +configuration requires an iommu with extended interrupt mode enabled, +which in turn requires IOMMU interrupt remapping to be enabled, which in +turn requires a split I/O APIC. + +Signed-off-by: Jonathon Jongsma +(cherry picked from commit 9766beea0432faad7cded9e0285d05851659020e) + +Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2037202 + +Signed-off-by: Jonathon Jongsma +--- + tests/data/cli/compare/virt-install-singleton-config-3.xml | 1 + + tests/data/xmlparse/change-guest-out.xml | 1 + + tests/test_cli.py | 2 +- + tests/test_xmlparse.py | 1 + + virtinst/cli.py | 1 + + virtinst/domain/features.py | 1 + + 6 files changed, 6 insertions(+), 1 deletion(-) + +diff --git a/tests/data/cli/compare/virt-install-singleton-config-3.xml b/tests/data/cli/compare/virt-install-singleton-config-3.xml +index d2e7a363..a36c7bf2 100644 +--- a/tests/data/cli/compare/virt-install-singleton-config-3.xml ++++ b/tests/data/cli/compare/virt-install-singleton-config-3.xml +@@ -73,6 +73,7 @@ + + + ++ + + + +diff --git a/tests/data/xmlparse/change-guest-out.xml b/tests/data/xmlparse/change-guest-out.xml +index 17af0826..3faf8783 100644 +--- a/tests/data/xmlparse/change-guest-out.xml ++++ b/tests/data/xmlparse/change-guest-out.xml +@@ -32,6 +32,7 @@ + + + ++ + + + +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 9f0cdfe9..75a891f0 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -558,7 +558,7 @@ c.add_compare(""" + --vcpus vcpu.current=3,maxvcpus=4,vcpu.placement=auto + --memory hotplugmemorymax=2048,hotplugmemoryslots=2 + --disk none +---features apic.eoi=off,hap=on,hyperv.synic.state=on,hyperv.reset.state=off,hyperv.spinlocks.state=on,hyperv.spinlocks.retries=5678,pae=on,pmu.state=on,pvspinlock.state=off,smm.state=off,viridian=on,vmcoreinfo.state=on,vmport.state=off,kvm.hidden.state=on,hyperv.vapic.state=off,hyperv.relaxed.state=off,gic.version=host,kvm.hint-dedicated.state=on ++--features apic.eoi=off,hap=on,hyperv.synic.state=on,hyperv.reset.state=off,hyperv.spinlocks.state=on,hyperv.spinlocks.retries=5678,pae=on,pmu.state=on,pvspinlock.state=off,smm.state=off,viridian=on,vmcoreinfo.state=on,vmport.state=off,kvm.hidden.state=on,hyperv.vapic.state=off,hyperv.relaxed.state=off,gic.version=host,kvm.hint-dedicated.state=on,ioapic.driver=qemu + --clock rtc_present=no,pit_present=yes,pit_tickpolicy=catchup,tsc_present=no,platform_present=no,hypervclock_present=no,platform_tickpolicy=foo,hpet_tickpolicy=bar,tsc_tickpolicy=wibble,kvmclock_tickpolicy=wobble,hypervclock_tickpolicy=woo + --boot bios.useserial=no,bios.rebootTimeout=60,cmdline=root=/foo,smbios.mode=host,bootmenu.enable=yes,loader_ro=yes,loader.type=rom,loader=/tmp/foo + --memorybacking access.mode=shared,source.type=anonymous,hugepages=on +diff --git a/tests/test_xmlparse.py b/tests/test_xmlparse.py +index 6d1aaddb..ac2fb38d 100644 +--- a/tests/test_xmlparse.py ++++ b/tests/test_xmlparse.py +@@ -160,6 +160,7 @@ def testAlterGuest(): + check("kvm_hidden", None, True) + check("pvspinlock", None, True) + check("gic_version", None, False) ++ check("ioapic_driver", None, "qemu") + + check = _make_checker(guest.cpu) + check("match", "exact", "strict") +diff --git a/virtinst/cli.py b/virtinst/cli.py +index e1a988f9..dbd4a545 100644 +--- a/virtinst/cli.py ++++ b/virtinst/cli.py +@@ -2777,6 +2777,7 @@ class ParserFeatures(VirtCLIParser): + + cls.add_arg("smm.state", "smm", is_onoff=True) + cls.add_arg("vmcoreinfo.state", "vmcoreinfo", is_onoff=True) ++ cls.add_arg("ioapic.driver", "ioapic_driver") + + + ################### +diff --git a/virtinst/domain/features.py b/virtinst/domain/features.py +index 246839f2..7d32edc0 100644 +--- a/virtinst/domain/features.py ++++ b/virtinst/domain/features.py +@@ -41,6 +41,7 @@ class DomainFeatures(XMLBuilder): + + smm = XMLProperty("./smm/@state", is_onoff=True) + vmcoreinfo = XMLProperty("./vmcoreinfo/@state", is_onoff=True) ++ ioapic_driver = XMLProperty("./ioapic/@driver") + + + ################## +-- +2.34.1 + diff --git a/virt-manager-cli-introduce-resource-fibrechannel.appid-option.patch b/virt-manager-cli-introduce-resource-fibrechannel.appid-option.patch new file mode 100644 index 0000000..32db604 --- /dev/null +++ b/virt-manager-cli-introduce-resource-fibrechannel.appid-option.patch @@ -0,0 +1,71 @@ +From c1da35159c20e0d633f6c568bb984311a4fed861 Mon Sep 17 00:00:00 2001 +From: Pavel Hrdina +Date: Tue, 14 Sep 2021 17:08:35 +0200 +Subject: [PATCH] cli: introduce --resource fibrechannel.appid option + +Signed-off-by: Pavel Hrdina +(cherry picked from commit 0953e1aea1fd16cd1825c03f3b032c7f12f3322f) + +Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2011327 + +Signed-off-by: Jonathon Jongsma +--- + tests/data/cli/compare/virt-install-singleton-config-1.xml | 1 + + tests/test_cli.py | 2 +- + virtinst/cli.py | 1 + + virtinst/domain/resource.py | 3 ++- + 4 files changed, 5 insertions(+), 2 deletions(-) + +diff --git a/tests/data/cli/compare/virt-install-singleton-config-1.xml b/tests/data/cli/compare/virt-install-singleton-config-1.xml +index 518a0099..b50d806e 100644 +--- a/tests/data/cli/compare/virt-install-singleton-config-1.xml ++++ b/tests/data/cli/compare/virt-install-singleton-config-1.xml +@@ -19,6 +19,7 @@ + + + /virtualmachines/production ++ + + + hvm +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 5e69a135..5b174933 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -480,7 +480,7 @@ c.add_compare(""" + --memorybacking hugepages=on + --features apic=off + --clock offset=localtime +---resource /virtualmachines/production ++--resource /virtualmachines/production,fibrechannel.appid=myapplication + --events on_crash=restart + --metadata genid_enable=yes + --sysinfo host +diff --git a/virtinst/cli.py b/virtinst/cli.py +index 8e5b13cd..e1a988f9 100644 +--- a/virtinst/cli.py ++++ b/virtinst/cli.py +@@ -1999,6 +1999,7 @@ class ParserResource(VirtCLIParser): + def _init_class(cls, **kwargs): + VirtCLIParser._init_class(**kwargs) + cls.add_arg("partition", "partition") ++ cls.add_arg("fibrechannel.appid", "fibrechannel_appid", can_comma=True) + + + ###################### +diff --git a/virtinst/domain/resource.py b/virtinst/domain/resource.py +index d0962db9..8ad3df54 100644 +--- a/virtinst/domain/resource.py ++++ b/virtinst/domain/resource.py +@@ -14,6 +14,7 @@ class DomainResource(XMLBuilder): + """ + + XML_NAME = "resource" +- _XML_PROP_ORDER = ["partition"] ++ _XML_PROP_ORDER = ["partition", "fibrechannel_appid"] + + partition = XMLProperty("./partition") ++ fibrechannel_appid = XMLProperty("./fibrechannel/@appid") +-- +2.31.1 + diff --git a/virt-manager-console-fix-error-with-old-pygobject.patch b/virt-manager-console-fix-error-with-old-pygobject.patch new file mode 100644 index 0000000..8249749 --- /dev/null +++ b/virt-manager-console-fix-error-with-old-pygobject.patch @@ -0,0 +1,50 @@ +From 61e24e595852a552019912b9a9d6884f5012dc6e Mon Sep 17 00:00:00 2001 +From: Pavel Hrdina +Date: Fri, 5 Feb 2021 12:15:46 +0100 +Subject: [PATCH] console: fix error with old pygobject + +The code doesn't work as expected. From python documentation: + + x and y + +is the same as + + x if not x or y + +so in the code if for some reasone `dev` is None the value stored in +`sensitive` will be None as well. + +No the code itself works with pygobject >= 3.31.3 where they allowed +None as a valid boolean value, but with older versions it will fail +with this error message: + + TypeError: Argument 1 does not allow None as a value + +Resolves: https://github.com/virt-manager/virt-manager/issues/226 + +Signed-off-by: Pavel Hrdina +(cherry picked from commit cf93e2dbff28fe05d6d45364c579f923b157beb1) + +Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2026987 + +Signed-off-by: Jonathon Jongsma +--- + virtManager/details/console.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/virtManager/details/console.py b/virtManager/details/console.py +index c4ed478ed..18f9ddd91 100644 +--- a/virtManager/details/console.py ++++ b/virtManager/details/console.py +@@ -258,7 +258,7 @@ class _ConsoleMenu: + + cb = toggled_cb + cbdata = dev +- sensitive = dev and not tooltip ++ sensitive = bool(dev and not tooltip) + + active = False + if oldlabel is None and sensitive: +-- +2.35.1 + diff --git a/virt-manager-hostdev-use-method-get_mdev_uuid.patch b/virt-manager-hostdev-use-method-get_mdev_uuid.patch new file mode 100644 index 0000000..8c1c9cd --- /dev/null +++ b/virt-manager-hostdev-use-method-get_mdev_uuid.patch @@ -0,0 +1,35 @@ +From 99d841337bab8134c173168cabd93e9b133f6049 Mon Sep 17 00:00:00 2001 +From: Shalini Chellathurai Saroja +Date: Mon, 31 May 2021 21:54:27 +0200 +Subject: [PATCH] hostdev: use method get_mdev_uuid() + +Use method get_mdev_uuid() to retrieve the UUID of MDEV node device +object. + +Reviewed-by: Cole Robinson +Signed-off-by: Shalini Chellathurai Saroja +(cherry picked from commit f87e96d3d40891f1403601abc389c24800ba1069) + +Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1995125 + +Signed-off-by: Jonathon Jongsma +--- + virtinst/devices/hostdev.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/virtinst/devices/hostdev.py b/virtinst/devices/hostdev.py +index e8d0fae2..b3717430 100644 +--- a/virtinst/devices/hostdev.py ++++ b/virtinst/devices/hostdev.py +@@ -78,7 +78,7 @@ class DeviceHostdev(Device): + _("Don't know how to generate nodedev for mdev type id '%s'") % + nodedev.type_id) + +- self.uuid = nodedev.name[5:].replace('_', '-') ++ self.uuid = nodedev.get_mdev_uuid() + + else: + raise ValueError(_("Unknown node device type %s") % nodedev) +-- +2.31.1 + diff --git a/virt-manager-tests-verify-MDEV-support.patch b/virt-manager-tests-verify-MDEV-support.patch new file mode 100644 index 0000000..037c9fd --- /dev/null +++ b/virt-manager-tests-verify-MDEV-support.patch @@ -0,0 +1,230 @@ +From a243508cc0a896dd35a73277ca651fa8638b086b Mon Sep 17 00:00:00 2001 +From: Shalini Chellathurai Saroja +Date: Mon, 31 May 2021 21:54:28 +0200 +Subject: [PATCH] tests: verify MDEV support + +Add tests to verify add, edit and remove features of mediated +devices. + +Reviewed-by: Cole Robinson +Signed-off-by: Shalini Chellathurai Saroja +(cherry picked from commit 9d4002ee0f7088c490748ffb3144c006f4e39c68) + +Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1995125 + +Signed-off-by: Jonathon Jongsma +--- + .../virt-xml-add-hostdev-mdev-start.xml | 12 +++++++ + .../cli/compare/virt-xml-add-hostdev-mdev.xml | 14 ++++++++ + tests/data/cli/compare/virt-xml-edit-all.xml | 7 ++++ + .../compare/virt-xml-edit-hostdev-mdev.xml | 11 +++++++ + .../compare/virt-xml-edit-simple-redirdev.xml | 2 +- + .../compare/virt-xml-remove-hostdev-mdev.xml | 15 +++++++++ + tests/data/testdriver/testsuite.xml | 32 +++++++++++++++++++ + tests/test_cli.py | 4 +++ + tests/utils.py | 2 +- + 9 files changed, 97 insertions(+), 2 deletions(-) + create mode 100644 tests/data/cli/compare/virt-xml-add-hostdev-mdev-start.xml + create mode 100644 tests/data/cli/compare/virt-xml-add-hostdev-mdev.xml + create mode 100644 tests/data/cli/compare/virt-xml-edit-hostdev-mdev.xml + create mode 100644 tests/data/cli/compare/virt-xml-remove-hostdev-mdev.xml + +diff --git a/tests/data/cli/compare/virt-xml-add-hostdev-mdev-start.xml b/tests/data/cli/compare/virt-xml-add-hostdev-mdev-start.xml +new file mode 100644 +index 00000000..3742d454 +--- /dev/null ++++ b/tests/data/cli/compare/virt-xml-add-hostdev-mdev-start.xml +@@ -0,0 +1,12 @@ ++ ++ ++ +++ +++ +++
+++ +++ ++ ++ ++ ++Domain 'test-state-shutoff' started successfully. +diff --git a/tests/data/cli/compare/virt-xml-add-hostdev-mdev.xml b/tests/data/cli/compare/virt-xml-add-hostdev-mdev.xml +new file mode 100644 +index 00000000..c2acff8f +--- /dev/null ++++ b/tests/data/cli/compare/virt-xml-add-hostdev-mdev.xml +@@ -0,0 +1,14 @@ ++ ++ ++ +++ +++ +++
+++ +++ ++ ++ ++ ++ ++Domain 'test-for-virtxml' defined successfully. ++Changes will take effect after the domain is fully powered off. +diff --git a/tests/data/cli/compare/virt-xml-edit-all.xml b/tests/data/cli/compare/virt-xml-edit-all.xml +index ed09effc..5bdee2aa 100644 +--- a/tests/data/cli/compare/virt-xml-edit-all.xml ++++ b/tests/data/cli/compare/virt-xml-edit-all.xml +@@ -8,6 +8,13 @@ +
+ + +++ ++ ++ ++ ++
++ ++
+ + + + +diff --git a/tests/data/cli/compare/virt-xml-edit-hostdev-mdev.xml b/tests/data/cli/compare/virt-xml-edit-hostdev-mdev.xml +new file mode 100644 +index 00000000..ef5523db +--- /dev/null ++++ b/tests/data/cli/compare/virt-xml-edit-hostdev-mdev.xml +@@ -0,0 +1,11 @@ ++ ++
++ ++-
+++
++ ++ ++ ++ ++Domain 'test-for-virtxml' defined successfully. ++Changes will take effect after the domain is fully powered off. +diff --git a/tests/data/cli/compare/virt-xml-edit-simple-redirdev.xml b/tests/data/cli/compare/virt-xml-edit-simple-redirdev.xml +index 52ffddfe..f1a0ff6c 100644 +--- a/tests/data/cli/compare/virt-xml-edit-simple-redirdev.xml ++++ b/tests/data/cli/compare/virt-xml-edit-simple-redirdev.xml +@@ -1,5 +1,5 @@ + +- ++
+ + - + - +diff --git a/tests/data/cli/compare/virt-xml-remove-hostdev-mdev.xml b/tests/data/cli/compare/virt-xml-remove-hostdev-mdev.xml +new file mode 100644 +index 00000000..d4c33804 +--- /dev/null ++++ b/tests/data/cli/compare/virt-xml-remove-hostdev-mdev.xml +@@ -0,0 +1,15 @@ ++ ++ ++ ++- ++- ++-
++- ++-
++- ++ ++ ++ ++ ++Domain 'test-for-virtxml' defined successfully. ++Changes will take effect after the domain is fully powered off. +diff --git a/tests/data/testdriver/testsuite.xml b/tests/data/testdriver/testsuite.xml +index fd255138..a073cbce 100644 +--- a/tests/data/testdriver/testsuite.xml ++++ b/tests/data/testdriver/testsuite.xml +@@ -259,6 +259,12 @@ + + + ++ ++ ++
++ ++
++ + + + +@@ -737,5 +743,31 @@ + + + ++ ++ mdev_8e37ee90_2b51_45e3_9b25_bf8283c03110 ++ /sys/devices/css0/0.0.0023/8e37ee90-2b51-45e3-9b25-bf8283c03110 ++ css_0_0_0023 ++ ++ vfio_mdev ++ ++ ++ ++ ++ ++ ++ ++ ++ mdev_b1ae8bf6_38b0_4c81_9d44_78ce3f520496 ++ /sys/devices/css0/0.0.0023/b1ae8bf6-38b0-4c81-9d44-78ce3f520496 ++ css_0_0_0023 ++ ++ vfio_mdev ++ ++ ++ ++ ++ ++ ++ + + +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 5f94e009..9f0cdfe9 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -1274,6 +1274,7 @@ c.add_compare("--edit mac=00:11:7f:33:44:55 --network target=nic55", "edit-selec + c.add_compare("--edit target=hda --disk boot_order=1", "edit-select-disk-bootorder") + c.add_compare("--edit path=/dev/null --disk path=,target=fdb,boot_order=12", "edit-disk-unset") # --disk matching, using empty value to unset path + c.add_compare("--edit --memballoon none", "edit-disable-memballoon") ++c.add_compare("--edit address.devno=0x0002 --hostdev address.devno=0x0008", "edit-hostdev-mdev") + + c = vixml.add_category("edit and start selection", "test-state-shutoff --print-diff --start") + c.add_compare("--define --edit target=vda --disk boot_order=1", "start-select-disk-bootorder") +@@ -1308,6 +1309,8 @@ c.add_compare("--remove-device --disk /dev/null", "remove-disk-path") + c.add_compare("--remove-device --video all", "remove-video-all") + c.add_compare("--remove-device --host-device 0x04b3:0x4485", "remove-hostdev-name") + c.add_compare("--remove-device --memballoon all", "remove-memballoon") ++c.add_compare("--add-device --hostdev mdev_8e37ee90_2b51_45e3_9b25_bf8283c03110", "add-hostdev-mdev") ++c.add_compare("--remove-device --hostdev mdev_b1ae8bf6_38b0_4c81_9d44_78ce3f520496", "remove-hostdev-mdev") + + c = vixml.add_category("add/rm devices and start", "test-state-shutoff --print-diff --start") + c.add_invalid("--add-device --pm suspend_to_disk=yes") # --add-device without a device +@@ -1318,6 +1321,7 @@ c.add_compare("--define --add-device --host-device usb_device_4b3_4485_noserial" + c.add_compare("--add-device --disk %(EXISTIMG1)s,bus=virtio,target=vdf", "add-disk-basic-start") + c.add_compare("--add-device --disk %(NEWIMG1)s,size=.01", "add-disk-create-storage-start") + c.add_compare("--remove-device --disk /dev/null", "remove-disk-path-start") ++c.add_compare("--add-device --hostdev mdev_8e37ee90_2b51_45e3_9b25_bf8283c03110", "add-hostdev-mdev-start") + + c = vixml.add_category("add/rm devices OS KVM", "--connect %(URI-KVM)s test --print-diff --define") + c.add_compare("--add-device --disk %(EXISTIMG1)s", "kvm-add-disk-os-from-xml") # Guest OS (none) from XML +diff --git a/tests/utils.py b/tests/utils.py +index 16ba26b4..62443ca8 100644 +--- a/tests/utils.py ++++ b/tests/utils.py +@@ -231,7 +231,7 @@ def diff_compare(actual_out, filename=None, expect_out=None): + open(filename, "w").write(actual_out) + expect_out = open(filename).read() + +- diff = xmlutil.diff(expect_out, actual_out, ++ diff = xmlutil.diff(expect_out.rstrip(), actual_out.rstrip(), + filename or '', "Generated output") + if diff: + raise AssertionError("Conversion outputs did not match.\n%s" % diff) +-- +2.31.1 + diff --git a/virt-manager-virt-install-add-mediated-device.patch b/virt-manager-virt-install-add-mediated-device.patch new file mode 100644 index 0000000..12a5137 --- /dev/null +++ b/virt-manager-virt-install-add-mediated-device.patch @@ -0,0 +1,256 @@ +From 5245be196682b78c225e67f211c02e3802ca4bd6 Mon Sep 17 00:00:00 2001 +From: Shalini Chellathurai Saroja +Date: Wed, 14 Apr 2021 17:18:55 +0200 +Subject: [PATCH] virt-install: add mediated device + +Add support to install a virtual server with passed-through mediated +device. Mediated device can be created using vGPU attached to +vfio_pci driver or DASD attached to vfio_ccw driver or APQNs attached +to vfio_ap driver. + +Reviewed-by: Cole Robinson +Signed-off-by: Shalini Chellathurai Saroja +(cherry picked from commit 965480e8bc85caf8a4f36b4a2f07963067b63cf6) + +Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1995125 + +Signed-off-by: Jonathon Jongsma +--- + .../cli/compare/virt-install-many-devices.xml | 19 +++++++++ + tests/data/testdriver/testdriver.xml | 40 +++++++++++++++++++ + tests/test_cli.py | 3 ++ + tests/test_nodedev.py | 30 ++++++++++++++ + virtinst/devices/hostdev.py | 36 ++++++++++++++++- + virtinst/nodedev.py | 4 ++ + 6 files changed, 131 insertions(+), 1 deletion(-) + +diff --git a/tests/data/cli/compare/virt-install-many-devices.xml b/tests/data/cli/compare/virt-install-many-devices.xml +index 49e9dcc7..3bd756b3 100644 +--- a/tests/data/cli/compare/virt-install-many-devices.xml ++++ b/tests/data/cli/compare/virt-install-many-devices.xml +@@ -592,6 +592,25 @@ + /dev/pty7 + + ++ ++
++ ++
++ ++ ++ ++ ++
++ ++ ++ ++
++ ++
++ ++
++ ++ + + + +diff --git a/tests/data/testdriver/testdriver.xml b/tests/data/testdriver/testdriver.xml +index ea90f0f7..b8d67bac 100644 +--- a/tests/data/testdriver/testdriver.xml ++++ b/tests/data/testdriver/testdriver.xml +@@ -3645,5 +3645,45 @@ ba + + + ++ ++ mdev_8e37ee90_2b51_45e3_9b25_bf8283c03110 ++ /sys/devices/css0/0.0.0023/8e37ee90-2b51-45e3-9b25-bf8283c03110 ++ css_0_0_0023 ++ ++ vfio_mdev ++ ++ ++ ++ ++ ++ ++ ++ ++ mdev_11f92c9d_b0b0_4016_b306_a8071277f8b9 ++ /sys/devices/vfio_ap/matrix/11f92c9d-b0b0-4016-b306-a8071277f8b9 ++ ap_matrix ++ ++ vfio_mdev ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ mdev_4b20d080_1b54_4048_85b3_a6a62d165c01 ++ /sys/devices/pci0000:00/0000:00:02.0/4b20d080-1b54-4048-85b3-a6a62d165c01 ++ pci_0000_06_00_0 ++ ++ vfio_mdev ++ ++ ++ ++ ++ ++ + + +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 5b174933..5f94e009 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -675,6 +675,9 @@ source.reservations.managed=no,source.reservations.source.type=unix,source.reser + --hostdev wlan0,type=net + --hostdev /dev/vdz,type=storage + --hostdev /dev/pty7,type=misc ++--hostdev mdev_8e37ee90_2b51_45e3_9b25_bf8283c03110,address.type=ccw,address.cssid=0xfe,address.ssid=0x1,address.devno=0x0008 ++--hostdev mdev_11f92c9d_b0b0_4016_b306_a8071277f8b9 ++--hostdev mdev_4b20d080_1b54_4048_85b3_a6a62d165c01,address.type=pci,address.domain=0x0000,address.bus=0x01,address.slot=0x01,address.function=0x0,address.zpci.uid=0x0001,address.zpci.fid=0x00000001 + + + --filesystem /source,/target,alias.name=testfsalias,driver.ats=on,driver.iommu=off,driver.packed=on +diff --git a/tests/test_nodedev.py b/tests/test_nodedev.py +index 406e321f..79678bc8 100644 +--- a/tests/test_nodedev.py ++++ b/tests/test_nodedev.py +@@ -126,6 +126,36 @@ def testDRMDevice(): + assert dev.get_devnode("frob") + + ++def testDASDMdev(): ++ conn = utils.URIs.open_testdriver_cached() ++ devname = "mdev_8e37ee90_2b51_45e3_9b25_bf8283c03110" ++ dev = _nodeDevFromName(conn, devname) ++ assert dev.name == devname ++ assert dev.parent == "css_0_0_0023" ++ assert dev.device_type == "mdev" ++ assert dev.type_id == "vfio_ccw-io" ++ ++ ++def testAPQNMdev(): ++ conn = utils.URIs.open_testdriver_cached() ++ devname = "mdev_11f92c9d_b0b0_4016_b306_a8071277f8b9" ++ dev = _nodeDevFromName(conn, devname) ++ assert dev.name == devname ++ assert dev.parent == "ap_matrix" ++ assert dev.device_type == "mdev" ++ assert dev.type_id == "vfio_ap-passthrough" ++ ++ ++def testPCIMdev(): ++ conn = utils.URIs.open_testdriver_cached() ++ devname = "mdev_4b20d080_1b54_4048_85b3_a6a62d165c01" ++ dev = _nodeDevFromName(conn, devname) ++ assert dev.name == devname ++ assert dev.parent == "pci_0000_06_00_0" ++ assert dev.device_type == "mdev" ++ assert dev.type_id == "nvidia-11" ++ ++ + # NodeDevice 2 Device XML tests + + def testNodeDev2USB1(): +diff --git a/virtinst/devices/hostdev.py b/virtinst/devices/hostdev.py +index 3e9de2ad..e8d0fae2 100644 +--- a/virtinst/devices/hostdev.py ++++ b/virtinst/devices/hostdev.py +@@ -4,6 +4,8 @@ + # This work is licensed under the GNU GPLv2 or later. + # See the COPYING file in the top-level directory. + ++import re ++ + from .device import Device + from ..nodedev import NodeDevice + from ..xmlbuilder import XMLProperty +@@ -53,16 +55,45 @@ class DeviceHostdev(Device): + self.scsi_unit = nodedev.lun + self.managed = False + ++ elif nodedev.device_type == nodedev.CAPABILITY_TYPE_MDEV: ++ self.type = "mdev" ++ ++ if nodedev.type_id == "vfio_ccw-io": ++ self.model = "vfio-ccw" ++ self.managed = "no" ++ ++ elif nodedev.type_id == "vfio_ap-passthrough": ++ self.model = "vfio-ap" ++ self.managed = "no" ++ ++ elif (re.match("^nvidia-[0-9]{2}", nodedev.type_id) or ++ re.match("^i915-GVTg_V[0-9]_[0-9]", nodedev.type_id)): ++ self.model = "vfio-pci" ++ self.managed = "yes" ++ self.display = "off" ++ self.ramfb = "off" ++ ++ else: ++ raise ValueError( # pragma: no cover ++ _("Don't know how to generate nodedev for mdev type id '%s'") % ++ nodedev.type_id) ++ ++ self.uuid = nodedev.name[5:].replace('_', '-') ++ + else: + raise ValueError(_("Unknown node device type %s") % nodedev) + + + _XML_PROP_ORDER = ["mode", "type", "managed", "vendor", "product", +- "domain", "bus", "slot", "function"] ++ "domain", "bus", "slot", "function", "model", ++ "display", "ramfb"] + + mode = XMLProperty("./@mode") + type = XMLProperty("./@type") + managed = XMLProperty("./@managed", is_yesno=True) ++ model = XMLProperty("./@model") ++ display = XMLProperty("./@display") ++ ramfb = XMLProperty("./@ramfb") + + vendor = XMLProperty("./source/vendor/@id") + product = XMLProperty("./source/product/@id") +@@ -92,6 +123,9 @@ class DeviceHostdev(Device): + # type=misc handling + storage_block = XMLProperty("./source/block") + ++ # type=mdev ++ uuid = XMLProperty("./source/address/@uuid") ++ + + ################## + # Default config # +diff --git a/virtinst/nodedev.py b/virtinst/nodedev.py +index 9d2c8f10..97841794 100644 +--- a/virtinst/nodedev.py ++++ b/virtinst/nodedev.py +@@ -40,6 +40,7 @@ class NodeDevice(XMLBuilder): + CAPABILITY_TYPE_SCSIBUS = "scsi_host" + CAPABILITY_TYPE_SCSIDEV = "scsi" + CAPABILITY_TYPE_DRM = "drm" ++ CAPABILITY_TYPE_MDEV = "mdev" + + @staticmethod + def lookupNodedevFromString(conn, idstring): +@@ -168,6 +169,9 @@ class NodeDevice(XMLBuilder): + if len(self.devnodes) > 0: + return self.devnodes[0] + ++ # type='mdev' options ++ type_id = XMLProperty("./capability/type/@id") ++ + + def _AddressStringToHostdev(conn, addrstr): + from .devices import DeviceHostdev +-- +2.31.1 + diff --git a/virt-manager-virt-manager-enable-MDEV-support.patch b/virt-manager-virt-manager-enable-MDEV-support.patch new file mode 100644 index 0000000..84fb2a4 --- /dev/null +++ b/virt-manager-virt-manager-enable-MDEV-support.patch @@ -0,0 +1,164 @@ +From bacab3883858b137f82ab2b3dea308289f65138c Mon Sep 17 00:00:00 2001 +From: Shalini Chellathurai Saroja +Date: Mon, 7 Jun 2021 11:34:21 +0200 +Subject: [PATCH] virt-manager: enable MDEV support + +Enable virt-manager GUI to support add, edit, remove, hot-plug and +hot-unplug of mediated devices (like DASDs, APQNs and PCIs) in virtual +server. + +It is not possible to edit MDEV when a virtual server is in +running state, as this is not supported by libvirt. + +Reviewed-by: Cole Robinson +Signed-off-by: Shalini Chellathurai Saroja +(cherry picked from commit 0e15cd51dfbdaa09f7d34ed1edce2f5416130361) + +Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1995125 + +Signed-off-by: Jonathon Jongsma +--- + tests/data/testdriver/testdriver.xml | 39 ++++++++++++++++++++++++++++ + tests/uitests/test_addhardware.py | 6 +++++ + virtManager/addhardware.py | 19 +++++++++++++- + 3 files changed, 63 insertions(+), 1 deletion(-) + +diff --git a/tests/data/testdriver/testdriver.xml b/tests/data/testdriver/testdriver.xml +index b8d67bac..5875732a 100644 +--- a/tests/data/testdriver/testdriver.xml ++++ b/tests/data/testdriver/testdriver.xml +@@ -3645,6 +3645,27 @@ ba + + + ++ ++ css_0_0_0023 ++ /sys/devices/css0/0.0.0023 ++ computer ++ ++ vfio_ccw ++ ++ ++ 0x0 ++ 0x0 ++ 0x0023 ++ ++ ++ I/O subchannel (Non-QDIO) ++ vfio-ccw ++ 0 ++ ++ ++ ++ ++ + + mdev_8e37ee90_2b51_45e3_9b25_bf8283c03110 + /sys/devices/css0/0.0.0023/8e37ee90-2b51-45e3-9b25-bf8283c03110 +@@ -3658,6 +3679,24 @@ ba + + + ++ ++ ap_matrix ++ /sys/devices/vfio_ap/matrix ++ computer ++ ++ vfio_ap ++ ++ ++ ++ ++ VFIO AP Passthrough Device ++ vfio-ap ++ 65536 ++ ++ ++ ++ ++ + + mdev_11f92c9d_b0b0_4016_b306_a8071277f8b9 + /sys/devices/vfio_ap/matrix/11f92c9d-b0b0-4016-b306-a8071277f8b9 +diff --git a/tests/uitests/test_addhardware.py b/tests/uitests/test_addhardware.py +index ce3da57c..56acc2fa 100644 +--- a/tests/uitests/test_addhardware.py ++++ b/tests/uitests/test_addhardware.py +@@ -459,6 +459,12 @@ def testAddHosts(app): + app.click_alert_button("device is already in use by", "Yes") + lib.utils.check(lambda: details.active) + ++ # Add MDEV device ++ _open_addhw(app, details) ++ tab = _select_hw(addhw, "MDEV Host Device", "host-tab") ++ tab.find_fuzzy("mdev_8e37ee90_2b51_45e3_9b25_bf8283c03110", ++ "table cell").click() ++ _finish(addhw, check=details) + + + def testAddChars(app): +diff --git a/virtManager/addhardware.py b/virtManager/addhardware.py +index cbf19f58..13b899c3 100644 +--- a/virtManager/addhardware.py ++++ b/virtManager/addhardware.py +@@ -249,6 +249,10 @@ class vmmAddHardware(vmmGObjectUI): + add_hw_option(_("PCI Host Device"), "system-run", PAGE_HOSTDEV, + nodedev_enabled, nodedev_errstr, "pci") + ++ add_hw_option(_("MDEV Host Device"), "system-run", PAGE_HOSTDEV, ++ self.conn.support.conn_nodedev(), ++ _("Connection does not support host device enumeration"), ++ "mdev") + add_hw_option(_("Video"), "video-display", PAGE_VIDEO, True, + _("Libvirt version does not support video devices.")) + add_hw_option(_("Watchdog"), "device_pci", PAGE_WATCHDOG, +@@ -656,6 +660,9 @@ class vmmAddHardware(vmmGObjectUI): + (dehex(hostdev.domain), dehex(hostdev.bus), + dehex(hostdev.slot), dehex(hostdev.function))) + ++ elif hostdev.uuid: ++ label += " %s" % (str(hostdev.uuid)) ++ + return label + + +@@ -775,6 +782,12 @@ class vmmAddHardware(vmmGObjectUI): + if dev.xmlobj.name == subdev.xmlobj.parent: + prettyname += " (%s)" % subdev.pretty_name() + ++ if devtype == "mdev": ++ for parentdev in self.conn.list_nodedevs(): ++ if dev.xmlobj.parent == parentdev.xmlobj.name: ++ prettyname = "%s %s" % ( ++ parentdev.pretty_name(), prettyname) ++ + model.append([dev.xmlobj, prettyname]) + + if len(model) == 0: +@@ -981,11 +994,13 @@ class vmmAddHardware(vmmGObjectUI): + + if page == PAGE_HOSTDEV: + # Need to do this here, since we share the hostdev page +- # between two different HW options ++ # between different HW options + row = self._get_hw_selection() + devtype = "usb_device" + if row and row[5] == "pci": + devtype = "pci" ++ if row and row[5] == "mdev": ++ devtype = "mdev" + self._populate_hostdev_model(devtype) + + if page == PAGE_CONTROLLER: +@@ -1036,6 +1051,8 @@ class vmmAddHardware(vmmGObjectUI): + row = self._get_hw_selection() + if row and row[5] == "pci": + return _("PCI Device") ++ if row and row[5] == "mdev": ++ return _("MDEV Device") + return _("USB Device") + + raise RuntimeError("Unknown page %s" % page) # pragma: no cover +-- +2.31.1 + diff --git a/virt-manager-virt-xml-add-support-for-mediated-devices.patch b/virt-manager-virt-xml-add-support-for-mediated-devices.patch new file mode 100644 index 0000000..9131184 --- /dev/null +++ b/virt-manager-virt-xml-add-support-for-mediated-devices.patch @@ -0,0 +1,77 @@ +From 1822e898d556eb5bb80e5c01386b5ad65db01592 Mon Sep 17 00:00:00 2001 +From: Shalini Chellathurai Saroja +Date: Mon, 31 May 2021 21:54:26 +0200 +Subject: [PATCH] virt-xml: add support for mediated devices + +Provide support to add/remove MDEV in a guest domain, which is in +shut-off or running state (hotplug/unplug). Also support update of +already existing MDEV device, when the guest domain is in shut-off +state. Please note that libvirt does not support update of MDEV +device, when the guest domain is in running state. + +Reviewed-by: Cole Robinson +Signed-off-by: Shalini Chellathurai Saroja +(cherry picked from commit 9363e1e692bb0d01184ecc7991d61c95542f690b) + +Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1995125 + +Signed-off-by: Jonathon Jongsma +--- + virtinst/nodedev.py | 20 ++++++++++++++++++++ + 1 file changed, 20 insertions(+) + +diff --git a/virtinst/nodedev.py b/virtinst/nodedev.py +index 97841794..f54a311c 100644 +--- a/virtinst/nodedev.py ++++ b/virtinst/nodedev.py +@@ -5,6 +5,7 @@ + # See the COPYING file in the top-level directory. + + import os ++import uuid + + from .logger import log + from .xmlbuilder import XMLBuilder, XMLProperty, XMLChildProperty +@@ -25,6 +26,16 @@ def _compare_int(nodedev_val, hostdev_val): + return (nodedev_val == hostdev_val or hostdev_val == -1) + + ++def _compare_uuid(nodedev_val, hostdev_val): ++ try: ++ nodedev_val = uuid.UUID(nodedev_val) ++ hostdev_val = uuid.UUID(hostdev_val) ++ except Exception: # pragma: no cover ++ return -1 ++ ++ return (nodedev_val == hostdev_val) ++ ++ + class DevNode(XMLBuilder): + XML_NAME = "devnode" + +@@ -82,6 +93,9 @@ class NodeDevice(XMLBuilder): + parent = XMLProperty("./parent") + device_type = XMLProperty("./capability/@type") + ++ def get_mdev_uuid(self): ++ return self.name[5:].replace('_', '-') ++ + def compare_to_hostdev(self, hostdev): + if self.device_type == "pci": + if hostdev.type != "pci": +@@ -101,6 +115,12 @@ class NodeDevice(XMLBuilder): + _compare_int(self.bus, hostdev.bus) and + _compare_int(self.device, hostdev.device)) + ++ if self.device_type == "mdev": ++ if hostdev.type != "mdev": ++ return False ++ ++ return _compare_uuid(self.get_mdev_uuid(), hostdev.uuid) ++ + return False + + +-- +2.31.1 + diff --git a/virt-manager.spec b/virt-manager.spec new file mode 100644 index 0000000..8fb1ffe --- /dev/null +++ b/virt-manager.spec @@ -0,0 +1,1190 @@ +# -*- rpm-spec -*- + +%global with_guestfs 0 +%global default_hvs "qemu,xen,lxc" + + +# End local config + +Name: virt-manager +Version: 3.2.0 +Release: 4%{?dist}%{?extra_release} +%global verrel %{version}-%{release} + +Summary: Desktop tool for managing virtual machines via libvirt +License: GPLv2+ +BuildArch: noarch +URL: https://virt-manager.org/ +Source0: https://virt-manager.org/download/sources/%{name}/%{name}-%{version}.tar.gz +Source1: symlinks + +Patch1: virt-manager-cli-introduce-resource-fibrechannel.appid-option.patch +Patch2: virt-manager-virt-install-add-mediated-device.patch +Patch3: virt-manager-virt-xml-add-support-for-mediated-devices.patch +Patch4: virt-manager-hostdev-use-method-get_mdev_uuid.patch +Patch5: virt-manager-tests-verify-MDEV-support.patch +Patch6: virt-manager-virt-manager-enable-MDEV-support.patch +Patch7: virt-manager-Handle-new-nodedev-name-for-mediated-devices.patch +Patch8: virt-manager-addstorage-Don-t-pass-None-to-widget.set_active.patch +Patch9: virt-manager-cli-add-ioapic.driver-to-features.patch +Patch10: virt-manager-console-fix-error-with-old-pygobject.patch + + +Requires: virt-manager-common = %{verrel} +Requires: python3-gobject +Requires: gtk3 +Requires: libvirt-glib >= 0.0.9 +Requires: gtk-vnc2 +Requires: spice-gtk3 + +# We can work with gtksourceview 3 or gtksourceview4, rhel has only the older one +Requires: gtksourceview3 + +# virt-manager is one of those apps that people will often install onto +# a headless machine for use over SSH. This means the virt-manager dep +# chain needs to provide everything we need to get a usable app experience. +# Unfortunately nothing in our chain has an explicit dep on some kind +# of usable gsettings backend, so we explicitly depend on dconf so that +# user settings actually persist across app runs. +Requires: dconf + +# The vte291 package is actually the latest vte with API version 2.91, while +# the vte3 package is effectively a compat package with API version 2.90. +# virt-manager works fine with either, so pull the latest bits so there's +# no ambiguity. +Requires: vte291 + +# Weak dependencies for the common virt-manager usecase +Recommends: (libvirt-daemon-kvm or libvirt-daemon-qemu) +Recommends: libvirt-daemon-config-network + +# Optional inspection of guests +Suggests: python3-libguestfs + +BuildRequires: git +BuildRequires: gettext +BuildRequires: python3-devel +BuildRequires: python3-docutils + + +%description +Virtual Machine Manager provides a graphical tool for administering virtual +machines for KVM, Xen, and LXC. Start, stop, add or remove virtual devices, +connect to a graphical or serial console, and see resource usage statistics +for existing VMs on local or remote machines. Uses libvirt as the backend +management API. + + +%package common +Summary: Common files used by the different Virtual Machine Manager interfaces + +Requires: python3-argcomplete +Requires: python3-libvirt +Requires: python3-libxml2 +Requires: python3-requests +Requires: libosinfo >= 0.2.10 +# Required for gobject-introspection infrastructure +Requires: python3-gobject-base +# Required for pulling files from iso media with isoinfo +Requires: genisoimage + +%description common +Common files used by the different virt-manager interfaces, as well as +virt-install related tools. + + +%package -n virt-install +Summary: Utilities for installing virtual machines + +Requires: virt-manager-common = %{verrel} +# For 'virsh console' +Requires: libvirt-client + +Provides: virt-install +Provides: virt-clone +Provides: virt-xml + +%description -n virt-install +Package includes several command line utilities, including virt-install +(build and install new VMs) and virt-clone (clone an existing virtual +machine). + + +%prep +%autosetup -S git_am -N + +# "make dist" replaces all symlinks with a copy of the linked files; +# we need to replace all of them with the original symlinks +echo "Restoring symlinks" +while read lnk target; do + if [ -e $lnk ]; then + rm -rf $lnk + ln -s $target $lnk + fi +done <%{_sourcedir}/symlinks || exit 1 +git add . +git commit -q -a --allow-empty --author 'rpm-build ' -m symlinks + + +git config gc.auto 0 + +%autopatch + + +%build +%if %{default_hvs} +%global _default_hvs --default-hvs %{default_hvs} +%endif + +./setup.py configure \ + %{?_default_hvs} + + +%install +./setup.py \ + --no-update-icon-cache --no-compile-schemas \ + install -O1 --root=%{buildroot} +%find_lang %{name} + +%if 0%{?py_byte_compile:1} +# https://docs.fedoraproject.org/en-US/packaging-guidelines/Python_Appendix/#manual-bytecompilation +%py_byte_compile %{python3} %{buildroot}%{_datadir}/virt-manager/ +%endif + +# Replace '#!/usr/bin/env python3' with '#!/usr/bin/python3' +# The format is ideal for upstream, but not a distro. See: +# https://fedoraproject.org/wiki/Features/SystemPythonExecutablesUseSystemPython +for f in $(find %{buildroot} -type f -executable -print); do + sed -i "1 s|^#!/usr/bin/env python3|#!%{__python3}|" $f || : +done + + +%files +%doc README.md COPYING NEWS.md +%{_bindir}/%{name} + +%{_mandir}/man1/%{name}.1* + +%{_datadir}/%{name}/ui/*.ui +%{_datadir}/%{name}/virtManager + +%{_datadir}/%{name}/icons +%{_datadir}/icons/hicolor/*/apps/* + +%{_datadir}/applications/%{name}.desktop +%{_datadir}/glib-2.0/schemas/org.virt-manager.virt-manager.gschema.xml +%{_datadir}/metainfo/%{name}.appdata.xml + + +%files common -f %{name}.lang +%dir %{_datadir}/%{name} + +%{_datadir}/%{name}/virtinst + + +%files -n virt-install +%{_mandir}/man1/virt-install.1* +%{_mandir}/man1/virt-clone.1* +%{_mandir}/man1/virt-xml.1* + +%{_datadir}/bash-completion/completions/virt-install +%{_datadir}/bash-completion/completions/virt-clone +%{_datadir}/bash-completion/completions/virt-xml + +%{_bindir}/virt-install +%{_bindir}/virt-clone +%{_bindir}/virt-xml + + +%changelog +* Thu Mar 10 2022 Jonathon Jongsma - 3.2.0-4 +- console: fix error with old pygobject (rhbz#2026987) + +* Fri Jan 21 2022 Jonathon Jongsma - 3.2.0-3 +- cli: add 'ioapic.driver' to --features (rhbz#2037202) + +* Thu Dec 9 2021 Jonathon Jongsma - 3.2.0-2 +- addstorage: Don't pass None to widget.set_active() (rhbz#2026987) + +* Fri Nov 19 2021 Jonathon Jongsma - 3.2.0-1 +- Rebased to virt-manager-3.2.0 (rhbz#2009080) +- The rebase also fixes the following bugs: + rhbz#2001794 +- cli: introduce --resource fibrechannel.appid option (rhbz#2011327) +- virt-install: add mediated device (rhbz#1995125) +- virt-xml: add support for mediated devices (rhbz#1995125) +- hostdev: use method get_mdev_uuid() (rhbz#1995125) +- tests: verify MDEV support (rhbz#1995125) +- virt-manager: enable MDEV support (rhbz#1995125) +- Handle new nodedev name for mediated devices (rhbz#2020241) + +* Mon Nov 23 2020 Pavel Hrdina - 2.2.1-4 +- virt-install: Use minutes instead of seconds on get_time_string() (rhbz#1777664) +- details: Fix showing the firmware type in case of firmware auto selection (rhbz#1857069) +- details: fix detection of firmware auto-selection (rhbz#1857069) +- domain: Fix VM deletion with firmare='efi' (rhbz#1869135) +- virt-xml: fix defined_xml_is_unchanged (rhbz#1857504) + +* Mon Dec 2 2019 Pavel Hrdina - 2.2.1-3 +- guest: Drop set_capabilities_defaults call from get_uefi_path (rhbz#1753644) +- devices: video: Simplify model hvm check (rhbz#1753644) +- domcapabilities: Get video devices (rhbz#1753644) +- domcapabilities: Add supports_video_bochs() (rhbz#1753644) +- video: Prefer "bochs" when it's supported. (rhbz#1753644) +- addhardware: Add "bochs" display to the video list (rhbz#1753644) +- osdict: Always return the most generic tree (rhbz#1749865) +- osdict: Choose the most appropriate tree when a profile is set (rhbz#1749865) + +* Fri Aug 16 2019 Pavel Hrdina - 2.2.1-2 +- man: virt-install: Fix a couple of launchSecurity related typos (rhbz#1741846) + +* Thu Jul 11 2019 Pavel Hrdina - 2.2.1-1 +- Rebased to virt-manager-2.2.1 (rhbz#1726535) +- The rebase also fixes the following bugs: + rhbz#1727881, rhbz#1724287, rhbz#1727811 +- spec: add gtksourceview3 dependency introduced by upstream (rhbz#1722820) +- guest: fix warning message when machine type is changed for secure boot (rhbz#1727811) + +* Mon Jun 24 2019 Pavel Hrdina - 2.2.0-2 +- xmleditor: Handle gtksourceview3 as well as gtksourceview4 (rhbz#1722820) +- xmleditor: Fix the gtksource version checking (rhbz#1722820) +- spec: add gtksourceview3 dependency introduced by upstream (rhbz#1722820) + +* Mon Jun 17 2019 Pavel Hrdina - 2.2.0-1 +- Rebased to virt-manager-2.2.0 (rhbz#1721001) +- The rebase also fixes the following bugs: + rhbz#1718065, rhbz#1714304, rhbz#1709857, rhbz#1707379, rhbz#1700354 + rhbz#1692489, rhbz#1690687, rhbz#1690685, rhbz#1683609, rhbz#1679018 + rhbz#1677019, rhbz#1671599, rhbz#1667025, rhbz#1666597, rhbz#1663430 + rhbz#1661867, rhbz#1660467, rhbz#1660123, rhbz#1659354, rhbz#1658511 + rhbz#1648939, rhbz#1599139, rhbz#1508147, rhbz#1501608 +- spec: add build dependencies that are now required for build (rhbz#1721001) + +* Fri Feb 8 2019 Pavel Hrdina - 2.0.0-4 +- inspection: fix check of null icon (rhbz#1671278) + +* Fri Feb 1 2019 Pavel Hrdina - 2.0.0-3 +- diskbackend: Fix backtrace cloning with block storage (bz #1661986) (rhbz#1661986) + +* Fri Dec 21 2018 Pavel Hrdina - 2.0.0-2 +- virt-install: Fix description for --os-variant (rhbz#1649406) +- virt-install: Add "Guest OS" options group (rhbz#1649406) +- virt-xml: Accept --os-variant option (rhbz#1649406) +- tests: Add some tests for virt-xml with KVM (rhbz#1649406) +- virt-xml: Start using --os-variant (rhbz#1649406) +- cli: s390x+graphics specified, use video=virtio (bz #1654994) (rhbz#1654994) + +* Mon Oct 15 2018 Cole Robinson - 2.0.0-1 +- Rebased to version 2.0.0 +- Use q35 default for appropriate OS (bz #1599777) + +* Thu Apr 26 2018 Cole Robinson - 1.6.0-0.1.git3bc7ff24c +- Update to latest git snapshot, contains python3 port + +* Wed Feb 28 2018 Cole Robinson - 1.5.1-1 +- Rebased to version 1.5.1 +- Fix disk/net/mem stats graphs + +* Wed Feb 07 2018 Iryna Shcherbina - 1.5.0-2 +- Update Python 2 dependency declarations to new packaging standards + (See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3) + +* Tue Feb 06 2018 Cole Robinson - 1.5.0-1 +- Rebased to version 1.5.0 +- python3 prep work (Radostin Stoyanov, Cole Robinson, Cédric Bosdonnat) +- Switch --location ISO to use isoinfo (Andrew Wong) +- virt-install: add --cpu numa distance handling (Menno Lageman) +- virt-install: fix --disk for rbd volumes with auth (Rauno Väli) +- virt-install: add --cputune vcpupin handling (Wim ten Have) +- details ui: Showing attached scsi devices per controller (Lin Ma) +- network ui: Show details about SR-IOV VF pool (Lin Ma) +- Greatly expand UI test suite coverage + +* Tue Feb 06 2018 Cole Robinson - 1.5.0-1 +- Rebased to version 1.5.0 +- python3 prep work (Radostin Stoyanov, Cole Robinson, Cédric Bosdonnat) +- Switch --location ISO to use isoinfo (Andrew Wong) +- virt-install: add --cpu numa distance handling (Menno Lageman) +- virt-install: fix --disk for rbd volumes with auth (Rauno Väli) +- virt-install: add --cputune vcpupin handling (Wim ten Have) +- details ui: Showing attached scsi devices per controller (Lin Ma) +- network ui: Show details about SR-IOV VF pool (Lin Ma) +- Greatly expand UI test suite coverage + +* Fri Jan 05 2018 Igor Gnatenko - 1.4.3-3 +- Remove obsolete scriptlets + +* Tue Nov 21 2017 Cole Robinson - 1.4.3-2 +- Fix 'Add Hardware' wizard for non-x86 guests (bz #1505532) + +* Tue Sep 19 2017 Cole Robinson - 1.4.3-1 +- Rebased to version 1.4.3 +- Improve install of debian/ubuntu non-x86 media (Viktor Mihajlovski, Andrew + Wong) +- New virt-install --graphics listen.* (Pavel Hrdina) +- New virt-install --disk snapshot_policy= (Pavel Hrdina) +- New virt-install --cpu cache.* (Lin Ma) +- Several bug fixes + +* Wed Aug 09 2017 Cole Robinson - 1.4.2-1 +- Rebased to version 1.4.2 +- New VM wixard virt-bootstrap integration (Radostin Stoyanov) +- New VM wizard support for virtuozzo containers (Mikhail Feoktistov) +- network UI: add support to create SR-IOV VF pool (Lin Ma) +- Nicer OS list in New VM wizard (Pino Toscano) +- Better defaults for UEFI secureboot builds (Pavel Hrdina) +- Fix defaults for aarch64 VMs if graphics are requested +- virt-install: new --memdev option (Pavel Hrdina) +- virt-install: add --disk logical/physical_block_size (Yuri Arabadji) +- virt-install: add --features hyperv_reset=, hyperv_synic= (Venkat Datta N + H) + +* Thu Jul 27 2017 Fedora Release Engineering - 1.4.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Wed Mar 22 2017 Cole Robinson - 1.4.1-2 +- Fix broken it/ko translations (bz #1433800) + +* Mon Mar 13 2017 Cole Robinson - 1.4.1-1 +- Rebased to version 1.4.1 +- storage/nodedev event API support (Jovanka Gulicoska) +- UI options for enabling spice GL (Marc-André Lureau) +- Add default virtio-rng /dev/urandom for supported guest OS +- Cloning and rename support for UEFI VMs (Pavel Hrdina) +- libguestfs inspection UI improvements (Pino Toscano) +- virt-install: Add --qemu-commandline +- virt-install: Add --network vhostuser (Chen Hanxiao) +- virt-install: Add --sysinfo (Charles Arnold) + +* Sat Feb 11 2017 Fedora Release Engineering - 1.4.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Dec 13 2016 Cole Robinson - 1.4.0-5 +- Fix version check for spice GL support +- Don't return virtio1.0-net as a valid device name (bz #1399083) +- Fix window size tracking on wayland (bz #1375175) +- Fix 'resize to VM' on wayland (bz #1397598) + +* Sun Nov 06 2016 Cole Robinson - 1.4.0-4 +- Fix fedora24 installs from incorrectly using virtio-input (bz #1391522) +- Fix error checking extra_args for console argument + +* Wed Jun 29 2016 Cole Robinson - 1.4.0-3 +- Fix italian translation from breaking the app (bz #1350185) + +* Sat Jun 18 2016 Cole Robinson - 1.4.0-2 +- Fix executing virt-* scripts (bz #1347938) + +* Sat Jun 18 2016 Cole Robinson - 1.4.0-1 +- Rebased to version 1.4.0 + +* Fri May 20 2016 Cole Robinson - 1.3.2-4.20160520git2204de62d9 +- Rebase to latest git +- Update translations (bz #1323015) +- Fix rawhide URL installs (bz #1322011) +- Update viewer to work with spice GL + +* Thu Mar 17 2016 Cole Robinson - 1.3.2-3 +- Fix screenshot on F24 rawhide (bz #1297988) +- Fix URL installs when content-length header missing (bz #1297900) + +* Fri Feb 05 2016 Fedora Release Engineering - 1.3.2-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Thu Dec 24 2015 Cole Robinson - 1.3.2-1 +- Rebased to version 1.3.2 +- Fix dependency issues with vte (bz #1290262) + +* Sun Dec 06 2015 Cole Robinson - 1.3.1-1 +- Rebased to version 1.3.1 +- Fix command line API on RHEL7 pygobject + +* Wed Nov 25 2015 Cole Robinson - 1.3.0-1 +- Rebased to version 1.3.0 +- Error when trying to modify existing 9p share (bz #1257565) +- virt-manager tries to create vmport device on non-x86 backends (bz #1259998) +- Details/Virtual networks: Allow manually specifying a bridge for + qemu:///session (bz #1212443) +- [RFE] Improve Solaris 10 x86-64 support in virt-manager (bz #1262093) +- No system tray icon in Cinnamon session (bz #1257949) +- virt-install does not remove orphaned images on failure (bz #1212617) +- virt-manager does not warn if it cannot find the network (bz #1212616) +- Storage volume manager looses focus when a volume is deleted (bz #1279861) +- Storage volume manager does not update free space (bz #1279940) +- Reboot/Shutdown buttons does not work on aarch64 (bz #1212826) + +* Tue Aug 11 2015 Cole Robinson - 1.2.1-3 +- Fix errors with missing nodedevs (bz #1225771) +- Fix CDROM media change if device is bootable (bz #1229819) +- Fix adding iscsi pools (bz #1231558) +- spec: Add LXC to default connection list (bz #1235972) +- Fix backtrace when reporting OS error (bz #1241902) +- Raise upper limits for lxc ID namespaces (bz #1244490) +- Fix 'copy host CPU definition' +- Fix displaying VM machine type when connecting to old libvirt +- Fix qemu:///session handling in 'Add Connection' dialog +- Fix default storage path for qemu:///session, it should be .local/share/... + +* Fri Jun 19 2015 Fedora Release Engineering - 1.2.1-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sat Jun 06 2015 Cole Robinson - 1.2.1-1 +- Rebased to version 1.2.1 +- Bugfix release +- Fix connecting to older libvirt versions (Michał Kępień) +- Fix connecting to VM console with non-IP hostname (Giuseppe Scrivano) +- Fix addhardware/create wizard errors when a nodedev disappears +- Fix adding a second cdrom via customize dialog + +* Mon May 04 2015 Cole Robinson - 1.2.0-1 +- Rebased to version 1.2.0 + +* Mon Apr 13 2015 Cole Robinson - 1.1.0-7.git6dbe19bd8 +- Catch ppc64le domaincapabilities errors (bz #1209723) +- Fix missing install options for ppc64le (bz #1209720) +- Allow adding SATA CDROM devices for q35 (bz #1207834) +- Fix crashes with ssh spice connections (bz #1135808) +- Drop incorrect dep on gnome-icon-theme (bz #1207061) + +* Fri Mar 27 2015 Cole Robinson - 1.1.0-6.git8ca8490c +- Update to latest git +- Fix new VM disk image names when VM name changes (bz #1169141) +- Fix missing virt-install dep on pygobject (bz #1195794) +- Fix changing VM video type away from qxl (bz #1182710) +- Don't use vmvga for ubuntu VMs on remote centos hosts (bz #1147662) +- Clear vendor field when changing CPU (bz #1190851) +- Drop bogus network domain name validation (bz #1195873) +- Fix Fedora URL examples in virt-install man page (bz #1172818) +- Fix misleading virt-install text after --import install (bz #1180558) + +* Sun Feb 22 2015 Cole Robinson - 1.1.0-5.git310f6527 +- Fix BuildRequires for f22/rawhide + +* Sun Nov 16 2014 Cole Robinson - 1.1.0-4.git310f6527 +- Fix crash when rebooting VMs after install (bz #1135546) +- Fix dep on libosinfo (bz #1159370) +- Fix PCI/USB hotplug (bz #1146297) + +* Tue Sep 23 2014 Cole Robinson - 1.1.0-3.git310f6527 +- Fix defaults for arm and aarch64 VMs + +* Mon Sep 22 2014 Cole Robinson - 1.1.0-2.git30db9ece2 +- Fix app hanging at connection startup with remote host (bz #1123266) +- Fix several issues creating host bridges (bz #1122743) +- Only use 2 usb redir devs by default to free up USB ports (bz #1135488) +- Create qemu-ga channels for rhel/centos 6/7 VMs (bz #1139109) + +* Sun Sep 07 2014 Cole Robinson - 1.1.0-1 +- Rebased to version 1.1.0 +- Switch to libosinfo as OS metadata database (Giuseppe Scrivano) +- Use libosinfo for OS detection from CDROM media labels (Giuseppe + Scrivano) +- Use libosinfo for improved OS defaults, like recommended disk size + (Giuseppe Scrivano) +- virt-image tool has been removed, as previously announced +- Enable Hyper-V enlightenments for Windows VMs +- Revert virtio-console default, back to plain serial console +- Experimental q35 option in new VM 'customize' dialog +- UI for virtual network QoS settings (Giuseppe Scrivano) +- virt-install: --disk discard= support (Jim Minter) +- addhardware: Add spiceport UI (Marc-André Lureau) +- virt-install: --events on_poweroff etc. support (Chen Hanxiao) +- cli --network portgroup= support and UI support +- cli --boot initargs= and UI support +- addhardware: allow setting controller model (Chen Hanxiao) +- virt-install: support setting hugepage options (Chen Hanxiao) + +* Sun Jun 08 2014 Fedora Release Engineering - 1.0.1-3.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Tue Apr 29 2014 Cole Robinson - 1.0.1-3 +- filesystem: Fix target validation when editing device (bz #1089422) +- details: Explicit warn that 'format' doesn't change image format (bz + #1089457) +- snapshots: Fix screenshot with qxl+spice (bz #1089780) +- Fix using storage when the directory name contains whitespace (bz #1091384) +- packageutils: Fix install when one package is already installed (bz + #1090181) + +* Wed Apr 16 2014 Cole Robinson - 1.0.1-2 +- gfxdetails: Show port number for active autoport VM (bz #1081614) +- connection: Hook into domain balloon event (bz #1081424) +- details: Fix showing vcpus values in 'customize' dialog (bz #1083903) +- details: Fix changing graphics type (bz #1083903) +- createpool: Clarify iscsi IQN fields (bz #1084011) +- More fixes for errors on libvirtd disconnect (bz #1069351) + +* Sat Mar 22 2014 Cole Robinson - 1.0.1-1 +- Rebased to version 1.0.1 +- virt-install/virt-xml: New --memorybacking option (Chen Hanxiao) +- virt-install/virt-xml: New --memtune option (Chen Hanxiao) +- virt-manager: UI for LXC (Chen Hanxiao) +- virt-manager: gsettings key to disable keygrab (Kjö Hansi Glaz) +- virt-manager: Show domain state reason in the UI (Giuseppe Scrivano) +- Fix a number of bugs found since the 1.0.0 release + +* Mon Mar 10 2014 Cole Robinson - 1.0.0-6 +- connection: Handle errors when deregistering events on close (bz #1069351) + +* Fri Mar 07 2014 Cole Robinson - 1.0.0-5 +- addhardware: Fix adding disk through 'customize' dialog (bz #1073808) + +* Thu Mar 06 2014 Cole Robinson - 1.0.0-4 +- virt-convert: better error if unar is not installed +- details: Fix fallback if fetching CPU models fails (bz #1072704) +- fsdetails: Fix adding a filesystem device (bz #1073067) +- virt-install: Fix --location iso again, and test it (bz #1071513) +- Handle libvirt generating invalid volume XML (bz #1072770) + +* Fri Feb 28 2014 Cole Robinson - 1.0.0-3 +- Fix creating storage paths if directory is all digits (bz #1069351) +- Properly close connection if tick fails (bz #1069351) +- virt-manager: Handle unrefreshed storage pools (bz #1070883) +- Fix unsetting 'auto resize' console property + +* Tue Feb 18 2014 Cole Robinson - 1.0.0-2 +- Fix open connection->lxc +- Fix issues creating ppc64 guests +- Fix generating disk targets from customize->addhw + +* Fri Feb 14 2014 Cole Robinson - 1.0.0-1 +- Rebased to version 1.0.0 +- New tool virt-xml: Edit libvirt XML in one shot from the command line +- Improved defaults: qcow2, USB2, host CPU model, guest agent channel +- Introspect command line options like --disk=? or --network=help + +* Sun Nov 10 2013 Cole Robinson - 0.10.0-5.git1ffcc0cc +- Fix running virt-manager on rawhide (bz #1024569) +- Fix vcpu vs. maxvcpu UI (bz #1016318) +- Fix app startup when run as root (bz #1016435) +- Release serial console when details window is closed (bz #1016445) +- Clarify snapshot VM state UI (bz #1016604) +- Fix adding qemu-guest-agent by default (bz #1016613) +- Fix first run app install (bz #1016825) +- Fix error reporting if initrd fetch fails (bz #1017419) +- Fix error reporting if app is run with no DISPLAY (bz #1021482) +- Fix usage of install media in /home/crobinso (bz #1025355) + +* Sun Oct 06 2013 Cole Robinson - 0.10.0-4.git79196cdf +- Fix cdrom ordering if added via 'customize' (bz #905439) +- Default to spice/qxl for virt-install (bz #911734) +- Fill in cache and io values for new VMs (bz #967643) +- Add dep on dconf (bz #1012884) + +* Tue Sep 24 2013 Cole Robinson - 0.10.0-3.gita2e52067 +- Sync with git +- Don't try to launch multiple ssh askpass dialogs at once (bz #811346) +- Fix confusion when multiple progress dialogs are run (bz #1003101) +- Fix error adding macvtap nic (bz #1006324) +- Add an appdata file (bz #1011120) +- virt-install: fix nfs:// style URLs (bz #1011177) +- Fix spice with TLS (bz #904295) +- Reduce impact of memory leak (bz #972371) +- Fix parsing rawhide .treeinfo (bz #989162) + +* Wed Aug 21 2013 Cole Robinson 0.10.0-2.git948b5359 +- Update to git snapshot for ARM support + +* Sun Aug 04 2013 Fedora Release Engineering - 0.10.0-1.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Wed Jun 19 2013 Cole Robinson - 0.10.0-1 +- Rebased to version 0.10.0 +- Fix screenshots (bz #969410) +- Add Fedora 19 osdict option (bz #950230) +- Fix loading libguestfs OS icons (bz #905238) +- Make packagekit search cancellable (bz #973777) +- Fix freeze on guest shutdown if serial console connected (bz #967968) + +* Mon May 27 2013 Cole Robinson - 0.10.0-0.5.gitde1695b2 +- Fix default graphics, should be spice+qxl (bz #965864) +- Check for libvirt default network package on first run (bz #950329) +- Fix changing VM cirrus->QXL (bz #928882) + +* Wed May 15 2013 Cole Robinson - 0.10.0-0.4.gitb68faac8 +- Drop bogus packagekit check for avahi-tools (bz #963472) + +* Wed May 15 2013 Cole Robinson - 0.10.0-0.3.gitb68faac8 +- Fix error creating QEMU guests (bz #962569) + +* Thu May 09 2013 Cole Robinson - 0.10.0-0.2.gitb68faac8 +- Fix dep on vte3 (bz #958945) +- Fix dep on virt-manager-common (bz #958730) +- Fix crash when installing from ISO media (bz #958641) +- Fix poor error reporting with unknown CLI option (bz #958730) + +* Mon Apr 29 2013 Cole Robinson - 0.10.0-0.1.gitd3f9bc8e +- Update to git snapshot for next release + +* Mon Apr 01 2013 Cole Robinson - 0.9.5-1 +- Rebased to version 0.9.5 +- Enable adding virtio-scsi disks (Chen Hanxiao) (bz 887584) +- Support security auto-relabel setting (Martin Kletzander) +- Support disk iotune settings (David Shane Holden) +- Support 'reset' as a reboot option (John Doyle) +- Don't pull in non-native qemu packages on first run (bz 924469) +- Don't create LVM volumes with alloc=0, it doesn't work (bz 872162) +- Fix storage browser hang on KDE (bz 880781) +- Fix package installation on KDE (bz 882024) + +* Fri Mar 01 2013 Cole Robinson - 0.9.4-5 +- Add explicit dep on pod2man (bz #914562) + +* Fri Feb 15 2013 Fedora Release Engineering - 0.9.4-4.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Mon Dec 17 2012 Cole Robinson - 0.9.4-4 +- Use correct KVM package names on first run (bz #873878) +- network: fix parsing ip blocks with prefix= (bz #872814) +- Don't recommend all of libvirt, just the kvm bits (bz #872246) + +* Tue Oct 30 2012 Cole Robinson - 0.9.4-3 +- Fix first run packagekit interaction (bz #870851) +- Fix another backtrace if guest is pmsuspended (bz #871237) + +* Wed Oct 24 2012 Cole Robinson - 0.9.4-2 +- Fix KVM package install on app first run +- Fix listing domain with 'suspended' state (bz #850954) +- Fix 'browse local' behavior when choosing directory (bz #855335) +- Fix libgnome-keyring dep (bz #811921) + +* Sun Jul 29 2012 Cole Robinson - 0.9.4-1 +- Rebased to version 0.9.4 +- Fix VNC keygrab issues (bz 840240) + +* Sun Jul 22 2012 Fedora Release Engineering - 0.9.3-1.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Mon Jul 09 2012 Cole Robinson - 0.9.3-1 +- Rebased to version 0.9.3 +- Convert to gtkbuilder: UI can now be editted with modern glade tool +- virt-manager no longer runs on RHEL5, but can manage a remote RHEL5 + host +- Option to configure spapr net and disk devices for pseries (Li Zhang) +- Offer to install openssh-askpass if we need it (bz 754484) +- Don't leave defunct SSH processes around (bz 757892) +- Offer to start libvirtd after install (bz 791152) +- Fix crash when deleting storage volumes (bz 805950) +- Show serial device PTY path again (bz 811760) +- Fix possible crash when rebooting fails (bz 813119) +- Offer to discard state if restore fails (bz 837236) + +* Wed Jun 06 2012 Cole Robinson - 0.9.1-4 +- Fix connecting to console with specific listen address +- Fix regression that dropped spice dependency (bz 819270) + +* Wed Apr 25 2012 Cole Robinson - 0.9.1-3 +- Actually make spice the default (bz 757874) +- Only depend on spice on arch it is available (bz 811030) +- Depend on libgnome-keyring (bz 811921) + +* Mon Feb 13 2012 Cole Robinson - 0.9.1-2 +- Fix error reporting for failed remote connections (bz 787011) +- Fix setting window title when VNC mouse is grabbed (bz 788443) +- Advertise VDI format in disk details (bz 761300) +- Don't let an unavailable host hang the app (bz 766769) +- Don't overwrite existing create dialog when reshowing (bz 754152) +- Improve tooltip for 'force console shortcuts' (bz 788448) + +* Wed Feb 01 2012 Cole Robinson - 0.9.1-1 +- Rebased to version 0.9.1 +- Support for adding usb redirection devices (Marc-André Lureau) +- Option to switch usb controller to support usb2.0 (Marc-André Lureau) +- Option to specify machine type for non-x86 guests (Li Zhang) +- Support for filesystem device type and write policy (Deepak C Shetty) +- Many bug fixes! + +* Sat Jan 14 2012 Fedora Release Engineering - 0.9.0-8.1 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Fri Oct 28 2011 Cole Robinson - 0.9.0-8 +- Fix crashes when deleting a VM (bz 749263) + +* Tue Sep 27 2011 Cole Robinson - 0.9.0-7 +- Fix 'Resize to VM' graphical option (bz 738806) +- Fix deleting guest with managed save data +- Fix error when adding default storage +- Don't flush XML cache on every tick +- Use labels for non-editable network info fields (bz 738751) +- Properly update icon cache (bz 733836) + +* Tue Aug 02 2011 Cole Robinson - 0.9.0-6 +- Fix python-newt_syrup dep + +* Mon Aug 01 2011 Cole Robinson - 0.9.0-5 +- Don't have a hard dep on libguestfs (bz 726364) +- Depend on needed python-newt_syrup version + +* Thu Jul 28 2011 Cole Robinson - 0.9.0-4 +- Fix typo that broke net stats reporting + +* Wed Jul 27 2011 Cole Robinson - 0.9.0-3 +- Add BuildRequires: GConf2 to fix pre scriplet error + +* Tue Jul 26 2011 Cole Robinson - 0.9.0-2 +- Fix virtinst dep + +* Tue Jul 26 2011 Cole Robinson - 0.9.0-1.fc17 +- Rebased to version 0.9.0 +- Use a hiding toolbar for fullscreen mode +- Use libguestfs to show guest packagelist and more (Richard W.M. Jones) +- Basic 'New VM' wizard support for LXC guests +- Remote serial console access (with latest libvirt) +- Remote URL guest installs (with latest libvirt) +- Add Hardware: Support devices +- Add Hardware: Support devices (Marc-André Lureau) +- Enable direct interface selection for qemu/kvm (Gerhard Stenzel) +- Allow viewing and changing disk serial number + +* Thu Apr 28 2011 Cole Robinson - 0.8.7-5.fc16 +- Stop netcf errors from flooding logs (bz 676920) +- Bump default mem for new guests to 1GB so F15 installs work (bz + 700480) + +* Tue Apr 19 2011 Cole Robinson - 0.8.7-4.fc16 +- Fix spice RPM dependency (bz 697729) + +* Thu Apr 07 2011 Cole Robinson - 0.8.7-3.fc16 +- Fix broken cs.po which crashed gettext +- Fix offline attach fallback if hotplug fails +- Offer to attach spicevmc if switching to spice + +* Thu Mar 31 2011 Cole Robinson - 0.8.7-2.fc16 +- Fix using spice as default graphics type +- Fix lockup as non-root (bz 692570) + +* Mon Mar 28 2011 Cole Robinson - 0.8.7-1.fc16 +- Rebased to version 0.8.7 +- Allow renaming an offline VM +- Spice password support (Marc-André Lureau) +- Allow editting NIC settings (Gerhard Stenzel) +- Allow enabling/disabling individual CPU features +- Allow easily changing graphics type between VNC/SPICE for existing VM +- Allow easily changing network source device for existing VM + +* Mon Feb 07 2011 Fedora Release Engineering - 0.8.6-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Wed Feb 2 2011 Cole Robinson - 0.8.6-1.fc15 +- Update to 0.8.6 +- SPICE support (requires spice-gtk) (Marc-André Lureau) +- Option to configure CPU model +- Option to configure CPU topology +- Save and migration cancellation (Wen Congyang) +- Save and migration progress reporting +- Option to enable bios boot menu +- Option to configure direct kernel/initrd boot + +* Wed Aug 25 2010 Cole Robinson - 0.8.5-1.fc15 +- Update to 0.8.5 +- Improved save/restore support +- Option to view and change disk cache mode +- Configurable VNC keygrab sequence (Michal Novotny) + +* Mon Aug 2 2010 David Malcolm - 0.8.4-3.fc15 +- fix python 2.7 incompatibility (bz 620216) + +* Thu May 27 2010 Cole Robinson - 0.8.4-2.fc14 +- Only close connection on specific remote errors +- Fix weird border in manager UI (bz 583728) +- Fix broken icons +- Cancel post-install reboot if VM is forced off +- Fix traceback if customizing a livecd install (bz 583712) +- Add pool refresh button +- Properly autodetect VNC keymap (bz 586201) +- Fix traceback when reconnecting to remote VNC console (bz 588254) +- Fix remote VNC connection with zsh as default shell + +* Wed Mar 24 2010 Cole Robinson - 0.8.4-1.fc14 +- Update to version 0.8.4 +- 'Import' install option, to create a VM around an existing OS image +- Support multiple boot devices and boot order +- Watchdog device support +- Enable setting a human readable VM description. +- Option to manually specifying a bridge name, if bridge isn't detected + +* Mon Mar 22 2010 Cole Robinson - 0.8.3-2.fc14 +- Fix using a manual 'default' pool (bz 557020) +- Don't force grab focus when app is run (bz 548430) +- Check packagekit for KVM and libvirtd (bz 513494) +- Fake a reboot implementation if libvirt doesn't support it (bz 532216) +- Mark some strings as translatable (bz 572645) + +* Mon Feb 8 2010 Cole Robinson - 0.8.3-1.fc13 +- Update to 0.8.3 release +- Manage network interfaces: start, stop, view, provision bridges, bonds, etc. +- Option to 'customize VM before install'. + +* Tue Jan 12 2010 Cole Robinson - 0.8.2-2.fc13 +- Build with actual upstream tarball (not manually built dist) + +* Mon Dec 14 2009 Cole Robinson - 0.8.2-1.fc13 +- Update to 0.8.2 release +- Fix first virt-manager run on a new install +- Enable floppy media eject/connect + +* Wed Dec 09 2009 Cole Robinson - 0.8.1-3.fc13 +- Select manager row on right click, regressed with 0.8.1 + +* Sat Dec 5 2009 Cole Robinson - 0.8.1-2.fc13 +- Set proper version Requires: for python-virtinst + +* Thu Dec 3 2009 Cole Robinson - 0.8.1-1.fc13 +- Update to release 0.8.1 +- VM Migration wizard, exposing various migration options +- Enumerate CDROM and bridge devices on remote connections +- Support storage pool source enumeration for LVM, NFS, and SCSI + +* Mon Oct 05 2009 Cole Robinson - 0.8.0-8.fc13 +- Don't allow creating a volume without a name (bz 526111) +- Don't allow volume allocation > capacity (bz 526077) +- Add tooltips for toolbar buttons (bz 524083) + +* Mon Oct 05 2009 Cole Robinson - 0.8.0-7.fc13 +- More translations (bz 493795) + +* Tue Sep 29 2009 Cole Robinson - 0.8.0-6.fc13 +- Fix VCPU hotplug +- Remove access to outdated docs (bz 522823, bz 524805) +- Update VM state text in manager view (bz 526182) +- Update translations (bz 493795) + +* Thu Sep 24 2009 Cole Robinson - 0.8.0-5.fc12 +- Refresh host disk space in create wizard (bz 502777) +- Offer to fix disk permission issues (bz 517379) + +* Thu Sep 17 2009 Cole Robinson - 0.8.0-4.fc12 +- Don't close libvirt connection for non-fatal errors (bz 522168) +- Manager UI tweaks +- Generate better errors if disk/net stats polling fails + +* Mon Sep 14 2009 Cole Robinson - 0.8.0-3.fc12 +- Fix disk XML mangling via connect/eject cdrom (bz 516116) +- Fix delete button sensitivity (bz 518536) +- Fix populating text box from storage browser in 'New VM' (bz 517263) +- Fix a traceback in an 'Add Hardware' error path (bz 517286) + +* Thu Aug 13 2009 Daniel P. Berrange - 0.8.0-2.fc12 +- Remove obsolete dep on policykit agent + +* Tue Jul 28 2009 Cole Robinson - 0.8.0-1.fc12 +- Update to release 0.8.0 +- New 'Clone VM' Wizard +- Improved UI, including an overhaul of the main 'manager' view +- System tray icon for easy VM access (start, stop, view console/details) +- Wizard for adding serial, parallel, and video devices to existing VMs. + +* Sun Jul 26 2009 Fedora Release Engineering - 0.7.0-6 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Thu May 21 2009 Mark McLoughlin - 0.7.0-5.fc12 +- Fix 'opertaing' typo in 'New VM' dialog (#495128) +- Allow details window to resize again (#491683) +- Handle collecting username for vnc authentication (#499589) +- Actually handle arch config when creating a VM (#499145) +- Log libvirt capabilities at startup to aid debugging (#500337) + +* Tue Apr 14 2009 Cole Robinson - 0.7.0-4.fc11 +- More translation updates + +* Thu Apr 09 2009 Cole Robinson - 0.7.0-3.fc11 +- Fix incorrect max vcpu setting in New VM wizard (bz 490466) +- Fix some OK/Cancel button ordering issues (bz 490207) +- Use openAuth when duplicating a connection when deleting a VM +- Updated translations (bz 493795) + +* Mon Mar 23 2009 Cole Robinson - 0.7.0-2.fc11 +- Back compat fixes for connecting to older xen installations (bz 489885) +- Don't show harmless NoneType error when launching new VM details window + +* Tue Mar 10 2009 Cole Robinson - 0.7.0-1.fc11 +- Update to release 0.7.0 +- Redesigned 'New Virtual Machine' wizard +- Option to remove storage when deleting a virtual machine. +- File browser for libvirt storage pools and volumes +- Physical device assignment (PCI, USB) for existing virtual machines. + +* Wed Mar 4 2009 Cole Robinson - 0.6.1-4.fc11 +- Update polish translation (bz 263301) +- Fix sending ctrl-alt-del to guest +- Fix cpu + mem stats options to remember preference. + +* Wed Feb 25 2009 Fedora Release Engineering - 0.6.1-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Mon Feb 9 2009 Cole Robinson - 0.6.1-2 +- Kill off consolehelper (PolicyKit is sufficient) + +* Mon Jan 26 2009 Cole Robinson - 0.6.1-1 +- Update to 0.6.1 release +- Disk and Network VM stats reporting +- VM Migration support +- Support adding sound devices to existing VMs +- Allow specifying device model when adding a network device to an existing VM + +* Tue Jan 20 2009 Mark McLoughlin - 0.6.0-7 +- Add patch to ignore fix crash on force-poweroff with serial console (#470548) + +* Thu Dec 04 2008 Ignacio Vazquez-Abrams - 0.6.0-6 +- Rebuild for Python 2.6 + +* Mon Dec 1 2008 Cole Robinson - 0.6.0-5.fc10 +- Fix spec for building on F9 +- Update 'New VM' virt descriptions to be less black and white (bz 470563) + +* Sun Nov 30 2008 Ignacio Vazquez-Abrams - 0.6.0-4 +- Rebuild for Python 2.6 + +* Mon Oct 27 2008 Cole Robinson - 0.6.0-3.fc10 +- Add dbus-x11 to Requires (bug 467886) +- Fedora translation updates (bug 467808) +- Don't add multiple sound devices if install fails +- Only popup volume path copy option on right click +- Fix a variable typo + +* Tue Oct 14 2008 Cole Robinson - 0.6.0-2.fc10 +- Add gnome-python2-gnome requirement. +- Allow seeing connection details if disconnected. +- Updated catalan translation. +- Update dutch translation. +- Update german translation. (bug 438136) +- Fix showing domain console when connecting to hypervisor. +- Update POTFILES to reflect reality (bug 466835) + +* Wed Sep 10 2008 Cole Robinson - 0.6.0-1.fc10 +- Update to 0.6.0 release +- Add libvirt storage management support +- Basic support for remote guest installation +- Merge VM console and details windows +- Poll avahi for libvirtd advertisement +- Hypervisor autoconnect option +- Add sound emulation when creating new guests + +* Thu Apr 3 2008 Daniel P. Berrange - 0.5.4-3.fc9 +- Updated sr, de, fi, it, pl translations + +* Thu Mar 13 2008 Daniel P. Berrange - 0.5.4-2.fc9 +- Don't run policykit checks when root (rhbz #436994) + +* Mon Mar 10 2008 Daniel P. Berrange - 0.5.4-1.fc9 +- Update to 0.5.4 release + +* Mon Feb 18 2008 Fedora Release Engineering - 0.5.3-2 +- Autorebuild for GCC 4.3 + +* Thu Jan 10 2008 Daniel P. Berrange - 0.5.3-1.fc9 +- Update to 0.5.3 release + +* Mon Oct 15 2007 Daniel P. Berrange - 0.5.2-2.fc8 +- Change TLS x509 credential name to sync with libvirt + +* Thu Oct 4 2007 Daniel P. Berrange - 0.5.2-1.fc8 +- Update to 0.5.2 release +- No scrollbars for high res guest in low res host (rhbz 273181) +- Unable to remove network device (rhbz 242900) +- Fixed broken menu items (rhbz 307551) +- Require libvirt 0.3.3 to get CDROM change capability for Xen + +* Tue Sep 25 2007 Daniel P. Berrange - 0.5.1-1.fc8 +- Updated to 0.5.1 release +- Open connections in background +- Make VNC connection retries more robust +- Allow changing of CDROM media on the fly +- Add PXE boot installation of HVM guests +- Allow tunnelling VNC over SSH + +* Wed Aug 29 2007 Daniel P. Berrange - 0.5.0-1.fc8 +- Updated to 0.5.0 release +- Support for managing remote hosts +- Switch to use GTK-VNC for the guest console + +* Fri Aug 24 2007 Daniel P. Berrange - 0.4.0-3.fc8 +- Remove ExcludeArch since libvirt is now available + +* Wed May 9 2007 Daniel P. Berrange - 0.4.0-2.fc7 +- Refresh po file translations (bz 238369) +- Fixed removal of disk/network devices +- Fixed toolbar menu option state +- Fixed file dialogs & default widget states + +* Mon Apr 16 2007 Daniel P. Berrange - 0.4.0-1.fc7 +- Support for managing virtual networks +- Ability to attach guest to virtual networks +- Automatically set VNC keymap based on local keymap +- Support for disk & network device addition/removal + +* Wed Mar 28 2007 Daniel P. Berrange - 0.3.2-3.fc7 +- Fix HVM check to allow KVM guests to be created (bz 233644) +- Fix default file size suggestion + +* Tue Mar 27 2007 Daniel P. Berrange - 0.3.2-2.fc7 +- Ensure we own all directories we create (bz 233816) + +* Tue Mar 20 2007 Daniel P. Berrange - 0.3.2-1.fc7 +- Added online help to all windows +- Bug fixes to virtual console popup, key grab & accelerator override + +* Tue Mar 13 2007 Daniel P. Berrange - 0.3.1-4.fc7 +- Fixed thread locking to avoid deadlocks when a11y is enabled + +* Fri Mar 2 2007 Daniel P. Berrange - 0.3.1-3.fc7 +- Fixed keyboard ungrab in VNC widget + +* Tue Feb 20 2007 Daniel P. Berrange - 0.3.1-2.fc7 +- Only check for HVM on Xen hypervisor + +* Tue Feb 20 2007 Daniel P. Berrange - 0.3.1-1.fc7 +- Added support for managing QEMU domains +- Automatically grab mouse pointer to workaround dual-cursor crazyness + +* Wed Jan 31 2007 Daniel P. Berrange - 0.3.0-2.fc7 +- Added dep on desktop-file-utils for post/postun scripts + +* Mon Jan 22 2007 Daniel P. Berrange - 0.3.0-1.fc7 +- Added support for managing inactive domains +- Require virt-inst >= 0.100.0 and libvirt >= 0.1.11 for ianctive + domain management capabilities +- Add progress bars during VM creation stage +- Improved reliability of VNC console +- Updated translations again +- Added destroy option to menu bar to forceably kill a guest +- Visually differentiate allocated memory, from actual used memory on host +- Validate file magic when restoring a guest from a savd file +- Performance work on domain listing +- Allow creation of non-sparse files +- Fix backspace key in serial console + +* Tue Dec 19 2006 Daniel P. Berrange - 0.2.6-3.fc7 +- Imported latest translations from Fedora i18n repository (bz 203783) +- Use 127.0.0.1 address for connecting to VNC console instead of + localhost to avoid some issue with messed up /etc/hosts. +- Add selector for sparse or non-sparse file, defaulting to non-sparse. + Add appropriate warnings and progress-bar text. (bz 218996) +- Disable memory ballooning & CPU hotplug for HVM guests (bz 214432) +- Updated memory-setting UI to include a hard upper limit for physical + host RAM +- Added documentation on the page warning that setting virtual host RAM + too high can exhaust the memory of the machine +- Handle errors when hostname resolution fails to avoid app exiting (bz 216975) + +* Thu Dec 7 2006 Jeremy Katz - 0.2.6-2.fc7 +- rebuild for python 2.5 + +* Thu Nov 9 2006 Daniel P. Berrange - 0.2.6-1.fc7 +- Imported translations from Fedora i18n repository +- Make (most) scrollbar policies automatic +- Set busy cursor while creating new VMs +- Preference for controlling keygrab policy +- Preference for when to automatically open console (bz 211385) +- Re-try VNC connection attempt periodically in case VNC daemon + hasn't finished starting up +- Added activation of URLs for about dialog (bz 210782) +- Improved error reporting when connecting to HV (bz 211229) +- Add command line args to open specific windows +- Don't skip para/full virt wizard step - instead gray out full + virt option & tell user why +- Change 'physical' to 'logical' when refering to host CPUs +- Include hostname in titlebar +- Disable wizard sensitivity while creating VM + +* Thu Oct 19 2006 Daniel P. Berrange - 0.2.5-1.fc7 +- Switch to use python-virtinst instead of python-xeninst due to + renaming of original package +- Disable keyboard accelerators when grabbing mouse to avoid things like + Ctrl-W closing the local window, instead of remote window bz 210364 +- Fix host memory reporting bz 211281 +- Remove duplicate application menu entry bz 211230 +- Fix duplicated mnemonics (bz 208408) +- Use blktap backed disks if available +- Use a drop down list to remember past URLs (bz 209479) +- Remove unused help button from preferences dialog (bz 209251) +- Fix exception when no VNC graphics is defined +- Force immediate refresh of VMs after creating a new one +- Improve error reporting if run on a kernel without Xen (bz 209122) +- More fixes to avoid stuck modifier keys on focus-out (bz 207949) + +* Fri Sep 29 2006 Daniel P. Berrange 0.2.3-2.fc6 +- Fix segv in sparkline code when no data points are defined (bz 208185) +- Clamp CPU utilization between 0 & 100% just in case (bz 208185) + +* Tue Sep 26 2006 Daniel Berrange - 0.2.3-1.fc6 +- Require xeninst >= 0.93.0 to fix block backed devices +- Skip para/fully-virt step when going back in wizard if not HVM host (bz 207409) +- Fix handling of modifier keys in VNC console so Alt key doesn't get stuck (bz 207949) +- Allow sticky modifier keys by pressing same key 3 times in row (enables Ctrl-Alt-F1 + by doing Ctrl Ctrl Ctrl Alt-F1) +- Improved error handling during guest creation +- Log errors with python logging, instead of to stdout +- Remove unused buttons from main domain list window +- Switch out of full screen & release key grab when closing console +- Trim sparkline CPU history graph to 40 samples max +- Constraint VCPU adjuster to only allow upto guest's max VCPU count +- Show guest's max & current VCPU count in details page +- Fix rounding of disk sizes to avoid a 1.9 GB disk being rounded down to 1 GB +- Use raw block device path to CDROM not mount point for HVM guest (bz 206965) +- Fix visibility of file size spin box (bz 206186 part 2) +- Check for GTK failing to open X11 display (bz 205938) + +* Fri Sep 15 2006 Daniel Berrange - 0.2.2-1.fc6 +- Fix event handling in create VM wizard (bz 206660 & 206186) +- Fix close button in about dialog (bz 205943) +- Refresh .pot files +- Turn on VNC scrollbars fulltime to avoid GTK window sizing issue + which consistently resize too small. + +* Mon Sep 11 2006 Daniel Berrange - 0.2.1-3.fc6 +- Added requires on pygtk2-libglade & librsvg2 (bz 205941 & 205942) +- Re-arrange to use console-helper to launch app +- Added 'dist' component to release number + +* Wed Sep 6 2006 Jeremy Katz - 0.2.1-2 +- don't ghost pyo files (#205448) + +* Mon Sep 4 2006 Daniel Berrange - 0.2.1-1 +- Updated to 0.2.1 tar.gz +- Added rules to install/uninstall gconf schemas in preun,post,pre + scriptlets +- Updated URL for source to reflect new upstream download URL + +* Thu Aug 24 2006 Jeremy Katz - 0.2.0-3 +- BR gettext + +* Thu Aug 24 2006 Jeremy Katz - 0.2.0-2 +- only build on arches with virt + +* Tue Aug 22 2006 Daniel Berrange - 0.2.0-1 +- Added wizard for creating virtual machines +- Added embedded serial console +- Added ability to take screenshots + +* Mon Jul 24 2006 Daniel Berrange - 0.1.5-2 +- Prefix *.pyo files with 'ghost' macro +- Use fully qualified URL in Source tag + +* Thu Jul 20 2006 Daniel Berrange - 0.1.5-1 +- Update to new 0.1.5 release snapshot + +* Thu Jul 20 2006 Daniel Berrange - 0.1.4-1 +- Update to new 0.1.4 release snapshot + +* Mon Jul 17 2006 Daniel Berrange - 0.1.3-1 +- Fix License tag +- Updated for new release + +* Wed Jun 28 2006 Daniel Berrange - 0.1.2-3 +- Added missing copyright headers on all .py files + +* Wed Jun 28 2006 Daniel Berrange - 0.1.2-2 +- Added python-devel to BuildRequires + +* Wed Jun 28 2006 Daniel Berrange - 0.1.2-1 +- Change URL to public location + +* Fri Jun 16 2006 Daniel Berrange - 0.1.0-1 +- Added initial support for using VNC console + +* Thu Apr 20 2006 Daniel Berrange - 0.0.2-1 +- Added DBus remote control service + +* Wed Mar 29 2006 Daniel Berrange - 0.0.1-1 +- Initial RPM build