Send patches - preferably formatted by git format-patch - to patches at archlinux32 dot org.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--archinstall/lib/hardware.py8
-rw-r--r--examples/guided.py8
2 files changed, 13 insertions, 3 deletions
diff --git a/archinstall/lib/hardware.py b/archinstall/lib/hardware.py
index 6f05f620..180d0b75 100644
--- a/archinstall/lib/hardware.py
+++ b/archinstall/lib/hardware.py
@@ -119,12 +119,12 @@ def cpu_model() -> Optional[str]:
def sys_vendor() -> Optional[str]:
with open(f"/sys/devices/virtual/dmi/id/sys_vendor") as vendor:
- return vendor.read()
+ return vendor.read().strip()
def product_name() -> Optional[str]:
with open(f"/sys/devices/virtual/dmi/id/product_name") as product:
- return product.read()
+ return product.read().strip()
def mem_info():
@@ -144,6 +144,10 @@ def mem_total() -> Optional[str]:
return mem_info()['MemTotal']
+def virtualization() -> Optional[str]:
+ return str(SysCommand("systemd-detect-virt")).strip('\r\n')
+
+
def is_vm() -> bool:
try:
# systemd-detect-virt issues a non-zero exit code if it is not on a virtual machine
diff --git a/examples/guided.py b/examples/guided.py
index 42429370..a842e6ff 100644
--- a/examples/guided.py
+++ b/examples/guided.py
@@ -5,7 +5,7 @@ import time
import archinstall
from archinstall.lib.general import run_custom_user_commands
-from archinstall.lib.hardware import has_uefi, AVAILABLE_GFX_DRIVERS
+from archinstall.lib.hardware import *
from archinstall.lib.networking import check_mirror_reachable
from archinstall.lib.profiles import Profile
@@ -16,6 +16,12 @@ if os.getuid() != 0:
print("Archinstall requires root privileges to run. See --help for more.")
exit(1)
+# Log various information about hardware before starting the installation. This might assist in troubleshooting
+archinstall.log(f"Hardware model detected: {archinstall.sys_vendor()} {archinstall.product_name()}; UEFI mode: {archinstall.has_uefi()}", level=logging.DEBUG)
+archinstall.log(f"Processor model detected: {archinstall.cpu_model()}", level=logging.DEBUG)
+archinstall.log(f"Memory statistics: {archinstall.mem_available()} available out of {archinstall.mem_total()} total installed", level=logging.DEBUG)
+archinstall.log(f"Virtualization detected: {archinstall.virtualization()}; is VM: {archinstall.is_vm()}", level=logging.DEBUG)
+
# For support reasons, we'll log the disk layout pre installation to match against post-installation layout
archinstall.log(f"Disk states before installing: {archinstall.disk_layouts()}", level=logging.DEBUG)