- 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

OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=456
This commit is contained in:
Charles Arnold 2019-02-04 18:46:20 +00:00 committed by Git OBS Bridge
parent 80ab7ac0fb
commit 8d6890f068
37 changed files with 323 additions and 487 deletions

View File

@ -14,11 +14,11 @@ TypeError: '>' not supported between instances of 'NoneType' and 'int'
virtinst/progress.py | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
Index: virt-manager-2.0.0/virtinst/progress.py
Index: virt-manager-2.1.0/virtinst/progress.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/progress.py
+++ virt-manager-2.0.0/virtinst/progress.py
@@ -321,7 +321,7 @@ class RateEstimator:
--- virt-manager-2.1.0.orig/virtinst/progress.py
+++ virt-manager-2.1.0/virtinst/progress.py
@@ -350,7 +350,7 @@ class RateEstimator:
self.start_time = now
self.last_update_time = now
self.last_amount_read = 0
@ -26,8 +26,8 @@ Index: virt-manager-2.0.0/virtinst/progress.py
+ self.ave_rate = 0
def update(self, amount_read, now=None):
if now is None: now = time.time()
@@ -333,7 +333,7 @@ class RateEstimator:
if now is None:
@@ -363,7 +363,7 @@ class RateEstimator:
# if we just started this file, all bets are off
self.last_update_time = now
self.last_amount_read = amount_read
@ -35,4 +35,4 @@ Index: virt-manager-2.0.0/virtinst/progress.py
+ self.ave_rate = 0
return
#print 'times', now, self.last_update_time
time_diff = now - self.last_update_time

View File

