diff --git a/CHANGELOG.md b/CHANGELOG.md index adacc29ff..be92c2f8e 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,7 +11,7 @@ - OpenCore 0.7.5 - release - BrcmPatchRAM 2.6.1 - release - WhateverGreen 1.5.5 - release - - PatcherSupportPkg 0.2.0 - release + - PatcherSupportPkg 0.2.1 - release - FeatureUnlock 1.0.4 - rolling (4161389) - Fix AirPlay to Mac on macOS 12.1 - Add macOS InstallAssistant downloader to TUI @@ -24,6 +24,8 @@ - Applicable for MacBook4,1/5,2 - Affected Device IDs: 0x8300, 0x8501, 0x8503 - Credit to parrotgeek1 for LegacyUSBVideoSupport +- Fix Wifi Password prompt in Monterey on legacy wifi + - Applicable for Atheros, BCM94328, BCM94322 ## 0.3.1 - Increment Binaries: diff --git a/resources/constants.py b/resources/constants.py index 79160a68b..52f860d8e 100644 --- a/resources/constants.py +++ b/resources/constants.py @@ -15,7 +15,7 @@ class Constants: def __init__(self): # Patcher Versioning self.patcher_version = "0.3.2" # OpenCore-Legacy-Patcher - self.patcher_support_pkg_version = "0.2.0" # PatcherSupportPkg + self.patcher_support_pkg_version = "0.2.1" # PatcherSupportPkg self.url_patcher_support_pkg = "https://github.com/dortania/PatcherSupportPkg/releases/download/" self.nightly_url_patcher_support_pkg = "https://nightly.link/dortania/PatcherSupportPkg/workflows/build/master/" @@ -514,6 +514,14 @@ class Constants: @property def payload_apple_libexec_path(self): return self.payload_apple_usr_path / Path("libexec") + + @property + def payload_apple_private_path(self): + return self.payload_apple_root_path / Path("private") + + @property + def payload_apple_etc_path(self): + return self.payload_apple_private_path / Path("etc") @property def payload_apple_frameworks_path(self): @@ -627,6 +635,10 @@ class Constants: @property def legacy_wifi_libexec(self): return self.payload_apple_libexec_path / Path("Legacy-Wifi") + + @property + def legacy_wifi_etc(self): + return self.payload_apple_etc_path / Path("Legacy-Wifi") sbm_values = [ "j137ap", # iMacPro1,1 diff --git a/resources/sys_patch.py b/resources/sys_patch.py index cb6fedc87..23f75531a 100644 --- a/resources/sys_patch.py +++ b/resources/sys_patch.py @@ -49,8 +49,10 @@ class PatchSysVolume: if self.constants.detected_os > os_data.os_data.catalina: # Big Sur and newer use APFS snapshots self.mount_location = "/System/Volumes/Update/mnt1" + self.mount_location_data = "" else: self.mount_location = "" + self.mount_location_data = "" self.mount_coreservices = f"{self.mount_location}/System/Library/CoreServices" self.mount_extensions = f"{self.mount_location}/System/Library/Extensions" self.mount_frameworks = f"{self.mount_location}/System/Library/Frameworks" @@ -58,6 +60,7 @@ class PatchSysVolume: self.mount_private_frameworks = f"{self.mount_location}/System/Library/PrivateFrameworks" self.mount_libexec = f"{self.mount_location}/usr/libexec" self.mount_extensions_mux = f"{self.mount_location}/System/Library/Extensions/AppleGraphicsControl.kext/Contents/PlugIns/" + self.mount_private_etc = f"{self.mount_location}/private/etc" def find_mount_root_vol(self, patch): self.root_mount_path = utilities.get_disk_path() @@ -319,6 +322,12 @@ set million colour before rebooting""" utilities.process_status(utilities.elevated(["chmod", "755", f"{self.mount_libexec}/airportd"], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)) utilities.process_status(utilities.elevated(["chown", "root:wheel", f"{self.mount_libexec}/airportd"], stdout=subprocess.PIPE, stderr=subprocess.STDOUT)) + # dylib patch to resolve password crash prompt + # Note requires ASentientBot's SkyLight to function + # Thus Metal machines do not benefit from this patch, however install anyways as harmless + print("- Merging Wireless private/etc") + utilities.elevated(["rsync", "-r", "-i", "-a", f"{self.constants.legacy_wifi_etc}/", self.mount_private_etc], stdout=subprocess.PIPE) + def add_legacy_mux_patch(self): self.delete_old_binaries(sys_patch_data.DeleteDemux) print("- Merging Legacy Mux Kext patches")