Merge pull request #461 from archlinux/torxed-fix-459

Unlink existing ucodes when strapping them in.
This commit is contained in:
Anton Hvornum 2021-05-17 22:22:14 +00:00 committed by GitHub
commit ba939188cf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 10 additions and 5 deletions

View File

@ -98,11 +98,12 @@ def has_intel_graphics() -> bool:
def cpu_vendor() -> Optional[str]:
cpu_info = json.loads(subprocess.check_output("lscpu -J", shell=True).decode('utf-8'))['lscpu']
cpu_info_raw = SysCommand("lscpu -J")
cpu_info = json.loads(b"".join(cpu_info_raw).decode('UTF-8'))['lscpu']
for info in cpu_info:
if info.get('field', None):
if info.get('field', None) == "Vendor ID:":
return info.get('data', None)
if info.get('field', None) == "Vendor ID:":
return info.get('data', None)
return None

View File

@ -332,10 +332,14 @@ class Installer:
vendor = cpu_vendor()
if vendor == "AuthenticAMD":
self.base_packages.append("amd-ucode")
if (ucode := pathlib.Path(f"{self.target}/boot/amd-ucode.img")).exists():
ucode.unlink()
elif vendor == "GenuineIntel":
self.base_packages.append("intel-ucode")
if (ucode := pathlib.Path(f"{self.target}/boot/intel-ucode.img")).exists():
ucode.unlink()
else:
self.log("Unknown cpu vendor not installing ucode")
self.log(f"Unknown CPU vendor '{vendor}' detected. Archinstall won't install any ucode.", level=logging.DEBUG)
self.pacstrap(self.base_packages)
self.helper_flags['base-strapped'] = True