sys_patch.py: Resolve LE cleaning on Web Drivers

Thanks @midi1996 for catching
This commit is contained in:
Mykola Grymalyuk
2024-04-03 15:48:58 -06:00
parent e53ced5b8e
commit a06b1f578e
2 changed files with 9 additions and 7 deletions

View File

@@ -9,6 +9,7 @@
- Move images to `docs/images`
- Payloads:
- Remove redundant/unused files bundled in payloads.dmg
- Resolve unpatching Nvidia Web Drivers failing to clean up `/Library/Extensions`
## 1.4.3
- Update non-Metal Binaries for macOS Sonoma:

View File

@@ -511,15 +511,16 @@ class PatchSysVolume:
for key in oclp_plist_data:
if isinstance(oclp_plist_data[key], (bool, int)):
continue
if "Install" not in oclp_plist_data[key]:
continue
for location in oclp_plist_data[key]["Install"]:
if not location.endswith("Extensions"):
for install_type in ["Install", "Install Non-Root"]:
if install_type not in oclp_plist_data[key]:
continue
for file in oclp_plist_data[key]["Install"][location]:
if not file.endswith(".kext"):
for location in oclp_plist_data[key][install_type]:
if not location.endswith("Extensions"):
continue
self._remove_file("/Library/Extensions", file)
for file in oclp_plist_data[key][install_type][location]:
if not file.endswith(".kext"):
continue
self._remove_file("/Library/Extensions", file)
# Handle situations where users migrated from older OSes with a lot of garbage in /L*/E*
# ex. Nvidia Web Drivers, NetUSB, dosdude1's patches, etc.