summaryrefslogtreecommitdiffstats
path: root/src/utils
diff options
context:
space:
mode:
Diffstat (limited to 'src/utils')
-rw-r--r--src/utils/boot.py2
-rw-r--r--src/utils/uefi.py14
2 files changed, 13 insertions, 3 deletions
diff --git a/src/utils/boot.py b/src/utils/boot.py
index cd66357..4de20b9 100644
--- a/src/utils/boot.py
+++ b/src/utils/boot.py
@@ -69,7 +69,7 @@ def _boot_uefi_linux(disk, part, mountpoint):
umount(esp_mountpoint)
def boot_os_at(disk, part):
- if not is_uefi_supported():
+ if not is_uefi_supported(disk):
raise NotImplementedError('BIOS booting is not implemented yet')
device = get_partition_device(disk, part)
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():