Fix first run packagekit interaction (bz #870851)
Fix another backtrace if guest is pmsuspended (bz #871237)
This commit is contained in:
parent
4d8e186c75
commit
ce88c8945e
46
0004-Fix-package-install-with-PackageKit-0.8.4.patch
Normal file
46
0004-Fix-package-install-with-PackageKit-0.8.4.patch
Normal file
@ -0,0 +1,46 @@
|
||||
From 983e3b9fcf6d1410396e16bb0141e21939e69da7 Mon Sep 17 00:00:00 2001
|
||||
From: Cole Robinson <crobinso@redhat.com>
|
||||
Date: Sun, 28 Oct 2012 20:09:32 -0400
|
||||
Subject: [PATCH] Fix package install with PackageKit 0.8.4 (cherry picked
|
||||
from commit 35bab2cc98ee4aef87f8a908c4951f2717455c8c)
|
||||
|
||||
---
|
||||
src/virtManager/packageutils.py | 15 +++++++++++++--
|
||||
1 file changed, 13 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/src/virtManager/packageutils.py b/src/virtManager/packageutils.py
|
||||
index 6478360..736b98c 100644
|
||||
--- a/src/virtManager/packageutils.py
|
||||
+++ b/src/virtManager/packageutils.py
|
||||
@@ -135,7 +135,15 @@ def packagekit_install(package_list):
|
||||
timeout=timeout)
|
||||
|
||||
def packagekit_search(session, pk_control, package_name, packages):
|
||||
- tid = pk_control.GetTid()
|
||||
+ newstyle = False
|
||||
+ try:
|
||||
+ tid = pk_control.GetTid()
|
||||
+ except dbus.exceptions.DBusException, e:
|
||||
+ if e.get_dbus_name() != "org.freedesktop.DBus.Error.UnknownMethod":
|
||||
+ raise
|
||||
+ newstyle = True
|
||||
+ tid = pk_control.CreateTransaction()
|
||||
+
|
||||
pk_trans = dbus.Interface(
|
||||
session.get_object("org.freedesktop.PackageKit", tid),
|
||||
"org.freedesktop.PackageKit.Transaction")
|
||||
@@ -160,7 +168,10 @@ def packagekit_search(session, pk_control, package_name, packages):
|
||||
pk_trans.connect_to_signal('ErrorCode', error)
|
||||
pk_trans.connect_to_signal('Package', package)
|
||||
try:
|
||||
- pk_trans.SearchNames("installed", [package_name])
|
||||
+ searchtype = "installed"
|
||||
+ if newstyle:
|
||||
+ searchtype = 2 ** 2
|
||||
+ pk_trans.SearchNames(searchtype, [package_name])
|
||||
except dbus.exceptions.DBusException, e:
|
||||
if e.get_dbus_name() != "org.freedesktop.DBus.Error.UnknownMethod":
|
||||
raise
|
||||
--
|
||||
1.7.12.1
|
||||
|
69
0005-Fix-detection-of-running-libvirtd-via-systemd.patch
Normal file
69
0005-Fix-detection-of-running-libvirtd-via-systemd.patch
Normal file
@ -0,0 +1,69 @@
|
||||
From b8d61f6602f82b6e90199d9ce430f9eebb1c894a Mon Sep 17 00:00:00 2001
|
||||
From: Cole Robinson <crobinso@redhat.com>
|
||||
Date: Sun, 28 Oct 2012 20:18:51 -0400
|
||||
Subject: [PATCH] Fix detection of running libvirtd via systemd (cherry picked
|
||||
from commit 2163ba3a3035ea8fccd5113d53d120801ba12040)
|
||||
|
||||
---
|
||||
src/virtManager/engine.py | 6 ++++--
|
||||
src/virtManager/packageutils.py | 5 ++++-
|
||||
2 files changed, 8 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/src/virtManager/engine.py b/src/virtManager/engine.py
|
||||
index 337fc67..2ec455b 100644
|
||||
--- a/src/virtManager/engine.py
|
||||
+++ b/src/virtManager/engine.py
|
||||
@@ -178,8 +178,11 @@ class vmmEngine(vmmGObject):
|
||||
manager.set_startup_error(msg)
|
||||
return
|
||||
|
||||
+ do_start = not did_install_libvirt
|
||||
if did_install_libvirt:
|
||||
didstart = packageutils.start_libvirtd()
|
||||
+ do_start = didstart
|
||||
+
|
||||
warnmsg = _(
|
||||
"Libvirt was just installed, so the 'libvirtd' service will\n"
|
||||
"will need to be started.\n"
|
||||
@@ -189,8 +192,7 @@ class vmmEngine(vmmGObject):
|
||||
if not didstart:
|
||||
self.err.ok(_("Libvirt service must be started"), warnmsg)
|
||||
|
||||
- self.connect_to_uri(tryuri, autoconnect=True,
|
||||
- do_start=not did_install_libvirt)
|
||||
+ self.connect_to_uri(tryuri, autoconnect=True, do_start=do_start)
|
||||
|
||||
|
||||
def load_stored_uris(self):
|
||||
diff --git a/src/virtManager/packageutils.py b/src/virtManager/packageutils.py
|
||||
index 736b98c..63cf2b5 100644
|
||||
--- a/src/virtManager/packageutils.py
|
||||
+++ b/src/virtManager/packageutils.py
|
||||
@@ -217,7 +217,7 @@ def start_libvirtd():
|
||||
state = props.Get("org.freedesktop.systemd1.Unit", "ActiveState")
|
||||
|
||||
logging.debug("libvirtd state=%s", state)
|
||||
- if state == "Active":
|
||||
+ if str(state).lower() == "active":
|
||||
logging.debug("libvirtd already active, not starting")
|
||||
return True
|
||||
except:
|
||||
@@ -226,12 +226,15 @@ def start_libvirtd():
|
||||
|
||||
# Connect to system-config-services and offer to start
|
||||
try:
|
||||
+ logging.debug("libvirtd not running, asking system-config-services "
|
||||
+ "to start it")
|
||||
scs = dbus.Interface(bus.get_object(
|
||||
"org.fedoraproject.Config.Services",
|
||||
"/org/fedoraproject/Config/Services/systemd1"),
|
||||
"org.freedesktop.systemd1.Manager")
|
||||
scs.StartUnit(unitname, "replace")
|
||||
time.sleep(2)
|
||||
+ logging.debug("Starting libvirtd appeared to succeed")
|
||||
return True
|
||||
except:
|
||||
logging.exception("Failed to talk to system-config-services")
|
||||
--
|
||||
1.7.12.1
|
||||
|
45
0006-domain-Fix-more-backtraces-from-PMSUSPEND-status.patch
Normal file
45
0006-domain-Fix-more-backtraces-from-PMSUSPEND-status.patch
Normal file
@ -0,0 +1,45 @@
|
||||
From f55c0cefba2a71d4e44003802ac4ca59db0542ad Mon Sep 17 00:00:00 2001
|
||||
From: Cole Robinson <crobinso@redhat.com>
|
||||
Date: Mon, 29 Oct 2012 18:55:51 -0400
|
||||
Subject: [PATCH] domain: Fix more backtraces from PMSUSPEND status (cherry
|
||||
picked from commit
|
||||
538420e03239da7870b5b051c043072109f68fda)
|
||||
|
||||
---
|
||||
src/virtManager/domain.py | 11 ++++++++++-
|
||||
1 file changed, 10 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/virtManager/domain.py b/src/virtManager/domain.py
|
||||
index d536f77..56087b4 100644
|
||||
--- a/src/virtManager/domain.py
|
||||
+++ b/src/virtManager/domain.py
|
||||
@@ -1389,6 +1389,8 @@ class vmmDomain(vmmLibvirtObject):
|
||||
elif (hasattr(libvirt, "VIR_DOMAIN_PMSUSPENDED") and
|
||||
status == libvirt.VIR_DOMAIN_PMSUSPENDED):
|
||||
return _("Suspended")
|
||||
+
|
||||
+ logging.debug("Unknown status %d, returning 'Unknown'")
|
||||
return _("Unknown")
|
||||
|
||||
def _normalize_status(self, status):
|
||||
@@ -1429,9 +1431,16 @@ class vmmDomain(vmmLibvirtObject):
|
||||
libvirt.VIR_DOMAIN_SHUTDOWN: "state_shutoff",
|
||||
libvirt.VIR_DOMAIN_SHUTOFF: "state_shutoff",
|
||||
libvirt.VIR_DOMAIN_NOSTATE: "state_running",
|
||||
+ # VIR_DOMAIN_PMSUSPENDED
|
||||
+ 7: "state_paused",
|
||||
}
|
||||
|
||||
- return status_icons[self.status()]
|
||||
+ status = self.status()
|
||||
+ if status not in status_icons:
|
||||
+ logging.debug("Unknown status %d, using NOSTATE")
|
||||
+ status = libvirt.VIR_DOMAIN_NOSTATE
|
||||
+
|
||||
+ return status_icons[status]
|
||||
|
||||
def force_update_status(self):
|
||||
"""
|
||||
--
|
||||
1.7.12.1
|
||||
|
@ -2,7 +2,7 @@
|
||||
|
||||
%define _package virt-manager
|
||||
%define _version 0.9.4
|
||||
%define _release 2
|
||||
%define _release 3
|
||||
%define virtinst_version 0.600.3
|
||||
|
||||
%define qemu_user "qemu"
|
||||
@ -47,6 +47,11 @@ Patch1: 0001-virt-manager-Fix-KVM_PACKAGES-substitution-variable.patch
|
||||
Patch2: 0002-domain-Handle-PMSUSPENDED-status.patch
|
||||
# Fix 'browse local' behavior when choosing directory (bz #855335)
|
||||
Patch3: 0003-browse_local-Fix-choosing-directory-of-F17.patch
|
||||
# Fix first run packagekit interaction (bz 870851)
|
||||
Patch4: 0004-Fix-package-install-with-PackageKit-0.8.4.patch
|
||||
Patch5: 0005-Fix-detection-of-running-libvirtd-via-systemd.patch
|
||||
# Fix another backtrace if guest is pmsuspended (bz 871237)
|
||||
Patch6: 0006-domain-Fix-more-backtraces-from-PMSUSPEND-status.patch
|
||||
BuildRoot: %{_tmppath}/%{name}-%{version}-%{release}-root-%(%{__id_u} -n)
|
||||
BuildArch: noarch
|
||||
|
||||
@ -148,6 +153,9 @@ Common files used by the different Virtual Machine Manager interfaces.
|
||||
%patch1 -p1
|
||||
%patch2 -p1
|
||||
%patch3 -p1
|
||||
%patch4 -p1
|
||||
%patch5 -p1
|
||||
%patch6 -p1
|
||||
|
||||
%build
|
||||
%if %{qemu_user}
|
||||
@ -270,6 +278,10 @@ update-desktop-database -q %{_datadir}/applications
|
||||
%endif
|
||||
|
||||
%changelog
|
||||
* Tue Oct 30 2012 Cole Robinson <crobinso@redhat.com> - 0.9.4-3
|
||||
- Fix first run packagekit interaction (bz #870851)
|
||||
- Fix another backtrace if guest is pmsuspended (bz #871237)
|
||||
|
||||
* Wed Oct 24 2012 Cole Robinson <crobinso@redhat.com> - 0.9.4-2
|
||||
- Fix KVM package install on app first run
|
||||
- Fix listing domain with 'suspended' state (bz #850954)
|
||||
|
Loading…
Reference in New Issue
Block a user