OBS-URL: https://build.opensuse.org/package/show/Virtualization/virt-manager?expand=0&rev=747
41 lines
1.7 KiB
Diff
41 lines
1.7 KiB
Diff
References: jsc#PED-14636 - Impl: UEFI as default for new VMs
|
|
This patch depends on an upstream libosinfo patch.
|
|
|
|
Index: virt-manager-5.1.0/virtinst/osdict.py
|
|
===================================================================
|
|
--- virt-manager-5.1.0.orig/virtinst/osdict.py
|
|
+++ virt-manager-5.1.0/virtinst/osdict.py
|
|
@@ -445,21 +445,27 @@ class _OsVariant:
|
|
|
|
def _supports_firmware_type(self, name, arch, default):
|
|
firmwares = self._get_firmware_list()
|
|
+ is_supported = default
|
|
+ is_recommended = False
|
|
|
|
for firmware in firmwares: # pragma: no cover
|
|
if firmware.get_architecture() != arch:
|
|
continue
|
|
if firmware.get_firmware_type() == name:
|
|
- return firmware.is_supported()
|
|
+ is_supported = firmware.is_supported()
|
|
+ if hasattr(firmware, "is_recommended"):
|
|
+ is_recommended = firmware.is_recommended()
|
|
|
|
- return default
|
|
+ return (is_supported, is_recommended)
|
|
|
|
def requires_firmware_efi(self, arch):
|
|
ret = False
|
|
try:
|
|
- supports_efi = self._supports_firmware_type("efi", arch, False)
|
|
- supports_bios = self._supports_firmware_type("bios", arch, True)
|
|
- ret = supports_efi and not supports_bios
|
|
+ supports_efi, recommended_efi = self._supports_firmware_type("efi", arch, False)
|
|
+ supports_bios, recommended_bios = self._supports_firmware_type("bios", arch, True)
|
|
+ if supports_efi:
|
|
+ if not supports_bios or recommended_efi:
|
|
+ ret = True
|
|
except Exception: # pragma: no cover
|
|
log.debug("Error checking osinfo firmware support", exc_info=True)
|
|
|