diff --git a/5573aeb4-createnet-Fix-XML-editor-error-when-dhcp-fields-are-empty.patch b/5573aeb4-createnet-Fix-XML-editor-error-when-dhcp-fields-are-empty.patch new file mode 100644 index 00000000..698b004b --- /dev/null +++ b/5573aeb4-createnet-Fix-XML-editor-error-when-dhcp-fields-are-empty.patch @@ -0,0 +1,63 @@ +Subject: createnet: Fix XML editor error when dhcp fields are empty +From: Cole Robinson crobinso@redhat.com Wed Jan 29 18:43:58 2020 -0500 +Date: Wed Jan 29 18:53:31 2020 -0500: +Git: 5573aeb44100bcabdc24ab1cd19ec96bb4cb9d62 + +We need to handle the case when ip == None + +https://bugzilla.redhat.com/show_bug.cgi?id=1726586 + +Signed-off-by: Cole Robinson + +--- virt-manager-2.2.1.orig/virtManager/createnet.py ++++ virt-manager-2.2.1/virtManager/createnet.py +@@ -414,31 +414,35 @@ class vmmCreateNetwork(vmmGObjectUI): + if self.get_config_ipv4_enable(): + ip = self.get_config_ip4() + ipobj = net.ips.add_new() +- ipobj.address = str(ip.network_address + 1) +- ipobj.netmask = str(ip.netmask) ++ if ip: ++ ipobj.address = str(ip.network_address + 1) ++ ipobj.netmask = str(ip.netmask) + + if self.get_config_dhcpv4_enable(): + dhcpobj = ipobj.ranges.add_new() +- dhcpobj.start = str( +- self.get_config_dhcpv4_start().network_address +- ) +- dhcpobj.end = str(self.get_config_dhcpv4_end().network_address) ++ start = self.get_config_dhcpv4_start() ++ end = self.get_config_dhcpv4_end() ++ if start: ++ dhcpobj.start = str(start.network_address) ++ if end: ++ dhcpobj.end = str(end.network_address) + + if self.get_config_ipv6_enable(): + ip = self.get_config_ip6() + ipobj = net.ips.add_new() + ipobj.family = "ipv6" +- ipobj.address = str(ip.network_address + 1) +- ipobj.prefix = str(ip.prefixlen) ++ if ip: ++ ipobj.address = str(ip.network_address + 1) ++ ipobj.prefix = str(ip.prefixlen) + + if self.get_config_dhcpv6_enable(): + dhcpobj = ipobj.ranges.add_new() +- dhcpobj.start = str( +- self.get_config_dhcpv6_start().network_address +- ) +- dhcpobj.end = str( +- self.get_config_dhcpv6_end().network_address +- ) ++ start = self.get_config_dhcpv6_start() ++ end = self.get_config_dhcpv6_end() ++ if start: ++ dhcpobj.start = str(start.network_address) ++ if end: ++ dhcpobj.end = str(end.network_address) + + return net + diff --git a/e8bf16b9-details-fix-detection-of-firmware-auto-selection.patch b/e8bf16b9-details-fix-detection-of-firmware-auto-selection.patch new file mode 100644 index 00000000..509a3d89 --- /dev/null +++ b/e8bf16b9-details-fix-detection-of-firmware-auto-selection.patch @@ -0,0 +1,25 @@ +Subject: details: fix detection of firmware auto-selection +From: Pavel Hrdina phrdina@redhat.com Tue Jul 21 12:33:56 2020 +0200 +Date: Thu Aug 13 16:40:53 2020 +0200: +Git: e8bf16b983558010cc9645e09eb36117e9e4fba4 + +Commit <15a9502b7b7a263c4d66ff2b3f31c209f58fe0b4> fixed firmware +detection but incorrectly. It will always show only "UEFI" even if +the firmware auto-selection is not used because the function is_uefi() +checks both the old style and the new auto-selection. + +We have to check only for the auto-selection option. + +Signed-off-by: Pavel Hrdina + +--- virt-manager-2.2.1.orig/virtManager/details/details.py ++++ virt-manager-2.2.1/virtManager/details/details.py +@@ -2017,7 +2017,7 @@ class vmmDetails(vmmGObjectUI): + + # Firmware + domcaps = self.vm.get_domain_capabilities() +- if self.vm.get_xmlobj().is_uefi(): ++ if self.vm.get_xmlobj().os.firmware == "efi": + firmware = 'UEFI' + else: + firmware = domcaps.label_for_firmware_path( diff --git a/virt-manager.changes b/virt-manager.changes index 93315f29..c6ff4f22 100644 --- a/virt-manager.changes +++ b/virt-manager.changes @@ -1,3 +1,18 @@ +------------------------------------------------------------------- +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 + +------------------------------------------------------------------- +Fri Aug 14 11:50:48 MDT 2020 - carnold@suse.com + +- Upstream bug fix (bsc#1027942) + e8bf16b9-details-fix-detection-of-firmware-auto-selection.patch + 5573aeb4-createnet-Fix-XML-editor-error-when-dhcp-fields-are-empty.patch + ------------------------------------------------------------------- Wed Jul 29 13:22:53 MDT 2020 - carnold@suse.com diff --git a/virt-manager.spec b/virt-manager.spec index af1301d1..befc173f 100644 --- a/virt-manager.spec +++ b/virt-manager.spec @@ -1,7 +1,7 @@ # # spec file for package virt-manager # -# Copyright (c) 2020 SUSE LINUX GmbH, Nuernberg, Germany. +# Copyright (c) 2020 SUSE LLC # # All modifications and additions to the file contributed by third parties # remain the property of their copyright owners, unless otherwise agreed @@ -12,7 +12,7 @@ # license that conforms to the Open Source Definition (Version 1.9) # published by the Open Source Initiative. -# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# Please submit bugfixes or comments via https://bugs.opensuse.org/ # @@ -26,7 +26,7 @@ Release: 0 Summary: Virtual Machine Manager License: GPL-2.0-or-later Group: System/Monitoring -Url: http://virt-manager.org/ +URL: http://virt-manager.org/ Source0: %{name}-%{version}.tar.bz2 Source1: virt-install.rb Source2: virt-install.desktop @@ -48,16 +48,17 @@ Patch13: 51d84c54-connection-Avoid-repeated-default-pool-creation-attempt Patch14: d934d6f2-domcaps-Fix-check-for-uncached-security-features.patch Patch15: 29f9f5f2-virt-xml-fix-defined_xml_is_unchanged.patch Patch16: 15a9502b-Fix-showing-the-firmware-type-in-case-of-firmware-auto-selection.patch +Patch17: 5573aeb4-createnet-Fix-XML-editor-error-when-dhcp-fields-are-empty.patch +Patch18: e8bf16b9-details-fix-detection-of-firmware-auto-selection.patch # SUSE Only Patch70: virtman-desktop.patch Patch71: virtman-kvm.patch -Patch72: virtman-keycombo.patch -Patch73: virtman-show-suse-install-repos.patch -Patch74: virtman-dont-allow-grub.xen-to-be-deleted.patch -Patch75: virtinst-pvgrub2-bootloader.patch -Patch76: virtinst-change-location-for-grub_xen.patch -Patch77: virtman-fix-env-script-interpreter.patch -Patch78: virtinst-set-qemu-emulator.patch +Patch72: virtman-show-suse-install-repos.patch +Patch73: virtman-dont-allow-grub.xen-to-be-deleted.patch +Patch74: virtinst-pvgrub2-bootloader.patch +Patch75: virtinst-change-location-for-grub_xen.patch +Patch76: virtman-fix-env-script-interpreter.patch +Patch77: virtinst-set-qemu-emulator.patch # Features or Enhancements Patch103: virtman-load-stored-uris.patch Patch120: virtinst-default-xen-to-qcow2-format.patch @@ -147,13 +148,10 @@ Requires: python3-ipaddr Requires: python3-libvirt-python >= 0.7.0 Requires: python3-libxml2-python Requires: python3-pycurl +Requires: typelib(AppIndicator3) Requires: typelib(LibvirtGLib) Suggests: python3-virt-bootstrap BuildRequires: gobject-introspection -# No AppIndicator package on SLE -%if 0%{?is_opensuse} == 0 -%define __requires_exclude typelib\\(AppIndicator3\\) -%endif %description common Common files used by the different virt-manager interfaces, as well as @@ -198,6 +196,8 @@ machine). %patch14 -p1 %patch15 -p1 %patch16 -p1 +%patch17 -p1 +%patch18 -p1 # SUSE Only %patch70 -p1 %patch71 -p1 @@ -207,7 +207,6 @@ machine). %patch75 -p1 %patch76 -p1 %patch77 -p1 -%patch78 -p1 # Enhancements %patch103 -p1 %patch120 -p1 diff --git a/virtman-keycombo.patch b/virtman-keycombo.patch deleted file mode 100644 index 499c2f3e..00000000 --- a/virtman-keycombo.patch +++ /dev/null @@ -1,22 +0,0 @@ -Enhancement adding Send Keys for mostly NetWare and also Windows -Index: virt-manager-2.1.0/virtManager/details/console.py -=================================================================== ---- virt-manager-2.1.0.orig/virtManager/details/console.py -+++ virt-manager-2.1.0/virtManager/details/console.py -@@ -114,6 +114,16 @@ def build_keycombo_menu(on_send_key_fn): - make_item("Ctrl+Alt+_Backspace", ["Control_L", "Alt_L", "BackSpace"]) - make_item("Ctrl+Alt+_Delete", ["Control_L", "Alt_L", "Delete"]) - menu.add(Gtk.SeparatorMenuItem()) -+ make_item("Ctrl+Scroll+Scroll", ["Control_L", "Scroll" + "Scroll"]) -+ make_item("Alt+F_10", ["Alt_L", "F10"]) -+ make_item("Alt+Tab", ["Alt_L", "Tab"]) -+ make_item("Alt+Escape", ["Alt_L", "Escape"]) -+ make_item("Ctrl+Escape", ["Control_L", "Escape"]) -+ make_item("Ctrl+Alt+Escape", ["Control_L", "Alt_L", "Escape"]) -+ make_item("Alt+Shift+Shift+Escape", ["Alt_R", "Shift_R", "Shift_L", "Escape"]) -+ make_item("F_8", ["F8"]) -+ make_item("F_10", ["F10"]) -+ menu.add(Gtk.SeparatorMenuItem()) - - for i in range(1, 13): - make_item("Ctrl+Alt+F_%d" % i, ["Control_L", "Alt_L", "F%d" % i])