Sign Up
Log In
Log In
or
Sign Up
Places
All Projects
Status Monitor
Collapse sidebar
SUSE:SLE-12-SP1:Update
virt-manager.12547
virtman-default-guest-from-host-os.patch
Overview
Repositories
Revisions
Requests
Users
Attributes
Meta
File virtman-default-guest-from-host-os.patch of Package virt-manager.12547
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-1.2.1/virtManager/create.py =================================================================== --- virt-manager-1.2.1.orig/virtManager/create.py +++ virt-manager-1.2.1/virtManager/create.py @@ -21,6 +21,8 @@ import logging import threading import time +import sys +import os from gi.repository import GObject from gi.repository import Gtk @@ -843,7 +845,7 @@ class vmmCreate(vmmGObjectUI): preferred = self.config.preferred_distros variants = virtinst.OSDB.list_os(typename=_type, sortpref=preferred) supportl = virtinst.OSDB.list_os(typename=_type, sortpref=preferred, - only_supported=True) + only_supported=False) for v in variants: supported = v in supportl or v.name == "generic" @@ -1174,6 +1176,53 @@ class vmmCreate(vmmGObjectUI): return self.start_detection(forward=forward) + def _lookup_host_os(self): + if sys.platform == 'linux2': + if os.path.exists('/etc/issue'): + f = open('/etc/issue') + lines = f.readlines() + f.close() + for line in lines: + if "openSUSE " in line: + parts = line.split(' ') + if len(parts) > 2 and len(parts[3]) <= 4: + os_ver = "opensuse" + parts[3] + return 'linux', os_ver + return 'linux', 'opensuse13.2' + if "SUSE Linux Enterprise Server 12" in line: + return 'linux', 'sles12' + if "SUSE Linux Enterprise Desktop 12" in line: + return 'linux', 'sled12' + if "SUSE Linux Enterprise Server 11" in line: + return 'linux', 'sles11' + if "SUSE Linux Enterprise Desktop 11" in line: + return 'linux', 'sled11' + return None, None + + def detect_host_os(self): + box = self.widget('install-os-type') + if box.get_active() <= 0: + os_type, os_variant = self._lookup_host_os() + if os_type is None: + return + model = box.get_model() + index = 0 + for row in model: + if row[0] == 'linux': + box.set_active(index) + break + index += 1 + if os_variant is None: + return + box = self.widget('install-os-version') + model = box.get_model() + index = 0 + for row in model: + if row[0] == os_variant: + box.set_active(index) + break + index += 1 + def toggle_detect_os(self, src): dodetect = src.get_active() @@ -1186,6 +1235,8 @@ class vmmCreate(vmmGObjectUI): self.widget("install-os-version-entry").set_text("") self.mediaDetected = False self.detect_media_os() + else: + self.detect_host_os() def _selected_os_row(self): return uiutil.get_list_selected_row(self.widget("install-os-type"))
Locations
Projects
Search
Status Monitor
Help
OpenBuildService.org
Documentation
API Documentation
Code of Conduct
Contact
Support
@OBShq
Terms
openSUSE Build Service is sponsored by
The Open Build Service is an
openSUSE project
.
Sign Up
Log In
Places
Places
All Projects
Status Monitor