Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
path: root/archinstall/lib/hardware.py
diff options
context:
space:
mode:
Diffstat (limited to 'archinstall/lib/hardware.py')
-rw-r--r--archinstall/lib/hardware.py21
1 files changed, 20 insertions, 1 deletions
diff --git a/archinstall/lib/hardware.py b/archinstall/lib/hardware.py
index b95301f9..8d0fb74f 100644
--- a/archinstall/lib/hardware.py
+++ b/archinstall/lib/hardware.py
@@ -1,7 +1,7 @@
import os
from functools import cached_property
from pathlib import Path
-from typing import Optional, Dict
+from typing import Optional, Dict, List
from .general import SysCommand
from .networking import list_interfaces, enrich_iface_types
@@ -169,3 +169,22 @@ class SysInfo:
debug(f"System is not running in a VM: {err}")
return False
+
+ @staticmethod
+ def _loaded_modules() -> List[str]:
+ """
+ Returns loaded kernel modules
+ """
+ modules_path = Path('/proc/modules')
+ modules: List[str] = []
+
+ with modules_path.open() as file:
+ for line in file:
+ module = line.split(maxsplit=1)[0]
+ modules.append(module)
+
+ return modules
+
+ @staticmethod
+ def requires_sof() -> bool:
+ return 'snd_sof' in SysInfo._loaded_modules()