diff --git a/data/sys_patch_dict.py b/data/sys_patch_dict.py index 9df67bf90..9ff720c85 100644 --- a/data/sys_patch_dict.py +++ b/data/sys_patch_dict.py @@ -991,6 +991,52 @@ class SystemPatchDictionary(): }, }, }, + # On macOS Sonoma, the IOSurface ABI changed slightly that we now get corrupted UI elements + # Namely, macOS wallpaper and menubar. + # Temporary workaround for development only, until we can figure out what's going on. + "Sonoma 31001 Extended": { + "Display Name": "", + "OS Support": { + "Minimum OS Support": { + "OS Major": os_data.os_data.sonoma, + "OS Minor": 0 + }, + "Maximum OS Support": { + "OS Major": os_data.os_data.max_os, + "OS Minor": 99 + }, + }, + "Install Reference": { + "/System/Library/Extensions": { + "IOGPUFamily.kext": "13.5 Beta 2", + "IOSurface.kext": "13.5 Beta 2", + }, + }, + }, + # On macOS Sonoma, the IOAcceleratorFamily2 ABI changed slightly that now Intel Metal GPUs will hard lock + # on rendering. + # Specific functions at fault are: + # - IOAccelResource::pageonIfNeeded() + # - IOAccelResource::pageoffIfNeeded() + # Due to these kexts sitting in the main cache, KDK is required to patch them. + "Sonoma Intel Extended": { + "Display Name": "", + "OS Support": { + "Minimum OS Support": { + "OS Major": os_data.os_data.sonoma, + "OS Minor": 0 + }, + "Maximum OS Support": { + "OS Major": os_data.os_data.max_os, + "OS Minor": 99 + }, + }, + "Install Reference": { + "/System/Library/Extensions": { + "IOAcceleratorFamily2.kext": "13.5 Beta 2", + }, + }, + }, }, "Audio": { "Legacy Realtek": { diff --git a/resources/sys_patch/sys_patch_detect.py b/resources/sys_patch/sys_patch_detect.py index f2518a481..e2b5f5d17 100644 --- a/resources/sys_patch/sys_patch_detect.py +++ b/resources/sys_patch/sys_patch_detect.py @@ -579,7 +579,6 @@ class DetectRootPatch: "Settings: Kernel Debug Kit missing": self.missing_kdk if self.constants.detected_os >= os_data.os_data.ventura.value else False, "Validation: Patching Possible": self.verify_patch_allowed(), "Validation: Unpatching Possible": self._verify_unpatch_allowed(), - f"Validation: Unsupported Host OS": True if self.constants.detected_os > os_data.os_data.ventura and not Path("~/.dortania_developer").expanduser().exists() else False, f"Validation: SIP is enabled (Required: {self._check_sip()[2]} or higher)": self.sip_enabled, f"Validation: Currently Booted SIP: ({hex(py_sip_xnu.SipXnu().get_sip_status().value)})": self.sip_enabled, "Validation: SecureBootModel is enabled": self.sbm_enabled, diff --git a/resources/sys_patch/sys_patch_generate.py b/resources/sys_patch/sys_patch_generate.py index ebb0f5c89..2cdba11d3 100644 --- a/resources/sys_patch/sys_patch_generate.py +++ b/resources/sys_patch/sys_patch_generate.py @@ -64,6 +64,7 @@ class GenerateRootPatchSets: required_patches.update({"Big Sur OpenCL": all_hardware_patchset["Graphics"]["Big Sur OpenCL"]}) required_patches.update({"WebKit Monterey Common": all_hardware_patchset["Graphics"]["WebKit Monterey Common"]}) required_patches.update({"Intel Ivy Bridge": all_hardware_patchset["Graphics"]["Intel Ivy Bridge"]}) + required_patches.update({"Sonoma Intel Extended": all_hardware_patchset["Graphics"]["Sonoma Intel Extended"]}) if self.hardware_details["Graphics: Intel Haswell"] is True: required_patches.update({"Metal 3802 Common": all_hardware_patchset["Graphics"]["Metal 3802 Common"]}) @@ -71,16 +72,19 @@ class GenerateRootPatchSets: required_patches.update({"Monterey GVA": all_hardware_patchset["Graphics"]["Monterey GVA"]}) required_patches.update({"Monterey OpenCL": all_hardware_patchset["Graphics"]["Monterey OpenCL"]}) required_patches.update({"Intel Haswell": all_hardware_patchset["Graphics"]["Intel Haswell"]}) + required_patches.update({"Sonoma Intel Extended": all_hardware_patchset["Graphics"]["Sonoma Intel Extended"]}) if self.hardware_details["Graphics: Intel Broadwell"] is True: required_patches.update({"Monterey GVA": all_hardware_patchset["Graphics"]["Monterey GVA"]}) required_patches.update({"Monterey OpenCL": all_hardware_patchset["Graphics"]["Monterey OpenCL"]}) required_patches.update({"Intel Broadwell": all_hardware_patchset["Graphics"]["Intel Broadwell"]}) + required_patches.update({"Sonoma Intel Extended": all_hardware_patchset["Graphics"]["Sonoma Intel Extended"]}) if self.hardware_details["Graphics: Intel Skylake"] is True: required_patches.update({"Monterey GVA": all_hardware_patchset["Graphics"]["Monterey GVA"]}) required_patches.update({"Monterey OpenCL": all_hardware_patchset["Graphics"]["Monterey OpenCL"]}) required_patches.update({"Intel Skylake": all_hardware_patchset["Graphics"]["Intel Skylake"]}) + required_patches.update({"Sonoma Intel Extended": all_hardware_patchset["Graphics"]["Sonoma Intel Extended"]}) if self.hardware_details["Graphics: Nvidia Tesla"] is True: required_patches.update({"Non-Metal Common": all_hardware_patchset["Graphics"]["Non-Metal Common"]}) @@ -137,6 +141,7 @@ class GenerateRootPatchSets: required_patches.update({"Revert GVA Downgrade": all_hardware_patchset["Graphics"]["Revert GVA Downgrade"]}) if "AVX2" not in self.constants.computer.cpu.leafs: required_patches.update({"AMD OpenCL": all_hardware_patchset["Graphics"]["AMD OpenCL"]}) + required_patches.update({"Sonoma 31001 Extended": all_hardware_patchset["Graphics"]["Sonoma 31001 Extended"]}) if self.hardware_details["Graphics: AMD Legacy Vega"] is True: required_patches.update({"Monterey GVA": all_hardware_patchset["Graphics"]["Monterey GVA"]})