@ -12,20 +12,20 @@ Avoids the following error:
virtinst/progress.py | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
Index: virt-manager-2.0.0/virtinst/progress.py
Index: virt-manager-2.1.0/virtinst/progress.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/progress.py
+++ virt-manager-2.0.0/virtinst/progress.py
--- virt-manager-2.1.0.orig/virtinst/progress.py
+++ virt-manager-2.1.0/virtinst/progress.py
@@ -16,6 +16,7 @@ import math
import fcntl
import struct
import termios
+from six import integer_types
# Code from https://mail.python.org/pipermail/python-list/2000-May/033365.html
def terminal_width(fd=1):
@@ -464,7 +465,7 @@ def format_number(number, SI=0, space='
depth = depth + 1
@@ -506,7 +507,7 @@ def format_number(number, SI=0, space='
depth = depth + 1
number = number / step
- if isinstance(number, int):

View File

@ -1,49 +0,0 @@
Subject: urldetect: Don't overload suse_content variable
From: Cole Robinson crobinso@redhat.com Thu Oct 18 17:16:14 2018 -0400
Date: Thu Oct 18 17:16:14 2018 -0400:
Git: 25b8873340cd7523a74babbd5b6c0f5c66935a05
Use an explicit check_for_suse_content variable rather than
stuffing -1 into suse_content
diff --git a/virtinst/urldetect.py b/virtinst/urldetect.py
index 4196b10..455ae00 100644
--- a/virtinst/urldetect.py
+++ b/virtinst/urldetect.py
@@ -28,6 +28,7 @@ class _DistroCache(object):
self.treeinfo_name = None
self.suse_content = None
+ self.checked_for_suse_content = False
self.debian_media_type = None
def acquire_file_content(self, path):
@@ -493,8 +494,8 @@ class SuseDistro(Distro):
if cache.treeinfo_family_regex(cls.famregex):
return True
- if not cache.suse_content:
- cache.suse_content = -1
+ if not cache.checked_for_suse_content:
+ cache.checked_for_suse_content = True
content_str = cache.acquire_file_content("content")
if content_str is None:
return False
@@ -505,7 +506,7 @@ class SuseDistro(Distro):
logging.debug("Error parsing SUSE content file: %s", str(e))
return False
- if cache.suse_content == -1:
+ if not cache.suse_content:
return False
for regex in cls._suse_regex:
if re.match(regex, cache.suse_content.product_name):
@@ -515,7 +516,7 @@ class SuseDistro(Distro):
def __init__(self, *args, **kwargs):
Distro.__init__(self, *args, **kwargs)
- if not self.cache.suse_content or self.cache.suse_content == -1:
+ if not self.cache.suse_content:
# This means we matched on treeinfo
self._kernel_paths = self.cache.get_treeinfo_media(self.type)
return

View File

@ -1,20 +0,0 @@
Subject: util: Fix typo vpcu -> vcpu
From: Martin Kletzander mkletzan@redhat.com Mon Oct 22 14:46:03 2018 +0100
Date: Mon Oct 22 15:05:30 2018 +0100:
Git: 9308bae310ff7889876d8c9d6f0187356e0fa2ce
Signed-off-by: Martin Kletzander <mkletzan@redhat.com>
diff --git a/man/virt-install.pod b/man/virt-install.pod
index 8cd56fe..062c785 100644
--- a/man/virt-install.pod
+++ b/man/virt-install.pod
@@ -262,7 +262,7 @@ Tune CPU parameters for the guest.
Configure which of the host's physical CPUs the domain VCPU will be pinned to. Example invocation
- --cputune vpcupin0.vcpu=0,vpcupin0.cpuset=0-3,vpcupin1.vcpu=1,vpcupin1.cpuset=4-7
+ --cputune vcpupin0.vcpu=0,vcpupin0.cpuset=0-3,vcpupin1.vcpu=1,vcpupin1.cpuset=4-7
Use --cputune=? to see a list of all available sub options. Complete details at L<https://libvirt.org/formatdomain.html#elementsCPUTuning>

View File

@ -1,94 +0,0 @@
Subject: virtinst: quickfix ubuntu net-preseed insert cdrom error
From: Johannes Tiefenbacher johannes.tiefenbacher@svc.co.at Tue Oct 9 15:52:23 2018 +0200
Date: Thu Oct 18 13:21:41 2018 -0400:
Git: b8aff28087d593f570b13aabe337b659bc260ae3
the proper kernel/initrd pair for booting from an http server is found in install/netboot/... on a mounted ubuntu iso.
this last worked in v1.4.2
Discussion: https://github.com/virt-manager/virt-manager/pull/34
(crobinso: add the fetcher.is_iso handling and add a comment)
diff --git a/virtinst/urldetect.py b/virtinst/urldetect.py
index 5da15d0..4196b10 100644
--- a/virtinst/urldetect.py
+++ b/virtinst/urldetect.py
@@ -30,7 +30,6 @@ class _DistroCache(object):
self.suse_content = None
self.debian_media_type = None
-
def acquire_file_content(self, path):
if path not in self._filecache:
try:
@@ -133,6 +132,9 @@ class _DistroCache(object):
verstr, version, update)
return version, update
+ def fetcher_is_iso(self):
+ return self._fetcher.is_iso()
+
class _SUSEContent(object):
"""
@@ -664,7 +666,16 @@ class DebianDistro(Distro):
media_type = "daily"
elif cache.content_regex(".disk/info",
"%s.*" % cls._debname.capitalize()):
- media_type = "disk"
+ # There's two cases here:
+ # 1) Direct access ISO, attached as CDROM afterwards. We
+ # use one set of kernels in that case which seem to
+ # assume the prescence of CDROM media
+ # 2) ISO mounted and exported over URL. We use a different
+ # set of kernels that expect to boot from the network
+ if cache.fetcher_is_iso():
+ media_type = "disk"
+ else:
+ media_type = "mounted_iso_url"
if media_type:
cache.debian_media_type = media_type
@@ -710,6 +721,8 @@ class DebianDistro(Distro):
url_prefix = "current/images"
if self.cache.debian_media_type == "daily":
url_prefix = "daily"
+ elif self.cache.debian_media_type == "mounted_iso_url":
+ url_prefix = "install"
tree_arch = self._find_treearch()
hvmroot = "%s/netboot/%s-installer/%s/" % (url_prefix,
diff --git a/virtinst/urlfetcher.py b/virtinst/urlfetcher.py
index 56c024a..e18fe98 100644
--- a/virtinst/urlfetcher.py
+++ b/virtinst/urlfetcher.py
@@ -26,6 +26,7 @@ class _URLFetcher(object):
a media source, such as CD ISO, or HTTP/HTTPS/FTP server
"""
_block_size = 16384
+ _is_iso = False
def __init__(self, location, scratchdir, meter):
self.location = location
@@ -101,6 +102,12 @@ class _URLFetcher(object):
# Public API #
##############
+ def is_iso(self):
+ """
+ If this is a fetcher for local CDROM/ISO
+ """
+ return self._is_iso
+
def prepareLocation(self):
"""
Perform any necessary setup
@@ -288,6 +295,7 @@ class _LocalURLFetcher(_URLFetcher):
class _ISOURLFetcher(_URLFetcher):
_cache_file_list = None
+ _is_iso = True
def _make_full_url(self, filename):
return "/" + filename

View File

@ -1,19 +0,0 @@
Subject: Update create.py
From: kalebskeithley kkeithle@redhat.com Thu Nov 1 09:18:34 2018 -0400
Date: Thu Nov 15 12:05:36 2018 -0500:
Git: c30b3bc6119aeb3d32e0e899a581c3cafd7aab8b
100 is a bit too short for managing/creating vms over the corporate VPN. About half the time it times out and I have to exit the virtmgr app and restart it to see the new vm.
diff --git a/virtManager/create.py b/virtManager/create.py
index a60e9a3f..d3844a52 100644
--- a/virtManager/create.py
+++ b/virtManager/create.py
@@ -2123,7 +2123,7 @@ class vmmCreate(vmmGObjectUI):
self.conn.schedule_priority_tick(pollvm=True)
count = 0
foundvm = None
- while count < 100:
+ while count < 200:
for vm in self.conn.list_vms():
if vm.get_uuid() == guest.uuid:
foundvm = vm

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:097aaf409c9d4d7a325deb34de40b6dd570c2671cb3d5720ed7183995b46aa8c
size 1484896

View File

@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:4bbf6360887996686ddb6592287bc8a78d3d67b4bcabe9e777f900f61d44261e
size 1469024

View File

@ -1,3 +1,23 @@
-------------------------------------------------------------------
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

View File

@ -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/
#
@ -21,7 +21,7 @@
%global default_hvs "qemu,xen,lxc"
Name: virt-manager
Version: 2.0.0
Version: 2.1.0
Release: 0
Summary: Virtual Machine Manager
License: GPL-2.0-or-later
@ -32,10 +32,6 @@ Source1: virt-install.rb
Source2: virt-install.desktop
Source3: virt-manager-supportconfig
# Upstream Patches
Patch1: b8aff280-virtinst-quickfix-ubuntu-net-preseed-insert-cdrom-error.patch
Patch2: 25b88733-urldetect-Dont-overload-suse_content-variable.patch
Patch3: 9308bae3-util-Fix-typo-vpcu-vcpu.patch
Patch4: c30b3bc6-increase-timeout-for-vm-to-start.patch
# SUSE Only
Patch70: virtman-desktop.patch
Patch71: virtman-kvm.patch
@ -44,6 +40,7 @@ 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
# Features or Enhancements
Patch101: virtman-default-guest-from-host-os.patch
Patch102: virtman-default-to-xen-pv.patch
@ -72,7 +69,6 @@ Patch164: virtinst-use-qemu-for-cdrom-device.patch
Patch165: virtinst-keep-install-iso-attached.patch
Patch166: virtinst-osdict-get_supported.patch
Patch167: virtinst-dont-use-special-copy-cpu-features.patch
Patch168: virtinst-use-latest-opensuse-version-when-unknown-media.patch
# Python2 to Python3 patches
Patch200: virtconv-python2-to-python3-conversion.patch
Patch201: virtinst-python2-to-python3-conversion.patch
@ -163,10 +159,6 @@ machine).
%prep
%setup -q
# Upstream Patches
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
# SUSE Only
%patch70 -p1
%patch71 -p1
@ -175,6 +167,7 @@ machine).
%patch74 -p1
%patch75 -p1
%patch76 -p1
%patch77 -p1
# Enhancements
%patch101 -p1
%patch102 -p1
@ -203,7 +196,6 @@ machine).
%patch165 -p1
%patch166 -p1
%patch167 -p1
%patch168 -p1
# Python2 to Python3 patches
%patch200 -p1
%patch201 -p1
@ -296,9 +288,13 @@ fi
%{_mandir}/man1/virt-xml.1*
%{_datadir}/%{name}/virt-install
%{_datadir}/bash-completion/completions/virt-install
%{_datadir}/%{name}/virt-clone
%{_datadir}/bash-completion/completions/virt-clone
%{_datadir}/%{name}/virt-convert
%{_datadir}/bash-completion/completions/virt-convert
%{_datadir}/%{name}/virt-xml
%{_datadir}/bash-completion/completions/virt-xml
%dir %{_datadir}/YaST2
%dir %{_datadir}/YaST2/clients
%dir %{_datadir}/applications/YaST2

View File

@ -1,10 +1,10 @@
References: bsc#1010060
Index: virt-manager-2.0.0/virtinst/urldetect.py
Index: virt-manager-2.1.0/virtinst/urldetect.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/urldetect.py
+++ virt-manager-2.0.0/virtinst/urldetect.py
@@ -238,6 +238,12 @@ class _SUSEContent(object):
--- virt-manager-2.1.0.orig/virtinst/urldetect.py
+++ virt-manager-2.1.0/virtinst/urldetect.py
@@ -258,6 +258,12 @@ class _SUSEContent(object):
self.product_name.strip().rsplit(' ')[5][2])
distro_version = sle_version
@ -17,7 +17,7 @@ Index: virt-manager-2.0.0/virtinst/urldetect.py
return distro_version
@@ -570,6 +576,9 @@ class SuseDistro(Distro):
@@ -544,6 +550,9 @@ class _SuseDistro(_RHELDistro):
# Tumbleweed 8 digit date
return "opensusetumbleweed"
@ -27,17 +27,18 @@ Index: virt-manager-2.0.0/virtinst/urldetect.py
if int(version) < 10:
return self._variant_prefix + "9"
@@ -645,6 +654,13 @@ class OpensuseDistro(SuseDistro):
@@ -616,6 +625,14 @@ class _OpensuseDistro(_SuseDistro):
famregex = ".*openSUSE.*"
+class CAASPDistro(SuseDistro):
+class _CAASPDistro(_SuseDistro):
+ PRETTY_NAME = "SLES"
+ matching_distros = ["caasp"]
+ _variant_prefix = "caasp"
+ _suse_regex = [".*SUSE Container as a Service Platform*", ".*SUSE CaaS Platform*"]
+ famregex = ".*SUSE Container as a Service Platform.*"
+
+
class OESDistro(SuseDistro):
class _OESDistro(_SuseDistro):
PRETTY_NAME = "OES"
_variant_prefix = "oes"
matching_distros = ["oes"]

View File

@ -1,10 +1,10 @@
References: fate#326698 - Add pvh support to virt-manager
Index: virt-manager-2.0.0/virtinst/domain/os.py
Index: virt-manager-2.1.0/virtinst/domain/os.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/domain/os.py
+++ virt-manager-2.0.0/virtinst/domain/os.py
@@ -33,6 +33,8 @@ class DomainOs(XMLBuilder):
--- virt-manager-2.1.0.orig/virtinst/domain/os.py
+++ virt-manager-2.1.0/virtinst/domain/os.py
@@ -32,6 +32,8 @@ class DomainOs(XMLBuilder):
return self.os_type == "hvm"
def is_xenpv(self):
return self.os_type in ["xen", "linux"]
@ -13,11 +13,11 @@ Index: virt-manager-2.0.0/virtinst/domain/os.py
def is_container(self):
return self.os_type == "exe"
Index: virt-manager-2.0.0/virtinst/guest.py
Index: virt-manager-2.1.0/virtinst/guest.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/guest.py
+++ virt-manager-2.0.0/virtinst/guest.py
@@ -565,7 +565,7 @@ class Guest(XMLBuilder):
--- virt-manager-2.1.0.orig/virtinst/guest.py
+++ virt-manager-2.1.0/virtinst/guest.py
@@ -574,7 +574,7 @@ class Guest(XMLBuilder):
usb_tablet = False
usb_keyboard = False
@ -26,11 +26,11 @@ Index: virt-manager-2.0.0/virtinst/guest.py
usb_tablet = self.osinfo.supports_usbtablet()
if self.os.is_arm_machvirt():
usb_tablet = True
Index: virt-manager-2.0.0/virtManager/domain.py
Index: virt-manager-2.1.0/virtManager/domain.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/domain.py
+++ virt-manager-2.0.0/virtManager/domain.py
@@ -1207,6 +1207,8 @@ class vmmDomain(vmmLibvirtObject):
--- virt-manager-2.1.0.orig/virtManager/domain.py
+++ virt-manager-2.1.0/virtManager/domain.py
@@ -1224,6 +1224,8 @@ class vmmDomain(vmmLibvirtObject):
return self.get_xmlobj().os.is_xenpv()
def is_hvm(self):
return self.get_xmlobj().os.is_hvm()
@ -39,10 +39,10 @@ Index: virt-manager-2.0.0/virtManager/domain.py
def get_uuid(self):
if self._uuid is None:
Index: virt-manager-2.0.0/virtManager/connection.py
Index: virt-manager-2.1.0/virtManager/connection.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/connection.py
+++ virt-manager-2.0.0/virtManager/connection.py
--- virt-manager-2.1.0.orig/virtManager/connection.py
+++ virt-manager-2.1.0/virtManager/connection.py
@@ -229,6 +229,8 @@ class vmmConnection(vmmGObject):
label = "xen (paravirt)"
elif gtype == "hvm":

View File

@ -1,10 +1,10 @@
References: bsc#1054986
Index: virt-manager-2.0.0/virtinst/urldetect.py
Index: virt-manager-2.1.0/virtinst/urldetect.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/urldetect.py
+++ virt-manager-2.0.0/virtinst/urldetect.py
@@ -606,6 +606,10 @@ class SuseDistro(Distro):
--- virt-manager-2.1.0.orig/virtinst/urldetect.py
+++ virt-manager-2.1.0/virtinst/urldetect.py
@@ -580,6 +580,10 @@ class _SuseDistro(_RHELDistro):
if re.search("openSUSE Tumbleweed", self.cache.treeinfo_name):
return "opensusetumbleweed"
@ -15,7 +15,7 @@ Index: virt-manager-2.0.0/virtinst/urldetect.py
version, update = self.cache.split_version()
base = self._variant_prefix + str(version)
while update >= 0:
@@ -613,7 +617,10 @@ class SuseDistro(Distro):
@@ -587,7 +591,10 @@ class _SuseDistro(_RHELDistro):
# SLE doesn't use '.0' for initial releases in
# osinfo-db (sles11, sles12, etc)
if update > 0 or not base.startswith('sle'):
@ -27,17 +27,18 @@ Index: virt-manager-2.0.0/virtinst/urldetect.py
if OSDB.lookup_os(tryvar):
return tryvar
update -= 1
@@ -630,6 +637,13 @@ class SuseDistro(Distro):
return "install"
@@ -601,6 +608,14 @@ class _SuseDistro(_RHELDistro):
return var
+class SLEDistro(SuseDistro):
+class _SLEDistro(_SuseDistro):
+ PRETTY_NAME = "SLE"
+ matching_distros = ["sle"]
+ _variant_prefix = "sle"
+ _suse_regex = ["SUSE Linux Enterprise$"]
+ famregex = "SUSE Linux Enterprise$"
+
+
class SLESDistro(SuseDistro):
class _SLESDistro(_SuseDistro):
PRETTY_NAME = "SLES"
matching_distros = ["sles"]

View File

@ -1,10 +1,10 @@
References: fate#326960, bsc#1123942
Index: virt-manager-2.0.0/virtinst/installer.py
Index: virt-manager-2.1.0/virtinst/installer.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/installer.py
+++ virt-manager-2.0.0/virtinst/installer.py
@@ -316,7 +316,10 @@ class Installer(object):
--- virt-manager-2.1.0.orig/virtinst/installer.py
+++ virt-manager-2.1.0/virtinst/installer.py
@@ -312,7 +312,10 @@ class Installer(object):
guest.os.bootloader = "pygrub"
else:
guest.os.bootloader = None
@ -16,10 +16,10 @@ Index: virt-manager-2.0.0/virtinst/installer.py
self._install_initrd = None
self.extraargs = None
logging.info("Using grub.xen to boot guest")
Index: virt-manager-2.0.0/virtManager/delete.py
Index: virt-manager-2.1.0/virtManager/delete.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/delete.py
+++ virt-manager-2.0.0/virtManager/delete.py
--- virt-manager-2.1.0.orig/virtManager/delete.py
+++ virt-manager-2.1.0/virtManager/delete.py
@@ -246,7 +246,7 @@ def populate_storage_list(storage_list,
diskdata.append(("dtb", vm.get_xmlobj().os.dtb, True, False, True))

View File

@ -1,10 +1,10 @@
Reference: bnc#885380
Allow Xen based VMs to default to using qcow2
Index: virt-manager-2.0.0/virtinst/support.py
Index: virt-manager-2.1.0/virtinst/support.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/support.py
+++ virt-manager-2.0.0/virtinst/support.py
@@ -233,7 +233,7 @@ SUPPORT_CONN_WORKING_XEN_EVENTS = _make(
--- virt-manager-2.1.0.orig/virtinst/support.py
+++ virt-manager-2.1.0/virtinst/support.py
@@ -232,7 +232,7 @@ SUPPORT_CONN_WORKING_XEN_EVENTS = _make(
# This is an arbitrary check to say whether it's a good idea to
# default to qcow2. It might be fine for xen or qemu older than the versions
# here, but until someone tests things I'm going to be a bit conservative.

View File

@ -1,10 +1,10 @@
Enhancement to correctly detect Open Enterprise Server media is
selected as the installation source.
Index: virt-manager-2.0.0/virtinst/urldetect.py
Index: virt-manager-2.1.0/virtinst/urldetect.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/urldetect.py
+++ virt-manager-2.0.0/virtinst/urldetect.py
@@ -573,7 +573,7 @@ class SuseDistro(Distro):
--- virt-manager-2.1.0.orig/virtinst/urldetect.py
+++ virt-manager-2.1.0/virtinst/urldetect.py
@@ -547,7 +547,7 @@ class _SuseDistro(_RHELDistro):
if int(version) < 10:
return self._variant_prefix + "9"
@ -13,17 +13,18 @@ Index: virt-manager-2.0.0/virtinst/urldetect.py
sp_version = ""
if len(distro_version.split('.', 1)) == 2:
sp_version = 'sp' + distro_version.split('.', 1)[1].strip()
@@ -645,6 +645,13 @@ class OpensuseDistro(SuseDistro):
@@ -616,6 +616,14 @@ class _OpensuseDistro(_SuseDistro):
famregex = ".*openSUSE.*"
+class OESDistro(SuseDistro):
+class _OESDistro(_SuseDistro):
+ PRETTY_NAME = "OES"
+ matching_distros = ["oes"]
+ _variant_prefix = "oes"
+ _suse_regex = [".*Open Enterprise Server*"]
+ famregex = ".*Open Enterprise Server.*"
+
+
class DebianDistro(Distro):
class _DebianDistro(_DistroTree):
# ex. http://ftp.egr.msu.edu/debian/dists/sarge/main/installer-i386/
# daily builds: https://d-i.debian.org/daily-images/amd64/

View File

@ -12,11 +12,11 @@ It should be noted that selecting "Customize configuration before install"
and "CPUs" -> "Copy host CPU definition" also inserts 'host-model' so
this change mirrors what is already done there.
Index: virt-manager-2.0.0/virtinst/domain/cpu.py
Index: virt-manager-2.1.0/virtinst/domain/cpu.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/domain/cpu.py
+++ virt-manager-2.0.0/virtinst/domain/cpu.py
@@ -88,12 +88,16 @@ class DomainCpu(XMLBuilder):
--- virt-manager-2.1.0.orig/virtinst/domain/cpu.py
+++ virt-manager-2.1.0/virtinst/domain/cpu.py
@@ -87,12 +87,16 @@ class DomainCpu(XMLBuilder):
val = self.SPECIAL_MODE_HOST_MODEL
if (val == self.SPECIAL_MODE_HOST_MODEL or

View File

@ -2,11 +2,11 @@ Older SLE guests have a two stage installation that need the ISO.
Newer SLE PV guests hang when a cdrom device is attached without
an ISO file.
Index: virt-manager-2.0.0/virtinst/installer.py
Index: virt-manager-2.1.0/virtinst/installer.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/installer.py
+++ virt-manager-2.0.0/virtinst/installer.py
@@ -103,7 +103,8 @@ class Installer(object):
--- virt-manager-2.1.0.orig/virtinst/installer.py
+++ virt-manager-2.1.0/virtinst/installer.py
@@ -105,7 +105,8 @@ class Installer(object):
return
if self.livecd:
return

View File

@ -3,11 +3,11 @@ to be supported through LTSS contracts for others. Hence the EOL
date in the osinfo-db file may be past but we want the distro to
continue to show up in the list.
Index: virt-manager-2.0.0/virtinst/osdict.py
Index: virt-manager-2.1.0/virtinst/osdict.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/osdict.py
+++ virt-manager-2.0.0/virtinst/osdict.py
@@ -337,7 +337,7 @@ class _OsVariant(object):
--- virt-manager-2.1.0.orig/virtinst/osdict.py
+++ virt-manager-2.1.0/virtinst/osdict.py
@@ -321,7 +321,7 @@ class _OsVariant(object):
# If no EOL is present, assume EOL if release was > 5 years ago
if rel is not None:

View File

@ -2,11 +2,11 @@ Reference: bnc#863821
grub.xen is required to boot PV VMs that use the BTRFS filesystem.
This patch forces the use of grub.xen (instead of using pygrub) for
suse distros SLE12GA, openSUSE 13.2, and newer.
Index: virt-manager-2.0.0/virtinst/installer.py
Index: virt-manager-2.1.0/virtinst/installer.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/installer.py
+++ virt-manager-2.0.0/virtinst/installer.py
@@ -307,6 +307,20 @@ class Installer(object):
--- virt-manager-2.1.0.orig/virtinst/installer.py
+++ virt-manager-2.1.0/virtinst/installer.py
@@ -303,6 +303,20 @@ class Installer(object):
install_xml = None
if self.has_install_phase():
install_xml = self._get_install_xml(guest)

View File

@ -1,8 +1,8 @@
Index: virt-manager-2.0.0/virtinst/osdict.py
Index: virt-manager-2.1.0/virtinst/osdict.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/osdict.py
+++ virt-manager-2.0.0/virtinst/osdict.py
@@ -51,7 +51,7 @@ def _sort(tosort):
--- virt-manager-2.1.0.orig/virtinst/osdict.py
+++ virt-manager-2.1.0/virtinst/osdict.py
@@ -50,7 +50,7 @@ def _sort(tosort):
distro_mappings = {}
retlist = []
@ -11,11 +11,11 @@ Index: virt-manager-2.0.0/virtinst/osdict.py
# Libosinfo has some duplicate version numbers here, so append .1
# if there's a collision
sortby = _sortby(osinfo)
Index: virt-manager-2.0.0/virtinst/installertreemedia.py
Index: virt-manager-2.1.0/virtinst/installertreemedia.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/installertreemedia.py
+++ virt-manager-2.0.0/virtinst/installertreemedia.py
@@ -22,7 +22,7 @@ from .osdict import OSDB
--- virt-manager-2.1.0.orig/virtinst/installertreemedia.py
+++ virt-manager-2.1.0/virtinst/installertreemedia.py
@@ -19,7 +19,7 @@ from .osdict import OSDB
# Enum of the various install media types we can have
(MEDIA_DIR,
MEDIA_ISO,
@ -24,11 +24,11 @@ Index: virt-manager-2.0.0/virtinst/installertreemedia.py
def _is_url(url):
Index: virt-manager-2.0.0/virtinst/xmlbuilder.py
Index: virt-manager-2.1.0/virtinst/xmlbuilder.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/xmlbuilder.py
+++ virt-manager-2.0.0/virtinst/xmlbuilder.py
@@ -625,7 +625,7 @@ class XMLBuilder(object):
--- virt-manager-2.1.0.orig/virtinst/xmlbuilder.py
+++ virt-manager-2.1.0/virtinst/xmlbuilder.py
@@ -624,7 +624,7 @@ class XMLBuilder(object):
whenever child objects are added or removed
"""
typecount = {}
@ -37,10 +37,10 @@ Index: virt-manager-2.0.0/virtinst/xmlbuilder.py
for obj in util.listify(getattr(self, propname)):
idxstr = ""
if not xmlprop.is_single:
Index: virt-manager-2.0.0/virtinst/domcapabilities.py
Index: virt-manager-2.1.0/virtinst/domcapabilities.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/domcapabilities.py
+++ virt-manager-2.0.0/virtinst/domcapabilities.py
--- virt-manager-2.1.0.orig/virtinst/domcapabilities.py
+++ virt-manager-2.1.0/virtinst/domcapabilities.py
@@ -202,7 +202,7 @@ class DomainCapabilities(XMLBuilder):
return _("BIOS")
return _("None")
@ -50,11 +50,11 @@ Index: virt-manager-2.0.0/virtinst/domcapabilities.py
for pattern in patterns:
if re.match(pattern, path):
return (_("UEFI %(arch)s: %(path)s") %
Index: virt-manager-2.0.0/virtinst/devices/disk.py
Index: virt-manager-2.1.0/virtinst/devices/disk.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/devices/disk.py
+++ virt-manager-2.0.0/virtinst/devices/disk.py
@@ -327,7 +327,7 @@ class DeviceDisk(Device):
--- virt-manager-2.1.0.orig/virtinst/devices/disk.py
+++ virt-manager-2.1.0/virtinst/devices/disk.py
@@ -326,7 +326,7 @@ class DeviceDisk(Device):
digit = 1
seen_valid = True
@ -63,7 +63,7 @@ Index: virt-manager-2.0.0/virtinst/devices/disk.py
return gen_t
@@ -918,11 +918,11 @@ class DeviceDisk(Device):
@@ -919,11 +919,11 @@ class DeviceDisk(Device):
def get_target():
first_found = None
@ -77,10 +77,10 @@ Index: virt-manager-2.0.0/virtinst/devices/disk.py
for i in ran:
postfix = self.num_to_target(i + 1)
Index: virt-manager-2.0.0/virtinst/pollhelpers.py
Index: virt-manager-2.1.0/virtinst/pollhelpers.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/pollhelpers.py
+++ virt-manager-2.0.0/virtinst/pollhelpers.py
--- virt-manager-2.1.0.orig/virtinst/pollhelpers.py
+++ virt-manager-2.1.0/virtinst/pollhelpers.py
@@ -131,7 +131,7 @@ def fetch_pools(backend, origmap, build_
for obj in objs:
try:

View File

@ -1,9 +1,9 @@
Reference: bnc#869024
Disable graphics on s390x
Index: virt-manager-2.0.0/virtinst/guest.py
Index: virt-manager-2.1.0/virtinst/guest.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/guest.py
+++ virt-manager-2.0.0/virtinst/guest.py
--- virt-manager-2.1.0.orig/virtinst/guest.py
+++ virt-manager-2.1.0/virtinst/guest.py
@@ -159,7 +159,10 @@ class Guest(XMLBuilder):
self.skip_default_channel = False
self.skip_default_sound = False
@ -25,7 +25,7 @@ Index: virt-manager-2.0.0/virtinst/guest.py
return True
return False
@@ -592,7 +595,7 @@ class Guest(XMLBuilder):
@@ -601,7 +604,7 @@ class Guest(XMLBuilder):
self.add_device(dev)
def _add_default_video_device(self):
@ -34,7 +34,7 @@ Index: virt-manager-2.0.0/virtinst/guest.py
return
if self.devices.video:
return
@@ -656,7 +659,7 @@ class Guest(XMLBuilder):
@@ -665,7 +668,7 @@ class Guest(XMLBuilder):
return
if self.os.is_container() and not self.conn.is_vz():
return

View File

@ -1,10 +1,10 @@
Set cache mode for target installation disk to unsafe for better
performance.
Index: virt-manager-2.0.0/virtinst/installer.py
Index: virt-manager-2.1.0/virtinst/installer.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/installer.py
+++ virt-manager-2.0.0/virtinst/installer.py
@@ -294,10 +294,21 @@ class Installer(object):
--- virt-manager-2.1.0.orig/virtinst/installer.py
+++ virt-manager-2.1.0/virtinst/installer.py
@@ -290,10 +290,21 @@ class Installer(object):
guest.os.kernel_args, guest.on_reboot) = data
def _get_install_xml(self, guest):

View File

@ -1,41 +0,0 @@
References: bsc#1085757
When a version openSUSE is under development, the lookup fails to
detect the version of openSUSE ISO media (it changes with every build).
When 'opensuse-unknown' is detected, look up the most current version
of openSUSE and default to that. This is the same way fedora does it.
Index: virt-manager-2.0.0/virtinst/osdict.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/osdict.py
+++ virt-manager-2.0.0/virtinst/osdict.py
@@ -214,6 +214,12 @@ class _OSDB(object):
"Converting that to the latest fedora OS version=%s",
location, osname)
+ if osname == "opensuse-unknown":
+ osname = self.latest_opensuse_version()
+ logging.debug("Detected location=%s as os=opensuse-unknown. "
+ "Converting that to the latest opensuse OS version=%s",
+ location, osname)
+
return osname
def list_os(self):
@@ -239,6 +245,16 @@ class _OSDB(object):
def latest_fedora_version(self):
return self.latest_regex("fedora[0-9]+")
+ def latest_opensuse_version(self):
+ os_info = None
+ for osinfo in self.list_os():
+ if (osinfo.name.startswith("opensuse") and
+ "unknown" not in osinfo.name and
+ "tumbleweed" not in osinfo.name and
+ "factory" not in osinfo.name and
+ "42" not in osinfo.name):
+ # openSUSE Leap 42 is not the latest anymore
+ return osinfo.name
#####################
# OsVariant classes #

View File

@ -2,11 +2,11 @@ References: bsc#989639
When the device added is a cdrom device (/dev/sr0), don't use
"phy" as the driver name but instead use "qemu".
Index: virt-manager-2.0.0/virtinst/devices/disk.py
Index: virt-manager-2.1.0/virtinst/devices/disk.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/devices/disk.py
+++ virt-manager-2.0.0/virtinst/devices/disk.py
@@ -435,7 +435,8 @@ class DeviceDisk(Device):
--- virt-manager-2.1.0.orig/virtinst/devices/disk.py
+++ virt-manager-2.1.0/virtinst/devices/disk.py
@@ -436,7 +436,8 @@ class DeviceDisk(Device):
# Recommended xen defaults from here:
# https://bugzilla.redhat.com/show_bug.cgi?id=1171550#c9
# If type block, use name=phy. Otherwise do the same as qemu

View File

@ -4,12 +4,12 @@ a non pae version. The sles10 sp4 32bit kernel will only boot para-
virtualized if the pae kernel is selected.
Note that sles12 and newer has no 32bit release.
Index: virt-manager-2.0.0/virtinst/urldetect.py
Index: virt-manager-2.1.0/virtinst/urldetect.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/urldetect.py
+++ virt-manager-2.0.0/virtinst/urldetect.py
@@ -541,9 +541,14 @@ class SuseDistro(Distro):
self._kernel_paths = []
--- virt-manager-2.1.0.orig/virtinst/urldetect.py
+++ virt-manager-2.1.0/virtinst/urldetect.py
@@ -515,9 +515,14 @@ class _SuseDistro(_RHELDistro):
if self.type == "xen":
# Matches Opensuse > 10.2 and sles 10
- self._kernel_paths.append(
@ -25,4 +25,4 @@ Index: virt-manager-2.0.0/virtinst/urldetect.py
+ "boot/%s/initrd-xen" % tree_arch))
if (tree_arch == "s390x" and
(self._os_variant == "sles11" or self._os_variant == "sled11")):
str(self._os_variant).startswith(("sles11", "sled11"))):

