Accepting request 32662 from home:computersalat:devel:Virtualization

Copy from home:computersalat:devel:Virtualization/virt-manager via accept of submit request 32662 revision 3.
Request was accepted with message:
Reviewed ok

OBS-URL: https://build.opensuse.org/request/show/32662
OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=14
This commit is contained in:
Charles Arnold 2010-02-16 16:11:41 +00:00 committed by Git OBS Bridge
parent 8ca7d29901
commit 30975c8aa6
23 changed files with 360 additions and 408 deletions

View File

@ -1,71 +0,0 @@
# HG changeset patch
# User Cole Robinson <crobinso@redhat.com>
# Date 1251727555 14400
# Node ID c0de24094ca26b8da900d29746adba056f4114f7
# Parent 37a986ce54ceac389573d763c78f633a10ec1ab7
Don't mangle QEMU driver name on cdrom connect (bz 516116)
Index: virt-manager-0.8.0/src/virtManager/domain.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/domain.py
+++ virt-manager-0.8.0/src/virtManager/domain.py
@@ -1291,19 +1291,28 @@ class vmmDomain(gobject.GObject):
xml = self.get_device_xml("disk", dev_id_info)
def cdrom_xml_connect(doc, ctx):
- disk_fragment = ctx.xpathEval("/disk")
+ disk_fragment = ctx.xpathEval("/disk")[0]
driver_fragment = ctx.xpathEval("/disk/driver")
- disk_fragment[0].setProp("type", _type)
- elem = disk_fragment[0].newChild(None, "source", None)
+ disk_fragment.setProp("type", _type)
+ elem = disk_fragment.newChild(None, "source", None)
+
if _type == "file":
elem.setProp("file", source)
- if driver_fragment:
- driver_fragment[0].setProp("name", _type)
+ driver_name = _type
else:
elem.setProp("dev", source)
- if driver_fragment:
- driver_fragment[0].setProp("name", "phy")
- return disk_fragment[0].serialize()
+ driver_name = "phy"
+
+ if driver_fragment:
+ driver_fragment = driver_fragment[0]
+ orig_name = driver_fragment.prop("name")
+
+ # For Xen, the driver name is dependent on the storage type
+ # (file or phys).
+ if orig_name and orig_name in [ "file", "phy" ]:
+ driver_fragment.setProp("name", driver_name)
+
+ return disk_fragment.serialize()
result = util.xml_parse_wrapper(xml, cdrom_xml_connect)
logging.debug("connect_cdrom produced: %s" % result)
@@ -1313,17 +1322,19 @@ class vmmDomain(gobject.GObject):
xml = self.get_device_xml("disk", dev_id_info)
def cdrom_xml_disconnect(doc, ctx):
- disk_fragment = ctx.xpathEval("/disk")
+ disk_fragment = ctx.xpathEval("/disk")[0]
sourcenode = None
- for child in disk_fragment[0].children:
+
+ for child in disk_fragment.children:
if child.name == "source":
sourcenode = child
break
else:
continue
+
sourcenode.unlinkNode()
sourcenode.freeNode()
- return disk_fragment[0].serialize()
+ return disk_fragment.serialize()
result = util.xml_parse_wrapper(xml, cdrom_xml_disconnect)
logging.debug("eject_cdrom produced: %s" % result)

View File

@ -1,21 +0,0 @@
# HG changeset patch
# User Cole Robinson <crobinso@redhat.com>
# Date 1251728389 14400
# Node ID b70858b9f8c6f9fea21f6e66a10e7b9498f11e5e
# Parent 0bdea2b6c30e3b9ac7ca7b35f957598e66fd8c36
Don't allow deleting an active VM (bz 518536)
Index: virt-manager-0.8.0/src/virtManager/manager.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/manager.py
+++ virt-manager-0.8.0/src/virtManager/manager.py
@@ -684,7 +684,8 @@ class vmmManager(gobject.GObject):
show_open = bool(vm)
show_details = bool(vm)
host_details = bool(vm or conn)
- delete = bool((vm and vm.is_runable()) or conn)
+ delete = bool((vm and vm.is_runable()) or
+ (not vm and conn))
show_run = bool(vm and vm.is_runable())
is_paused = bool(vm and vm.is_paused())
if is_paused:

View File

