Skip to content

Commit 5f1e21e

Browse files
committed
Sync PatcherSupportPkg
1 parent 213e161 commit 5f1e21e

File tree

10 files changed

+127
-18
lines changed

10 files changed

+127
-18
lines changed

CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,20 @@
11
# OpenCore Legacy Patcher changelog
22

33
## 2.2.0
4+
- Resolved non-metal accessibility zoom on macOS Sonoma/Sequoia
5+
- Resolved non-metal photos app on macOS Sequoia
6+
- Resolved non-metal Screen Sharing on macOS Sequoia
7+
- Resolved non-metal inverted screenshots on macOS Sequoia
8+
- Improved non-metal beta menubar reliability
9+
- Disabled non-metal broken weather background animations on macOS Sequoia
10+
- Resolved non-metal safari hide distracting items crash on macOS Sequoia
11+
- Resolved non-metal full screen transition on macOS Sonoma/Sequoia
12+
- Resolved T1 Apple Pay on macOS Sequoia
13+
- Resolved T1 TouchID support on macOS Sequoia 15.2
14+
- Resolved iCloud sync problems
15+
- Resolved JavaScriptCore on pre-AVX Macs on macOS Sequoia 15.2/Safari 18.2
16+
- Increment binaries:
17+
- PatcherSupportPkg 1.9.1 - release
418

519
## 2.1.2
620
- Add additional error handling for when building OpenCore errors out

opencore_legacy_patcher/constants.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ class Constants:
1414
def __init__(self) -> None:
1515
# Patcher Versioning
1616
self.patcher_version: str = "2.2.0" # OpenCore-Legacy-Patcher
17-
self.patcher_support_pkg_version: str = "1.8.4" # PatcherSupportPkg
17+
self.patcher_support_pkg_version: str = "1.9.1" # PatcherSupportPkg
1818
self.copyright_date: str = "Copyright © 2020-2024 Dortania"
1919
self.patcher_name: str = "OpenCore Legacy Patcher"
2020