View File

@ -4,11 +4,11 @@ issue on btrfs.
Signed-off-by: Chunyan Liu <cyliu@suse.com>
Index: virt-manager-2.0.0/virtinst/storage.py
Index: virt-manager-2.1.0/virtinst/storage.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/storage.py
+++ virt-manager-2.0.0/virtinst/storage.py
@@ -618,6 +618,11 @@ class StorageVolume(_StorageObject):
--- virt-manager-2.1.0.orig/virtinst/storage.py
+++ virt-manager-2.1.0/virtinst/storage.py
@@ -617,6 +617,11 @@ class StorageVolume(_StorageObject):
return self._pool_xml.get_disk_type()
file_type = property(_get_vol_type)
@ -20,11 +20,11 @@ Index: virt-manager-2.0.0/virtinst/storage.py
##################
# XML properties #
Index: virt-manager-2.0.0/virtinst/support.py
Index: virt-manager-2.1.0/virtinst/support.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/support.py
+++ virt-manager-2.0.0/virtinst/support.py
@@ -267,6 +267,8 @@ SUPPORT_CONN_USB3_PORTS = _make(version=
--- virt-manager-2.1.0.orig/virtinst/support.py
+++ virt-manager-2.1.0/virtinst/support.py
@@ -266,6 +266,8 @@ SUPPORT_CONN_USB3_PORTS = _make(version=
SUPPORT_CONN_MACHVIRT_PCI_DEFAULT = _make(version="3.0.0")
SUPPORT_CONN_QEMU_XHCI = _make(version="3.3.0", hv_version={"qemu": "2.9.0"})
SUPPORT_CONN_VNC_NONE_AUTH = _make(hv_version={"qemu": "2.9.0"})

View File

@ -2,11 +2,11 @@ Reference: bnc#813082
Virt-manager on Xen doesn't fill in any type thereby defaulting to
'raw'. This patch will generate the correct XML on Xen.
Index: virt-manager-2.0.0/virtinst/devices/disk.py
Index: virt-manager-2.1.0/virtinst/devices/disk.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/devices/disk.py
+++ virt-manager-2.0.0/virtinst/devices/disk.py
@@ -453,6 +453,10 @@ class DeviceDisk(Device):
--- virt-manager-2.1.0.orig/virtinst/devices/disk.py
+++ virt-manager-2.1.0/virtinst/devices/disk.py
@@ -454,6 +454,10 @@ class DeviceDisk(Device):
https://lists.gnu.org/archive/html/qemu-devel/2008-04/msg00675.html
"""
if self.driver_name != self.DRIVER_NAME_QEMU:

View File

@ -6,11 +6,11 @@ types (ide vs xen) it added xvda with hda. These disks were then
passed to qemu where it error'ed out with the disks having the same
index (in this case both are 0).
Index: virt-manager-2.0.0/virtinst/devices/disk.py
Index: virt-manager-2.1.0/virtinst/devices/disk.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/devices/disk.py
+++ virt-manager-2.0.0/virtinst/devices/disk.py
@@ -900,6 +900,17 @@ class DeviceDisk(Device):
--- virt-manager-2.1.0.orig/virtinst/devices/disk.py
+++ virt-manager-2.1.0/virtinst/devices/disk.py
@@ -901,6 +901,17 @@ class DeviceDisk(Device):
:returns: generated target
"""
prefix, maxnode = self.get_target_prefix(skip_targets)
@ -28,7 +28,7 @@ Index: virt-manager-2.0.0/virtinst/devices/disk.py
skip_targets = [t for t in skip_targets if t and t.startswith(prefix)]
skip_targets.sort()
@@ -913,7 +924,12 @@ class DeviceDisk(Device):
@@ -914,7 +925,12 @@ class DeviceDisk(Device):
ran = range(pref_ctrl * 7, (pref_ctrl + 1) * 7)
for i in ran:

View File

@ -1,9 +1,9 @@
Enhancement to default to the host os version when creating a VM
and media detection of the install source is turned off.
Index: virt-manager-2.0.0/virtManager/create.py
Index: virt-manager-2.1.0/virtManager/create.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/create.py
+++ virt-manager-2.0.0/virtManager/create.py
--- virt-manager-2.1.0.orig/virtManager/create.py
+++ virt-manager-2.1.0/virtManager/create.py
@@ -10,6 +10,9 @@ import pkgutil
import os
import threading
@ -14,7 +14,7 @@ Index: virt-manager-2.0.0/virtManager/create.py
from gi.repository import Gdk
from gi.repository import Gtk
@@ -1183,6 +1186,63 @@ class vmmCreate(vmmGObjectUI):
@@ -1184,6 +1187,63 @@ class vmmCreate(vmmGObjectUI):
def _iso_activated_cb(self, mediacombo, entry):
self._detectable_media_widget_changed(entry, checkfocus=False)
@ -78,7 +78,7 @@ Index: virt-manager-2.0.0/virtManager/create.py
def _detect_os_toggled_cb(self, src):
if not src.is_visible():
return
@@ -1193,6 +1253,8 @@ class vmmCreate(vmmGObjectUI):
@@ -1194,6 +1254,8 @@ class vmmCreate(vmmGObjectUI):
if dodetect:
self._os_already_detected_for_media = False
self._start_detect_os_if_needed()

View File

@ -0,0 +1,40 @@
--- virt-manager-2.1.0/virt-clone.orig 2019-02-04 10:40:20.390102363 -0700
+++ virt-manager-2.1.0/virt-clone 2019-02-04 10:40:41.122360052 -0700
@@ -1,4 +1,4 @@
-#!/usr/bin/env python3
+#!/usr/bin/python3
#
# Copyright(c) FUJITSU Limited 2007.
#
--- virt-manager-2.1.0/virt-convert.orig 2019-02-04 10:41:50.275219728 -0700
+++ virt-manager-2.1.0/virt-convert 2019-02-04 10:41:55.563285476 -0700
@@ -1,4 +1,4 @@
-#!/usr/bin/env python3
+#!/usr/bin/python3
#
# Copyright 2008, 2013, 2014 Red Hat, Inc.
#
--- virt-manager-2.1.0/virt-install.orig 2019-02-04 10:41:17.258809255 -0700
+++ virt-manager-2.1.0/virt-install 2019-02-04 10:41:22.370872807 -0700
@@ -1,4 +1,4 @@
-#!/usr/bin/env python3
+#!/usr/bin/python3
#
# Copyright 2005-2014 Red Hat, Inc.
#
--- virt-manager-2.1.0/virt-manager.orig 2019-02-04 10:41:02.902630789 -0700
+++ virt-manager-2.1.0/virt-manager 2019-02-04 10:41:11.870742273 -0700
@@ -1,4 +1,4 @@
-#!/usr/bin/env python3
+#!/usr/bin/python3
#
# Copyright (C) 2006, 2014 Red Hat, Inc.
# Copyright (C) 2006 Daniel P. Berrange <berrange@redhat.com>
--- virt-manager-2.1.0/virt-xml.orig 2019-02-04 10:41:32.923003992 -0700
+++ virt-manager-2.1.0/virt-xml 2019-02-04 10:41:38.803077096 -0700
@@ -1,4 +1,4 @@
-#!/usr/bin/env python3
+#!/usr/bin/python3
#
# Copyright 2013-2014 Red Hat, Inc.
#

View File

@ -1,22 +1,22 @@
Enhancement adding Send Keys for mostly NetWare and also Windows
Index: virt-manager-2.0.0/virtManager/console.py
Index: virt-manager-2.1.0/virtManager/console.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/console.py
+++ virt-manager-2.0.0/virtManager/console.py
@@ -204,6 +204,16 @@ class vmmConsolePages(vmmGObjectUI):
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())
--- virt-manager-2.1.0.orig/virtManager/console.py
+++ virt-manager-2.1.0/virtManager/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])
for i in range(1, 13):
make_item("Ctrl+Alt+F_%d" % i, ["Control_L", "Alt_L", "F%d" % i])