@ -1,47 +0,0 @@
# HG changeset patch
# User Paul W. Frields <stickster@gmail.com>
# Date 1251729959 14400
# Node ID d34def55dbd78e2ad5f099d6a38c1f358c798555
# Parent b70858b9f8c6f9fea21f6e66a10e7b9498f11e5e
addhardware: Fix error message syntax typo
Index: virt-manager-0.8.0/AUTHORS
===================================================================
--- virt-manager-0.8.0.orig/AUTHORS
+++ virt-manager-0.8.0/AUTHORS
@@ -59,6 +59,7 @@ Further patches have been submitted by:
Emmanuel Lacour <elacour-at-home-dn-dot-net>
Laurent Léonard <laurent-at-open-minds-dot-org>
Michal Novotny <minovotn-at-redhat-dot-com>
+ Paul W. Frields <stickster-at-gmail-dot-com>
<...send a patch & get your name here...>
Index: virt-manager-0.8.0/src/virtManager/addhardware.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/addhardware.py
+++ virt-manager-0.8.0/src/virtManager/addhardware.py
@@ -1186,8 +1186,8 @@ class vmmAddHardware(gobject.GObject):
conn = self.vm.get_connection().vmm,
name = nodedev_name)
except Exception, e:
- return self.err.val_err(_("Host device parameter error",
- str(e)))
+ return self.err.val_err(_("Host device parameter error"),
+ str(e))
elif page_num == PAGE_CHAR:
chartype = self.get_char_type()
Index: virt-manager-0.8.0/src/vmm-manager.glade
===================================================================
--- virt-manager-0.8.0.orig/src/vmm-manager.glade
+++ virt-manager-0.8.0/src/vmm-manager.glade
@@ -118,7 +118,7 @@
<child>
<widget class="GtkImageMenuItem" id="menu_edit_delete">
<property name="visible">True</property>
- <property name="label" translatable="yes">Delete Virtual Machine</property>
+ <property name="label" translatable="yes">Delete</property>
<property name="use_underline">True</property>
<signal name="activate" handler="on_menu_edit_delete_activate"/>
<child internal-child="image">

View File

