Skip to content
This repository was archived by the owner on Jan 22, 2026. It is now read-only.

Commit e09620e

Browse files
committed
Fix os type for older libvirt Xen driver
1 parent a077402 commit e09620e

3 files changed

Lines changed: 28 additions & 9 deletions

File tree

virtinst/DistroManager.py

Lines changed: 14 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -220,10 +220,15 @@ def _get_osblob(self, install, hvm, arch = None, loader = None):
220220
if install or hvm:
221221
osblob = "<os>\n"
222222

223+
os_type = self.os_type
224+
# Hack for older libvirt Xen driver
225+
if os_type == "xen" and self.type == "xen":
226+
os_type = "linux"
227+
223228
if arch:
224-
osblob += " <type arch='%s'>%s</type>\n" % (arch, self.os_type)
229+
osblob += " <type arch='%s'>%s</type>\n" % (arch, os_type)
225230
else:
226-
osblob += " <type>%s</type>\n" % self.os_type
231+
osblob += " <type>%s</type>\n" % os_type
227232

228233
if install and self.install["kernel"]:
229234
osblob += " <kernel>%s</kernel>\n" % util.xml_escape(self.install["kernel"])
@@ -272,10 +277,15 @@ def _get_osblob(self, install, hvm, arch = None, loader = None):
272277
if install or hvm:
273278
osblob = "<os>\n"
274279

280+
os_type = self.os_type
281+
# Hack for older libvirt Xen driver
282+
if os_type == "xen" and self.type == "xen":
283+
os_type = "linux"
284+
275285
if arch:
276-
osblob += " <type arch='%s'>%s</type>\n" % (arch, self.os_type)
286+
osblob += " <type arch='%s'>%s</type>\n" % (arch, os_type)
277287
else:
278-
osblob += " <type>%s</type>\n" % self.os_type
288+
osblob += " <type>%s</type>\n" % os_type
279289

280290
if loader:
281291
osblob += " <loader>%s</loader>\n" % loader

virtinst/ImageManager.py

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -109,14 +109,18 @@ def _get_osblob(self, install, hvm, arch = None, loader = None):
109109
osblob = "<os>\n"
110110

111111
if hvm:
112-
type = "hvm"
112+
os_type = "hvm"
113113
else:
114-
type = "linux"
114+
# Hack for older libvirt Xen driver
115+
if self.type == "xen":
116+
os_type = "linux"
117+
else:
118+
os_type = "xen"
115119

116120
if arch:
117-
osblob += " <type arch='%s'>%s</type>\n" % (arch, type)
121+
osblob += " <type arch='%s'>%s</type>\n" % (arch, os_type)
118122
else:
119-
osblob += " <type>%s</type>\n" % type
123+
osblob += " <type>%s</type>\n" % os_type
120124

121125
if self.boot_caps.kernel:
122126
osblob += " <kernel>%s</kernel>\n" % util.xml_escape(self._abspath(self.boot_caps.kernel))

virtinst/LiveCDInstaller.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,8 +58,13 @@ def _get_osblob(self, install, hvm, arch = None, loader = None):
5858
if install:
5959
return None
6060

61+
os_type = self.os_type
62+
# Hack for older libvirt Xen driver
63+
if os_type == "xen" and self.type == "xen":
64+
os_type = "linux"
65+
6166
osblob = "<os>\n"
62-
osblob += " <type>%s</type>\n" % self.os_type
67+
osblob += " <type>%s</type>\n" % os_type
6368
if loader:
6469
osblob += " <loader>%s</loader>\n" % loader
6570
osblob += " <boot dev='cdrom'/>\n"

0 commit comments

Comments
 (0)