commit 3b8ccbbe540eb9401542d7fa26d7a05fe56517f570b67b19592883901d9918c5 Author: Adrian Schröter Date: Sat May 4 01:45:43 2024 +0200 Sync from SUSE:SLFO:Main virt-manager revision 1e077814a00fc7df88daa558ef5682bd diff --git a/.gitattributes b/.gitattributes new file mode 100644 index 0000000..9b03811 --- /dev/null +++ b/.gitattributes @@ -0,0 +1,23 @@ +## Default LFS +*.7z filter=lfs diff=lfs merge=lfs -text +*.bsp filter=lfs diff=lfs merge=lfs -text +*.bz2 filter=lfs diff=lfs merge=lfs -text +*.gem filter=lfs diff=lfs merge=lfs -text +*.gz filter=lfs diff=lfs merge=lfs -text +*.jar filter=lfs diff=lfs merge=lfs -text +*.lz filter=lfs diff=lfs merge=lfs -text +*.lzma filter=lfs diff=lfs merge=lfs -text +*.obscpio filter=lfs diff=lfs merge=lfs -text +*.oxt filter=lfs diff=lfs merge=lfs -text +*.pdf filter=lfs diff=lfs merge=lfs -text +*.png filter=lfs diff=lfs merge=lfs -text +*.rpm filter=lfs diff=lfs merge=lfs -text +*.tbz filter=lfs diff=lfs merge=lfs -text +*.tbz2 filter=lfs diff=lfs merge=lfs -text +*.tgz filter=lfs diff=lfs merge=lfs -text +*.ttf filter=lfs diff=lfs merge=lfs -text +*.txz filter=lfs diff=lfs merge=lfs -text +*.whl filter=lfs diff=lfs merge=lfs -text +*.xz filter=lfs diff=lfs merge=lfs -text +*.zip filter=lfs diff=lfs merge=lfs -text +*.zst filter=lfs diff=lfs merge=lfs -text diff --git a/001-cli-disk-Add-driver.metadata_cache-options.patch b/001-cli-disk-Add-driver.metadata_cache-options.patch new file mode 100644 index 0000000..41dddf6 --- /dev/null +++ b/001-cli-disk-Add-driver.metadata_cache-options.patch @@ -0,0 +1,95 @@ +Subject: cli: --disk: Add driver.metadata_cache options +From: Lin Ma lma@suse.com Tue Aug 16 12:59:57 2022 +0800 +Date: Wed Aug 17 09:57:29 2022 -0400: +Git: 11a887ece5b5bab287ff77b09337dc44c4e6e976 + +Properly setting the metadata cache size can provide better performance +in case of using big qcow2 images. + +This patch introduces two driver options: +* driver.metadata_cache.max_size +* driver.metadata_cache.max_size.unit + +E.g. --disk ...,driver.type=qcow2,\ + driver.metadata_cache.max_size=2,\ + driver.metadata_cache.max_size.unit=MiB + +BTW, Metadata cache size control is currently supported only for qcow2. +Regarding how to properly caluclate the cache size of qcow2, Please refer +to qemu's documentation. + +Signed-off-by: Lin Ma + +diff --git a/tests/data/cli/compare/virt-install-many-devices.xml b/tests/data/cli/compare/virt-install-many-devices.xml +index a73343a9..a33dc16a 100644 +--- a/tests/data/cli/compare/virt-install-many-devices.xml ++++ b/tests/data/cli/compare/virt-install-many-devices.xml +@@ -423,6 +423,15 @@ + + + ++ ++ ++ ++ 2048 ++ ++ ++ ++ ++ + +
+ +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 774db098..259ac78c 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -605,6 +605,7 @@ source.reservations.managed=no,source.reservations.source.type=unix,source.reser + --disk path=/fooroot.img,size=.0001,transient=on + --disk source.dir=/ + --disk type=nvme,source.type=pci,source.managed=no,source.namespace=2,source.address.domain=0x0001,source.address.bus=0x02,source.address.slot=0x00,source.address.function=0x0 ++--disk /tmp/disk1.qcow2,size=16,driver.type=qcow2,driver.metadata_cache.max_size=2048,driver.metadata_cache.max_size.unit=KiB + + + --network user,mac=12:34:56:78:11:22,portgroup=foo,link_state=down,rom_bar=on,rom_file=/tmp/foo +diff --git a/virtinst/cli.py b/virtinst/cli.py +index c4dffd34..042b500f 100644 +--- a/virtinst/cli.py ++++ b/virtinst/cli.py +@@ -3497,6 +3497,8 @@ class ParserDisk(VirtCLIParser): + "driver.io": "io", + "driver.name": "driver_name", + "driver.type": "driver_type", ++ "driver.metadata_cache.max_size": "metadata_cache.max_size", ++ "driver.metadata_cache.max_size.unit": "metadata_cache.max_size.unit", + } + + def _add_advertised_aliases(self): +@@ -3696,6 +3698,11 @@ class ParserDisk(VirtCLIParser): + cls.add_arg("driver.queues", "driver_queues") + cls.add_arg("driver.error_policy", "error_policy") + ++ cls.add_arg("driver.metadata_cache.max_size", ++ "driver_metadata_cache_max_size") ++ cls.add_arg("driver.metadata_cache.max_size.unit", ++ "driver_metadata_cache_max_size_unit") ++ + cls.add_arg("iotune.read_bytes_sec", "iotune_rbs") + cls.add_arg("iotune.write_bytes_sec", "iotune_wbs") + cls.add_arg("iotune.total_bytes_sec", "iotune_tbs") +diff --git a/virtinst/devices/disk.py b/virtinst/devices/disk.py +index dc59fd13..9609ebac 100644 +--- a/virtinst/devices/disk.py ++++ b/virtinst/devices/disk.py +@@ -481,6 +481,11 @@ class DeviceDisk(Device): + driver_iothread = XMLProperty("./driver/@iothread", is_int=True) + driver_queues = XMLProperty("./driver/@queues", is_int=True) + ++ driver_metadata_cache_max_size = XMLProperty( ++ "./driver/metadata_cache/max_size", is_int=True) ++ driver_metadata_cache_max_size_unit = XMLProperty( ++ "./driver/metadata_cache/max_size/@unit") ++ + error_policy = XMLProperty("./driver/@error_policy") + serial = XMLProperty("./serial") + wwn = XMLProperty("./wwn") diff --git a/002-tests-cli-Fix-test-output-after-previous-commit.patch b/002-tests-cli-Fix-test-output-after-previous-commit.patch new file mode 100644 index 0000000..6cc079f --- /dev/null +++ b/002-tests-cli-Fix-test-output-after-previous-commit.patch @@ -0,0 +1,20 @@ +Subject: tests: cli: Fix test output after previous commit +From: Cole Robinson crobinso@redhat.com Wed Aug 17 10:21:31 2022 -0400 +Date: Wed Aug 17 10:21:31 2022 -0400: +Git: 7295ebfb02e1a6ebcc1fc94c4aecfe8e21a0e567 + +Signed-off-by: Cole Robinson + +diff --git a/tests/data/cli/compare/virt-install-many-devices.xml b/tests/data/cli/compare/virt-install-many-devices.xml +index a33dc16a..c27512d1 100644 +--- a/tests/data/cli/compare/virt-install-many-devices.xml ++++ b/tests/data/cli/compare/virt-install-many-devices.xml +@@ -424,7 +424,7 @@ + + + +- ++ + + 2048 + diff --git a/003-fsdetails-Fix-an-error-with-source.socket-of-virtiofs.patch b/003-fsdetails-Fix-an-error-with-source.socket-of-virtiofs.patch new file mode 100644 index 0000000..852f9b7 --- /dev/null +++ b/003-fsdetails-Fix-an-error-with-source.socket-of-virtiofs.patch @@ -0,0 +1,41 @@ +Subject: fsdetails: Fix an error with source.socket of virtiofs +From: Lin Ma lma@suse.com Tue Aug 16 12:59:36 2022 +0800 +Date: Wed Aug 17 10:24:10 2022 -0400: +Git: 58f5e36da76277bfc7fb4d87293be60ef6e0cbc1 + +Using the source.socket of virtiofs needs a virtiofsd daemon launched +outside of libvirtd, So the filesystem UI doesn't support it yet. If +users need it they can set it manually in the XML editor. +But if we view the filesystem info of such a VM on the details page, +It fails with this error message: + +Traceback (most recent call last): + File "/usr/share/virt-manager/virtManager/details/details.py", line 1713, in _refresh_page + self._refresh_filesystem_page(dev) + File "/usr/share/virt-manager/virtManager/details/details.py", line 2241, in _refresh_filesystem_page + self.fsDetails.set_dev(dev) + File "/usr/share/virt-manager/virtManager/device/fsdetails.py", line 193, in set_dev + self.widget("fs-source").set_text(dev.source) +TypeError: Argument 1 does not allow None as a value + +This patch fixes above issue by leaving the 'source path' info blank in +case of source.socket. +In this case, Considering that showing 'target path' info without source +info is kind of meaningless, So this patch leaves the 'target path' info +blank as well. + +Signed-off-by: Lin Ma + +diff --git a/virtManager/device/fsdetails.py b/virtManager/device/fsdetails.py +index 40868d1c..b9956e1d 100644 +--- a/virtManager/device/fsdetails.py ++++ b/virtManager/device/fsdetails.py +@@ -190,7 +190,7 @@ class vmmFSDetails(vmmGObjectUI): + self.widget("fs-format-combo"), dev.driver_format) + + if dev.type != DeviceFilesystem.TYPE_RAM: +- self.widget("fs-source").set_text(dev.source) ++ self.widget("fs-source").set_text(dev.source or "") + else: + self.widget("fs-ram-source-spin").set_value(int(dev.source) // 1024) + self.widget("fs-target").set_text(dev.target or "") diff --git a/004-cli-Drop-unnecessary-disk-prop-aliases.patch b/004-cli-Drop-unnecessary-disk-prop-aliases.patch new file mode 100644 index 0000000..d966ff7 --- /dev/null +++ b/004-cli-Drop-unnecessary-disk-prop-aliases.patch @@ -0,0 +1,20 @@ +Subject: cli: Drop unnecessary --disk prop aliases +From: Cole Robinson crobinso@redhat.com Wed Aug 17 10:27:36 2022 -0400 +Date: Wed Aug 17 10:27:36 2022 -0400: +Git: 4b150735720d8a54c153e10a1bc760d252594004 + +Signed-off-by: Cole Robinson + +diff --git a/virtinst/cli.py b/virtinst/cli.py +index 042b500f..388c5263 100644 +--- a/virtinst/cli.py ++++ b/virtinst/cli.py +@@ -3497,8 +3497,6 @@ class ParserDisk(VirtCLIParser): + "driver.io": "io", + "driver.name": "driver_name", + "driver.type": "driver_type", +- "driver.metadata_cache.max_size": "metadata_cache.max_size", +- "driver.metadata_cache.max_size.unit": "metadata_cache.max_size.unit", + } + + def _add_advertised_aliases(self): diff --git a/005-tests-testdriver-Add-filesystem-socket-example.patch b/005-tests-testdriver-Add-filesystem-socket-example.patch new file mode 100644 index 0000000..d0598c7 --- /dev/null +++ b/005-tests-testdriver-Add-filesystem-socket-example.patch @@ -0,0 +1,25 @@ +Subject: tests: testdriver: Add filesystem socket example +From: Cole Robinson crobinso@redhat.com Wed Aug 17 10:29:31 2022 -0400 +Date: Wed Aug 17 10:29:31 2022 -0400: +Git: 1b87e3e54c782da39cf30b100a22f70c37bfcddd + +Signed-off-by: Cole Robinson + +diff --git a/tests/data/testdriver/testdriver.xml b/tests/data/testdriver/testdriver.xml +index b213863d..7c94e698 100644 +--- a/tests/data/testdriver/testdriver.xml ++++ b/tests/data/testdriver/testdriver.xml +@@ -599,6 +599,13 @@ Foo bar baz & yeah boii < > yeahfoo + + + ++ ++ ++ ++ ++
++ ++ + + + diff --git a/006-virtinstall-split-no_install-conditional-apart-to-track-code-coverage.patch b/006-virtinstall-split-no_install-conditional-apart-to-track-code-coverage.patch new file mode 100644 index 0000000..e22a83b --- /dev/null +++ b/006-virtinstall-split-no_install-conditional-apart-to-track-code-coverage.patch @@ -0,0 +1,45 @@ +Subject: virtinstall: split no_install conditional apart to track code coverage +From: Cole Robinson crobinso@redhat.com Sat Aug 20 09:42:47 2022 -0400 +Date: Sat Aug 20 09:47:49 2022 -0400: +Git: 1cb0be4002445e5755ead2423b5a4e9e06f0a3cb + +Each bit here is part of the CLI API, we need to be sure we are +covering each one. Extend the test suite to hit one case we are missing + +Signed-off-by: Cole Robinson + +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -1017,7 +1017,9 @@ c = vinst.add_category("misc-install", " + c.add_compare("--connect %s --os-variant generic" % (utils.URIs.test_suite), "noargs-fail", use_default_args=False) # No arguments + c.add_compare("--connect %s --os-variant fedora26" % (utils.URIs.test_suite), "osvariant-noargs-fail", use_default_args=False) # No arguments + c.add_compare("--connect %s --os-variant fedora26 --pxe --print-xml" % (utils.URIs.test_suite), "osvariant-defaults-pxe", use_default_args=False) # No arguments ++c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init root-password-generate=yes,disable=no --sysinfo system.serial=foobar", "cloud-init-options1", env={"VIRTINST_TEST_SUITE_PRINT_CLOUDINIT": "1"}) # --cloud-init root-password-generate, with --sysinfo override + c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init", "cloud-init-default", env={"VIRTINST_TEST_SUITE_CLOUDINIT": "1"}) # default --cloud-init behavior is root-password-generate=yes,disable=yes ++c.add_valid("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init", env={"VIRTINST_TEST_SUITE_CLOUDINIT": "1"}) # default --cloud-init, but without implied --print-xml, to hit some specific code paths + c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init root-password-generate=yes,disable=no --sysinfo system.serial=foobar", "cloud-init-options1", env={"VIRTINST_TEST_SUITE_PRINT_CLOUDINIT": "1"}) # --cloud-init root-password-generate, with --sysinfo override + c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init root-password-file=%(ADMIN-PASSWORD-FILE)s,root-ssh-key=%(XMLDIR)s/cloudinit/ssh-key.txt,clouduser-ssh-key=%(XMLDIR)s/cloudinit/ssh-key2.txt --boot smbios.mode=none", "cloud-init-options2", env={"VIRTINST_TEST_SUITE_PRINT_CLOUDINIT": "1"}) # --cloud-init root-password-file with smbios.mode override + c.add_compare("--disk %(EXISTIMG1)s --os-variant fedora28 --cloud-init ssh-key=%(XMLDIR)s/cloudinit/ssh-key.txt", "cloud-init-options3", env={"VIRTINST_TEST_SUITE_PRINT_CLOUDINIT": "1"}) # --cloud-init ssh-key +--- a/virtinst/virtinstall.py ++++ b/virtinst/virtinstall.py +@@ -429,11 +429,15 @@ def build_installer(options, guest, inst + install_bootdev = "network" + elif installdata.is_set: + pass +- elif (options.import_install or +- options.xmlonly or +- options.boot or +- options.cloud_init or +- options.unattended): ++ elif options.xmlonly: ++ no_install = True ++ elif options.import_install: ++ no_install = True ++ elif options.boot: ++ no_install = True ++ elif options.cloud_init: ++ no_install = True ++ elif options.unattended: + no_install = True + + installer = virtinst.Installer(guest.conn, diff --git a/007-virtinstall-fix-regression-with-boot-and-no-install-method.patch b/007-virtinstall-fix-regression-with-boot-and-no-install-method.patch new file mode 100644 index 0000000..d7d07e9 --- /dev/null +++ b/007-virtinstall-fix-regression-with-boot-and-no-install-method.patch @@ -0,0 +1,42 @@ +Subject: virtinstall: fix regression with --boot and no install method +From: Cole Robinson crobinso@redhat.com Sat Aug 20 09:54:01 2022 -0400 +Date: Sat Aug 20 09:54:01 2022 -0400: +Git: e94786c066696781a821f5a4bcef3c377e4bc5e5 + +Anything passed to --boot should imply --install no_install=yes +in the absence of other --install options. This is historically +what we've done but we regressed in 4.1.0 + +Resolves: https://github.com/virt-manager/virt-manager/issues/426 + +Signed-off-by: Cole Robinson + +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -967,6 +967,7 @@ c.add_valid("--os-variant generic --pxe + c.add_valid("--os-variant winxp --ram 32 --cdrom %(EXISTIMG1)s", grep="32 MiB is less than the recommended 64 MiB") # Windows. Catch memory warning + c.add_valid("--osinfo generic --pxe --autostart") # --autostart flag + c.add_valid("--cdrom %(EXISTIMG2)s --os-variant win2k3 --print-step 2") # HVM windows install, print 3rd stage XML ++c.add_valid("--memory 512 --osinfo generic --boot cdrom") # --boot XXX should imply --install no_install + c.add_compare("--location location=%(TREEDIR)s --initrd-inject virt-install --extra-args ks=file:/virt-install", "initrd-inject") # initrd-inject + c.add_compare("--cdrom http://example.com/path/to/some.iso --os-variant detect=yes,require=no", "cdrom-url") + c.add_compare("--pxe --print-step all --os-variant none", "simple-pxe") # Diskless PXE install +--- a/virtinst/virtinstall.py ++++ b/virtinst/virtinstall.py +@@ -433,7 +433,7 @@ def build_installer(options, guest, inst + no_install = True + elif options.import_install: + no_install = True +- elif options.boot: ++ elif options.boot_was_set: + no_install = True + elif options.cloud_init: + no_install = True +@@ -645,6 +645,7 @@ def _build_options_guest(conn, options): + def build_guest_instance(conn, options): + installdata = cli.parse_install(options.install) + osdata = cli.parse_os_variant(options.os_variant or installdata.os) ++ options.boot_was_set = bool(options.boot) + + if options.reinstall: + dummy1, guest, dummy2 = cli.get_domain_and_guest(conn, options.reinstall) diff --git a/008-tests-Add-a-compat-check-for-linux2020-in-amd-sev-test-case.patch b/008-tests-Add-a-compat-check-for-linux2020-in-amd-sev-test-case.patch new file mode 100644 index 0000000..a6749bc --- /dev/null +++ b/008-tests-Add-a-compat-check-for-linux2020-in-amd-sev-test-case.patch @@ -0,0 +1,22 @@ +Subject: tests: Add a compat check for linux2020 in amd-sev test case +From: Lin Ma lma@suse.com Fri Aug 19 18:18:09 2022 +0800 +Date: Sat Aug 20 09:59:27 2022 -0400: +Git: c22a876e9a63cb7114e2b008f2e24682c8bbef3e + +It avoids amd-sev test failure if using older osinfo-db. + +Signed-off-by: Lin Ma + +diff --git a/tests/test_cli.py b/tests/test_cli.py +index cc1d3da2..9f6c3bc0 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -1108,7 +1108,7 @@ c.add_compare("--connect " + utils.URIs.kvm_x86_remote + " --import --disk %(EXI + c.add_compare("--connect %(URI-KVM-X86)s --os-variant fedora26 --graphics spice --controller usb,model=none", "graphics-usb-disable") + c.add_compare("--osinfo generic --boot uefi --disk size=1", "boot-uefi") + c.add_compare("--osinfo generic --boot uefi --disk size=1 --tpm none --connect " + utils.URIs.kvm_x86_oldfirmware, "boot-uefi-oldcaps") +-c.add_compare("--osinfo linux2020 --boot uefi --launchSecurity sev --connect " + utils.URIs.kvm_amd_sev, "amd-sev") ++c.add_compare("--osinfo linux2020 --boot uefi --launchSecurity sev --connect " + utils.URIs.kvm_amd_sev, "amd-sev", prerun_check=no_osinfo_linux2020_virtio) + + c.add_invalid("--disk none --location nfs:example.com/fake --nonetworks", grep="NFS URL installs are no longer supported") + c.add_invalid("--disk none --boot network --machine foobar", grep="domain type None with machine 'foobar'") diff --git a/009-cli-cpu-Add-maxphysaddr.mode-bits-options.patch b/009-cli-cpu-Add-maxphysaddr.mode-bits-options.patch new file mode 100644 index 0000000..10e9555 --- /dev/null +++ b/009-cli-cpu-Add-maxphysaddr.mode-bits-options.patch @@ -0,0 +1,117 @@ +Subject: cli: --cpu: Add maxphysaddr.{mode,bits} options +From: Lin Ma lma@suse.com Fri Aug 19 18:18:50 2022 +0800 +Date: Sat Aug 20 10:03:11 2022 -0400: +Git: fbdf05162606e4d70506b65d0dd647a59f229253 + +This commit added support for cpu physical address bits control, It's +useful for VMs with huge amount of ram. + +E.g. +--cpu Cascadelake-Server,maxphysaddr.mode=emulate,maxphysaddr.bits=46 + +Signed-off-by: Lin Ma + +diff --git a/tests/data/cli/compare/virt-install-many-devices.xml b/tests/data/cli/compare/virt-install-many-devices.xml +index c27512d1..e4a7da8f 100644 +--- a/tests/data/cli/compare/virt-install-many-devices.xml ++++ b/tests/data/cli/compare/virt-install-many-devices.xml +@@ -194,6 +194,7 @@ + + + ++ + + + +diff --git a/tests/data/cli/compare/virt-install-testdriver-edgecases.xml b/tests/data/cli/compare/virt-install-testdriver-edgecases.xml +index f129d089..3cc385c0 100644 +--- a/tests/data/cli/compare/virt-install-testdriver-edgecases.xml ++++ b/tests/data/cli/compare/virt-install-testdriver-edgecases.xml +@@ -17,7 +17,9 @@ + + + +- ++ ++ ++ + + + +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 9f6c3bc0..ef27276a 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -511,7 +511,8 @@ numa.interconnects.latency0.initiator=0,numa.interconnects.latency0.target=0,num + numa.interconnects.latency1.initiator=0,numa.interconnects.latency1.target=2,numa.interconnects.latency1.cache=1,numa.interconnects.latency1.type=access,numa.interconnects.latency1.value=10,numa.interconnects.latency1.unit=ns,\ + numa.interconnects.bandwidth0.initiator=0,numa.interconnects.bandwidth0.target=0,numa.interconnects.bandwidth0.type=access,numa.interconnects.bandwidth0.value=204800,\ + numa.interconnects.bandwidth1.initiator=0,numa.interconnects.bandwidth1.target=2,numa.interconnects.bandwidth1.cache=1,numa.interconnects.bandwidth1.type=access,numa.interconnects.bandwidth1.value=409600,numa.interconnects.bandwidth1.unit=KiB,\ +-cache.mode=emulate,cache.level=3 ++cache.mode=emulate,cache.level=3,\ ++maxphysaddr.mode=emulate,maxphysaddr.bits=46 + + + --numatune 1,2,3,5-7,^6,mode=strict,\ +@@ -880,7 +881,7 @@ c.add_compare("--pxe " + + # Hitting test driver specific output + c.add_compare("--connect " + utils.URIs.test_suite + " " +-"--cpu host-passthrough,migratable=on " # migratable=on is only accepted with host-passthrough ++"--cpu host-passthrough,migratable=on,maxphysaddr.mode=passthrough " # migratable=on is only accepted with host-passthrough + "--seclabel label=foobar.label,a1,z2,b3,relabel=yes,type=dynamic " # fills in default model=testModel + "--tpm default " # --tpm default when domcaps missing + "", +diff --git a/virtinst/cli.py b/virtinst/cli.py +index 388c5263..5ac8266b 100644 +--- a/virtinst/cli.py ++++ b/virtinst/cli.py +@@ -2386,6 +2386,9 @@ class ParserCPU(VirtCLIParser): + cls.add_arg("cache.level", "cache.level") + cls.add_arg("cache.mode", "cache.mode") + ++ cls.add_arg("maxphysaddr.mode", "maxphysaddr.mode") ++ cls.add_arg("maxphysaddr.bits", "maxphysaddr.bits") ++ + # CPU features + # These are handled specially in _parse + cls.add_arg("force", None, lookup_cb=None, cb=cls.set_feature_cb) +diff --git a/virtinst/domain/cpu.py b/virtinst/domain/cpu.py +index 5de42b4e..c635932e 100644 +--- a/virtinst/domain/cpu.py ++++ b/virtinst/domain/cpu.py +@@ -102,6 +102,17 @@ class _CPUFeature(XMLBuilder): + policy = XMLProperty("./@policy") + + ++class _CPUMaxphysaddr(XMLBuilder): ++ """ ++ Class for generating XML for child node . ++ """ ++ XML_NAME = "maxphysaddr" ++ _XML_PROP_ORDER = ["mode", "bits"] ++ ++ mode = XMLProperty("./@mode") ++ bits = XMLProperty("./@bits", is_int=True) ++ ++ + ############## + # NUMA cells # + ############## +@@ -211,7 +222,7 @@ class DomainCpu(XMLBuilder): + _XML_PROP_ORDER = ["mode", "match", "check", "migratable", + "model", "model_fallback", "model_vendor_id", "vendor", + "topology", "cache", "features", +- "cells", "latencies", "bandwidths"] ++ "cells", "latencies", "bandwidths", "maxphysaddr"] + + + ################## +@@ -242,6 +253,8 @@ class DomainCpu(XMLBuilder): + latencies = XMLChildProperty(_NUMALatency, relative_xpath="./numa/interconnects") + bandwidths = XMLChildProperty(_NUMABandwidth, relative_xpath="./numa/interconnects") + ++ maxphysaddr = XMLChildProperty(_CPUMaxphysaddr, is_single=True) ++ + + ############################# + # Special CPU mode handling # diff --git a/010-virt-install-help-required-options-are-wrong.patch b/010-virt-install-help-required-options-are-wrong.patch new file mode 100644 index 0000000..96767a9 --- /dev/null +++ b/010-virt-install-help-required-options-are-wrong.patch @@ -0,0 +1,24 @@ +Subject: virt-install: --help required options are wrong +From: Cole Robinson crobinso@redhat.com Sun Aug 21 16:08:37 2022 -0400 +Date: Sun Aug 21 16:10:55 2022 -0400: +Git: a254ece0f0497d062a0e4c94dc45619649ea4922 + +Nowadays it could be as simple as `virt-install --install fedora36`. + +Trying to represent the interdepencies here is not worth it, but +let's keep a simple string around to avoid the default parser +usage string, which is huge + +Signed-off-by: Cole Robinson + +--- a/virtinst/virtinstall.py ++++ b/virtinst/virtinstall.py +@@ -1019,7 +1019,7 @@ def xml_to_print(guest, installer, xmlon + + def parse_args(): + parser = cli.setupParser( +- "%(prog)s --name NAME --memory MB STORAGE INSTALL [options]", ++ "%(prog)s OPTIONS", + _("Create a new virtual machine from specified install media."), + introspection_epilog=True) + cli.add_connect_option(parser) diff --git a/011-cloner-Sync-uuid-and-sysinfo-system-uuid.patch b/011-cloner-Sync-uuid-and-sysinfo-system-uuid.patch new file mode 100644 index 0000000..7ee01f8 --- /dev/null +++ b/011-cloner-Sync-uuid-and-sysinfo-system-uuid.patch @@ -0,0 +1,85 @@ +Subject: cloner: Sync and system uuid +From: Cole Robinson crobinso@redhat.com Sun Aug 21 16:21:10 2022 -0400 +Date: Sun Aug 21 16:21:10 2022 -0400: +Git: b0d0516736320315a70f74aff3759fb35dd35d9d + +Otherwise libvirt errors like: + +ERROR UUID mismatch between and + +https://bugzilla.redhat.com/show_bug.cgi?id=2038040 + +Signed-off-by: Cole Robinson + +diff --git a/tests/data/cli/compare/virt-clone-auto-unmanaged.xml b/tests/data/cli/compare/virt-clone-auto-unmanaged.xml +index 21a9a639..f2043be2 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 @@ + + origtest-clone + 00000000-1111-2222-3333-444444444444 ++ ++ ++ 00000000-1111-2222-3333-444444444444 ++ ++ + 8388608 + 2097152 + 2 +diff --git a/tests/data/cli/compare/virt-clone-unmanaged-preserve.xml b/tests/data/cli/compare/virt-clone-unmanaged-preserve.xml +index 3bdbbbe3..c003ed3e 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 @@ + + clonetest + 00000000-1111-2222-3333-444444444444 ++ ++ ++ 00000000-1111-2222-3333-444444444444 ++ ++ + 8388608 + 2097152 + 2 +diff --git a/tests/data/cli/virtclone/clone-disk.xml b/tests/data/cli/virtclone/clone-disk.xml +index da1eb0a6..2f6e916d 100644 +--- a/tests/data/cli/virtclone/clone-disk.xml ++++ b/tests/data/cli/virtclone/clone-disk.xml +@@ -1,6 +1,11 @@ + + origtest + db69fa1f-eef0-e567-3c20-3ef16f10376b ++ ++ ++ db69fa1f-eef0-e567-3c20-3ef16f10376b ++ ++ + 8388608 + 2097152 + 2 +diff --git a/virtinst/cloner.py b/virtinst/cloner.py +index 34a702f9..9334513c 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): + """ diff --git a/012-virt-install-unattended-and-cloud-init-conflict.patch b/012-virt-install-unattended-and-cloud-init-conflict.patch new file mode 100644 index 0000000..40efcf8 --- /dev/null +++ b/012-virt-install-unattended-and-cloud-init-conflict.patch @@ -0,0 +1,34 @@ +Subject: virt-install: --unattended and --cloud-init conflict +From: Cole Robinson crobinso@redhat.com Sun Aug 21 16:47:26 2022 -0400 +Date: Sun Aug 21 16:47:26 2022 -0400: +Git: 999ccb85e3e4189386786256cdf70cf5238cf785 + +Make it an explicit error, otherwise unattended is preferred and +cloud-init is ignored + +https://bugzilla.redhat.com/show_bug.cgi?id=2117157 + +Signed-off-by: Cole Robinson + +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -1116,6 +1116,7 @@ c.add_invalid("--disk none --boot networ + c.add_invalid("--nodisks --boot network --arch mips --virt-type kvm", grep="any virtualization options for architecture 'mips'") + c.add_invalid("--nodisks --boot network --paravirt --arch mips", grep=" 'xen' for architecture 'mips'") + c.add_invalid("--osinfo generic --launchSecurity sev --connect " + utils.URIs.kvm_amd_sev, grep="SEV launch security requires a Q35 UEFI machine") ++c.add_invalid("--disk none --cloud-init --unattended --install fedora30", grep="--unattended and --cloud-init can not") + + + +--- a/virtinst/virtinstall.py ++++ b/virtinst/virtinstall.py +@@ -411,6 +411,9 @@ def build_installer(options, guest, inst + else: + extra_args = [installdata.kernel_args] + ++ if options.unattended and options.cloud_init: ++ fail("--unattended and --cloud-init can not be specified together.") ++ + if options.unattended: + unattended_data = cli.parse_unattended(options.unattended) + diff --git a/013-virt-install-Reuse-cli.fail_conflicting.patch b/013-virt-install-Reuse-cli.fail_conflicting.patch new file mode 100644 index 0000000..9905161 --- /dev/null +++ b/013-virt-install-Reuse-cli.fail_conflicting.patch @@ -0,0 +1,31 @@ +Subject: virt-install: Reuse cli.fail_conflicting +From: Cole Robinson crobinso@redhat.com Mon Aug 22 10:15:46 2022 -0400 +Date: Mon Aug 22 10:16:19 2022 -0400: +Git: 1d64a678d31829051444e1bf29d86f800e13de39 + +For the --unattended + --cloud-init conflict + +Signed-off-by: Cole Robinson + +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -1116,7 +1116,7 @@ c.add_invalid("--disk none --boot networ + c.add_invalid("--nodisks --boot network --arch mips --virt-type kvm", grep="any virtualization options for architecture 'mips'") + c.add_invalid("--nodisks --boot network --paravirt --arch mips", grep=" 'xen' for architecture 'mips'") + c.add_invalid("--osinfo generic --launchSecurity sev --connect " + utils.URIs.kvm_amd_sev, grep="SEV launch security requires a Q35 UEFI machine") +-c.add_invalid("--disk none --cloud-init --unattended --install fedora30", grep="--unattended and --cloud-init can not") ++c.add_invalid("--disk none --cloud-init --unattended --install fedora30", grep="Cannot use --unattended and --cloud-init at the same time") + + + +--- a/virtinst/virtinstall.py ++++ b/virtinst/virtinstall.py +@@ -412,7 +412,7 @@ def build_installer(options, guest, inst + extra_args = [installdata.kernel_args] + + if options.unattended and options.cloud_init: +- fail("--unattended and --cloud-init can not be specified together.") ++ cli.fail_conflicting("--unattended", "--cloud-init") + + if options.unattended: + unattended_data = cli.parse_unattended(options.unattended) diff --git a/014-cli-support-boot-loader.stateless-.patch b/014-cli-support-boot-loader.stateless-.patch new file mode 100644 index 0000000..54dbc0a --- /dev/null +++ b/014-cli-support-boot-loader.stateless-.patch @@ -0,0 +1,74 @@ +Subject: cli: support --boot loader.stateless= +From: Cole Robinson crobinso@redhat.com Mon Oct 17 11:54:37 2022 -0400 +Date: Mon Oct 17 11:54:37 2022 -0400: +Git: 15ddeae6cb405bad10bc62164b14117646e9127e + +Signed-off-by: Cole Robinson + +diff --git a/tests/data/cli/compare/virt-install-singleton-config-2.xml b/tests/data/cli/compare/virt-install-singleton-config-2.xml +index d567d188..27c69c11 100644 +--- a/tests/data/cli/compare/virt-install-singleton-config-2.xml ++++ b/tests/data/cli/compare/virt-install-singleton-config-2.xml +@@ -11,7 +11,7 @@ + 2 + + hvm +- /tmp/foo ++ /tmp/foo + + + +@@ -112,7 +112,7 @@ + 2 + + hvm +- /tmp/foo ++ /tmp/foo + + + +diff --git a/tests/test_cli.py b/tests/test_cli.py +index 9d4e5ae3..3d299c12 100644 +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -832,7 +832,7 @@ c.add_compare("--pxe " + "--cpuset 1,3-5 " # setting compat --cpuset when --vcpus is not present + # --boot loader settings here, or they will conflict with firmware=efi + # in other test cases +-"--boot loader_ro=yes,loader.type=rom,loader=/tmp/foo,loader_secure=no " ++"--boot loader_ro=yes,loader.type=rom,loader=/tmp/foo,loader_secure=no,loader.stateless=yes" + + # 'default' handling for solo devices + """ +diff --git a/virtinst/cli.py b/virtinst/cli.py +index 5ac8266b..8dbffeb6 100644 +--- a/virtinst/cli.py ++++ b/virtinst/cli.py +@@ -2861,6 +2861,7 @@ class ParserBoot(VirtCLIParser): + cls.add_arg("loader.readonly", "loader_ro", is_onoff=True) + cls.add_arg("loader.type", "loader_type") + cls.add_arg("loader.secure", "loader_secure", is_onoff=True) ++ cls.add_arg("loader.stateless", "loader_stateless", is_onoff=True) + + # Guest-Based bootloader options + cls.add_arg("firmware", "firmware") +diff --git a/virtinst/domain/os.py b/virtinst/domain/os.py +index e2cea755..4310e623 100644 +--- a/virtinst/domain/os.py ++++ b/virtinst/domain/os.py +@@ -86,6 +86,7 @@ class DomainOs(XMLBuilder): + _XML_PROP_ORDER = [ + "firmware", "os_type", "arch", "machine", "firmware_features", + "loader", "loader_ro", "loader_secure", "loader_type", ++ "loader_stateless", + "nvram", "nvram_template", + "init", "initargs", "initenvs", "initdir", "inituser", "initgroup", + "kernel", "initrd", "kernel_args", "dtb", "acpi_tb", "acpi_tb_type", +@@ -100,6 +101,7 @@ class DomainOs(XMLBuilder): + loader_ro = XMLProperty("./loader/@readonly", is_yesno=True) + loader_type = XMLProperty("./loader/@type") + loader_secure = XMLProperty("./loader/@secure", is_yesno=True) ++ loader_stateless = XMLProperty("./loader/@stateless", is_yesno=True) + + # BIOS bootloader options + def _get_bootorder(self): diff --git a/015-diskbackend-Drop-support-for-sheepdog.patch b/015-diskbackend-Drop-support-for-sheepdog.patch new file mode 100644 index 0000000..c7b7b01 --- /dev/null +++ b/015-diskbackend-Drop-support-for-sheepdog.patch @@ -0,0 +1,161 @@ +Subject: diskbackend: Drop support for sheepdog +From: Lin Ma lma@suse.com Wed Nov 2 20:45:43 2022 +0800 +Date: Mon Nov 7 10:10:00 2022 -0500: +Git: 4a2df064839f71ed94320771507b1271d041e397 + +The sheepdog project is no longer actively developed, Libvirt removed +the support for sheepdog storage backend since v8.8.0, Let's drop it. + +Signed-off-by: Lin Ma + +diff --git a/tests/data/cli/compare/virt-xml-build-disk-domain.xml b/tests/data/cli/compare/virt-xml-build-disk-domain.xml +index 1a08b20e..6d9f7160 100644 +--- a/tests/data/cli/compare/virt-xml-build-disk-domain.xml ++++ b/tests/data/cli/compare/virt-xml-build-disk-domain.xml +@@ -1,5 +1,5 @@ + + + +- ++ + +diff --git a/tests/data/cli/compare/virt-xml-build-pool-logical-disk.xml b/tests/data/cli/compare/virt-xml-build-pool-logical-disk.xml +index 055a8f04..49c9bd4a 100644 +--- a/tests/data/cli/compare/virt-xml-build-pool-logical-disk.xml ++++ b/tests/data/cli/compare/virt-xml-build-pool-logical-disk.xml +@@ -1,5 +1,5 @@ + + + +- ++ + +diff --git a/tests/data/testdriver/testdriver.xml b/tests/data/testdriver/testdriver.xml +index 7c94e698..04476b22 100644 +--- a/tests/data/testdriver/testdriver.xml ++++ b/tests/data/testdriver/testdriver.xml +@@ -294,26 +294,19 @@ Foo bar baz & yeah boii < > yeahfoo + + + +- +- +- +- +- +- +- + + + + + +- ++ + + + + + + +- ++ + + + +@@ -2171,35 +2164,6 @@ ba + + + +- +- pool-sheepdog +- 581381f8-a13f-4f7c-89b5-9c9b71c64834 +- 107374182400 +- 53687091200 +- 53687091200 +- +- +- mysheeppool +- +- +- +- vol_sheepdog +- sheep/vol_sheepdog +- 1024 +- 0 +- +- sheepdog:vol_sheepdog +- +- +- 0600 +- -1 +- -1 +- +- +- +- +- +- + + pool-gluster + 7b83ef6d-28da-44f1-841f-2011320f13b0 +diff --git a/virtManager/object/storagepool.py b/virtManager/object/storagepool.py +index 563526bb..1b4da515 100644 +--- a/virtManager/object/storagepool.py ++++ b/virtManager/object/storagepool.py +@@ -32,7 +32,6 @@ POOL_TYPE_DESCS = { + StoragePool.TYPE_MPATH: _("Multipath Device Enumerator"), + StoragePool.TYPE_GLUSTER: _("Gluster Filesystem"), + StoragePool.TYPE_RBD: _("RADOS Block Device/Ceph"), +- StoragePool.TYPE_SHEEPDOG: _("Sheepdog Filesystem"), + StoragePool.TYPE_ZFS: _("ZFS Pool"), + } + +@@ -128,7 +127,6 @@ class vmmStoragePool(vmmLibvirtObject): + ] + if not clone: + supported.extend([ +- StoragePool.TYPE_SHEEPDOG, + StoragePool.TYPE_ZFS, + ]) + return pool_type in supported +diff --git a/virtinst/storage.py b/virtinst/storage.py +index 509f5cb0..3c5d39bb 100644 +--- a/virtinst/storage.py ++++ b/virtinst/storage.py +@@ -82,7 +82,6 @@ class StoragePool(_StorageObject): + TYPE_MPATH = "mpath" + TYPE_GLUSTER = "gluster" + TYPE_RBD = "rbd" +- TYPE_SHEEPDOG = "sheepdog" + TYPE_ZFS = "zfs" + + @staticmethod +@@ -311,7 +310,7 @@ class StoragePool(_StorageObject): + + def supports_source_name(self): + return self.type in [self.TYPE_LOGICAL, self.TYPE_GLUSTER, +- self.TYPE_RBD, self.TYPE_SHEEPDOG, self.TYPE_ZFS] ++ self.TYPE_RBD, self.TYPE_ZFS] + + + def supports_source_path(self): +@@ -323,7 +322,7 @@ class StoragePool(_StorageObject): + def supports_hosts(self): + return self.type in [ + self.TYPE_NETFS, self.TYPE_ISCSI, self.TYPE_GLUSTER, +- self.TYPE_RBD, self.TYPE_SHEEPDOG] ++ self.TYPE_RBD] + + def supports_format(self): + return self.type in [self.TYPE_FS, self.TYPE_NETFS, self.TYPE_DISK] +@@ -340,8 +339,7 @@ class StoragePool(_StorageObject): + return StorageVolume.TYPE_BLOCK + if (self.type == StoragePool.TYPE_GLUSTER or + self.type == StoragePool.TYPE_RBD or +- self.type == StoragePool.TYPE_ISCSI or +- self.type == StoragePool.TYPE_SHEEPDOG): ++ self.type == StoragePool.TYPE_ISCSI): + return StorageVolume.TYPE_NETWORK + return StorageVolume.TYPE_FILE + diff --git a/016-Fix-pylint-pycodestyle-warnings-with-latest-versions.patch b/016-Fix-pylint-pycodestyle-warnings-with-latest-versions.patch new file mode 100644 index 0000000..874d788 --- /dev/null +++ b/016-Fix-pylint-pycodestyle-warnings-with-latest-versions.patch @@ -0,0 +1,249 @@ +Subject: Fix pylint/pycodestyle warnings with latest versions +From: Cole Robinson crobinso@redhat.com Tue Dec 13 10:51:14 2022 -0500 +Date: Tue Dec 13 11:23:45 2022 -0500: +Git: bb1afaba29019605a240a57d6b3ca8eb36341d9b + +Signed-off-by: Cole Robinson + +diff --git a/setup.py b/setup.py +index b45d315a..4bf29f25 100755 +--- a/setup.py ++++ b/setup.py +@@ -29,7 +29,7 @@ import setuptools.command.install_egg_info + # + # Newer setuptools will transparently support 'import distutils' though. + # That can be overridden with SETUPTOOLS_USE_DISTUTILS env variable +-import distutils.command.build # pylint: disable=wrong-import-order ++import distutils.command.build # pylint: disable=wrong-import-order,deprecated-module + + + SYSPREFIX = sysconfig.get_config_var("prefix") +diff --git a/tests/test_disk.py b/tests/test_disk.py +index ef065157..9127371b 100644 +--- a/tests/test_disk.py ++++ b/tests/test_disk.py +@@ -82,6 +82,7 @@ def test_disk_dir_searchable(monkeypatch): + searchdata = virtinst.DeviceDisk.check_path_search(conn, + tmpdir + "/footest") + assert searchdata.uid == os.getuid() ++ # pylint: disable=use-implicit-booleaness-not-comparison + assert searchdata.fixlist == [] + + # Remove perms on the tmpdir, now it should report failures +diff --git a/virtManager/addhardware.py b/virtManager/addhardware.py +index 0a8e33d3..aec48dd2 100644 +--- a/virtManager/addhardware.py ++++ b/virtManager/addhardware.py +@@ -371,8 +371,8 @@ class vmmAddHardware(vmmGObjectUI): + + msg = _("These changes will take effect after " + "the next guest shutdown.") +- dtype = (hotplug_err and +- Gtk.MessageType.WARNING or Gtk.MessageType.INFO) ++ dtype = (Gtk.MessageType.WARNING if hotplug_err else ++ Gtk.MessageType.INFO) + hotplug_msg = "" + if hotplug_err: + hotplug_msg += (hotplug_err[0] + "\n\n" + +@@ -1560,7 +1560,7 @@ class vmmAddHardware(vmmGObjectUI): + controller_num = [x for x in controllers if + (x.type == controller_type)] + if len(controller_num) > 0: +- index_new = max([x.index for x in controller_num]) + 1 ++ index_new = max(x.index for x in controller_num) + 1 + dev.index = index_new + + dev.type = controller_type +diff --git a/virtManager/details/sshtunnels.py b/virtManager/details/sshtunnels.py +index 9afc1e13..cb7ca7c0 100644 +--- a/virtManager/details/sshtunnels.py ++++ b/virtManager/details/sshtunnels.py +@@ -22,7 +22,7 @@ class ConnectionInfo(object): + """ + def __init__(self, conn, gdev): + self.gtype = gdev.type +- self.gport = gdev.port and str(gdev.port) or None ++ self.gport = str(gdev.port) if gdev.port else None + self.gsocket = (gdev.listens and gdev.listens[0].socket) or gdev.socket + self.gaddr = gdev.listen or "127.0.0.1" + self.gtlsport = gdev.tlsPort or None +diff --git a/virtManager/lib/statsmanager.py b/virtManager/lib/statsmanager.py +index 28495495..ece130ab 100644 +--- a/virtManager/lib/statsmanager.py ++++ b/virtManager/lib/statsmanager.py +@@ -66,7 +66,7 @@ class _VMStatsList(vmmGObject): + expected = self.config.get_stats_history_length() + current = len(self._stats) + if current > expected: # pragma: no cover +- del(self._stats[expected:current]) ++ del self._stats[expected:current] + + def _calculate_rate(record_name): + ret = 0.0 +diff --git a/virtManager/object/domain.py b/virtManager/object/domain.py +index 2d6f5bca..1570b952 100644 +--- a/virtManager/object/domain.py ++++ b/virtManager/object/domain.py +@@ -1306,10 +1306,10 @@ class vmmDomain(vmmLibvirtObject): + def get_arch(self): + return self.get_xmlobj().os.arch + def get_init(self): +- import pipes ++ import shlex + init = self.get_xmlobj().os.init + initargs = " ".join( +- [pipes.quote(i.val) for i in self.get_xmlobj().os.initargs]) ++ [shlex.quote(i.val) for i in self.get_xmlobj().os.initargs]) + return init, initargs + + def get_emulator(self): +diff --git a/virtinst/cli.py b/virtinst/cli.py +index 8dbffeb6..7615f743 100644 +--- a/virtinst/cli.py ++++ b/virtinst/cli.py +@@ -85,7 +85,7 @@ class VirtHelpFormatter(argparse.RawDescriptionHelpFormatter): + ''' + oldwrap = None + +- # pylint: disable=arguments-differ ++ # pylint: disable=arguments-differ,protected-access + def _split_lines(self, *args, **kwargs): + def return_default(): + return argparse.RawDescriptionHelpFormatter._split_lines( +@@ -1690,7 +1690,7 @@ def convert_old_force(options): + if options.force: + if not options.check: + options.check = "all=off" +- del(options.force) ++ del options.force + + + class ParserCheck(VirtCLIParser): +@@ -2281,7 +2281,7 @@ class ParserCPU(VirtCLIParser): + policy = "disable" + + if policy: +- del(self.optdict[key]) ++ del self.optdict[key] + converted[policy].append(key[1:]) + + self.optdict.update(converted) +@@ -2753,7 +2753,7 @@ class ParserBoot(VirtCLIParser): + if cliname not in inst.BOOT_DEVICES: + continue + +- del(self.optdict[cliname]) ++ del self.optdict[cliname] + if cliname not in boot_order: + boot_order.append(cliname) + +diff --git a/virtinst/domcapabilities.py b/virtinst/domcapabilities.py +index d22ce6a2..1b5b6bf6 100644 +--- a/virtinst/domcapabilities.py ++++ b/virtinst/domcapabilities.py +@@ -334,7 +334,7 @@ class DomainCapabilities(XMLBuilder): + """ + Return True if we know how to setup UEFI for the passed arch + """ +- return self.arch in list(self._uefi_arch_patterns.keys()) ++ return self.arch in self._uefi_arch_patterns + + def supports_uefi_loader(self): + """ +diff --git a/virtinst/pollhelpers.py b/virtinst/pollhelpers.py +index ef695914..f9fcc3fa 100644 +--- a/virtinst/pollhelpers.py ++++ b/virtinst/pollhelpers.py +@@ -32,7 +32,7 @@ def _new_poll_helper(origmap, typename, list_cb, build_cb, support_cb): + else: + # Previously known object + current[name] = origmap[name] +- del(origmap[name]) ++ del origmap[name] + + return (list(origmap.values()), list(new.values()), list(current.values())) + +diff --git a/virtinst/virtinstall.py b/virtinst/virtinstall.py +index 8fcc8ce1..130c8e28 100644 +--- a/virtinst/virtinstall.py ++++ b/virtinst/virtinstall.py +@@ -67,7 +67,7 @@ def check_cdrom_option_error(options): + def convert_old_printxml(options): + if options.xmlstep: + options.xmlonly = options.xmlstep +- del(options.xmlstep) ++ del options.xmlstep + + + def convert_old_sound(options): +@@ -135,10 +135,10 @@ def convert_old_disks(options): + else: + _do_convert_old_disks(options) + +- del(options.file_paths) +- del(options.disksize) +- del(options.sparse) +- del(options.nodisks) ++ del options.file_paths ++ del options.disksize ++ del options.sparse ++ del options.nodisks + log.debug("Distilled --disk options: %s", options.disk) + + +@@ -147,7 +147,7 @@ def convert_old_os_options(options): + return + log.warning( + _("--os-type is deprecated and does nothing. Please stop using it.")) +- del(options.old_os_type) ++ del options.old_os_type + + + def convert_old_memory(options): +@@ -204,9 +204,9 @@ def convert_old_networks(options): + networks[idx] = networks[idx].replace(prefix + ":", + prefix + "=") + +- del(options.mac) +- del(options.bridge) +- del(options.nonetworks) ++ del options.mac ++ del options.bridge ++ del options.nonetworks + + options.network = networks + log.debug("Distilled --network options: %s", options.network) +@@ -224,7 +224,7 @@ def convert_old_graphics(options): + if graphics and (vnc or sdl or keymap or vncport or vnclisten): + fail(_("Cannot mix --graphics and old style graphical options")) + +- optnum = sum([bool(g) for g in [vnc, nographics, sdl, graphics]]) ++ optnum = sum(bool(g) for g in [vnc, nographics, sdl, graphics]) + if optnum > 1: + raise ValueError(_("Can't specify more than one of VNC, SDL, " + "--graphics or --nographics")) +diff --git a/virtinst/xmlbuilder.py b/virtinst/xmlbuilder.py +index 07a9e319..dd78038e 100644 +--- a/virtinst/xmlbuilder.py ++++ b/virtinst/xmlbuilder.py +@@ -262,9 +262,9 @@ class XMLProperty(_XMLPropertyBase): + self._is_onoff = is_onoff + self._do_abspath = do_abspath + +- conflicts = sum([int(bool(i)) for i in ++ conflicts = sum(int(bool(i)) for i in + [self._is_bool, self._is_int, +- self._is_yesno, self._is_onoff]]) ++ self._is_yesno, self._is_onoff]) + if conflicts > 1: + raise xmlutil.DevError("Conflict property converter options.") + +@@ -343,7 +343,7 @@ class XMLProperty(_XMLPropertyBase): + propstore = xmlbuilder._propstore + + if self.propname in propstore: +- del(propstore[self.propname]) ++ del propstore[self.propname] + propstore[self.propname] = val + + def _nonxml_fget(self, xmlbuilder): diff --git a/017-tests-cpio-set-owner-to-00.patch b/017-tests-cpio-set-owner-to-00.patch new file mode 100644 index 0000000..8dbb051 --- /dev/null +++ b/017-tests-cpio-set-owner-to-00.patch @@ -0,0 +1,19 @@ +Subject: tests: cpio: set owner to 0:0 +From: Weijia Wang 9713184+wegank@users.noreply.github.com Sat Aug 6 19:00:07 2022 +0000 +Date: Tue Dec 13 13:45:16 2022 -0500: +Git: 75a25e37660c5578587f4a7a75917cf98d77cf7e + + +diff --git a/virtinst/install/installerinject.py b/virtinst/install/installerinject.py +index 0b2a9bc5..98d88cf8 100644 +--- a/virtinst/install/installerinject.py ++++ b/virtinst/install/installerinject.py +@@ -20,7 +20,7 @@ def _run_initrd_commands(initrd, tempdir): + stderr=subprocess.PIPE, + cwd=tempdir) + cpio_proc = subprocess.Popen(['cpio', '--create', '--null', '--quiet', +- '--format=newc', '--owner=root:root'], ++ '--format=newc', '--owner=0:0'], + stdin=find_proc.stdout, + stdout=subprocess.PIPE, + stderr=subprocess.PIPE, diff --git a/018-addhardware-Fix-backtrace-when-controller.index-is-None.patch b/018-addhardware-Fix-backtrace-when-controller.index-is-None.patch new file mode 100644 index 0000000..cd37117 --- /dev/null +++ b/018-addhardware-Fix-backtrace-when-controller.index-is-None.patch @@ -0,0 +1,28 @@ +Subject: addhardware: Fix backtrace when controller.index is None +From: Cole Robinson crobinso@redhat.com Tue Dec 13 13:49:35 2022 -0500 +Date: Tue Dec 13 13:49:35 2022 -0500: +Git: 67832d3097cd6451833c30452d6991896e05933c + +When creating a new VM, in the customize wizard we can't depend on +index= value being set (virtinst doesn't do it for example). + +For example, this causes a backtrace when adding two virtio-scsi +controllers via the Customize wizard, or adding an extra +virtio-scsi controller to an aarch64 CDROM install. + +Reported-by: Charles Arnold +Signed-off-by: Cole Robinson + +diff --git a/virtManager/addhardware.py b/virtManager/addhardware.py +index aec48dd2..a1dd3261 100644 +--- a/virtManager/addhardware.py ++++ b/virtManager/addhardware.py +@@ -1560,7 +1560,7 @@ class vmmAddHardware(vmmGObjectUI): + controller_num = [x for x in controllers if + (x.type == controller_type)] + if len(controller_num) > 0: +- index_new = max(x.index for x in controller_num) + 1 ++ index_new = max(int(x.index or 0) for x in controller_num) + 1 + dev.index = index_new + + dev.type = controller_type diff --git a/019-Clean-up-FileChooser-usage-a-bit.patch b/019-Clean-up-FileChooser-usage-a-bit.patch new file mode 100644 index 0000000..b30293a --- /dev/null +++ b/019-Clean-up-FileChooser-usage-a-bit.patch @@ -0,0 +1,492 @@ +Subject: Clean up FileChooser usage a bit +From: Cole Robinson crobinso@redhat.com Tue Dec 13 15:09:35 2022 -0500 +Date: Wed Dec 14 12:31:17 2022 -0500: +Git: cbc5b897077671a675faf48603d9714527d84c83 + +* Move browse_reason handling entirely into storagebrowser.py +* Open code some of the browse_local logic at the few callers + +Signed-off-by: Cole Robinson + +diff --git a/virtManager/addhardware.py b/virtManager/addhardware.py +index a1dd3261..df902374 100644 +--- a/virtManager/addhardware.py ++++ b/virtManager/addhardware.py +@@ -1590,8 +1590,8 @@ class vmmAddHardware(vmmGObjectUI): + textent.set_text(path) + + reason = (isdir and +- self.config.CONFIG_DIR_FS or +- self.config.CONFIG_DIR_IMAGE) ++ vmmStorageBrowser.REASON_FS or ++ vmmStorageBrowser.REASON_IMAGE) + if self._storagebrowser is None: + self._storagebrowser = vmmStorageBrowser(self.conn) + +diff --git a/virtManager/config.py b/virtManager/config.py +index 8379697c..2c81b061 100644 +--- a/virtManager/config.py ++++ b/virtManager/config.py +@@ -133,51 +133,6 @@ class _SettingsWrapper(object): + + + class vmmConfig(object): +- # key names for saving last used paths +- CONFIG_DIR_IMAGE = "image" +- CONFIG_DIR_ISO_MEDIA = "isomedia" +- CONFIG_DIR_FLOPPY_MEDIA = "floppymedia" +- CONFIG_DIR_SCREENSHOT = "screenshot" +- CONFIG_DIR_FS = "fs" +- +- # Metadata mapping for browse types. Prob shouldn't go here, but works +- # for now. +- browse_reason_data = { +- CONFIG_DIR_IMAGE: { +- "enable_create": True, +- "storage_title": _("Locate or create storage volume"), +- "local_title": _("Locate existing storage"), +- "dialog_type": Gtk.FileChooserAction.SAVE, +- "choose_button": Gtk.STOCK_OPEN, +- "gsettings_key": "image", +- }, +- +- CONFIG_DIR_SCREENSHOT: { +- "gsettings_key": "screenshot", +- }, +- +- CONFIG_DIR_ISO_MEDIA: { +- "enable_create": False, +- "storage_title": _("Locate ISO media volume"), +- "local_title": _("Locate ISO media"), +- "gsettings_key": "media", +- }, +- +- CONFIG_DIR_FLOPPY_MEDIA: { +- "enable_create": False, +- "storage_title": _("Locate floppy media volume"), +- "local_title": _("Locate floppy media"), +- "gsettings_key": "media", +- }, +- +- CONFIG_DIR_FS: { +- "enable_create": False, +- "storage_title": _("Locate directory volume"), +- "local_title": _("Locate directory volume"), +- "dialog_type": Gtk.FileChooserAction.SELECT_FOLDER, +- }, +- } +- + CONSOLE_SCALE_NEVER = 0 + CONSOLE_SCALE_FULLSCREEN = 1 + CONSOLE_SCALE_ALWAYS = 2 +@@ -627,23 +582,15 @@ class vmmConfig(object): + + + # Default directory location dealings +- def get_default_directory(self, conn, _type): +- ignore = conn +- browsedata = self.browse_reason_data.get(_type, {}) +- key = browsedata.get("gsettings_key", None) +- path = None +- +- if key: +- path = self.conf.get("/paths/%s-default" % key) +- +- log.debug("directory for type=%s returning=%s", _type, path) ++ def get_default_directory(self, gsettings_key): ++ path = self.conf.get("/paths/%s-default" % gsettings_key) ++ log.debug("directory for gsettings_key=%s returning=%s", ++ gsettings_key, path) + return path + +- def set_default_directory(self, folder, _type): +- browsedata = self.browse_reason_data.get(_type, {}) +- key = browsedata.get("gsettings_key", None) +- if not key: ++ def set_default_directory(self, gsettings_key, folder): ++ if not folder or folder.startswith("/dev"): + return # pragma: no cover +- +- log.debug("saving directory for type=%s to %s", key, folder) +- self.conf.set("/paths/%s-default" % key, folder) ++ log.debug("saving directory for gsettings_key=%s to %s", ++ gsettings_key, folder) ++ self.conf.set("/paths/%s-default" % gsettings_key, folder) +diff --git a/virtManager/createpool.py b/virtManager/createpool.py +index 66457b51..a3e9a99a 100644 +--- a/virtManager/createpool.py ++++ b/virtManager/createpool.py +@@ -381,9 +381,8 @@ class vmmCreatePool(vmmGObjectUI): + self._show_options_by_pool() + + def _browse_source_cb(self, src): +- source = self.err.browse_local(self.conn, ++ source = self.err.browse_local( + _("Choose source path"), +- dialog_type=Gtk.FileChooserAction.OPEN, + start_folder="/dev") + if source: + self.widget("pool-source-path").get_child().set_text(source) +@@ -394,7 +393,7 @@ class vmmCreatePool(vmmGObjectUI): + if current: + startfolder = os.path.dirname(current) + +- target = self.err.browse_local(self.conn, ++ target = self.err.browse_local( + _("Choose target directory"), + dialog_type=Gtk.FileChooserAction.SELECT_FOLDER, + start_folder=startfolder) +diff --git a/virtManager/createvm.py b/virtManager/createvm.py +index 7e5ded68..95aff71b 100644 +--- a/virtManager/createvm.py ++++ b/virtManager/createvm.py +@@ -1280,11 +1280,11 @@ class vmmCreateVM(vmmGObjectUI): + + def _browse_file(self, cbwidget, cb=None, is_media=False, is_dir=False): + if is_media: +- reason = self.config.CONFIG_DIR_ISO_MEDIA ++ reason = vmmStorageBrowser.REASON_ISO_MEDIA + elif is_dir: +- reason = self.config.CONFIG_DIR_FS ++ reason = vmmStorageBrowser.REASON_FS + else: +- reason = self.config.CONFIG_DIR_IMAGE ++ reason = vmmStorageBrowser.REASON_IMAGE + + if cb: + callback = cb +diff --git a/virtManager/createvol.py b/virtManager/createvol.py +index 58453038..ea82964a 100644 +--- a/virtManager/createvol.py ++++ b/virtManager/createvol.py +@@ -208,7 +208,7 @@ class vmmCreateVolume(vmmGObjectUI): + self._storage_browser.set_finish_cb(cb) + self._storage_browser.topwin.set_modal(self.topwin.get_modal()) + self._storage_browser.set_browse_reason( +- self.config.CONFIG_DIR_IMAGE) ++ vmmStorageBrowser.REASON_IMAGE) + + self._storage_browser.show(self.topwin) + +diff --git a/virtManager/details/details.py b/virtManager/details/details.py +index 757e18ad..1970d0aa 100644 +--- a/virtManager/details/details.py ++++ b/virtManager/details/details.py +@@ -1089,7 +1089,7 @@ class vmmDetails(vmmGObjectUI): + + def _browse_file(self, callback, reason=None): + if not reason: +- reason = self.config.CONFIG_DIR_IMAGE ++ reason = vmmStorageBrowser.REASON_IMAGE + + if self.storage_browser is None: + self.storage_browser = vmmStorageBrowser(self.conn) +@@ -1235,9 +1235,9 @@ class vmmDetails(vmmGObjectUI): + def _disk_source_browse_clicked_cb(self, src): + disk = self._get_hw_row()[HW_LIST_COL_DEVICE] + if disk.is_floppy(): +- reason = self.config.CONFIG_DIR_FLOPPY_MEDIA ++ reason = vmmStorageBrowser.REASON_FLOPPY_MEDIA + else: +- reason = self.config.CONFIG_DIR_ISO_MEDIA ++ reason = vmmStorageBrowser.REASON_ISO_MEDIA + + def cb(ignore, path): + self._mediacombo.set_path(path) +diff --git a/virtManager/device/fsdetails.py b/virtManager/device/fsdetails.py +index b9956e1d..555c745a 100644 +--- a/virtManager/device/fsdetails.py ++++ b/virtManager/device/fsdetails.py +@@ -268,8 +268,8 @@ class vmmFSDetails(vmmGObjectUI): + textent.set_text(path) + + reason = (isdir and +- self.config.CONFIG_DIR_FS or +- self.config.CONFIG_DIR_IMAGE) ++ vmmStorageBrowser.REASON_FS or ++ vmmStorageBrowser.REASON_IMAGE) + + if self._storage_browser is None: + self._storage_browser = vmmStorageBrowser(self.conn) +diff --git a/virtManager/error.py b/virtManager/error.py +index 8d78efae..593c89ca 100644 +--- a/virtManager/error.py ++++ b/virtManager/error.py +@@ -3,6 +3,7 @@ + # This work is licensed under the GNU GPLv2 or later. + # See the COPYING file in the top-level directory. + ++import os + import sys + import textwrap + import traceback +@@ -231,49 +232,38 @@ class vmmErrorDialog(vmmGObject): + + return response + +- def browse_local(self, conn, dialog_name, start_folder=None, ++ def browse_local(self, dialog_name, start_folder=None, + _type=None, dialog_type=None, +- browse_reason=None, +- choose_button=None, default_name=None): ++ choose_button=None, default_name=None, ++ confirm_overwrite=False): + """ + Helper function for launching a filechooser + + @dialog_name: String to use in the title bar of the filechooser. +- @conn: vmmConnection used by calling class + @start_folder: Folder the filechooser is viewing at startup + @_type: File extension to filter by (e.g. "iso", "png") + @dialog_type: Maps to FileChooserDialog 'action' +- @browse_reason: The vmmConfig.CONFIG_DIR* reason we are browsing. +- If set, this will override the 'folder' parameter with the gsettings +- value, and store the user chosen path. + """ +- import os +- +- # Initial setup +- overwrite_confirm = False +- dialog_type = dialog_type or Gtk.FileChooserAction.OPEN +- +- if dialog_type == Gtk.FileChooserAction.SAVE: +- if choose_button is None: +- choose_button = Gtk.STOCK_SAVE +- overwrite_confirm = True +- ++ if dialog_type is None: ++ dialog_type = Gtk.FileChooserAction.OPEN + if choose_button is None: + choose_button = Gtk.STOCK_OPEN + ++ buttons = (Gtk.STOCK_CANCEL, ++ Gtk.ResponseType.CANCEL, ++ choose_button, ++ Gtk.ResponseType.ACCEPT) ++ + fcdialog = Gtk.FileChooserDialog(title=dialog_name, + parent=self.get_parent(), + action=dialog_type, +- buttons=(Gtk.STOCK_CANCEL, +- Gtk.ResponseType.CANCEL, +- choose_button, +- Gtk.ResponseType.ACCEPT)) ++ buttons=buttons) + fcdialog.set_default_response(Gtk.ResponseType.ACCEPT) + + if default_name: + fcdialog.set_current_name(default_name) + +- fcdialog.set_do_overwrite_confirmation(overwrite_confirm) ++ fcdialog.set_do_overwrite_confirmation(confirm_overwrite) + + # Set file match pattern (ex. *.png) + if _type is not None: +@@ -289,11 +279,6 @@ class vmmErrorDialog(vmmGObject): + f.set_name(name) + fcdialog.set_filter(f) + +- # Set initial dialog folder +- if browse_reason: +- start_folder = self.config.get_default_directory( +- conn, browse_reason) +- + if start_folder is not None: + if os.access(start_folder, os.R_OK): + fcdialog.set_current_folder(start_folder) +@@ -304,10 +289,6 @@ class vmmErrorDialog(vmmGObject): + ret = fcdialog.get_filename() + fcdialog.destroy() + +- # Store the chosen directory in gsettings if necessary +- if ret and browse_reason and not ret.startswith("/dev"): +- self.config.set_default_directory( +- os.path.dirname(ret), browse_reason) + return ret + + +diff --git a/virtManager/storagebrowse.py b/virtManager/storagebrowse.py +index b5fa9a2e..c5a26519 100644 +--- a/virtManager/storagebrowse.py ++++ b/virtManager/storagebrowse.py +@@ -4,6 +4,10 @@ + # This work is licensed under the GNU GPLv2 or later. + # See the COPYING file in the top-level directory. + ++import os ++ ++from gi.repository import Gtk ++ + from virtinst import log + + from .lib import uiutil +@@ -11,15 +15,53 @@ from .baseclass import vmmGObjectUI + from .hoststorage import vmmHostStorage + + ++class _BrowseReasonMetadata: ++ def __init__(self, browse_reason): ++ self.enable_create = False ++ self.storage_title = None ++ self.local_title = None ++ self.gsettings_key = None ++ self.dialog_type = None ++ ++ if browse_reason == vmmStorageBrowser.REASON_IMAGE: ++ self.enable_create = True ++ self.local_title = _("Locate existing storage") ++ self.storage_title = _("Locate or create storage volume") ++ self.dialog_type = Gtk.FileChooserAction.SAVE ++ self.gsettings_key = "image" ++ ++ if browse_reason == vmmStorageBrowser.REASON_ISO_MEDIA: ++ self.local_title = _("Locate ISO media") ++ self.storage_title = _("Locate ISO media volume") ++ self.gsettings_key = "media" ++ ++ if browse_reason == vmmStorageBrowser.REASON_FLOPPY_MEDIA: ++ self.local_title = _("Locate floppy media") ++ self.storage_title = _("Locate floppy media volume") ++ self.gsettings_key = "media" ++ ++ if browse_reason == vmmStorageBrowser.REASON_FS: ++ self.local_title = _("Locate directory volume") ++ self.storage_title = _("Locate directory volume") ++ self.dialog_type = Gtk.FileChooserAction.SELECT_FOLDER ++ ++ if browse_reason is None: ++ self.enable_create = True ++ self.storage_title = _("Choose Storage Volume") ++ ++ + class vmmStorageBrowser(vmmGObjectUI): ++ REASON_IMAGE = "image" ++ REASON_ISO_MEDIA = "isomedia" ++ REASON_FLOPPY_MEDIA = "floppymedia" ++ REASON_FS = "fs" ++ + def __init__(self, conn): + vmmGObjectUI.__init__(self, "storagebrowse.ui", "vmm-storage-browse") + self.conn = conn + + self._first_run = False + self._finish_cb = None +- +- # Passed to browse_local + self._browse_reason = None + + self.storagelist = vmmHostStorage(self.conn, self.builder, self.topwin, +@@ -103,15 +145,10 @@ class vmmStorageBrowser(vmmGObjectUI): + + def set_browse_reason(self, reason): + self._browse_reason = reason +- data = self.config.browse_reason_data.get(self._browse_reason, {}) +- allow_create = True +- title = _("Choose Storage Volume") +- if data: +- allow_create = data["enable_create"] +- title = data["storage_title"] ++ data = _BrowseReasonMetadata(self._browse_reason) + +- self.topwin.set_title(title) +- self.storagelist.widget("vol-add").set_sensitive(allow_create) ++ self.topwin.set_title(data.storage_title) ++ self.storagelist.widget("vol-add").set_sensitive(data.enable_create) + + + ############# +@@ -128,7 +165,7 @@ class vmmStorageBrowser(vmmGObjectUI): + self._finish(volume.get_target_path()) + + def _vol_sensitive_cb(self, fmt): +- if ((self._browse_reason == self.config.CONFIG_DIR_FS) and ++ if ((self._browse_reason == vmmStorageBrowser.REASON_FS) and + fmt != 'dir'): + return False + return True +@@ -139,22 +176,27 @@ class vmmStorageBrowser(vmmGObjectUI): + #################### + + def _browse_local(self): +- dialog_type = None +- dialog_name = None +- choose_button = None +- +- data = self.config.browse_reason_data.get(self._browse_reason) +- if data: +- dialog_name = data["local_title"] or None +- dialog_type = data.get("dialog_type") +- choose_button = data.get("choose_button") +- +- filename = self.err.browse_local(self.conn, +- dialog_type=dialog_type, browse_reason=self._browse_reason, +- dialog_name=dialog_name, choose_button=choose_button) +- if filename: +- log.debug("Browse local chose path=%s", filename) +- self._finish(filename) ++ data = _BrowseReasonMetadata(self._browse_reason) ++ gsettings_key = data.gsettings_key ++ ++ if gsettings_key: ++ start_folder = self.config.get_default_directory(gsettings_key) ++ ++ filename = self.err.browse_local( ++ dialog_type=data.dialog_type, ++ dialog_name=data.local_title, ++ start_folder=start_folder) ++ ++ if not filename: ++ return ++ ++ log.debug("Browse local chose path=%s", filename) ++ ++ if gsettings_key: ++ self.config.set_default_directory( ++ gsettings_key, os.path.dirname(filename)) ++ ++ self._finish(filename) + + def _finish(self, path): + if self._finish_cb: +diff --git a/virtManager/vmwindow.py b/virtManager/vmwindow.py +index 3ac4a6a4..d5549454 100644 +--- a/virtManager/vmwindow.py ++++ b/virtManager/vmwindow.py +@@ -548,24 +548,31 @@ class vmmVMWindow(vmmGObjectUI): + ret = ret.buffer # pragma: no cover + + import datetime ++ import os + now = str(datetime.datetime.now()).split(".")[0].replace(" ", "_") + default = "Screenshot_%s_%s.png" % (self.vm.get_name(), now) + +- path = self.err.browse_local( +- self.vm.conn, _("Save Virtual Machine Screenshot"), ++ start_folder = self.config.get_default_directory("screenshot") ++ ++ filename = self.err.browse_local( ++ _("Save Virtual Machine Screenshot"), + _type=("png", _("PNG files")), + dialog_type=Gtk.FileChooserAction.SAVE, +- browse_reason=self.config.CONFIG_DIR_SCREENSHOT, +- default_name=default) +- if not path: # pragma: no cover ++ choose_button=Gtk.STOCK_SAVE, ++ start_folder=start_folder, ++ default_name=default, ++ confirm_overwrite=True) ++ if not filename: # pragma: no cover + log.debug("No screenshot path given, skipping save.") + return + +- filename = path + if not filename.endswith(".png"): + filename += ".png" # pragma: no cover + open(filename, "wb").write(ret) + ++ self.config.set_default_directory( ++ "screenshot", os.path.dirname(filename)) ++ + + ######################## + # Details page refresh # diff --git a/020-guest-Query-availability-of-usb-redirdevs-in-domcaps.patch b/020-guest-Query-availability-of-usb-redirdevs-in-domcaps.patch new file mode 100644 index 0000000..23a6a6a --- /dev/null +++ b/020-guest-Query-availability-of-usb-redirdevs-in-domcaps.patch @@ -0,0 +1,51 @@ +Subject: guest: Query availability of usb redirdevs in domcaps +From: Lin Ma lma@suse.com Thu Nov 10 15:57:08 2022 +0800 +Date: Wed Dec 14 12:44:54 2022 -0500: +Git: 8cc6ee8da36d518ec928c072822bbee6ebe2e362 + +Signed-off-by: Lin Ma + +diff --git a/virtinst/domcapabilities.py b/virtinst/domcapabilities.py +index 1b5b6bf6..91f51f9f 100644 +--- a/virtinst/domcapabilities.py ++++ b/virtinst/domcapabilities.py +@@ -113,6 +113,7 @@ class _Devices(_CapsBlock): + graphics = XMLChildProperty(_make_capsblock("graphics"), is_single=True) + tpm = XMLChildProperty(_make_capsblock("tpm"), is_single=True) + filesystem = XMLChildProperty(_make_capsblock("filesystem"), is_single=True) ++ redirdev = XMLChildProperty(_make_capsblock("redirdev"), is_single=True) + + + class _Features(_CapsBlock): +@@ -448,6 +449,18 @@ class DomainCapabilities(XMLBuilder): + + return self.devices.graphics.get_enum("type").has_value("spice") + ++ def supports_redirdev_usb(self): ++ """ ++ Return False if libvirt explicitly advertises no support for ++ USB redirect ++ """ ++ if self.devices.redirdev.supported is None: ++ # Follow the original behavior in case of talking to older ++ # libvirt. ++ return True ++ ++ return self.devices.redirdev.get_enum("bus").has_value("usb") ++ + def supports_filesystem_virtiofs(self): + """ + Return True if libvirt advertises support for virtiofs +diff --git a/virtinst/guest.py b/virtinst/guest.py +index e6636022..1d1e2ee9 100644 +--- a/virtinst/guest.py ++++ b/virtinst/guest.py +@@ -1155,6 +1155,8 @@ class Guest(XMLBuilder): + self.add_device(dev) + + def _add_spice_usbredir(self): ++ if not self.lookup_domcaps().supports_redirdev_usb(): ++ return + if self.skip_default_usbredir: + return + if self.devices.redirdev: diff --git a/021-guest-Query-availability-of-spicevmc-channels-in-domcaps.patch b/021-guest-Query-availability-of-spicevmc-channels-in-domcaps.patch new file mode 100644 index 0000000..e6a8ad9 --- /dev/null +++ b/021-guest-Query-availability-of-spicevmc-channels-in-domcaps.patch @@ -0,0 +1,51 @@ +Subject: guest: Query availability of spicevmc channels in domcaps +From: Lin Ma lma@suse.com Thu Nov 10 15:57:24 2022 +0800 +Date: Wed Dec 14 12:44:54 2022 -0500: +Git: 180154d752a33f6b26643184e6aa19dcb110e0eb + +Signed-off-by: Lin Ma + +diff --git a/virtinst/domcapabilities.py b/virtinst/domcapabilities.py +index 91f51f9f..db08bf65 100644 +--- a/virtinst/domcapabilities.py ++++ b/virtinst/domcapabilities.py +@@ -114,6 +114,7 @@ class _Devices(_CapsBlock): + tpm = XMLChildProperty(_make_capsblock("tpm"), is_single=True) + filesystem = XMLChildProperty(_make_capsblock("filesystem"), is_single=True) + redirdev = XMLChildProperty(_make_capsblock("redirdev"), is_single=True) ++ channel = XMLChildProperty(_make_capsblock("channel"), is_single=True) + + + class _Features(_CapsBlock): +@@ -449,6 +450,18 @@ class DomainCapabilities(XMLBuilder): + + return self.devices.graphics.get_enum("type").has_value("spice") + ++ def supports_channel_spicevmc(self): ++ """ ++ Return False if libvirt explicitly advertises no support for ++ spice channel ++ """ ++ if self.devices.channel.supported is None: ++ # Follow the original behavior in case of talking to older ++ # libvirt. ++ return True ++ ++ return self.devices.channel.get_enum("type").has_value("spicevmc") ++ + def supports_redirdev_usb(self): + """ + Return False if libvirt explicitly advertises no support for +diff --git a/virtinst/guest.py b/virtinst/guest.py +index 1d1e2ee9..c2244ae3 100644 +--- a/virtinst/guest.py ++++ b/virtinst/guest.py +@@ -1127,6 +1127,8 @@ class Guest(XMLBuilder): + self.add_device(ctrl) + + def _add_spice_channels(self): ++ if not self.lookup_domcaps().supports_channel_spicevmc(): ++ return + if self.skip_default_channel: + return + for chn in self.devices.channel: diff --git a/022-tests-Add-domcaps-coverage-for-usb-redir-spicevmc-channel-checks.patch b/022-tests-Add-domcaps-coverage-for-usb-redir-spicevmc-channel-checks.patch new file mode 100644 index 0000000..72a04c5 --- /dev/null +++ b/022-tests-Add-domcaps-coverage-for-usb-redir-spicevmc-channel-checks.patch @@ -0,0 +1,20 @@ +Subject: tests: Add domcaps coverage for usb-redir/spicevmc channel checks +From: Lin Ma lma@suse.com Thu Nov 10 15:57:43 2022 +0800 +Date: Wed Dec 14 12:44:54 2022 -0500: +Git: c313209455b2c5fd34560f469af4737a6c8e6fdb + +Signed-off-by: Lin Ma + +diff --git a/tests/test_capabilities.py b/tests/test_capabilities.py +index d102e51b..70c9de6f 100644 +--- a/tests/test_capabilities.py ++++ b/tests/test_capabilities.py +@@ -92,6 +92,8 @@ def testDomainCapabilitiesx86(): + + assert caps.supports_filesystem_virtiofs() + assert caps.supports_memorybacking_memfd() ++ assert caps.supports_redirdev_usb() ++ assert caps.supports_channel_spicevmc() + + xml = open(DATADIR + "/kvm-x86_64-domcaps-amd-sev.xml").read() + caps = DomainCapabilities(utils.URIs.open_testdriver_cached(), xml) diff --git a/023-tests-Update-to-latest-kvm-domcaps.patch b/023-tests-Update-to-latest-kvm-domcaps.patch new file mode 100644 index 0000000..c9db949 --- /dev/null +++ b/023-tests-Update-to-latest-kvm-domcaps.patch @@ -0,0 +1,264 @@ +Subject: tests: Update to latest kvm domcaps +From: Cole Robinson crobinso@redhat.com Wed Dec 14 12:44:13 2022 -0500 +Date: Wed Dec 14 12:45:05 2022 -0500: +Git: b5d6dfaa0dab6c65b3ae4264e62302f2d93a69d4 + +And add some test coverage exclusions, needed for previous patches + +Signed-off-by: Cole Robinson + +diff --git a/tests/data/capabilities/kvm-x86_64-domcaps-latest.xml b/tests/data/capabilities/kvm-x86_64-domcaps-latest.xml +index ee586e1a..ebcc9ec4 100644 +--- a/tests/data/capabilities/kvm-x86_64-domcaps-latest.xml ++++ b/tests/data/capabilities/kvm-x86_64-domcaps-latest.xml +@@ -1,7 +1,7 @@ + + /usr/bin/qemu-system-x86_64 + kvm +- pc-q35-6.1 ++ pc-q35-7.0 + x86_64 + + +@@ -12,6 +12,8 @@ + + /usr/share/edk2/ovmf/OVMF_CODE.secboot.fd + /usr/share/edk2/ovmf/OVMF_CODE.fd ++ /usr/share/edk2/ovmf/OVMF.amdsev.fd ++ /usr/share/edk2/ovmf/OVMF.inteltdx.fd + + rom + pflash +@@ -40,91 +42,91 @@ + + + +- Cooperlake ++ Skylake-Client-IBRS + Intel + + + + + +- ++ + ++ + ++ ++ ++ + ++ + + + + + ++ ++ ++ ++ ++ + + +- +- +- +- +- +- +- +- +- +- + + +- qemu64 +- qemu32 +- phenom +- pentium3 +- pentium2 +- pentium +- n270 +- kvm64 +- kvm32 +- coreduo +- core2duo +- athlon +- Westmere-IBRS +- Westmere +- Snowridge +- Skylake-Server-noTSX-IBRS +- Skylake-Server-IBRS +- Skylake-Server +- Skylake-Client-noTSX-IBRS +- Skylake-Client-IBRS +- Skylake-Client +- SandyBridge-IBRS +- SandyBridge +- Penryn +- Opteron_G5 +- Opteron_G4 +- Opteron_G3 +- Opteron_G2 +- Opteron_G1 +- Nehalem-IBRS +- Nehalem +- IvyBridge-IBRS +- IvyBridge +- Icelake-Server-noTSX +- Icelake-Server +- Icelake-Client-noTSX +- Icelake-Client +- Haswell-noTSX-IBRS +- Haswell-noTSX +- Haswell-IBRS +- Haswell +- EPYC-Rome +- EPYC-Milan +- EPYC-IBPB +- EPYC +- Dhyana +- Cooperlake +- Conroe +- Cascadelake-Server-noTSX +- Cascadelake-Server +- Broadwell-noTSX-IBRS +- Broadwell-noTSX +- Broadwell-IBRS +- Broadwell +- 486 ++ qemu64 ++ qemu32 ++ phenom ++ pentium3 ++ pentium2 ++ pentium ++ n270 ++ kvm64 ++ kvm32 ++ coreduo ++ core2duo ++ athlon ++ Westmere-IBRS ++ Westmere ++ Snowridge ++ Skylake-Server-noTSX-IBRS ++ Skylake-Server-IBRS ++ Skylake-Server ++ Skylake-Client-noTSX-IBRS ++ Skylake-Client-IBRS ++ Skylake-Client ++ SandyBridge-IBRS ++ SandyBridge ++ Penryn ++ Opteron_G5 ++ Opteron_G4 ++ Opteron_G3 ++ Opteron_G2 ++ Opteron_G1 ++ Nehalem-IBRS ++ Nehalem ++ IvyBridge-IBRS ++ IvyBridge ++ Icelake-Server-noTSX ++ Icelake-Server ++ Icelake-Client-noTSX ++ Icelake-Client ++ Haswell-noTSX-IBRS ++ Haswell-noTSX ++ Haswell-IBRS ++ Haswell ++ EPYC-Rome ++ EPYC-Milan ++ EPYC-IBPB ++ EPYC ++ Dhyana ++ Cooperlake ++ Conroe ++ Cascadelake-Server-noTSX ++ Cascadelake-Server ++ Broadwell-noTSX-IBRS ++ Broadwell-noTSX ++ Broadwell-IBRS ++ Broadwell ++ 486 + + + +@@ -161,6 +163,7 @@ + vnc + spice + egl-headless ++ dbus + + + ++ ++ ++ usb ++ ++ ++ ++ ++ pty ++ unix ++ spicevmc ++ ++ + + + +@@ -233,6 +249,7 @@ + + + ++ + + + +diff --git a/virtinst/guest.py b/virtinst/guest.py +index c2244ae3..123abfb2 100644 +--- a/virtinst/guest.py ++++ b/virtinst/guest.py +@@ -1128,7 +1128,7 @@ class Guest(XMLBuilder): + + def _add_spice_channels(self): + if not self.lookup_domcaps().supports_channel_spicevmc(): +- return ++ return # pragma: no cover + if self.skip_default_channel: + return + for chn in self.devices.channel: +@@ -1158,7 +1158,7 @@ class Guest(XMLBuilder): + + def _add_spice_usbredir(self): + if not self.lookup_domcaps().supports_redirdev_usb(): +- return ++ return # pragma: no cover + if self.skip_default_usbredir: + return + if self.devices.redirdev: diff --git a/024-progress-Fix-showing-correct-final-total.patch b/024-progress-Fix-showing-correct-final-total.patch new file mode 100644 index 0000000..9723665 --- /dev/null +++ b/024-progress-Fix-showing-correct-final-total.patch @@ -0,0 +1,109 @@ +Subject: progress: Fix showing correct final total +From: Cole Robinson crobinso@redhat.com Wed Dec 14 12:57:10 2022 -0500 +Date: Wed Dec 14 13:01:48 2022 -0500: +Git: 4114fa1aa827b836d3a1d11c2ac2d367c9bb0463 + +Reproducer: +Reproducer: +./virt-install --connect test:///default \ + --location tests/data/fakemedia/fake-f26-netinst.iso + +Before: +Starting install... +Retrieving 'vmlinuz' | 0 B 00:00:00 ... +Retrieving 'initrd.img' | 0 B 00:00:00 ... + +After: +Starting install... +Retrieving 'vmlinuz' | 9 B 00:00:00 ... +Retrieving 'initrd.img' | 9 B 00:00:00 ... + +progress.end() currently only reports the total amount of bytes +that were last written to the UI. It should report the total amount +that's been passed to update(). + +Reported-by: Toshiki Sonoda +Signed-off-by: Cole Robinson + +diff --git a/tests/data/meter/meter1.txt b/tests/data/meter/meter1.txt +index a3f7c7d2..7e154c97 100644 +--- a/tests/data/meter/meter1.txt ++++ b/tests/data/meter/meter1.txt +@@ -9,4 +9,4 @@ Meter text test 20% [=== ] 413 B/s | 2.0 kB 00:19 ETA + + Meter text test 40% [======- ] 731 B/s | 3.9 kB 00:08 ETA + +-Meter text test | 3.9 kB 00:04 ... ++Meter text test | 4.4 kB 00:04 ... +diff --git a/tests/data/meter/meter2.txt b/tests/data/meter/meter2.txt +index 93e93dc3..7ccc3163 100644 +--- a/tests/data/meter/meter2.txt ++++ b/tests/data/meter/meter2.txt +@@ -9,4 +9,4 @@ Meter text test 20% [======= + + Meter text test 40% [============== ] 731 B/s | 3.9 kB 00:00:08 ETA + +-Meter text test | 3.9 kB 00:00:04 ... ++Meter text test | 4.4 kB 00:00:04 ... +diff --git a/tests/data/meter/meter3.txt b/tests/data/meter/meter3.txt +index 474e40f7..6f66608f 100644 +--- a/tests/data/meter/meter3.txt ++++ b/tests/data/meter/meter3.txt +@@ -4,4 +4,4 @@ Meter text test 67 B/s | 200 B 00:02 + Meter text test 413 B/s | 2.0 kB 00:03 + Meter text test 731 B/s | 3.9 kB 00:04 + +-Meter text test | 3.9 kB 00:04 ++Meter text test | 4.4 kB 00:04 +diff --git a/tests/data/meter/meter5.txt b/tests/data/meter/meter5.txt +index 1d232a5d..7142a971 100644 +--- a/tests/data/meter/meter5.txt ++++ b/tests/data/meter/meter5.txt +@@ -9,4 +9,4 @@ Meter text test 1000% [================] 413 B/s | 2.0 kB --:-- ETA + + Meter text test 2000% [================] 731 B/s | 3.9 kB --:-- ETA + +-Meter text test | 3.9 kB 00:04 !!! ++Meter text test | 4.4 kB 00:04 !!! +diff --git a/tests/data/meter/meter6.txt b/tests/data/meter/meter6.txt +index 07d99bfd..dd5d3d47 100644 +--- a/tests/data/meter/meter6.txt ++++ b/tests/data/meter/meter6.txt +@@ -9,4 +9,4 @@ Meter text test 100% [================] 413 B/s | 2.0 kB --:-- ETA + + Meter text test 100% [================] 731 B/s | 3.9 kB --:-- ETA + +-Meter text test | 3.9 kB 00:04 ++Meter text test | 4.4 kB 00:04 +diff --git a/tests/test_misc.py b/tests/test_misc.py +index aa610f4d..20f5a626 100644 +--- a/tests/test_misc.py ++++ b/tests/test_misc.py +@@ -178,7 +178,9 @@ def test_misc_meter(): + m.update(2000) + with unittest.mock.patch("time.time", return_value=5.0): + m.update(4000) +- with unittest.mock.patch("time.time", return_value=6.0): ++ with unittest.mock.patch("time.time", return_value=5.1): ++ m.update(4500) ++ with unittest.mock.patch("time.time", return_value=5.5): + m.end() + + # Basic output testing +diff --git a/virtinst/_progresspriv.py b/virtinst/_progresspriv.py +index 5a31a18c..a035c9c4 100644 +--- a/virtinst/_progresspriv.py ++++ b/virtinst/_progresspriv.py +@@ -112,10 +112,10 @@ class BaseMeter: + assert type(amount_read) is int + + now = time.time() ++ self.last_amount_read = amount_read ++ self.re.update(amount_read, now) + if (not self.last_update_time or + (now >= self.last_update_time + self.update_period)): +- self.re.update(amount_read, now) +- self.last_amount_read = amount_read + self.last_update_time = now + self._do_update(amount_read) + diff --git a/025-virtinstall-Fix-the-allocating-disk-size-printed-by-the-progress-bar.patch b/025-virtinstall-Fix-the-allocating-disk-size-printed-by-the-progress-bar.patch new file mode 100644 index 0000000..87c9d1d --- /dev/null +++ b/025-virtinstall-Fix-the-allocating-disk-size-printed-by-the-progress-bar.patch @@ -0,0 +1,27 @@ +Subject: virtinstall: Fix the allocating disk size printed by the progress bar +From: Toshiki Sonoda sonoda.toshiki@fujitsu.com Wed Nov 9 18:33:56 2022 +0900 +Date: Wed Dec 14 13:07:26 2022 -0500: +Git: 39c7a443146433766e4e71e48ab59145c74924b3 + +When a sparse file is created during a disk allocation, +virt-install prints not the created disk size but a sparse file size. + +Therefore, we fix to print the created disk size during disk allocation +instead of the size of the sparse file by updating the meter with the +self.capacity. + +Signed-off-by: Toshiki Sonoda +Signed-off-by: Haruka Ohata + +diff --git a/virtinst/storage.py b/virtinst/storage.py +index 3c5d39bb..f9a9f7a7 100644 +--- a/virtinst/storage.py ++++ b/virtinst/storage.py +@@ -695,6 +695,7 @@ class StorageVolume(_StorageObject): + log.debug("Using vol create flags=%s", createflags) + vol = self.pool.createXML(xml, createflags) + ++ meter.update(self.capacity) + meter.end() + log.debug("Storage volume '%s' install complete.", self.name) + return vol diff --git a/026-virtinstall-Hide-total_size-in-the-progress-bar-if-it-doesnt-need.patch b/026-virtinstall-Hide-total_size-in-the-progress-bar-if-it-doesnt-need.patch new file mode 100644 index 0000000..448e486 --- /dev/null +++ b/026-virtinstall-Hide-total_size-in-the-progress-bar-if-it-doesnt-need.patch @@ -0,0 +1,72 @@ +Subject: virtinstall: Hide total_size in the progress bar if it doesn't need +From: Toshiki Sonoda sonoda.toshiki@fujitsu.com Wed Nov 9 18:33:57 2022 +0900 +Date: Wed Dec 14 13:18:36 2022 -0500: +Git: 6ec00474a659158f20248d6af3771d1a12ddac7b + +virt-install prints the total_size value to the progress bar even if it +is meaningless. +This value can be confusing to user, so for execute prosess that doesn't +copy files (total_size = 0B), we hide the total_size value. +For example, 'Creating domain...' doesn't need to print the total_size +value. + +Signed-off-by: Toshiki Sonoda +Signed-off-by: Haruka Ohata + +diff --git a/tests/data/meter/meter-zero.txt b/tests/data/meter/meter-zero.txt +new file mode 100644 +index 00000000..fc81f21f +--- /dev/null ++++ b/tests/data/meter/meter-zero.txt +@@ -0,0 +1,4 @@ ++ ++Meter text test 100% [================] 0 B/s | 0 B --:-- ETA ++ ++Meter text test | 00:02 +diff --git a/tests/test_misc.py b/tests/test_misc.py +index 20f5a626..2cabc338 100644 +--- a/tests/test_misc.py ++++ b/tests/test_misc.py +@@ -224,6 +224,20 @@ def test_misc_meter(): + out = meter.output.getvalue().replace("\r", "\n") + utils.diff_compare(out, os.path.join(utils.DATADIR, "meter", "meter6.txt")) + ++ def _test_meter_zero(m, startval=0, text="Meter text test"): ++ with unittest.mock.patch("time.time", return_value=1.0): ++ m.start(text, startval) ++ with unittest.mock.patch("time.time", return_value=3.0): ++ m.update(0) ++ with unittest.mock.patch("time.time", return_value=3.1): ++ m.end() ++ ++ # meter with size 0 and startval size 0 ++ meter = _progresspriv.TextMeter(output=io.StringIO()) ++ _test_meter_zero(meter, 0) ++ out = meter.output.getvalue().replace("\r", "\n") ++ utils.diff_compare(out, os.path.join(utils.DATADIR, "meter", "meter-zero.txt")) ++ + # BaseMeter coverage + meter = _progresspriv.BaseMeter() + _test_meter_values(meter) +diff --git a/virtinst/_progresspriv.py b/virtinst/_progresspriv.py +index a035c9c4..207c6479 100644 +--- a/virtinst/_progresspriv.py ++++ b/virtinst/_progresspriv.py +@@ -247,11 +247,15 @@ class TextMeter(BaseMeter): + tl = TerminalLine(8) + # For big screens, make it more readable. + use_hours = bool(tl.llen > 80) +- ui_size = tl.add(' | %5sB' % total_size) + ui_time = tl.add(' %s' % format_time(self.re.elapsed_time(), + use_hours)) + ui_end, not_done = _term_add_end(tl, self.size, amount_read) +- dummy = not_done ++ if not not_done and amount_read == 0: ++ # Doesn't need to print total_size ++ ui_size = tl.add(' | %5s ' % ' ') ++ else: ++ ui_size = tl.add(' | %5sB' % total_size) ++ + out = '\r%-*.*s%s%s%s\n' % (tl.rest(), tl.rest(), self.text, + ui_size, ui_time, ui_end) + self.output.write(out) diff --git a/027-asyncjob-Fix-backtrace-when-no-cursor-theme-installed.patch b/027-asyncjob-Fix-backtrace-when-no-cursor-theme-installed.patch new file mode 100644 index 0000000..d663384 --- /dev/null +++ b/027-asyncjob-Fix-backtrace-when-no-cursor-theme-installed.patch @@ -0,0 +1,24 @@ +Subject: asyncjob: Fix backtrace when no cursor theme installed +From: Cole Robinson crobinso@redhat.com Thu Jan 19 11:13:56 2023 -0500 +Date: Thu Jan 19 11:40:37 2023 -0500: +Git: cc4a39ea94f42bc92765eb3bb56e2b7f9198be67 + +Fixes: https://github.com/virt-manager/virt-manager/issues/479 + +Signed-off-by: Cole Robinson + +diff --git a/virtManager/asyncjob.py b/virtManager/asyncjob.py +index 32d9c0a1..46692ace 100644 +--- a/virtManager/asyncjob.py ++++ b/virtManager/asyncjob.py +@@ -265,9 +265,7 @@ class vmmAsyncJob(vmmGObjectUI): + self.topwin.present() + + if not self.cancel_cb and self.show_progress: +- gdk_window = self.topwin.get_window() +- gdk_window.set_cursor( +- Gdk.Cursor.new_from_name(gdk_window.get_display(), "progress")) ++ self._set_cursor("progress") + self._bg_thread.start() + + diff --git a/029-asyncjob-Remove-unused-import.patch b/029-asyncjob-Remove-unused-import.patch new file mode 100644 index 0000000..45d80e6 --- /dev/null +++ b/029-asyncjob-Remove-unused-import.patch @@ -0,0 +1,19 @@ +Subject: asyncjob: Remove unused import +From: Cole Robinson crobinso@redhat.com Thu Jan 19 11:59:20 2023 -0500 +Date: Thu Jan 19 11:59:20 2023 -0500: +Git: fe86f4639f6e055f1e107fed9e0eb8be3fb2a66f + +Signed-off-by: Cole Robinson + +diff --git a/virtManager/asyncjob.py b/virtManager/asyncjob.py +index 46692ace..958320b2 100644 +--- a/virtManager/asyncjob.py ++++ b/virtManager/asyncjob.py +@@ -7,7 +7,6 @@ + import threading + import traceback + +-from gi.repository import Gdk + from gi.repository import GLib + + import libvirt diff --git a/030-Packit-initial-enablement.patch b/030-Packit-initial-enablement.patch new file mode 100644 index 0000000..c2f92a1 --- /dev/null +++ b/030-Packit-initial-enablement.patch @@ -0,0 +1,36 @@ +Subject: Packit: initial enablement +From: Lokesh Mandvekar lsm5@fedoraproject.org Mon Dec 5 17:14:30 2022 +0530 +Date: Thu Jan 19 14:04:42 2023 -0500: +Git: a63b40aae3835a8b82b23755f1ed45e526af80f9 + +This commit enables Packit `copr_build` tasks which will run on every PR +and build RPMS using the spec file present upstream with Source0 as +the archive created from HEAD commit of the PR. + +Signed-off-by: Lokesh Mandvekar + +diff --git a/.packit.yaml b/.packit.yaml +new file mode 100644 +index 00000000..15798fe9 +--- /dev/null ++++ b/.packit.yaml +@@ -0,0 +1,19 @@ ++# See the documentation for more information: ++# https://packit.dev/docs/configuration/ ++ ++upstream_package_name: virt-manager ++downstream_package_name: virt-manager ++ ++specfile_path: virt-manager.spec ++ ++jobs: ++ - job: copr_build ++ # Run on every PR ++ trigger: pull_request ++ # Defaults to x86_64 unless architecture is explicitly specified ++ targets: ++ - fedora-rawhide-aarch64 ++ - fedora-rawhide-i386 ++ - fedora-rawhide-ppc64le ++ - fedora-rawhide-s390x ++ - fedora-rawhide-x86_64 diff --git a/031-virt-install-Recommend-boot-uefi.patch b/031-virt-install-Recommend-boot-uefi.patch new file mode 100644 index 0000000..27bd1fe --- /dev/null +++ b/031-virt-install-Recommend-boot-uefi.patch @@ -0,0 +1,31 @@ +Subject: virt-install: Recommend '--boot uefi' +From: Andrea Bolognani abologna@redhat.com Mon Dec 12 19:32:32 2022 +0100 +Date: Thu Feb 9 11:41:00 2023 -0500: +Git: f2b5aaf458764ec7ecf105038e5f2f7cc26b6c17 + +Firmware autoselection is the way to go in most cases, so +recommend that instead of telling users that they should provide +all information manually. + +Signed-off-by: Andrea Bolognani + +diff --git a/man/virt-install.rst b/man/virt-install.rst +index 3a6e8dcd..684f2265 100644 +--- a/man/virt-install.rst ++++ b/man/virt-install.rst +@@ -955,13 +955,13 @@ Some examples: + Configure the VM to boot from UEFI. In order for virt-install to know the + correct UEFI parameters, libvirt needs to be advertising known UEFI binaries + via domcapabilities XML, so this will likely only work if using properly +- configured distro packages. ++ configured distro packages. This is the recommended UEFI setup. + + ``--boot loader=/.../OVMF_CODE.fd,loader.readonly=yes,loader.type=pflash,nvram.template=/.../OVMF_VARS.fd,loader_secure=no`` + Specify that the virtual machine use the custom OVMF binary as boot firmware, + mapped as a virtual flash chip. In addition, request that libvirt instantiate + the VM-specific UEFI varstore from the custom "/.../OVMF_VARS.fd" varstore +- template. This is the recommended UEFI setup, and should be used if ++ template. This setup is not recommended, and should only be used if + --boot uefi doesn't know about your UEFI binaries. If your UEFI firmware + supports Secure boot feature you can enable it via loader_secure. + diff --git a/032-virt-install-Document-Secure-Boot-setups.patch b/032-virt-install-Document-Secure-Boot-setups.patch new file mode 100644 index 0000000..12c086b --- /dev/null +++ b/032-virt-install-Document-Secure-Boot-setups.patch @@ -0,0 +1,51 @@ +Subject: virt-install: Document Secure Boot setups +From: Andrea Bolognani abologna@redhat.com Mon Dec 12 19:38:22 2022 +0100 +Date: Thu Feb 9 11:41:00 2023 -0500: +Git: 33ff193ee9fcfdb74f95d946a1b93239a1a12a61 + +Provide ready to use recipes for explicitly enabling and +explicitly disabling Secure Boot, as well as a pointer to +the more extensive information found on the libvirt website. + +Setting loader_secure=yes is only one part of a proper Secure +Boot setup, so stop documenting it in the section about manual +firmware selection to avoid confusion. + +https://bugzilla.redhat.com/show_bug.cgi?id=2112154 +https://bugzilla.redhat.com/show_bug.cgi?id=2149971 + +Signed-off-by: Andrea Bolognani + +diff --git a/man/virt-install.rst b/man/virt-install.rst +index 684f2265..a0df7328 100644 +--- a/man/virt-install.rst ++++ b/man/virt-install.rst +@@ -957,13 +957,26 @@ Some examples: + via domcapabilities XML, so this will likely only work if using properly + configured distro packages. This is the recommended UEFI setup. + ++``--boot uefi,firmware.feature0.name=secure-boot,firmware.feature0.enabled=yes,firmware.feature1.name=enrolled-keys,firmware.feature1.enabled=yes`` ++ Configure the VM to boot from UEFI with Secure Boot support enabled. ++ Only signed operating systems will be able to boot with this configuration. ++ ++``--boot uefi,firmware.feature0.name=secure-boot,firmware.feature0.enabled=no`` ++ Configure the VM to boot from UEFI with Secure Boot support disabled. ++ This configuration allows both signed and unsigned operating systems to ++ run. ++ ++ Additional information about the ``secure-boot`` and ++ ``enrolled-keys`` firmware features and how they can be used to ++ influence firmware selection is available at ++ https://libvirt.org/kbase/secureboot.html ++ + ``--boot loader=/.../OVMF_CODE.fd,loader.readonly=yes,loader.type=pflash,nvram.template=/.../OVMF_VARS.fd,loader_secure=no`` + Specify that the virtual machine use the custom OVMF binary as boot firmware, + mapped as a virtual flash chip. In addition, request that libvirt instantiate + the VM-specific UEFI varstore from the custom "/.../OVMF_VARS.fd" varstore + template. This setup is not recommended, and should only be used if +- --boot uefi doesn't know about your UEFI binaries. If your UEFI firmware +- supports Secure boot feature you can enable it via loader_secure. ++ --boot uefi doesn't know about your UEFI binaries. + + Use --boot=? to see a list of all available sub options. + Complete details at https://libvirt.org/formatdomain.html#elementsOS diff --git a/033-cloner-clone-serial-files.patch b/033-cloner-clone-serial-files.patch new file mode 100644 index 0000000..9879375 --- /dev/null +++ b/033-cloner-clone-serial-files.patch @@ -0,0 +1,97 @@ +Subject: cloner: clone serial files +From: Oleg Vasilev oleg.vasilev@virtuozzo.com Wed Nov 30 22:01:08 2022 +0600 +Date: Wed Mar 22 17:44:06 2023 -0400: +Git: b2f6e953831aba9ab7cc4b8673c237c3bb434100 + +Before this, on clone the serial file would remain the same for the cloned +domain. This doesn't make much sense as the output would be an intermix of two +unrelated output sequences. + +Here we apply the the same filename changing algorithm, as with disk files. + +Signed-off-by: Oleg Vasilev + +diff --git a/virtinst/cloner.py b/virtinst/cloner.py +index 9334513c..556bfdbb 100644 +--- a/virtinst/cloner.py ++++ b/virtinst/cloner.py +@@ -9,6 +9,7 @@ + + import re + import os ++from itertools import chain + + import libvirt + +@@ -20,6 +21,7 @@ from .devices import DeviceInterface + from .devices import DeviceDisk + from .logger import log + from .devices import DeviceChannel ++from .devices import DeviceSerial + + + def _replace_vm(conn, name): +@@ -70,9 +72,9 @@ def _generate_clone_name(conn, basename): + sep="", start_num=start_num, force_num=force_num) + + +-def _generate_clone_disk_path(conn, origname, newname, origpath): ++def _generate_clone_path(origname, newname, origpath, cb_exists): + """ +- Generate desired cloned disk path name, derived from the ++ Generate desired cloned path for auxiliary files, derived from the + original path, original VM name, and proposed new VM name + """ + if origpath is None: +@@ -99,9 +101,7 @@ def _generate_clone_disk_path(conn, origname, newname, origpath): + clonebase = newname + + clonebase = os.path.join(dirname, clonebase) +- def cb(p): +- return DeviceDisk.path_definitely_exists(conn, p) +- return generatename.generate_name(clonebase, cb, suffix=suffix) ++ return generatename.generate_name(clonebase, cb_exists, suffix=suffix) + + + def _lookup_vm(conn, name): +@@ -287,7 +287,9 @@ class Cloner(object): + + @staticmethod + def generate_clone_disk_path(conn, origname, newname, origpath): +- return _generate_clone_disk_path(conn, origname, newname, origpath) ++ def cb_exists(p): ++ return DeviceDisk.path_definitely_exists(conn, p) ++ return _generate_clone_path(origname, newname, origpath, cb_exists) + + @staticmethod + def build_clone_disk(orig_disk, clonepath, allow_create, sparse): +@@ -455,6 +457,21 @@ class Cloner(object): + # Functional methods # + ###################### + ++ def _prepare_serial_files(self): ++ for serial in chain(self._new_guest.devices.console, ++ self._new_guest.devices.serial): ++ if serial.type != DeviceSerial.TYPE_FILE: ++ continue ++ ++ def cb_exists(path): ++ # Ignore the check for now ++ return False ++ ++ serial.source.path = _generate_clone_path(self.src_name, ++ self.new_guest.name, ++ serial.source.path, ++ cb_exists=cb_exists) ++ + def _prepare_nvram(self): + if not self._nvram_diskinfo: + return +@@ -534,6 +551,7 @@ class Cloner(object): + xmldisk.set_source_path(new_disk.get_source_path()) + + self._prepare_nvram() ++ self._prepare_serial_files() + + # Save altered clone xml + diff = xmlutil.diff(self._src_guest.get_xml(), diff --git a/034-tests-cli-test-serial-file-clone.patch b/034-tests-cli-test-serial-file-clone.patch new file mode 100644 index 0000000..7c1794b --- /dev/null +++ b/034-tests-cli-test-serial-file-clone.patch @@ -0,0 +1,114 @@ +Subject: tests: cli: test serial file clone +From: Oleg Vasilev oleg.vasilev@virtuozzo.com Thu Dec 1 19:52:47 2022 +0600 +Date: Wed Mar 22 17:44:06 2023 -0400: +Git: 77695484117b6a931041454865277e898c0fe5f6 + +Previous commit added serial file clone, now we test it. + +Signed-off-by: Oleg Vasilev + +--- /dev/null ++++ b/tests/data/cli/compare/virt-clone-serial.xml +@@ -0,0 +1,31 @@ ++ ++ __virtinst_cli_test-clone1 ++ 00000000-1111-2222-3333-444444444444 ++ 8388608 ++ 2097152 ++ 2 ++ ++ hvm ++ ++ ++ ++ destroy ++ restart ++ destroy ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +--- /dev/null ++++ b/tests/data/cli/virtclone/clone-serial.xml +@@ -0,0 +1,31 @@ ++ ++ __virtinst_cli_test-clone ++ 00000000-1111-2222-3333-444444444444 ++ 8388608 ++ 2097152 ++ 2 ++ ++ hvm ++ ++ ++ ++ destroy ++ restart ++ destroy ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ ++ +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -52,12 +52,18 @@ NEW_FILES = [ + TMP_IMAGE_DIR + "new3.img", + TMP_IMAGE_DIR + "exist1-clone.img", + TMP_IMAGE_DIR + "exist2-clone.img", ++ ++ TMP_IMAGE_DIR + "test-clone1.file", ++ TMP_IMAGE_DIR + "other-serial-clone.file", ++ TMP_IMAGE_DIR + "serial-exists-clone-1.file", + ] + + # Images that are expected to exist before a command is run + EXIST_FILES = [ + TMP_IMAGE_DIR + "exist1.img", + TMP_IMAGE_DIR + "exist2.img", ++ ++ TMP_IMAGE_DIR + "serial-exists-clone.file", + ] + + +@@ -1491,6 +1497,7 @@ _CLONE_NVRAM_MISSING = "--original-xml % + _CLONE_EMPTY = "--original-xml %s/clone-empty.xml" % _CLONEXMLDIR + _CLONE_NET_RBD = "--original-xml %s/clone-net-rbd.xml" % _CLONEXMLDIR + _CLONE_NET_HTTP = "--original-xml %s/clone-net-http.xml" % _CLONEXMLDIR ++_CLONE_SERIAL = "--original-xml %s/clone-serial.xml" % _CLONEXMLDIR + + + vclon = App("virt-clone") +@@ -1514,6 +1521,7 @@ c.add_compare(_CLONE_EMPTY + " --auto-cl + c.add_compare("--connect %(URI-KVM-X86)s -o test-clone-simple --auto -f /foo.img --print-xml", "pool-test-cross-pool") # cross pool cloning which fails with test driver but let's confirm the XML + c.add_compare(_CLONE_MANAGED + " --auto-clone", "auto-managed") # Auto flag w/ managed storage + c.add_compare(_CLONE_UNMANAGED + " --auto-clone", "auto-unmanaged") # Auto flag w/ local storage ++c.add_compare(_CLONE_SERIAL + " --auto-clone", "serial") # Auto flag w/ serial console + c.add_valid("--connect %(URI-TEST-FULL)s -o test-clone --auto-clone --nonsparse") # Auto flag, actual VM, skip state check + c.add_valid("--connect %(URI-TEST-FULL)s -o test-clone-simple -n newvm --preserve-data --file %(EXISTIMG1)s") # Preserve data shouldn't complain about existing volume + c.add_valid("-n clonetest " + _CLONE_UNMANAGED + " --file %(EXISTIMG3)s --file %(EXISTIMG4)s --check path_exists=off") # Skip existing file check diff --git a/035-man-virt-install-Add-a-note-about-different-behavior-of-boot-on-s390x.patch b/035-man-virt-install-Add-a-note-about-different-behavior-of-boot-on-s390x.patch new file mode 100644 index 0000000..d694632 --- /dev/null +++ b/035-man-virt-install-Add-a-note-about-different-behavior-of-boot-on-s390x.patch @@ -0,0 +1,32 @@ +Subject: man/virt-install: Add a note about different behavior of --boot on s390x +From: Thomas Huth thuth@redhat.com Tue Jan 31 12:35:49 2023 +0100 +Date: Wed Mar 22 17:45:31 2023 -0400: +Git: 102fe52165535f9da9c9f370c6d1c399458ed4dc + +It is common on x86 and other architectures to install a guest from +network by using "--boot hd,network" with virt-install - as long as +the hard disk is not bootable yet, the installation will be started +via network, and once it finished, the guest can boot from hd during +the next reboot. + +However, this does not work on s390x since this architecture only +supports one single boot device to be passed to the guest. Thus add +a note to the documentation to avoid that people are running again +into this common pitfall. + +Buglink: https://bugzilla.redhat.com/show_bug.cgi?id=2032472 +Signed-off-by: Thomas Huth + +diff --git a/man/virt-install.rst b/man/virt-install.rst +index a0df7328..8959df7c 100644 +--- a/man/virt-install.rst ++++ b/man/virt-install.rst +@@ -929,6 +929,8 @@ Some examples: + ``--boot cdrom,fd,hd,network`` + Set the boot device priority as first cdrom, first floppy, first harddisk, + network PXE boot. ++ Note: s390x guests only support one boot device, so everything except ++ the first device type will be ignored. + + ``--boot kernel=KERNEL,initrd=INITRD,kernel_args="console=/dev/ttyS0"`` + Have guest permanently boot off a local kernel/initrd pair, with the diff --git a/036-tests-uitests-Fix-window-reposition-on-f38.patch b/036-tests-uitests-Fix-window-reposition-on-f38.patch new file mode 100644 index 0000000..c8ea6c3 --- /dev/null +++ b/036-tests-uitests-Fix-window-reposition-on-f38.patch @@ -0,0 +1,20 @@ +Subject: tests: uitests: Fix window reposition on f38 +From: Cole Robinson crobinso@redhat.com Fri May 5 14:54:31 2023 -0400 +Date: Fri May 5 14:54:31 2023 -0400: +Git: 909c8aa880396fecb3e1fa174bdf89ce5e8b36c8 + +Signed-off-by: Cole Robinson + +diff --git a/tests/uitests/lib/app.py b/tests/uitests/lib/app.py +index 221808d0..83628a7f 100644 +--- a/tests/uitests/lib/app.py ++++ b/tests/uitests/lib/app.py +@@ -222,7 +222,7 @@ class VMMDogtailApp(object): + # Give time for the child window to appear and possibly grab focus + self.sleep(1) + self.get_manager(check_active=False) +- dogtail.rawinput.drag(childwin.title_coordinates(), (1000, 1000)) ++ dogtail.rawinput.dragWithTrajectory(childwin.title_coordinates(), (1000, 1000)) + self.manager_conn_disconnect(conn_label) + utils.check(lambda: not childwin.showing) + diff --git a/037-tests-livetests-work-around-qemu-media-change-regression.patch b/037-tests-livetests-work-around-qemu-media-change-regression.patch new file mode 100644 index 0000000..886598d --- /dev/null +++ b/037-tests-livetests-work-around-qemu-media-change-regression.patch @@ -0,0 +1,28 @@ +Subject: tests: livetests: work around qemu media change regression +From: Cole Robinson crobinso@redhat.com Fri May 5 15:47:25 2023 -0400 +Date: Fri May 5 15:47:25 2023 -0400: +Git: 7f83d23f4fd0772acd5eab2145667686770dfd9d + +Signed-off-by: Cole Robinson + +diff --git a/tests/uitests/test_livetests.py b/tests/uitests/test_livetests.py +index 3ac0133b..72a96a10 100644 +--- a/tests/uitests/test_livetests.py ++++ b/tests/uitests/test_livetests.py +@@ -471,9 +471,16 @@ def _testLiveHotplug(app, fname): + lib.utils.check(lambda: tab.showing) + entry.set_text(fname) + appl.click() ++ # F38 CDROM change is broken: ++ # https://gitlab.com/qemu-project/qemu/-/issues/933 ++ # pylint: disable=unreachable ++ app.click_alert_button("changes will take effect", "OK") ++ return ++ + lib.utils.check(lambda: not appl.sensitive) + lib.utils.check(lambda: entry.text == fname) + entry.click_secondary_icon() ++ + appl.click() + lib.utils.check(lambda: not appl.sensitive) + lib.utils.check(lambda: not entry.text) diff --git a/038-tests-uitests-Fix-manager-window-repositioning-test.patch b/038-tests-uitests-Fix-manager-window-repositioning-test.patch new file mode 100644 index 0000000..5286b94 --- /dev/null +++ b/038-tests-uitests-Fix-manager-window-repositioning-test.patch @@ -0,0 +1,33 @@ +Subject: tests: uitests: Fix manager window repositioning test +From: Cole Robinson crobinso@redhat.com Fri May 5 15:36:26 2023 -0400 +Date: Fri May 5 15:48:24 2023 -0400: +Git: 6030049cd7e24f59581b818c5da53665d0a76d6c + +Signed-off-by: Cole Robinson + +diff --git a/tests/uitests/test_manager.py b/tests/uitests/test_manager.py +index 40329022..b01c3691 100644 +--- a/tests/uitests/test_manager.py ++++ b/tests/uitests/test_manager.py +@@ -228,15 +228,17 @@ def testManagerWindowReposition(app): + fmenu.find("View Manager", "menu item").click() + lib.utils.check(lambda: manager.active) + +- manager.window_maximize() +- newx = manager.position[0] +- newy = manager.position[1] ++ curxy = manager.title_coordinates() ++ newxy = curxy[0] + 200, curxy[1] + 200 ++ import dogtail.rawinput ++ dogtail.rawinput.dragWithTrajectory(curxy, newxy) ++ checkxy = manager.position + manager.window_close() + host.click_title() + host.find("File", "menu").click() + host.find("View Manager", "menu item").click() + lib.utils.check(lambda: manager.showing) +- assert manager.position == (newx, newy) ++ assert manager.position == checkxy + + + diff --git a/039-tests-Default-uitests-to-verbosity-2.patch b/039-tests-Default-uitests-to-verbosity-2.patch new file mode 100644 index 0000000..471804a --- /dev/null +++ b/039-tests-Default-uitests-to-verbosity-2.patch @@ -0,0 +1,22 @@ +Subject: tests: Default --uitests to --verbosity=2 +From: Cole Robinson crobinso@redhat.com Sat May 6 16:50:20 2023 -0400 +Date: Sat May 6 16:50:20 2023 -0400: +Git: a9cf4945b1dcd45fb205c4adc6f555f2fc47ecfa + +Signed-off-by: Cole Robinson + +diff --git a/tests/conftest.py b/tests/conftest.py +index 3d1ca7d1..4a0fc1a0 100644 +--- a/tests/conftest.py ++++ b/tests/conftest.py +@@ -40,6 +40,10 @@ def pytest_addoption(parser): + def pytest_ignore_collect(path, config): + uitests_requested = config.getoption("--uitests") + ++ # Default --uitests to --verbosity=2 ++ if uitests_requested: ++ config.option.verbose = max(2, config.option.verbose) ++ + # Unless explicitly requested, ignore these tests + if "test_dist.py" in str(path): + return True diff --git a/040-uitests-Make-hotplug-test-pass-on-both-f37-and-f38.patch b/040-uitests-Make-hotplug-test-pass-on-both-f37-and-f38.patch new file mode 100644 index 0000000..db8a47f --- /dev/null +++ b/040-uitests-Make-hotplug-test-pass-on-both-f37-and-f38.patch @@ -0,0 +1,31 @@ +Subject: uitests: Make hotplug test pass on both f37 and f38 +From: Cole Robinson crobinso@redhat.com Sat May 6 13:13:22 2023 -0400 +Date: Sat May 6 19:43:24 2023 -0400: +Git: 75422ec75efe254beb8dc85f75715d71fa3ec859 + +Signed-off-by: Cole Robinson + +diff --git a/tests/uitests/test_livetests.py b/tests/uitests/test_livetests.py +index 72a96a10..55c9066b 100644 +--- a/tests/uitests/test_livetests.py ++++ b/tests/uitests/test_livetests.py +@@ -471,11 +471,15 @@ def _testLiveHotplug(app, fname): + lib.utils.check(lambda: tab.showing) + entry.set_text(fname) + appl.click() +- # F38 CDROM change is broken: +- # https://gitlab.com/qemu-project/qemu/-/issues/933 + # pylint: disable=unreachable +- app.click_alert_button("changes will take effect", "OK") +- return ++ import dogtail.tree ++ try: ++ # F38 CDROM change is broken: ++ # https://gitlab.com/qemu-project/qemu/-/issues/933 ++ app.click_alert_button("changes will take effect", "OK") ++ return ++ except dogtail.tree.SearchError: ++ pass + + lib.utils.check(lambda: not appl.sensitive) + lib.utils.check(lambda: entry.text == fname) diff --git a/041-uitests-More-attempts-at-making-manager-reposition-test-reliable.patch b/041-uitests-More-attempts-at-making-manager-reposition-test-reliable.patch new file mode 100644 index 0000000..9d460eb --- /dev/null +++ b/041-uitests-More-attempts-at-making-manager-reposition-test-reliable.patch @@ -0,0 +1,38 @@ +Subject: uitests: More attempts at making manager reposition test reliable +From: Cole Robinson crobinso@redhat.com Sat May 6 13:34:13 2023 -0400 +Date: Sat May 6 19:43:24 2023 -0400: +Git: 509c95ddb9b3f30ea88a61b065cd920055faa5f4 + +Signed-off-by: Cole Robinson + +diff --git a/tests/uitests/test_manager.py b/tests/uitests/test_manager.py +index b01c3691..10709f09 100644 +--- a/tests/uitests/test_manager.py ++++ b/tests/uitests/test_manager.py +@@ -228,17 +228,21 @@ def testManagerWindowReposition(app): + fmenu.find("View Manager", "menu item").click() + lib.utils.check(lambda: manager.active) + ++ # Use alt+f7 combo to move window + curxy = manager.title_coordinates() +- newxy = curxy[0] + 200, curxy[1] + 200 +- import dogtail.rawinput +- dogtail.rawinput.dragWithTrajectory(curxy, newxy) +- checkxy = manager.position ++ newxy = (curxy[0] + 400, curxy[1] + 400) ++ manager.keyCombo("F7") ++ app.rawinput.click(*newxy) ++ checkxy = manager.position[0], manager.position[1] + manager.window_close() + host.click_title() + host.find("File", "menu").click() + host.find("View Manager", "menu item").click() + lib.utils.check(lambda: manager.showing) +- assert manager.position == checkxy ++ ++ # Results can be off by one or two, but it's not a virt-manager bug ++ assert abs(manager.position[0] - checkxy[0]) in range(3) ++ assert abs(manager.position[1] - checkxy[1]) in range(3) + + + diff --git a/042-tests-uitests-make-menu-operations-more-robust.patch b/042-tests-uitests-make-menu-operations-more-robust.patch new file mode 100644 index 0000000..e4267a6 --- /dev/null +++ b/042-tests-uitests-make-menu-operations-more-robust.patch @@ -0,0 +1,47 @@ +Subject: tests: uitests: make menu operations more robust +From: Cole Robinson crobinso@redhat.com Sat May 6 17:01:44 2023 -0400 +Date: Sat May 6 19:43:24 2023 -0400: +Git: 64bd6ba53e383c941df226bbb7f066b0a363d070 + +Signed-off-by: Cole Robinson + +diff --git a/tests/uitests/lib/_node.py b/tests/uitests/lib/_node.py +index 1c6cf107..ad95ff02 100644 +--- a/tests/uitests/lib/_node.py ++++ b/tests/uitests/lib/_node.py +@@ -221,24 +221,29 @@ class _VMMDogtailNode(dogtail.tree.Node): + clickX, clickY = self.title_coordinates() + dogtail.rawinput.click(clickX, clickY, button) + ++ def is_menuitem(self): ++ submenu = (self.roleName == "menu" and ++ (not self.accessible_parent or ++ self.accessible_parent.roleName == "menu")) ++ return submenu or self.roleName == "menu item" ++ + def click(self, *args, **kwargs): + """ +- click wrapper, give up to a second for widget to appear on +- screen, helps reduce some test flakiness ++ click wrapper, check some states first to reduce flakiness + """ + # pylint: disable=arguments-differ,signature-differs + self.check_onscreen() + self.check_sensitive() ++ if self.is_menuitem(): ++ self.point() + super().click(*args, **kwargs) + + def point(self, *args, **kwargs): + # pylint: disable=signature-differs + super().point(*args, **kwargs) + +- if (self.roleName == "menu" and +- self.accessible_parent.roleName == "menu"): +- # Widget is a submenu, make sure the item is in selected +- # state before we return ++ if self.is_menuitem(): ++ # Make sure item is selected before we return to caller + utils.check(lambda: self.state_selected) + + def set_text(self, text): diff --git a/043-rpm-convert-license-to-SPDX-format.patch b/043-rpm-convert-license-to-SPDX-format.patch new file mode 100644 index 0000000..3217109 --- /dev/null +++ b/043-rpm-convert-license-to-SPDX-format.patch @@ -0,0 +1,20 @@ +Subject: rpm: convert license to SPDX format +From: Daniel P. Berrangé berrange@redhat.com Wed Apr 26 17:49:37 2023 +0100 +Date: Sun May 7 12:40:05 2023 -0400: +Git: 6258d536895b1a64a81f111445994c35c0928d4b + +Signed-off-by: Daniel P. Berrangé + +diff --git a/virt-manager.spec b/virt-manager.spec +index 55c24405..5b939b5d 100644 +--- a/virt-manager.spec ++++ b/virt-manager.spec +@@ -12,7 +12,7 @@ Release: 1%{?dist} + %global verrel %{version}-%{release} + + Summary: Desktop tool for managing virtual machines via libvirt +-License: GPLv2+ ++License: GPL-2.0-or-later + BuildArch: noarch + URL: https://virt-manager.org/ + Source0: https://virt-manager.org/download/sources/%{name}/%{name}-%{version}.tar.gz diff --git a/044-uitests-Drop-hotplug-work-around-f38-libvirt-is-fixed-now.patch b/044-uitests-Drop-hotplug-work-around-f38-libvirt-is-fixed-now.patch new file mode 100644 index 0000000..7576fed --- /dev/null +++ b/044-uitests-Drop-hotplug-work-around-f38-libvirt-is-fixed-now.patch @@ -0,0 +1,27 @@ +Subject: uitests: Drop hotplug work around, f38 libvirt is fixed now +From: Cole Robinson crobinso@redhat.com Wed May 24 12:01:46 2023 -0400 +Date: Wed May 24 12:49:02 2023 -0400: +Git: 7cd6151a212c4c477a947fe5a7f2b3363dd0dcbd + +Signed-off-by: Cole Robinson + +diff --git a/tests/uitests/test_livetests.py b/tests/uitests/test_livetests.py +index 55c9066b..64ff7ad9 100644 +--- a/tests/uitests/test_livetests.py ++++ b/tests/uitests/test_livetests.py +@@ -471,15 +471,6 @@ def _testLiveHotplug(app, fname): + lib.utils.check(lambda: tab.showing) + entry.set_text(fname) + appl.click() +- # pylint: disable=unreachable +- import dogtail.tree +- try: +- # F38 CDROM change is broken: +- # https://gitlab.com/qemu-project/qemu/-/issues/933 +- app.click_alert_button("changes will take effect", "OK") +- return +- except dogtail.tree.SearchError: +- pass + + lib.utils.check(lambda: not appl.sensitive) + lib.utils.check(lambda: entry.text == fname) diff --git a/045-virtinst-delay-lookup_capsinfo-until-we-really-need-it.patch b/045-virtinst-delay-lookup_capsinfo-until-we-really-need-it.patch new file mode 100644 index 0000000..1a09d1e --- /dev/null +++ b/045-virtinst-delay-lookup_capsinfo-until-we-really-need-it.patch @@ -0,0 +1,68 @@ +Subject: virtinst: delay "lookup_capsinfo" until we really need it +From: Laszlo Ersek lersek@redhat.com Sat Aug 26 13:00:16 2023 +0200 +Date: Tue Aug 29 13:24:52 2023 +0200: +Git: 4ead4acb440e132c84f2e73365a1e419279d9fb9 + +When I try to open the details window for a domain that does not use the +system default emulator, I get the following exception: + +> Traceback (most recent call last): +> File "virtManager/vmwindow.py", line 40, in get_instance +> cls._instances[key] = vmmVMWindow(vm) +> File "virtManager/vmwindow.py", line 83, in __init__ +> self._details = vmmDetails(self.vm, self.builder, self.topwin, +> File "virtManager/details/details.py", line 389, in __init__ +> self._init_details() +> File "virtManager/details/details.py", line 807, in _init_details +> vmmAddHardware.build_video_combo(self.vm, video_dev) +> File "virtManager/addhardware.py", line 816, in build_video_combo +> default = DeviceVideo.default_model(vm.xmlobj) +> File "virtinst/devices/video.py", line 47, in default_model +> if (guest.lookup_domcaps().supports_video_virtio() and +> File "virtinst/guest.py", line 656, in lookup_domcaps +> if not self._domcaps or not _compare(self._domcaps): +> File "virtinst/guest.py", line 646, in _compare +> if self.os.machine and not _compare_machine(domcaps): +> File "virtinst/guest.py", line 633, in _compare_machine +> capsinfo = self.lookup_capsinfo() +> File "virtinst/guest.py", line 674, in lookup_capsinfo +> self._capsinfo = self.conn.caps.guest_lookup( +> File "virtinst/capabilities.py", line 319, in guest_lookup +> raise ValueError(msg) +> ValueError: Host does not support domain type kvm with machine +> 'pc-q35-8.1' for virtualization type 'hvm' with architecture 'x86_64' + +This is a regression; according to git-bisect, it was introduced in commit +05fcc7410eee ("virtinst: fix caching of domain capabilities", 2022-07-27). + +"lookup_capsinfo" (and "guest_lookup" called by it) are unsuitable for +machine type alias checking (or for anything else) if the domain uses an +emulator that differs from the system default emulator. The information +returned by virConnectGetCapabilities() pertains to the system default +emulator. Thus, when using a non-default emulator, we should either not +call "lookup_capsinfo" for machine type alias checking, *or* we should +suppress the exception, and pretend that the alias check was a mismatch. + +It turns out that we can avoid the "lookup_capsinfo" call (and thereby the +exception) in practice if we just delay the call until after the direct +(non-alias) comparison. + +Fixes: #539 +Fixes: 05fcc7410eee ("virtinst: fix caching of domain capabilities", 2022-07-27) +Signed-off-by: Laszlo Ersek + +diff --git a/virtinst/guest.py b/virtinst/guest.py +index 123abfb2..9232405b 100644 +--- a/virtinst/guest.py ++++ b/virtinst/guest.py +@@ -630,9 +630,9 @@ class Guest(XMLBuilder): + + def lookup_domcaps(self): + def _compare_machine(domcaps): +- capsinfo = self.lookup_capsinfo() + if self.os.machine == domcaps.machine: + return True ++ capsinfo = self.lookup_capsinfo() + if capsinfo.is_machine_alias(self.os.machine, domcaps.machine): + return True + return False diff --git a/046-virtinst-suppress-lookup_capsinfo-exception-in-machine-type-alias-check.patch b/046-virtinst-suppress-lookup_capsinfo-exception-in-machine-type-alias-check.patch new file mode 100644 index 0000000..6b00fad --- /dev/null +++ b/046-virtinst-suppress-lookup_capsinfo-exception-in-machine-type-alias-check.patch @@ -0,0 +1,52 @@ +Subject: virtinst: suppress "lookup_capsinfo" exception in machine type alias check +From: Laszlo Ersek lersek@redhat.com Sat Aug 26 13:38:42 2023 +0200 +Date: Tue Aug 29 13:24:52 2023 +0200: +Git: 7dbe973b3f3a4311094f772bca72bef58cfdf4d7 + +Just to be sure, this patch implements the second approach (described in +the previous patch) as well. + +Note that there is precedent for suppressing "guest_lookup" exceptions: +refer to the "Error determining machine list" branch from commit +ae7ebc220b15 ("details: Properly limit machine type list by guests +arch/type", 2013-09-01). + +( + +In fact, that branch gets activated when opening the details window for a +domain that uses a non-default emulator; the "virt-manager --debug" log +contains: + +> ERROR (details:613) Error determining machine list +> Traceback (most recent call last): +> File "virtManager/details/details.py", line 605, in _init_details +> capsinfo = caps.guest_lookup( +> File "virtinst/capabilities.py", line 319, in guest_lookup +> raise ValueError(msg) +> ValueError: Host does not support domain type kvm with machine +> 'pc-q35-8.1' for virtualization type 'hvm' with architecture 'x86_64' + +) + +Fixes: #539 +Fixes: 05fcc7410eee ("virtinst: fix caching of domain capabilities", 2022-07-27) +Signed-off-by: Laszlo Ersek + +diff --git a/virtinst/guest.py b/virtinst/guest.py +index 9232405b..c61c65e7 100644 +--- a/virtinst/guest.py ++++ b/virtinst/guest.py +@@ -632,7 +632,12 @@ class Guest(XMLBuilder): + def _compare_machine(domcaps): + if self.os.machine == domcaps.machine: + return True +- capsinfo = self.lookup_capsinfo() ++ try: ++ capsinfo = self.lookup_capsinfo() ++ except Exception: ++ log.exception("Error fetching machine list for alias " ++ "resolution, assuming mismatch"); ++ return False + if capsinfo.is_machine_alias(self.os.machine, domcaps.machine): + return True + return False diff --git a/047-tests-data-refresh-Fedora-tree-URLs-in-virt-install-osinfo-expected-XMLs.patch b/047-tests-data-refresh-Fedora-tree-URLs-in-virt-install-osinfo-expected-XMLs.patch new file mode 100644 index 0000000..42f628b --- /dev/null +++ b/047-tests-data-refresh-Fedora-tree-URLs-in-virt-install-osinfo-expected-XMLs.patch @@ -0,0 +1,63 @@ +Subject: tests/data: refresh Fedora tree URLs in virt-install-osinfo* expected XMLs +From: Laszlo Ersek lersek@redhat.com Sun Aug 27 09:19:09 2023 +0200 +Date: Tue Aug 29 13:24:52 2023 +0200: +Git: 6e5c1db6b4a0af96afeb09a09fb2fc2b73308f01 + +Libosinfo seems to generate Fedora tree URLs using the "https", not +"http", scheme now; which breaks CI. Update the expected outputs +accordingly. + +Signed-off-by: Laszlo Ersek + +diff --git a/tests/data/cli/compare/virt-install-osinfo-unattended-treeapis.xml b/tests/data/cli/compare/virt-install-osinfo-unattended-treeapis.xml +index 1140bf0b..5f3c3474 100644 +--- a/tests/data/cli/compare/virt-install-osinfo-unattended-treeapis.xml ++++ b/tests/data/cli/compare/virt-install-osinfo-unattended-treeapis.xml +@@ -13,7 +13,7 @@ + hvm + /VIRTINST-TESTSUITE/vmlinuz + /VIRTINST-TESTSUITE/initrd.img +- ks=file:/fedora.ks method=http://archive.fedoraproject.org/pub/archive/fedora/linux/releases/17/Fedora/x86_64/os/ ++ ks=file:/fedora.ks method=https://archive.fedoraproject.org/pub/archive/fedora/linux/releases/17/Fedora/x86_64/os/ + + + +diff --git a/tests/data/cli/compare/virt-install-osinfo-url-unattended.xml b/tests/data/cli/compare/virt-install-osinfo-url-unattended.xml +index fe653b8b..2388120a 100644 +--- a/tests/data/cli/compare/virt-install-osinfo-url-unattended.xml ++++ b/tests/data/cli/compare/virt-install-osinfo-url-unattended.xml +@@ -13,7 +13,7 @@ + hvm + /VIRTINST-TESTSUITE/vmlinuz + /VIRTINST-TESTSUITE/initrd.img +- ks=file:/fedora.ks inst.repo=http://archives.fedoraproject.org/pub/archive/fedora/linux/releases/26/Server/x86_64/os/ ++ ks=file:/fedora.ks inst.repo=https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/26/Server/x86_64/os/ + + + +diff --git a/tests/data/cli/compare/virt-install-osinfo-url-with-disk.xml b/tests/data/cli/compare/virt-install-osinfo-url-with-disk.xml +index 99fb90fb..11fce0aa 100644 +--- a/tests/data/cli/compare/virt-install-osinfo-url-with-disk.xml ++++ b/tests/data/cli/compare/virt-install-osinfo-url-with-disk.xml +@@ -13,7 +13,7 @@ + hvm + /VIRTINST-TESTSUITE/vmlinuz + /VIRTINST-TESTSUITE/initrd.img +- method=http://archives.fedoraproject.org/pub/archive/fedora/linux/releases/26/Server/x86_64/os/ ++ method=https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/26/Server/x86_64/os/ + + + +diff --git a/tests/data/cli/compare/virt-install-osinfo-url.xml b/tests/data/cli/compare/virt-install-osinfo-url.xml +index 37fcc109..ea1937a3 100644 +--- a/tests/data/cli/compare/virt-install-osinfo-url.xml ++++ b/tests/data/cli/compare/virt-install-osinfo-url.xml +@@ -13,7 +13,7 @@ + hvm + /VIRTINST-TESTSUITE/vmlinuz + /VIRTINST-TESTSUITE/initrd.img +- method=http://archives.fedoraproject.org/pub/archive/fedora/linux/releases/26/Server/x86_64/os/ ++ method=https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/26/Server/x86_64/os/ + + + diff --git a/048-tests-Add-unit-test-coverage-for-539.patch b/048-tests-Add-unit-test-coverage-for-539.patch new file mode 100644 index 0000000..f9e1c65 --- /dev/null +++ b/048-tests-Add-unit-test-coverage-for-539.patch @@ -0,0 +1,74 @@ +Subject: tests: Add unit test coverage for #539 +From: Cole Robinson crobinso@redhat.com Tue Aug 29 12:27:40 2023 -0400 +Date: Tue Aug 29 12:27:40 2023 -0400: +Git: 19b0f3f446ff8fc3b98c676726ee3a42b0b00b74 + +Signed-off-by: Cole Robinson + +diff --git a/tests/data/xmlparse/emulator-custom.xml b/tests/data/xmlparse/emulator-custom.xml +new file mode 100644 +index 00000000..d39ce024 +--- /dev/null ++++ b/tests/data/xmlparse/emulator-custom.xml +@@ -0,0 +1,22 @@ ++ ++ manual-emulator-test ++ ++ ++ ++ ++ ++ 8388608 ++ 8388608 ++ 8 ++ ++ hvm ++ ++ ++ destroy ++ restart ++ destroy ++ ++ /my/manual/emulator ++ ++ ++ +diff --git a/tests/test_xmlparse.py b/tests/test_xmlparse.py +index 1bf0ebe5..781680cf 100644 +--- a/tests/test_xmlparse.py ++++ b/tests/test_xmlparse.py +@@ -1170,3 +1170,34 @@ def testDiskSourceAbspath(): + # ...unless it's a URL + disk.set_source_path("http://example.com/foobar3") + assert disk.get_source_path() == "http://example.com/foobar3" ++ ++ ++def testUnknownEmulatorDomcapsLookup(monkeypatch): ++ """ ++ Libvirt can handle defining a VM with a custom emulator, one not detected ++ by `virsh capabilities`. An appropriate `virsh domcapabilities` call will ++ inspect the emulator and return relevant info. ++ ++ This test ensures that for parsing XML the `virsh capabilities` failure ++ isn't fatal, and we attempt to return valid `virsh domcapabilities` data ++ """ ++ ++ seen = False ++ def fake_build_from_params(conn, emulator, arch, machine, hvtype): ++ nonlocal seen ++ seen = True ++ assert arch == "mips" ++ assert machine == "some-unknown-machine" ++ assert emulator == "/my/manual/emulator" ++ return virtinst.DomainCapabilities(conn) ++ ++ monkeypatch.setattr( ++ "virtinst.DomainCapabilities.build_from_params", ++ fake_build_from_params) ++ ++ conn = utils.URIs.open_kvm() ++ xml = open(DATADIR + "emulator-custom.xml").read() ++ guest = virtinst.Guest(conn, xml) ++ assert guest.lookup_domcaps() ++ assert guest.lookup_domcaps() ++ assert seen diff --git a/049-fix-indentation-of-multiline-log.exception-invocations.patch b/049-fix-indentation-of-multiline-log.exception-invocations.patch new file mode 100644 index 0000000..190ee0a --- /dev/null +++ b/049-fix-indentation-of-multiline-log.exception-invocations.patch @@ -0,0 +1,80 @@ +Subject: fix indentation of multiline log.exception() invocations +From: Laszlo Ersek lersek@redhat.com Wed Aug 30 10:03:15 2023 +0200 +Date: Wed Aug 30 10:48:54 2023 +0200: +Git: 2ebbdb2797c62b9a962bdc4362882115f9445a62 + +Commit f107e3998908 ("Switch to more traditional logging structure", +2019-06-17) replaced "logging.exception" with "log.exception", effectively +shifting the argument lists 4 characters to the left. The second and +further lines of multiline invocations were not accordingly unindented, +however, which ended up setting a suboptimal precedent as well. Unindent +those lines now. + +Reported-by: Cole Robinson +Signed-off-by: Laszlo Ersek + +diff --git a/virtManager/hoststorage.py b/virtManager/hoststorage.py +index 594c6587..0670572c 100644 +--- a/virtManager/hoststorage.py ++++ b/virtManager/hoststorage.py +@@ -427,8 +427,7 @@ class vmmHostStorage(vmmGObjectUI): + if not namestr: + namestr = None + except Exception: # pragma: no cover +- log.exception("Failed to determine if storage volume in " +- "use.") ++ log.exception("Failed to determine if storage volume in use.") + + sensitive = True + if self._vol_sensitive_cb: +diff --git a/virtManager/lib/inspection.py b/virtManager/lib/inspection.py +index 59f8b413..bc14dd2c 100644 +--- a/virtManager/lib/inspection.py ++++ b/virtManager/lib/inspection.py +@@ -115,9 +115,8 @@ def _perform_inspection(conn, vm): # pragma: no cover + g.mount_ro(dev, mp) + filesystems_mounted = True + except Exception: +- log.exception("%s: exception mounting %s on %s " +- "(ignored)", +- prettyvm, dev, mp) ++ log.exception("%s: exception mounting %s on %s (ignored)", ++ prettyvm, dev, mp) + + icon = None + apps = None +@@ -154,7 +153,7 @@ def _perform_inspection(conn, vm): # pragma: no cover + apps.append(app) + except Exception: + log.exception("%s: exception while listing apps (ignored)", +- prettyvm) ++ prettyvm) + + # Force the libguestfs handle to close right now. + del g +diff --git a/virtManager/object/domain.py b/virtManager/object/domain.py +index 1570b952..e7dc5035 100644 +--- a/virtManager/object/domain.py ++++ b/virtManager/object/domain.py +@@ -1429,7 +1429,7 @@ class vmmDomain(vmmLibvirtObject): + self._backend.undefineFlags(flags) + except libvirt.libvirtError: + log.exception("libvirt undefineFlags failed, " +- "falling back to old style") ++ "falling back to old style") + self._backend.undefine() + + @vmmLibvirtObject.lifecycle_action +diff --git a/virtinst/guest.py b/virtinst/guest.py +index c61c65e7..0584484f 100644 +--- a/virtinst/guest.py ++++ b/virtinst/guest.py +@@ -636,7 +636,7 @@ class Guest(XMLBuilder): + capsinfo = self.lookup_capsinfo() + except Exception: + log.exception("Error fetching machine list for alias " +- "resolution, assuming mismatch"); ++ "resolution, assuming mismatch"); + return False + if capsinfo.is_machine_alias(self.os.machine, domcaps.machine): + return True diff --git a/050-virt-clone-Copy-disk-permissions-as-well.patch b/050-virt-clone-Copy-disk-permissions-as-well.patch new file mode 100644 index 0000000..3443efa --- /dev/null +++ b/050-virt-clone-Copy-disk-permissions-as-well.patch @@ -0,0 +1,27 @@ +Subject: virt-clone: Copy disk permissions as well +From: Martin Kletzander mkletzan@redhat.com Fri Sep 1 21:39:37 2023 +0200 +Date: Sun Sep 10 11:19:31 2023 -0400: +Git: 9f8da1f666177694dcffaac6728988b18e27274c + +When cloning using libvirt APIs the function virStorageVolCreateXMLFrom +is used. However name and permissions are taken from the new XML [1]. +By copying the permissions (only the mode is used) we can avoid some +unexpected issues. + +[1] https://libvirt.org/html/libvirt-libvirt-storage.html#virStorageVolCreateXMLFrom + +Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=2115153 +Signed-off-by: Martin Kletzander + +diff --git a/virtinst/storage.py b/virtinst/storage.py +index f9a9f7a7..fd8a7481 100644 +--- a/virtinst/storage.py ++++ b/virtinst/storage.py +@@ -528,6 +528,7 @@ class StorageVolume(_StorageObject): + self.format = parsevol.format + self.capacity = parsevol.capacity + self.allocation = parsevol.allocation ++ self.permissions.mode = parsevol.permissions.mode + if not self._pool: + self.pool = self._input_vol.storagePoolLookupByVolume() + diff --git a/051-data-appstream-add-launchable-tag.patch b/051-data-appstream-add-launchable-tag.patch new file mode 100644 index 0000000..65a969e --- /dev/null +++ b/051-data-appstream-add-launchable-tag.patch @@ -0,0 +1,19 @@ +Subject: data: appstream: add launchable tag +From: Pino Toscano ptoscano@redhat.com Sat Sep 9 07:26:20 2023 +0200 +Date: Sun Sep 10 11:20:29 2023 -0400: +Git: ccd47575337cfa8e8b96197310b3ff4dabd2ab69 + +Signed-off-by: Pino Toscano + +diff --git a/data/virt-manager.appdata.xml.in b/data/virt-manager.appdata.xml.in +index 0383852e..fd8f6e48 100644 +--- a/data/virt-manager.appdata.xml.in ++++ b/data/virt-manager.appdata.xml.in +@@ -40,6 +40,7 @@ + kvm + + ++ virt-manager.desktop + + + diff --git a/052-Fix-some-pylint.patch b/052-Fix-some-pylint.patch new file mode 100644 index 0000000..393da5c --- /dev/null +++ b/052-Fix-some-pylint.patch @@ -0,0 +1,71 @@ +Subject: Fix some pylint +From: Cole Robinson crobinso@redhat.com Tue Sep 12 11:54:04 2023 -0400 +Date: Tue Sep 12 11:54:04 2023 -0400: +Git: 0f706cf87436af598b8694aecf4b42657bfa5b11 + +Signed-off-by: Cole Robinson + +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -449,7 +449,7 @@ class App(object): + self._add(cat, args, None, check_success=True, **kwargs) + def add_invalid(self, cat, args, **kwargs): + if "grep" not in kwargs: +- raise Exception("grep= must be passed for add_invalid") ++ raise RuntimeError("grep= must be passed for add_invalid") + self._add(cat, args, None, check_success=False, **kwargs) + def add_compare(self, cat, args, compbase, **kwargs): + self._add(cat, args, compbase, +--- a/tests/test_xmlparse.py ++++ b/tests/test_xmlparse.py +@@ -1183,7 +1183,7 @@ def testUnknownEmulatorDomcapsLookup(mon + """ + + seen = False +- def fake_build_from_params(conn, emulator, arch, machine, hvtype): ++ def fake_build_from_params(conn, emulator, arch, machine, _hvtype): + nonlocal seen + seen = True + assert arch == "mips" +--- a/virtinst/cli.py ++++ b/virtinst/cli.py +@@ -1276,7 +1276,7 @@ class _InitClass(type): + but without giving us an explicit dep on python 3.6 + + """ +- def __new__(cls, *args, **kwargs): ++ def __new__(cls, *args, **kwargs): # pylint: disable=bad-mcs-classmethod-argument + if len(args) != 3: + return super().__new__(cls, *args) # pragma: no cover + dummy = kwargs +--- a/virtinst/guest.py ++++ b/virtinst/guest.py +@@ -636,7 +636,7 @@ class Guest(XMLBuilder): + capsinfo = self.lookup_capsinfo() + except Exception: + log.exception("Error fetching machine list for alias " +- "resolution, assuming mismatch"); ++ "resolution, assuming mismatch") + return False + if capsinfo.is_machine_alias(self.os.machine, domcaps.machine): + return True +@@ -743,7 +743,7 @@ class Guest(XMLBuilder): + if original_machine_type.startswith(prefix): + self.os.machine = machine_alias + return +- raise Exception("Don't know how to refresh machine type '%s'" % ++ raise RuntimeError("Don't know how to refresh machine type '%s'" % + original_machine_type) + + def set_smbios_serial_cloudinit(self): +--- a/virtinst/xmlbuilder.py ++++ b/virtinst/xmlbuilder.py +@@ -54,7 +54,7 @@ class XMLManualAction(object): + val = self.xpath_value + else: + if "=" not in str(xpath): +- raise Exception( ++ raise ValueError( + "%s: Setting xpath must be in the form of XPATH=VALUE" % + xpath) + xpath, val = xpath.rsplit("=", 1) diff --git a/055-connectauth-Drop-sanity-checking-for-libvirtd.patch b/055-connectauth-Drop-sanity-checking-for-libvirtd.patch new file mode 100644 index 0000000..b224003 --- /dev/null +++ b/055-connectauth-Drop-sanity-checking-for-libvirtd.patch @@ -0,0 +1,154 @@ +Subject: connectauth: Drop sanity checking for libvirtd +From: Cole Robinson crobinso@redhat.com Tue Sep 12 13:18:42 2023 -0400 +Date: Sun Sep 24 16:31:58 2023 -0400: +Git: 775edfd5dc668c26ffbdf07f6404ca80d91c3a3a + +Nowadays with libvirt split daemons, libvirtd isn't required to +be installed for a first run local connection to succeed, so we +are needlessly blocking the app from 'just working' in many cases. +Especially considering that many distros often have libvirt running +out of the box due to gnome-boxes pulling it in. + +Drop the daemon checking entirely. + +Signed-off-by: Cole Robinson + +diff --git a/tests/uitests/test_cli.py b/tests/uitests/test_cli.py +index 7e7ab6ea..b317bf28 100644 +--- a/tests/uitests/test_cli.py ++++ b/tests/uitests/test_cli.py +@@ -139,15 +139,12 @@ def testCLIFirstRunURIBad(app): + app.click_alert_button("bad:///uri", "Close") + + +-def testCLIFirstRunNoLibvirtd(app): ++def testCLIFirstRunNoURI(app): + # Emulate first run with no libvirtd detected +- app.open(use_uri=False, firstrun_uri="bad:///uri", +- extra_opts=["--test-options=fake-no-libvirtd"]) ++ app.open(use_uri=False, firstrun_uri="") + errlabel = app.topwin.find("error-label") + lib.utils.check( + lambda: "Checking for virtualization" in errlabel.text) +- lib.utils.check( +- lambda: "libvirtd service does not appear" in errlabel.text) + lib.utils.check( + lambda: "detect a default hypervisor" in errlabel.text) + +diff --git a/virtManager/engine.py b/virtManager/engine.py +index 58fd8026..a90b5464 100644 +--- a/virtManager/engine.py ++++ b/virtManager/engine.py +@@ -131,14 +131,14 @@ class vmmEngine(vmmGObject): + """ + from .lib import connectauth + +- tryuri = vmmCreateConn.default_uri() +- log.debug("Probed default URI=%s", tryuri) ++ detected_uri = vmmCreateConn.default_uri() ++ log.debug("Probed default URI=%s", detected_uri) + if self.config.CLITestOptions.firstrun_uri is not None: +- tryuri = self.config.CLITestOptions.firstrun_uri or None +- log.debug("Using test-options firstrun_uri=%s", tryuri) ++ detected_uri = self.config.CLITestOptions.firstrun_uri or None ++ log.debug("Using test-options firstrun_uri=%s", detected_uri) + + manager = self._get_manager() +- msg = connectauth.setup_first_uri(self.config, tryuri) ++ msg = connectauth.setup_first_uri(self.config, detected_uri) + if msg: + manager.set_startup_error(msg) + return +@@ -149,7 +149,7 @@ class vmmEngine(vmmGObject): + if ConnectError: + self._handle_conn_error(c, ConnectError) + +- conn = vmmConnectionManager.get_instance().add_conn(tryuri) ++ conn = vmmConnectionManager.get_instance().add_conn(detected_uri) + conn.set_autoconnect(True) + conn.connect_once("open-completed", _open_completed) + conn.open() +diff --git a/virtManager/lib/connectauth.py b/virtManager/lib/connectauth.py +index 71e1b21f..9baec603 100644 +--- a/virtManager/lib/connectauth.py ++++ b/virtManager/lib/connectauth.py +@@ -7,7 +7,6 @@ + import collections + import os + import re +-import shutil + import time + + from gi.repository import GLib +@@ -161,7 +160,7 @@ def connect_error(conn, errmsg, tb, warnconsole): + "or install an SSH askpass package locally.") + show_errmsg = False + else: +- hint += _("Verify that the 'libvirtd' daemon is running " ++ hint += _("Verify that an appropriate libvirt daemon is running " + "on the remote host.") + + elif conn.is_xen(): # pragma: no cover +@@ -176,8 +175,8 @@ def connect_error(conn, errmsg, tb, warnconsole): + "may not be able to connect to libvirt as a " + "regular user. Try running as root.") + show_errmsg = False +- elif re.search(r"libvirt-sock", tb): # pragma: no cover +- hint += _("Verify that the 'libvirtd' daemon is running.") ++ elif re.search(r"virt[a-z]*-sock", tb): # pragma: no cover ++ hint += _("Verify that an appropriate libvirt daemon is running.") + show_errmsg = False + + msg = _("Unable to connect to libvirt %s." % conn.get_uri()) +@@ -203,27 +202,11 @@ def connect_error(conn, errmsg, tb, warnconsole): + # App first run connection setup # + ################################## + +-def setup_first_uri(config, tryuri): +- # Add /usr/sbin to the path in case non-root user launches virt-manager +- libvirtd_installed = bool(shutil.which("libvirtd", path=os.environ['PATH'] + os.pathsep + "/usr/sbin")) +- if config.CLITestOptions.fake_no_libvirtd: +- libvirtd_installed = False +- +- if tryuri and libvirtd_installed: +- return +- +- # Manager fail message ++def setup_first_uri(_config, detected_uri): + msg = "" +- if not libvirtd_installed: # pragma: no cover +- msg += _("The libvirtd service does not appear to be installed. " +- "Install and run the libvirtd service to manage " +- "virtualization on this host.") +- +- if not tryuri or "qemu" not in tryuri: +- if msg: +- msg += "\n\n" # pragma: no cover ++ if not detected_uri: + msg += _("Could not detect a default hypervisor. Make " +- "sure the appropriate QEMU/KVM virtualization " ++ "sure the appropriate QEMU/KVM virtualization and libvirt " + "packages are installed to manage virtualization " + "on this host.") + +diff --git a/virtManager/lib/testmock.py b/virtManager/lib/testmock.py +index 1f3e91ac..d2ee6972 100644 +--- a/virtManager/lib/testmock.py ++++ b/virtManager/lib/testmock.py +@@ -168,8 +168,6 @@ class CLITestOptionsClass: + + * firstrun-uri: If set, use this as the initial connection URI + if we are doing firstrun testing +- * fake-no-libvirtd: If doing firstrun testing, fake that +- libvirtd is not installed + * fake-vnc-username: Fake VNC username auth request + * fake-console-resolution: Fake viewer console resolution response. + Spice doesn't return values here when we are just testing +@@ -223,7 +221,6 @@ class CLITestOptionsClass: + self.test_vm_run_fail = _get("test-vm-run-fail") + self.spice_agent = _get("spice-agent") + self.firstrun_uri = _get_value("firstrun-uri") +- self.fake_no_libvirtd = _get("fake-no-libvirtd") + self.fake_vnc_username = _get("fake-vnc-username") + self.fake_console_resolution = _get("fake-console-resolution") + self.fake_systray = _get("fake-systray") diff --git a/056-delete-Fix-ambiguity-that-confused-pylint.patch b/056-delete-Fix-ambiguity-that-confused-pylint.patch new file mode 100644 index 0000000..829b47e --- /dev/null +++ b/056-delete-Fix-ambiguity-that-confused-pylint.patch @@ -0,0 +1,70 @@ +Subject: delete: Fix ambiguity that confused pylint +From: Cole Robinson crobinso@redhat.com Sun Sep 24 16:13:00 2023 -0400 +Date: Sun Sep 24 16:31:58 2023 -0400: +Git: ab0a318a46b1ab5c7827fc805b8c4e21635d66ab + +virtManager/delete.py:219:11: E0601: Using variable 'error' before assignment (used-before-assignment) + +Signed-off-by: Cole Robinson + +diff --git a/virtManager/delete.py b/virtManager/delete.py +index f050534b..2195a5d9 100644 +--- a/virtManager/delete.py ++++ b/virtManager/delete.py +@@ -179,8 +179,9 @@ class _vmmDeleteBase(vmmGObjectUI): + self._set_vm(None) + + def _async_delete(self, asyncjob, vm, paths): +- details = "" ++ errdata = None + storage_errors = [] ++ + try: + self._destroy_vm(vm) + +@@ -191,33 +192,32 @@ class _vmmDeleteBase(vmmGObjectUI): + self._delete_vm(vm) + vm.conn.schedule_priority_tick(pollvm=True) + except Exception as e: # pragma: no cover +- error = _("Error deleting virtual machine '%(vm)s': %(error)s") % { +- "vm": vm.get_name(), +- "error": str(e), +- } +- details = "".join(traceback.format_exc()) ++ errdata = ( ++ (_("Error deleting virtual machine '%(vm)s': %(error)s") % ++ {"vm": vm.get_name(), "error": str(e)}), ++ "".join(traceback.format_exc())) ++ ++ if not storage_errors and not errdata: ++ return + + storage_errstr = "" + for errinfo in storage_errors: + storage_errstr += "%s\n%s\n" % (errinfo[0], errinfo[1]) + +- if not storage_errstr and not details: +- return +- + # We had extra storage errors. If there was another error message, + # errors to it. Otherwise, build the main error around them. +- if details: # pragma: no cover ++ if errdata: # pragma: no cover ++ error, details = errdata + details += "\n\n" + details += _("Additionally, there were errors removing" +- " certain storage devices: \n") ++ " certain storage devices: \n") + details += storage_errstr + else: + error = _("Errors encountered while removing certain " +- "storage devices.") ++ "storage devices.") + details = storage_errstr + +- if error: +- asyncjob.set_error(error, details) ++ asyncjob.set_error(error, details) + + def _async_delete_paths(self, paths, conn, meter): + storage_errors = [] diff --git a/057-Fix-filesystem-socket.source.patch b/057-Fix-filesystem-socket.source.patch new file mode 100644 index 0000000..9f84019 --- /dev/null +++ b/057-Fix-filesystem-socket.source.patch @@ -0,0 +1,65 @@ +Subject: Fix filesystem socket.source +From: Jonathon Jongsma jjongsma@redhat.com Mon Oct 23 14:42:19 2023 -0500 +Date: Tue Oct 24 10:30:37 2023 +0200: +Git: 40b73fec1b251da866485ac8534ba61aaca14fe7 + +When specifying the socket.source option for filesystem devices, like +this: + --filesystem type=mount,driver.type=virtiofs,source.socket=/xyz.sock,target.dir=tag1 + +virt-install is writing the xml as: + + + + /xyz.sock + + + + + +This produces an error such as: + + ERROR missing source information for device mount_tag1 + +But the socket should be an attribute of source rather than a child +element. After this patch, the same command results in the following XML +and no error is produced: + + + + + + + +Resolves: RHEL-1126 + +Signed-off-by: Jonathon Jongsma + +diff --git a/tests/data/cli/compare/virt-install-many-devices.xml b/tests/data/cli/compare/virt-install-many-devices.xml +index e4a7da8f..8eca4e5b 100644 +--- a/tests/data/cli/compare/virt-install-many-devices.xml ++++ b/tests/data/cli/compare/virt-install-many-devices.xml +@@ -509,9 +509,7 @@ + + 1234 + 500 +- +- /tmp/foo.sock +- ++ + + + +diff --git a/virtinst/devices/filesystem.py b/virtinst/devices/filesystem.py +index 975548f4..e38e35c3 100644 +--- a/virtinst/devices/filesystem.py ++++ b/virtinst/devices/filesystem.py +@@ -53,7 +53,7 @@ class DeviceFilesystem(Device): + source_units = XMLProperty("./source/@units") + source_pool = XMLProperty("./source/@pool") + source_volume = XMLProperty("./source/@volume") +- source_socket = XMLProperty("./source/socket") ++ source_socket = XMLProperty("./source/@socket") + + binary_path = XMLProperty("./binary/@path") + binary_xattr = XMLProperty("./binary/@xattr", is_onoff=True) diff --git a/058-uri-Mock-domcaps-returning-NO_SUPPORT.patch b/058-uri-Mock-domcaps-returning-NO_SUPPORT.patch new file mode 100644 index 0000000..0546761 --- /dev/null +++ b/058-uri-Mock-domcaps-returning-NO_SUPPORT.patch @@ -0,0 +1,65 @@ +Subject: uri: Mock domcaps returning NO_SUPPORT +From: Cole Robinson crobinso@redhat.com Mon Jan 22 17:07:31 2024 -0500 +Date: Mon Jan 22 17:07:31 2024 -0500: +Git: 2e3db754d1d596f8fed6b327017ace922838eb49 + +With libvirt 9.8.0, the test driver now has a stub getDomainCapabilities +implementation. But we still have some code that needs to handle +a driver with missing domcaps. + +Make our magicuri mock return NO_SUPPORT for domcaps, when the URI +doesn't have any domcaps XML passed in. This is enough for our test +purposes. + +Signed-off-by: Cole Robinson + +diff --git a/virtinst/uri.py b/virtinst/uri.py +index c83aaa78..c4be1960 100644 +--- a/virtinst/uri.py ++++ b/virtinst/uri.py +@@ -173,23 +173,39 @@ class MagicURI(object): + capsxml = open(self.capsfile).read() + conn.getCapabilities = lambda: capsxml + ++ def _raise_nosupport_error(msg): ++ import libvirt ++ err = [libvirt.VIR_ERR_NO_SUPPORT, None, msg, None, None, None] ++ exc = libvirt.libvirtError(msg) ++ exc.err = err ++ raise exc ++ + # Fake domcapabilities. This is insufficient since output should + # vary per type/arch/emulator combo, but it can be expanded later + # if needed ++ domcapsxml = None + if self.domcapsfile: + domcapsxml = open(self.domcapsfile).read() +- def fake_domcaps(emulator, arch, machine, virttype, flags=0): +- ignore = emulator +- ignore = flags +- ignore = machine +- ignore = virttype + ++ def fake_domcaps(emulator, arch, machine, virttype, flags=0): ++ ignore = emulator ++ ignore = flags ++ ignore = machine ++ ignore = virttype ++ ++ if domcapsxml: + ret = domcapsxml + if arch: + ret = re.sub("arch>.+%s + +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -1334,7 +1334,7 @@ c.add_invalid("test --edit --cpu host-pa + c.add_invalid("test --edit", grep="No change specified.") + c.add_invalid("test --edit 2 --cpu host-passthrough", grep="'--edit 2' requested but there's only 1 --cpu object in the XML") + c.add_invalid("test-for-virtxml --edit 5 --tpm /dev/tpm", grep="'--edit 5' requested but there's only 1 --tpm object in the XML") +-c.add_invalid("test-for-virtxml --add-device --host-device 0x04b3:0x4485 --update --confirm", input_text="yes", grep="not supported by the connection driver: virDomainAttachDevice") ++c.add_invalid("test-for-virtxml --add-device --host-device 0x04b3:0x4485 --update --confirm", input_text="yes", grep="not supported") + c.add_invalid("test-for-virtxml --remove-device --host-device 1 --update --confirm", input_text="foo\nyes\n", grep="not supported by the connection driver: virDomainDetachDevice") + c.add_invalid("test-for-virtxml --edit --graphics password=foo,keymap= --update --confirm", input_text="yes", grep="not supported by the connection driver: virDomainUpdateDeviceFlags") + c.add_invalid("--build-xml --memory 10,maxmemory=20", grep="--build-xml not supported for --memory") diff --git a/060-Fix-some-pylint.patch b/060-Fix-some-pylint.patch new file mode 100644 index 0000000..897a9a4 --- /dev/null +++ b/060-Fix-some-pylint.patch @@ -0,0 +1,35 @@ +Subject: Fix some pylint +From: Cole Robinson crobinso@redhat.com Mon Jan 22 17:15:11 2024 -0500 +Date: Mon Jan 22 17:15:11 2024 -0500: +Git: c399353e00b37ae00c614c7e52a1369e6e816820 + +Signed-off-by: Cole Robinson + +diff --git a/virtManager/details/viewers.py b/virtManager/details/viewers.py +index 68c97bdb..2a8a7857 100644 +--- a/virtManager/details/viewers.py ++++ b/virtManager/details/viewers.py +@@ -618,8 +618,8 @@ class SpiceViewer(Viewer): + self._main_channel, "notify::agent-connected", + self._agent_connected_cb) + +- elif (type(channel) == SpiceClientGLib.DisplayChannel and +- not self._display): ++ elif (isinstance(channel, SpiceClientGLib.DisplayChannel) and ++ not self._display): + channel_id = channel.get_property("channel-id") + + if channel_id != 0: # pragma: no cover +diff --git a/virtinst/diskbackend.py b/virtinst/diskbackend.py +index 5f80c437..abfaab26 100644 +--- a/virtinst/diskbackend.py ++++ b/virtinst/diskbackend.py +@@ -753,7 +753,7 @@ class StorageBackend(_StorageBase): + self._exists = True + elif self._path is None: + self._exists = True +- elif (not self.get_dev_type() == "network" and ++ elif (self.get_dev_type() != "network" and + not self._conn.is_remote() and + os.path.exists(self._path)): + self._exists = True diff --git a/061-tests-ui-make-newvm-test-start-less-flakey.patch b/061-tests-ui-make-newvm-test-start-less-flakey.patch new file mode 100644 index 0000000..6d9cdce --- /dev/null +++ b/061-tests-ui-make-newvm-test-start-less-flakey.patch @@ -0,0 +1,24 @@ +Subject: tests: ui: make newvm test start less flakey +From: Cole Robinson crobinso@redhat.com Tue Jan 23 08:59:34 2024 -0500 +Date: Tue Jan 23 09:07:29 2024 -0500: +Git: acf3cedbbf85de9dd50c483547e2ea258c529583 + +Signed-off-by: Cole Robinson + +diff --git a/tests/uitests/test_createvm.py b/tests/uitests/test_createvm.py +index f430c14c..6fe894b4 100644 +--- a/tests/uitests/test_createvm.py ++++ b/tests/uitests/test_createvm.py +@@ -12,7 +12,11 @@ from . import lib + ################### + + def _open_newvm(app): +- app.root.find("New", "push button").click() ++ button = app.root.find("New", "push button") ++ # Launching the dialog can be very flakey without this explicit ++ # point() call, not sure why ++ button.point() ++ button.click() + return app.find_window("New VM") + + diff --git a/062-tests-ui-make-creatnet-test-start-less-flakey.patch b/062-tests-ui-make-creatnet-test-start-less-flakey.patch new file mode 100644 index 0000000..3ff81aa --- /dev/null +++ b/062-tests-ui-make-creatnet-test-start-less-flakey.patch @@ -0,0 +1,22 @@ +Subject: tests: ui: make creatnet test start less flakey +From: Cole Robinson crobinso@redhat.com Tue Jan 23 11:18:49 2024 -0500 +Date: Tue Jan 23 13:28:07 2024 -0500: +Git: 4e2bec5b1410649232165fa33091a6ed9b9b48d9 + +Signed-off-by: Cole Robinson + +diff --git a/tests/uitests/lib/app.py b/tests/uitests/lib/app.py +index 83628a7f..672b5ced 100644 +--- a/tests/uitests/lib/app.py ++++ b/tests/uitests/lib/app.py +@@ -215,7 +215,9 @@ class VMMDogtailApp(object): + self.root.find_fuzzy("Edit", "menu").click() + self.root.find_fuzzy("Connection Details", "menu item").click() + win = self.find_window("%s - Connection Details" % conn_label) +- win.find_fuzzy(tab, "page tab").click() ++ tab = win.find_fuzzy(tab, "page tab") ++ tab.point() ++ tab.click() + return win + + def manager_test_conn_window_cleanup(self, conn_label, childwin): diff --git a/_multibuild b/_multibuild new file mode 100644 index 0000000..fcc7b97 --- /dev/null +++ b/_multibuild @@ -0,0 +1,3 @@ + + test + diff --git a/revert-363fca41-virt-install-Require-osinfo-for-non-x86-HVM-case-too.patch b/revert-363fca41-virt-install-Require-osinfo-for-non-x86-HVM-case-too.patch new file mode 100644 index 0000000..42751ca --- /dev/null +++ b/revert-363fca41-virt-install-Require-osinfo-for-non-x86-HVM-case-too.patch @@ -0,0 +1,58 @@ +References: bsc#1200691, an IBM request +This patch reverts commit 363fca413cae336a0ca86cbdcbb2f65fead948ee. +Only x86 will have a hard requirement for the --osinfo option. + +From: Cole Robinson crobinso@redhat.com Sun Feb 20 11:40:35 2022 -0500 +Subject: virt-install: Require --osinfo for non-x86 HVM case too +Date: Sun Feb 20 11:40:35 2022 -0500: +Git: 363fca413cae336a0ca86cbdcbb2f65fead948ee + +It's generally not as valuable for non-x86 where we don't have the +history of supporting non-virtio OSes, but as time goes on it will +likely become more relevant for non-x86 arches, so let's make this +change now to get ahead of it. + +Signed-off-by: Cole Robinson + +--- a/man/virt-install.rst ++++ b/man/virt-install.rst +@@ -1055,8 +1055,8 @@ all other settings off or unset. + + By default, virt-install will always attempt ``--osinfo detect=on`` + for appropriate install media. If no OS is detected, we will fail +-in most common cases. This fatal error was added in 2022. You can +-work around this by using the fallback example ++in certain common cases (x86 KVM for example). This fatal error was ++added in 2022. You can work around this by using the fallback example + above, or disabling the ``require`` option. If you just need to get back + to the old non-fatal behavior ASAP, set the environment variable + VIRTINSTALL_OSINFO_DISABLE_REQUIRE=1. +--- a/tests/test_cli.py ++++ b/tests/test_cli.py +@@ -1181,7 +1181,6 @@ c.add_compare("--connect %(URI-KVM-ARMV7 + ################# + + c.add_valid("--arch aarch64 --osinfo fedora19 --nodisks --pxe --connect " + utils.URIs.kvm_x86_nodomcaps, grep="Libvirt version does not support UEFI") # attempt to default to aarch64 UEFI, but it fails, but should only print warnings +-c.add_invalid("--arch aarch64 --nodisks --pxe --connect " + utils.URIs.kvm_x86, grep="OS name is required") # catch missing osinfo for non-x86 + c.add_compare("--arch aarch64 --osinfo fedora19 --machine virt --boot kernel=/f19-arm.kernel,initrd=/f19-arm.initrd,kernel_args=\"console=ttyAMA0,1234 rw root=/dev/vda3\" --disk %(EXISTIMG1)s", "aarch64-machvirt") + c.add_compare("--arch aarch64 --osinfo fedora19 --boot kernel=/f19-arm.kernel,initrd=/f19-arm.initrd,kernel_args=\"console=ttyAMA0,1234 rw root=/dev/vda3\" --disk %(EXISTIMG1)s", "aarch64-machdefault") + c.add_compare("--arch aarch64 --cdrom %(ISO-F26-NETINST)s --boot loader=CODE.fd,nvram.template=VARS.fd --disk %(EXISTIMG1)s --cpu none --events on_crash=preserve,on_reboot=destroy,on_poweroff=restart", "aarch64-cdrom") # cdrom test, but also --cpu none override, --events override, and headless +--- a/virtinst/virtinstall.py ++++ b/virtinst/virtinstall.py +@@ -355,13 +355,9 @@ def _show_memory_warnings(guest): + + + def _needs_accurate_osinfo(guest): +- # HVM is really the only case where OS impacts what we set for defaults, +- # so far. +- # +- # Historically we would only warn about missing osinfo on x86, but +- # with the change to make osinfo mandatory we relaxed the arch check, +- # so virt-install behavior is more consistent. +- return guest.os.is_hvm() ++ # Limit it to hvm x86 guests which presently our defaults ++ # only really matter for ++ return guest.os.is_x86() and guest.os.is_hvm() + + + def show_guest_warnings(options, guest): diff --git a/virt-install.desktop b/virt-install.desktop new file mode 100644 index 0000000..23afb40 --- /dev/null +++ b/virt-install.desktop @@ -0,0 +1,24 @@ +[Desktop Entry] +X-SuSE-translate=true +X-SuSE-DocTeamID=ycc_xen +Type=Application +Categories=GTK;GNOME;System;Monitor;X-SuSE-YaST;X-SuSE-YaST-Virtualization; + +X-KDE-ModuleType=Library +X-KDE-RootOnly=true +X-KDE-HasReadOnlyMode=false +X-SuSE-YaST-Call=virt-install + +X-SuSE-YaST-Group=Virtualization +X-SuSE-YaST-Argument= +X-SuSE-YaST-RootOnly=true +X-SuSE-YaST-Geometry= +X-SuSE-YaST-SortKey= + +Icon=virt-manager +Exec=/sbin/yast2 virt-install + +Name=Create Virtual Machines for Xen and KVM +GenericName=Create Virtual Machines +X-KDE-SubstituteUID=true + diff --git a/virt-install.rb b/virt-install.rb new file mode 100644 index 0000000..a433b22 --- /dev/null +++ b/virt-install.rb @@ -0,0 +1,84 @@ +# ------------------------------------------------------------------------------ +# Copyright (c) 2013 Novell, Inc. All Rights Reserved. +# +# +# This program is free software; you can redistribute it and/or modify it under +# the terms of version 2 of the GNU General Public License as published by the +# Free Software Foundation. +# +# This program is distributed in the hope that it will be useful, but WITHOUT +# ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS +# FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License along with +# this program; if not, contact Novell, Inc. +# +# To contact Novell about this file by physical or electronic mail, you may find +# current contact information at www.novell.com. +# ------------------------------------------------------------------------------ +# + +# +# File: clients/virt-install.ycp +# Package: Installation of a virtual machine +# Summary: Main VM installation YaST frontend for python based virt-install +# Authors: Charles E. Arnold +# +# $Id$ + +module Yast + class VirtinstallClient < Client + def main + textdomain "virt-install" + + Yast.import "UI" + Yast.import "Popup" + Yast.import "String" + Yast.import "Arch" + + #=================================================================== + # Start virt-install (GUI) or vm-install if Text mode (commandline) + #------------------------------------------------------------------- + status = 0 + @details = {} + + Builtins.y2milestone("START HERE.") + if WFM.Args == ["help"] + # Ignore yast help request + return :next + end + + if UI.TextMode() + if File.file?("/usr/bin/vm-install") + Builtins.y2milestone("Running virt-install in text mode is not supported. Running vm-install instead in command line mode.") + status = UI.RunInTerminal("/usr/bin/vm-install") + else + Popup.Error(_("Please use the command line to execute virt-install with the appropriate options for creating a VM.")) + end + else + Builtins.y2milestone("Launching virt-manager to run virt-install in GUI mode.") + if Arch.is_xen0 == false + details = Convert.to_map(SCR.Execute(path(".target.bash_output"), "/usr/bin/virt-manager --connect=qemu:///system --show-domain-creator")) + else + details = Convert.to_map(SCR.Execute(path(".target.bash_output"), "/usr/bin/virt-manager --connect=xen:/// --show-domain-creator")) + end + status = Ops.get_integer(details, "exit", 0) + end + + Builtins.y2milestone("virt-install finished with exit code: <%1>", status) + if status == 0 + return :next + else + if Builtins.size(Ops.get_string(details, "stderr", "")) > 0 + Popup.ErrorDetails(_("Failed to start virt-install"), Convert.to_string(details, "stderr", "")) + else + Popup.Error(_("Failed to start virt-install")) + end + end + + nil + end + end +end + +Yast::VirtinstallClient.new.main diff --git a/virt-manager-4.1.0.tar.gz b/virt-manager-4.1.0.tar.gz new file mode 100644 index 0000000..d4f5072 --- /dev/null +++ b/virt-manager-4.1.0.tar.gz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:950681d7b32dc61669278ad94ef31da33109bf6fcf0426ed82dfd7379aa590a2 +size 3151412 diff --git a/virt-manager-supportconfig b/virt-manager-supportconfig new file mode 100644 index 0000000..56d66a0 --- /dev/null +++ b/virt-manager-supportconfig @@ -0,0 +1,24 @@ +#!/bin/bash +############################################################# +# Name: Supportconfig Plugin for virt-manager +# Description: Gathers important troubleshooting information +# about virt-manager +############################################################# + +RCFILE="/usr/lib/supportconfig/resources/supportconfig.rc" +OF="output-virt-manager.txt" + +VIRTMAN_LOG_DIR="/root/.cache/virt-manager" +VIRTMAN_LOG_FILES="" + +if [ -s $RCFILE ]; then + if ! source $RCFILE; then + log_write $OF "ERROR: Initializing resource file: $RCFILE" + exit 1 + fi +fi + +rpm_verify $OF virt-manager || exit 111 + +test -d $VIRTMAN_LOG_DIR && VIRTMAN_LOG_FILES="$(find -L $VIRTMAN_LOG_DIR/ -type f)" +log_files $OF 0 "$VIRTMAN_LOG_FILES" diff --git a/virt-manager.changes b/virt-manager.changes new file mode 100644 index 0000000..4dd1b91 --- /dev/null +++ b/virt-manager.changes @@ -0,0 +1,4187 @@ +------------------------------------------------------------------- +Mon Feb 12 10:50:32 MST 2024 - carnold@suse.com + +- bsc#1219791 - [virt-manager][aarch64] Error launching details: + name 'log' is not defined + virtinst-enable-video-virtio-for-arm.patch + +------------------------------------------------------------------- +Fri Feb 9 14:13:18 MST 2024 - carnold@suse.com + +- Handle case where vm-install no longer exists on the host. This + is related to bsc#1219133. + virt-install.rb + +------------------------------------------------------------------- +Wed Jan 24 14:50:16 MST 2024 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) (jsc#PED-6305) + 058-uri-Mock-domcaps-returning-NO_SUPPORT.patch + 059-tests-cli-Adjust-hotplug-test-for-latest-libvirt.patch + 060-Fix-some-pylint.patch + 061-tests-ui-make-newvm-test-start-less-flakey.patch + 062-tests-ui-make-creatnet-test-start-less-flakey.patch +- Cleanup now working or non-existant %check tests + +------------------------------------------------------------------- +Fri Jan 19 14:15:14 MST 2024 - carnold@suse.com + +- bsc#1218983 - [SLE15SP6] virt-manager:test testCLI0264virt_xml + fails with libvirt 10.0.0. Disable this test for now. + virt-manager.spec + +------------------------------------------------------------------- +Mon Nov 20 15:01:59 MST 2023 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) (jsc#PED-6305) + 001-cli-disk-Add-driver.metadata_cache-options.patch + 002-tests-cli-Fix-test-output-after-previous-commit.patch + 003-fsdetails-Fix-an-error-with-source.socket-of-virtiofs.patch + 004-cli-Drop-unnecessary-disk-prop-aliases.patch + 005-tests-testdriver-Add-filesystem-socket-example.patch + 006-virtinstall-split-no_install-conditional-apart-to-track-code-coverage.patch + 007-virtinstall-fix-regression-with-boot-and-no-install-method.patch + 008-tests-Add-a-compat-check-for-linux2020-in-amd-sev-test-case.patch + 009-cli-cpu-Add-maxphysaddr.mode-bits-options.patch + 010-virt-install-help-required-options-are-wrong.patch + 011-cloner-Sync-uuid-and-sysinfo-system-uuid.patch + 012-virt-install-unattended-and-cloud-init-conflict.patch + 013-virt-install-Reuse-cli.fail_conflicting.patch + 014-cli-support-boot-loader.stateless-.patch + 015-diskbackend-Drop-support-for-sheepdog.patch + 016-Fix-pylint-pycodestyle-warnings-with-latest-versions.patch + 017-tests-cpio-set-owner-to-00.patch + 018-addhardware-Fix-backtrace-when-controller.index-is-None.patch + 019-Clean-up-FileChooser-usage-a-bit.patch + 020-guest-Query-availability-of-usb-redirdevs-in-domcaps.patch + 021-guest-Query-availability-of-spicevmc-channels-in-domcaps.patch + 022-tests-Add-domcaps-coverage-for-usb-redir-spicevmc-channel-checks.patch + 023-tests-Update-to-latest-kvm-domcaps.patch + 024-progress-Fix-showing-correct-final-total.patch + 025-virtinstall-Fix-the-allocating-disk-size-printed-by-the-progress-bar.patch + 026-virtinstall-Hide-total_size-in-the-progress-bar-if-it-doesnt-need.patch + 027-asyncjob-Fix-backtrace-when-no-cursor-theme-installed.patch + 029-asyncjob-Remove-unused-import.patch + 030-Packit-initial-enablement.patch + 031-virt-install-Recommend-boot-uefi.patch + 032-virt-install-Document-Secure-Boot-setups.patch + 033-cloner-clone-serial-files.patch + 034-tests-cli-test-serial-file-clone.patch + 035-man-virt-install-Add-a-note-about-different-behavior-of-boot-on-s390x.patch + 036-tests-uitests-Fix-window-reposition-on-f38.patch + 037-tests-livetests-work-around-qemu-media-change-regression.patch + 038-tests-uitests-Fix-manager-window-repositioning-test.patch + 039-tests-Default-uitests-to-verbosity-2.patch + 040-uitests-Make-hotplug-test-pass-on-both-f37-and-f38.patch + 041-uitests-More-attempts-at-making-manager-reposition-test-reliable.patch + 042-tests-uitests-make-menu-operations-more-robust.patch + 043-rpm-convert-license-to-SPDX-format.patch + 044-uitests-Drop-hotplug-work-around-f38-libvirt-is-fixed-now.patch + 045-virtinst-delay-lookup_capsinfo-until-we-really-need-it.patch + 046-virtinst-suppress-lookup_capsinfo-exception-in-machine-type-alias-check.patch + 047-tests-data-refresh-Fedora-tree-URLs-in-virt-install-osinfo-expected-XMLs.patch + 048-tests-Add-unit-test-coverage-for-539.patch + 049-fix-indentation-of-multiline-log.exception-invocations.patch + 050-virt-clone-Copy-disk-permissions-as-well.patch + 051-data-appstream-add-launchable-tag.patch + 052-Fix-some-pylint.patch + 055-connectauth-Drop-sanity-checking-for-libvirtd.patch + 056-delete-Fix-ambiguity-that-confused-pylint.patch + 057-Fix-filesystem-socket.source.patch +- Replaced patches + 11a887ec-cli-disk-Add-driver.metadata_cache-options.patch + 1cb0be40-virtinstall-split-no_install-conditional-apart-to-track-code-coverage.patch + 58f5e36d-fsdetails-Fix-an-error-with-source.socket-of-virtiofs.patch + 67832d30-addhardware-Fix-backtrace-when-controller-index-is-None.patch + 7295ebfb-tests-cli-Fix-test-output-after-previous-commit.patch + 999ccb85-virt-install-unattended-and-cloud-init-conflict.patch + b0d05167-cloner-Sync-uuid-and-sysinfo-system-uuid.patch + c22a876e-tests-Add-a-compat-check-for-linux2020-in-amd-sev-test-case.patch + e94786c0-virtinstall-fix-regression-with-boot-and-no-install-method.patch + fbdf0516-cli-cpu-Add-maxphysaddr.mode-bits-options.patch +- Dropped patches + virtman-check-for-libvirt-modular-daemons.patch + virtman-fix-osinfo-tests.patch + +------------------------------------------------------------------- +Wed Oct 18 15:58:17 MDT 2023 - jfehlig@suse.com + +- Supportconfig: Adapt plugin to modern supportconfig + The supportconfig 'scplugin.rc' file is deprecated in favor of + supportconfig.rc'. Adapt the virt-manager plugin to the new scheme. + virt-manager-supportconfig + +------------------------------------------------------------------- +Mon Jul 31 11:01:58 MDT 2023 - carnold@suse.com + +- bsc#1213790 - Application tab in virt-manager is collapsed, + therefore I can't read anything + virtman-fix-inspection-apps-window.patch + +------------------------------------------------------------------- +Tue Jun 13 16:48:17 MDT 2023 - carnold@suse.com + +- bsc#1212195 - libvirtd crashes when virt-manager connects + virt-manager qemu:///system on a fresh installation tumbleweed + virtman-check-for-libvirt-modular-daemons.patch +- Changes to osinfo-db cause some virt-manager tests to fail. + virtman-fix-osinfo-tests.patch + +------------------------------------------------------------------- +Tue Apr 25 06:14:10 MDT 2023 - carnold@suse.com + +- bsc#1201748 - virt-install --graphics vnc fails with not support + for video model 'virtio' + virtinst-enable-video-virtio-for-arm.patch + +------------------------------------------------------------------- +Mon Apr 17 13:24:16 MDT 2023 - carnold@suse.com + +- Drop virtman-check-for-valid-display.patch. This patch is no + longer required. + +------------------------------------------------------------------- +Thu Apr 6 15:06:51 MDT 2023 - carnold@suse.com + +- Language file fixes + bsc#1209800, bsc#1197945, bsc#1197947, bsc#1198041 + virtman-language-fixes.patch + +------------------------------------------------------------------- +Fri Jan 20 11:20:21 MST 2023 - carnold@suse.com + +- bsc#1207070 - libvirt fails to start the guest once the new + shared disk is added, with the error, "cannot get 'write' + permission without 'resize' image size is not a multiple of + request alignment" + virtman-fix-shared-disk-request-alignment-error.patch + +------------------------------------------------------------------- +Thu Jan 5 10:45:46 MST 2023 - carnold@suse.com + +- Replace downstream patch with upstream version (bsc#1203252) + 67832d30-addhardware-Fix-backtrace-when-controller-index-is-None.patch + Drop virtman-fix-uninitialized-controller-index.patch + +------------------------------------------------------------------- +Mon Nov 28 12:28:44 MST 2022 - carnold@suse.com + +- bsc#1205675 - [Build 20221122] virt-install: Specifying --boot no + longer implies no_install=yes + 1cb0be40-virtinstall-split-no_install-conditional-apart-to-track-code-coverage.patch + e94786c0-virtinstall-fix-regression-with-boot-and-no-install-method.patch + +------------------------------------------------------------------- +Tue Nov 15 07:51:46 MST 2022 - carnold@suse.com + +- bsc#1203252 - virt-manager regression - cannot add second + virtio-scsi controller + virtman-fix-uninitialized-controller-index.patch + +------------------------------------------------------------------- +Mon Nov 7 05:32:57 MST 2022 - carnold@suse.com + +- Refresh test skips +- Drop the very old "Obsoletes: python-virtinst <= 0.600.4" + virt-manager.spec + +------------------------------------------------------------------- +Fri Nov 4 11:01:28 MDT 2022 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + 11a887ec-cli-disk-Add-driver.metadata_cache-options.patch + 7295ebfb-tests-cli-Fix-test-output-after-previous-commit.patch + 58f5e36d-fsdetails-Fix-an-error-with-source.socket-of-virtiofs.patch + c22a876e-tests-Add-a-compat-check-for-linux2020-in-amd-sev-test-case.patch + fbdf0516-cli-cpu-Add-maxphysaddr.mode-bits-options.patch + b0d05167-cloner-Sync-uuid-and-sysinfo-system-uuid.patch + 999ccb85-virt-install-unattended-and-cloud-init-conflict.patch + +------------------------------------------------------------------- +Tue Oct 4 14:00:46 MDT 2022 - carnold@suse.com + +- jsc#PED-2113 [Virt Tools] Refresh Virtualization Tools for Xen + and KVM Management + +------------------------------------------------------------------- +Fri Aug 5 16:25:59 UTC 2022 - Ben Greiner + +- Update to 4.1.0 + * Fix build with setuptools-61 (Peter Alfredsen, Miro Hrončok) + * add UI and cli support for qemu-vdagent channel (Jonathon Jongsma) + * cli: More --iothreads suboptions (Lin Ma) + * launch_security: Use SEV-ES policy=0x07 if host supports it (Charles + * Arnold) + * cli: Add support for URL query with disks (Martin Kletzander) +- Drop patches merged upstream: + * c6107419-tests-Drop-usage-of-sgio-unfiltered.patch + * 90e13549-Fix-build-with-setuptools-61+.patch + * 46dc0616-setup-add-bits-for-setuptools-61.patch + * 9ac94ef7-tests-Fix-another-sgio-filtered-case.patch + * 34662fec-tests-Fix-with-latest-argcomplete.patch + * d51541e1-Fix-UI-rename-with-firmware-efi.patch + * b8a77805-domain-cpu-Clear-migratable-when-changing-to-custom-cpu.patch + * 0d84bcfb-cli-Add-iothreadids-attributes-thread_pool_min-and-thread_pool_max.patch + * 424283ad-launch_security-Use-SEV-ES-policy-0x07-if-host-supports-it.patch +- Refresh patches + * virtman-add-tooltip-to-firmware.patch + -- changed surrounding imports + * virtinst-set-cache-mode-unsafe-for-install.patch + -- the patch changes the expected output in tests +- Refresh test skips + +------------------------------------------------------------------- +Wed Aug 3 14:51:34 MDT 2022 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + c6107419-tests-Drop-usage-of-sgio-unfiltered.patch + 9ac94ef7-tests-Fix-another-sgio-filtered-case.patch + b8a77805-domain-cpu-Clear-migratable-when-changing-to-custom-cpu.patch + 0d84bcfb-cli-Add-iothreadids-attributes-thread_pool_min-and-thread_pool_max.patch + 90e13549-Fix-build-with-setuptools-61+.patch + 424283ad-launch_security-Use-SEV-ES-policy-0x07-if-host-supports-it.patch +- Modified virtman-add-sev-memory-support.patch +- Renamed upstream patches + virtman-pr381-setuptools-61.patch to + 46dc0616-setup-add-bits-for-setuptools-61.patch + virtman-34662fe-argcomplete.patch to + 34662fec-tests-Fix-with-latest-argcomplete.patch + +------------------------------------------------------------------- +Tue Jul 19 10:03:04 UTC 2022 - Ben Greiner + +- Add Source URL +- Add upstream patch virtman-pr381-setuptools-61.patch + gh#virt-manager/virt-manager#381 +- Enable tests + * No python package should go untested + * Use multibuild so that all runtime requirements are checked + * Add virtman-34662fe-argcomplete.patch + +------------------------------------------------------------------- +Tue Jul 12 14:41:21 MDT 2022 - carnold@suse.com + +- Upstream bug fix (bsc#1027942) + d51541e1-Fix-UI-rename-with-firmware-efi.patch +- Use autosetup in spec file + +------------------------------------------------------------------- +Wed Jun 22 13:54:26 MDT 2022 - carnold@suse.com + +- bsc#1200691 - SLES 15 SP4 GMC --os-variant tag shouldn't be + mandatory on s390x (see also bsc#1200422) + revert-363fca41-virt-install-Require-osinfo-for-non-x86-HVM-case-too.patch + +------------------------------------------------------------------- +Mon May 23 08:10:42 MDT 2022 - carnold@suse.com + +- Change dependency on package xorriso to Requires from Recommends + virt-manager.spec + +------------------------------------------------------------------- +Wed Mar 30 09:06:33 MDT 2022 - carnold@suse.com + +- bsc#1196806 - [jsc#SLE-18834][virt-install] ERROR SEV launch + security requires a Q35 UEFI machine (epic: jsc#SLE-18732) + virtman-add-sev-memory-support.patch +- Add firmware features to description tooltip when mouse hovers + over the selected firmware file. + virtman-add-tooltip-to-firmware.patch + +------------------------------------------------------------------- +Wed Mar 2 21:11:58 MST 2022 - carnold@suse.com + +- bsc#1196202 - virt-install crashes on a time-of-check time-of-use + (TOCTOU) race condition + Resolved by upgrade to version 4.0.0 (jsc#SLE-18261) + virt-manager-4.0.0.tar.gz +- Other features and bug fixes (bsc#1027942) + virt-install –os-variant/–osinfo is now a hard requirement for most cases + Add ‘Enable shared memory’ UI checkbox (Lin Ma) + add UI preference to default to UEFI for new VMs (Charles Arnold) + Add virtiofs filesystem driver UI option + Fill in all –cputune, –cpu, –shmem, –input, and –boot suboptions (Hugues Fafard) + virt-* mdev improvements (Shalini Chellathurai Saroja) + bhyve improvments (Roman Bogorodskiy) + Revive network portgroup UI + enable a TPM by default when UEFI is used (Daniel P. Berrangé) + Use cpu host-passthrough by default on qemu x86 + use virtio-gpu video for most modern distros + Default to extra pcie root ports for q35 + set discard=unmap by default for sparse disks and block devices + We now require xorissofs for –location ISO + We now use setuptools rather than just plain distutils +- Add virtman-revert-use-of-AyatanaAppIndicator3.patch +- Drop the following patches + 0e15cd51-virt-manager-enable-MDEV-support.patch + 143c6bef-virtinst-fix-error-message-format-string.patch + 4d0e3232-virtinst-Fix-TOCTOU-in-domain-enumeration.patch + 8bb64ad5-console-Dont-block-console-reconnect-for-non-error.patch + 9363e1e6-virt-xml-add-support-for-mediated-devices.patch + 965480e8-virt-install-add-mediated-device.patch + 9d4002ee-tests-verify-MDEV-support.patch + cf93e2db-console-fix-error-with-old-pygobject.patch + d3c627f1-volumeupload-Use-1MiB-read-size.patch + d9b5090e-Fix-forgetting-password-from-keyring.patch + e7222b50-addstorage-Dont-pass-None-to-widget.set_active.patch + f87e96d3-hostdev-use-method-get_mdev_uuid.patch + fe8722e7-createnet-Remove-some-unnecessary-max_length-annotations.patch + virtinst-graphics-add-check-for-qemu-modules-in-spice-graphic.patch + virtman-add-firmware-preferences.patch + virtman-legacy-bios-support.patch + virtman-show-no-firmware-for-xenpv.patch + +------------------------------------------------------------------- +Thu Jan 20 15:46:02 MST 2022 - carnold@suse.com + +- bsc#1194323 - [jsc#SLE-19237][virt-manager] Detected the wrong + win2k22 guest system version from the local install media + virtinst-windows-server-detection.patch +- Upstream bug fixes (bsc#1027942) + 8bb64ad5-console-Dont-block-console-reconnect-for-non-error.patch + Drop virtman-init-viewer-on-reboot.patch + +------------------------------------------------------------------- +Thu Jan 13 13:33:50 MST 2022 - carnold@suse.com + +- jsc#SLE-20855 KVM: Enable vfio-ccw and vfio-ap in virt-* tools + 965480e8-virt-install-add-mediated-device.patch + f87e96d3-hostdev-use-method-get_mdev_uuid.patch + 9d4002ee-tests-verify-MDEV-support.patch + 9363e1e6-virt-xml-add-support-for-mediated-devices.patch + 0e15cd51-virt-manager-enable-MDEV-support.patch + +------------------------------------------------------------------- +Tue Nov 23 10:11:44 MST 2021 - carnold@suse.com + +- jsc#SLE-17735 - Support Oracle Linux as a guest VM. See also + bsc#1192238 [Build58.2][KVM] The latest supported OracleLinux as + guest versions are not included anywhere + virtinst-add-oracle-linux-support.patch + +------------------------------------------------------------------- +Thu Oct 28 16:09:36 MDT 2021 - carnold@suse.com + +- bsc#1188223 - L3: Sles12sp3 DomU won't boot after adding phys + hard drive + virtinst-xenbus-disk-index-fix.patch + +------------------------------------------------------------------- +Tue Oct 26 07:20:07 MDT 2021 - carnold@suse.com + +- jsc#SLE-21540 Dev: Prefer UEFI when creating new virtual machines. + Add a preferences option to allow users to default to UEFI when + creating a new VM. Libvirt decides which firmware file to use. + virtman-add-firmware-preferences.patch +- Renamed patch virtinst-modify-gui-defaults.patch to + virtman-modify-gui-defaults.patch + +------------------------------------------------------------------- +Fri Oct 22 10:09:51 MDT 2021 - carnold@suse.com + +- Add dependency in spec file for python3-gobject-Gdk (bsc#1191705) + virt-manager.spec + +------------------------------------------------------------------- +Tue Oct 12 16:47:47 MDT 2021 - carnold@suse.com + +- bsc#1191358 - The Virtual Machine Manager shows disconnected + after rebooting virtual machine in Xen mode in SLES15 SP3. + virtman-init-viewer-on-reboot.patch + +------------------------------------------------------------------- +Thu Oct 7 14:53:51 MDT 2021 - carnold@suse.com + +- bsc#1191356 - virt-manager should not depend on gtk4 + Modified files: + virt-manager.spec + virtman-dont-specify-gtksource-version.patch + virtman-dont-specify-vte-version.patch + +------------------------------------------------------------------- +Mon Oct 4 15:58:01 MDT 2021 - carnold@suse.com + +- jsc#SLE-20856 Dev: KVM: Enable vfio-ccw and vfio-ap in virt-* tools + 965480e8-virt-install-add-mediated-device.patch + +------------------------------------------------------------------- +Wed Sep 8 14:10:59 MDT 2021 - carnold@suse.com + +- bsc#1190215 - [virt-install] No Support for SUSE Product SLE-HPC + virtinst-add-sle-hpc-support.patch + +------------------------------------------------------------------- +Mon Jun 21 14:30:27 MDT 2021 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + d3c627f1-volumeupload-Use-1MiB-read-size.patch + cf93e2db-console-fix-error-with-old-pygobject.patch + 143c6bef-virtinst-fix-error-message-format-string.patch + fe8722e7-createnet-Remove-some-unnecessary-max_length-annotations.patch + d9b5090e-Fix-forgetting-password-from-keyring.patch + +------------------------------------------------------------------- +Mon Apr 12 13:01:27 MDT 2021 - carnold@suse.com + +- Add support for detecting SUSE Linux Enterprise Micro. See also + the osinfo-db package for the SLEM OS description file. + virtinst-add-slem-detection-support.patch + +------------------------------------------------------------------- +Wed Feb 24 14:10:01 MST 2021 - acho@suse.com + +- bsc#1178926 - Unable to find any master var for loader + /usr/share/qemu/{bios.bin, bios-256k.bin} + virtman-legacy-bios-support.patch + +------------------------------------------------------------------- +Mon Jan 25 14:32:10 MST 2021 - carnold@suse.com + +- bsc#1180897 - SLES15 SP2: VM does not boot after virt-install + installing from ISO image. + virtinst-keep-iso-for-xenpv.patch + +------------------------------------------------------------------- +Mon Jan 25 11:32:34 MST 2021 - carnold@suse.com + +- bsc#1181350 - [Build 20210122] openQA test fails in virt_install + on aarch64 + virtman-show-no-firmware-for-xenpv.patch + +------------------------------------------------------------------- +Thu Jan 7 12:48:11 MST 2021 - carnold@suse.com + +- bsc#1180069 - L3: virsh edit Error: XML document failed to + validate against schema: Unable to validate doc. + virtinst-smbios-unsupported-for-xenpv.patch + +------------------------------------------------------------------- +Tue Jan 5 13:10:18 MST 2021 - carnold@suse.com + +- bsc#1180047 - [xen][virt-manger] Libvirt or Hyperisor does not + support UEFI for 15SP3 XENPV Guest + virtman-show-no-firmware-for-xenpv.patch + +------------------------------------------------------------------- +Fri Dec 18 06:06:52 MST 2020 - carnold@suse.com + +- bsc#1180062 - virt-install uses isoinfo. Include mkisofs in the + spec file. + virt-manager.spec + +------------------------------------------------------------------- +Wed Dec 9 08:32:32 MST 2020 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + e7222b50-addstorage-Dont-pass-None-to-widget.set_active.patch + 4d0e3232-virtinst-Fix-TOCTOU-in-domain-enumeration.patch + +------------------------------------------------------------------- +Mon Nov 30 13:39:10 MST 2020 - carnold@suse.com + +- bsc#1179236 - L3: virt-install: "Error validating install + location: invalid literal for int() with base 10" reported by + virt-install ref:_00D1igLOd._5001iTe00n:ref + virtinst-sap-detection.patch + +------------------------------------------------------------------- +Wed Nov 25 19:00:46 UTC 2020 - Bruce Rogers + +- boo#1178141 - Accomodate qemu modularization with respect to v5.2 + qemu changes, where 3 additional modular shared objects need to + be present for spice support. This change simply augments what + was done before, adding the additional code to the same patch + +------------------------------------------------------------------- +Fri Nov 20 13:52:33 MST 2020 - carnold@suse.com + +- bsc#1172340 - Several YaST modules can be started by typing + "yast2 $module " + virt-install.rb + +------------------------------------------------------------------- +Mon Nov 16 09:57:34 MST 2020 - carnold@suse.com + +- jsc#SLE-16582, Upgrade virt-manager >= 3.x + * Slim down filesystem device editor UI + * Fix TOCTTOU virt-install bugs (Martin Pitt) + * Several other bug fixes + virt-manager-3.2.0.tar.bz2 +- Drop patches contained in new tarball + 1a1e4580-cloner-Explicitly-reject-network-disks-we-dont-know-how-to-clone.patch + 2773bc35-storagepool-cleanup-volumes-on-pool-cleanup.patch + b1328202-devices-disk-Skip-check_path_search-for-path.patch + virtman-append-usr-sbin-to-search-path.patch + +------------------------------------------------------------------- +Wed Nov 11 09:06:35 MST 2020 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + 1a1e4580-cloner-Explicitly-reject-network-disks-we-dont-know-how-to-clone.patch + 2773bc35-storagepool-cleanup-volumes-on-pool-cleanup.patch + b1328202-devices-disk-Skip-check_path_search-for-path.patch + +------------------------------------------------------------------- +Fri Oct 30 14:03:50 MDT 2020 - carnold@suse.com + +- jsc#SLE-12902 virt-manager: Display information about nvram file + used instead of the path to the Nvram + virtman-add-tooltip-to-firmware.patch + +------------------------------------------------------------------- +Tue Oct 27 14:16:41 MDT 2020 - carnold@suse.com + +- bsc#1177620 - [xen] deployed WIN2K19 guest system could not find + a driver for network adapter + virtinst-set-default-nic.patch + +------------------------------------------------------------------- +Sun Oct 25 02:34:44 UTC 2020 - Bruce Rogers + +- boo#1178141 - Accomodate qemu modularization with respect to + spice and spice related optional modules. If full spice support + is not detected due to missing qemu modules (v5.1 qemu and newer), + use vnc as the default install-time graphics type used + virtinst-graphics-add-check-for-qemu-modules-in-spice-graphic.patch + +------------------------------------------------------------------- +Fri Oct 23 13:25:38 MDT 2020 - carnold@suse.com + +- bsc#1177763 - Cannot install an existing virtual machine two + error messages with Virtual Machine Manager + virtman-append-usr-sbin-to-search-path.patch + +------------------------------------------------------------------- +Wed Sep 30 17:07:44 MDT 2020 - carnold@suse.com + +- jsc#SLE-16582, Upgrade virt-manager >= 3.x + * Return to using qcow2 sparse by default with libvirt 5.0.0+ + * Make VM window shortcuts less likely to conflict with guest + usage + * Fix 3.0.0 regression with spice audio + * createvol: Add explicit option for qcow2 non-sparse + * Unconditionally add USB redirdev to new VMs when using SPICE + * Unconditionally add sound devices to new VMs + * Translation string improvements (Pino Toscano) +- bsc#1176881 - No audio in virt-manager after upgrade + virt-manager-3.1.0.tar.bz2 +- Drop patches contained in new tarball + ba08f84b-addstorage-Return-to-using-qcow2-sparse-by-default.patch + a010c49b-cli-Fix-os-variant-help-introspection.patch + 79ebcbcb-viewers-Fix-spice-audio.patch + e5a51f63-details-Change-Close-accelerator-to-ctrl+shift+w.patch + 9c13d2f8-Remove-use-of-problematic-terminology.patch + +------------------------------------------------------------------- +Mon Sep 28 08:17:59 MDT 2020 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + ba08f84b-addstorage-Return-to-using-qcow2-sparse-by-default.patch + a010c49b-cli-Fix-os-variant-help-introspection.patch + 79ebcbcb-viewers-Fix-spice-audio.patch + e5a51f63-details-Change-Close-accelerator-to-ctrl+shift+w.patch + 9c13d2f8-Remove-use-of-problematic-terminology.patch + +------------------------------------------------------------------- +Wed Sep 16 05:24:21 MDT 2020 - carnold@suse.com + +- jsc#SLE-16582, Upgrade virt-manager >= 3.x + virt-manager-3.0.0.tar.bz2 + * virt-install –cloud-init support (Athina Plaskasoviti, Cole + Robinson) + * The virt-convert tool has been removed. Please use virt-v2v + instead + * A handful of UI XML configuration options have been removed. + The XML editor can be used instead. For a larger discussion see + this thread: https://www.redhat.com/archives/virt-tools-list/ + 2019-June/msg00117.html + * The ‘New VM’ UI now has a ‘Manual Install’ option which creates + a VM without any required install media + * In the ‘New VM’ UI, the network/pxe install option has been + removed. If you need network boot, choose ‘Manual Install’ and + set the boot device after initial VM creation + * ‘Clone VM’ UI has been reworked and simplified + * ‘Migrate VM’ UI now has an XML editor for the destination VM + * Global and per-vm option to disable graphical console + autoconnect. This makes it easier to use virt-manager alongside + another client like virt-viewer + * virt-manager: set guest time after VM restore (Michael Weiser) + * virt-manager: option to delete storage when removing disk + device (Lily Nie) + * virt-manager: show warnings if snapshot operation is unsafe + (Michael Weiser) + * Unattended install improvements (Fabiano Fidêncio) + * cli: new –xml XPATH=VAL option for making direct XML changes + * virt-install: new –reinstall=DOMAIN option + * virt-install: new –autoconsole text|graphical|none option + * virt-install: new –os-variant detect=on,require=on suboptions + * cli: –clock, –keywrap, –blkiotune, –cputune additions (Athina + Plaskasoviti) + * cli: add –features kvm.hint-dedicated.state= (Menno Lageman) + * cli:–iommu option (Menno Lageman) + * cli: Add –graphics websocket= support (Petr Benes) + * cli: Add –disk type=nvme source.* suboptions + * cli: Fill in all –filesystem suboptions + * Translation string improvements (Pino Toscano) + * Convert from .pod to .rst for man pages + * Switch to pytest as our test runner + * Massively improved unittest and uitest code coverage + * Now using github issues as our bug tracker +- Drop patches contained in new tarball + 3c6e8537-guest-fix-warning-message-when-machine-type-is-changed-for-secure-boot.patch + 0c223ab2-guest-Dont-set-default-uefi-if-firmware-is-set.patch + 414ffa5e-virt-install-Use-minutes-instead-of-seconds-on-get_time_string.patch + 53245827-urlfetcher-Force-a-flush-after-writing-to-a-file.patch + 3009888a-urlfetcher-Dont-override-fullurl-when-its-explicitly-set.patch + 9465da41-urlfetcher-Deal-with-file-in-_LocalURLFetcher.patch + 651e5b6d-devices-video-Simplify-model-hvm-check.patch + 1547e16d-domcapabilities-Get-video-devices.patch + 2e20b128-domcapabilities-Add-supports_video_bochs.patch + d9736db9-addhardware-Add-bochs-display-to-the-video-list.patch + 8f4c53ea-video-Prefer-bochs-when-its-supported..patch + ae19d6d6-fix-resizing-of-spice-clients-with-guest-resizing-enabled.patch + 51d84c54-connection-Avoid-repeated-default-pool-creation-attempts.patch + d934d6f2-domcaps-Fix-check-for-uncached-security-features.patch + 29f9f5f2-virt-xml-fix-defined_xml_is_unchanged.patch + 15a9502b-Fix-showing-the-firmware-type-in-case-of-firmware-auto-selection.patch + 5573aeb4-createnet-Fix-XML-editor-error-when-dhcp-fields-are-empty.patch + e8bf16b9-details-fix-detection-of-firmware-auto-selection.patch + 7e3fb3f2-graphics-Default-to-vga-instead-of-qxl-for-non-spice.patch +- Drop deprecated patches + virtman-fix-env-script-interpreter.patch + virtinst-osdict-get_supported.patch + virtconv-python2-to-python3-conversion.patch + virtinst-python2-to-python3-conversion.patch + virtman-python2-to-python3-conversion.patch + virttests-python2-to-python3-conversion.patch + 0002-virtinst-python3-avoid-comparison-of-None-and-int.patch + +------------------------------------------------------------------- +Thu Sep 3 13:59:39 MDT 2020 - carnold@suse.com + +- bsc#1176080 - selecting one UEFI firmware in install wizard + resets UI to BIOS + e8bf16b9-details-fix-detection-of-firmware-auto-selection.patch +- Upstream bug fix (bsc#1027942) + 5573aeb4-createnet-Fix-XML-editor-error-when-dhcp-fields-are-empty.patch + 7e3fb3f2-graphics-Default-to-vga-instead-of-qxl-for-non-spice.patch + +------------------------------------------------------------------- +Wed Sep 2 11:42:02 MDT 2020 - carnold@suse.com + +- jsc#SLE-11773, Dev: virt-manager: AppIndicator3 + virt-manager.spec +- jsc#SLE-15926 - Dev: XEN: drop netware support + Drop virtman-keycombo.patch + +------------------------------------------------------------------- +Wed Jul 29 13:22:53 MDT 2020 - carnold@suse.com + +- bsc#1174176 - IDE: "Only 2 disks for bus 'NONE' are supported" + virtman-disallow-adding-floppy-disk.patch + +------------------------------------------------------------------- +Thu Jul 23 17:20:03 MDT 2020 - carnold@suse.com + +- bsc#1172356 - Not able to hot-plug NIC via virt-manager, asks to + attach on next reboot while it should be live attached + virtinst-set-default-nic.patch + +------------------------------------------------------------------- +Mon Jul 13 14:43:35 MDT 2020 - carnold@suse.com + +- bsc#1169708 - Virtualization/virt-manager: Bug yast2 virt-install + internal error + virt-install.rb + +------------------------------------------------------------------- +Tue Mar 24 14:00:39 MDT 2020 - carnold@suse.com + +- bsc#1167569 - SLES 15 SP2 RC1 - virt-install: cache=none is + ignored (kvm) + virtinst-set-cache-mode-unsafe-for-install.patch + +------------------------------------------------------------------- +Fri Mar 20 15:03:40 MDT 2020 - carnold@suse.com + +- bsc#1167202 - SLES 15 SP2 Snapshot8 - virt-install misses module + gi + virt-manager.spec + +------------------------------------------------------------------- +Mon Mar 9 13:46:48 MDT 2020 - carnold@suse.com + +- Upstream bug fix (bsc#1027942) + 15a9502b-Fix-showing-the-firmware-type-in-case-of-firmware-auto-selection.patch + +------------------------------------------------------------------- +Mon Dec 2 14:03:00 MST 2019 - carnold@suse.com + +- bsc#1157144 - [s390][virt-manager] There was the black screen + from guest graphical console during guest installation + virtinst-s390x-disable-graphics.patch +- bsc#1158227 - virt-manager: Fix duplicate entries in the + operating system URL drop down menu + virtman-show-suse-install-repos.patch +- Upstream bug fix (bsc#1027942) + 29f9f5f2-virt-xml-fix-defined_xml_is_unchanged.patch +- Drop virtman-default-to-xen-pv.patch +- Refreshed + virtinst-add-pvh-support.patch + virtinst-modify-gui-defaults.patch + virt-manager.changes + virt-manager.spec + virtman-allow-creating-i686-vm.patch + virtman-python2-to-python3-conversion.patch + +------------------------------------------------------------------- +Wed Nov 27 14:53:06 MST 2019 - carnold@suse.com + +- bsc#1156964 - import a exist disk for creating PV guest failed + virtinst-pvgrub2-bootloader.patch +- Refreshed patches + virtinst-change-location-for-grub_xen.patch + virtinst-set-cache-mode-unsafe-for-install.patch + +------------------------------------------------------------------- +Fri Nov 22 13:50:11 MST 2019 - carnold@suse.com + +- bsc#1157097 - PV guest on_reboot event be set to 'destroy' by + default + virtinst-pvgrub2-bootloader.patch +- Rebased patches + virtinst-change-location-for-grub_xen.patch + virtman-increase-setKeepAlive-count.patch + +------------------------------------------------------------------- +Tue Nov 12 10:17:56 MST 2019 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + 1547e16d-domcapabilities-Get-video-devices.patch + 2e20b128-domcapabilities-Add-supports_video_bochs.patch + ae19d6d6-fix-resizing-of-spice-clients-with-guest-resizing-enabled.patch + 51d84c54-connection-Avoid-repeated-default-pool-creation-attempts.patch + d934d6f2-domcaps-Fix-check-for-uncached-security-features.patch + +------------------------------------------------------------------- +Mon Oct 28 07:35:25 MDT 2019 - carnold@suse.com + +- bsc#1155197 - [xen][virt-manager] Fail to boot up installed + sles15sp2 PV guest + virtinst-pvgrub2-bootloader.patch + virtinst-change-location-for-grub_xen.patch +- Upstream bug fixes (bsc#1027942) + 9465da41-urlfetcher-Deal-with-file-in-_LocalURLFetcher.patch + 651e5b6d-devices-video-Simplify-model-hvm-check.patch + d9736db9-addhardware-Add-bochs-display-to-the-video-list.patch + 8f4c53ea-video-Prefer-bochs-when-its-supported..patch + +------------------------------------------------------------------- +Tue Aug 27 13:54:23 MDT 2019 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + 0c223ab2-guest-Dont-set-default-uefi-if-firmware-is-set.patch + 414ffa5e-virt-install-Use-minutes-instead-of-seconds-on-get_time_string.patch + 53245827-urlfetcher-Force-a-flush-after-writing-to-a-file.patch + 3009888a-urlfetcher-Dont-override-fullurl-when-its-explicitly-set.patch + +------------------------------------------------------------------- +Mon Jul 29 13:22:56 MDT 2019 - carnold@suse.com + +- bsc#1143315 - virt-manager: Fix detection for SLE15 + virtinst-add-sle15-detection-support.patch + virtinst-add-caasp-support.patch + virtinst-detect-oes-distros.patch + virtinst-add-pvh-support.patch + virtinst-s390x-disable-graphics.patch + virtinst-set-qemu-emulator.patch + +------------------------------------------------------------------- +Wed Jul 10 14:21:53 MDT 2019 - carnold@suse.com + +- Upstream bug fix (bsc#1027942) + 3c6e8537-guest-fix-warning-message-when-machine-type-is-changed-for-secure-boot.patch + +------------------------------------------------------------------- +Fri Jul 5 08:54:18 MDT 2019 - carnold@suse.com + +- Update to virt-manager 2.2.1 (fate#326786) + virt-manager-2.2.1.tar.bz2 + * CVE-2019-10183: Replace –unattended user-password and admin-password with user-password-file and admin-password-file (Fabiano Fidêncio) + * Consistent –memballoon default across non-x86 (Andrea Bolognani) + * virt-install: add –numatune memnode.* (Athina Plaskasoviti) + * Drop hard dep on gtksourceview4, gtksourceview3 is fine as well +- Drop patches no longer needed + 033e9702-xmleditor-Handle-gtksourceview3-as-well-as-gtksourceview4.patch + 51d28f04-unattended-Dont-log-user-admin-passwords.patch + 5312a961-virt-install-Revive-wait-0-as-alias-for-noautoconsole.patch + 58c68764-unattended-Read-the-passwords-from-a-file.patch + +------------------------------------------------------------------- +Wed Jul 3 12:07:53 MDT 2019 - carnold@suse.com + +- bsc#1140211 - VUL-1: CVE-2019-10183: virt-manager: unattended + option leaks password via command line argument + 58c68764-unattended-Read-the-passwords-from-a-file.patch + 51d28f04-unattended-Dont-log-user-admin-passwords.patch +- Upstream bug fix (bsc#1027942) + 5312a961-virt-install-Revive-wait-0-as-alias-for-noautoconsole.patch + +------------------------------------------------------------------- +Mon Jun 17 13:09:29 MDT 2019 - carnold@suse.com + +- Update to virt-manager 2.2.0 (fate#326786) + virt-manager-2.2.0.tar.bz2 + * libvirt XML viewing and editing UI for new and existing domain, pools, volumes, networks + * virt-install: libosinfo –unattended support (Fabiano Fidêncio, Cole Robinson) + * Improve CPU model security defaults (Pavel Hrdina) + * virt-install: new –install option. Ex: virt-install –install fedora29 + * virt-install: new –install kernel=,initrd= + * virt-install: –disk, –memory, –name defaults from libosinfo (Fabiano Fidêncio, Cole Robinson) + * virt-install: add device suboption aliases which consistently match libvirt XML naming + * virt-xml: new –start, –no-define options (Marc Hartmayer) + * virt-install: Add driver_queues argument to –controller (Vasudeva Kamath) + * RISC-V support (Andrea Bolognani) + * Device default improvements for non-x86 KVM (Andrea Bolognani) + * Redesigned ‘New Network’ wizard + * libguestfs inspection improvements (Pino Toscano) + * virt-install: Add support for xenbus controller (Jim Fehlig) + * cli: Add –disk wwn=,rawio= (Athina Plaskasoviti) + * cli: Add –memballoon autodeflate=,stats.period= (Athina Plaskasoviti) + * cli: Add –iothreads (Athina Plaskasoviti) + * cli: Add –numatune memory.placement (Athina Plaskasoviti) + * cli: Add –launchSecurity option (Erik Skultety) + * cli: Fill in –memorybacking options + * cli: –smartcard: support database= and certificate[0-9]*= + * cli: –sysinfo: Add chasis suboptions + * cli: –metadata: add genid= and genid_enable= + * cli: –vcpus: add vcpus.vcpu[0-9]* config + * cli: fill in all common char source options for –serial, –parellel, –console, –channel, –smartcard, –rng, –redirdev + 033e9702-xmleditor-Handle-gtksourceview3-as-well-as-gtksourceview4.patch + virtman-dont-specify-gtksource-version.patch +- Drop patches no longer needed + f7508d02-addhardware-Fix-setting-optimal-default-net-model.patch + 1018ab44-inspection-handle-failures-in-application-listing.patch + ae8a4f3d-engine-Fix-first-run-startup-error.patch + 57db4185-virt-clone-fix-force-copy-of-empty-cdrom-or-floppy-disk.patch + 26a433fc-virtManager-clone-check-which-storage-pools-supports-volume-cloning.patch + 4f66c423-cloner-Handle-nonsparse-for-qcow2-images.patch + a02fc0d0-virtManager-clone-build-default-clone-path-if-we-know-how.patch + 1856c1fa-support-Fix-minimum-version-check.patch + 001-adf30349-cli-refactor-get_prop.patch + 002-60c7e778-xmlapi-add-set_prop.patch + 003-5bad22e8-tests-Use-get-set_prop.patch + 004-ee5f3eab-support-Add-SUPPORT_CONN_DEVICE_BOOT_ORDER.patch + 005-7768eb17-cli-Add-check-if-device-boot-order-is-supported.patch + 006-ecc0861c-tests-xmlparse-refactor-method-for-generating-out-file-path.patch + 007-c9d070da-guest-Add-reorder_boot_order-method.patch + 008-1b535940-tests-Add-test-case-for-reorder_boot_order-method.patch + 009-b83a0a61-cli-Use-reorder_boot_order-for-setting-the-boot-order.patch + 010-c896d19d-tests-cli-Add-boot.order-tests.patch + 011-29f9f2ac-virt-xml-Add-no-define-argument.patch + 012-c2bff509-tests-cli-Add-test-case-for-no-define-argument.patch + 013-90b1a3ab-virt-xml-Add-support-for-starting-the-domain.patch + 014-908b8e8d-tests-virt-xml-Add-test-cases-for-start-option.patch + 5bc847eb-virt-install-Do-not-warn-about-consoles-on-s390x.patch + 74bbc3db-urldetect-Check-also-for-treeinfo.patch + 708af01c-osdict-Add-supports_virtioinput.patch + f23b01be-guest-Add-VirtIO-input-devices-to-s390x-guests-with-graphics.patch + 7afbb90b-virt-xml-Handle-VM-names-that-look-like-id-uuid.patch + 8d9743d6-virt-install-Add-support-for-xenbus-controller.patch + a0ca387a-cli-Fix-pool-default-when-path-belongs-to-another-pool.patch + 578451fe-urldetect-Dont-run-regex-against-None-SUSE-product-name.patch + virtman-default-guest-from-host-os.patch + virtman-prevent-double-click-starting-vm-twice.patch + +------------------------------------------------------------------- +Thu Jun 13 14:15:44 MDT 2019 - carnold@suse.com + +- bsc#1138110 - XEN guest can not be restored from virt-manager + after it is saved + virtman-fix-restore-vm-menu-selection.patch +- Upstream bug fix (bsc#1027942) + 578451fe-urldetect-Dont-run-regex-against-None-SUSE-product-name.patch + +------------------------------------------------------------------- +Mon Jun 3 16:03:39 MDT 2019 - carnold@suse.com + +- Make sure the old qemu-dm is not used for installing VMs. It + can't handle direct kernel boot. (bsc#1125725) + virtinst-set-qemu-emulator.patch + +------------------------------------------------------------------- +Thu May 23 08:17:01 MDT 2019 - carnold@suse.com + +- jsc#SLE-6262, fate#327048: KVM: Boot Configuration Override + 001-adf30349-cli-refactor-get_prop.patch + 002-60c7e778-xmlapi-add-set_prop.patch + 003-5bad22e8-tests-Use-get-set_prop.patch + 004-ee5f3eab-support-Add-SUPPORT_CONN_DEVICE_BOOT_ORDER.patch + 005-7768eb17-cli-Add-check-if-device-boot-order-is-supported.patch + 006-ecc0861c-tests-xmlparse-refactor-method-for-generating-out-file-path.patch + 007-c9d070da-guest-Add-reorder_boot_order-method.patch + 008-1b535940-tests-Add-test-case-for-reorder_boot_order-method.patch + 009-b83a0a61-cli-Use-reorder_boot_order-for-setting-the-boot-order.patch + 010-c896d19d-tests-cli-Add-boot.order-tests.patch + 011-29f9f2ac-virt-xml-Add-no-define-argument.patch + 012-c2bff509-tests-cli-Add-test-case-for-no-define-argument.patch + 013-90b1a3ab-virt-xml-Add-support-for-starting-the-domain.patch + 014-908b8e8d-tests-virt-xml-Add-test-cases-for-start-option.patch + +------------------------------------------------------------------- +Tue Apr 9 10:21:29 MDT 2019 - carnold@suse.com + +- Drop unneeded 0003-virtinst-python3-avoid-using-long-type.patch + Drop Requires on python3-six + +------------------------------------------------------------------- +Wed Apr 3 11:08:16 MDT 2019 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + 57db4185-virt-clone-fix-force-copy-of-empty-cdrom-or-floppy-disk.patch + 26a433fc-virtManager-clone-check-which-storage-pools-supports-volume-cloning.patch + 4f66c423-cloner-Handle-nonsparse-for-qcow2-images.patch + a02fc0d0-virtManager-clone-build-default-clone-path-if-we-know-how.patch + 1856c1fa-support-Fix-minimum-version-check.patch + 74bbc3db-urldetect-Check-also-for-treeinfo.patch + 708af01c-osdict-Add-supports_virtioinput.patch + f23b01be-guest-Add-VirtIO-input-devices-to-s390x-guests-with-graphics.patch + 7afbb90b-virt-xml-Handle-VM-names-that-look-like-id-uuid.patch + a0ca387a-cli-Fix-pool-default-when-path-belongs-to-another-pool.patch + +------------------------------------------------------------------- +Mon Mar 25 05:29:39 MDT 2019 - carnold@suse.com + +- bsc#1126325 - L3: No way to set max_grant_frames for domUs via + libvirt + 8d9743d6-virt-install-Add-support-for-xenbus-controller.patch +- bsc#1129176 - SLES 12 SP4 - kvm virt-install using ttyS0 leads to + user process fault and interrupts installation (virt-manager) + 5bc847eb-virt-install-Do-not-warn-about-consoles-on-s390x.patch + +------------------------------------------------------------------- +Thu Mar 14 13:52:14 MDT 2019 - carnold@suse.com + +- bsc#1129309 - Missing .treeinfo file on the media for CaaSP + virtinst-add-caasp-support.patch + +------------------------------------------------------------------- +Wed Mar 13 15:40:14 MDT 2019 - carnold@suse.com + +- Add detection for Caasp 4.0 + virtinst-media-detection.patch + +------------------------------------------------------------------- +Wed Feb 20 10:10:13 MST 2019 - carnold@suse.com + +- Temporarily disable Xen PVH support until feature is more usable + (bsc#1125889) + virtinst-add-pvh-support.patch + +------------------------------------------------------------------- +Tue Feb 12 13:34:26 MST 2019 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + f7508d02-addhardware-Fix-setting-optimal-default-net-model.patch + 1018ab44-inspection-handle-failures-in-application-listing.patch + ae8a4f3d-engine-Fix-first-run-startup-error.patch + +------------------------------------------------------------------- +Mon Feb 4 10:16:11 MST 2019 - carnold@suse.com + +- Update to virt-manager 2.1.0 (fate#326786) + virt-manager-2.1.0.tar.bz2 + virtman-fix-env-script-interpreter.patch + * Bash autocompletion support (Lin Ma, Cole Robinson) + * UI and command line –vsock support (Slavomir Kaslev) + * virt-xml: Add –os-variant option (Andrea Bolognani) + * virt-install: use libosinfo cpu, mem, disk size defaults (Fabiano Fidencio) + * virt-install: Better usage of libosinfo -unknown distro IDs (Fabiano Fidencio) + * virt-install: More usage of libosinfo for ISO –location detection + * virt-install: Add –location LOCATION,kernel=X,initrd=Y for pointing to kernel/initrd in media that virt-install/libosinfo fails to detect +- Drop + 25b88733-urldetect-Dont-overload-suse_content-variable.patch + 9308bae3-util-Fix-typo-vpcu-vcpu.patch + b8aff280-virtinst-quickfix-ubuntu-net-preseed-insert-cdrom-error.patch + c30b3bc6-increase-timeout-for-vm-to-start.patch + virtinst-use-latest-opensuse-version-when-unknown-media.patch + +------------------------------------------------------------------- +Fri Feb 1 09:34:31 MST 2019 - carnold@suse.com + +- bsc#1123942 - [XEN][Build157.1] failed to open file + '/usr/lib/grub2/x86_64-xen/grub.xen during bootup PV guest + virtinst-change-location-for-grub_xen.patch + +------------------------------------------------------------------- +Wed Jan 9 15:55:22 MST 2019 - carnold@suse.com + +- Increase the timeout for a vm to start before assuming something + is wrong. (bsc#1027942) + c30b3bc6-increase-timeout-for-vm-to-start.patch + +------------------------------------------------------------------- +Mon Dec 17 14:19:11 MST 2018 - carnold@suse.com + +- fate#326698: Add support for Xen's PVH guest type + virtinst-add-pvh-support.patch + +------------------------------------------------------------------- +Mon Dec 3 13:31:50 UTC 2018 - Stasiek Michalski + +- Change icons to those provided by package + (yast2-theme doesn't provide some icons anymore) + virt-install.desktop + +------------------------------------------------------------------- +Thu Nov 29 11:50:08 MST 2018 - carnold@suse.com + +- bsc#1117846 - virt-manager: Checking for virtualization packages + error + virtman-load-stored-uris.patch + +------------------------------------------------------------------- +Tue Nov 27 13:13:15 MST 2018 - carnold@suse.com + +- bsc#1116990 - [virt-install] internal error: libxenlight failed + to create new domain 'sles-11-sp4-64-pv-def-net'. Fix reversed + logic when testing for i386. + virtinst-use-xenpae-kernel-for-32bit.patch + +------------------------------------------------------------------- +Tue Oct 30 16:06:51 MDT 2018 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + b8aff280-virtinst-quickfix-ubuntu-net-preseed-insert-cdrom-error.patch + 25b88733-urldetect-Dont-overload-suse_content-variable.patch + 9308bae3-util-Fix-typo-vpcu-vcpu.patch + +------------------------------------------------------------------- +Tue Oct 30 15:37:09 MDT 2018 - carnold@suse.com + +- Update to virt-manager 2.0.0 (fate#326786) + virt-manager-2.0.0.tar.bz2 + * Finish port to Python 3 (Radostin Stoyanov, Cole Robinson) + * Improved VM defaults for supported OS: q35 PCIe, usb3, CPU host-model + * Search based OS selection UI for new VMs (Daniel P. Berrangé, Cole Robinson) + * Track OS name for lifetime of domain in XML + * Host interface management UI has been completely removed + * Show domain IP on interface details page (Lin Ma, Cole Robinson) + * More efficient stats polling with AllDomainStats (Simon Kobyda, Cole Robinson) + * TPM device model and backend UI (Marc-André Lureau, Stefan Berger) + * Show connection state in UI (Lin Ma) + * Show attached devices in UI (Lin Ma) + * UI option to plug/unplug VM nic link (Simon Kobyda) + * UI support for disk discard and detect_zeroes (Povilas Kanapickas, Lin Ma) + * Improved SUSE –location URL/ISO detection (Charles Arnold) + * cli and UI support for SCSI persistent reservations (Lin Ma) + * cli: Add –network mtu.size= option (Anya Harter) + * cli: Add –disk driver.copy_on_read (Anya Harter) + * cli: Add –disk geometry support (Anya Harter) + * cli: Add –sound codec support (Anya Harter) + * cli: Add –hostdev net/char/block for LXC (Lubomir Rintel) + * cli: Add –memorybacking access_mode and source_type (Marc-André Lureau) + * cli: Add –boot rebootTimout (Yossi Ovadia) + * cli: Add –boot bootloader= + * cli: Add –destroy-on-exit +- Drop patches contained in new tarball or not required + 0004-virtinst-python3-use-binary-mode-for-kernel.patch + 27d4b167-virtinst-update-location-for-opensuse.patch + 5a7698c7-fix-select-network-vol.patch + d15b78ab-virtinst-read-CPU-model-from-domain-capabilities.patch + fd6a8154-virtinst-compare-host-and-domain-cpu-models.patch + 5a7698c7-fix-select-network-vol.patch + virtcli-python2-to-python3-conversion.patch + virtinst-add-ppc64-arch-support.patch + virtinst-check-date-format.patch + virtinst-fix-sle-distro-parsing.patch + virtinst-handle-tumbleweed-treeinfo-file.patch + virtinst-nfs-install-sanitize.patch + virtinst-no-usb-tablet-for-xenpv.patch + virtinst-set-qemu-emulator.patch + virtinst-storage-ocfs2.patch + virtman-add-connect-default.patch + virtman-fix-missing-translations.patch + virtman-libvirtd-not-running.patch + virtman-packages.patch + virtmisc-python2-to-python3-conversion.patch + +------------------------------------------------------------------- +Mon Oct 22 11:33:51 UTC 2018 - Guillaume GARDET + +- boo#1112729 - Add missing python3-six dep introduced by patch + 0003-virtinst-python3-avoid-using-long-type.patch + +------------------------------------------------------------------- +Tue Oct 16 02:24:29 UTC 2018 - James Fehlig + +- Fix selection of network volumes (bsc#1100558) + 5a7698c7-fix-select-network-vol.patch + +------------------------------------------------------------------- +Mon Oct 15 06:41:55 UTC 2018 - Klaus Kämpf + +- Remove hard dependency on openSUSE branding by changing it to a + recommends + +------------------------------------------------------------------- +Fri Jul 13 16:03:17 MDT 2018 - carnold@suse.com + +- Fix sle15 detection because of changes in osinfo-db (bsc#1054986) + virtinst-add-sle15-detection-support.patch + +------------------------------------------------------------------- +Wed Jun 20 11:04:14 MDT 2018 - carnold@suse.com + +- bsc#1096819 - virt-install - Couldn't find hvm kernel for SUSE + tree + virtinst-python2-to-python3-conversion.patch + +------------------------------------------------------------------- +Tue Jun 19 11:22:52 MDT 2018 - carnold@suse.com + +- bsc#1098054 - osinfo-query and virt-install do not detect + caasp3.0 + virtinst-add-caasp-support.patch + +------------------------------------------------------------------- +Thu May 31 11:45:17 MDT 2018 - carnold@suse.com + +- bsc#1081544 - SLEx_15_LOC : YaST: ALL_LANGS:Untranslated text + 'Options' in Virtualization/Create a new Virtual Machine/Network + Install (HTTP...)/Step 2 of 5 dialog +- bsc#1081542 - SLEx_15_LOC : YaST: ALL_LANGS:Untranslated text. + Translation fix included in new tarball. + virtman-fix-missing-translations.patch + +------------------------------------------------------------------- +Mon May 21 11:35:45 MDT 2018 - carnold@suse.com + +- Update to virt-manager 1.5.1 (bsc#1027942). This was a quick bug + bugfix release that came out shortly after version 1.5.0 + virt-manager-1.5.1.tar.bz2 +- Drop 4c7c4590-manager-Fix-mem-disk-net-stats-graphs.patch + +------------------------------------------------------------------- +Thu Apr 26 15:00:36 MDT 2018 - carnold@suse.com + +- bsc#1091113 - virt-install errs with: No option 'version' in + section: 'general + virtinst-handle-tumbleweed-treeinfo-file.patch + +------------------------------------------------------------------- +Tue Apr 3 09:21:41 MDT 2018 - carnold@suse.com + +- bsc#1086038 - VM guests cannot be properly installed with + virt-install + d15b78ab-virtinst-read-CPU-model-from-domain-capabilities.patch + fd6a8154-virtinst-compare-host-and-domain-cpu-models.patch +- Drop virtinst-dont-set-cpu-model-when-caps-mismatch.patch in + favor of upstream versions. + +------------------------------------------------------------------- +Thu Mar 29 09:06:00 MDT 2018 - carnold@suse.com + +- Fallback to latest version of openSUSE when opensuse-unknown is + detected for the ISO (bsc#1085757) + virtinst-use-latest-opensuse-version-when-unknown-media.patch + +------------------------------------------------------------------- +Thu Mar 22 15:35:57 MDT 2018 - carnold@suse.com + +- bsc#1086038 - VM guests cannot be properly installed with + virt-install + virtinst-dont-set-cpu-model-when-caps-mismatch.patch + +------------------------------------------------------------------- +Wed Mar 7 15:19:38 MST 2018 - carnold@suse.com + +- bsc#1067018 - L3: KVM Guest creation failed - Property .cmt not + found + virtinst-dont-use-special-copy-cpu-features.patch +- Upstream bug fix (bsc#1027942) + 27d4b167-virtinst-update-location-for-opensuse.patch + +------------------------------------------------------------------- +Mon Mar 5 13:32:19 UTC 2018 - jengelh@inai.de + +- Replace old $RPM_* shell vars. Use %_datadir more consistently. + +------------------------------------------------------------------- +Fri Feb 9 15:39:31 MST 2018 - carnold@suse.com + +- Upstream bug fix (bsc#1027942) + 4c7c4590-manager-Fix-mem-disk-net-stats-graphs.patch + +------------------------------------------------------------------- +Wed Feb 7 08:58:09 MST 2018 - carnold@suse.com + +- Update to virt-manager 1.5.0 (bsc#1027942) + virt-manager-1.5.0.tar.bz2 + * 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 +- Dropped patches + 0001-Improve-container-image-url-example.patch + 0001-py3-store-exception-variables-for-use-outside-except.patch + 0002-create-wizard-fix-alignment-in-os-container-page.patch + 0003-oscontainer-ask-root-password-in-the-wizard.patch + 0004-Harmonize-invisible_char-values.patch + 083dfcc8-Show-details-about-the-network-of-SR-IOV-VF-pool.patch + 08a58d61-pycodestyle-remove-description-of-fixed-errors.patch + 0c6bcb09-fix-bytes-string-mess-in-serial-console.patch + 0e812e3c-dont-skip-authentication-for-listen-type-none-with-fixed-QEMU.patch + 23aaf852-network-Set-bridge-name-to-None-instead-of-blank.patch + 2d276ebe-progress-dont-overwrite-format.patch + 2eb455c9-correctly-calculate-virtio-scsi-controller-index.patch + 374a3779-urlfetcher-write-test-file-as-binary-content.patch + 37ea5207-replace-StandardError-with-Exception.patch + 3b769643-dont-add-URI-into-params-for-tunneled-migration.patch + 3be78d1f-addhardware-dont-allow-panic-option-where-not-supported.patch + 44de92b7-use-reload-from-imp-module.patch + 63fce081-pycodestyle-Use-isinstance-for-type-checking.patch + 67122615-python2to3-division-compatability.patch + 69c84bea-import-reduce-from-functools-module.patch + 6dfc4de1-add-support-for-parsing-formatting-SR-IOV-VFs.patch + 6e6f59e7-diskbackend-get-a-proper-size-of-existing-block-device-while-cloning.patch + 73de8285-systray-remove-redundant-variable-assignment.patch + 75210ed3-replace-StringIO-with-io.patch + 7f1b4cee-pycodestyle-fix-all-E125-warnings.patch + 7fc7e94f-fix-virtio-scsi-controller-target-calculation.patch + 91c0669c-cli-Fix-OrderedDict-mutated-during-iteration-on-python3.patch + 9617d126-systray-Use-APPLICATION_STATUS-for-appindicator.patch + 999dbb36-cli-Make-VirtCLIArgument-instantiation-less-crazy.patch + 9a9f9ecd-ignore-comments-in-keymap-conf-files.patch + a2bcd6c4-dont-compare-between-None-and-int.patch + b5b2433a-baseclass-Fix-UI-file-loading-on-py3.patch + b8fa0c6b-xmlnsqemu-order-XML-output-like-libvirt-does.patch + b9bc3b60-undefine-only-persistent-domain.patch + bc3c9a9d-progress-remove-unused-import.patch + bc8c5b07-append--attach-to-virt-viewer-if-graphics-has-listen-type-none.patch + c174b550-connection-Another-py3-exception-variable-fix.patch + d1e1cf64-progress-remove-trailing-white-space.patch + d2648d81-virtconv-dont-implicitly-depend-on-dict-hash-order.patch + d82022bd-manager-drop-python2-only-cmp-usage.patch + dff00d4f-remove-deprecated-statvfs-module.patch + e2ad4b2f-convert-iteritems-to-items.patch + e73abe5a-diskbackend-convert-to-long-the-calculated-size.patch + f41aafc7-Use-enumerate-instead-of-range-and-len.patch + f7c8cf9f-devicepanic-dont-return-empty-model-list.patch + f836e47b-virtinst-Fix-URLFetcher-for-reading-files.patch + +------------------------------------------------------------------- +Tue Feb 6 11:57:54 MST 2018 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + b5b2433a-baseclass-Fix-UI-file-loading-on-py3.patch + 0c6bcb09-fix-bytes-string-mess-in-serial-console.patch + bc8c5b07-append--attach-to-virt-viewer-if-graphics-has-listen-type-none.patch + 0e812e3c-dont-skip-authentication-for-listen-type-none-with-fixed-QEMU.patch + 67122615-python2to3-division-compatability.patch +- Dropped in favor of upstream version + 0001-virtinst-python3-terminal-width-should-be-int.patch + python3-fix-bytes-string-mess-in-serial-console.patch + +------------------------------------------------------------------- +Mon Feb 5 16:26:48 MST 2018 - carnold@suse.com + +- Default to sles15 and opensuse15 as the 'preferred_distros' for + this release. (bsc#1054986) + virtinst-osdict-get_supported.patch + virt-manager.spec + +------------------------------------------------------------------- +Wed Jan 24 19:08:03 UTC 2018 - bjorn.lie@gmail.com + +- Replace conditional gtk2-tools with gtk3-tools BuildRequires. + (bsc#1070896) + +------------------------------------------------------------------- +Tue Jan 16 10:15:04 UTC 2018 - cbosdonnat@suse.com + +- Fix a python3 UnboundLocalError (bsc#1075622) + c174b550-connection-Another-py3-exception-variable-fix.patch + +------------------------------------------------------------------- +Fri Jan 5 14:23:21 MST 2018 - carnold@suse.com + +- bsc#1072012 - openSUSE Tumbleweed, virt-manager: Opening VM GUI + fails with "ordinal not in range" (bart.vanassche+novell@gmail.com) +- bsc#1074808 - [beta4+maintain update][virt-manager] Error + launching details:'ascii' codec can't decode byte + virtman-python2-to-python3-conversion.patch + +------------------------------------------------------------------- +Tue Jan 2 12:45:56 MST 2018 - carnold@suse.com + +- bsc#1074056 - [build 408.1]virt-install tool reports "TypeError: + must use keyword argument for key function" when parsing vnc + virtinst-python2-to-python3-conversion.patch + +------------------------------------------------------------------- +Tue Jan 2 08:51:45 UTC 2018 - cbosdonnat@suse.com + +- Downgrade python3-virt-bootstrap Recommends to Suggests to + minimize the number of default dependencies. (bsc#1073937) + +------------------------------------------------------------------- +Wed Dec 20 08:31:19 UTC 2017 - cbosdonnat@suse.com + +- Get rid of "TypeError: Couldn't find foreign struct converter for + 'cairo.Context'" errors by adding a dependency to python3-cairo. + (bsc#1062865) +- Python3: Fix 'local variable 'e' referenced before assignment' + 0001-py3-store-exception-variables-for-use-outside-except.patch + (bsc#1073594) + +------------------------------------------------------------------- +Tue Dec 19 10:44:40 MST 2017 - carnold@suse.com + +- Fix TypeError in inspection.py (bsc#1070896) + virtman-python2-to-python3-conversion.patch +- Fix openSUSE 15.0 detection. It has no content file or .treeinfo + file (bsc#1054986) + virtinst-add-sle15-detection-support.patch + +------------------------------------------------------------------- +Wed Dec 13 10:50:04 UTC 2017 - cbosdonnat@suse.com + +- Fix display and input of text in serial console (bsc#1070896) + python3-fix-bytes-string-mess-in-serial-console.patch +- Fix virt-bootstrap UI integration (bsc#1063367) + 0001-Improve-container-image-url-example.patch + 0002-create-wizard-fix-alignment-in-os-container-page.patch + 0003-oscontainer-ask-root-password-in-the-wizard.patch + 0004-Harmonize-invisible_char-values.patch + +------------------------------------------------------------------- +Mon Dec 11 14:50:59 MST 2017 - carnold@suse.com + +- bsc#1071825 - AttributeError: 'NoneType' object has no attribute + 'change_run_text' + virtman-register-delete-event-for-details-dialog.patch + +------------------------------------------------------------------- +Thu Dec 7 12:41:25 UTC 2017 - cbosdonnat@suse.com + +- bsc#1070896 - virt-manager will not run on a python3 only system + remove obsolete python-gconf dependency. This one was also pulling + python2. + +------------------------------------------------------------------- +Thu Dec 7 11:49:29 UTC 2017 - mwilck@suse.com + +- More fixes for python3 (bsc#1070896) + 0001-virtinst-python3-terminal-width-should-be-int.patch + 0002-virtinst-python3-avoid-comparison-of-None-and-int.patch + 0003-virtinst-python3-avoid-using-long-type.patch + 0004-virtinst-python3-use-binary-mode-for-kernel.patch + +------------------------------------------------------------------- +Sat Dec 2 18:41:22 MST 2017 - carnold@suse.com + +- bsc#1070896 - virt-manager will not run on a python3 only system + virtcli-python2-to-python3-conversion.patch + virtconv-python2-to-python3-conversion.patch + virtinst-python2-to-python3-conversion.patch + virtman-python2-to-python3-conversion.patch + virtmisc-python2-to-python3-conversion.patch + virttests-python2-to-python3-conversion.patch + +------------------------------------------------------------------- +Tue Nov 28 08:24:39 MST 2017 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + b9bc3b60-undefine-only-persistent-domain.patch + 7fc7e94f-fix-virtio-scsi-controller-target-calculation.patch + 2eb455c9-correctly-calculate-virtio-scsi-controller-index.patch + +------------------------------------------------------------------- +Fri Nov 24 09:48:19 MST 2017 - carnold@suse.com + +- bsc#1067263 - virt-install: ERROR unicode argument expected, got + 'str' + f836e47b-virtinst-Fix-URLFetcher-for-reading-files.patch +- Drop virtinst-fix-replace-StringIO-with-io.patch + +------------------------------------------------------------------- +Wed Nov 8 13:59:11 MST 2017 - carnold@suse.com + +- bsc#1067263 - virt-install: ERROR unicode argument expected, got + 'str' + virtinst-fix-replace-StringIO-with-io.patch + +------------------------------------------------------------------- +Fri Oct 27 14:19:35 MDT 2017 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + 9a9f9ecd-ignore-comments-in-keymap-conf-files.patch + 9617d126-systray-Use-APPLICATION_STATUS-for-appindicator.patch + e73abe5a-diskbackend-convert-to-long-the-calculated-size.patch + 6e6f59e7-diskbackend-get-a-proper-size-of-existing-block-device-while-cloning.patch + 23aaf852-network-Set-bridge-name-to-None-instead-of-blank.patch + d1e1cf64-progress-remove-trailing-white-space.patch + 63fce081-pycodestyle-Use-isinstance-for-type-checking.patch + 08a58d61-pycodestyle-remove-description-of-fixed-errors.patch + bc3c9a9d-progress-remove-unused-import.patch + 2d276ebe-progress-dont-overwrite-format.patch + e2ad4b2f-convert-iteritems-to-items.patch + dff00d4f-remove-deprecated-statvfs-module.patch + 75210ed3-replace-StringIO-with-io.patch + a2bcd6c4-dont-compare-between-None-and-int.patch + 44de92b7-use-reload-from-imp-module.patch + 69c84bea-import-reduce-from-functools-module.patch + 37ea5207-replace-StandardError-with-Exception.patch + f41aafc7-Use-enumerate-instead-of-range-and-len.patch + 91c0669c-cli-Fix-OrderedDict-mutated-during-iteration-on-python3.patch + b8fa0c6b-xmlnsqemu-order-XML-output-like-libvirt-does.patch + d2648d81-virtconv-dont-implicitly-depend-on-dict-hash-order.patch + 999dbb36-cli-Make-VirtCLIArgument-instantiation-less-crazy.patch + 7f1b4cee-pycodestyle-fix-all-E125-warnings.patch + d82022bd-manager-drop-python2-only-cmp-usage.patch + 374a3779-urlfetcher-write-test-file-as-binary-content.patch + f7c8cf9f-devicepanic-dont-return-empty-model-list.patch + 3be78d1f-addhardware-dont-allow-panic-option-where-not-supported.patch + 73de8285-systray-remove-redundant-variable-assignment.patch + +------------------------------------------------------------------- +Wed Oct 11 13:58:55 MDT 2017 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + 3b769643-dont-add-URI-into-params-for-tunneled-migration.patch + 6dfc4de1-add-support-for-parsing-formatting-SR-IOV-VFs.patch + 083dfcc8-Show-details-about-the-network-of-SR-IOV-VF-pool.patch +- Add Recommends: python3-virt-bootstrap + Change 'Requires: libvirt-python' to 'Requires: python-libvirt-python' + virt-manager.spec +- Add corrections to sle15 detection (bsc#1054986) + +------------------------------------------------------------------- +Wed Sep 20 08:21:01 MDT 2017 - carnold@suse.com + +- Update to virt-manager 1.4.3 (bsc#1027942) + virt-manager-1.4.3.tar.bz2 + * 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 +- Dropped the following patch contained in new tarball + e902fa55-force-binary-mode-with-FTP-servers.patch + +------------------------------------------------------------------- +Fri Sep 15 15:13:42 MDT 2017 - carnold@suse.com + +- Add .treeinfo detection for SUSE distros (bsc#1054986) + virtinst-add-sle15-detection-support.patch + +------------------------------------------------------------------- +Thu Sep 14 11:51:22 MDT 2017 - carnold@suse.com + +- bsc#1058666 - virt-manager has a dependency on + typelib(AppIndicator3) = 0.1 + virt-manager.spec + +------------------------------------------------------------------- +Tue Aug 29 15:47:17 MDT 2017 - carnold@suse.com + +- bsc#1056028 - Not able to install OES2018 as guest on Xen + virtinst-detect-oes-distros.patch + +------------------------------------------------------------------- +Fri Aug 25 15:09:50 MDT 2017 - carnold@suse.com + +- bsc#1055787 - virt-install: With PV ISO installs guests will hang + on first reboot + virtinst-keep-install-iso-attached.patch + +------------------------------------------------------------------- +Thu Aug 24 15:56:38 MDT 2017 - carnold@suse.com + +- bsc#1054986 - Missing /media.1/products file on the ISO media + causes virt-install to fail detecting distro type and version + virtinst-add-sle15-detection-support.patch + +------------------------------------------------------------------- +Tue Aug 22 08:05:07 MDT 2017 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + e902fa55-force-binary-mode-with-FTP-servers.patch + +------------------------------------------------------------------- +Wed Aug 9 08:27:42 MDT 2017 - carnold@suse.com + +- Update to virt-manager 1.4.2 (bsc#1027942) + virt-manager-1.4.2.tar.bz2 + virtinst-check-date-format.patch + virtinst-no-usb-tablet-for-xenpv.patch + * 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) +- Dropped the following patches contained in new tarball + f5d709d9-lang-it-1.patch + c66098f3-lang-it-2.patch + 452a693e-lang-update.patch + 6b5106ea-lang-it-ko-fix.patch + 9c8ffe51-fix-multiple-warnings-1.patch + cb182f7e-skip-authentication-only-for-VNC-with-listen-type-none.patch + 0610cd6a-ensure-bool-value-used-for-set_sensitive-call.patch + f341352c-remove-redundant-error-string.patch + ff3b4dc5-dont-overwrite-install-bootorder.patch + 2099a194-reset-guest-domain-to-none-on-domain-creation-error.patch + 93085d2b-reset-guest-domain-to-none-on-domain-creation-error.patch + 7aee124d-fix-multiple-warnings-2.patch + f38c56c9-add-support-for-SMM-feature.patch + 24f9d053-add-support-for-loader-secure-attribute.patch + 4f8e795c-if-required-by-UEFI-enable-SMM-feature-and-set-q35-machine-type.patch + b690908a-enable-secure-feature-together-with-smm-for-UEFI.patch + virtinst-expand-combobox.patch + +------------------------------------------------------------------- +Tue Aug 1 20:02:58 UTC 2017 - jfehlig@suse.com + +- Add a supportconfig plugin + virt-manager-supportconfig + FATE#323661 + +------------------------------------------------------------------- +Wed Jun 7 11:29:02 MDT 2017 - carnold@suse.com + +- bsc#1042709 - unable to create VM with SLE4SAP SP1 over network + install + virtinst-fix-sle-distro-parsing.patch + +------------------------------------------------------------------- +Mon Jun 5 11:38:58 MDT 2017 - carnold@suse.com + +- bsc#1027942 - virt-manager: Missing upstream bug fixes + f38c56c9-add-support-for-SMM-feature.patch + 24f9d053-add-support-for-loader-secure-attribute.patch + 4f8e795c-if-required-by-UEFI-enable-SMM-feature-and-set-q35-machine-type.patch + b690908a-enable-secure-feature-together-with-smm-for-UEFI.patch + +------------------------------------------------------------------- +Thu May 25 16:31:57 MDT 2017 - carnold@suse.com + +- bsc#1027942 - virt-manager: Missing upstream bug fixes + 93085d2b-reset-guest-domain-to-none-on-domain-creation-error.patch + +------------------------------------------------------------------- +Mon May 8 16:13:38 MDT 2017 - carnold@suse.com + +- bsc#1037958 - Guest "sles-11-sp3 32bit PV" is failed to boot up + Don't use 64bit grub.xen to boot 32bit PV guest + virtinst-pvgrub2-bootloader.patch + +------------------------------------------------------------------- +Thu Apr 27 13:53:45 MDT 2017 - carnold@suse.com + +- bsc#1027942 - virt-manager: Missing upstream bug fixes + f5d709d9-lang-it-1.patch + c66098f3-lang-it-2.patch + 452a693e-lang-update.patch + 6b5106ea-lang-it-ko-fix.patch + 9c8ffe51-fix-multiple-warnings-1.patch + cb182f7e-skip-authentication-only-for-VNC-with-listen-type-none.patch + 0610cd6a-ensure-bool-value-used-for-set_sensitive-call.patch + f341352c-remove-redundant-error-string.patch + ff3b4dc5-dont-overwrite-install-bootorder.patch + 2099a194-reset-guest-domain-to-none-on-domain-creation-error.patch + 7aee124d-fix-multiple-warnings-2.patch + +------------------------------------------------------------------- +Mon Apr 24 16:57:50 MDT 2017 - carnold@suse.com + +- Check for SLE15 and Leap 15 bsc#1035779 + virtman-default-guest-from-host-os.patch + +------------------------------------------------------------------- +Mon Apr 24 16:55:36 JST 2017 - jan.hilberath@suse.com + +- Fix CaaSP detection (bsc#1010060) + Allow installation of "SUSE Container as a Service Platform". + virtinst-add-caasp-support.patch +- Dropped virtinst-add-casp-support.patch + +------------------------------------------------------------------- +Wed Mar 15 22:24:27 MDT 2017 - carnold@suse.com + +- Fix initializing the default host installation source location + (bsc#1027942) + virtman-default-guest-from-host-os.patch + virtman-show-suse-install-repos.patch + +------------------------------------------------------------------- +Thu Mar 9 08:34:24 MST 2017 - carnold@suse.com + +- Update to virt-manager 1.4.1 (bsc#1027942) + virt-manager-1.4.1.tar.bz2 + * 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) +- Dropped the following patches contained in new tarball + 0425975f-use-virDomainMigrate3-API.patch + 0910c8dc-black-display-if-graphic-mode-vnc-and-listen-type-none.patch + 1d2cd306-Fix-incorrect-usage-of-virtio-input.patch + 2df8dc39-detect-whether-IP-address-comes-from-DHCP-server.patch + 559e813b-xmlbuilder-02.patch + 561f5cd3-drop-xenmigr-scheme-from-Xen-migration-URI.patch + 5a11cf07-virt-manager-generates-invalid-guest-XML.patch + 617b9271-dont-return-virtio1.0-net-as-valid-device-name.patch + 63784f4d-document-new-sysinfo-option.patch + 6daff68a-fix-italian-lang-file.patch + 7962672c-fix-error-checking-extra_args.patch + 835ddc5f-xmlbuilder-04.patch + a3206f89-Add-the-sysinfo-option.patch + a931a1a6-xmlbuilder-03.patch + b08647c2-xmlbuilder-05.patch + b31c0b44-Add-classes-for-defining-SMBios-information.patch + b4858842-fix-bad-version-check-regression.patch + b8dccf6a-fix-connection-to-remote-spice-with-password.patch + c5ce0ab5-connection-fix-transport-detection.patch + d8a0a788-xmlbuilder-01.patch + e69cc002-spice-catch-failure-to-setup-usbdev-manager.patch + f07a3021-fix-wait-to-behave-like-noautoconsole.patch + virtinst-add-default-rng-device.patch + +------------------------------------------------------------------- +Fri Mar 3 11:55:53 MST 2017 - carnold@suse.com + +- Upstream bug fixes (bsc#1027942) + 2df8dc39-detect-whether-IP-address-comes-from-DHCP-server.patch + b8dccf6a-fix-connection-to-remote-spice-with-password.patch + 0910c8dc-black-display-if-graphic-mode-vnc-and-listen-type-none.patch + +------------------------------------------------------------------- +Thu Jan 26 16:41:16 MST 2017 - carnold@suse.com + +- bsc#1022173 - virt-manager: unknown input device type + 'virtio1.0-input' + 1d2cd306-Fix-incorrect-usage-of-virtio-input.patch +- bsc#1005848 - KVM: guest can not be started on top of SLES12SP1 + KVM host ppc64 + 5a11cf07-virt-manager-generates-invalid-guest-XML.patch +- Upstream bug fixes + 617b9271-dont-return-virtio1.0-net-as-valid-device-name.patch + 7962672c-fix-error-checking-extra_args.patch + b4858842-fix-bad-version-check-regression.patch + f07a3021-fix-wait-to-behave-like-noautoconsole.patch + +------------------------------------------------------------------- +Wed Jan 18 15:36:46 MST 2017 - carnold@suse.com + +- bsc#1005861 - virt-manager create new machine dialog box too + small to display system type + virtinst-expand-combobox.patch + +------------------------------------------------------------------- +Wed Jan 18 10:54:58 MST 2017 - carnold@suse.com + +- bsc#976796 - Virt-manager does not show up in application menu + virtman-desktop.patch + virt-install.desktop + +------------------------------------------------------------------- +Fri Jan 13 11:38:11 MST 2017 - carnold@suse.com + +- bsc#1010060 - virt-install won't start CASP installation + virtinst-add-casp-support.patch + +------------------------------------------------------------------- +Fri Jan 6 15:54:59 MST 2017 - carnold@suse.com + +- bsc#1018645 - virt-manager is using pygrub for booting PV domU + virtinst-pvgrub2-bootloader.patch + +------------------------------------------------------------------- +Thu Sep 8 13:50:49 MDT 2016 - carnold@suse.com + +- bsc#996020 - L3: Unable to migrate VMs between SLES12 SP1 XEN + Hosts with virt-manager + 0425975f-use-virDomainMigrate3-API.patch + 561f5cd3-drop-xenmigr-scheme-from-Xen-migration-URI.patch + +------------------------------------------------------------------- +Thu Sep 8 10:03:24 MDT 2016 - carnold@suse.com + +- fate#319621 - KVM: Provide SMBIOS info to KVM virtual machines + d8a0a788-xmlbuilder-01.patch + 559e813b-xmlbuilder-02.patch + a931a1a6-xmlbuilder-03.patch + 835ddc5f-xmlbuilder-04.patch + b08647c2-xmlbuilder-05.patch + b31c0b44-Add-classes-for-defining-SMBios-information.patch + a3206f89-Add-the-sysinfo-option.patch + 63784f4d-document-new-sysinfo-option.patch + +------------------------------------------------------------------- +Fri Aug 19 10:28:19 MDT 2016 - carnold@suse.com + +- bsc#994394 - virt-manager does not show up in SLE Classic + "Applications" menu + virtman-desktop.patch + +------------------------------------------------------------------- +Wed Aug 17 13:24:50 MDT 2016 - carnold@suse.com + +- bsc#989639 - xen cdrom device pass-through fails to start FV + guest + virtinst-use-qemu-for-cdrom-device.patch + +------------------------------------------------------------------- +Tue Jul 19 16:23:06 MDT 2016 - carnold@suse.com + +- bsc#989652 - Cannot create vms with virt-manager after upgrade + from SLES11SP4 to SLES12SP2 + virtman-show-suse-install-repos.patch + +------------------------------------------------------------------- +Mon Jun 20 15:21:20 MDT 2016 - carnold@suse.com + +- Update to virt-manager version 1.4.0 (fate#319990) + virt-manager-1.4.0.tar.bz2 + e69cc002-spice-catch-failure-to-setup-usbdev-manager.patch + c5ce0ab5-connection-fix-transport-detection.patch + 6daff68a-fix-italian-lang-file.patch + virtman-dont-specify-vte-version.patch + * virt-manager: spice GL console support (Marc-André Lureau, Cole Robinson) + * Bump gtk and pygobject deps to 3.14 + * virt-manager: add checkbox to forget keyring password (Pavel Hrdina) + * cli: add --graphics gl= (Marc-André Lureau) + * cli: add --video accel3d= (Marc-André Lureau) + * cli: add --graphics listen=none (Marc-André Lureau) + * cli: add --transient flag (Richard W.M. Jones) + * cli: --features gic= support, and set a default for it (Pavel Hrdina) + * cli: Expose --video heads, ram, vram, vgamem + * cli: add --graphics listen=socket + * cli: add device address.type/address.bus/... + * cli: add --disk seclabelX.model (and .label, .relabel) + * cli: add -cpu cellX.id (and .cpus, and .memory) + * cli: add --network rom_bar= and rom_file= + * cli: add --disk backing_format= + * Many bug fixes and improvements + - Dropped the following + virt-manager-1.3.2.tar.bz2 + 89c3638b-fix-detection-that-libvirtd-is-stopped.patch + 21fd079e-replace-unar-with-other-archivers.patch + eae7dc06-fix-URL-installs-when-content-length-header-missing.patch + 1c221fd0-suse-ovmf-paths.patch + f11eb00b-virt-convert-decompress-gz-files-before-converting.patch + 8ba48f52-add-virtio-device-model-and-accel3d-attribute.patch + f454798b-virtman-fix-making-screenshot.patch + 5ecc2b44-dont-clear-recommended-machine-if-none-is-selected.patch + de9cd87f-return-recommended-machine-for-XEN.patch + 0acdea1d-show-firmware-options-also-for-XEN-guests.patch + virtinst-fix-sle12sp1-detection.patch + virtinst-fix-tumbleweed-detection.patch + +------------------------------------------------------------------- +Tue Jun 14 16:08:05 MDT 2016 - carnold@suse.com + +- boo#981836 - virt-manager does not support all boot methods for + AArch64 + 5ecc2b44-dont-clear-recommended-machine-if-none-is-selected.patch + de9cd87f-return-recommended-machine-for-XEN.patch + 0acdea1d-show-firmware-options-also-for-XEN-guests.patch + +------------------------------------------------------------------- +Tue Jun 7 14:18:32 MDT 2016 - carnold@suse.com + +- bsc#983241 - Using eepro1000 emulated driver leads to 'eepro100' + is not a valid device model name + Drop virtman-eepro100.patch +- Remove unecessary hyphen '-' from tumbleweed name + virtinst-fix-tumbleweed-detection.patch + +------------------------------------------------------------------- +Tue Jun 7 12:14:23 UTC 2016 - mvetter@suse.com + +- boo#983482: Virt-Manager 1.3.2 cannot create screenshot. + Use upstream patch from revision f454798b337aedb881671f62fe3b25fad703b768 +- Add f454798b-virtman-fix-making-screenshot.patch + +------------------------------------------------------------------- +Tue May 10 11:57:19 MDT 2016 - carnold@suse.com + +- bsc#978173 - Cannot install sles-10-sp4 on sles-12-sp1 host + virtinst-use-xenpae-kernel-for-32bit.patch + +------------------------------------------------------------------- +Fri May 6 15:50:12 MDT 2016 - carnold@suse.com + +- bsc#978937 - New qemu virtual virtio gpu not selectable in + virt-manager + 8ba48f52-add-virtio-device-model-and-accel3d-attribute.patch + +------------------------------------------------------------------- +Tue May 3 12:13:29 MDT 2016 - carnold@suse.com + +- fate#319659 - vm-install: remove shortcut in virt-manager + Need to also remove spec file 'Recommends' for vm-install + virt-manager.spec + +------------------------------------------------------------------- +Mon Apr 25 15:20:23 MDT 2016 - michael@stroeder.com + +- bsc#975219 - virt-manager interface is broken + (Tumbleweed-20160417) + virt-manager.spec + +------------------------------------------------------------------- +Tue Apr 5 12:46:28 UTC 2016 - dimstar@opensuse.org + +- Require yast2-branding-openSUSE by virt-manager: the icon + yast-vm-management, explicitly set by virtman-desktop.patch, is + shipped in this package. + +------------------------------------------------------------------- +Wed Mar 30 13:46:18 MDT 2016 - carnold@suse.com + +- bsc#964407 - Virt-Manager: Installer wrongly detects SLE-12-GA + media as SLE-12-SP1 + virtinst-fix-sle12sp1-detection.patch + +------------------------------------------------------------------- +Wed Mar 23 13:02:36 MDT 2016 - carnold@suse.com + +- Replace virtinst-replace-unar-with-other-archivers.patch with the + upstream version + 21fd079e-replace-unar-with-other-archivers.patch + +------------------------------------------------------------------- +Fri Mar 18 15:03:06 MDT 2016 - carnold@suse.com + +- bsc#971825 - virt-manager needs to use grub.xen installing a PV + Tumbleweed VM + virtinst-pvgrub2-bootloader.patch + +------------------------------------------------------------------- +Fri Mar 11 08:11:21 MST 2016 - lma@suse.com + +- fate#320353 - Add the ability for virt-convirt to decompress + compressed files in an OVA + f11eb00b-virt-convert-decompress-gz-files-before-converting.patch + +------------------------------------------------------------------- +Wed Mar 9 13:20:36 MST 2016 - carnold@suse.com + +- bsc#951726 - Error - 'wrong number of arguments (3 for 1) ...' + when attempting to create DomU through the yast + virt-manager.spec + +------------------------------------------------------------------- +Tue Feb 2 14:08:43 MST 2016 - carnold@suse.com + +- bsc#964407 - Virt-Manager: Installer wrongly detects SLE-12-GA + media as SLE-12-SP1 + virtinst-fix-sle12sp1-detection.patch +- Fix Tumbleweed detection + virtinst-fix-tumbleweed-detection.patch + +------------------------------------------------------------------- +Fri Jan 29 16:44:17 UTC 2016 - jfehlig@suse.com + +- bsc#961853 - virt-install doesn't work with option -boot uefi + 1c221fd0-suse-ovmf-paths.patch + +------------------------------------------------------------------- +Wed Jan 27 11:19:48 MST 2016 - carnold@suse.com + +- bsc#963692 - libvirtError: unsupported configuration: unknown + driver format value 'block' + virtinst-xen-drive-type.patch +- bsc#963173 - virt-manager - dependencies for VNC client are not + met on PPC + virt-manager.spec + +------------------------------------------------------------------- +Mon Jan 18 13:43:47 MST 2016 - carnold@suse.com + +- bsc#962221 - virt-install: 'NoneType' object has no attribute + 'isdigit' + eae7dc06-fix-URL-installs-when-content-length-header-missing.patch + +------------------------------------------------------------------- +Fri Jan 8 11:50:46 MST 2016 - carnold@suse.com + +- bsc#960828 - Unable to create qcow2 volumes on remote KVM with + virt-manager + virtinst-vol-default-nocow.patch +- bsc#960724 - virt-manager fails to create Virtual machines on a + CentOS7 host + virtinst-set-qemu-emulator.patch +- Upstream bug fix + 89c3638b-fix-detection-that-libvirtd-is-stopped.patch + +------------------------------------------------------------------- +Mon Jan 4 11:04:50 MST 2016 - carnold@suse.com + +- Drop including gschemas.compiled and icon-theme.cache. + virt-manager.spec + +------------------------------------------------------------------- +Fri Dec 25 09:44:35 UTC 2015 - bruno@ioda-net.ch + +- Update to 1.3.2 upstream bugfix release + virt-manager-1.3.2.tar.bz2 + * Fix dependency issues with vte (bz #1290262) +- Dropped + virt-manager-1.3.0.tar.bz2 +-Fix boo#959049 + Namespace Vte not available for version 2.91 + +------------------------------------------------------------------- +Sun Dec 13 14:41:54 UTC 2015 - bruno@ioda-net.ch + +- Update to 1.3.1 release upstream bugfix + virt-manager-1.3.1.tar.bz2 + * Fix command line API on RHEL7 pygobject +- Dropped + virt-manager-1.3.0.tar.bz2 +- Fix boo#958094 + Error starting Virtual Machine Manager: new_sync() takes exactly + 7 arguments (6 given) +- redone patch 104 virtman-load-stored-uris.patch + +------------------------------------------------------------------- +Wed Nov 25 09:46:33 MST 2015 - carnold@suse.com + +- Update to virt-manager 1.3.0 + virt-manager-1.3.0.tar.bz2 + * Git hosting moved to http://github.com/virt-manager/virt-manager + * Switch translation infrastructure from transifex to fedora.zanata.org + * Add dogtail UI tests and infrastructure + * Improved support for s390x kvm (Kevin Zhao) + * virt-install and virt-manager now remove created disk images if VM install startup fails + * Replace urlgrabber usage with requests and urllib2 + * virt-install: add –network virtualport support for openvswitch (Daniel P. Berrange) + * virt-install: support multiple –security labels + * virt-install: support –features kvm_hidden=on|off (Pavel Hrdina) + * virt-install: add –features pmu=on|off + * virt-install: add –features pvspinlock=on|off (Abhijeet Kasurde) + * virt-install: add –events on_lockfailure=on|off (Abhijeet Kasurde) + * virt-install: add –network link_state=up|down + * virt-install: add –vcpu placement=static|auto +- Dropped + virt-manager-1.2.1.tar.bz2 + 34db1af7-fix-adding-iscsi-pools.patch + 360fe110-add-s390x-arch-support.patch + 4970615f-fix-qemu-vs-lxc-detection.patch + 590f5a52-urlfetcher-Clear-cached-ftp-connection-on-cleanupLoc.patch + 5e68b0fc-dont-try-to-set-vmport-on-non-x86.patch + 601a82cb-fix-console_type-if-xen.patch + 76bad650-fix-virt-xml-define-and-update.patch + 77423e7a-connection-catch-more-errors-in-filter_nodedevs.patch + 8dbe96fc-add-s390x-arch-support.patch + a9b303fb-fix-copy-host-cpu-definition.patch + aebebbf8-report-an-error-for-pxe-install-without-network.patch + cde2f0ef-Suppress-gi-warnings-about-lack-of-require_version.patch + eb92178e-virtinst-fix-storage-pool-lookup.patch + f30975c3-drop-cow-support.patch + f81358b0-dont-display-error-if-machine-is-missing-in-XML.patch + fc93e154-fix-udp-tcp-host-vs-mode-UI.patch + virtman-autoyast-support.patch + virtman-supported-disk-formats.patch + +------------------------------------------------------------------- +Tue Nov 17 09:00:28 MST 2015 - carnold@suse.com + +- bsc#955401 - Can't create VM without disk: "list index out of + range" + virtinst-set-cache-mode-unsafe-for-install.patch + +------------------------------------------------------------------- +Tue Nov 10 09:15:12 MST 2015 - carnold@suse.com + +- bsc#947129 - Error launching manager: 'URI' is not in list + Set the locale to avoid parsing errors + virtman-show-suse-install-repos.patch + +------------------------------------------------------------------- +Tue Oct 27 16:46:03 MDT 2015 - carnold@suse.com + +- fate#319659 - vm-install: remove shutcut in virt-manager + Drop virtman-vminstall.patch + +------------------------------------------------------------------- +Tue Oct 27 13:45:04 MDT 2015 - carnold@suse.com + +- bsc#Bug 952241 - virt-manager: LibvirtGLib was imported without + specifying a version first. + cde2f0ef-Suppress-gi-warnings-about-lack-of-require_version.patch + +------------------------------------------------------------------- +Thu Oct 8 11:47:56 MDT 2015 - carnold@suse.com + +- bsc#949566 - virt-manager: Doesn't detect openSUSE 42 correctly + virtinst-pvgrub2-bootloader.patch + +------------------------------------------------------------------- +Fri Sep 25 15:24:23 MDT 2015 - carnold@suse.com + +- bsc#947288 - qemu-img doesn't support anymore creating cow format + image + f30975c3-drop-cow-support.patch + +------------------------------------------------------------------- +Wed Sep 23 10:25:33 MDT 2015 - carnold@suse.com + +- bsc#947129 - Error launching manager: 'URI' is not in list + virtman-show-suse-install-repos.patch + +------------------------------------------------------------------- +Tue Sep 22 11:07:01 MDT 2015 - carnold@suse.com + +- bsc#919420 - virt-manager: installation of vm on pp64le: Couldn't + find hvm kernel for SUSE tree. + virtinst-add-ppc64-arch-support.patch +- Upstream bug fix to console if running on Xen + 601a82cb-fix-console_type-if-xen.patch + +------------------------------------------------------------------- +Wed Sep 16 10:01:56 MDT 2015 - carnold@suse.com + +- bsc#945832 - virt-manager is missing a dependency on + typelib-1_0-LibvirtGLib-1_0 + virt-manager.spec +- Detect opensuse42 and use grub.xen + virtinst-pvgrub2-bootloader.patch + +------------------------------------------------------------------- +Tue Sep 15 02:21:36 UTC 2015 - cyliu@suse.com + +- bsc#944670: virt-install does not work on SLES 12 SP1 beta3 xen + 590f5a52-urlfetcher-Clear-cached-ftp-connection-on-cleanupLoc.patch + +------------------------------------------------------------------- +Fri Sep 11 11:17:43 MDT 2015 - carnold@suse.com + +- Add upstream s390x support patch (bnc#869024) + 360fe110-add-s390x-arch-support.patch + virtinst-add-ppc64-arch-support.patch + Drop virtinst-add-s390x-ppc64-arch-support.patch + +------------------------------------------------------------------- +Thu Sep 10 13:46:12 MDT 2015 - carnold@suse.com + +- Add upstream s390x support patch (bnc#869024) + 8dbe96fc-add-s390x-arch-support.patch + virtinst-add-s390x-ppc64-arch-support.patch + virtinst-s390x-disable-graphics.patch + Drop virtman-add-s390x-arch-support.patch + Drop virtman-s390x-default-to-vminstall.patch + +------------------------------------------------------------------- +Tue Sep 8 15:59:53 MDT 2015 - carnold@suse.com + +- bsc#942796 - Virtualization/virt-manager: Missing dependeny + virt-manager.spec + +------------------------------------------------------------------- +Thu Sep 3 10:43:15 MDT 2015 - carnold@suse.com + +- bsc#944374 - virt-manager uninstallable on aarch64 + virt-manager.spec +- Add upstream bug fix + 5e68b0fc-dont-try-to-set-vmport-on-non-x86.patch +- Drop virtinst-detect-windows-media.patch as this is not needed + now that we use libosinfo + +------------------------------------------------------------------- +Mon Aug 31 16:41:28 MDT 2015 - carnold@suse.com + +- Drop virtinst-fix-storage-pool-lookup.patch in favor of upstream + version (bsc#941464). + eb92178e-virtinst-fix-storage-pool-lookup.patch + +------------------------------------------------------------------- +Wed Aug 26 15:32:59 MDT 2015 - carnold@suse.com + +- bsc#942625 - "ERROR:root:Could not find any typelib for + Libosinfo" during virt-install script to auto-install guest + virt-manager.spec + +------------------------------------------------------------------- +Wed Aug 12 15:22:52 MDT 2015 - carnold@suse.com + +- bsc#941464 - virt-convert attempts to create storage pool images + even if it already exists + virtinst-fix-storage-pool-lookup.patch + +------------------------------------------------------------------- +Mon Aug 10 11:58:32 MDT 2015 - carnold@suse.com + +- Drop the following patches for bsc#938942 as they are not needed. + virtman-reset-image-filename-based-on-format.patch + virtman-allow-other-disk-formats.patch +- Upstream bug fixes + a9b303fb-fix-copy-host-cpu-definition.patch + f81358b0-dont-display-error-if-machine-is-missing-in-XML.patch + aebebbf8-report-an-error-for-pxe-install-without-network.patch + 4970615f-fix-qemu-vs-lxc-detection.patch + +------------------------------------------------------------------- +Thu Jul 23 09:39:26 MDT 2015 - carnold@suse.com + +- bsc#938942 - Can't create a vmguest with raw format image with + virt-manager at first installation (option disable) + virtman-reset-image-filename-based-on-format.patch + virtman-allow-other-disk-formats.patch + +------------------------------------------------------------------- +Wed Jul 8 11:29:25 MDT 2015 - carnold@suse.com + +- bsc#937336 - ImportError using virt-install + virt-manager.spec +- Upstream bug fixes + 76bad650-fix-virt-xml-define-and-update.patch + fc93e154-fix-udp-tcp-host-vs-mode-UI.patch + 34db1af7-fix-adding-iscsi-pools.patch + 77423e7a-connection-catch-more-errors-in-filter_nodedevs.patch + +------------------------------------------------------------------- +Wed Jul 8 08:45:09 MDT 2015 - carnold@suse.com + +- bsc#937386 - virt-manager can not create new VMs: "Error + launching manager: list index out of range" + virtman-show-suse-install-repos.patch + +------------------------------------------------------------------- +Wed Jul 8 07:29:41 MDT 2015 - cyliu@suse.com + +- bnc#910929 - Unable to clone a qcow2 guest + +------------------------------------------------------------------- +Mon Jun 15 14:17:50 UTC 2015 - lma@suse.com + +- bnc#934270 - virt-convert cannot handle .ova files + virtinst-replace-unar-with-other-archivers.patch + +------------------------------------------------------------------- +Mon Jun 8 06:07:48 MDT 2015 - carnold@suse.com + +- fate#318394: Update to version 1.2.1 + virt-manager-1.2.1.tar.bz2 + * 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 +- Dropped tarball and patches + virt-manager-1.2.0.tar.bz2 + 848123e6-fix-memory-stats-for-shutoff-VM.patch + ebcb7c06-fix-exception-when-the-address-is-not-an-IP.patch + c4d26d16-fix-VM-polling-on-old-libvirt.patch + ac2be796-do-not-throw-exception-if-volume-or-pool-dont-exist.patch + 88e18c86-fix-sending-net-removed-signal.patch + fbdf574c-fix-shortcut-key-for-USB-redir-dev-type.patch + 2c1e482b-fix--show-host-summary-error-windows-flooding.patch + 4b5c836a-read-start-mode-from-inactive-conf-XML.patch + 776c1d97-fix-changing-USB-device-model.patch + bbc4f83b-enable-qemu_ga-for-sles-11-sp4-and-newer.patch + f8af2e6b-verify-HYPER-V-support-after-customization.patch + 9ea3fcd1-add-classes-for-SUSE-distros.patch + 23f262ec-fetch-URL-media-from-content-file-for-suse-distros.patch + 5618fa4c-add-support-for-detecting-os-variants-of-suse-distros.patch + 9b99eff7-add-opensuse-13.x-tests.patch + f5a13510-clone-dont-use-separator-when-disk-under-root.patch + +------------------------------------------------------------------- +Fri Jun 5 14:44:31 MDT 2015 - carnold@suse.com + +- Upstream support for suse distros + 9ea3fcd1-add-classes-for-SUSE-distros.patch + 23f262ec-fetch-URL-media-from-content-file-for-suse-distros.patch + 5618fa4c-add-support-for-detecting-os-variants-of-suse-distros.patch + 9b99eff7-add-opensuse-13.x-tests.patch +- Drop virtinst-detect-suse-distros.patch +- Add detection for Open Enterprise Server + virtinst-detect-oes-distros.patch +- Upstream bug fix + f5a13510-clone-dont-use-separator-when-disk-under-root.patch + +------------------------------------------------------------------- +Tue Jun 2 14:08:51 MDT 2015 - carnold@suse.com + +- bsc#933242 - virt-manager: summary=Error launching manager: list + index out of range + virtman-show-suse-install-repos.patch +- Add depedency on typelib(Libosinfo) + +------------------------------------------------------------------- +Wed May 20 13:14:27 MDT 2015 - carnold@suse.com + +- Upstream bug fixes + 776c1d97-fix-changing-USB-device-model.patch + bbc4f83b-enable-qemu_ga-for-sles-11-sp4-and-newer.patch + f8af2e6b-verify-HYPER-V-support-after-customization.patch + +------------------------------------------------------------------- +Fri May 15 13:10:49 MDT 2015 - carnold@suse.com + +- Upstream bug fixes + fbdf574c-fix-shortcut-key-for-USB-redir-dev-type.patch + 2c1e482b-fix--show-host-summary-error-windows-flooding.patch + 4b5c836a-read-start-mode-from-inactive-conf-XML.patch + +------------------------------------------------------------------- +Fri May 8 11:08:49 MDT 2015 - carnold@suse.com + +- Upstream bug fixes + 848123e6-fix-memory-stats-for-shutoff-VM.patch + ebcb7c06-fix-exception-when-the-address-is-not-an-IP.patch + c4d26d16-fix-VM-polling-on-old-libvirt.patch + ac2be796-do-not-throw-exception-if-volume-or-pool-dont-exist.patch + 88e18c86-fix-sending-net-removed-signal.patch + +------------------------------------------------------------------- +Mon May 4 13:38:06 MDT 2015 - carnold@suse.com + +- Update to virt-manager 1.2.0 + virt-manager-1.2.0.tar.bz2 + virtinst-default-xen-to-qcow2-format.patch + * OVMF/AAVMF Support (Laszlo Ersek, Giuseppe Scrivano, Cole Robinson) + * Improved support for AArch64 qemu/kvm + * virt-install: Support –disk type=network parameters + * virt-install: Make –disk just work + * virt-install: Add –disk sgio= option (Giuseppe Scrivano) + * addhardware: default to an existing bus when adding a new disk (Giuseppe Scrivano) + * virt-install: Add –input device option + * virt-manager: Unify storagebrowser and storage details functionality + * virt-manager: allow setting a custom connection row name + * virt-install: Support –hostdev scsi passthrough + * virt-install: Fill in a bunch of –graphics spice options + * Disable spice image compression for new local VMs + * virt-manager: big reworking of the migration dialog +- Dropped tarball and patches + virt-manager-1.1.0.tar.bz2 + 65f7017e-createnet-fix.patch + virt-manager-Gtk-30.patch + virtman-sync-vm-startup-for-cpu-usage.patch + virtinst-ignore-error-403-on-directories.patch + virtman-check-for-empty-network-name.patch + activate-default-console.patch + virtinst-ppc64le.patch + virtinst-supported-disk-formats.patch + virtinst-support-suse-distros.patch + virtman-default-lxc-uri.patch + virtman-stable-os-support.patch + +------------------------------------------------------------------- +Sat Apr 11 19:15:22 UTC 2015 - stefan.bruens@rwth-aachen.de + +- Remove bad dependency on gtk-vnc2. It is provided by the Gtk2 + version of GtkVnc, the Gtk3 version provides gtk-vnc. + The right dependency is picked up by the autorequires. + +------------------------------------------------------------------- +Thu Feb 26 10:39:17 UTC 2015 - schwab@suse.de + +- virtman-allow-creating-i686-vm.patch: Allow creating i686 VM on x86_64 + (bsc#919692) + +------------------------------------------------------------------- +Wed Feb 25 14:10:15 MST 2015 - carnold@suse.com + +- Revert the last commit + +------------------------------------------------------------------- +Tue Feb 24 16:30:03 UTC 2015 - schwab@suse.de + +- virtman-allow-creating-i686-vm.patch: Allow creating i686 VM on x86_64 + +------------------------------------------------------------------- +Fri Jan 23 14:08:34 UTC 2015 - cbosdonnat@suse.com + +- bsc#909602 - virt-manager doesn't show text console for container + when started from details page. + activate-default-console.patch. + +------------------------------------------------------------------- +Fri Jan 16 09:40:12 MST 2015 - carnold@suse.com + +- bnc#909348 - Can't create virtual NAT network - interface name + `net_wlp16s0_00_1f_3b_59_61_3d' must be shorter than IFNAMSIZ + 65f7017e-createnet-fix.patch + +------------------------------------------------------------------- +Wed Dec 10 08:52:01 MST 2014 - carnold@suse.com + +- bnc#909225 - pygrub Unable to find partition containing kernel + Update virtinst-pvgrub2-bootloader.patch + +------------------------------------------------------------------- +Tue Dec 9 11:07:55 MST 2014 - carnold@suse.com + +- Reorder virt-manager patches according to type +- Drop virtman-cdrom.patch + +------------------------------------------------------------------- +Tue Dec 2 12:11:29 MST 2014 - carnold@suse.com + +- bnc#907958 - virt-manager --debug with no screen SIGABRT + virtman-check-for-valid-display.patch + +------------------------------------------------------------------- +Mon Dec 1 08:02:37 MST 2014 - carnold@suse.com + +- bnc#907324 - libvirt: unsupported configuration: native I/O needs + either no disk cache or directsync cache mode, QEMU will fallback + to aio=threads + virtinst-set-cache-mode-unsafe-for-install.patch updated +- bnc#907319 - virt-manager: Unable to complete install: 'local + variable 'distro_distro' referenced before assignment + virtinst-detect-suse-distros.patch updated + +------------------------------------------------------------------- +Sat Nov 08 17:54:00 UTC 2014 - Led + +- fix bashisms in post scripts + +------------------------------------------------------------------- +Mon Oct 22 13:33:25 MDT 2014 - carnold@suse.com + +- Update to virt-manager 1.1.0 + virt-manager-1.1.0.tar.bz2 + * 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) +- Drop upstream patches and old tarball + virt-manager-1.0.1.tar.bz2 + 5332ee4d-enable-media-detection-for-ISO-images.patch + 53341e7e-hide-hardware-removal-for-non-devices.patch + 53342f31-set-right-ip-address-for-ipv6.patch + 53375bad-raise-value-error-when-no-ipaddr-set.patch + 53388de2-show-port-number-for-active-autoport-VM.patch + 53397ae0-check-ip-address-format.patch + 53399b45-hook-into-domain-balloon-event.patch + 533d708d-fix-showing-vcpus-values.patch + 533d7602-fix-changing-graphics-type.patch + 533d7be7-clarify-iscsi-IQN-fields.patch + 5345682c-addstorage-remove-whitespace-for-storage-path.patch + 534bcfa0-use-uniformed-expression-of-Default.patch + 534be092-early-detect-ftp-connection-errors.patch + 534d45db-hiding-removebutton-for-USB-controller.patch + 534d6406-display-the-domain-for-PCI-devices.patch + 534eafe4-avoid-useless-errors-when-connection-closes.patch + 5350d9cc-display-error-on-empty-installation-URL.patch + 535584ed-fix-target-validation-when-editing-device.patch + 535fb6f6-hide-scrollbar-until-something-scrollable.patch + 535fe0c2-fix-screenshot-with-qxl-spice.patch + 535feaca-fix-storage-when-directory-name-contains-whitespace.patch + 535ff0b7-fix-install-when-one-package-is-already-installed.patch + 536152fe-fix-error-detecting-OS-in-show-all-list.patch + 536154d8-show-error-if-launching-delete-dialog-fails.patch + 53615662-call-path_exists-before-getting-storage-volume.patch + 536677aa-better-handling-of-keyboard-input-type.patch + 5385d602-lxc-no-default-disk.patch + 53869170-virt-install-add-events-support.patch + 538a11dc-raise-error-if-populating-summary-page-fails.patch + 538a3609-virtconv-fix-use-of-relative-OVF-file.patch + 538a3ba9-diskbackend-start-pool-if-not-running.patch + 538a6862-vnc-dont-force-keyboard-grab-before-widget-is-realized.patch + 538ca3f3-use-correct-dictionary-keys-for-old-pool-net-polling.patch + 538d00a4-xen-keyboard-cant-be-removed.patch + 538e2f74-fix-pool-create-call.patch + 538edb3b-manpage-fix-incorrect-description.patch + 5397b647-createnet-enable-specifying-29-subnet.patch + 539e8cca-createpool-fix-creation-of-gluster-pools.patch + 53a05e73-fix-edit-maxvcpus.patch + 53a995cb-fix-usb-storage-removable-syntax.patch + 53ac1f8d-createnet-validate-last-page-before-creating-network.patch + 53ac1f8d-fix-show_err-typo.patch + 53ad17e6-createnet-fix-a-small-pylint.patch + 53b39a13-dont-create-disk-images-world-readable-executable.patch + 53b409bc-add-keep-alive-method-and-connection-check.patch + 53b409bd-console-prevent-access-to-deleted-objects.patch + 53b728c6-connection-handle-unsupported-KeepAlive.patch + 53b728c6-report-error-during-connection-bring-up.patch + 53bb1995-network-refresh-XML-definition-on-state-update.patch + 53ce11d1-honor-untoggled-set-fixed-MAC-address.patch +- Dropped xend based virtman-autorestart.patch + +------------------------------------------------------------------- +Mon Oct 20 06:40:47 UTC 2014 - dimstar@opensuse.org + +- Add virt-manager-Gtk-30.patch: Specify in the code that we expect + Gtk 3.0 typelibs. The sumbold typelib(Gtk), as auto-detected by + go-find-deps, is provided by Gtk2 and Gtk3. As we also pull in + Vte, though, we are certain that we DO require the Gtk 3.0 + variant (boo#901869). + +------------------------------------------------------------------- +Fri Oct 10 15:33:32 UTC 2014 - cbosdonnat@suse.com + +- bnc#900320 - virt-install properly finds the lxc emulator when + xen-tools is installed + +------------------------------------------------------------------- +Thu Oct 9 11:22:14 MDT 2014 - carnold@suse.com + +- Remove hardcoded package dependencies in spec file and instead + use gobject-introspection + virt-manager.spec + +------------------------------------------------------------------- +Mon Sep 29 10:29:34 MDT 2014 - carnold@suse.com + +- bnc#898925 - virt-install errors out while installing SLES12 + using --location + virtinst-ppc64le.patch + +------------------------------------------------------------------- +Fri Sep 5 12:10:30 CEST 2014 - ro@suse.de + +- modify virtinst-ppc64le.patch to call qemu-system-ppc64 + for ppc64 and ppc64le (bnc#894956) + +------------------------------------------------------------------- +Thu Aug 28 09:25:44 MDT 2014 - carnold@suse.com + +- bnc#892821 - Minor enhancement to virt-manager's operating system + detection + virtinst-ignore-error-403-on-directories.patch (Leonardo Chiquitto) + +------------------------------------------------------------------- +Tue Aug 26 15:41:39 MDT 2014 - carnold@suse.com + +- bnc#886311 - Xen Virtual Machine Manager does not display CPU + usage stats +- bnc#888289 - After domU shutdown, sometimes virt-manager doesn't + refresh the domU status. + virtman-sync-vm-startup-for-cpu-usage.patch + +------------------------------------------------------------------- +Thu Aug 21 02:26:28 CEST 2014 - ro@suse.de + +- add patch: virtinst-ppc64le.patch + initial ppc64le support for virt-install + +------------------------------------------------------------------- +Mon Aug 18 17:51:41 MDT 2014 - carnold@suse.com + +- bnc#875111 - When kvm guest is in crashed state, virt-manager + reports guest as still running, no option to shutdown/destroy + virtman-allow-destroy-from-shutdown-menu-of-crashed-vm.patch +- bnc#892003 - create virtual machine with Virt Manager randomly + times out with large memory guest + virtman-increase-setKeepAlive-count.patch + +------------------------------------------------------------------- +Mon Aug 11 15:27:41 MDT 2014 - carnold@suse.com + +- bnc#888173 - KVM: Unable to install: no console output from + virt-install + virtman-s390x-default-to-vminstall.patch + +------------------------------------------------------------------- +Tue Aug 5 06:33:38 UTC 2014 - cyliu@suse.com + +- bnc#890350 - Can't create virtual networks through virt-manager + 53ad17e6-createnet-fix-a-small-pylint.patch + +------------------------------------------------------------------- +Tue Jul 25 16:36:11 MDT 2014 - carnold@suse.com + +- Upstream bug fix + 53ce11d1-honor-untoggled-set-fixed-MAC-address.patch + +------------------------------------------------------------------- +Tue Jul 22 16:36:11 MDT 2014 - carnold@suse.com + +- bnc#888251 - sles 12 Xen PV guest fails to install using network + NFS install method + virtinst-nfs-install-sanitize.patch + +------------------------------------------------------------------- +Tue Jul 22 09:17:12 MDT 2014 - carnold@suse.com + +- bnc#887868 - libvirt: shouldn't detect pool's status while + connecting to hypervisor + virtinst-refresh_before_fetch_pool.patch (Chun Yan Liu) + +------------------------------------------------------------------- +Thu Jul 21 09:38:19 MDT 2014 - carnold@suse.com + +- bnc#888173 - KVM: Unable to install: no console output from + virt-install + virtman-add-s390x-arch-support.patch + +------------------------------------------------------------------- +Thu Jul 17 15:45:19 MDT 2014 - carnold@suse.com + +- bnc#885308 - pass virtio-rng-pci to the guest qemu + virtinst-add-default-rng-device.patch + +------------------------------------------------------------------- +Wed Jul 9 09:50:14 MDT 2014 - carnold@suse.com + +- Fix GUI failure to display addition of a second disk + Dropped virtman-device-flags.patch + +------------------------------------------------------------------- +Wed Jul 9 09:50:14 MDT 2014 - carnold@suse.com + +- bnc#885380 - virt-install: by default generates raw format + against various virtual disk formats + virtinst-supported-disk-formats.patch + virtman-supported-disk-formats.patch +- Dropped virtinst-qed.patch, virtman-qed.patch + +------------------------------------------------------------------- +Tue Jul 8 10:34:20 MDT 2014 - carnold@suse.com + +- bnc#869026 - Build0198: Unable to complete install: 'XML error: + No PCI buses available' + virtman-add-s390x-arch-support.patch +- Upstream bug fixes + 53ac1f8d-createnet-validate-last-page-before-creating-network.patch + 53ac1f8d-fix-show_err-typo.patch + 53b39a13-dont-create-disk-images-world-readable-executable.patch + 53b409bc-add-keep-alive-method-and-connection-check.patch + 53b409bd-console-prevent-access-to-deleted-objects.patch + 53b728c6-report-error-during-connection-bring-up.patch + 53b728c6-connection-handle-unsupported-KeepAlive.patch + 53bb1995-network-refresh-XML-definition-on-state-update.patch + +------------------------------------------------------------------- +Tue Jul 1 09:55:29 MDT 2014 - carnold@suse.com + +- bnc#885094 - sles 12 beta 9 virt manager install of sles 12 pv + guest over nfs fails to reboot + virtman-dont-allow-grub.xen-to-be-deleted.patch +- bnc#885273 - create virtual network wizard accept empty name + virtman-check-for-empty-network-name.patch + +------------------------------------------------------------------- +Fri Jun 27 10:23:09 MDT 2014 - carnold@suse.com + +- Upstream bug fixes + 53ac1f8d-fix-show_err-typo.patch + 53ac1f8d-createnet-validate-last-page-before-creating-network.patch +- KVM: Don't check for /dev/kvm. It is now built into the kernel + virtman-kvm.patch + +------------------------------------------------------------------- +Tue Jun 24 10:26:35 MDT 2014 - carnold@suse.com + +- Upstream bug fix + 53a995cb-fix-usb-storage-removable-syntax.patch + +------------------------------------------------------------------- +Wed Jun 17 10:52:15 MDT 2014 - carnold@suse.com + +- Upstream bug fixes + 5397b647-createnet-enable-specifying-29-subnet.patch + 539e8cca-createpool-fix-creation-of-gluster-pools.patch + 53a05e73-fix-edit-maxvcpus.patch + +------------------------------------------------------------------- +Wed Jun 6 10:15:34 MDT 2014 - carnold@suse.com + +- bnc#881551 - virt-manage: default storage image called + opensuse13.img for SLE-Server + virtinst-detect-suse-distros.patch + +------------------------------------------------------------------- +Wed Jun 5 09:58:34 MDT 2014 - carnold@suse.com + +- bnc#881549 - virt-manager/xen: Error changing VM configuration: + 'NoneType' object has no attribute 'split' + virtinst-xenbus-disk-index-fix.patch + +------------------------------------------------------------------- +Wed Jun 4 09:11:03 MDT 2014 - carnold@suse.com + +- Upstream bug fix + 538edb3b-manpage-fix-incorrect-description.patch + +------------------------------------------------------------------- +Tue Jun 3 14:50:49 MDT 2014 - carnold@suse.com + +- Upstream bug fixes + 536677aa-better-handling-of-keyboard-input-type.patch + 5385d602-lxc-no-default-disk.patch + 53869170-virt-install-add-events-support.patch + 538a11dc-raise-error-if-populating-summary-page-fails.patch + 538a3609-virtconv-fix-use-of-relative-OVF-file.patch + 538a3ba9-diskbackend-start-pool-if-not-running.patch + 538ca3f3-use-correct-dictionary-keys-for-old-pool-net-polling.patch + 538d00a4-xen-keyboard-cant-be-removed.patch + 538e2f74-fix-pool-create-call.patch +- Dropped 531e0a82-reverse-keyboard-grab-commit.patch. Fixed instead + with this patch. + 538a6862-vnc-dont-force-keyboard-grab-before-widget-is-realized.patch + +------------------------------------------------------------------- +Thu May 29 10:30:15 MDT 2014 - carnold@suse.com + +- Set cache mode for target installation disk to unsafe for better + performance + virtinst-set-cache-mode-unsafe-for-install.patch +- Renamed virtman-lxc-no-default-disk.patch to an upstream timestamp + name 5385d602-lxc-no-default-disk.patch + +------------------------------------------------------------------- +Tue May 27 09:13:49 UTC 2014 - cbosdonnat@suse.com + +- bnc#870587 - Don't create a default QEMU disk image in the new lxc + container wizard. + virtman-lxc-no-default-disk.patch + +------------------------------------------------------------------- +Wed May 21 13:43:18 UTC 2014 - cbosdonnat@suse.com + +- Improve virt-manager default connections at first start + * virtman-default-lxc-uri.patch: when only libvirt's lxc driver + is available locally, add lxc:/// + * virtman-add-connect-default.patch: when no hypervisor can be + found locally, open the new connection dialog + +------------------------------------------------------------------- +Thu May 15 17:12:54 MDT 2014 - carnold@suse.com + +- bnc#874594 - virt-manager allows issuing of start for xen domain + twice, resulting in failure + virtman-prevent-double-click-starting-vm-twice.patch + +------------------------------------------------------------------- +Thu May 15 15:41:54 MDT 2014 - carnold@suse.com + +- bnc#877907 - when starting guest in virt--manager with details + pane open, keyboard is grabbed erroneously + 531e0a82-reverse-keyboard-grab-commit.patch + +------------------------------------------------------------------- +Thu May 1 16:24:54 MDT 2014 - carnold@suse.com + +- Dropped patch as libvirt has fix for issue + virtman-shutdown-with-acpi-button.patch + +------------------------------------------------------------------- +Wed Apr 30 07:24:54 MDT 2014 - carnold@suse.com + +- Upstream bug fixes + 535fb6f6-hide-scrollbar-until-something-scrollable.patch + 535fe0c2-fix-screenshot-with-qxl-spice.patch + 535feaca-fix-storage-when-directory-name-contains-whitespace.patch + 535ff0b7-fix-install-when-one-package-is-already-installed.patch + 536152fe-fix-error-detecting-OS-in-show-all-list.patch + 536154d8-show-error-if-launching-delete-dialog-fails.patch + 53615662-call-path_exists-before-getting-storage-volume.patch + +------------------------------------------------------------------- +Tue Apr 29 11:37:12 MDT 2014 - carnold@suse.com + +- s390x: Set the correct emulator + virtinst-set-qemu-emulator.patch + +------------------------------------------------------------------- +Mon Apr 28 15:21:58 MDT 2014 - carnold@suse.com + +- Content file on media changed again. Update suse detection code. + virtinst-detect-suse-distros.patch + +------------------------------------------------------------------- +Thu Apr 24 16:52:58 MDT 2014 - carnold@suse.com + +- bnc#874772 - virt-manager: Unable to complete install: 'xmlDesc + in virDomainCreateXML must not be NULL' + virtinst-pvgrub2-bootloader.patch +- KVM: Use /usr/bin/qemu-system-x86_64 as the default emulator + virtinst-set-qemu-emulator.patch + +------------------------------------------------------------------- +Tue Apr 22 09:31:58 MDT 2014 - carnold@suse.com + +- Upstream bug fix + 535584ed-fix-target-validation-when-editing-device.patch + +------------------------------------------------------------------- +Mon Apr 21 07:07:20 MDT 2014 - carnold@suse.com + +- bnc#874408 - virt-manager and libvirt issues persist - unable to + create or launch + virtman-vminstall.patch + +------------------------------------------------------------------- +Fri Apr 18 08:19:20 MDT 2014 - carnold@suse.com + +- Upstream bug fix + 5350d9cc-display-error-on-empty-installation-URL.patch + +------------------------------------------------------------------- +Thu Apr 17 19:49:59 MDT 2014 - carnold@suse.com + +- Dropped unused and unnecessary patches + virtinst-cdrom.patch + virtman-update-backend.patch + virtman-slow-mouse.patch + virtman-reverse-serialcon.patch +- Reordered some patches + +------------------------------------------------------------------- +Wed Apr 16 10:49:59 MDT 2014 - carnold@suse.com + +- Upstream bug fixes + 534bcfa0-use-uniformed-expression-of-Default.patch + 534be092-early-detect-ftp-connection-errors.patch + 534d45db-hiding-removebutton-for-USB-controller.patch + 534d6406-display-the-domain-for-PCI-devices.patch + 534eafe4-avoid-useless-errors-when-connection-closes.patch + +------------------------------------------------------------------- +Mon Apr 14 11:48:37 MDT 2014 - carnold@suse.com + +- bnc#872789 - XEN domain fails to start when xen disk is atttached + virtinst-xenbus-disk-index-fix.patch +- bnc#872777 - virt-manager - Error shutting down domain: internal + error: Failed to shutdown domain '3' with libxenlight + virtman-shutdown-with-acpi-button.patch + +------------------------------------------------------------------- +Wed Apr 9 14:01:37 MDT 2014 - carnold@suse.com + +- Upstream bug fix + 5345682c-addstorage-remove-whitespace-for-storage-path.patch +- Add minimal detection for windows media + virtinst-detect-windows-media.patch + +------------------------------------------------------------------- +Tue Apr 8 11:06:41 MDT 2014 - carnold@suse.com + +- bnc#872543 - virt-manager: unable to install i386 SLES + virtinst-detect-suse-distros.patch +- bnc#872517 - Error starting domain: internal error: libxenlight + failed to create new domain '2k12r2' + Dropping virtinst-keep-cdrom-media-attached.patch for libvirt fix + +------------------------------------------------------------------- +Thu Apr 3 19:25:41 MDT 2014 - carnold@suse.com + +- Upstream bug fixes + 533d708d-fix-showing-vcpus-values.patch + 533d7602-fix-changing-graphics-type.patch + 533d7be7-clarify-iscsi-IQN-fields.patch +- Dropped virtman-init-vm-processor-topology.patch in favor of + upstream 533d708d-fix-showing-vcpus-values.patch + +------------------------------------------------------------------- +Wed Apr 2 16:13:41 MDT 2014 - carnold@suse.com + +- bnc#869024 - Build0198: Only option to create a virtual machine is + "import existing disk image" + virtman-add-s390x-arch-support.patch + +------------------------------------------------------------------- +Wed Apr 2 14:16:42 MDT 2014 - carnold@suse.com + +- bnc#871642 - virt-manager wants to install libvirt-daemon-xen + even when it is installed + xen.spec +- Xen: Virt-install won't reboot VM after install of SLE HVM guest + because of libxl exception. + virtinst-keep-cdrom-media-attached.patch + +------------------------------------------------------------------- +Wed Apr 2 04:34:59 CST 2014 - cyliu@suse.com + +- Fate#315125: add NOCOW flag + virtinst-vol-default-nocow.patch + +------------------------------------------------------------------- +Mon Mar 31 13:47:38 MDT 2014 - carnold@suse.com + +- Upstream bug fixes + 53375bad-raise-value-error-when-no-ipaddr-set.patch + 53388de2-show-port-number-for-active-autoport-VM.patch + 53397ae0-check-ip-address-format.patch + 53399b45-hook-into-domain-balloon-event.patch + +------------------------------------------------------------------- +Fri Mar 28 11:42:38 MDT 2014 - carnold@suse.com + +- Reverse the last commit on requires for grub2-x86_64-xen. This + dependency will live in the xen-tools RPM because it is a xen + specific requirement. + virt-manager.spec + +------------------------------------------------------------------- +Fri Mar 28 08:00:48 MDT 2014 - carnold@suse.com + +- Requires for grub2-x86_64-xen is only valid for x86_64 + virt-manager.spec + +------------------------------------------------------------------- +Thu Mar 27 18:54:21 MDT 2014 - carnold@suse.com + +- Virt-install is using the old legacy qemu as an emulator + virtinst-set-qemu-emulator.patch + +------------------------------------------------------------------- +Thu Mar 27 08:28:21 MDT 2014 - carnold@suse.com + +- Upstream bug fixes + 5332ee4d-enable-media-detection-for-ISO-images.patch + 53341e7e-hide-hardware-removal-for-non-devices.patch + 53342f31-set-right-ip-address-for-ipv6.patch + +------------------------------------------------------------------- +Wed Mar 26 16:36:28 MDT 2014 - carnold@suse.com + +- bnc#870098 - virt-manager+x show wrong number of assigned cpu's + virtman-init-vm-processor-topology.patch + +------------------------------------------------------------------- +Tue Mar 24 13:58:36 MDT 2014 - carnold@suse.com + +- Make Requires of grub2-x86_64-xen conditional + +------------------------------------------------------------------- +Sat Mar 22 17:00:52 MDT 2014 - carnold@suse.com + +- Update to virt-manager version 1.0.1 + virt-manager-1.0.1.tar.bz2 + * 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 +- Dropped 35 timestamp named patches now contained in new tarball + +------------------------------------------------------------------- +Fri Mar 21 13:18:52 MDT 2014 - carnold@suse.com + +- bnc#869165 - virt-manager: add connection - missing avahi + virt-manager.spec +- bnc#863821 - Xen unable to boot paravirtualized VMs installed + with btrfs + virtinst-pvgrub2-bootloader.patch +- Switch out redhat defaults for suse defaults + virtman-stable-os-support.patch + +------------------------------------------------------------------- +Wed Mar 19 13:12:57 MDT 2014 - carnold@suse.com + +- bnc#868194 - virt-manager gets stuck with some netinst urls + 532a3213-pass-correct-connection-to-install.patch + 532a3213-fix-url-autodetect-timeout.patch + 532a3213-exit-URL-detection-immediately-if-detection-fails.patch +- bnc#869208 - virt-manager create new virtual machine fail + virtman-show-suse-install-repos.patch +- bnc#869181 - virt-manager: vm wizard -Error launching manager: + 'NoneType' object has no attribute 'startswith' + virtinst-modify-gui-defaults.patch + +------------------------------------------------------------------- +Tue Mar 18 14:15:06 MDT 2014 - carnold@suse.com + +- bnc#868676 - Error changing VM configuration: unsupported + configuration: unknown driver format value 'block' + virtinst-xen-drive-type.patch + +------------------------------------------------------------------- +Tue Mar 18 11:38:42 MDT 2014 - carnold@suse.com + +- bnc#868200 - Unable to complete install: "NoneType' object has no + attribute '__getitem__" + virtinst-detect-suse-distros.patch + +------------------------------------------------------------------- +Fri Mar 14 11:33:09 MDT 2014 - carnold@suse.com + +- For Xen always have the arch expander expanded. +- For Xen and KVM default to Network install if host was installed + from the network +- Default to a bridge with an actual inet address if available + virtinst-modify-gui-defaults.patch +- We are not supporting PV ISO installs with virt-install. + Drop the following patches + virtinst-allow-pv-iso-install.patch + virtman-allow-pv-iso-install.patch + +------------------------------------------------------------------- +Fri Mar 14 11:33:09 MDT 2014 - carnold@suse.com + +- Upstream bug fixes + 5321d3cd-virtinst-drop-cpu_map-parsing-of-arch-features.patch + 5321d3d0-virtinst-drop-parsing-of-cpu-features.patch + 5321f256-virtinst-use-libvirt-getCPUModelNames.patch + 532255b4-unselect_all-members-before-clear-model.patch + +------------------------------------------------------------------- +Thu Mar 13 08:19:52 MDT 2014 - carnold@suse.com + +- Fix start_libvirtd to correctly use systemd to start libvirtd + virtman-libvirtd-not-running.patch +- Upstream bug fixes + 531dd0ca-lxc-define-private-network.patch + 53207f40-invalidate-cached-caps.patch + 5320c976-fix-adding-empty-cdrom-floppy-drive.patch + +------------------------------------------------------------------- +Tue Mar 11 17:05:59 MDT 2014 - carnold@suse.com + +- bnc#867796 - virt-manager New Virtual Machine "Vm-install" + virtman-vminstall.patch + +------------------------------------------------------------------- +Tue Mar 11 09:12:07 MDT 2014 - carnold@suse.com + +- bnc#867749 - virt-manager polling connection + virtman-load-stored-uris.patch +- bnc#866287 - virt-manager suggests to install + "qemu / libvirt-daemon-qemu / libvirt-daemon-driver-network" at startup + virtman-packages.patch +- Use qemu-system-x86_64 instead of the deprecated qemu-kvm + virtman-kvm.patch + +------------------------------------------------------------------- +Mon Mar 10 07:46:16 MDT 2014 - carnold@suse.com + +- Upstream bug fixes + 531db6a7-new-volume-tooltip-logic.patch + 531dbfa7-handle-errors-when-deregistering-events-on-close.patch + +------------------------------------------------------------------- +Fri Mar 7 10:26:16 MST 2014 - carnold@suse.com + +- Upstream bug fixes + 5318a2cd-cpu-model-fallback-failure-fix.patch + 5318a626-adding-filesystem-device-fix.patch + 5318aa88-invalid-libvirt-volume-XML.patch + 5318b486-virtinstall-location-iso-fix.patch + 5319db07-customize-add-disk-fix.patch + +------------------------------------------------------------------- +Thu Mar 6 15:16:39 MST 2014 - carnold@suse.com + +- Allow the installation repos provided by zypper to be selected + as network installation sources + virtman-show-suse-install-repos.patch + +------------------------------------------------------------------- +Mon Mar 3 09:26:39 MST 2014 - carnold@suse.com + +- Upstream bug fixes + 530f80f5-handle-missing-storage-volumes.patch + 5310bd89-console-fix-unsetting-resize-guest.patch + 5310e3ac-set-show_arrow-to-true.patch + 5310e3ac-vmmConsolePages-toggle-visibilities-on-page-change.patch + 5310e3ac-vmmDetails-toggle-visibilities-on-page-change.patch + 5310e52d-fix-setting-default-window-size.patch + +------------------------------------------------------------------- +Thu Feb 27 08:00:39 MST 2014 - carnold@suse.com + +- Upstream bug fixes + 53022930-lxc-connection-fix.patch + 530229cb-non-x86-kvm-creation-fix.patch + 53023f56-dont-alter-caps-machine-list-on-create.patch + 53030858-generate_target-fix.patch + 53037798-not-customizing-generate_target-fix.patch + 53047532-dont-get-duplicated-disks.patch + 53047595-calculate-disk-bus-properly.patch + 530987c4-disk-bus-calculation-fix.patch + 530c021c-attempt-empty-path-on-virDomainBlockStats.patch + 530cd6ab-log-broken-xml.patch + 530cf4de-allow-numbered-object-names.patch + 530cfa5e-close-connection-on-tick-failure-fix.patch + +------------------------------------------------------------------- +Wed Feb 26 16:49:39 UTC 2014 - cbosdonnat@suse.com + +- virt-manager-common requires python-libxml2 + +------------------------------------------------------------------- +Fri Feb 14 15:45:58 MST 2014 - carnold@suse.com + +- If connection is Xen, default to PV instead of HVM. + virtman-default-to-xen-pv.patch + +------------------------------------------------------------------- +Thu Feb 13 16:23:58 MST 2014 - carnold@suse.com + +- Update to virt-manager 1.0.0 + * virt-manager: Snapshot support + * New tool virt-xml: Edit libvirt XML in one shot from the command line. Check out some examples: http://www.redhat.com/archives/libvir-list/2014-January/msg01226.html + * Improved defaults: qcow2, USB2, host CPU model, guest agent channel, … + * Introspect command line options like –disk=? or –network=help + * The virt-image tool will be removed before the next release, speak up if you have a good reason not to remove it. + * virt-manager: Support arm vexpress VM creation + * virt-manager: Add guest memory usage graphs (Thorsten Behrens) + * virt-manager: UI for editing devices (Cédric Bosdonnat) + * Spice USB redirection support (Guannan Ren) + * UI and command line support (Stefan Berger) + * UI and command line support (Giuseppe Scrivano) + * UI and command line support (Chen Hanxiao) + * command line support (Chen Hanxiao) + * virt-manager: support for glusterfs storage pools (Giuseppe Scrivano) + * cli: New options –memory, –features, –clock, –metadata, –pm + * Greatly improve app responsiveness when connecting to remote hosts + * Lots of UI cleanup and improvements + virt-manager-1.0.0.tar.bz2 +- Dropped the following patches by taking a newer upstream tarball + virt-manager-0.10.0.tar.bz2 + Add-memory-stats-widget-also-to-manager-tree-view.patch + Attempt-empty-path-on-virDomainBlockStats.patch + Base-mem-statistics-on-virDomainMemoryStats-if-avail.patch + virtinst-add-cache-modes.patch + virtinst-allow-ide-hdb.patch + virtinst-clone-disks.patch + virtinst-none-arch-fix.patch + virtman-support-unsafe-migration.patch + +------------------------------------------------------------------- +Mon Feb 3 13:36:52 MST 2014 - carnold@suse.com + +- Fix patch using util.is_error_nosupport (0.10.1) when it should + be using support.is_error_nosupport (0.10.0) + added Base-mem-statistics-on-virDomainMemoryStats-if-avail.patch + +------------------------------------------------------------------- +Wed Jan 23 18:00:00 CET 2014 - tbehrens@suse.com + +- Fate#313213: pending upstream patches added + * added Add-memory-stats-widget-also-to-manager-tree-view.patch + * added Base-mem-statistics-on-virDomainMemoryStats-if-avail.patch + * added Attempt-empty-path-on-virDomainBlockStats.patch + +------------------------------------------------------------------- +Wed Jan 22 11:03:50 MST 2014 - carnold@suse.com + +- Add Requires on virt-manager for virt-install +- Add sles12/sled12 as supported distros + +------------------------------------------------------------------- +Thu Jan 07 14:25:13 MDT 2014 - carnold@suse.com + +- Translate virt-install.ycp to virt-install.rb + Added virt-install.rb + Dropped virt-install.ycp + +------------------------------------------------------------------- +Tue Dec 24 13:49:29 MST 2013 - carnold@suse.com + +- Drop virtman-autoconnect.patch + +------------------------------------------------------------------- +Sat Dec 14 16:49:34 CET 2013 - ohering@suse.de + +- Pass --prefix to setup.py to fix build in 12.2 and older + +------------------------------------------------------------------- +Mon Dec 9 16:35:32 MDT 2013 - carnold@suse.com + +- Allow vm-install to be launched from the menu as an independent + process. + +------------------------------------------------------------------- +Mon Dec 9 18:34:01 UTC 2013 - cbosdonnat@suse.com + +- bnc#847641 - L3: block device disappears with disabling cache + virtman-support-unsafe-migration.patch + +------------------------------------------------------------------- +Mon Nov 25 16:12:07 MDT 2013 - carnold@suse.com + +- fate#316388: virt-manager: Support the latest version (0.10.x or newer) + virt-manager-0.10.0.tar.bz2 +- Update to virt-manager 0.10.0 includes + * Merged code with python-virtinst. virtinst is no longer public + * Port from GTK2 to GTK3 (Daniel Berrange, Cole Robinson) + * Port from gconf to gsettings + * Port from autotools to python distutils + * Remove virt-manager-tui + * Remove HAL support + * IPv6 and static route virtual network support (Gene Czarcinski) + * virt-install: Add –cpu host-passthrough (Ken ICHIKAWA, Hu Tao) +- Patches now included from the deprecated python-virtinst repo + virt-install.desktop + virt-install.ycp + virtinst-allow-ide-hdb.patch + virtinst-allow-pv-iso-install.patch + virtinst-add-cache-modes.patch + virtinst-cdrom.patch + virtinst-clone-disks.patch + virtinst-detect-suse-distros.patch + virtinst-none-arch-fix.patch + virtinst-qed.patch + virtinst-storage-ocfs2.patch + virtinst-support-suse-distros.patch + virtinst-xen-drive-type.patch +- Dropped old tarball and upstream fixes + virt-manager-0.9.5.tar.bz2 + virtman-dropped-connection-segfault.patch + virtman-graph-row-spacing.patch + virtman-memleak-callbacks.patch + virtman-memleak-disable-graph.patch + +------------------------------------------------------------------- +Thu Sep 5 14:03:32 MDT 2013 - carnold@suse.com + +- bnc#821214 - virt-manager has a big memory leak. + virtman-memleak-disable-graph.patch + virtman-memleak-callbacks.patch + virtman-graph-row-spacing.patch + +------------------------------------------------------------------- +Thu Aug 29 15:41:17 MDT 2013 - carnold@suse.com + +- Fix a segfault when the connection is dropped + virtman-dropped-connection-segfault.patch + +------------------------------------------------------------------- +Thu Jul 25 11:34:07 MDT 2013 - carnold@suse.com + +- Use correct kernel argument for specifying autoyast files. + Renamed virtman-autoyast-label.patch to + virtman-autoyast-support.patch + +------------------------------------------------------------------- +Tue Jul 23 15:37:06 MDT 2013 - carnold@suse.com + +- Add opensuse 13 as a host default for VM creation + +------------------------------------------------------------------- +Mon Jul 22 12:25:16 MDT 2013 - carnold@suse.com + +- Fix kvm installs defaulting to qemu instead of kvm. + virtman-allow-pv-iso-install.patch + +------------------------------------------------------------------- +Wed Jul 17 14:48:48 MDT 2013 - carnold@suse.com + +- Fix exception when selecting ISO for install source. + virtman-autoyast-label.patch + +------------------------------------------------------------------- +Wed Jul 3 14:52:48 MDT 2013 - carnold@suse.com + +- Default to virt-install when installation icon is selected +- Allow virt-install to install Xen PV guests from ISO media + virtman-allow-pv-iso-install.patch +- Detect SUSE installation sources and use as default when found + virtman-default-guest-from-host-os.patch +- Use 'Autoyast' instead of 'Kickstart' if installing SUSE distro + virtman-autoyast-label.patch + +------------------------------------------------------------------- +Fri May 31 15:08:01 MDT 2013 - carnold@suse.com + +- Renamed all patches from '.diff' to '.patch'. + +------------------------------------------------------------------- +Fri May 31 14:20:00 MDT 2013 - carnold@suse.com + +- bnc#822531 - Virt-manager will reset the domu's 'Autostart' + option to unselected status as soon as changing the domu's any + virtual hardware through virt-manager (Xen only) + virtman-autorestart.diff + +------------------------------------------------------------------- +Tue Apr 2 15:04:34 MDT 2013 - carnold@suse.com + +- Update to virt-manager 0.9.5 + * Enable adding virtio-scsi disks (Chen Hanxiao) + * Support security auto-relabel setting (Martin Kletzander) + * Support disk iotune settings (David Shane Holden) + * Support 'reset' as a reboot option (John Doyle) + * Bug fixes and minor improvements + +------------------------------------------------------------------- +Mon Feb 11 10:50:37 MST 2013 - carnold@suse.com + +- bnc#802778 - virt-manager doesn't start + Remove virt-manager-tui from the package. It requires newt_syrup + which is not part of the distro. + virt-manager.spec + +------------------------------------------------------------------- +Mon Feb 4 12:41:13 MST 2013 - carnold@suse.com + +- bnc#801988 - virt-manager requires for vtemodule.so wrong on s390x + virt-manager.spec + +------------------------------------------------------------------- +Mon Feb 4 10:10:30 MST 2013 - carnold@suse.com + +- bnc#801987 - virt-manager is not able to create new VM in qemu + Updated virtman-vminstall.diff + +------------------------------------------------------------------- +Thu Jan 31 15:32:00 MST 2013 - carnold@suse.com + +- fate#314135: Support PVSCSI on XEN and VirtioSCSI on KVM - + Implement pass through block device +- fate#313076: HBA passthrough for kvm + virtman-git-scsi.diff + virtman-git-scsi-lun.diff + +------------------------------------------------------------------- +Wed Jan 2 14:12:13 MST 2013 - carnold@novell.com + +- Enable virt-manager to be built for s390x + +------------------------------------------------------------------- +Thu Sep 20 15:03:48 MDT 2012 - carnold@novell.com + +- bnc#780660 - Yast does not offer "Virtualization" section by + default, and no "Install Hypervisor" option, after loading + yast-vm. + virtman-kvm-packages.diff + +------------------------------------------------------------------- +Tue Sep 18 14:08:46 MDT 2012 - carnold@novell.com + +- bnc#780859 - virt-manager doesn't show the console screen + virtman-reverse-serialcon.patch + +------------------------------------------------------------------- +Thu Aug 9 15:19:27 MDT 2012 - carnold@novell.com + +- bnc#772744 - vm-install requires root, while original virt-manager + vm creation code works fine as user + This patch makes virt-install available for local installs via a + pop-down menu. + virtman-virtinstall.diff + +------------------------------------------------------------------- +Tue Aug 7 09:21:50 MDT 2012 - carnold@novell.com + +- Update to virt-manager 0.9.4 + 0.9.4 is a bugfix release for 0.9.2, fixing VNC keyboard focus + issues. 0.9.2 changelog: + * 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) + * Many bug fixes and improvements + +------------------------------------------------------------------- +Fri Jul 13 11:20:18 MDT 2012 - carnold@novell.com + +- Update to virt-manager 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) + * Many bug fixes and improvements + +------------------------------------------------------------------- +Mon Jun 25 11:52:50 MDT 2012 - carnold@novell.com + +- bnc#768660 - virt-manager complains about missing SuSEconfig.gtk2 + virt-manager.spec + +------------------------------------------------------------------- +Fri Apr 27 17:03:48 UTC 2012 - reddwarf@opensuse.org + +- Recommend python-SpiceClientGtk + +------------------------------------------------------------------- +Thu Mar 29 22:19:44 UTC 2012 - berendt@b1-systems.de + +- added missing requirements python-gobject, python-gtk, + python-gconf and xorg-x11-fonts + +------------------------------------------------------------------- +Mon Mar 5 08:26:17 MST 2012 - carnold@novell.com + +- Previous commit should just be Requires: python-gconf + +------------------------------------------------------------------- +Wed Feb 22 13:55:44 MST 2012 - carnold@novell.com + +- bnc#732617 - virt-manager does not start when python-virtinst is + installed + +------------------------------------------------------------------- +Thu Feb 16 06:42:21 MST 2012 - carnold@novell.com + +- bnc#745221 - virt-manager should require python-gconf + Requires: python2-gconf >= 1.99.11-7 + +------------------------------------------------------------------- +Fri Feb 3 12:54:27 MST 2012 - carnold@novell.com + +- Remove the virt-install sources from the virt-manager package. + The virt-install applications are now found in python-virtinst. + +------------------------------------------------------------------- +Fri Feb 3 05:49:34 MST 2012 - carnold@novell.com + +- Update to virt-manager 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! +- Update to virtinst 0.600.1 + * virt-install: --redir option for usb redirection (Marc-André Lureau) + * virt-install: Advanced --controller support for usb2 (Marc-André Lureau) + * Many bug fixes and minor improvments. + +------------------------------------------------------------------- +Thu Jan 5 14:51:48 MST 2012 - carnold@novell.com + +- Two spec file changes. Update version of libvirt required. + Added a Provides on python-virtinst. + +------------------------------------------------------------------- +Thu Jan 5 10:55:44 MST 2012 - carnold@novell.com + +- console: Fix hang when reconnecting to remote VNC console + virtman-git-reconnect.diff +- KVM: Enable support for SATA bus option + virtman-git-sata-support.diff + virtinst-git-sata-support.diff + +------------------------------------------------------------------- +Mon Dec 5 11:38:54 MST 2011 - carnold@novell.com + +- bnc#731218 - Xen guest consoles started from the virt manager + have slow mouse response in the guest + virtman-reverse-git-tooltip.patch + +------------------------------------------------------------------- +Mon Nov 7 16:27:15 MST 2011 - carnold@novell.com + +- bnc#727662 - Error polling connection 'qemu:///system' with guest + init 0 + virtman-update-backend.diff + +------------------------------------------------------------------- +Fri Nov 4 16:16:51 MDT 2011 - carnold@novell.com + +- Update to latest upstream git version for various bug fixes + virtmanager: a712a7b32e6d7b7d9d53561b3ed2078190191560 + virtinst: 15d4901a3c8b855838931976e023158b8cda1c37 + +------------------------------------------------------------------- +Fri Oct 28 10:19:43 MDT 2011 - carnold@novell.com + +- Upstream bug fixes + virtinst-git-mac-prefix.diff + virtman-git-error-reporting.diff + virtman-git-explicit-python.diff + +------------------------------------------------------------------- +Wed Oct 12 11:50:03 MDT 2011 - carnold@novell.com + +- Fix broken define in virtinst-qed.diff + +------------------------------------------------------------------- +Wed Oct 5 15:54:30 MDT 2011 - carnold@novell.com + +- Enforce dependency on vm-install version 0.5.6 + +------------------------------------------------------------------- +Thu Sep 29 13:16:35 MDT 2011 - carnold@novell.com + +- bnc#722524 - [SLES11SP2Beta6] virt-manager fails to change the + device model for the NICs from default to virtio (kvm) +- bnc#683667 - On KVM, virt-manager incorrectly writed duplicated + device information into guest's configuration file + (/etc/libvirt/qemu/DOMNAME.xml) + virt-manager version 0.9.0 + +------------------------------------------------------------------- +Tue Sep 27 12:01:53 MDT 2011 - carnold@novell.com + +- Fix broken vminstall patch + virtman-vminstall.diff + +------------------------------------------------------------------- +Wed Sep 21 11:29:17 MDT 2011 - carnold@novell.com + +- KVM: Add missing qed support to virtinst + +------------------------------------------------------------------- +Wed Sep 21 09:40:09 MDT 2011 - carnold@novell.com + +- Upstream bug fixes + virtman-netstats-fix.diff + virtman-finish-button-fix.diff + virtman-shutoff-fix.diff + virtman-set-has-window-fix.diff + virtman-grep-fix.diff + virtman-no-cd-present-fix.diff + virtman-resize-menu-fix.diff + virtman-vcpu-count-fix.diff + virtman-storage-pool-fix.diff + virtman-domain-name-fix.diff + virtman-unapplied-changes-fix.diff + virtman-details-fix.diff + virtman-delete-fix.diff + virtman-collidelist-fix.diff + virtman-char-device-mode-fix.diff + virtinst-hv-version-fix.diff + virtinst-initrd-inject-fix.diff + virtinst-initrd-inject2-fix.diff + virtinst-no-volume-fix.diff + virtinst-prompts-fix.diff + virtinst-cpu-model-name-fix.diff + virtinst-xml-clear-fix.diff + virtinst-remote-storage-fix.diff + virtinst-error-message-fix.diff + virtinst-typo-fix.diff + virtinst-cdrom.diff + virtinst-storage-ocfs2.diff + +------------------------------------------------------------------- +Tue Sep 20 09:05:19 MDT 2011 - carnold@novell.com + +- bnc#718861 - [SLES11SP2beta5] virt-manager unable to boot + Windows2008 guest with virtio disk and network device (kvm) +- Update to virt-manager 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 +- Update to virtinst 0.600.0 + * virt-install: Various improvements to enable LXC/container guests: + * New --filesystem option for devices + * New --init option for container path + * New --container option (similar to --paravirt or --hvm) + * virt-install: Make --location remotely (with latest libvirt) + * virt-install: New --smartcard option for devices + * (Marc-André Lureau) + * virt-install: New --numatune option for building guest XML + * virt-install: option to set --disk error_policy= + * virt-install: option to set --disk serial= + +------------------------------------------------------------------- +Mon Aug 15 16:21:55 MDT 2011 - carnold@novell.com + +- Fix _do_show_create() to check for valid uri + +------------------------------------------------------------------- +Mon Aug 15 08:26:48 MDT 2011 - carnold@novell.com + +- bnc#712214 - virt-manager 0.8.7 declared LGPL-2.1+ but is GPL-2.0+ + +------------------------------------------------------------------- +Fri Aug 12 14:12:06 MDT 2011 - carnold@novell.com + +- Fixes to desktop file to be more descriptive + +------------------------------------------------------------------- +Wed Jul 20 09:02:38 MDT 2011 - carnold@novell.com + +- Fix gconf_schemas_prereq in virt-manager.spec file + +------------------------------------------------------------------- +Mon Jul 18 15:27:22 MDT 2011 - carnold@novell.com + +- KVM: Add support for the qed file format + +------------------------------------------------------------------- +Fri Jul 15 15:44:31 MDT 2011 - carnold@novell.com + +- KVM now supports the eepro100. Add support in virt-manager for + this nic + virtman-eepro100.diff + +------------------------------------------------------------------- +Fri Jul 8 15:15:31 MDT 2011 - carnold@novell.com + +- Upstream fixes + virtman-fix-storage_capable.diff + virtman-fix-ui-resize.diff + virtman-fix-type.diff + virtman-fix-addhw-nonhotplug.diff + virtman-fix-no-nic-present.diff + virtman-fix-ui-cleanup.diff + +------------------------------------------------------------------- +Mon Apr 4 13:46:59 MDT 2011 - carnold@novell.com + +- Update to virt-manager 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 and SPICE for existing VM + * Allow easily changing network source device for existing VM +- Update to virtinst 0.500.6 + * virt-install: --graphics spice now enables spicevmc and qxl + * virt-install: New --disk parameter io=native|threads + +------------------------------------------------------------------- +Wed Mar 23 08:31:23 MDT 2011 - carnold@novell.com + +- bnc#681908 - Virtualization/virt-manager: Bug + virtman-connect-consoles-fix.diff + +------------------------------------------------------------------- +Thu Mar 21 13:34:41 MST 2011 - carnold@novell.com + +- Update to virt-manager 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 +- Update to virtinst 0.500.5 + * New virt-install --cpu option for configuring CPU + model/features + * virt-install --vcpus option can not specify topology and + maxvcpus + * New virt-install --graphics option to unify --vnc, --sdl, + spice config + * New virt-install --print-xml option to skip install and print + XML + +------------------------------------------------------------------- +Tue Jan 18 11:21:29 MST 2011 - carnold@novell.com + +- bnc#657272 - virt-manager creates default 'dir' storage pool in + /var/lib/libvirt/images on xen host + virtman-storage-pool.diff + +------------------------------------------------------------------- +Fri Jan 7 16:31:05 MST 2011 - carnold@novell.com + +- bnc#641977 - virt-manager can't create kvm virtual Machines on a + remote host. + +------------------------------------------------------------------- +Mon Dec 20 14:01:21 MST 2010 - carnold@novell.com + +- When installing remote, use virtinst + +------------------------------------------------------------------- +Fri Oct 22 12:16:35 UTC 2010 - seife@opensuse.org + +- fix up previous commit that broke the patch +- fix runtime dependency on python-vte + +------------------------------------------------------------------- +Thu Oct 21 13:38:14 MDT 2010 - carnold@novell.com + +- bnc#647261 - Get lot's of error in .xsession-errors when lauching + yast + +------------------------------------------------------------------- +Mon Sep 27 11:10:48 UTC 2010 - seife@opensuse.org + +- fix instant segfault with python 2.7, bnc#641981, patch taken + from https://bugzilla.redhat.com/show_bug.cgi?id=620216 + +------------------------------------------------------------------- +Tue Sep 14 08:26:13 UTC 2010 - seife@opensuse.org + +- fix build on FACTORY after gconf2 and python changes + +------------------------------------------------------------------- +Tue Aug 31 14:13:14 MDT 2010 - carnold@novell.com + +- Update to virt-manager 0.8.5 + * Improved save/restore support + * Option to view and change disk cache mode + * Configurable VNC keygrab sequence (Michal Novotny) +- Update to virtinst 0.500.4 + * New virt-install --console option for specifying virtio console + device + * New virt-install --channel option for specifying guest + communication channel + * New virt-install --boot option. Allows setting post-install boot + order, direct kernel/initrd boot, and enabling boot device menu. + * New virt-install --initrd-inject option, which enables + installation using a _local_ kickstart file (Colin Walters) + +------------------------------------------------------------------- +Wed Jul 28 16:06:55 MDT 2010 - carnold@novell.com + +- bnc#624250 - L3: virt-manager doesn't update "Autostart" setting + in vm configuration correctly + virtman-autorestart.diff + +------------------------------------------------------------------- +Fri Jun 25 09:22:04 MDT 2010 - jfehlig@novell.com + +- bnc#611023 - Use netcat-openbsd, which contains proper 'nc' + program + +------------------------------------------------------------------- +Tue May 11 09:26:27 UTC 2010 - seife@opensuse.org + +- fix virt-{clone,convert,image,install} by installing the python + libs into the proper directories + +------------------------------------------------------------------- +Wed May 5 09:29:36 MDT 2010 - carnold@novell.com + +- bnc#602775 - An icon lost in "virt-manager" + virtman-icon.diff + +------------------------------------------------------------------- +Mon Apr 26 10:58:32 MDT 2010 - carnold@novell.com + +- Fixes in virtman-keycombo.diff to match virt-viewer's 'Send Key' + menu options. See bnc#553633 + +------------------------------------------------------------------- +Mon Apr 19 10:57:30 MDT 2010 - carnold@novell.com + +- bnc#597235 - virt-manager does not start complaining about a + broken icon. + +------------------------------------------------------------------- +Wed Mar 31 16:18:34 MDT 2010 - carnold@novell.com + +- bnc#592538 - VM status is recognized as "Shutoff" in virt-manager + and virt-viewer after creating a snapshot. + +------------------------------------------------------------------- +Fri Mar 26 10:49:58 MDT 2010 - carnold@novell.com + +- Update to virt-manager 0.8.4 + * Import install option: create a VM using 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 +- Update to virtinst 0.500.3 + * virt-install: New --watchdog option: configure a virtual + watchdog dev + * virt-install: New --soundhw option: More flexible sound + configuration deprecates --sound, though back compat is + maintained + * virt-install: New --security option: configure VM security + driver + * virt-install: New --description option: set a human readable + desc + * Better OS defaults: Use