@ -1,75 +0,0 @@
# HG changeset patch
# User Cole Robinson <crobinso@redhat.com>
# Date 1252939197 14400
# Node ID 486cd6791c3926420786d30401a690884acdf653
# Parent 043ca66e19aabcdb89b8bbe76ef5ded8b0c0fc54
Fix populating text box with storage browser selection in 'New VM' (bz 517263)
We were only properly setting the 'finish' callback for the first time the
storage browser was launched. All subsequent runs would not enter anything
in the associated text box.
Index: virt-manager-0.8.0/src/virtManager/addhardware.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/addhardware.py
+++ virt-manager-0.8.0/src/virtManager/addhardware.py
@@ -80,7 +80,6 @@ class vmmAddHardware(gobject.GObject):
_("An unexpected error occurred"))
self.storage_browser = None
- self._browse_cb_id = None
self._dev = None
@@ -911,10 +910,8 @@ class vmmAddHardware(gobject.GObject):
conn = self.vm.get_connection()
if self.storage_browser == None:
self.storage_browser = vmmStorageBrowser(self.config, conn, False)
- if self._browse_cb_id:
- self.storage_browser.disconnect(self._browse_cb_id)
- self._browse_cb_id = self.storage_browser.connect("storage-browse-finish", set_storage_cb)
+ self.storage_browser.set_finish_cb(set_storage_cb)
self.storage_browser.local_args = { "dialog_name": dialog_name,
"confirm_func": confirm_func,
"browse_reason":
Index: virt-manager-0.8.0/src/virtManager/create.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/create.py
+++ virt-manager-0.8.0/src/virtManager/create.py
@@ -1644,8 +1644,9 @@ class vmmCreate(gobject.GObject):
if self.storage_browser == None:
self.storage_browser = vmmStorageBrowser(self.config, self.conn,
is_media)
- self.storage_browser.connect("storage-browse-finish",
- callback)
+
+ self.storage_browser.set_finish_cb(callback)
+
if is_media:
reason = self.config.CONFIG_DIR_MEDIA
else:
Index: virt-manager-0.8.0/src/virtManager/storagebrowse.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/storagebrowse.py
+++ virt-manager-0.8.0/src/virtManager/storagebrowse.py
@@ -47,6 +47,7 @@ class vmmStorageBrowser(gobject.GObject)
self.config = config
self.conn = conn
self.conn_signal_ids = []
+ self.finish_cb_id = None
self.topwin = self.window.get_widget("vmm-storage-browse")
self.err = vmmErrorDialog(self.topwin,
@@ -89,6 +90,11 @@ class vmmStorageBrowser(gobject.GObject)
self.addvol.close()
return 1
+ def set_finish_cb(self, callback):
+ if self.finish_cb_id:
+ self.disconnect(self.finish_cb_id)
+ self.finish_cb_id = self.connect("storage-browse-finish", callback)
+
def set_initial_state(self):
pool_list = self.window.get_widget("pool-list")
virtManager.host.init_pool_list(pool_list, self.pool_selected)

View File

@ -1,51 +0,0 @@
# HG changeset patch
# User Cole Robinson <crobinso@redhat.com>
# Date 1253131339 14400
# Node ID 1c886d1863f72e7ddd5fb99050362296be6a9deb
# Parent 9242a7fe76b16c6505bdd3d3d328ae8f0c56da10
Don't close connection on all libvirt errors: only if libvirtd goes away.
Index: virt-manager-0.8.0/src/virtManager/connection.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/connection.py
+++ virt-manager-0.8.0/src/virtManager/connection.py
@@ -941,7 +941,15 @@ class vmmConnection(gobject.GObject):
updateVMs = newVMs
for uuid in updateVMs:
- self.vms[uuid].tick(now)
+ vm = self.vms[uuid]
+ try:
+ vm.tick(now)
+ except libvirt.libvirtError, e:
+ if e.get_error_code() == libvirt.VIR_ERR_SYSTEM_ERROR:
+ raise
+ logging.exception("Tick for VM '%s' failed" % vm.get_name())
+ except Exception, e:
+ logging.exception("Tick for VM '%s' failed" % vm.get_name())
if not noStatsUpdate:
self._recalculate_stats(now)
Index: virt-manager-0.8.0/src/virtManager/engine.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/engine.py
+++ virt-manager-0.8.0/src/virtManager/engine.py
@@ -199,10 +199,14 @@ class vmmEngine(gobject.GObject):
self.connections[uri]["connection"].tick()
except KeyboardInterrupt:
raise
- except:
- logging.exception("Could not refresh connection %s." % uri)
- logging.debug("Closing connection since refresh failed.")
- self.connections[uri]["connection"].close()
+ except libvirt.libvirtError, e:
+ if e.get_error_code() == libvirt.VIR_ERR_SYSTEM_ERROR:
+ logging.exception("Could not refresh connection %s." % uri)
+ logging.debug("Closing connection since libvirtd "
+ "appears to have stopped.")
+ self.connections[uri]["connection"].close()
+ else:
+ raise
return 1
def change_timer_interval(self,ignore1,ignore2,ignore3,ignore4):

View File

@ -1,20 +0,0 @@
# HG changeset patch
# User Cole Robinson <crobinso@redhat.com>
# Date 1253823268 14400
# Node ID d78b7e7131439dc9f22c8e7391e82c5f29888fe8
# Parent cfcd19d057ddc973a129e7816cd4ea39f0d4365a
Fix vcpu hotplug.
Index: virt-manager-0.8.0/src/virtManager/domain.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/domain.py
+++ virt-manager-0.8.0/src/virtManager/domain.py
@@ -1341,7 +1341,7 @@ class vmmDomain(gobject.GObject):
self._change_cdrom(result, dev_id_info)
def hotplug_vcpu(self, vcpus):
- self.vm.setVcpus()
+ self.vm.setVcpus(int(vcpus))
def hotplug_vcpus(self, vcpus):
vcpus = int(vcpus)

View File

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

View File

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

View File

@ -1,3 +1,70 @@
-------------------------------------------------------------------
Mon Feb 15 23:24:12 UTC 2010 - chris@computersalat.de
- Update to virt-manager version 0.8.3
* New ability to manage network interfaces: start, stop, and view
existing interfaces. Provision new bridge, bond, and vlan devices.
* New option to 'customize VM before install', which allows
adjusting most VM options from the install wizard.
- Update to virtinst version 0.500.2
* virt-install: New option --autostart for setting domain
autostart flag
* virt-install: Allow specifying --host-device with lsusb and
lspci format (0x1234:0x5678 for USB, etc)
* virtinst: New 'Interface' module for building libvirt
interface XML
- cleanup spec
* norootforbuild
* sort TAGS
- some rpmlint stuff
* configfile
-------------------------------------------------------------------
Thu Jan 7 12:04:09 MST 2010 - carnold@novell.com
- Update to virt-manager version 0.8.2
* Right click in the manager window operates on the clicked row,
NOT the last selected row. This could cause an admin to
accidentally shut down the wrong machine.
* Running virt-manager on a new machine / user account no longer
produces a traceback.
* Allow ejecting and connecting floppy media
-------------------------------------------------------------------
Fri Dec 11 15:59:53 MST 2009 - carnold@novell.com
- First time running virt-manager throws exception in engine.py
add_connection().
virtman-autoconnect.diff
-------------------------------------------------------------------
Thu Dec 3 17:18:37 MST 2009 - carnold@novell.com
- Update to virt-manager version 0.8.1
* VM Migration wizard, exposing various migration options
* Enumerate CDROM and bridge devices on remote connections
* Can once again list multiple graphs in main manager window (Jon Nordby)
* Support disabling dhcp (Michal Novotny), and specifying 'routed' type for new virtual networks
* Support storage pool source enumeration for LVM, NFS, and SCSI
* Allow changing VM ACPI, APIC, clock offset, individual vcpu pinning, and video model (vga, cirrus, etc.)
* Many improvements and bugfixes
-------------------------------------------------------------------
Wed Nov 11 11:49:22 MST 2009 - carnold@novell.com
- bnc#552785 - virt-manager cannot connect to xend when started
from an ordinary user's X session
virtman-desktop.diff
-------------------------------------------------------------------
Tue Nov 10 13:04:38 MST 2009 - carnold@novell.com
- bnc#553633 - Update breaks menu access keys in virt-viewer and
still misses some key sequences.
This is a SLE10 bug fixed for the virt-manager viewer in all
versions.
virtman-keycombo.diff
-------------------------------------------------------------------
Wed Oct 7 17:03:52 MDT 2009 - carnold@novell.com
@ -31,6 +98,11 @@ Fri Jun 12 12:15:53 MDT 2009 - carnold@novell.com
- Fixed build issue with virt-manager.schemas location.
- Changed .gz files to .bz2 files to save space and quiet RPMLINT
-------------------------------------------------------------------
Wed May 13 11:32:20 MDT 2009 - dpmerrill@novell.com
- Use "graphics listen" for vnc connection (bnc#436629)
-------------------------------------------------------------------
Thu Apr 30 09:46:58 MDT 2009 - dpmerrill@novell.com
@ -51,6 +123,12 @@ Mon Mar 2 01:54:40 CET 2009 - ro@suse.de
- move sr@Latn to sr@latin
-------------------------------------------------------------------
Fri Jan 23 16:55:15 MST 2009 - dpmerrill@novell.com
- Remove unsupported SCSI disk option (bnc#464293)
- Change cdrom start node to hdc instead of hdb (bnc#376935)
-------------------------------------------------------------------
Thu Dec 4 00:49:51 CET 2008 - dpmerrill@suse.de

View File

@ -1,7 +1,7 @@
#
# spec file for package virt-manager (Version 0.8.0)
# spec file for package virt-manager (Version 0.8.3)
#
# Copyright (c) 2009 SUSE LINUX Products GmbH, Nuernberg, Germany.
# Copyright (c) 2010 SUSE LINUX Products GmbH, Nuernberg, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@ -15,42 +15,58 @@
# Please submit bugfixes or comments via http://bugs.opensuse.org/
#
# norootforbuild
Name: virt-manager
%define _extra_release %{?dist:%{dist}}%{!?dist:%{?extra_release:%{extra_release}}}
%define gsysconfdir /etc
%define gconftool /usr/bin/gconftool-2
%define virtinst_maj 0
%define virtinst_min 500
%define virtinst_rel 0
%define virtinst_name virtinst-%{virtinst_maj}.%{virtinst_min}.%{virtinst_rel}
Version: 0.8.0
Release: 4
%define vi_maj 0
%define vi_min 500
%define vi_rel 2
%define virtinst_name virtinst-%{vi_maj}.%{vi_min}.%{vi_rel}
Name: virt-manager
Summary: Virtual Machine Manager
Version: 0.8.3
Release: 1
Group: System/Monitoring
License: LGPL v2.1 or later
License: LGPLv2.1+
Url: http://virt-manager.et.redhat.com
BuildRoot: %{_tmppath}/%{name}-%{version}-build
ExclusiveArch: %{ix86} x86_64
Source0: virt-manager-%{version}.tar.bz2
Source1: %{virtinst_name}.tar.bz2
Patch0: 1240-cdrom-driver-name.patch
Patch1: 1242-delete-active-vm.patch
Patch2: 1243-syntax-typo.patch
Patch3: 1245-storage-browser-selection.patch
Patch4: 1248-libvirt-connection.patch
Patch5: 1262-vcpu-hotplug-fix.patch
Patch51: virtman-desktop.diff
Patch52: virtman-vminstall.diff
Patch53: virtman-netcat.diff
Patch54: virtman-pointer.diff
Patch55: virtman-cdrom.diff
Patch56: virtman-kvm.diff
Patch57: virtman-bridge.diff
Patch58: virtman-manager.diff
Patch59: virtman-help.diff
Patch50: virtman-desktop.diff
Patch51: virtman-vminstall.diff
Patch52: virtman-netcat.diff
Patch53: virtman-pointer.diff
Patch54: virtman-cdrom.diff
Patch55: virtman-kvm.diff
Patch56: virtman-bridge.diff
Patch57: virtman-manager.diff
Patch58: virtman-help.diff
Patch59: virtman-keycombo.diff
Patch60: virtman-autoconnect.diff
Patch81: virtinst-cdrom.diff
ExclusiveArch: %{ix86} x86_64
BuildRoot: %{_tmppath}/%{name}-%{version}-build
%gconf_schemas_prereq
#
#rpmlint BuildRequires: python
BuildRequires: gtk2-devel
BuildRequires: python-devel
BuildRequires: gettext
BuildRequires: scrollkeeper
BuildRequires: intltool
#rpmlint BuildRequires: python-gtk
BuildRequires: python-gtk-devel
BuildRequires: python-gobject2-devel
BuildRequires: gconf2-devel
BuildRequires: desktop-file-utils
BuildRequires: update-desktop-files
# virtinst BuildRequires
BuildRequires: libxml2-python
BuildRequires: python-urlgrabber
BuildRequires: libvirt-python
#
# Requires: pygtk2 >= 1.99.12-6
Requires: python-gtk
# Requires: gnome-python2-gconf >= 1.99.11-7
@ -90,23 +106,6 @@ Requires: netcat
# Add requires for non Xen installations
Requires: python-urlgrabber
Requires: vm-install
#rpmlint BuildRequires: python
BuildRequires: gtk2-devel
BuildRequires: python-devel
BuildRequires: gettext
BuildRequires: scrollkeeper
BuildRequires: intltool
#rpmlint BuildRequires: python-gtk
BuildRequires: python-gtk-devel
BuildRequires: python-gobject2-devel
BuildRequires: gconf2-devel
BuildRequires: desktop-file-utils
BuildRequires: update-desktop-files
# virtinst BuildRequires
BuildRequires: libxml2-python
BuildRequires: python-urlgrabber
BuildRequires: libvirt-python
%gconf_schemas_prereq
%description
Virtual Machine Manager provides a graphical tool for administering
@ -123,21 +122,17 @@ Authors:
%prep
%setup -q
%setup -b 1
%patch0 -p1
%patch1 -p1
%patch2 -p1
%patch3 -p1
%patch4 -p1
%patch5 -p1
%patch50 -p1
%patch51 -p1
%patch52 -p1
%patch53 -p1
#%patch53 -p1
%patch54 -p1
%patch55 -p1
%patch56 -p1
#%patch56 -p1
#%patch57 -p1
%patch58 -p1
%patch59 -p1
%patch60 -p1
pushd $RPM_BUILD_DIR/%{virtinst_name}
%patch81 -p1
popd
@ -165,6 +160,7 @@ rm -f $RPM_BUILD_ROOT/usr/share/locale/pl/LC_MESSAGES/virtinst.mo
rm -f $RPM_BUILD_ROOT/usr/share/locale/fr/LC_MESSAGES/virtinst.mo
rm -f $RPM_BUILD_ROOT/usr/share/locale/it/LC_MESSAGES/virtinst.mo
rm -f $RPM_BUILD_ROOT/usr/share/locale/sr/LC_MESSAGES/virtinst.mo
rm -f $RPM_BUILD_ROOT/usr/share/locale/ru/LC_MESSAGES/virtinst.mo
rm -f $RPM_BUILD_ROOT/usr/share/locale/pt_BR/LC_MESSAGES/virtinst.mo
rm -f $RPM_BUILD_ROOT/usr/share/locale/sr@latin/LC_MESSAGES/virtinst.mo
rm -f $RPM_BUILD_ROOT/usr/share/locale/zh_CN/LC_MESSAGES/virtinst.mo
@ -210,7 +206,7 @@ sed -i -e 's/Categories=.*/Categories=Qt;X-SuSE-YaST;X-SuSE-YaST-Virtualization;
%dir %{_datadir}/gconf/schemas
%config %{_datadir}/gconf/schemas/%{name}.schemas
%else
%{gsysconfdir}/gconf/schemas/%{name}.schemas
%config %{gsysconfdir}/gconf/schemas/%{name}.schemas
%endif
%{_bindir}/%{name}
%{_libexecdir}/%{name}-launch
@ -234,14 +230,14 @@ sed -i -e 's/Categories=.*/Categories=Qt;X-SuSE-YaST;X-SuSE-YaST-Virtualization;
%{_datadir}/applications/YaST2/%{name}.desktop
%{_datadir}/dbus-1/services/%{name}.service
%{_datadir}/man/man1/%{name}.1*
# new files for virt-manager-0.7.0
# new files for virt-manager-0.8.1
%dir %{_datadir}/%{name}/virtconv
%{_datadir}/%{name}/virtconv/*.py
%{_datadir}/%{name}/virtconv/*.pyc
%dir %{_datadir}/%{name}/virtconv/parsers
%{_datadir}/%{name}/virtconv/parsers/*.py
%{_datadir}/%{name}/virtconv/parsers/*.pyc
%{_datadir}/%{name}/virtinst-0.500.0-py2.6.egg-info
%{_datadir}/%{name}/%{virtinst_name}-py2.6.egg-info
%doc %{_datadir}/gnome/help/%{name}/C/figures/*.png
%doc %{_datadir}/gnome/help/%{name}/C/*.xml
# FIXME: autobuild complains that these are unowned (not true...)

View File

@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:85f625115a667d8de68d02922daf0b2fd88888d2de25da15260c7891db67f638
size 291909

3
virtinst-0.500.2.tar.bz2 Normal file
View File

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

View File

@ -1,8 +1,8 @@
Index: virtinst-0.500.0/virtinst/VirtualDisk.py
Index: virtinst-0.500.1/virtinst/VirtualDisk.py
===================================================================
--- virtinst-0.500.0.orig/virtinst/VirtualDisk.py
+++ virtinst-0.500.0/virtinst/VirtualDisk.py
@@ -1181,14 +1181,18 @@ class VirtualDisk(VirtualDevice):
--- virtinst-0.500.1.orig/virtinst/VirtualDisk.py
+++ virtinst-0.500.1/virtinst/VirtualDisk.py
@@ -1354,14 +1354,18 @@ class VirtualDisk(VirtualDevice):
return self.target
raise ValueError(_("IDE CDROM must use 'hdc', but target in use."))

13
virtman-autoconnect.diff Normal file
View File

@ -0,0 +1,13 @@
Index: virt-manager-0.8.2/src/virtManager/engine.py
===================================================================
--- virt-manager-0.8.2.orig/src/virtManager/engine.py
+++ virt-manager-0.8.2/src/virtManager/engine.py
@@ -470,7 +470,7 @@ class vmmEngine(gobject.GObject):
self.emit("connection-added", conn)
self.config.add_connection(conn.get_uri())
if autoconnect:
- conn.set_autoconnect(True)
+ self.connect_to_uri(uri)
return conn

View File

@ -1,11 +1,11 @@
Index: virt-manager-0.8.0/src/virtManager/addhardware.py
Index: virt-manager-0.8.2/src/virtManager/addhardware.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/addhardware.py
+++ virt-manager-0.8.0/src/virtManager/addhardware.py
@@ -1298,6 +1298,7 @@ class vmmAddHardware(gobject.GObject):
if self.vm.get_hv_type().lower() == "kvm":
--- virt-manager-0.8.2.orig/src/virtManager/addhardware.py
+++ virt-manager-0.8.2/src/virtManager/addhardware.py
@@ -465,6 +465,7 @@ class vmmAddHardware(gobject.GObject):
if self.vm.get_hv_type() == "kvm":
add_dev("virtio", virtinst.VirtualDisk.DEVICE_DISK, "Virtio Disk")
if self.vm.get_connection().get_type().lower() == "xen":
if self.vm.get_connection().is_xen():
+ add_dev("xen", virtinst.VirtualDisk.DEVICE_CDROM, "Virtual disk (read only)")
add_dev("xen", virtinst.VirtualDisk.DEVICE_DISK, "Virtual disk")

View File

@ -1,7 +1,7 @@
Index: virt-manager-0.8.0/src/Makefile.am
Index: virt-manager-0.8.2/src/Makefile.am
===================================================================
--- virt-manager-0.8.0.orig/src/Makefile.am
+++ virt-manager-0.8.0/src/Makefile.am
--- virt-manager-0.8.2.orig/src/Makefile.am
+++ virt-manager-0.8.2/src/Makefile.am
@@ -14,7 +14,7 @@ libexec_SCRIPTS = $(PACKAGE)-launch
gladedir = $(pkgdatadir)
glade_DATA = $(wildcard $(srcdir)/*.glade)
@ -11,11 +11,11 @@ Index: virt-manager-0.8.0/src/Makefile.am
desktop_DATA_IN = $(PACKAGE).desktop.in.in
desktop_DATA = $(PACKAGE).desktop
Index: virt-manager-0.8.0/src/Makefile.in
Index: virt-manager-0.8.2/src/Makefile.in
===================================================================
--- virt-manager-0.8.0.orig/src/Makefile.in
+++ virt-manager-0.8.0/src/Makefile.in
@@ -258,7 +258,7 @@ libexec_DATA_IN = $(PACKAGE)-launch.in
--- virt-manager-0.8.2.orig/src/Makefile.in
+++ virt-manager-0.8.2/src/Makefile.in
@@ -240,7 +240,7 @@ libexec_DATA_IN = $(PACKAGE)-launch.in
libexec_SCRIPTS = $(PACKAGE)-launch
gladedir = $(pkgdatadir)
glade_DATA = $(wildcard $(srcdir)/*.glade)
@ -24,11 +24,11 @@ Index: virt-manager-0.8.0/src/Makefile.in
desktop_DATA_IN = $(PACKAGE).desktop.in.in
desktop_DATA = $(PACKAGE).desktop
dbusdir = $(datadir)/dbus-1/services
Index: virt-manager-0.8.0/src/virt-manager.desktop.in.in
Index: virt-manager-0.8.2/src/virt-manager.desktop.in.in
===================================================================
--- virt-manager-0.8.0.orig/src/virt-manager.desktop.in.in
+++ virt-manager-0.8.0/src/virt-manager.desktop.in.in
@@ -1,9 +1,16 @@
--- virt-manager-0.8.2.orig/src/virt-manager.desktop.in.in
+++ virt-manager-0.8.2/src/virt-manager.desktop.in.in
@@ -1,9 +1,20 @@
[Desktop Entry]
_Name=Virtual Machine Manager
_Comment=Manage virtual machines
@ -42,6 +42,10 @@ Index: virt-manager-0.8.0/src/virt-manager.desktop.in.in
Encoding=UTF-8
-Categories=System;
+Categories=Qt;X-SuSE-YaST;
+X-KDE-ModuleType=Library
+X-KDE-RootOnly=true
+X-KDE-HasReadOnlyMode=false
+X-KDE-Library=yast2
+X-SuSE-YaST-Call=/usr/bin/virt-manager -- -c xen:///
+X-SuSE-YaST-Group=Virtualization
+X-SuSE-YaST-Argument=

View File

@ -1,7 +1,7 @@
Index: virt-manager-0.8.0/help/virt-manager/C/virt-manager.xml
Index: virt-manager-0.8.2/help/virt-manager/C/virt-manager.xml
===================================================================
--- virt-manager-0.8.0.orig/help/virt-manager/C/virt-manager.xml
+++ virt-manager-0.8.0/help/virt-manager/C/virt-manager.xml
--- virt-manager-0.8.2.orig/help/virt-manager/C/virt-manager.xml
+++ virt-manager-0.8.2/help/virt-manager/C/virt-manager.xml
@@ -821,218 +821,9 @@
<title>The Create Wizard</title>
<para>The Create Wizard helps you gather the information necessary to create

145
virtman-keycombo.diff Normal file
View File

@ -0,0 +1,145 @@
Index: virt-manager-0.8.2/src/vmm-details.glade
===================================================================
--- virt-manager-0.8.2.orig/src/vmm-details.glade
+++ virt-manager-0.8.2/src/vmm-details.glade
@@ -339,11 +339,85 @@
</widget>
</child>
<child>
+ <widget class="GtkMenuItem" id="details-menu-send-assesc">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Alt+Shift+Shift+Esc</property>
+ <property name="use_underline">False</property>
+ <signal name="activate" handler="on_menu_send_assesc_activate" last_modification_time="Wed, 14 Oct 2009 12:06:25 GMT"/>
+ </widget>
+ </child>
+ <child>
<widget class="GtkSeparatorMenuItem" id="separator9">
<property name="visible">True</property>
</widget>
</child>
<child>
+ <widget class="GtkMenuItem" id="details-menu-send-af10">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">A_lt+F10</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_menu_send_af10_activate" last_modification_time="Wed, 14 Oct 2009 12:06:25 GMT"/>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkMenuItem" id="details-menu-send-atab">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Alt+_Tab</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_menu_send_atab_activate" last_modification_time="Wed, 14 Oct 2009 12:06:25 GMT"/>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkMenuItem" id="details-menu-send-astab">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Alt+Esc</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_menu_send_aesc_activate" last_modification_time="Wed, 14 Oct 2009 12:06:25 GMT"/>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkMenuItem" id="details-menu-send-cesc">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_Ctrl+Esc</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_menu_send_cesc_activate" last_modification_time="Wed, 14 Oct 2009 12:06:25 GMT"/>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkMenuItem" id="details-menu-send-caesc">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">Ctrl+Alt+_Esc</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_menu_send_caesc_activate" last_modification_time="Wed, 14 Oct 2009 12:06:25 GMT"/>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator10">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkMenuItem" id="details-menu-send-f8">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">_F8</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_menu_send_f8_activate" last_modification_time="Wed, 09 Jan 2008 19:20:40 GMT"/>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkMenuItem" id="details-menu-send-f10">
+ <property name="visible">True</property>
+ <property name="label" translatable="yes">F1_0</property>
+ <property name="use_underline">True</property>
+ <signal name="activate" handler="on_menu_send_f10_activate" last_modification_time="Wed, 09 Jan 2008 19:20:40 GMT"/>
+ </widget>
+ </child>
+ <child>
+ <widget class="GtkSeparatorMenuItem" id="separator13">
+ <property name="visible">True</property>
+ </widget>
+ </child>
+ <child>
<widget class="GtkMenuItem" id="details-menu-send-caf1">
<property name="visible">True</property>
<property name="label">Ctrl+Alt+F_1</property>
@@ -440,7 +514,7 @@
</widget>
</child>
<child>
- <widget class="GtkSeparatorMenuItem" id="separator10">
+ <widget class="GtkSeparatorMenuItem" id="separator14">
<property name="visible">True</property>
</widget>
</child>
Index: virt-manager-0.8.2/src/virtManager/details.py
===================================================================
--- virt-manager-0.8.2.orig/src/virtManager/details.py
+++ virt-manager-0.8.2/src/virtManager/details.py
@@ -240,6 +240,14 @@ class vmmDetails(gobject.GObject):
"on_details_menu_send_cad_activate": self.console.send_key,
"on_details_menu_send_cab_activate": self.console.send_key,
+ "on_details_menu_send_assesc_activate": self.console.send_key,
+ "on_details_menu_send_af10_activate": self.console.send_key,
+ "on_details_menu_send_atab_activate": self.console.send_key,
+ "on_details_menu_send_aesc_activate": self.console.send_key,
+ "on_details_menu_send_cesc_activate": self.console.send_key,
+ "on_details_menu_send_caesc_activate": self.console.send_key,
+ "on_details_menu_send_f8_activate": self.console.send_key,
+ "on_details_menu_send_f10_activate": self.console.send_key,
"on_details_menu_send_caf1_activate": self.console.send_key,
"on_details_menu_send_caf2_activate": self.console.send_key,
"on_details_menu_send_caf3_activate": self.console.send_key,
Index: virt-manager-0.8.2/src/virtManager/console.py
===================================================================
--- virt-manager-0.8.2.orig/src/virtManager/console.py
+++ virt-manager-0.8.2/src/virtManager/console.py
@@ -321,6 +321,22 @@ class vmmConsolePages(gobject.GObject):
keys = ["Control_L", "Alt_L", "Delete"]
elif src.get_name() == "details-menu-send-cab":
keys = ["Control_L", "Alt_L", "BackSpace"]
+ elif src.get_name() == "details-menu-send-assesc":
+ keys = ["Alt_R", "Shift_R", "Shift_L", "Escape"]
+ elif src.get_name() == "details-menu-send-af10":
+ keys = ["Alt_L", "F10"]
+ elif src.get_name() == "details-menu-send-atab":
+ keys = ["Alt_L", "Tab"]
+ elif src.get_name() == "details-menu-send-aesc":
+ keys = ["Alt_L", "Escape"]
+ elif src.get_name() == "details-menu-send-cesc":
+ keys = ["Control_L", "Escape"]
+ elif src.get_name() == "details-menu-send-caesc":
+ keys = ["Control_L", "Alt_L", "Escape"]
+ elif src.get_name() == "details-menu-send-f8":
+ keys = ["F8"]
+ elif src.get_name() == "details-menu-send-f10":
+ keys = ["F10"]
elif src.get_name() == "details-menu-send-caf1":
keys = ["Control_L", "Alt_L", "F1"]
elif src.get_name() == "details-menu-send-caf2":

View File

@ -1,8 +1,8 @@
Index: virt-manager-0.8.0/src/virt-manager.py.in
Index: virt-manager-0.8.2/src/virt-manager.py.in
===================================================================
--- virt-manager-0.8.0.orig/src/virt-manager.py.in
+++ virt-manager-0.8.0/src/virt-manager.py.in
@@ -196,7 +196,8 @@ def default_uri():
--- virt-manager-0.8.2.orig/src/virt-manager.py.in
+++ virt-manager-0.8.2/src/virt-manager.py.in
@@ -198,7 +198,8 @@ def default_uri():
tryuri = "xen:///"
elif (os.path.exists("/usr/bin/qemu") or
os.path.exists("/usr/bin/qemu-kvm") or

View File

@ -1,11 +1,12 @@
Index: virt-manager-0.8.0/src/virtManager/manager.py
Index: virt-manager-0.8.1/src/virtManager/manager.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/manager.py
+++ virt-manager-0.8.0/src/virtManager/manager.py
@@ -624,6 +624,15 @@ class vmmManager(gobject.GObject):
--- virt-manager-0.8.1.orig/src/virtManager/manager.py
+++ virt-manager-0.8.1/src/virtManager/manager.py
@@ -529,7 +529,15 @@ class vmmManager(gobject.GObject):
vmlist = self.window.get_widget("vm-list")
selection = vmlist.get_selection()
active = selection.get_selected()
-
+ if active[1] == None and active[0] != None:
+ # in some cases on vhost, the connection is not being selected at startup.
+ # when creating new vms, if current_connection() returns None, several
@ -15,11 +16,11 @@ Index: virt-manager-0.8.0/src/virtManager/manager.py
+ if first != None:
+ selection.select_iter( first )
+ active = selection.get_selected()
if active[1] != None:
parent = active[0].iter_parent(active[1])
# return the connection of the currently selected vm, or the
@@ -769,7 +778,14 @@ class vmmManager(gobject.GObject):
return False
treestore, treeiter = active
if treeiter != None:
return treestore[treeiter]
@@ -583,7 +591,14 @@ class vmmManager(gobject.GObject):
self.emit("action-show-connect")
def new_vm(self, ignore=None):
- self.emit("action-show-create", self.current_connection_uri())
@ -32,5 +33,5 @@ Index: virt-manager-0.8.0/src/virtManager/manager.py
+ message_box.run()
+ message_box.destroy()
def delete_vm(self, ignore=None):
conn = self.current_connection()
def show_about(self, src):
self.emit("action-show-about")

View File

@ -1,13 +1,13 @@
Index: virt-manager-0.8.0/src/virtManager/details.py
Index: virt-manager-0.8.2/src/virtManager/console.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/details.py
+++ virt-manager-0.8.0/src/virtManager/details.py
@@ -1308,7 +1308,7 @@ class vmmDetails(gobject.GObject):
argv = ["ssh", "ssh", "-p", sshport]
if username:
argv += ['-l', username]
- argv += [ server, "nc", vncaddr, str(vncport) ]
+ argv += [ server, "netcat", vncaddr, str(vncport) ]
os.execlp(*argv)
os._exit(1)
else:
--- virt-manager-0.8.2.orig/src/virtManager/console.py
+++ virt-manager-0.8.2/src/virtManager/console.py
@@ -506,7 +506,7 @@ class vmmConsolePages(gobject.GObject):
if username:
argv += ['-l', username]
- argv += [ server, "nc", vncaddr, str(vncport) ]
+ argv += [ server, "netcat", vncaddr, str(vncport) ]
logging.debug("Creating SSH tunnel: %s" % argv)

View File

@ -1,7 +1,7 @@
Index: virt-manager-0.8.0/src/virtManager/details.py
Index: virt-manager-0.8.1/src/virtManager/console.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/details.py
+++ virt-manager-0.8.0/src/virtManager/details.py
--- virt-manager-0.8.1.orig/src/virtManager/console.py
+++ virt-manager-0.8.1/src/virtManager/console.py
@@ -205,10 +205,10 @@ class vmmDetails(gobject.GObject):
self.window.get_widget("console-vnc-viewport").add(self.vncViewer)
self.vncViewer.realize()

View File

@ -1,9 +1,9 @@
Index: virt-manager-0.8.0/src/virtManager/engine.py
Index: virt-manager-0.8.2/src/virtManager/engine.py
===================================================================
--- virt-manager-0.8.0.orig/src/virtManager/engine.py
+++ virt-manager-0.8.0/src/virtManager/engine.py
@@ -37,7 +37,8 @@ from virtManager.preferences import vmmP
from virtManager.manager import vmmManager
--- virt-manager-0.8.2.orig/src/virtManager/engine.py
+++ virt-manager-0.8.2/src/virtManager/engine.py
@@ -38,7 +38,8 @@ from virtManager.manager import vmmManag
from virtManager.migrate import vmmMigrateDialog
from virtManager.details import vmmDetails
from virtManager.asyncjob import vmmAsyncJob
-from virtManager.create import vmmCreate
@ -12,7 +12,7 @@ Index: virt-manager-0.8.0/src/virtManager/engine.py
from virtManager.host import vmmHost
from virtManager.error import vmmErrorDialog
from virtManager.systray import vmmSystray
@@ -394,13 +395,24 @@ class vmmEngine(gobject.GObject):
@@ -435,13 +436,24 @@ class vmmEngine(gobject.GObject):
return False
return True
@ -39,4 +39,4 @@ Index: virt-manager-0.8.0/src/virtManager/engine.py
+ message_box.destroy()
def add_connection(self, uri, readOnly=None, autoconnect=False):
conn = vmmConnection(self.get_config(), uri, readOnly,
conn = vmmConnection(self.get_config(), uri, readOnly, self)