View File

@ -3,11 +3,11 @@ When the 'Power on virtual machine' button is double clicked,
virt-manager issues two start commands to start the VM which
results in a failure. There is code elsewhere to desensitize the
button but this patch does it earlier.
Index: virt-manager-2.0.0/virtManager/details.py
Index: virt-manager-2.1.0/virtManager/details.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/details.py
+++ virt-manager-2.0.0/virtManager/details.py
@@ -1489,6 +1489,9 @@ class vmmDetails(vmmGObjectUI):
--- virt-manager-2.1.0.orig/virtManager/details.py
+++ virt-manager-2.1.0/virtManager/details.py
@@ -1505,6 +1505,9 @@ class vmmDetails(vmmGObjectUI):
def control_vm_run(self, src_ignore):
if self.has_unapplied_changes(self.get_hw_row()):
return

View File

@ -1,7 +1,7 @@
Index: virt-manager-2.0.0/virt-manager
Index: virt-manager-2.1.0/virt-manager
===================================================================
--- virt-manager-2.0.0.orig/virt-manager
+++ virt-manager-2.0.0/virt-manager
--- virt-manager-2.1.0.orig/virt-manager
+++ virt-manager-2.1.0/virt-manager
@@ -66,7 +66,7 @@ def _import_gtk(leftovers):
print("gtk3 3.14.0 or later is required.")
sys.exit(1)
@ -11,10 +11,10 @@ Index: virt-manager-2.0.0/virt-manager
# This will error if Gtk wasn't correctly initialized
Gtk.Window()
else:
Index: virt-manager-2.0.0/virtManager/network.py
Index: virt-manager-2.1.0/virtManager/network.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/network.py
+++ virt-manager-2.0.0/virtManager/network.py
--- virt-manager-2.1.0.orig/virtManager/network.py
+++ virt-manager-2.1.0/virtManager/network.py
@@ -110,7 +110,7 @@ class vmmNetwork(vmmLibvirtObject):
def set_qos(self, **kwargs):
xmlobj = self._make_xmlobj_to_define()
@ -24,10 +24,10 @@ Index: virt-manager-2.0.0/virtManager/network.py
setattr(q, key, val)
self._redefine_xmlobj(xmlobj)
Index: virt-manager-2.0.0/virtManager/console.py
Index: virt-manager-2.1.0/virtManager/console.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/console.py
+++ virt-manager-2.0.0/virtManager/console.py
--- virt-manager-2.1.0.orig/virtManager/console.py
+++ virt-manager-2.1.0/virtManager/console.py
@@ -21,7 +21,7 @@ from .viewers import SpiceViewer, VNCVie
(_CONSOLE_PAGE_UNAVAILABLE,
_CONSOLE_PAGE_AUTHENTICATE,
@ -37,10 +37,10 @@ Index: virt-manager-2.0.0/virtManager/console.py
class _TimedRevealer(vmmGObject):
Index: virt-manager-2.0.0/virtManager/connection.py
Index: virt-manager-2.1.0/virtManager/connection.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/connection.py
+++ virt-manager-2.0.0/virtManager/connection.py
--- virt-manager-2.1.0.orig/virtManager/connection.py
+++ virt-manager-2.1.0/virtManager/connection.py
@@ -165,7 +165,7 @@ class vmmConnection(vmmGObject):
(_STATE_DISCONNECTED,
@ -50,20 +50,20 @@ Index: virt-manager-2.0.0/virtManager/connection.py
def __init__(self, uri):
self._uri = uri
Index: virt-manager-2.0.0/virtManager/addhardware.py
Index: virt-manager-2.1.0/virtManager/addhardware.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/addhardware.py
+++ virt-manager-2.0.0/virtManager/addhardware.py
@@ -41,7 +41,7 @@ from .addstorage import vmmAddStorage
PAGE_USBREDIR,
--- virt-manager-2.1.0.orig/virtManager/addhardware.py
+++ virt-manager-2.1.0/virtManager/addhardware.py
@@ -43,7 +43,7 @@ from .vsockdetails import vmmVsockDetail
PAGE_TPM,
PAGE_RNG,
- PAGE_PANIC) = range(0, 17)
+ PAGE_PANIC) = list(range(0, 17))
PAGE_PANIC,
- PAGE_VSOCK) = range(18)
+ PAGE_VSOCK) = list(range(18))
def _build_combo(combo, values, default_value=None, sort=True):
@@ -877,7 +877,7 @@ class vmmAddHardware(vmmGObjectUI):
@@ -890,7 +890,7 @@ class vmmAddHardware(vmmGObjectUI):
self._dev = DeviceTpm(self.conn.get_backend())
self._dev.type = devtype
@ -72,10 +72,10 @@ Index: virt-manager-2.0.0/virtManager/addhardware.py
make_visible = self._dev.supports_property(param_name)
uiutil.set_grid_row_visible(self.widget(widget_name + "-label"),
make_visible)
Index: virt-manager-2.0.0/virtManager/snapshots.py
Index: virt-manager-2.1.0/virtManager/snapshots.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/snapshots.py
+++ virt-manager-2.0.0/virtManager/snapshots.py
--- virt-manager-2.1.0.orig/virtManager/snapshots.py
+++ virt-manager-2.1.0/virtManager/snapshots.py
@@ -30,7 +30,7 @@ mimemap = {
@ -85,10 +85,10 @@ Index: virt-manager-2.0.0/virtManager/snapshots.py
if val == m and not reverse:
return e
if val == e and reverse:
Index: virt-manager-2.0.0/virtManager/engine.py
Index: virt-manager-2.1.0/virtManager/engine.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/engine.py
+++ virt-manager-2.0.0/virtManager/engine.py
--- virt-manager-2.1.0.orig/virtManager/engine.py
+++ virt-manager-2.1.0/virtManager/engine.py
@@ -21,7 +21,7 @@ from .inspection import vmmInspection
from .systray import vmmSystray
@ -98,10 +98,10 @@ Index: virt-manager-2.0.0/virtManager/engine.py
def _show_startup_error(fn):
Index: virt-manager-2.0.0/virtManager/mediacombo.py
Index: virt-manager-2.1.0/virtManager/mediacombo.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/mediacombo.py
+++ virt-manager-2.0.0/virtManager/mediacombo.py
--- virt-manager-2.1.0.orig/virtManager/mediacombo.py
+++ virt-manager-2.1.0/virtManager/mediacombo.py
@@ -22,7 +22,7 @@ class vmmMediaCombo(vmmGObjectUI):
(MEDIA_FIELD_PATH,
MEDIA_FIELD_LABEL,
@ -111,10 +111,10 @@ Index: virt-manager-2.0.0/virtManager/mediacombo.py
def __init__(self, conn, builder, topwin):
vmmGObjectUI.__init__(self, None, None, builder=builder, topwin=topwin)
Index: virt-manager-2.0.0/virtManager/manager.py
Index: virt-manager-2.1.0/virtManager/manager.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/manager.py
+++ virt-manager-2.0.0/virtManager/manager.py
--- virt-manager-2.1.0.orig/virtManager/manager.py
+++ virt-manager-2.1.0/virtManager/manager.py
@@ -36,7 +36,7 @@ ROW_IS_CONN_CONNECTED,
ROW_IS_VM,
ROW_IS_VM_RUNNING,
@ -133,10 +133,10 @@ Index: virt-manager-2.0.0/virtManager/manager.py
def _style_get_prop(widget, propname):
Index: virt-manager-2.0.0/virtManager/addstorage.py
Index: virt-manager-2.1.0/virtManager/addstorage.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/addstorage.py
+++ virt-manager-2.0.0/virtManager/addstorage.py
--- virt-manager-2.1.0.orig/virtManager/addstorage.py
+++ virt-manager-2.1.0/virtManager/addstorage.py
@@ -148,7 +148,7 @@ class vmmAddStorage(vmmGObjectUI):
errmsg = _("Errors were encountered changing permissions for the "
"following directories:")
@ -146,20 +146,20 @@ Index: virt-manager-2.0.0/virtManager/addstorage.py
if p not in broken_paths:
continue
details += "%s : %s\n" % (p, error)
Index: virt-manager-2.0.0/virtManager/details.py
Index: virt-manager-2.1.0/virtManager/details.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/details.py
+++ virt-manager-2.0.0/virtManager/details.py
@@ -101,7 +101,7 @@ from .storagebrowse import vmmStorageBro
--- virt-manager-2.1.0.orig/virtManager/details.py
+++ virt-manager-2.1.0/virtManager/details.py
@@ -105,7 +105,7 @@ from .vsockdetails import vmmVsockDetail
EDIT_FS,
- EDIT_HOSTDEV_ROMBAR) = range(1, 56)
+ EDIT_HOSTDEV_ROMBAR) = list(range(1, 56))
- EDIT_HOSTDEV_ROMBAR) = range(1, 58)
+ EDIT_HOSTDEV_ROMBAR) = list(range(1, 58))
# Columns in hw list model
@@ -109,7 +109,7 @@ from .storagebrowse import vmmStorageBro
@@ -113,7 +113,7 @@ from .vsockdetails import vmmVsockDetail
HW_LIST_COL_ICON_NAME,
HW_LIST_COL_ICON_SIZE,
HW_LIST_COL_TYPE,
@ -168,16 +168,16 @@ Index: virt-manager-2.0.0/virtManager/details.py
# Types for the hw list model: numbers specify what order they will be listed
(HW_LIST_TYPE_GENERAL,
@@ -133,7 +133,7 @@ from .storagebrowse import vmmStorageBro
HW_LIST_TYPE_REDIRDEV,
@@ -138,7 +138,7 @@ from .vsockdetails import vmmVsockDetail
HW_LIST_TYPE_TPM,
HW_LIST_TYPE_RNG,
- HW_LIST_TYPE_PANIC) = range(22)
+ HW_LIST_TYPE_PANIC) = list(range(22))
HW_LIST_TYPE_PANIC,
- HW_LIST_TYPE_VSOCK) = range(23)
+ HW_LIST_TYPE_VSOCK) = list(range(23))
remove_pages = [HW_LIST_TYPE_NIC, HW_LIST_TYPE_INPUT,
HW_LIST_TYPE_GRAPHICS, HW_LIST_TYPE_SOUND, HW_LIST_TYPE_CHAR,
@@ -148,12 +148,12 @@ remove_pages = [HW_LIST_TYPE_NIC, HW_LIS
@@ -153,12 +153,12 @@ remove_pages = [HW_LIST_TYPE_NIC, HW_LIS
BOOT_LABEL,
BOOT_ICON,
BOOT_ACTIVE,
@ -192,10 +192,10 @@ Index: virt-manager-2.0.0/virtManager/details.py
Index: virt-manager-2.0.0/virtManager/create.py
Index: virt-manager-2.1.0/virtManager/create.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/create.py
+++ virt-manager-2.0.0/virtManager/create.py
--- virt-manager-2.1.0.orig/virtManager/create.py
+++ virt-manager-2.1.0/virtManager/create.py
@@ -43,7 +43,7 @@ DEFAULT_MEM = 1024
PAGE_INSTALL,
PAGE_MEM,
@ -221,7 +221,7 @@ Index: virt-manager-2.0.0/virtManager/create.py
#####################
@@ -2153,7 +2153,7 @@ class vmmCreate(vmmGObjectUI):
@@ -2156,7 +2156,7 @@ class vmmCreate(vmmGObjectUI):
'insecure': self._get_config_oscontainer_isecure,
'root_password': self._get_config_oscontainer_root_password,
}
@ -230,10 +230,10 @@ Index: virt-manager-2.0.0/virtManager/create.py
bootstrap_args[key] = getter()
parentobj = self._customize_window or self
Index: virt-manager-2.0.0/virtManager/preferences.py
Index: virt-manager-2.1.0/virtManager/preferences.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/preferences.py
+++ virt-manager-2.0.0/virtManager/preferences.py
--- virt-manager-2.1.0.orig/virtManager/preferences.py
+++ virt-manager-2.1.0/virtManager/preferences.py
@@ -127,7 +127,7 @@ class vmmPreferences(vmmGObjectUI):
}
model.append([-1, _("System default (%s)") %
@ -243,10 +243,10 @@ Index: virt-manager-2.0.0/virtManager/preferences.py
model.append([key, val])
combo.set_model(model)
uiutil.init_combo_text_column(combo, 1)
Index: virt-manager-2.0.0/virtManager/migrate.py
Index: virt-manager-2.1.0/virtManager/migrate.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/migrate.py
+++ virt-manager-2.0.0/virtManager/migrate.py
--- virt-manager-2.1.0.orig/virtManager/migrate.py
+++ virt-manager-2.1.0/virtManager/migrate.py
@@ -23,7 +23,7 @@ from .domain import vmmDomain
NUM_COLS = 3
(COL_LABEL,
@ -256,10 +256,10 @@ Index: virt-manager-2.0.0/virtManager/migrate.py
class vmmMigrateDialog(vmmGObjectUI):
Index: virt-manager-2.0.0/virtManager/storagelist.py
Index: virt-manager-2.1.0/virtManager/storagelist.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/storagelist.py
+++ virt-manager-2.0.0/virtManager/storagelist.py
--- virt-manager-2.1.0.orig/virtManager/storagelist.py
+++ virt-manager-2.1.0/virtManager/storagelist.py
@@ -30,13 +30,13 @@ VOL_NUM_COLUMNS = 7
VOL_COLUMN_SIZESTR,
VOL_COLUMN_FORMAT,
@ -276,10 +276,10 @@ Index: virt-manager-2.0.0/virtManager/storagelist.py
ICON_RUNNING = "state_running"
ICON_SHUTOFF = "state_shutoff"
Index: virt-manager-2.0.0/virtManager/createnet.py
Index: virt-manager-2.1.0/virtManager/createnet.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/createnet.py
+++ virt-manager-2.0.0/virtManager/createnet.py
--- virt-manager-2.1.0.orig/virtManager/createnet.py
+++ virt-manager-2.1.0/virtManager/createnet.py
@@ -20,7 +20,7 @@ from .baseclass import vmmGObjectUI
(PAGE_NAME,
PAGE_IPV4,

View File

@ -6,11 +6,11 @@ it is not recognized as a top level dialog on python3 and therefore we explicitl
need to set the connection event. Not getting the event to cleanup leaves us in a
bad state for when the details dialog is reopened.
Index: virt-manager-2.0.0/virtManager/details.py
Index: virt-manager-2.1.0/virtManager/details.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/details.py
+++ virt-manager-2.0.0/virtManager/details.py
@@ -621,6 +621,9 @@ class vmmDetails(vmmGObjectUI):
--- virt-manager-2.1.0.orig/virtManager/details.py
+++ virt-manager-2.1.0/virtManager/details.py
@@ -635,6 +635,9 @@ class vmmDetails(vmmGObjectUI):
self.console.details_auth_login),
})

View File

@ -1,10 +1,10 @@
Enhancement that gets installation repos from zypper.
These locations are then presented as potential installation
sources when creating a VM.
Index: virt-manager-2.0.0/virtManager/create.py
Index: virt-manager-2.1.0/virtManager/create.py
===================================================================
--- virt-manager-2.0.0.orig/virtManager/create.py
+++ virt-manager-2.0.0/virtManager/create.py
--- virt-manager-2.1.0.orig/virtManager/create.py
+++ virt-manager-2.1.0/virtManager/create.py
@@ -371,7 +371,13 @@ class vmmCreate(vmmGObjectUI):
self.widget("install-url-entry").set_text("")
self.widget("install-url-options").set_expanded(False)
@ -20,11 +20,11 @@ Index: virt-manager-2.0.0/virtManager/create.py
# Install import
self.widget("install-import-entry").set_text("")
Index: virt-manager-2.0.0/virtinst/util.py
Index: virt-manager-2.1.0/virtinst/util.py
===================================================================
--- virt-manager-2.0.0.orig/virtinst/util.py
+++ virt-manager-2.0.0/virtinst/util.py
@@ -11,9 +11,12 @@ import os
--- virt-manager-2.1.0.orig/virtinst/util.py
+++ virt-manager-2.1.0/virtinst/util.py
@@ -10,9 +10,12 @@ import os
import random
import re
import sys
@ -37,7 +37,7 @@ Index: virt-manager-2.0.0/virtinst/util.py
def listify(l):
if l is None:
@@ -292,3 +295,57 @@ def make_meter(quiet):
@@ -291,3 +294,57 @@ def make_meter(quiet):
if quiet:
return progress.BaseMeter()
return progress.TextMeter(fo=sys.stdout)

View File

@ -1,8 +1,8 @@
Index: virt-manager-2.0.0/tests/clitest.py
Index: virt-manager-2.1.0/tests/clitest.py
===================================================================
--- virt-manager-2.0.0.orig/tests/clitest.py
+++ virt-manager-2.0.0/tests/clitest.py
@@ -176,7 +176,7 @@ class Command(object):
--- virt-manager-2.1.0.orig/tests/clitest.py
+++ virt-manager-2.1.0/tests/clitest.py
@@ -204,7 +204,7 @@ class Command(object):
try:
conn = None
@ -11,10 +11,10 @@ Index: virt-manager-2.0.0/tests/clitest.py
if self.argv[idx] == "--connect":
conn = utils.URIs.openconn(self.argv[idx + 1])
break
Index: virt-manager-2.0.0/tests/test_inject.py
Index: virt-manager-2.1.0/tests/test_inject.py
===================================================================
--- virt-manager-2.0.0.orig/tests/test_inject.py
+++ virt-manager-2.0.0/tests/test_inject.py
--- virt-manager-2.1.0.orig/tests/test_inject.py
+++ virt-manager-2.1.0/tests/test_inject.py
@@ -15,7 +15,7 @@ FEDORA_URL = "http://dl.fedoraproject.or
(WARN_RHEL5,