Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.gitignore1
-rw-r--r--archinstall/lib/hardware.py28
2 files changed, 28 insertions, 1 deletions
diff --git a/.gitignore b/.gitignore
index aebb999d..dc75bed8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -20,3 +20,4 @@ SAFETY_LOCK
**/**.network
**/**.target
**/**.qcow2
+**/test.py
diff --git a/archinstall/lib/hardware.py b/archinstall/lib/hardware.py
index c9483919..93eb560f 100644
--- a/archinstall/lib/hardware.py
+++ b/archinstall/lib/hardware.py
@@ -1,4 +1,5 @@
import os
+from .general import sys_command
from .networking import list_interfaces, enrichIfaceTypes
def hasWifi():
@@ -7,4 +8,29 @@ def hasWifi():
return False
def hasUEFI():
- return os.path.isdir('/sys/firmware/efi') \ No newline at end of file
+ return os.path.isdir('/sys/firmware/efi')
+
+def graphicsDevices():
+ cards = {}
+ for line in sys_command(f"lspci"):
+ if b' VGA ' in line:
+ _, identifier = line.split(b': ',1)
+ cards[identifier.strip().lower().decode('UTF-8')] = line
+ return cards
+
+def hasNvidiaGraphics():
+ if [x for x in graphicsDevices() if 'nvidia' in x]:
+ return True
+ return False
+
+def hasAmdGraphics():
+ if [x for x in graphicsDevices() if 'amd' in x]:
+ return True
+ return False
+
+def hasIntelGraphics():
+ if [x for x in graphicsDevices() if 'intel' in x]:
+ return True
+ return False
+
+# TODO: Add more identifiers \ No newline at end of file