summaryrefslogtreecommitdiffstats
path: root/src/utils/uefi.py
diff options
context:
space:
mode:
authorAlejandro Sirgo Rica <asirgo@soleta.eu>2024-03-07 09:46:41 +0100
committerlupoDharkael <izhe@hotmail.es>2024-03-08 12:43:10 +0100
commit7f18485effb300680241bbd84186fdd5c160ec26 (patch)
tree19b1562654245e12b02a6cc287bcac6cd1485b53 /src/utils/uefi.py
parent9970c8e33d7a422e807a23af712236db01284f9a (diff)
utils: improve uefi detection mechanism
Checking the existence /sys/firmware/efi as it might appear sometimes in BIOS installs if the BIOS configuration is not proper. Checking for the EFI partition is the safest method to veryfy the install type.
Diffstat (limited to 'src/utils/uefi.py')
-rw-r--r--src/utils/uefi.py14
1 files changed, 12 insertions, 2 deletions
diff --git a/src/utils/uefi.py b/src/utils/uefi.py
index 753cc0b..67f1354 100644
--- a/src/utils/uefi.py
+++ b/src/utils/uefi.py
@@ -11,6 +11,7 @@ import logging
import os
import shlex
import subprocess
+from src.utils.disk import get_efi_partition
import fdisk
@@ -46,8 +47,17 @@ def _check_efibootmgr_json():
return supported
-def is_uefi_supported():
- return True if os.path.exists("/sys/firmware/efi") else False
+def is_uefi_supported(disknum):
+ is_supported = os.path.exists("/sys/firmware/efi")
+
+ if is_supported:
+ try:
+ get_efi_partition(disknum)
+ except Exception as e:
+ logging.info(e)
+ is_supported = False
+
+ return is_supported
def run_efibootmgr_json():