opencore_legacy_patcher/support/validation.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -124,7 +124,7 @@ def _validate_root_patch_files(self, major_kernel: int, minor_kernel: int) -> No
124124
minor_kernel (int): Minor kernel version
125125
"""
126126

127-
patch_type_merge_exempt = ["MechanismPlugins"]
127+
patch_type_merge_exempt = ["MechanismPlugins", "ModulePlugins"]
128128
patch_type_overwrite_exempt = []
129129

130130
patchset = HardwarePatchsetDetection(self.constants, xnu_major=major_kernel, xnu_minor=minor_kernel, validation=True).patches

opencore_legacy_patcher/sys_patch/patchsets/base.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -32,4 +32,5 @@ def __init__(self) -> None:
3232
self.macOS_13_3: float = 22.4
3333
self.macOS_14_1: float = 23.1
3434
self.macOS_14_2: float = 23.2
35-
self.macOS_14_4: float = 23.4
35+
self.macOS_14_4: float = 23.4
36+
self.macOS_15_2: float = 24.2

opencore_legacy_patcher/sys_patch/patchsets/detect.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -44,6 +44,7 @@
4444
pcie_webcam,
4545
t1_security,
4646
usb11,
47+
cpu_missing_avx,
4748
)
4849

4950
from ... import constants
@@ -133,6 +134,7 @@ def __init__(self, constants: constants.Constants,
133134
pcie_webcam.PCIeFaceTimeCamera,
134135
t1_security.T1SecurityChip,
135136
usb11.USB11Controller,
137+
cpu_missing_avx.CPUMissingAVX,
136138
]
137139

138140
self.device_properties = None
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
"""
2+
cpu_missing_avx.py: Legacy CPUs (Lacking AVX) Detection
3+
4+
Note that this system is implemented only for macOS Ventura and
5+
machines not using the legacy/modern wireless patches (AVX patch integrated into WiFi patches).
6+
7+
This commit implemented unconditional AVX usage, thus Safari 18.2 and later will crash:
8+
https://github.com/WebKit/WebKit/commit/c15e741266db8ff9df309ce9971eda1cfd9021cc
9+
"""
10+
11+
from ..base import BaseHardware, HardwareVariant
12+
13+
from ..networking.legacy_wireless import LegacyWireless
14+
from ..networking.modern_wireless import ModernWireless
15+
16+
from ...base import PatchType
17+
18+
from .....constants import Constants
19+
20+
from .....datasets.os_data import os_data
21+
22+
23+
class CPUMissingAVX(BaseHardware):
24+
25+
def __init__(self, xnu_major, xnu_minor, os_build, global_constants: Constants) -> None:
26+
super().__init__(xnu_major, xnu_minor, os_build, global_constants)
27+
28+
29+
def name(self) -> str:
30+
"""
31+
Display name for end users
32+
"""
33+
return f"{self.hardware_variant()}: Legacy CPUs (Lacking AVX)"
34+
35+
36+
def present(self) -> bool:
37+
"""
38+
Targeting CPUs without AVX support
39+
"""
40+
if self._constants.computer.rosetta_active is True:
41+
return False
42+
if "AVX1.0" in self._constants.computer.cpu.flags:
43+
return False
44+
45+
return True
46+
47+
48+
def native_os(self) -> bool:
49+
"""
50+
Only install this patch on macOS Ventura.
51+
This is because we integrated the patch into the WiFi patches which all Macs use in Sonoma+.
52+
"""
53+
if self._xnu_major != os_data.ventura.value:
54+
return True
55+
56+
if LegacyWireless(self._xnu_major, self._xnu_minor, self._os_build, self._constants).present() is True:
57+
return True
58+
if ModernWireless(self._xnu_major, self._xnu_minor, self._os_build, self._constants).present() is True:
59+
return True
60+
61+
return False
62+
63+
64+
def hardware_variant(self) -> HardwareVariant:
65+
"""
66+
Type of hardware variant
67+
"""
68+
return HardwareVariant.MISCELLANEOUS
69+
70+
71+
def patches(self) -> dict:
72+
"""
73+
Patches for Legacy CPUs (Lacking AVX)
74+
"""
75+
if self.native_os() is True:
76+
return {}
77+
78+
return {
79+
"CPU Missing AVX": {
80+
PatchType.MERGE_SYSTEM_VOLUME: {
81+
"/System/Library/PrivateFrameworks": {
82+
"IO80211.framework": "13.7.2-22",
83+
},
84+
}
85+
},
86+
}

opencore_legacy_patcher/sys_patch/patchsets/hardware/misc/t1_security.py

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -81,12 +81,13 @@ def patches(self) -> dict:
8181
},
8282
PatchType.MERGE_SYSTEM_VOLUME: {
8383
"/System/Library/Frameworks/LocalAuthentication.framework/Support": {
84-
"SharedUtils.framework": f"13.6-{self._xnu_major}", # Required for Password Authentication (SharedUtils.framework)
84+
"SharedUtils.framework": f"13.6-{self._xnu_major}" if self._xnu_major < os_data.sequoia else f"13.7.1-{self._xnu_major}", # Required for Password Authentication (SharedUtils.framework)
8585
**({ "MechanismPlugins": "15.0 Beta 4" } if self._xnu_major >= os_data.sequoia else {}), # Required to add a TouchID fingerprint
86+
**({ "ModulePlugins": "15.1" } if self._xnu_float >= self.macOS_15_2 else {}),
8687
},
8788
"/System/Library/PrivateFrameworks": {
8889
"EmbeddedOSInstall.framework": "13.6", # Required for biometrickitd
89-
**({ "NearField.framework": "14.5" } if self._xnu_major >= os_data.sequoia else {}),
90+
**({ "NearField.framework": "14.7.2" } if self._xnu_major >= os_data.sequoia else {}),
9091
},
9192
}
9293
},

opencore_legacy_patcher/sys_patch/patchsets/hardware/networking/legacy_wireless.py

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -118,18 +118,18 @@ def _extended_patch(self) -> dict:
118118
"Legacy Wireless Extended": {
119119
PatchType.OVERWRITE_SYSTEM_VOLUME: {
120120
"/usr/libexec": {
121-
"wps": "12.7.2",
122-
"wifip2pd": "12.7.2",
121+
"wps": "12.7.2" if self._xnu_major < os_data.sequoia else f"12.7.2-{self._xnu_major}",
122+
"wifip2pd": "12.7.2" if self._xnu_major < os_data.sequoia else f"12.7.2-{self._xnu_major}",
123123
},
124124
},
125125
PatchType.MERGE_SYSTEM_VOLUME: {
126126
"/System/Library/Frameworks": {
127-
"CoreWLAN.framework": "12.7.2",
127+
"CoreWLAN.framework": "12.7.2" if self._xnu_major < os_data.sequoia else f"12.7.2-{self._xnu_major}",
128128
},
129129
"/System/Library/PrivateFrameworks": {
130-
"CoreWiFi.framework": "12.7.2",
131-
"IO80211.framework": "12.7.2",
132-
"WiFiPeerToPeer.framework": "12.7.2",
130+
"CoreWiFi.framework": "12.7.2" if self._xnu_major < os_data.sequoia else f"12.7.2-{self._xnu_major}",
131+
"IO80211.framework": "12.7.2" if self._xnu_major < os_data.sequoia else f"12.7.2-{self._xnu_major}",
132+
"WiFiPeerToPeer.framework": "12.7.2" if self._xnu_major < os_data.sequoia else f"12.7.2-{self._xnu_major}",
133133
},
134134
}
135135
},

opencore_legacy_patcher/sys_patch/patchsets/hardware/networking/modern_wireless.py

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -64,21 +64,21 @@ def patches(self) -> dict:
6464
"Modern Wireless": {
6565
PatchType.OVERWRITE_SYSTEM_VOLUME: {
6666
"/usr/libexec": {
67-
"airportd": "13.6.5",
68-
"wifip2pd": "13.6.5",
67+
"airportd": f"13.7.2-{self._xnu_major}",
68+
"wifip2pd": f"13.7.2-{self._xnu_major}",
6969
},
7070
"/System/Library/CoreServices": {
71-
**({ "WiFiAgent.app": "14.5" } if self._xnu_major >= os_data.sequoia else {}),
71+
**({ "WiFiAgent.app": "14.7.2" } if self._xnu_major >= os_data.sequoia else {}),
7272
},
7373
},
7474
PatchType.MERGE_SYSTEM_VOLUME: {
7575
"/System/Library/Frameworks": {
76-
"CoreWLAN.framework": f"13.6.5-{self._xnu_major}",
76+
"CoreWLAN.framework": f"13.7.2-{self._xnu_major}",
7777
},
7878
"/System/Library/PrivateFrameworks": {
79-
"CoreWiFi.framework": f"13.6.5-{self._xnu_major}",
80-
"IO80211.framework": f"13.6.5-{self._xnu_major}",
81-
"WiFiPeerToPeer.framework": f"13.6.5-{self._xnu_major}",
79+
"CoreWiFi.framework": f"13.7.2-{self._xnu_major}",
80+
"IO80211.framework": f"13.7.2-{self._xnu_major}",
81+
"WiFiPeerToPeer.framework": f"13.7.2-{self._xnu_major}",
8282
},
8383
}
8484
},

opencore_legacy_patcher/sys_patch/patchsets/shared_patches/non_metal.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -41,6 +41,11 @@ def patches(self) -> dict:
4141
"/usr/sbin": {
4242
**({ "screencapture": "14.7"} if self._xnu_major >= os_data.sequoia else {}),
4343
},
44+
"/System/Library/CoreServices/RemoteManagement": {
45+
**({"ScreensharingAgent.bundle": "14.7.2"} if self._xnu_major >= os_data.sequoia else {}),
46+
**({"screensharingd.bundle": "14.7.2"} if self._xnu_major >= os_data.sequoia else {}),
47+
**({"SSMenuAgent.app": "14.7.2"} if self._xnu_major >= os_data.sequoia else {}),
48+
},
4449
},
4550
PatchType.REMOVE_SYSTEM_VOLUME: {
4651
"/System/Library/Extensions": [

0 commit comments

Comments
 (0)