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:
authorAnton Hvornum <anton@hvornum.se>2021-01-25 23:32:10 +0100
committerGitHub <noreply@github.com>2021-01-25 23:32:10 +0100
commit190ec7ad42bc59b7238b77dc4d7f3128e2f1eb78 (patch)
treecb8cf3e77dd59bd3a3dc3eb630934d34fef2376f /archinstall/lib/hardware.py
parent0c92710c56eb29b43e08e8623b2c893e1ee5e2dc (diff)
parent3db8e3abbc8133ecb1875465f5cb3a1ea8557e86 (diff)
Merge pull request #96 from Torxed/hardware-n-wifi
Added wifi-configuration support (basic) by copying existing `iwd` configurations. Also added some hardware detection helpers such as `UEFI` detection and wifi hardware as well as detection for three common graphic cards.
Diffstat (limited to 'archinstall/lib/hardware.py')
-rw-r--r--archinstall/lib/hardware.py36
1 files changed, 36 insertions, 0 deletions
diff --git a/archinstall/lib/hardware.py b/archinstall/lib/hardware.py
new file mode 100644
index 00000000..93eb560f
--- /dev/null
+++ b/archinstall/lib/hardware.py
@@ -0,0 +1,36 @@
+import os
+from .general import sys_command
+from .networking import list_interfaces, enrichIfaceTypes
+
+def hasWifi():
+ if 'WIRELESS' in enrichIfaceTypes(list_interfaces().values()).values():
+ return True
+ return False
+
+def hasUEFI():
+ 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