Fix Wifi Password prompt in Monterey on legacy wifi

This commit is contained in:
Mykola Grymalyuk
2021-11-19 19:37:17 -07:00
parent 57eb61cb9a
commit 5af6c4ac54
3 changed files with 25 additions and 2 deletions

View File

@@ -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:

View File

@@ -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

View File

@@ -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")