Compare commits

...

690 Commits
0.4.7 ... 0.6.4

Author SHA1 Message Date
Mykola Grymalyuk
eec8f3e797 Resolve F16C reporting errors 2023-04-13 11:16:53 -06:00
Mykola Grymalyuk
5011b2c3f1 Avoid 3.10 type hinting 2023-04-13 07:54:44 -06:00
Mykola Grymalyuk
980142c6ad Merge branch 'main' of https://github.com/dortania/OpenCore-Legacy-Patcher 2023-04-13 07:25:54 -06:00
Mykola Grymalyuk
1fe710f4a3 device_probe.py: Extra error handling 2023-04-13 07:25:45 -06:00
Mykola Grymalyuk
472c494fd4 Merge pull request #1047 from dortania/post-analytics
Implement back-end for Crash and Analytics Reporting
2023-04-12 16:43:27 -06:00
Mykola Grymalyuk
ccbb5dafe5 Add PRIVACY.md 2023-04-12 16:31:04 -06:00
Mykola Grymalyuk
939d3a36a4 Adjust wording 2023-04-11 19:58:25 -06:00
Mykola Grymalyuk
4c19f51a04 Analytics: allow opt-out 2023-04-11 19:08:52 -06:00
Mykola Grymalyuk
b34eaccd35 main.py: move threading 2023-04-11 13:54:45 -06:00
Mykola Grymalyuk
52211def51 Test build of analytics 2023-04-11 13:28:33 -06:00
Mykola Grymalyuk
62f619da99 network_handler.py: Add post wrapping 2023-04-11 08:42:21 -06:00
Mykola Grymalyuk
2496fa9245 Increment build 2023-04-11 08:40:19 -06:00
Mykola Grymalyuk
7a07a16be8 defaults.py Don’t set new menubar as default 2023-04-10 21:50:28 -06:00
Mykola Grymalyuk
2e4517a3c0 sys_patch_helpers.py: Fix src pathing 2023-04-07 13:33:02 -06:00
Mykola Grymalyuk
1ce6f79240 sys_patch_helpers.py: Add Metal libary patching
Resolves many 3rd party apps crashing on 13.3 when trying to invoke Metal directly
2023-04-07 12:59:18 -06:00
Mykola Grymalyuk
96e96464f2 sys_patch.py: Add docstrings and typing suggestions 2023-04-07 12:57:05 -06:00
Mykola Grymalyuk
fcd0c7cd21 build: Add additional Navi patches 2023-04-06 11:58:35 -06:00
Mykola Grymalyuk
a93fbf7122 misc.py: Rework RE arg handling 2023-04-03 14:57:59 -06:00
Mykola Grymalyuk
c0825ed24e misc.py: Set f16c argument 2023-04-03 13:51:00 -06:00
Mykola Grymalyuk
0f95d6a1bb defaults.py: Don’t grab RE’s CPU name 2023-04-03 13:48:16 -06:00
Mykola Grymalyuk
9439c39437 Sync binaries 2023-04-03 11:06:13 -06:00
Mykola Grymalyuk
38025d7f2a Remove unneeded init.py 2023-04-03 10:48:24 -06:00
Mykola Grymalyuk
23f2291bfa integrity_verification.py: rework into OOP 2023-04-02 11:39:55 -06:00
Mykola Grymalyuk
b0c05b914b sys_patch: Modularize patch set generation
Move generate_patchset() to dedicated module
2023-04-02 10:22:27 -06:00
Mykola Grymalyuk
b83cd8191b network_handler.py: Implement get() wrapper 2023-03-31 21:22:13 -06:00
Mykola Grymalyuk
8512aad33d Merge pull request #1043 from dortania/rework-build-libary
build module: Enhance readability
2023-03-31 20:53:52 -06:00
Mykola Grymalyuk
c04c313b2c misc.py: Removed unneeded rmtree invocation 2023-03-30 12:10:34 -06:00
Mykola Grymalyuk
841bcb72c3 build: Add docstrings for classes 2023-03-30 11:46:44 -06:00
Mykola Grymalyuk
6aba47bcfb Resolve Docs building 2023-03-30 11:24:08 -06:00
Mykola Grymalyuk
81495ee192 Merge pull request #1030 from ThatStella7922/main
README grammar and wording tweaks, add hw donation
2023-03-30 08:01:56 -06:00
Mykola Grymalyuk
1bf3e0e2a4 Merge branch 'main' into rework-build-libary 2023-03-29 15:46:47 -06:00
Mykola Grymalyuk
bb6ef48e95 misc.py: Fix CPUFriend handling 2023-03-28 21:03:42 -06:00
Mykola Grymalyuk
06350355ff build: Add docstrings to functions 2023-03-28 20:57:17 -06:00
Mykola Grymalyuk
9677c52c1c Sync CHANGELOG 2023-03-28 20:15:07 -06:00
Mykola Grymalyuk
bc4cc33f2f Merge pull request #1042 from Jazzzny/main
Enhancement - Replace hardcoded WxPython GUI font with .AppleSystemUIFont
2023-03-28 20:04:53 -06:00
Jazzzny
b2f1a6375a Update gui_main.py 2023-03-28 21:11:42 -04:00
Jazzzny
3c7f496bc8 Update gui_help.py 2023-03-28 21:11:06 -04:00
Mykola Grymalyuk
9b984e68af build: Implement pythonic formatting 2023-03-28 16:34:51 -06:00
Mykola Grymalyuk
54c661751a Sync changelog 2023-03-28 14:18:33 -06:00
Mykola Grymalyuk
2c0d67ce61 kdk_handler.py: Remove redundant str comparison 2023-03-28 14:17:19 -06:00
Mykola Grymalyuk
d153747b58 Merge pull request #1035 from Ausdauersportler/main
iMac9,1 MXM3 AMD GCN support
2023-03-28 14:16:37 -06:00
Mykola Grymalyuk
74fc3a7890 Merge branch 'main' into main 2023-03-28 14:15:56 -06:00
Mykola Grymalyuk
c6ce71d589 defaults: enable beta menubar 2023-03-28 09:33:08 -06:00
Mykola Grymalyuk
513f20bbb1 kdk_handler.py: Fix cleanup logic 2023-03-28 09:25:52 -06:00
Mykola Grymalyuk
afae4f8eda Sync PatcherSupportPkg 2023-03-28 09:06:40 -06:00
Mykola Grymalyuk
af4d063f6e Increment Build 2023-03-27 12:19:34 -06:00
Mykola Grymalyuk
29d3e98b81 kdk_handler.py: Fix pkg detection 2023-03-25 10:36:23 -06:00
Mykola Grymalyuk
462fff9d66 Sync PatcherSupportPkg 2023-03-23 19:31:47 -06:00
Mykola Grymalyuk
158f6f2da9 sys_patch_detect.py: Avoid reverting Metal patch on 3802 2023-03-23 18:21:46 -06:00
Mykola Grymalyuk
a57c29d35e gui_main.py: Add tip to rebuild OC for root patch errors 2023-03-23 16:19:23 -06:00
Mykola Grymalyuk
bc18bdce03 Sync CHANGELOG 2023-03-23 11:21:59 -06:00
Mykola Grymalyuk
ef9b5bb64a Merge pull request #1034 from dortania/3802-experiment
sys_patch: Add experimental Metal patches for 3802-based GPUs
2023-03-23 11:18:46 -06:00
Mykola Grymalyuk
c225b77400 utilities.py: Fix volume size detection 2023-03-23 10:03:42 -06:00
Mykola Grymalyuk
b69cf09556 Merge branch 'main' into 3802-experiment 2023-03-22 09:38:59 -06:00
Mykola Grymalyuk
85203aef5b Sync CHANGELOG 2023-03-22 09:36:50 -06:00
Mykola Grymalyuk
ec80afdd17 sys_patch_dict.py: Rework into class 2023-03-21 09:45:45 -06:00
Mykola Grymalyuk
e288e27b7b gui_main.py: Clean chunk check 2023-03-20 06:43:02 -06:00
Mykola Grymalyuk
961c9c7a68 sys_patch_detect.py: Only install ColorSync patch on iGPU-primary Macs 2023-03-19 11:35:14 -06:00
Mykola Grymalyuk
55abbab145 amfi_detect.py: Adjust indentation 2023-03-19 11:24:24 -06:00
Mykola Grymalyuk
2986aea152 macos_installer_handler.py: Add Seed type information 2023-03-18 16:26:18 -06:00
Mykola Grymalyuk
0135d6cccf Resources: Add return typing suggestion 2023-03-17 20:04:46 -06:00
Mykola Grymalyuk
fd2f58da84 constants.py: Remove unused variables 2023-03-16 19:48:38 -06:00
ThatStella7922
f0ebd235a9 Update documentation
Based off DhinakG's suggestions
2023-03-15 11:09:51 -06:00
ThatStella7922
93c1d3c4aa Updated Windows.md by Jazzny 2023-03-15 10:59:19 -06:00
Mykola Grymalyuk
efb1d81231 Merge branch 'main' into 3802-experiment 2023-03-15 10:34:59 -06:00
Mykola Grymalyuk
7fe0432a47 constants.py: Reorganize variables 2023-03-15 10:33:26 -06:00
Mykola Grymalyuk
88fa7a4b7a arguments.py: Remove unused variable 2023-03-15 10:31:35 -06:00
Mykola Grymalyuk
e0e74ee494 Merge branch 'main' into 3802-experiment 2023-03-14 21:08:31 -06:00
Mykola Grymalyuk
e579199246 constants.py: Sync OpenCorePkg version 2023-03-14 21:07:02 -06:00
Mykola Grymalyuk
1108d248e5 Sync binaries 2023-03-14 20:59:36 -06:00
Mykola Grymalyuk
6013eaffe9 Implement Kext Updating script 2023-03-14 20:57:57 -06:00
Ausdauersportler
8661fa339c iMac9,1 MXM3 AMD GCN support 2023-03-15 00:42:20 +01:00
Mykola Grymalyuk
ea96c546ca build: Avoid overwritting DeviceProperties on MXM iMacs 2023-03-14 08:57:10 -06:00
Mykola Grymalyuk
531fc8ab18 build: Don’t set IOName property for iMac12,x iGPUs 2023-03-13 11:54:11 -06:00
Mykola Grymalyuk
35a6f5183c Merge branch 'main' into 3802-experiment 2023-03-13 11:50:55 -06:00
Mykola Grymalyuk
afd1b5d2a7 device_probe.py: Fix missing pci check 2023-03-13 11:44:05 -06:00
Mykola Grymalyuk
d5ffa9a8cf device_probe.py: Fix string assumption for IOName 2023-03-13 11:42:36 -06:00
Mykola Grymalyuk
0c68618ddf sys_patch: Add experimental 3802 patches
Not final, highly fragile patches
2023-03-13 11:29:27 -06:00
Mykola Grymalyuk
ea80d41ff6 build: Better display AMFI status 2023-03-12 14:43:39 -06:00
Mykola Grymalyuk
483819caef defaults.py: Fix whitespace 2023-03-12 12:06:30 -06:00
Mykola Grymalyuk
0ca8ccd3dc gui_main.py: Adjust installer button label 2023-03-12 12:06:05 -06:00
Mykola Grymalyuk
a1f1da25b5 Sync FeatureUnlock 2023-03-12 10:36:32 -06:00
Mykola Grymalyuk
e105d6077e Sync changelog 2023-03-11 20:49:09 -07:00
Mykola Grymalyuk
eedd4d771a Merge pull request #1033 from dortania/pullrequests/Ausdauersportler/main
Ausdauersportler: Add RX5500XT and Lexa MXM support (reworked)
2023-03-11 20:39:06 -07:00
Mykola Grymalyuk
3f2aadc016 Merge branch 'main' into pullrequests/Ausdauersportler/main 2023-03-11 20:37:38 -07:00
Mykola Grymalyuk
e980054a5d device_probe.py: Add unspoof variable 2023-03-11 13:48:11 -07:00
Mykola Grymalyuk
a89a7740ca Sync Changelog 2023-03-11 12:33:12 -07:00
Mykola Grymalyuk
2767f35fc5 sys_patch_dict.py: Add reference for 3802 GPUs 2023-03-11 12:31:39 -07:00
Mykola Grymalyuk
48cf258366 Merge pull request #1031 from dortania/va-test
sys_patch.py: Add VA driver patch for Polaris and Vega
2023-03-11 12:26:31 -07:00
Mykola Grymalyuk
8e7706fb12 build: Fix off model crash 2023-03-11 11:32:41 -07:00
Mykola Grymalyuk
2eb6542931 payloads: Switch to .patch WEG 2023-03-11 11:28:03 -07:00
Mykola Grymalyuk
e66e851933 build: Skip string conversion for check 2023-03-11 11:12:19 -07:00
Mykola Grymalyuk
9bfcf78ff9 detect: Set new class for Lexa GPUs
As these cards require spoofing, OCLP needs to treat them differently. Primarily due to root volume patching checking against the same class, and prevent users from believing the root patches failed (when their card’s actually unsupported by their Device ID)
2023-03-11 11:11:24 -07:00
Mykola Grymalyuk
8d3ab82ddd payloads: Add Navi patch file 2023-03-11 10:55:22 -07:00
Mykola Grymalyuk
7b7f68453a macos_installer_handler.py: Reworked from installer.py module 2023-03-11 08:41:45 -07:00
Mykola Grymalyuk
adec8ebd05 sys_patch.py: Add VA driver patch 2023-03-09 08:54:05 -07:00
Mykola Grymalyuk
ca24aa6ce5 Sync PatcherSupportPkg
Back from surgery, OCLP development should start to slowly ramp up again!
2023-03-07 17:44:05 -07:00
ThatStella7922
8db8e0b5da docs grammar/wording pass, update WINDOWS.md by @Jazzzny 2023-02-26 14:20:47 -07:00
ThatStella7922
954d3b9166 SOURCE grammar and wording tweaks 2023-02-26 12:53:11 -07:00
ThatStella7922
672129dbfc README grammar and wording tweaks, add hw donation 2023-02-26 12:32:59 -07:00
Mykola Grymalyuk
e8f44e4eaa Merge pull request #1029 from dortania/oop-rework
Rework additional core libraries
2023-02-10 15:33:58 -07:00
Mykola Grymalyuk
6a3023301a sys_patch_helpers.py: Add docstring comments 2023-02-10 13:23:40 -07:00
Mykola Grymalyuk
44369e2faa kdk_handler.py: Add todo for file size check 2023-02-10 12:24:27 -07:00
Mykola Grymalyuk
0d7186236e gui_main.py: Supress defaults stderr 2023-02-10 12:14:42 -07:00
Mykola Grymalyuk
8806d29a35 defaulkts.py: Fix type suggestion 2023-02-10 12:14:06 -07:00
Mykola Grymalyuk
12b7cf7fcd amfi_detect.py: Resolve regression 2023-02-10 12:02:23 -07:00
Mykola Grymalyuk
0f7f079dd8 sys_patch_detect.py: Avoid nested if statements 2023-02-10 08:25:02 -07:00
Mykola Grymalyuk
040edfdd25 sys_patch_detect.py: Adjust return 2023-02-10 08:04:52 -07:00
Mykola Grymalyuk
2e7afae29b Adjust private function names 2023-02-10 08:02:50 -07:00
Mykola Grymalyuk
b81899092b Docs: Remove TUI references 2023-02-10 07:24:34 -07:00
Mykola Grymalyuk
418a966081 updates.py: Adjust private function names 2023-02-09 20:05:52 -07:00
Mykola Grymalyuk
520c9c315c validation.py: Add cleanup to build validation 2023-02-09 19:43:48 -07:00
Mykola Grymalyuk
cffc463bde Toolchain: Implement whitelist system for cleaning 2023-02-09 19:28:15 -07:00
Mykola Grymalyuk
2f7965440c Remove unused run.py 2023-02-09 19:27:25 -07:00
Mykola Grymalyuk
56efd9743d Docs: Fix .command name 2023-02-09 18:31:30 -07:00
Mykola Grymalyuk
b5b4d84bc9 Toolchain: Use docstrings 2023-02-09 18:29:35 -07:00
Mykola Grymalyuk
594f6dcbe5 Toolchain: Remove TUI building argument 2023-02-09 18:16:12 -07:00
Mykola Grymalyuk
c5eb52ac5e amfi_detect.py: Use enum 2023-02-09 18:09:02 -07:00
Mykola Grymalyuk
e83e260db7 Fix Constants type suggestion 2023-02-09 17:59:53 -07:00
Mykola Grymalyuk
66a5f5a9ad Set type suggestions for global Constants() usage 2023-02-09 17:40:41 -07:00
Mykola Grymalyuk
4154b01d40 commit_info.py: Rework into object oriented 2023-02-09 17:04:20 -07:00
Mykola Grymalyuk
925003e3f1 reroute_payloads.py: rework into object oriented 2023-02-09 16:46:12 -07:00
Mykola Grymalyuk
d40d6607b3 CI: Remove TUI 2023-02-09 16:40:25 -07:00
Mykola Grymalyuk
3aadfe6002 arguments.py: Rework into object oriented 2023-02-09 16:27:18 -07:00
Mykola Grymalyuk
d305515c28 Remove TUI modules 2023-02-09 16:26:47 -07:00
Mykola Grymalyuk
48471ce4d3 validation.py: Rework into object oriented 2023-02-09 16:25:45 -07:00
Mykola Grymalyuk
f9c7273106 os_probe.py: Rework to be Object-oriented
Minimize repetitive calls to platform.uname()
2023-02-09 12:44:26 -07:00
Mykola Grymalyuk
e076260a1a Sync docstrings comments 2023-02-09 12:36:16 -07:00
Mykola Grymalyuk
0671828c9b logging_handler.py: Fix file permissions when root 2023-02-09 11:04:15 -07:00
Wolf Dieter Brandt
61e5ff1c83 adding RX5500XT and Lexa MXM support 2023-02-09 18:15:17 +01:00
Mykola Grymalyuk
3b5e4f10f6 kdk_handler.py: Use pkg receipts for KDK validation 2023-02-09 08:35:21 -07:00
Mykola Grymalyuk
dd06932fe5 amfi_detect.py: Fix comment 2023-02-08 15:45:51 -07:00
Mykola Grymalyuk
7ee631859d amfi_detect.py: Adjust to be more Object-oriented 2023-02-08 15:42:12 -07:00
Mykola Grymalyuk
7be168bf14 kdk_handler.py: display KDK backup name during creation 2023-02-08 15:07:33 -07:00
Mykola Grymalyuk
6b86e64b5b kdk_handler.py: Keep invocation 2023-02-08 14:47:25 -07:00
Mykola Grymalyuk
4ae494db86 kdk_handler.py: Limit number of removal invocations 2023-02-08 14:44:09 -07:00
Mykola Grymalyuk
c5f72c10ff kdk_handler.py: Clear out backup KDKs when unused 2023-02-08 14:31:54 -07:00
Mykola Grymalyuk
971a2b0d02 kdk_handler.py: Set KDK installed accordingly 2023-02-08 13:56:56 -07:00
Mykola Grymalyuk
8b18c59d8a kdk_handler.py: Avoid double unmount 2023-02-08 13:15:19 -07:00
Mykola Grymalyuk
0d38bc0edf kdk_handler.py: Add extra error handling to failed KDK install 2023-02-08 12:23:25 -07:00
Mykola Grymalyuk
4c4cacf114 gui_main.py: Add indicator for longer kdk_handler init 2023-02-08 11:22:25 -07:00
Mykola Grymalyuk
dd1afd77e4 sys_patch_detect.py: Switch to kdk_handler for KDK detection 2023-02-08 11:19:19 -07:00
Mykola Grymalyuk
2a91b2a11c kdk_handler.py: Support passive mode 2023-02-08 11:15:57 -07:00
Mykola Grymalyuk
b3ed101ad9 kdk_handler.py: Add support for KDK installation 2023-02-08 11:07:17 -07:00
Mykola Grymalyuk
7b33e77947 kdk_handler.py: Cache API result 2023-02-08 10:34:45 -07:00
Mykola Grymalyuk
ea35eaca2e gui_main.py: Ensure passed values are integers 2023-02-07 22:38:02 -07:00
Mykola Grymalyuk
b5c613242f kdk_handler.py: Write KDK info to plist 2023-02-07 17:29:29 -07:00
Mykola Grymalyuk
2eb98b6327 kdk_handler.py: Fix OS comparison check 2023-02-07 14:33:13 -07:00
Mykola Grymalyuk
6629e9dcef kdk_handler.py: Merge similar functions 2023-02-07 14:25:13 -07:00
Mykola Grymalyuk
6c441e835c data: remove unused dylib_data.py
File was superseded with sys_patch_dict.py’s introduction
2023-02-07 09:04:49 -07:00
Mykola Grymalyuk
fe8a2d253a gui_main.py: Add support for KDK chainloading 2023-02-06 21:28:28 -07:00
Mykola Grymalyuk
68af20d2fa kdk_handler.py: Implement additional OS check 2023-02-06 20:10:39 -07:00
Mykola Grymalyuk
625da17f1e Merge pull request #1028 from dortania/ci-keys
CI: Rework build system
2023-02-06 18:44:51 -05:00
Mykola Grymalyuk
118d635264 CI: Fix bundle ID 2023-02-06 14:33:52 -07:00
Mykola Grymalyuk
bd471df48f CI: Fix Password export 2023-02-06 14:21:53 -07:00
Mykola Grymalyuk
d70daaf5a4 CI: Expose enviroment variables 2023-02-06 14:09:36 -07:00
Mykola Grymalyuk
7fc9f3af7c CI: Use repository secrets for signing 2023-02-06 14:03:25 -07:00
Mykola Grymalyuk
6f4c110318 gui_main.py: Adjust import formatting 2023-02-06 09:05:43 -07:00
Mykola Grymalyuk
dfdb5b4c68 gui_main.py: Avoid nested logic 2023-02-06 09:02:46 -07:00
Mykola Grymalyuk
5ac3343205 gui_main.py: Set expected install size as variable 2023-02-06 08:56:59 -07:00
Mykola Grymalyuk
42dddfdccf kdk_handler.py: Publish expected file size 2023-02-06 08:55:22 -07:00
Mykola Grymalyuk
ace93b8a3e network_handler.py: Match formatting and check download path space 2023-02-06 08:54:55 -07:00
Mykola Grymalyuk
6081ec0d73 kdk_handler.py: Allow path overriding 2023-02-06 08:16:35 -07:00
Mykola Grymalyuk
fc85789f86 Merge pull request #1027 from dortania/py10
Upgrade internal build system dependancies
2023-02-05 22:42:30 -05:00
Mykola Grymalyuk
52fbe23a16 Upgrade internal build system dependancies 2023-02-05 20:11:47 -07:00
Mykola Grymalyuk
99968dbb57 Merge pull request #1024 from dortania/logging
Rework core libraries
2023-02-05 20:19:42 -05:00
Mykola Grymalyuk
b141452005 logging_handler.py: Set StreamHandler to Standard Out 2023-02-05 16:31:49 -07:00
Mykola Grymalyuk
b97a3bc4d8 Docs: Update for Ventura 2023-02-05 11:17:45 -07:00
Mykola Grymalyuk
f4ed623c76 logging_handler.py: Add additional 2023-02-05 11:17:09 -07:00
Mykola Grymalyuk
ad9ae96c7f logging_handler.py: adjust formatting 2023-02-05 10:35:14 -07:00
Mykola Grymalyuk
bece5d4b3b logging_handler.py: Avoid file size check if missing 2023-02-05 09:58:00 -07:00
Mykola Grymalyuk
f915199b92 logging init: Move to dedicated module 2023-02-05 09:41:41 -07:00
Mykola Grymalyuk
cba9d1e224 main.py: Add traceback logging in spawned threads 2023-02-04 21:52:24 -07:00
Mykola Grymalyuk
4782ccdab1 network_handler.py: Adjust time elasped format 2023-02-04 17:43:30 -07:00
Mykola Grymalyuk
1ab2409176 sys_patch.py: Fix PSP handling 2023-02-04 17:37:32 -07:00
Mykola Grymalyuk
3d8bae1142 gui_main.py: Remove double download invocation 2023-02-04 17:29:55 -07:00
Mykola Grymalyuk
baf25319d7 main.py: Don’t double print traceback 2023-02-04 17:25:00 -07:00
Mykola Grymalyuk
43ef3e18ec main.py: Route traceback after logging init 2023-02-04 16:32:25 -07:00
Mykola Grymalyuk
08710bc47b network_handler: Add link validation 2023-02-04 14:46:25 -07:00
Mykola Grymalyuk
6c294902c2 Finish migration to network_handler.py usage 2023-02-04 13:11:18 -07:00
Mykola Grymalyuk
976f14eeb3 logging: Adjust file handling path 2023-02-04 10:26:36 -07:00
Mykola Grymalyuk
eb1e29f95b network_handler.py: Ensure stop() holds thread 2023-02-03 21:18:13 -07:00
Mykola Grymalyuk
4d89c220bf network_handler.py: Set 10s timeout 2023-02-03 09:08:41 -07:00
Mykola Grymalyuk
571f297906 network_handler.py: Use enums for status 2023-02-03 08:45:37 -07:00
Mykola Grymalyuk
7bf4fd0150 network_handler.py: Set file path in Object init 2023-02-03 08:33:47 -07:00
Mykola Grymalyuk
d4f42c8b32 network_handler.py: Add docstrings 2023-02-03 06:59:29 -07:00
Mykola Grymalyuk
664972fd2e network_handler.py: Adjust naming scheme to PEP 2023-02-02 22:13:00 -07:00
Mykola Grymalyuk
f33cc2d5bb Adjust remaining functions to logging 2023-02-02 17:52:46 -07:00
Mykola Grymalyuk
da45a964cb Merge branch 'main' into logging
# Conflicts:
#	resources/kdk_handler.py
#	resources/utilities.py
2023-02-02 17:41:59 -07:00
Mykola Grymalyuk
6c555db237 Sync changelog 2023-02-02 11:15:09 -07:00
Mykola Grymalyuk
c093f400a6 Merge pull request #1026 from dortania/kdk-updates
kdk_handler.py: Switch to KdkSupportPkg as primary source
2023-02-02 13:13:35 -05:00
Mykola Grymalyuk
92d57cb6d5 Merge pull request #1025 from dortania/update-models
Update models table for OCLP 0.6.x
2023-02-02 12:51:33 -05:00
Mykola Grymalyuk
3a6f87c9c8 network_handler.py: Initial implementation 2023-02-02 10:50:29 -07:00
Dhinak G
08a67e5d37 Remove Apple Developer portal downloading
It's dead, Jim
2023-01-30 17:14:29 -05:00
Dhinak G
6ed55ff462 Verify checksum while downloading instead of after
Should speed up checksum calculations by not looping over the file twice
2023-01-30 17:10:17 -05:00
Dhinak G
ef912277b6 Remove repetitive OHCI/usb info 2023-01-28 17:18:20 -05:00
Dhinak G
cef860dbf1 Minor changes
- MacBook4,1 is unsupported
- OCHI -> OHCI
- Update Xserve section
2023-01-28 17:16:14 -05:00
Michael
e5b89e9c6b fix missing asterisk 2023-01-28 17:16:14 -05:00
Michael
7ebdb83af7 OCLP 0.6.x updates 2023-01-28 17:16:14 -05:00
Mykola Grymalyuk
da2fc5c4c3 Merge branch 'main' into logging 2023-01-26 11:32:09 -07:00
Mykola Grymalyuk
94cfeabdfd sys_patch: Add unpatch validation 2023-01-26 11:29:09 -07:00
Mykola Grymalyuk
e7727adcc6 logging: Use generic saving 2023-01-26 10:33:01 -07:00
Mykola Grymalyuk
8becb554fc Implement logging library 2023-01-25 20:50:53 -07:00
Mykola Grymalyuk
97024361cd sys_patch: Add ColorSync downgrade 2023-01-25 12:15:06 -07:00
Mykola Grymalyuk
71ca6731fa Increment Build 2023-01-23 21:12:10 -07:00
Mykola Grymalyuk
ac2147684a Sync changelog 2023-01-23 20:49:29 -07:00
Mykola Grymalyuk
e16b6e4c22 build: Adjust for MacBookPro13,3 2023-01-23 20:08:48 -07:00
Mykola Grymalyuk
e84f3425d0 build: Adjust KDKlessWorkaround usage 2023-01-23 19:44:43 -07:00
Mykola Grymalyuk
e1b99b9084 Merge branch 'main' of https://github.com/dortania/OpenCore-Legacy-Patcher 2023-01-23 19:05:36 -07:00
Mykola Grymalyuk
b3775d35a5 Increment KDKless 2023-01-23 19:05:16 -07:00
Mykola Grymalyuk
498042ccb3 Increment build 2023-01-23 19:00:13 -07:00
Mykola Grymalyuk
7d4ee0d110 Merge pull request #1020 from dortania/054-docs
Docs: Sync 0.6.0 changes
2023-01-23 17:12:33 -07:00
Mykola Grymalyuk
cff1aaf3f4 Update support image 2023-01-23 12:47:31 -07:00
Mykola Grymalyuk
a776535e72 Adjust for 060 release 2023-01-23 11:43:15 -07:00
Mykola Grymalyuk
f7dea97289 Remove Navi mention 2023-01-23 11:30:36 -07:00
Mykola Grymalyuk
37e99ba49c sys_patch_detect.py: Avoid conflicting AMD patch installation 2023-01-23 11:24:03 -07:00
Mykola Grymalyuk
288b827616 sys_patch_helpers.py: Verify stderr before printing 2023-01-23 09:52:24 -07:00
Mykola Grymalyuk
e8a6f45329 sys_patch_helpers.py: Print errors 2023-01-23 09:31:36 -07:00
Mykola Grymalyuk
a1ffadf582 sys_patch_helpers.py: Unmount KDK drive on error 2023-01-23 09:30:52 -07:00
Mykola Grymalyuk
a6c4890d0f Merge branch 'main' of https://github.com/dortania/OpenCore-Legacy-Patcher 2023-01-23 09:20:50 -07:00
Mykola Grymalyuk
00b47aef47 Revert "sys_patch_helpers.py: Work around Read only error"
This reverts commit 92f85feda5.
2023-01-23 09:20:00 -07:00
Mykola Grymalyuk
92f85feda5 sys_patch_helpers.py: Work around Read only error 2023-01-23 09:19:20 -07:00
Mykola Grymalyuk
21778e8d92 sys_patch_helpers.py: Work around Read only error 2023-01-23 08:36:38 -07:00
Mykola Grymalyuk
57d2597c86 Sync PatcherSupportPkg 2023-01-23 06:51:14 -07:00
Mykola Grymalyuk
20baf8c417 Sync PatcherSupportPkg 2023-01-22 21:13:30 -07:00
Mykola Grymalyuk
99a145e7cb build: Add APFS Trim configuration 2023-01-20 17:10:59 -07:00
Mykola Grymalyuk
28b9948b45 Docs: Add more legacy Mac info 2023-01-20 16:22:46 -07:00
Mykola Grymalyuk
79f4ba17d9 gui_main.py: Adjust prompt 2023-01-20 16:03:02 -07:00
Mykola Grymalyuk
659d842023 Adjust versioning to 0.6.0, match changes 2023-01-19 12:39:42 -07:00
Mykola Grymalyuk
037ff0f2c3 sys_patch_helpers.py: Avoid saying RSRRepair
RSRRepair is used for syncing Boot and System Kernel Collections, users misintepreted this as supporting RSR on all models
2023-01-16 13:51:08 -07:00
Mykola Grymalyuk
fac1298a6e Merge pull request #1022 from ParaDoX1994/patch-1
Add note about building for other devices
2023-01-15 11:04:42 -07:00
neon ball
273910b69a Add note about building for other devices 2023-01-12 18:36:31 +02:00
Mykola Grymalyuk
1974cd6341 sys_patch_detect: prioritize USB 3.0 support 2023-01-12 08:52:39 -07:00
Mykola Grymalyuk
bef429b758 CHANGELOG: Adjust wording 2023-01-09 23:05:12 -07:00
Mykola Grymalyuk
bebbf646e1 sys_patch: Implement RSR handling for root patched Macs
Ref: https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1019
2023-01-09 23:03:18 -07:00
Mykola Grymalyuk
6504442d4f build: Implement NVGOP_GK.efi
Thanks @jazzzny
2023-01-09 21:35:33 -07:00
Mykola Grymalyuk
ff0012e214 CHANGELOG: Adjust BT note 2023-01-07 20:04:50 -07:00
Mykola Grymalyuk
91e7ff40e4 sys_patch: Add non-Metal support to Ventura 2023-01-07 08:44:37 -07:00
Mykola Grymalyuk
07d09d8eb2 sys_patch: Save HID CS when patching USB 1.1 2023-01-07 08:16:20 -07:00
Mykola Grymalyuk
b95ab91b43 sys_patch: Fix Patch set dictionary 2023-01-06 22:06:10 -07:00
Mykola Grymalyuk
4cc9e414d2 sys_patch: Add basic USB 1.1 support
Ref: https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021
2023-01-06 22:02:47 -07:00
Mykola Grymalyuk
a5d56147c0 sys_patch_detect: Ensure wifi patches are installed on subsequent runs 2023-01-06 15:19:58 -07:00
Mykola Grymalyuk
3e8963c372 Build: Add mini validation during GUI build 2023-01-06 14:33:40 -07:00
Mykola Grymalyuk
f4d6ef1741 Sync binaries to release variants 2023-01-02 09:23:14 -07:00
Mykola Grymalyuk
abbb9c1c66 Constants: Increment Copyright date 2023-01-01 19:10:35 -07:00
Mykola Grymalyuk
22b66e0a87 Sync CPUFriend 2022-12-30 12:55:14 -07:00
Mykola Grymalyuk
fd6c3d818d defaults: Work-around Control Center crashing with legacy Wifi 2022-12-30 11:45:10 -07:00
Mykola Grymalyuk
5fa0636f5c Docs: Sync Wifi and Vega changes 2022-12-27 20:48:18 -07:00
Mykola Grymalyuk
cefdd1df66 build: Add missing import 2022-12-27 18:24:12 -07:00
Mykola Grymalyuk
fcda4a26bf build: Expand KDKLWA usage to pre-AVX2 with native AMD 2022-12-27 18:05:39 -07:00
Mykola Grymalyuk
60f6482d43 sys_patch_detect: Ensure Network error halts patching 2022-12-26 11:44:23 -07:00
Mykola Grymalyuk
c316e6f5fe kdk_handler: Add extra network error handling 2022-12-25 21:58:13 -07:00
Mykola Grymalyuk
d30972e5ef generate.command: Support downloading latest release 2022-12-25 16:31:30 -07:00
Mykola Grymalyuk
5206028478 Constants: Fix CI validation 2022-12-25 15:08:25 -07:00
Mykola Grymalyuk
00043087c4 sys_patch_auto: Prompt on mismatched versions 2022-12-25 15:03:49 -07:00
Mykola Grymalyuk
d7ecdf3871 sys_patch: Adjust more indenation logic 2022-12-25 13:58:08 -07:00
Mykola Grymalyuk
6fe7ed614c auto_patcher: Adjust indentation logic 2022-12-25 13:44:14 -07:00
Mykola Grymalyuk
09f77490a5 Payloads: Remove unused gfxutil binary 2022-12-25 12:25:24 -07:00
Mykola Grymalyuk
1cc6d50474 OpenCore: Refactor generation script
Ensures utilities shipped with OpenCorePkg are always in-sync
2022-12-25 12:21:51 -07:00
Mykola Grymalyuk
549cb9fc9a build: Resolve SATA enumeration 2022-12-24 18:05:57 -07:00
Mykola Grymalyuk
a8ef84acf9 build: Add proper TS0128F/256F detection 2022-12-24 12:13:19 -07:00
Mykola Grymalyuk
f55d3ba5b2 build: Add backend comments for UHCI/OHCI 2022-12-23 10:38:11 -07:00
Mykola Grymalyuk
e46a5213a6 GUI: Move files into resources folder 2022-12-23 10:28:20 -07:00
Mykola Grymalyuk
2331aeb6d9 sys_patch: Add AMD Vega support for pre-AVX2.0 2022-12-22 20:14:10 -07:00
Mykola Grymalyuk
1277fef735 sys_patch: Clean LE properly 2022-12-21 21:15:06 -07:00
Mykola Grymalyuk
5fdde346cf sys_patch: Allow only wifi patches when no KDK/internet available 2022-12-19 17:01:06 -07:00
Mykola Grymalyuk
907ce75295 sys_patch: Implement legacy wifi support for Ventura 2022-12-19 14:13:17 -07:00
Mykola Grymalyuk
915d38eab1 build: Call NVMe fix function 2022-12-17 11:33:17 -07:00
Mykola Grymalyuk
8678200385 Increment Build 2022-12-17 11:30:01 -07:00
Mykola Grymalyuk
66e1cbcf1e build: Re-enable AuxKC patch 2022-12-16 21:35:26 -07:00
Mykola Grymalyuk
e1568d9391 build: Temporarily revert AuxKC patch
Current implementation has a reboot bug
2022-12-16 21:12:47 -07:00
Mykola Grymalyuk
89069a85f0 config: Adjust min kernel 2022-12-16 19:47:39 -07:00
Mykola Grymalyuk
5b2917cb03 build: Expand VMM fix for other model 2022-12-16 19:28:23 -07:00
Mykola Grymalyuk
73afdc37c3 os_probe: Add RSR handling 2022-12-16 19:06:07 -07:00
Mykola Grymalyuk
f71fcf6f58 build: Implement KDKlessWorkaround 2022-12-16 18:18:15 -07:00
Mykola Grymalyuk
6169d593c5 build: Ensure vars are properly deleted 2022-12-16 10:07:57 -07:00
Mykola Grymalyuk
f463e505d4 Sync binaries 2022-12-16 09:33:37 -07:00
Mykola Grymalyuk
6c6ae6145d kdk_handler: Fix fallback logic 2022-12-15 20:41:08 -07:00
Mykola Grymalyuk
90310fcaca build: Fix Content Caching argument 2022-12-15 19:57:08 -07:00
Mykola Grymalyuk
27d1ee3b02 build: Set HibernateSkipsPicker 2022-12-14 19:05:47 -07:00
Mykola Grymalyuk
2fba826f80 Sync binaries 2022-12-14 19:04:29 -07:00
Mykola Grymalyuk
1f63dffd3f SIP: Move to py_sip_xnu module 2022-12-12 10:26:40 -07:00
Mykola Grymalyuk
f4f4f3e1f3 sys_patch_auto: Fix KeyError 2022-12-11 22:53:05 -07:00
Mykola Grymalyuk
4ffe6bed9b build: Remove Force Web Drivers 2022-12-11 17:28:37 -07:00
Mykola Grymalyuk
d3878e34a2 build: Only set beta arg with AppleALC usage 2022-12-11 17:01:37 -07:00
Mykola Grymalyuk
501b228b6b Update README with hardware donation credits 2022-12-10 10:01:52 -07:00
Mykola Grymalyuk
c707047530 build: Revert AppleALC update 2022-12-10 09:52:41 -07:00
Mykola Grymalyuk
1c24cfee24 Remove OSBundleRequired in AICPUPM
Resolves Safe Mode panic
2022-12-03 18:02:43 -07:00
Mykola Grymalyuk
ebd605d459 Docs: Adjust Vega comment 2022-12-01 09:20:59 -07:00
Mykola Grymalyuk
f4cb0bed68 build: Add FixPCIeLinkRate.efi 2022-12-01 08:02:46 -07:00
Mykola Grymalyuk
0a395b47ae Increment Build 2022-11-25 08:56:27 -07:00
Mykola Grymalyuk
1627f264a2 gui_main.py: Revert app mover
Further testing required
2022-11-21 08:22:40 -07:00
Mykola Grymalyuk
23c0759d7a GUI: Replace app after checking updates 2022-11-20 18:13:19 -07:00
Mykola Grymalyuk
26154d4fdf gui_main: Check updates when not relocating 2022-11-20 17:06:28 -07:00
Mykola Grymalyuk
c99805bee5 gui_main: Move OCLP app to Support folder 2022-11-20 16:36:57 -07:00
Mykola Grymalyuk
d284dc6248 sys_patch_auto: Clean up class 2022-11-20 16:29:10 -07:00
Mykola Grymalyuk
70402af1d7 Sync binaries 2022-11-19 12:09:40 -07:00
Mykola Grymalyuk
b94a1bf9cf Merge pull request #1018 from dortania/skip-hibernation
build: Skip OC Picker on Hibernation Wake
2022-11-18 15:22:10 -07:00
Mykola Grymalyuk
a0a740de4f build: Avoid writing ShowPicker when unneeded 2022-11-17 19:45:42 -07:00
Mykola Grymalyuk
8876823ae8 Sync ocvalidate 2022-11-17 15:24:03 -07:00
Mykola Grymalyuk
94b91b2918 build: Fix Picker configuration 2022-11-17 15:18:56 -07:00
Mykola Grymalyuk
1bdc3ef5ff build: Skip OC Picker on Hibernation Wake 2022-11-17 14:36:09 -07:00
Mykola Grymalyuk
be7b0e6492 Merge pull request #1017 from ParaDoX1994/main
Add Ventura section to Universal Control guide
2022-11-17 14:15:08 -07:00
neon ball
30e2a4471c Add Ventura UC related images 2022-11-17 23:06:44 +02:00
neon ball
41188edf39 Add Ventura section to Universal Control guide 2022-11-17 23:06:08 +02:00
Mykola Grymalyuk
9296350e58 kdk_handler.py: Adjust to new repository 2022-11-17 10:21:38 -07:00
Mykola Grymalyuk
f06d7f2179 kdk_handler.py: Download KDKs from mirror
Reference: https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1016
2022-11-16 16:26:10 -07:00
Mykola Grymalyuk
d5d2a7fbfe Update README 2022-11-16 16:25:42 -07:00
Mykola Grymalyuk
a672183880 build: Add AMD GOP injection 2022-11-13 20:38:49 -07:00
Mykola Grymalyuk
9b7074bde5 Merge pull request #1015 from dortania/refactor-build
Modularize build library
2022-11-13 20:28:08 -07:00
Mykola Grymalyuk
7543606a1e Nest sys_patch libraries 2022-11-13 19:25:55 -07:00
Mykola Grymalyuk
48de65dd30 graphics_audio: avoid excessive try except usage 2022-11-13 19:12:49 -07:00
Mykola Grymalyuk
e7e2b0dcad graphics_audio.py: Refactor 2022-11-13 18:55:35 -07:00
Mykola Grymalyuk
8b43727b0b Add header to restructured build family files 2022-11-13 18:33:52 -07:00
Mykola Grymalyuk
9c28d77826 build: Adjust save handling 2022-11-13 17:38:39 -07:00
Mykola Grymalyuk
93c1983a3f support.py: Refactor 2022-11-13 17:25:57 -07:00
Mykola Grymalyuk
7fcef65837 storage.py: Refactor 2022-11-13 17:15:11 -07:00
Mykola Grymalyuk
93a1d0fb11 smbios.py: Drop HW_BID rerouting 2022-11-13 17:08:22 -07:00
Mykola Grymalyuk
94b33f6029 firmware.py: Refactor 2022-11-13 16:56:56 -07:00
Mykola Grymalyuk
1d2a7e080b bluetooth.py: Refactor 2022-11-13 16:31:08 -07:00
Mykola Grymalyuk
b448a4b6dd wireless.py: Refactor 2022-11-13 16:21:46 -07:00
Mykola Grymalyuk
235a9985f4 wired.py: Refactor 2022-11-13 15:59:23 -07:00
Mykola Grymalyuk
34aa75422a Merge branch 'main' into refactor-build 2022-11-13 15:35:25 -07:00
Mykola Grymalyuk
3a56f13480 gui: publish version in UI header 2022-11-13 15:35:00 -07:00
Mykola Grymalyuk
50d730b45a build: fix invocation 2022-11-13 15:25:56 -07:00
Mykola Grymalyuk
2e5a61b7fd Adjust function levels 2022-11-13 09:45:36 -07:00
Mykola Grymalyuk
7c43cf0901 Remove unused imports 2022-11-12 20:18:37 -07:00
Mykola Grymalyuk
956d0cffcc Further modularize 2022-11-12 20:15:43 -07:00
Mykola Grymalyuk
f8e91feff4 build: Enable Audio and fix invocation 2022-11-12 17:29:37 -07:00
Mykola Grymalyuk
55061bc86d build.py: Use pythonic class name 2022-11-12 17:14:39 -07:00
Mykola Grymalyuk
21c40277bb Modularize build.py 2022-11-12 17:10:40 -07:00
Mykola Grymalyuk
4b05b12a0a sys_patch_dict: Remove unneeded process
Was previously in-place for early Monterey betas, no longer required since AppleGVA was resolved
2022-11-08 09:35:10 -07:00
Mykola Grymalyuk
168930919e Merge pull request #1014 from dortania/news-widget
Remove unsupported News Widget on Ivy bridge and Haswell iGPUs
2022-11-07 21:27:48 -07:00
Mykola Grymalyuk
423a6bc255 sys_patch_helpers: Print as ASCII 2022-11-07 20:49:48 -07:00
Mykola Grymalyuk
d8f9c60f0c sys_patch: Remove News Widget programatically 2022-11-07 18:37:35 -07:00
Mykola Grymalyuk
0ef84c1751 Sync binaries 2022-11-07 10:12:51 -07:00
Mykola Grymalyuk
286df94c87 Merge pull request #1013 from dortania/disable-mediad
Work-around mediaanalysisd crashing
2022-11-06 08:23:42 -07:00
Mykola Grymalyuk
ca11b2741e Sybc binaries 2022-11-05 21:33:21 -06:00
Mykola Grymalyuk
ed9f9a05b5 build.py: Set arch logic 2022-11-04 14:48:29 -06:00
Mykola Grymalyuk
82b4cc26d5 Sync binaries 2022-11-04 09:27:05 -06:00
Mykola Grymalyuk
003a40a039 Sync binary 2022-11-03 19:19:47 -06:00
Mykola Grymalyuk
a1cc9a399a Adjust EFIDisabler 2022-11-03 15:40:26 -06:00
Mykola Grymalyuk
1659f8c25e Test new RestrictEvents build 2022-11-03 15:24:14 -06:00
Mykola Grymalyuk
8c23ea137b Revert "Work-around Ivy/Haswell idle KP"
This reverts commit 4dc14eb9c0.
2022-11-02 21:30:32 -06:00
Mykola Grymalyuk
4dc14eb9c0 Work-around Ivy/Haswell idle KP 2022-11-02 20:19:41 -06:00
Mykola Grymalyuk
2ea3933720 build.py: Ensure Model/Board ID are set on MacPro6,1 2022-11-02 18:26:06 -06:00
Mykola Grymalyuk
ff5139463e gui_main.py: Fix typo 2022-11-02 13:56:04 -06:00
Mykola Grymalyuk
b0d4dd158f sys_patch.py: Add additional error handling for LE 2022-10-31 07:34:50 -06:00
Mykola Grymalyuk
71439916b6 Merge pull request #1012 from ParaDoX1994/main
Add Ventura warning to Universal Control docs
2022-10-31 07:32:51 -06:00
Mykola Grymalyuk
66a9be5be4 sys_patch.py: Add support for AMD Polaris 2022-10-30 18:26:56 -06:00
Mykola Grymalyuk
55478fd81c Sync FeatureUnlock
With this new build, lowering FeatureUnlock settings on older machines is no longer needed
2022-10-30 16:43:25 -06:00
Mykola Grymalyuk
d2d68fd08f sys_patch.py: Ensure path is empty when moving 2022-10-30 14:02:26 -06:00
Mykola Grymalyuk
2ea982b343 Increment binaries 2022-10-30 14:01:46 -06:00
neon ball
9741ef794e Fix typo and edit slightly 2022-10-30 04:24:53 +02:00
neon ball
eb9531f768 Change warning
Change warning to warn about native models setting and Ventura.
2022-10-30 04:18:15 +02:00
neon ball
45e0d5b155 Small line change 2022-10-30 01:11:11 +03:00
neon ball
47fe853334 Add Ventura warning to UC 2022-10-30 01:01:46 +03:00
Mykola Grymalyuk
cd5ff61138 gui_main: Only prompt updates once per launch 2022-10-29 07:49:27 -06:00
Mykola Grymalyuk
59b473a4ce build.py: Add MBP121 as Force Touch capable model 2022-10-29 07:43:47 -06:00
Mykola Grymalyuk
5a67212bdc Increment build 2022-10-27 09:21:44 -06:00
Mykola Grymalyuk
f0991d2cd0 Sync documentation 2022-10-27 09:21:20 -06:00
Mykola Grymalyuk
72464f3d54 build.py: Add early MacPro6,1 support 2022-10-26 21:17:51 -06:00
Mykola Grymalyuk
406072cbe1 sys_patch: Relocate old kexts instead of nuke 2022-10-26 18:35:46 -06:00
Mykola Grymalyuk
91cb6e4ecf build.py: Add Timeout customization 2022-10-26 17:22:27 -06:00
Mykola Grymalyuk
604fb7e28f sys_patch.py: Handle migrated kexts from old installs 2022-10-26 14:50:04 -06:00
Mykola Grymalyuk
db015ad79c kdk_handler: Lax n-1 logic 2022-10-26 09:31:07 -06:00
Mykola Grymalyuk
2db8cb3a85 install.py: Avoid drive icon confusion with OCLP 2022-10-26 06:56:33 -06:00
Mykola Grymalyuk
4d7f7b9c28 build.py: Fix TS0128F support 2022-10-25 20:32:53 -06:00
Mykola Grymalyuk
5d24b4ca1e Increment build 2022-10-25 10:37:12 -06:00
Mykola Grymalyuk
1d11340051 Merge pull request #1011 from dortania/pullrequests/ParaDoX1994/ventura-docs
Add Ventura documentation - ParaDoX1994 PR
2022-10-25 10:00:25 -06:00
Mykola Grymalyuk
0e270ea473 build.py: Set BUF0 patch to UEFI 1.2 Macs only 2022-10-24 22:53:45 -06:00
Mykola Grymalyuk
0cbfe142be build.py: Disable non-functional UHCI/OHCI drivers 2022-10-24 09:46:24 -06:00
Mykola Grymalyuk
3d04d3d361 Docs: Adjust SIP info 2022-10-24 09:44:04 -06:00
Mykola Grymalyuk
30b163437a Update Post Install info 2022-10-24 09:31:55 -06:00
Mykola Grymalyuk
223e784722 Docs: Update model page 2022-10-24 09:05:32 -06:00
Mykola Grymalyuk
c868aba3d7 constants.py: Sync version 2022-10-23 21:49:15 -06:00
Mykola Grymalyuk
97c9e5b87c Sync CryptexFixup 2022-10-23 20:08:28 -06:00
Mykola Grymalyuk
e8af0a8387 Remove old info 2022-10-23 20:07:53 -06:00
Mykola Grymalyuk
078ec4459c build: Fix Xserve typo
Thanks @jazzzny
2022-10-23 17:31:42 -06:00
neon ball
fb3cc893c5 Merge branch 'dortania:main' into ventura-docs 2022-10-24 01:50:32 +03:00
Mykola Grymalyuk
ebaa1f8176 sys_patch_detect: Add MBP13,3 to GCN patchset
Ensure older framebuffer is correctly used

Credit to @OnesuchDev for original finding
2022-10-22 16:41:33 -06:00
neon ball
c9adbf2b0a Fix typo 2022-10-21 07:36:17 +03:00
neon ball
8b2b6b157c Change wording 2022-10-21 07:33:35 +03:00
neon ball
c4b25f5585 Change stuff 2022-10-21 07:27:42 +03:00
neon ball
296edc19d5 Add MacPro3,1 ethernet note 2022-10-21 07:26:32 +03:00
neon ball
3e2762c798 Merge branch 'dortania:main' into ventura-docs 2022-10-21 07:23:38 +03:00
Mykola Grymalyuk
20b5a55e6d utilities: Drop Nightly validation
Nightly returns 404 regardless of support, we’ll validate the download further along
2022-10-19 09:20:47 -06:00
Mykola Grymalyuk
63c7f6874e Merge pull request #999 from dortania/ventura-alpha
Implement beta Ventura support
2022-10-18 22:21:12 -06:00
Mykola Grymalyuk
094c7ab1d0 kdk_handler: Fix corruption detection 2022-10-18 19:12:54 -06:00
Mykola Grymalyuk
8a43312dcf gui_main: Fix reboot prompt logic 2022-10-18 17:42:54 -06:00
Mykola Grymalyuk
7f62e5918f sys_patch_detect: Use proper term for AMFI warning
Use Library Validation if host is a Mac and doesn’t require AMFI to be completely off
2022-10-18 14:21:14 -06:00
Mykola Grymalyuk
f3918370d0 build: Ensure pikera installed on upgraded iMacs 2022-10-18 14:05:46 -06:00
Mykola Grymalyuk
e38dc48167 kdk_handler: Delete old on downloads only 2022-10-18 07:11:22 -06:00
Mykola Grymalyuk
953d9ec833 Constants: Remove unsupported arg 2022-10-18 06:35:13 -06:00
Mykola Grymalyuk
bb18cdfe44 Sync binaries 2022-10-17 14:54:14 -06:00
Mykola Grymalyuk
2a89a887a3 Add backend option to force output support 2022-10-17 08:58:25 -06:00
Mykola Grymalyuk
7ef7d851c0 Re-export OpenCanopy Icons
Resolve icons not rendering on Haswell and newer Macs
2022-10-16 21:25:03 -06:00
neon ball
19c8c96242 Fix link description 2022-10-17 03:35:55 +03:00
neon ball
dac2315227 Fix link 2022-10-17 03:35:21 +03:00
neon ball
6fd10235c5 Updates 2022-10-17 03:34:40 +03:00
neon ball
ef12c3d09e Update information 2022-10-17 03:24:30 +03:00
Mykola Grymalyuk
9484f18994 Sync changelog 2022-10-16 15:33:41 -06:00
Mykola Grymalyuk
1a262c6acf sys_patch: Drop Metal downgrade for AMD Legacy GCN 2022-10-16 15:29:07 -06:00
Mykola Grymalyuk
f45559a457 kdk_handler: Ensure argument is not empty 2022-10-14 08:05:05 -06:00
Mykola Grymalyuk
7e6f418d23 installer.py: List Beta builds if no release variants available 2022-10-12 21:47:33 -06:00
Mykola Grymalyuk
56e5602394 gui_main.py: Rework Ventura IA prompt 2022-10-12 21:26:35 -06:00
Mykola Grymalyuk
de1107d773 defaults.py: Sync AMFI logic 2022-10-12 20:16:00 -06:00
Mykola Grymalyuk
23bd207774 sys_patch: Drop Metal downgrade on Kepler 2022-10-12 20:11:53 -06:00
Mykola Grymalyuk
2145dd835b SMBIOS: Sync data for Ventura 2022-10-11 11:03:58 -06:00
Mykola Grymalyuk
ec23bc9d53 sys_patch_dict: Remove old GVA work-around 2022-10-11 09:53:49 -06:00
Mykola Grymalyuk
94971fbb76 sys_patch_dict: Remove unneeded OS checks 2022-10-11 09:41:31 -06:00
Mykola Grymalyuk
fbb5558aef sys_patch_helpers: Remove dumplicate checksum check 2022-10-07 18:19:08 -06:00
Mykola Grymalyuk
25952ff9d8 kdk_handler: Verify checksum after downloading 2022-10-07 18:18:24 -06:00
Mykola Grymalyuk
5ee8b16353 Sync binaries 2022-10-07 17:55:45 -06:00
Mykola Grymalyuk
3e54e8ad7e build.py: Adjust AICPUPM comments 2022-10-07 07:12:56 -06:00
neon ball
78e8e9ae33 Remove mention about PM 2022-10-07 15:58:33 +03:00
neon ball
bc7e4b369a Another small update 2022-10-07 15:38:23 +03:00
neon ball
f141b57113 Small update 2022-10-07 15:35:19 +03:00
neon ball
543374a922 Update wording 2022-10-07 15:30:41 +03:00
neon ball
88ceda1c82 Update 2022-10-07 15:18:12 +03:00
neon ball
d5674b342b Update wording 2022-10-07 15:15:49 +03:00
neon ball
d7ec9d7083 Switch issue link 2022-10-07 13:28:23 +03:00
Mykola Grymalyuk
964697a2c1 build.py: Fix PM on Ivy Bridge and older 2022-10-06 21:49:20 -06:00
Mykola Grymalyuk
5a2afa4fa7 sys_patch_dict: Fix OpenCL on non-AVX2 legacy GCN 2022-10-06 19:44:11 -06:00
Mykola Grymalyuk
5aa7ab3b0f example_data: Add Macmini5,2 2022-10-06 19:32:37 -06:00
Mykola Grymalyuk
dca7959052 example_data: Add more units 2022-10-06 13:48:04 -06:00
Mykola Grymalyuk
8d1fc8ca47 device_probe: Fix leafs formatting 2022-10-06 12:30:33 -06:00
neon ball
2bd4097b0c Change order 2022-10-06 21:14:58 +03:00
neon ball
d369a62365 Add pull request link 2022-10-06 21:01:28 +03:00
neon ball
0d4f40cad2 Slight changes 2022-10-06 20:51:09 +03:00
neon ball
0acb6db744 Slight edits 2022-10-06 20:47:44 +03:00
Mykola Grymalyuk
fe356dd843 kdk_handler: Delete corrupted KDKs when found 2022-10-06 11:07:54 -06:00
neon ball
ce6fca3485 Switch sidebar ordering 2022-10-06 20:05:02 +03:00
neon ball
58af2fe8c9 Add files via upload 2022-10-06 19:30:37 +03:00
neon ball
0c57948fa9 Ventura-sidebar 2022-10-06 19:09:28 +03:00
neon ball
2ebf75b2e1 Ventura-drop 2022-10-06 19:08:49 +03:00
neon ball
d108c234c6 Ventura banner 2022-10-06 19:07:48 +03:00
Mykola Grymalyuk
d0c0f41eb6 sys_patch_helpers: Fix index error on .DS_Store files
Thanks @hvds
2022-10-05 08:46:26 -06:00
Mykola Grymalyuk
e919368cd3 sys_patch_helpers: Check KDK.dmg checksum before installing 2022-10-05 08:43:11 -06:00
Mykola Grymalyuk
de46cb79c9 retoute_payloads: Allow multiple instances 2022-10-05 08:42:41 -06:00
Mykola Grymalyuk
12a71c8cbb sys_patch.py: Adjust indentation 2022-10-04 22:11:17 -06:00
Mykola Grymalyuk
00a04c8fce kdk_handler: Adjust print message 2022-10-04 20:20:50 -06:00
Mykola Grymalyuk
f2bedca734 sys_patch.py: Move kdk check higher 2022-10-04 20:08:47 -06:00
Mykola Grymalyuk
bf317e7bea sys_patch: Adjust legacy KDK handling 2022-10-04 20:04:12 -06:00
Mykola Grymalyuk
fde8dc001e sys_patch_helpers: Fix Host detection 2022-10-04 19:47:52 -06:00
Mykola Grymalyuk
79c833a6cc sys_patch: Allow updating installed KDK to root
If installed Beta 8 KDK on Beta 9, can later root patch with Beta 9 KDK available onto root
2022-10-04 19:31:26 -06:00
Mykola Grymalyuk
5ef2f59d7c kdk_handler: Remove redundant sudo invocation 2022-10-04 18:18:08 -06:00
Mykola Grymalyuk
e82c76fedf build.py: Remove unused plugins, validate unused Tools/Drivers 2022-10-04 18:14:46 -06:00
Mykola Grymalyuk
9175c950f8 kdk_handler: Delete unused KDKs after supported is found 2022-10-04 18:13:52 -06:00
Mykola Grymalyuk
85ca3e2d27 sys_patch: Switch to rsync for KDK merging
When using N-1 system, ditto will sometimes refuse to sync when the source is older than the destination
2022-10-04 17:18:48 -06:00
Dhinak G
ca5771b1c9 kdk_handler: Fix parsing of legacy macOS versions 2022-10-04 15:26:09 -04:00
Dhinak G
67c9c4633b kdk_handler: Fix some parsing and logic bugs 2022-10-04 15:21:32 -04:00
Mykola Grymalyuk
1be56542b1 kdk_handler: Fix argument 2022-10-04 12:46:00 -06:00
Mykola Grymalyuk
2e74debefa Increment Binaries 2022-10-04 11:11:36 -06:00
Mykola Grymalyuk
3e25b74ee8 Increment CryptexFixup to release 2022-10-04 10:21:57 -06:00
Mykola Grymalyuk
ab9c93a1da sys_patch_helpers: Write KDK used to patchset plist 2022-10-04 09:53:14 -06:00
Mykola Grymalyuk
faf717dedf utilities.py: Add error handling in check_boot_mode() 2022-10-04 09:47:44 -06:00
Dhinak G
d6daa2f06d Build: update requirements.txt 2022-10-03 18:29:06 -04:00
Dhinak G
4bebe208bc kdk_handler: Clean up unused variables 2022-10-03 16:08:44 -04:00
Dhinak G
fa352fbc0c kdk_handler: Enumerate KDKs from Apple developer portal 2022-10-03 16:00:23 -04:00
Mykola Grymalyuk
41ebf7ce32 sys_patch: Fix typos
Thanks @perez987
2022-10-02 12:15:07 -06:00
Mykola Grymalyuk
3a90cfa3b9 sys_patch_dict: Add GPUSupport patch to Kepler 2022-10-02 11:17:59 -06:00
Mykola Grymalyuk
f60af0446e kdk_handler.py: Adjust logic 2022-10-01 16:22:30 -06:00
Mykola Grymalyuk
e27ca8d160 kdk_handler: Fix accidental tuple return 2022-10-01 16:04:48 -06:00
Mykola Grymalyuk
2c40e9b0a1 sys_patch: Improve N-1 KDK handling 2022-10-01 13:46:19 -06:00
Mykola Grymalyuk
5c43592c46 utilities.py: Verify host space before downloading 2022-10-01 13:00:21 -06:00
Mykola Grymalyuk
9c18b15153 kdk_handler: Verify path before iterating over 2022-09-30 11:18:11 -06:00
Mykola Grymalyuk
7e006e8722 Sync Changelog 2022-09-30 08:36:58 -06:00
Mykola Grymalyuk
012f54c1e1 kdk_handler: Remove unused import 2022-09-30 06:47:18 -06:00
Mykola Grymalyuk
3a2ac7a310 kdk_handler: Add KDK downloader for Ventura 2022-09-30 06:44:34 -06:00
Mykola Grymalyuk
dd7470af98 main.py: Publish OS Version 2022-09-29 21:23:57 -06:00
Mykola Grymalyuk
da86344269 defaults: Skip disabled GPUs 2022-09-28 15:47:51 -06:00
Mykola Grymalyuk
9b1dae312d defaults.py: Fix Vega/Navi logic 2022-09-28 13:26:25 -06:00
Mykola Grymalyuk
bdfd043250 device_probe: Publish Rosetta detection 2022-09-28 12:52:17 -06:00
Mykola Grymalyuk
251bd48920 defaults.py: Refactor Probe Logic 2022-09-28 12:21:24 -06:00
Mykola Grymalyuk
910ab09dbd gui_main.py: Add LV and AMFI patch configuration 2022-09-27 18:53:30 -06:00
Mykola Grymalyuk
fdfe588566 defaults: Disable AMFI on non-Metal 2022-09-27 18:53:07 -06:00
Mykola Grymalyuk
f1af0e1a87 defaults: Disable AMFI on Polaris lacking AVX2.0 2022-09-27 18:38:56 -06:00
Mykola Grymalyuk
1aff7854e0 gui_main: Avoid float usage on wxPoint 2022-09-27 14:28:30 -06:00
Mykola Grymalyuk
20e08d4dff symbios_data.py: Fix GPU data set 2022-09-27 11:50:32 -06:00
Mykola Grymalyuk
162d5e76ee sys_patch_auto: Add error handing for LA pathing
Some users manage to nuke this directory
2022-09-27 10:49:19 -06:00
Mykola Grymalyuk
3d63cb1654 sys_patch_detect: Add Polaris support for pre-AVX2.0 2022-09-27 08:45:37 -06:00
Mykola Grymalyuk
8cc87980d1 device_probe: Add leaf feature detection 2022-09-27 08:43:38 -06:00
Mykola Grymalyuk
1d821b993b build.py: Drop manual Root Hash Patching 2022-09-27 07:20:05 -06:00
Dhinak G
407ed9c4cd Add support for KDK downloads 2022-09-25 00:54:01 -04:00
Mykola Grymalyuk
653692f898 Implement Automatic Rosetta Cryptex installation
Drops need for manual OS.dmg swapping on pre-Haswell
2022-09-24 22:22:34 -06:00
Dhinak G
4ef2c00b45 Merge branch 'main' into ventura-alpha 2022-09-24 20:36:47 -04:00
Dhinak G
d7c66346cb Default catalog to Public 2022-09-24 20:35:44 -04:00
Dhinak G
9dcd42d328 Merge branch 'main' into ventura-alpha 2022-09-24 20:33:04 -04:00
Dhinak G
52f1504f3e Use global shared session 2022-09-24 20:32:57 -04:00
Mykola Grymalyuk
92ff4244ae build.py: Add AVXpel-based NoAVX kext
Resolves Zlib-based instability in Ventura on pre-Sandy Bridge Macs

Credit to @educovas for developing
2022-09-21 18:45:29 -06:00
Mykola Grymalyuk
daf28a62ef AutoPatcher: Add AssociatedBundleIdentifiers 2022-09-21 14:04:59 -06:00
Mykola Grymalyuk
8de92f9f6e AutoPkg: Add warnings to manual invocation 2022-09-20 17:47:40 -06:00
Mykola Grymalyuk
0895fc8415 gui_main.py: Remove Sys Pref prompt for Ventura 2022-09-20 17:01:24 -06:00
Mykola Grymalyuk
3a641d451d Merge branch 'main' into ventura-alpha 2022-09-20 09:36:58 -06:00
Mykola Grymalyuk
d0364d8c91 build.py: Ensure boot-arg is installed for BCM2046/2070 chipsets 2022-09-19 21:07:56 -06:00
Mykola Grymalyuk
46dfbbcfd0 CHANGELOG: Reword Nvidia patch 2022-09-19 10:28:48 -06:00
Mykola Grymalyuk
890be074cb Merge branch 'main' into ventura-alpha 2022-09-19 10:23:21 -06:00
Mykola Grymalyuk
715d8af497 Increment Build 2022-09-19 10:21:19 -06:00
Mykola Grymalyuk
6cec3d0d8c Sync PatcherSupportPkg 2022-09-18 19:03:58 -06:00
Mykola Grymalyuk
71b80a4e50 sys_patch_detect.py: Ensure Monterey patches install before Big Sur
Broadwell and older iGPUs need libCLVMIGILPlugin.dylib downgraded to Monterey, however Ivy Bridge needs the binary downgraded to Big Sur's
2022-09-16 17:50:24 -06:00
Mykola Grymalyuk
c7e8d6ef01 Update CHANGELOG.md 2022-09-15 22:11:39 -06:00
Mykola Grymalyuk
a58f2d060a sys_patch_dict: Rework OpenCL patch set 2022-09-15 21:51:01 -06:00
Mykola Grymalyuk
f631f54475 Merge branch 'main' into ventura-alpha 2022-09-15 21:26:47 -06:00
Mykola Grymalyuk
101f1197bc sys_patch_dict: Fix Safari 16 support for macOS Monterey 2022-09-15 21:18:00 -06:00
Mykola Grymalyuk
0693e345d0 defaults: Add proper AMFI vs LV logic 2022-09-14 18:21:21 -06:00
Mykola Grymalyuk
bf9d6f678e sys_patch: Add Reworked AuxKC logic 2022-09-14 14:58:03 -06:00
Mykola Grymalyuk
b3bc920ce6 amfi_detect.py: Update comment 2022-09-14 12:48:05 -06:00
Mykola Grymalyuk
012a629100 sys_patch_detect: Revise AMFI logic
Currently the AMFI level requirement will be determined by the GPU needed.
- Intel iGPUs: Only Library Validation patch (`_cs_require_lv`)
- Nvidia Kepler and GCN: Full AMFI needs to be disabled (`amfi=0x80`)

If you have a mixed GPU system, the highest patch requirement will be chosen (ie. `amfi=0x80` on iMac15,1)
2022-09-14 07:57:41 -06:00
Mykola Grymalyuk
7fc2d478f2 Adjust AMFI logic for Kepler and GCN 2022-09-13 21:34:37 -06:00
Mykola Grymalyuk
616d812913 Drop reliance on amfi_get_out_of_my_way=0x1 2022-09-13 19:51:28 -06:00
Mykola Grymalyuk
839a37f897 Merge branch 'main' into ventura-alpha 2022-09-13 16:24:16 -06:00
Mykola Grymalyuk
5565a3e67e amfi_data.py: Initial commit 2022-09-13 16:24:03 -06:00
Mykola Grymalyuk
a5e002d68b sys_patch_dict: Remove Metal Downgrade for Intel
Determined stock Metal is functional on Intel metal GPUs, XPC downgrade still required for 3802-based GPUs

Resolves Photos support for Intel GPUs

Requires removal of old patches to properly function
2022-09-12 20:37:23 -06:00
Dhinak G
c064269e88 Merge branch 'main' into ventura-alpha 2022-09-08 19:21:45 -04:00
Dhinak G
8322e270db GUI: work around Python 3.10 + wxPython 4.2.0 bug 2022-09-08 19:18:24 -04:00
Mykola Grymalyuk
c21d3d8de8 Constants: Remove unsupported variable 2022-09-08 08:14:47 -06:00
Mykola Grymalyuk
c59f11fea3 sys_patch_dict: Seperate 3802 patch set files
Ensure XPC service is not downgraded
2022-09-07 21:04:22 -06:00
Mykola Grymalyuk
237bb329f2 sys_patch_dict: Work around downgraded IOSurface
Resolves kmutil linking in 13.0 Beta 4 and newer on IOSurface downgraded root patches
2022-09-05 21:23:11 -06:00
Mykola Grymalyuk
c897ca8c34 Update AutoPkgInstaller binary 2022-09-05 21:22:28 -06:00
Mykola Grymalyuk
b8c27c45f8 sys_patch_dict: Remove 3802 patch set on Broadwell
Unused on Broadwell GPUs
2022-09-05 10:24:24 -06:00
Mykola Grymalyuk
23e939ea72 sys_patch.py: Fix auth logic 2022-09-04 21:38:35 -06:00
Mykola Grymalyuk
9da0b24b30 sys_oatch: Fix prompt logic 2022-09-04 11:42:01 -06:00
Mykola Grymalyuk
9758124b2b sys_patch.py: Move AuxKC auth check to dedicated function 2022-09-03 20:56:48 -06:00
Mykola Grymalyuk
df753299fc sys_patch.py: Ensure patch file has updated pathing
When handling KDK-less installs in Ventura, ensure patchset is adjusted to new path when written to disk
2022-09-03 20:36:30 -06:00
Mykola Grymalyuk
955d147638 sys_patch.py: Don’t prompt for auth if kext already approved 2022-09-03 12:21:13 -06:00
Mykola Grymalyuk
4e9428b8e0 sys_patch.py: Add AuxKC cleaning 2022-09-03 12:05:22 -06:00
Mykola Grymalyuk
879901101d Merge branch 'main' into ventura-alpha 2022-09-02 11:15:20 -06:00
Dhinak G
d00e667caf SOURCE.md: Fix another typo in previous 2022-09-02 12:17:36 -04:00
Dhinak G
01b48f4226 SOURCE.md: Fix typo in previous 2022-09-02 12:16:55 -04:00
Mykola Grymalyuk
c5692b91fb main.py: Fix source logic 2022-09-02 10:12:52 -06:00
Mykola Grymalyuk
1dbb673f73 Merge branch 'main' into ventura-alpha 2022-09-02 10:12:20 -06:00
Mykola Grymalyuk
5179a63766 SOURCE: Sync build requirements 2022-09-02 10:12:03 -06:00
Mykola Grymalyuk
3cfc683ecf gui_main: Avoid prompt if patches already installed 2022-09-02 10:08:25 -06:00
Mykola Grymalyuk
3779cfcaf6 sys_patch_dict: Sync Patch Names 2022-09-02 10:07:45 -06:00
Mykola Grymalyuk
dcd581345a sys_patch_helpers: Add Commit URL to patch file 2022-09-02 09:45:08 -06:00
Mykola Grymalyuk
530c0f49b9 sys_patch_helpers: Remove hard coded test 2022-08-27 16:29:55 -06:00
Mykola Grymalyuk
36dc2c55cf Merge branch 'main' into ventura-alpha 2022-08-27 15:53:05 -06:00
Mykola Grymalyuk
e25843c217 Merge pull request #1007 from dortania/ventura-kdk-less
sys_patch: Allow KDK-less root patching on Intel iGPUs and Nvidia Kepler
2022-08-27 13:33:07 -06:00
Mykola Grymalyuk
45654bce16 build.py: Ensure WEG is installed on Mac Pro configs 2022-08-27 13:00:20 -06:00
Mykola Grymalyuk
237b086e17 sys_patch.py: Avoid prompts if kext has already been accepted 2022-08-27 12:57:45 -06:00
Mykola Grymalyuk
b105a73a10 sys_patch: Add KDK-less support
Only Applicable for Kepler and Intel iGPUs at this time
2022-08-27 09:29:38 -06:00
Mykola Grymalyuk
ef0fe3d4be constants: Update BTFX 2022-08-24 16:52:54 -06:00
Mykola Grymalyuk
0c4c4ff378 Update BlueToolFixup 2022-08-24 16:52:23 -06:00
Mykola Grymalyuk
58425de537 Add remaining External Boot Icons 2022-08-24 15:16:50 -06:00
Mykola Grymalyuk
38e573d886 Merge branch 'main' into ventura-alpha 2022-08-24 12:20:25 -06:00
Mykola Grymalyuk
c1ba7cd6cb installer.py: Parse SharedSupport.dmg 2022-08-24 12:19:52 -06:00
Mykola Grymalyuk
9e28241126 Icon: Add Ventura Boot Picker icons 2022-08-24 11:17:13 -06:00
Mykola Grymalyuk
bf6f20b97e sys_patch_detect: Ensure Rosetta systems are not detected
Rosetta will report itself as a GCN 1 based system, which will confuse the root patcher and provide patches on Ventura
2022-08-23 18:39:22 -06:00
Mykola Grymalyuk
66452b8898 sys_patch_detect: Print KDK error for non-GUI enviroments 2022-08-23 18:35:23 -06:00
Mykola Grymalyuk
06d12f9384 defaults.py: ensure AMFI is disabled on Metal 2022-08-23 17:06:23 -06:00
Mykola Grymalyuk
a546aa1d85 build.py: fix SIP variable 2022-08-23 17:03:39 -06:00
Mykola Grymalyuk
6162e73a9f Raise SIP requirement for root patching 2022-08-23 12:27:46 -06:00
Mykola Grymalyuk
763fe04c21 Add Ventura validation 2022-08-23 11:02:57 -06:00
Mykola Grymalyuk
603b5ee153 sys_patch_dict: Add GVA patches for Ventura 2022-08-23 09:58:27 -06:00
Mykola Grymalyuk
c6dc4c28a3 utitilies.py: Add proper AMFI checks for Ventura 2022-08-22 18:14:11 -06:00
Mykola Grymalyuk
662aa77016 sys_patch_detect.py: Add AMFI check 2022-08-22 18:10:57 -06:00
Mykola Grymalyuk
64e5a05eb2 sys_patch_dict: Don’t instal Kepler’s patch in 13.0 2022-08-22 17:01:06 -06:00
Mykola Grymalyuk
4b5d35f5ff Add preliminary Ventura graphics support 2022-08-22 14:18:43 -06:00
Mykola Grymalyuk
27c24e6d47 Increment to release binaries 2022-08-19 16:24:45 -06:00
Mykola Grymalyuk
643e4cf87a Merge branch 'main' into ventura-alpha
# Conflicts:
#	resources/os_probe.py
2022-08-19 15:43:23 -06:00
Mykola Grymalyuk
14528b904c Merge pull request #1005 from ParaDoX1994/main
Remove TUI mention due to deprecation of TUI
2022-08-19 15:40:22 -06:00
Mykola Grymalyuk
2c35b62b53 installer.py: Remove duplicate builds 2022-08-18 21:55:15 -06:00
Mykola Grymalyuk
0cb2ad1b20 Installer: Check space before starting 2022-08-18 17:21:07 -06:00
Mykola Grymalyuk
08525de489 os_probe.py: Remove new line output 2022-08-17 17:59:33 -06:00
Mykola Grymalyuk
0286b8d64a build.py: rework MCE Disabler logic 2022-08-09 09:49:12 -06:00
Mykola Grymalyuk
4bb2b8bc04 gui_main.py: avoid reboot prompt on off-model building 2022-08-09 09:31:13 -06:00
Mykola Grymalyuk
d85fe3a7fb Resync changelog 2022-08-06 10:15:12 -06:00
Mykola Grymalyuk
a22d53e9e8 Merge branch 'main' into ventura-alpha 2022-08-06 10:13:15 -06:00
Mykola Grymalyuk
7e46b7292a Increment build 2022-08-05 23:21:18 -06:00
Mykola Grymalyuk
f0cf0a7dbe sys_patch_dict.py: Limit MTL patch to 12.5 and newer 2022-08-05 22:56:49 -06:00
Mykola Grymalyuk
cd1276251c Resolve Nvidia Kepler for 12.5
Closes https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1004
2022-08-05 22:10:28 -06:00
Mykola Grymalyuk
d3bf065a8b sys_patch_helpers.py: Add closest KDK match 2022-07-31 11:01:48 -06:00
neon ball
8849896ba3 Remove TUI mention due to deprecation of TUI 2022-07-29 18:00:01 +03:00
Mykola Grymalyuk
2e192bac63 Merge branch 'main' into ventura-alpha 2022-07-27 10:37:08 -06:00
Mykola Grymalyuk
ba1ebebc54 smbios_data.py: Sync max OS support
Ref: https://github.com/dortania/OpenCore-Legacy-Patcher/pull/999
2022-07-27 10:34:50 -06:00
Mykola Grymalyuk
6532634ed5 gui_main.py: Rename reload remote IA button 2022-07-27 09:52:33 -06:00
Mykola Grymalyuk
c96dac7cd4 Add missing IOPlatformPlugin files 2022-07-26 19:34:16 -06:00
Mykola Grymalyuk
b58819f815 gui_main.py: Fix formatting 2022-07-26 18:36:34 -06:00
Mykola Grymalyuk
42bc2638cf Merge branch 'main' into ventura-alpha 2022-07-22 14:15:50 -06:00
Mykola Grymalyuk
31428c24a9 gui_main.py: Set value on greyed out option 2022-07-22 12:23:40 -06:00
Mykola Grymalyuk
33dedfef5d Validation: Add additional XNU minor checks 2022-07-21 12:05:21 -06:00
Mykola Grymalyuk
363d6bc26f Increment Build 2022-07-21 12:04:38 -06:00
Mykola Grymalyuk
ab2c714bf1 sys_patch_dict: Fix versioning 2022-07-20 11:27:10 -06:00
Mykola Grymalyuk
943071c2cd sys_patch_dict.py: split Kepler patchset
Ref: https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1004
2022-07-19 12:07:42 -06:00
Mykola Grymalyuk
a52e762c25 updates.py: allow for unrestricted versioning
Previously limited to x.x.x checks
2022-07-17 22:30:37 -06:00
Mykola Grymalyuk
5208ab0f82 Increment build 2022-07-17 18:05:29 -06:00
Mykola Grymalyuk
105fa4e908 sys_patch_detect: Fix GVA regression 2022-07-17 12:59:12 -06:00
Mykola Grymalyuk
198b7a1c58 gui_main.py: Adjust wording for prompts 2022-07-17 11:38:04 -06:00
Mykola Grymalyuk
28dc468e45 gui_main.py: Add spoofing prompt 2022-07-17 10:23:05 -06:00
Mykola Grymalyuk
da34a9b22d Merge pull request #1003 from KrutavShah/main
Made grammatical corrections across the docs.
2022-07-16 19:56:50 -06:00
Krutav Shah
610433a028 Resolved typos 2022-07-16 17:29:47 -07:00
Krutav Shah
c4d8bb6ee7 Merge branch 'main' into main 2022-07-16 16:49:54 -07:00
Krutav Shah
0edeef6497 Made grammatical corrections across the docs.
This is not an exhaustive revision, there may still be more issues that can be fixed when found.
2022-07-16 16:32:00 -07:00
Mykola Grymalyuk
3296a4a9da Docs: Fix additional typos 2022-07-16 15:21:59 -06:00
Mykola Grymalyuk
59ef2d423a Merge branch 'main' into ventura-alpha 2022-07-16 15:08:29 -06:00
Mykola Grymalyuk
11bd7a4083 Docs: Fix misc typos 2022-07-16 15:04:57 -06:00
Mykola Grymalyuk
13c564e270 bug_report: Fix misc typos 2022-07-16 14:55:53 -06:00
Mykola Grymalyuk
b01793d226 global_settings: Fix misc typos 2022-07-16 14:55:48 -06:00
Mykola Grymalyuk
c0516fddbd install: Fix misc typos 2022-07-16 14:55:39 -06:00
Mykola Grymalyuk
a0bd2f5850 installer: Fix misc typos 2022-07-16 14:55:34 -06:00
Mykola Grymalyuk
f491f49fb0 installer: Fix misc typos 2022-07-16 14:55:27 -06:00
Mykola Grymalyuk
a56027b46c reroute_payloads: Fix misc typos 2022-07-16 14:55:19 -06:00
Mykola Grymalyuk
cd14354f86 sys_patch_auto.py: Fix misc typos 2022-07-16 14:50:20 -06:00
Mykola Grymalyuk
579c7c9cbb sys_patch.py: Fix misc typos 2022-07-16 14:48:41 -06:00
Mykola Grymalyuk
0e3b34e077 updates.py: Fix misc typos 2022-07-16 14:47:24 -06:00
Mykola Grymalyuk
c4256bb1b1 Utilities.py: Fix misc typos 2022-07-16 14:46:50 -06:00
Mykola Grymalyuk
f9467c69c0 Build-Binary: : Fix misc typos 2022-07-16 14:44:17 -06:00
Mykola Grymalyuk
b8642731c3 build.py: Fix misc typos 2022-07-16 14:44:07 -06:00
Mykola Grymalyuk
d7c599376b Merge pull request #1000 from ParaDoX1994/main
Update docs
2022-07-16 14:26:00 -06:00
Mykola Grymalyuk
2897e6cf74 gui_main.py: Fix additional typos 2022-07-16 14:24:58 -06:00
neon ball
b9b52a9608 Update OCLP launch troubleshooting 2022-07-16 23:17:38 +03:00
neon ball
429ddcc396 Merge branch 'dortania:main' into main 2022-07-16 23:13:44 +03:00
Mykola Grymalyuk
bbb087db63 gui_main.py: Fix available typo 2022-07-16 14:10:13 -06:00
Mykola Grymalyuk
ac5c754789 gui_main.py: Fix typo 2022-07-16 13:36:05 -06:00
Mykola Grymalyuk
57daf050b2 gui_main.py: Adjust prompt 2022-07-12 15:39:53 -06:00
Mykola Grymalyuk
1a4538c320 Sync changelog 2022-07-12 09:59:10 -06:00
Mykola Grymalyuk
ffb4613221 installer.py: Avoid listing beta installers and warn 13.0 builds 2022-07-12 09:50:21 -06:00
Mykola Grymalyuk
fb732ff069 installer.py: Add CoW support check
HFS+ root volumes do not support CoW
2022-07-07 19:26:02 -06:00
Mykola Grymalyuk
e5740dd34e Fix MouSSE 13.0 B3 support
Replace usage of `__PRELINK_TEXT` with `__TEXT_EXEC`

```
Find:    5F 5F 50 52 45 4C 49 4E 4B 5F 54 45 58 54
Replace: 5F 5F 54 45 58 54 5F 45 58 45 43 00 00 00
```
2022-07-07 15:05:56 -06:00
Mykola Grymalyuk
a7cb63530e build.py: Consolidate plist clean up into single loop 2022-07-07 14:24:07 -06:00
Mykola Grymalyuk
15e3ea06f0 build.py: Add config validation 2022-07-07 12:10:48 -06:00
Mykola Grymalyuk
ccd5109d8e Update binaries 2022-07-07 12:08:52 -06:00
Mykola Grymalyuk
895c9e0603 Merge branch 'main' into ventura-alpha 2022-07-05 17:34:39 -06:00
neon ball
e5d0225ff3 Merge branch 'dortania:main' into main 2022-07-05 00:54:00 +03:00
Mykola Grymalyuk
28c4909b7e Docs: Add 5k iMac note 2022-07-04 13:11:33 -06:00
Mykola Grymalyuk
885a1efbdc gui_main.py: Add warning to serial spoofing 2022-07-03 12:57:34 -06:00
Dhinak G
b06822ec57 Fix build info for releases 2022-07-03 14:29:41 -04:00
Mykola Grymalyuk
7c8ea41c37 Sync Changelog 2022-07-03 11:59:35 -06:00
Mykola Grymalyuk
ba0fae0fe7 Merge pull request #1002 from dortania/cim-tmp
Work-around createinstallmedia erroring with 12.4+ installers
2022-07-03 11:57:30 -06:00
Mykola Grymalyuk
524a7cb753 installer.py: Ensure tmp dir is destroyed on exit 2022-07-03 11:44:20 -06:00
Mykola Grymalyuk
e1078faf85 installer.py: Adjust for disk image CoW 2022-07-02 14:09:27 -06:00
Mykola Grymalyuk
fdb82b8e13 installer.py: Use Copy on Write for tmp
Credit to @flagersgit for suggestion
2022-07-02 13:31:50 -06:00
Mykola Grymalyuk
b7b3f19fa0 Copy IAs to tmp during CIM 2022-07-02 11:13:44 -06:00
Mykola Grymalyuk
6a99d8418c Merge branch 'main' into ventura-alpha 2022-07-01 22:34:00 -06:00
Mykola Grymalyuk
1fba4901c4 Add ‘Allow native models’ warning 2022-07-01 22:24:54 -06:00
Mykola Grymalyuk
d17372dd65 utitilities: Add NVRAM error handling 2022-06-30 10:40:47 -06:00
Mykola Grymalyuk
5cc0fd3638 Merge branch 'main' into ventura-alpha 2022-06-29 11:56:31 -06:00
Mykola Grymalyuk
5a96852ea5 install.py: Avoid OC icon if Windows detected 2022-06-28 10:34:18 -06:00
Mykola Grymalyuk
e5fcb5f157 sys_patch.py: Move Snapshot to dedicated function 2022-06-27 10:38:28 -06:00
neon ball
b15c6c4cc5 Merge branch 'dortania:main' into main 2022-06-26 17:33:07 +03:00
Mykola Grymalyuk
ecf04372b4 Update Lilu and FeatureUnlock 2022-06-22 12:46:50 -06:00
Mykola Grymalyuk
7078ca5699 build.py: Fix on-model Ethernet detection 2022-06-21 13:44:31 -06:00
Mykola Grymalyuk
0c2185a882 build.py: Fix ethernet model assumption 2022-06-21 13:15:32 -06:00
Mykola Grymalyuk
ff849100e0 Ethernet: Set IOProbeScore to outmatch DriverKit 2022-06-21 13:08:48 -06:00
Mykola Grymalyuk
e80454af5a build.py: Fix VMM erroring on build 2022-06-21 12:04:48 -06:00
Mykola Grymalyuk
cf76ed4c4f sys_patch_dict.py: Avoid WebKit patch in Ventura 2022-06-21 10:36:01 -06:00
Mykola Grymalyuk
984e0021d6 Merge branch 'main' into ventura-alpha 2022-06-21 10:35:17 -06:00
Mykola Grymalyuk
ddafb8a3ab gui_main.py: Fix Menubar relaunch as root 2022-06-21 10:34:57 -06:00
Mykola Grymalyuk
6e3ceb0937 sys_patch.py: Add comments to kmutil invocation 2022-06-20 14:54:14 -06:00
Mykola Grymalyuk
1130662e7a build.py: Add USB1.1 injection 2022-06-18 15:12:24 -06:00
Mykola Grymalyuk
3d853e0d07 sys_patch.py: Add extra kmutil handling
Since KDKs are installed in Ventura, development KC would be generated by kmutil. For OCLP users, release builds are ideal
2022-06-17 12:37:08 -06:00
Mykola Grymalyuk
1b6a41f478 Merge branch 'main' into ventura-alpha 2022-06-17 12:34:02 -06:00
Mykola Grymalyuk
1e4ad7254f installer.py: Ensure AS-specific installers are not listed 2022-06-17 11:13:34 -06:00
neon ball
c853773d2e Merge branch 'dortania:main' into main 2022-06-17 00:02:24 +03:00
Mykola Grymalyuk
71734ce904 Increment build 2022-06-16 14:52:01 -06:00
neon ball
c7cf7acbf0 Edit iMac insights and formatting 2022-06-16 22:17:05 +03:00
neon ball
07df160111 Delete file from wrong folder 2022-06-16 22:16:19 +03:00
neon ball
e7eed48912 Edit Universatl Control WiFi docs 2022-06-16 22:12:59 +03:00
neon ball
e0a4bf685e Edit Universal Control WiFi docs 2022-06-16 22:08:00 +03:00
neon ball
10710858e2 Merge branch 'dortania:main' into main 2022-06-16 22:05:56 +03:00
neon ball
cb269797d5 Small formatting changes 2022-06-16 07:23:08 +03:00
neon ball
bec2fa31cc Add more clarification to the terminal command 2022-06-16 07:17:49 +03:00
neon ball
e910e782f5 Fix typo in link 2022-06-16 07:13:48 +03:00
neon ball
d25e6076d3 Update TROUBLESHOOTING.md 2022-06-16 07:07:54 +03:00
neon ball
1f1c7e7793 Clarify WiFi card models for upgrades 2022-06-16 03:39:44 +03:00
Mykola Grymalyuk
e5d9894bbf Merge branch 'main' into ventura-alpha 2022-06-15 12:05:00 -06:00
Mykola Grymalyuk
e3ddcb8cf5 sys_patch.py: Fix typo 2022-06-14 22:04:31 -06:00
Mykola Grymalyuk
85572a2889 Misc Ventura fixes 2022-06-14 21:39:21 -06:00
Mykola Grymalyuk
8aa862e8fb sys_patch_helpers.py: Adjust KDK verification 2022-06-14 19:48:06 -06:00
Mykola Grymalyuk
ca4b13e6af sys_patch_helpers.py: Verify KDK is valid during search 2022-06-14 15:42:28 -06:00
Mykola Grymalyuk
d0dbf8e399 sys_patch.py: Add proper KDK handling during root patching 2022-06-14 15:02:01 -06:00
Mykola Grymalyuk
8285be259c Merge branch 'main' into ventura-alpha 2022-06-11 20:22:50 -06:00
Mykola Grymalyuk
fb3dc4636b CHANGELOG: fix typo 2022-06-11 20:07:12 -06:00
Mykola Grymalyuk
03b8b46550 build.py: Allow dyld sharred cache swapping on pre-Haswell 2022-06-11 20:03:55 -06:00
Mykola Grymalyuk
c63bfae574 build.py: fix typo 2022-06-11 12:08:42 -06:00
Mykola Grymalyuk
c8f582f49d Fix VMM patch set for Ventura 2022-06-11 11:49:55 -06:00
Mykola Grymalyuk
05cff05749 Resolve Ethernet support on MacPro3,1-5,1 2022-06-11 11:11:59 -06:00
Mykola Grymalyuk
084c0cc438 build.py: Add Ventura USB map injection 2022-06-11 10:50:18 -06:00
Mykola Grymalyuk
12ebef03db Merge branch 'main' into ventura-alpha 2022-06-11 10:34:58 -06:00
Mykola Grymalyuk
fe945f9d7d Merge branch 'main' into ventura-alpha 2022-06-10 15:36:08 -06:00
Mykola Grymalyuk
ece5a820dd Resolve CI erroring 2022-06-10 15:31:51 -06:00
Mykola Grymalyuk
657b80795f smbios_data.py: Set Max OS 2022-06-10 15:23:27 -06:00
Mykola Grymalyuk
a2b971735a sys_patch_detect.py: Halt on missing KDK 2022-06-10 14:21:56 -06:00
Mykola Grymalyuk
92d2f0ba23 sys_patch_detect.py: Add KDK check to Ventura root patching 2022-06-10 14:17:50 -06:00
Mykola Grymalyuk
9fb2efee8d Fix Top case bundle pathing 2022-06-09 14:37:01 -06:00
Mykola Grymalyuk
24dae1dc45 installer.py: Add Ventura sucatalog 2022-06-09 13:11:45 -06:00
Mykola Grymalyuk
8eafe33d92 Add Ventura models 2022-06-09 12:32:38 -06:00
Mykola Grymalyuk
a60f898e41 Merge branch 'main' into ventura-alpha 2022-06-09 12:13:11 -06:00
Mykola Grymalyuk
88610ff3de sys_patch.py: work-around kmutil linking in Ventura 2022-06-07 11:33:51 -07:00
292 changed files with 39600 additions and 7519 deletions

View File

@@ -95,7 +95,6 @@ body:
description: What variant of our software are you running?
options:
- GUI (Graphical User Interface)
- TUI (Text User Interface)
- CLI (Command Line Interface)
- Other/Non-Applicable
validations:
@@ -126,7 +125,7 @@ body:
id: used-forums
attributes:
label: Have you already verified this is a patcher bug and not a macOS bug/user error on our discord servers?
description: If no, please do not use issues for this. We'd appreciate it if users check discuss with others before filing. Issues are for valid patcher issues only, not for personal troubleshooting scessions.
description: If no, please do not use issues for this. We'd appreciate it if users check discuss with others before filing. Issues are for valid patcher issues only, not for personal troubleshooting secessions.
multiple: true
options:
- 'true'
@@ -136,7 +135,7 @@ body:
- type: dropdown
id: 3rd-party-application
attributes:
label: Is this issue with a 3rd party application?
label: Is this issue with a 3rd party application?
description: If yes, please move discussions onto forums. We're unable to dedicate time to working on every single application that may be broken in macOS. Only file issues if you have a fix you'd like to add to our project
multiple: true
options:

View File

@@ -10,16 +10,23 @@ jobs:
build:
name: Build wxPython
runs-on: x86_64_mojave
if: github.repository_owner == 'dortania'
env:
branch: ${{ github.event.ref }}
commiturl: ${{ github.event.head_commit.url }}
commitdate: ${{ github.event.head_commit.timestamp }}
branch: ${{ github.ref }}
commiturl: ${{ github.event.head_commit.url }}${{ github.event.release.html_url }}
commitdate: ${{ github.event.head_commit.timestamp }}${{ github.event.release.published_at }}
MAC_NOTARIZATION_USERNAME: ${{ secrets.MAC_NOTARIZATION_USERNAME }}
MAC_NOTARIZATION_PASSWORD: ${{ secrets.MAC_NOTARIZATION_PASSWORD }}
ANALYTICS_KEY: ${{ secrets.ANALYTICS_KEY }}
ANALYTICS_SITE: ${{ secrets.ANALYTICS_SITE }}
steps:
- uses: actions/checkout@v3
- run: /Library/Frameworks/Python.framework/Versions/3.9/bin/python3 Build-Binary.command --reset_binaries --branch "${{ env.branch }}" --commit "${{ env.commiturl }}" --commit_date "${{ env.commitdate }}"
- run: /Library/Frameworks/Python.framework/Versions/3.10/bin/python3 Build-Binary.command --reset_binaries --branch "${{ env.branch }}" --commit "${{ env.commiturl }}" --commit_date "${{ env.commitdate }}" --key "${{ env.ANALYTICS_KEY }}" --site "${{ env.ANALYTICS_SITE }}"
- run: 'codesign -s "Developer ID Application: Mykola Grymalyuk (S74BDJXQMD)" -v --force --deep --timestamp --entitlements ./payloads/entitlements.plist -o runtime "dist/OpenCore-Patcher.app"'
- run: cd dist; ditto -c -k --sequesterRsrc --keepParent OpenCore-Patcher.app ../OpenCore-Patcher-wxPython.app.zip
- run: ./../sign-wxpython.sh
- run: xcrun altool --notarize-app --primary-bundle-id "com.dortania.opencore-legacy-patcher" --username "${{ env.MAC_NOTARIZATION_USERNAME }}" --password "${{ env.MAC_NOTARIZATION_PASSWORD }}" --file OpenCore-Patcher-wxPython.app.zip
- run: packagesbuild ./payloads/InstallPackage/AutoPkg-Assets-Setup.pkgproj
- run: mv ./OpenCore-Patcher-wxPython.app.zip ./OpenCore-Patcher-GUI.app.zip
- name: Upload App to Artifacts
@@ -27,11 +34,13 @@ jobs:
with:
name: OpenCore-Patcher.app (GUI)
path: OpenCore-Patcher-GUI.app.zip
- name: Upload Package to Artifacts
uses: actions/upload-artifact@v3
with:
name: AutoPkg-Assets.pkg
path: ./dist/AutoPkg-Assets.pkg
- name: Upload Binary to Release
if: github.event_name == 'release'
uses: svenstaro/upload-release-action@e74ff71f7d8a4c4745b560a485cc5fdb9b5b999d
@@ -40,6 +49,7 @@ jobs:
file: OpenCore-Patcher-GUI.app.zip
tag: ${{ github.ref }}
file_glob: true
- name: Upload Package to Release
if: github.event_name == 'release'
uses: svenstaro/upload-release-action@e74ff71f7d8a4c4745b560a485cc5fdb9b5b999d

View File

@@ -1,30 +0,0 @@
name: CI - Build TUI
on:
push:
workflow_dispatch:
release:
types: [published]
jobs:
build:
name: Build TUI
runs-on: x86_64_mojave
env:
branch: ${{ github.event.ref }}
commiturl: ${{ github.event.head_commit.url }}
commitdate: ${{ github.event.head_commit.timestamp }}
steps:
- uses: actions/checkout@v3
- run: /Library/Frameworks/Python.framework/Versions/3.9/bin/python3 Build-Binary.command --build_tui --reset_binaries --branch "${{ env.branch }}" --commit "${{ env.commiturl }}" --commit_date "${{ env.commitdate }}"
- run: 'codesign -s "Developer ID Application: Mykola Grymalyuk (S74BDJXQMD)" -v --force --deep --timestamp --entitlements ./payloads/entitlements.plist -o runtime "dist/OpenCore-Patcher.app"'
- run: cd dist; zip -r ../OpenCore-Patcher-TUI.app.zip OpenCore-Patcher.app
- run: ./../sign-tui.sh
- name: Upload App to Artifacts
uses: actions/upload-artifact@v3
with:
name: OpenCore-Patcher-TUI.app
path: OpenCore-Patcher-TUI.app.zip
- name: Validate OpenCore
run: ./dist/OpenCore-Patcher.app/Contents/MacOS/OpenCore-Patcher --validate

View File

@@ -9,6 +9,7 @@ jobs:
build:
name: Build Site and Deploy
runs-on: ubuntu-latest
if: github.repository_owner == 'dortania'
steps:
- uses: actions/setup-node@v3
with:

20
.github/workflows/validate.yml vendored Normal file
View File

@@ -0,0 +1,20 @@
name: CI - Validation
on:
push:
workflow_dispatch:
release:
types: [published]
jobs:
build:
name: Validate
runs-on: x86_64_mojave
if: github.repository_owner == 'dortania'
env:
branch: ${{ github.ref }}
commiturl: ${{ github.event.head_commit.url }}${{ github.event.release.html_url }}
commitdate: ${{ github.event.head_commit.timestamp }}${{ github.event.release.published_at }}
steps:
- uses: actions/checkout@v3
- run: /Library/Frameworks/Python.framework/Versions/3.10/bin/python3 OpenCore-Patcher-GUI.command --validate

3
.gitignore vendored
View File

@@ -30,3 +30,6 @@ __pycache__/
/payloads/OpenCore-Legacy-Patcher
/payloads/InstallAssistant.pkg.integrityDataV1
/payloads.dmg
/payloads/OpenCore-Legacy-Patcher-*.plist
/payloads/KDK.dmg
*.log

View File

@@ -1,14 +1,7 @@
#!/usr/bin/env python3
# This script's main purpose is to handle the following:
# - Download PatcherSupportPkg resources
# - Convert payloads directory into DMG (GUI only)
# - Build Binary via Pyinstaller
# - Add Launcher.sh (TUI only)
# - Patch 'LC_VERSION_MIN_MACOSX' to OS X 10.10
# - Add commit data to Info.plist
# Copyright (C) 2022 - Mykola Grymalyuk
# Generate stand alone application for OpenCore-Patcher
# Copyright (C) 2022-2023 - Mykola Grymalyuk
from pathlib import Path
import time
@@ -21,34 +14,64 @@ import sys
from resources import constants
class create_binary:
class CreateBinary:
"""
Library for creating OpenCore-Patcher application
This script's main purpose is to handle the following:
- Download external dependancies (ex. PatcherSupportPkg)
- Convert payloads directory into DMG
- Build Binary via Pyinstaller
- Patch 'LC_VERSION_MIN_MACOSX' to OS X 10.10
- Add commit data to Info.plist
"""
def __init__(self):
start = time.time()
print("- Starting build script")
self.set_cwd()
self.args = self.parse_arguments()
self.preflight_processes()
self.build_binary()
self.postflight_processes()
self.args = self._parse_arguments()
self._set_cwd()
self._preflight_processes()
self._build_binary()
self._postflight_processes()
print(f"- Build script completed in {str(round(time.time() - start, 2))} seconds")
def set_cwd(self):
def _set_cwd(self):
"""
Initialize current working directory to parent of this script
"""
os.chdir(Path(__file__).resolve().parent)
print(f"- Current Working Directory: \n\t{os.getcwd()}")
def parse_arguments(self):
def _parse_arguments(self):
"""
Parse arguments passed to script
"""
parser = argparse.ArgumentParser(description='Builds OpenCore-Patcher binary')
parser.add_argument('--build_tui', action='store_true', help='Builds TUI binary, if ommited GUI binary is built')
parser.add_argument('--branch', type=str, help='Git branch name')
parser.add_argument('--commit', type=str, help='Git commit URL')
parser.add_argument('--commit_date', type=str, help='Git commit date')
parser.add_argument('--reset_binaries', action='store_true', help='Force redownload and imaging of payloads')
parser.add_argument('--key', type=str, help='Developer key for signing')
parser.add_argument('--site', type=str, help='Path to server')
args = parser.parse_args()
return args
def setup_pathing(self):
def _setup_pathing(self):
"""
Initialize pathing for pyinstaller
"""
python_path = sys.executable
python_binary = python_path.split("/")[-1]
python_bin_dir = python_path.strip(python_binary)
@@ -56,7 +79,7 @@ class create_binary:
# macOS (using Python installed by homebrew (e.g. brew))
if f"/usr/local/opt/python@3." in sys.executable:
print(f"\t* NOTE: home(brew) python3 detected; using (sys.exec_prefix, python_path) ==> {sys.exec_prefix, python_path}")
# - under brew, pip3 will install pyinstall at:
# - under brew, pip3 will install pyinstaller at:
# /usr/local/lib/python3.9/site-packages/pyinstaller
# and /usr/local/bin/pyinstaller stub to load and run.
@@ -70,23 +93,36 @@ class create_binary:
self.pyinstaller_path = pyinstaller_path
def preflight_processes(self):
def _preflight_processes(self):
"""
Start preflight processes
"""
print("- Starting preflight processes")
self.setup_pathing()
self.delete_extra_binaries()
self.download_resources()
if not self.args.build_tui:
# payloads.dmg is only needed for GUI builds
self.generate_paylods_dmg()
self._setup_pathing()
self._delete_extra_binaries()
self._download_resources()
self._generate_payloads_dmg()
def _postflight_processes(self):
"""
Start postflight processes
"""
def postflight_processes(self):
print("- Starting postflight processes")
if self.args.build_tui:
self.move_launcher()
self.patch_load_command()
self.add_commit_data()
self._patch_load_command()
self._add_commit_data()
self._post_flight_cleanup()
self._mini_validate()
def _build_binary(self):
"""
Build binary via pyinstaller
"""
def build_binary(self):
if Path(f"./dist/OpenCore-Patcher.app").exists():
print("- Found OpenCore-Patcher.app, removing...")
rm_output = subprocess.run(
@@ -98,33 +134,130 @@ class create_binary:
print(rm_output.stderr.decode('utf-8'))
raise Exception("Remove failed")
self._embed_key()
if self.args.build_tui:
print("- Building TUI binary...")
build_args = [self.pyinstaller_path, "./OpenCore-Patcher.spec", "--noconfirm"]
else:
print("- Building GUI binary...")
build_args = [self.pyinstaller_path, "./OpenCore-Patcher-GUI.spec", "--noconfirm"]
print("- Building GUI binary...")
build_args = [self.pyinstaller_path, "./OpenCore-Patcher-GUI.spec", "--noconfirm"]
build_result = subprocess.run(build_args, stdout=subprocess.PIPE, stderr=subprocess.PIPE)
self._strip_key()
if build_result.returncode != 0:
print("- Build failed")
print(build_result.stderr.decode('utf-8'))
raise Exception("Build failed")
def delete_extra_binaries(self):
delete_files = [
"AutoPkg-Assets.pkg",
"AutoPkg-Assets.pkg.zip",
"InstallAssistant.pkg",
def _embed_key(self):
"""
Embed developer key into binary
"""
if not self.args.key:
print("- No developer key provided, skipping...")
return
if not self.args.site:
print("- No site provided, skipping...")
return
print("- Embedding developer key...")
if not Path("./resources/analytics_handler.py").exists():
print("- analytics_handler.py not found")
return
lines = []
with open("./resources/analytics_handler.py", "r") as f:
lines = f.readlines()
for i, line in enumerate(lines):
if line.startswith("SITE_KEY: str = "):
lines[i] = f"SITE_KEY: str = \"{self.args.key}\"\n"
elif line.startswith("ANALYTICS_SERVER: str = "):
lines[i] = f"ANALYTICS_SERVER: str = \"{self.args.site}\"\n"
with open("./resources/analytics_handler.py", "w") as f:
f.writelines(lines)
def _strip_key(self):
"""
Strip developer key from binary
"""
if not self.args.key:
print("- No developer key provided, skipping...")
return
if not self.args.site:
print("- No site provided, skipping...")
return
print("- Stripping developer key...")
if not Path("./resources/analytics_handler.py").exists():
print("- analytics_handler.py not found")
return
lines = []
with open("./resources/analytics_handler.py", "r") as f:
lines = f.readlines()
for i, line in enumerate(lines):
if line.startswith("SITE_KEY: str = "):
lines[i] = f"SITE_KEY: str = \"\"\n"
elif line.startswith("ANALYTICS_SERVER: str = "):
lines[i] = f"ANALYTICS_SERVER: str = \"\"\n"
with open("./resources/analytics_handler.py", "w") as f:
f.writelines(lines)
def _delete_extra_binaries(self):
"""
Delete extra binaries from payloads directory
"""
whitelist_folders = [
"ACPI",
"Config",
"Drivers",
"Icon",
"InstallPackage",
"Kexts",
"OpenCore",
"Tools",
]
whitelist_files = [
"com.dortania.opencore-legacy-patcher.auto-patch.plist",
"entitlements.plist",
"launcher.sh",
"OC-Patcher-TUI.icns",
"OC-Patcher.icns",
"Universal-Binaries.zip",
]
print("- Deleting extra binaries...")
for file in Path("payloads").glob(pattern="*"):
if file.name in delete_files:
if file.is_dir():
if file.name in whitelist_folders:
continue
print(f" - Deleting {file.name}")
file.unlink()
subprocess.run(["rm", "-rf", file])
else:
if file.name in whitelist_files:
continue
print(f" - Deleting {file.name}")
subprocess.run(["rm", "-f", file])
def _download_resources(self):
"""
Download required dependencies
"""
def download_resources(self):
patcher_support_pkg_version = constants.Constants().patcher_support_pkg_version
required_resources = [
"Universal-Binaries.zip"
@@ -171,21 +304,29 @@ class create_binary:
print(mv_output.stderr.decode('utf-8'))
raise Exception("Move failed")
def generate_paylods_dmg(self):
def _generate_payloads_dmg(self):
"""
Generate disk image containing all payloads
Disk image will be password protected due to issues with
Apple's notarization system and inclusion of kernel extensions
"""
if Path("./payloads.dmg").exists():
if self.args.reset_binaries:
print(" - Removing old payloads.dmg")
rm_output = subprocess.run(
["rm", "-rf", "./payloads.dmg"],
stdout=subprocess.PIPE, stderr=subprocess.PIPE
)
if rm_output.returncode != 0:
print("- Remove failed")
print(rm_output.stderr.decode('utf-8'))
raise Exception("Remove failed")
else:
if not self.args.reset_binaries:
print(" - payloads.dmg already exists, skipping creation")
return
print(" - Removing old payloads.dmg")
rm_output = subprocess.run(
["rm", "-rf", "./payloads.dmg"],
stdout=subprocess.PIPE, stderr=subprocess.PIPE
)
if rm_output.returncode != 0:
print("- Remove failed")
print(rm_output.stderr.decode('utf-8'))
raise Exception("Remove failed")
print(" - Generating DMG...")
dmg_output = subprocess.run([
'hdiutil', 'create', './payloads.dmg',
@@ -203,7 +344,12 @@ class create_binary:
print(" - DMG generation complete")
def add_commit_data(self):
def _add_commit_data(self):
"""
Add commit data to Info.plist
"""
if not self.args.branch and not self.args.commit and not self.args.commit_date:
print(" - No commit data provided, adding source info")
branch = "Built from source"
@@ -223,20 +369,25 @@ class create_binary:
}
plistlib.dump(plist, Path(plist_path).open("wb"), sort_keys=True)
def patch_load_command(self):
# Patches LC_VERSION_MIN_MACOSX in Load Command to report 10.10
#
# By default Pyinstaller will create binaries supporting 10.13+
# However this limitation is entirely arbitrary for our libraries
# and instead we're able to support 10.10 without issues.
#
# To verify set version:
# otool -l ./dist/OpenCore-Patcher.app/Contents/MacOS/OpenCore-Patcher
#
# cmd LC_VERSION_MIN_MACOSX
# cmdsize 16
# version 10.13
# sdk 10.9
def _patch_load_command(self):
"""
Patch LC_VERSION_MIN_MACOSX in Load Command to report 10.10
By default Pyinstaller will create binaries supporting 10.13+
However this limitation is entirely arbitrary for our libraries
and instead we're able to support 10.10 without issues.
To verify set version:
otool -l ./dist/OpenCore-Patcher.app/Contents/MacOS/OpenCore-Patcher
cmd LC_VERSION_MIN_MACOSX
cmdsize 16
version 10.13
sdk 10.9
"""
print(" - Patching LC_VERSION_MIN_MACOSX")
path = './dist/OpenCore-Patcher.app/Contents/MacOS/OpenCore-Patcher'
find = b'\x00\x0D\x0A\x00' # 10.13 (0xA0D)
@@ -247,16 +398,39 @@ class create_binary:
with open(path, 'wb') as f:
f.write(data)
def move_launcher(self):
print(" - Adding TUI launcher")
mv_output = subprocess.run(
["cp", "./payloads/launcher.sh", "./dist/OpenCore-Patcher.app/Contents/MacOS/Launcher"],
def _post_flight_cleanup(self):
"""
Post flight cleanup
"""
path = "./dist/OpenCore-Patcher"
print(f" - Removing {path}")
rm_output = subprocess.run(
["rm", "-rf", path],
stdout=subprocess.PIPE, stderr=subprocess.PIPE
)
if mv_output.returncode != 0:
print(" - Move failed")
print(mv_output.stderr.decode('utf-8'))
raise Exception("Move failed")
if rm_output.returncode != 0:
print(f" - Remove failed: {path}")
print(rm_output.stderr.decode('utf-8'))
raise Exception(f"Remove failed: {path}")
def _mini_validate(self):
"""
Validate generated binary
"""
print(" - Validating binary")
validate_output = subprocess.run(
["./dist/OpenCore-Patcher.app/Contents/MacOS/OpenCore-Patcher", "--build", "--model", "MacPro3,1"],
stdout=subprocess.PIPE, stderr=subprocess.PIPE
)
if validate_output.returncode != 0:
print(" - Validation failed")
print(validate_output.stderr.decode('utf-8'))
raise Exception("Validation failed")
if __name__ == "__main__":
create_binary()
CreateBinary()

View File

@@ -1,5 +1,339 @@
# OpenCore Legacy Patcher changelog
## 0.6.4
- Backend changes:
- Implement new analytics_handler.py module
- Adds support for anonymous analytics including host info (and crash reports in the future)
- Can be disabled via GUI or `defaults write com.dortania.opencore-legacy-patcher DisableCrashAndAnalyticsReporting -bool true`
- Resolve Safari rendering error on Ivy Bridge in macOS 13.3+
- Increment Binaries:
- RestrictEvents 1.1.1 - rolling (495f4d5)
## 0.6.3
- Update non-Metal Binaries:
- Resolves Safari 16.4 rendering issue
- Resolves left side menubar selections
- Implements automatic menubar text color
- New experimental Menubar implementation can be enabled via `defaults write -g Amy.MenuBar2Beta -bool true`
- Note: If you experience issues with the new implementation, you can revert back to the old implementation by running `defaults delete -g Amy.MenuBar2Beta`
- Implement full IOUSBHostFamily downgrade for UHCI/OHCI
- Resolves panics on certain iMac models
- Resolve unused KDKs not being properly cleaned up
- Implement MXM graphics handling for iMac9,1
- Credit to [@Ausdauersportler](https://github.com/Ausdauersportler) for implementation
- Resolve CoreGraphics.framework crashing on Ivy Bridge CPUs in macOS 13.3+
- Disables f16c sysctl reporting
- Resolve accidental CPU renaming with RestrictEvents
- Resolve backlight and internal display support for AMD Navi MXM GPUs
- Credit to [@Ausdauersportler](https://github.com/Ausdauersportler) for bug fix
- Resolve 3rd Party Apps erroring on Metal with macOS 13.3
- Applicable Software: Applications directly using Metal (ex. Blender, Parallels Desktop)
- Applicable Hardware: 3802-based GPUs (ie. Intel Ivy Bridge and Haswell iGPUs, Nvidia Kepler dGPUs)
- Backend changes:
- Use `.AppleSystemUIFont` for wxPython text rendering (thanks [@jazzzny](https://github.com/Jazzzny))
- Add extra error handling for network errors:
- Handles `RemoteDisconnected('Remote end closed connection without response')` exceptions
- Move root volume patch set generation to dedicated sys_patch_generate.py module
- Refactored integrity_verification.py:
- Implemented Object-Oriented design
- Reduced disk I/O and main thread monopolization
- Increment Binaries:
- PatcherSupportPkg 0.9.3 - release
- OpenCorePkg 0.9.1 - release
- AirPortBrcmFixup 2.1.7 - release
- RestrictEvents 1.1.0 - release
- BrcmPatchRAM 2.6.5 - release
## 0.6.2
- Work around Black Box rendering issues on certain Display Color Profiles
- Limited to Ventura currently due to limitations with other color profiles
- Applicable for HD3000-based machines (ex. MacBookAir4,x, MacBookPro8,x, Macmini5,x)
- Ensure `Moraea_BlurBeta` is set on non-Metal systems
- Implement proper Root Unpatching verification in GUI
- Removes arbitrary patch requirements used against unpatching (ex. network connection)
- Implement Kernel Debug Kit installation during OS installs
- Avoids network requirement for first time installs
- Paired along side AutoPkgInstaller
- Implement Kernel Debug Kit backup system
- Allows for easy restoration of KDKs if OS updates corrupted installed KDKs
- Update Wireless binaries
- Fixed WiFi preferences crash with legacy wifi patches
- Update non-Metal Binaries
- Improved menubar blur saturation
- Fixed System Settings hover effects, including Bluetooth connect button
- Add Books hacks (reimplement cover image generation, disable broken page curl animation)
- Fixed unresponsive buttons
- Implement Hardware Encoding support for AMD GCN 1-3, Polaris and Vega GPUs
- Applicable for pre-Haswell Macs on macOS Ventura
- Resolves DRM playback issues on Netflix, Disney+, etc.
- Note: GCN 1-3 DRM is functional, however hardware video encoding is still experimental
- AppleTV+ may be unstable due to this
- Implement support for AMD Navi and Lexa MXM GPUs in 2009-2011 iMacs
- Primarily applicable for MXM 3.0 variants of AMD WX3200 (0x6981) and AMD RX5500XT (0x7340)
- Credit to [Ausdauersportler](https://github.com/Ausdauersportler) for implementation
- Implement Continuity Camera Unlocking for pre-Kaby Lake CPUs
- Applicable for all legacy Macs in macOS Ventura
- Resolve boot support for 3802-based GPUs with macOS 13.3
- Applicable for following GPUs:
- Intel Ivy Bridge and Haswell iGPUs
- Nvidia Kepler dGPUs
- Note: patchset now requires AMFI to be disabled, patchset still in active development to remove this requirement
- Backend Changes:
- Refactored kdk_handler.py
- Prioritizes KdkSupportPkg repository for downloads
- Skips calls to Apple's now defunct Developer Portal API
- Support local loose matching when no network connection is available
- Implement pkg receipt verification to validate integrity of KDKs
- Implemented logging framework usage for more reliable logging
- Logs are stored under `~/Library/Logs/OpenCore-Patcher.log`
- Subsequent runs are appended to the log, allowing for easy debugging
- Implemented new network_handler.py module
- Allows for more reliable network calls and downloads
- Better supports network timeouts and disconnects
- Dramatically less noise in console during downloads
- Implemented new macOS Installer handler
- Removed unused modules:
- sys_patch_downloader.py
- run.py
- TUI modules
- Build Server Changes:
- Upgrade Python backend to 3.10.9
- Upgrade Python modules:
- requests - 2.28.2
- pyobjc - 9.0.1
- wxpython - 4.2.0
- pyinstaller - 5.7.0
- packaging - 23.0
- Increment Binaries:
- PatcherSupportPkg 0.8.7 - release
- AutoPkgInstaller 1.0.2 - release
- FeatureUnlock 1.1.4 - rolling (0e8d87f)
- Lilu 1.6.4 - release
- WhateverGreen 1.6.4 - release
- NVMeFix 1.1.0 - release
- Innie 1.3.1 - release
- OpenCorePkg 0.9.0 - release
## 0.6.1
- Avoid usage of KDKlessWorkaround on hardware not requiring it
- Resolves AMD Graphics Regression from 0.5.3
- Increment Binaries:
- KDKlessWorkaround 1.0.0 - rolling (8e41f39)
## 0.6.0
- Resolve external NVMe reporting regression from 0.5.2
- Implement Legacy Wireless support for Ventura
- Applicable for BCM94328, BCM94322 and Atheros chipsets
- Implement Wifi-only patches when no internet connection available but required (ie. KDKs)
- Allows users to install Legacy Wireless patches, then connect to the internet to install remaining patches
- Resolve `/Library/Extensions` not being cleaned on KDK-less root patches
- Add AMD Vega Graphics support for pre-AVX2.0 systems on Ventura
- ex. AMD Vega 56 and 64, AMD Radeon VII
- Note: As with Polaris, Vega GPUs cannot be mixed with AMD GCN 1-3 patches
- Patcher will prioritize the AMD GCN 1-3 (assumption that GCN is primary GPU, ex. MacPro6,1)
- Implement proper `APPLE SSD TS0128F/256F` detection
- Allows all Macs to utilize patch if required
- Avoids usage of patch when host lacks affected drive (ex. MacBookAir6,x with upgraded SSD)
- Prompt with auto patcher when booted OpenCore is out of date to root patcher
- ex. Booted OCLP is 0.5.2, root patcher is 0.5.3
- Disable native AMD Graphics on pre-Haswell Macs in Ventura
- Allows for easy root patching, dropping reliance on Safe Mode to boot
- Primarily applicable for iMacs and Mac Pros with AMD Polaris and Vega GPUs
- Implement mini validation during GUI build
- Add early UHCI/OHCI support (USB1.1)
- Implemented via Root Volume patching, ie. no installer support at this time
- Support should be seen as experimental, especially for laptops
- Applicable for Penryn Macs and Cheese Grater Mac Pros (MacPro3,1 - MacPro5,1)
- See associated issue for current limitations: [Legacy UHCI/OHCI support in Ventura](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021)
- USB 3.0 controllers cannot be used along side USB 1.1 patches, OCLP will prioritize USB 3.0 support
- Add early non-Metal Graphics Acceleration support for macOS Ventura
- Applicable for following GPU architectures:
- Intel Ironlake and Sandy Bridge
- Nvidia Tesla, Maxwell and Pascal
- AMD TeraScale 1 and 2
- Notes:
- Bluetooth Pairing is currently semi-functional, see here for work around: [Tab+Space work-around](https://forums.macrumors.com/threads/macos-13-ventura-on-unsupported-macs-thread.2346881/post-31858759)
- AMFI currently needs to be outright disabled in Ventura
- Overall non-Metal improvements:
- Improved fake rim
- Fixed full screen animation
- Fixed split screen
- Improved menubar blur
- Add Nvidia Kepler GOP Driver injection
- Primarily for GPUs lacking GOPs and can't have a newer VBIOS flashed
- Resolve Rapid Security Response support for Haswell+ Macs requiring KDKs
- Implemented via:
- Userspace: [RSRRepair](https://github.com/flagersgit/RSRRepair) at `/etc/rc.server` (2b1c9e3)
- Kernelspace: [RSRHelper.kext](https://github.com/khronokernel/RSRHelper) (cbe1be9)
- Add APFS Trim Configuration
- Settings -> Misc Settings -> APFS Trim
- Increment Binaries:
- OpenCorePkg 0.8.8 - release
- PatcherSupportPkg 0.8.2 - release
- KDKlessWorkaround 1.0.0 - rolling (4924276)
- FeatureUnlock 1.1.2 - release
- CPUFriend 1.2.6 - release
- Lilu 1.6.3 - release
## 0.5.3
- Integrate FixPCIeLinkrate.efi v0.1.0
- Fixes link rate for PCIe 3.0 devices on MacPro3,1
- Resolve AppleIntelCPUPowerManagement Panic in Safe Mode
- Applicable for pre-Haswell Macs on Ventura
- Revert AppleALC 1.7.6 update back to 1.6.3
- Resolves audio issues on certain Intel HDEF devices
- Regression currently being investigated within AppleALC
- Remove `Force Web Drivers` option
- Avoids accidental use of non-Metal Web Drivers on Kepler GPUs
- Resolve silent auto patcher crash when new OCLP version is available
- Implement [`py_sip_xnu`](https://github.com/khronokernel/py_sip_xnu) module
- Resolve Content Caching Patch Regression
- Resolve KDK Versioning Fallback crashing when primary KDK site is down
- Resolve AirPlay to Mac support on Ventura with VMM
- Resolve WindowServer crashing on KDK-less with macOS 13.2 and Rapid Security Response updates
- Resolve Host Versioning when RSR is installed
- Resolve iMac7,1-8,1 and MacBookPro4,1 boot support in Ventura
- Increment Binaries:
- OpenCorePkg 0.8.7 - release
- FeatureUnlock 1.1.2 - rolling (94e29ce)
- WhateverGreen 1.6.2 - release
## 0.5.2
- Ventura Specific Updates:
- Resolve AMD Polaris external display output support
- AMD Polaris and legacy GCN cannot be mixed in the same system
- Legacy GCN support will be prioritized when both are present
- AMD Polaris GPU can still be used headless for rendering with legacy GCN (ex. [macOS: Prefer External GPU option](https://support.apple.com/en-ca/HT208544))
- Disables unsupported `mediaanalysisd` on Metal 1 GPUs
- Alleviates kernel panic when on prolonged idle
- Automatically remove unsupported News Widgets on Ivy Bridge and Haswell iGPUs
- Alleviates Notification Centre Crashing
- Implement downloading from Kernel Debug Kit Backup Repository
- Alleviates issues with Apple blocking KDK downloads from OCLP (Ref: [Issue #1016](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1016))
- Work-around MacPro6,1 and Lilu race condition
- Ensure Model and Board ID are set correctly before Lilu loads
- Publish Application Version in UI header
- Allows for easier identification of version when reporting issues
- Drop usage of `HW_BID` rerouting in boot.efi
- Patch out PlatformSupport.plist instead, allows for less maintenance overall
- Add support for AMD GOP injection (AMDGOP.efi)
- For MXM iMacs and Mac Pros with GPU VBIOS lacking GOP support (ie. no UEFI output even after OC loads)
- Hide OpenCore Boot Picker when waking from hibernation
- Increment Binaries:
- AirPortBrcmFixup 2.1.6 - release
- AppleALC 1.7.6 - release
- CryptexFixup 1.0.1 - release
- DebugEnhancer 1.0.7 - release
- FeatureUnlock 1.1.0 - release
- OpenCorePkg 0.8.7 - rolling (fcb4e33)
- RestrictEvents 1.0.9 - release
- WhateverGreen 1.6.1 - release
## 0.5.1
- Add support for `APPLE SSD TS0128F/256F` SSDs in macOS Ventura
- ie. stock SSD found in MacBookAir6,x
- Lax KDK N-1 logic to allow 1 minor version difference
- ex. Allow 13.0 KDK on 13.1
- Clean out `/Library/Extensions` on KDK-less root patches
- Ensures old, incompatible kexts are not linked against
- Old kexts are relocated to `/Library/Relocated Extensions`
- Add OpenCore Picker timeout selection
- Partially resolve MacPro6,1 support
- Allows for install and usage of 2013 Mac Pros on Ventura
- Currently CPU Power Management is not supported
## 0.5.0
- Ventura Specific Updates:
- Switch boot.efi model patch to iMac18,1
- Resolve pre-Force Touch Trackpad support in Ventura
- Add Ventura-dropped Models:
- MacPro6,1
- Macmini7,1
- iMac16,x, iMac17,1
- MacBook9,1
- MacBookAir7,x
- MacBookPro11,4/5, MacBookPro12,1, MacBookPro13,x
- Add Ventura Software Catalog parsing
- Add Kernel Debug Kit checks to Ventura root patching
- Add USB map injection for dropped models
- Resolve Ethernet support on MacPro3,1-5,1
- Fix VMM patch set
- Allow dyld shared cache swapping on pre-Haswell
- Fix MouSSE/SSE4,2 emulation in macOS 13.0 Beta 3 (22A5295h)
- Graphics Acceleration for legacy Metal GPUs
- Intel: Ivy Bridge, Haswell, Broadwell and Skylake
- Nvidia: Kepler
- AMD: GCN 1 through 3
- AMD: Polaris (on pre-AVX2.0 systems)
- Boot in safe mode to avoid stock driver loading
- Raise SIP requirement to 0x803 for root patching
- Add Ventura Boot Picker icons
- Implement KDK-less root patching for Metal Intel and Nvidia GPUs
- AMD GCN will still require a KDK installed for patching
- Resolve OpenCL support for legacy Metal GPUs
- Implement Automatic Rosetta Cryptex installation on OS installs and updates
- Drops need for manual OS.dmg swapping on pre-Haswell
- Implement automatic Kernel Debug Kit downloader for systems requiring Boot/SysKC rebuilding
- ex. AMD GCN
- Relies on N-1 system for when matching KDK is not present
- Delete unused KDKs in `/Library/Developer/KDKs` during root patching
- Resolve Power Management support for Ivy Bridge and older
- Drop AMFI requirement for Nvidia Kepler and AMD GCN 1-3
- Resolve numerous AMD GCN 1-3 issues (ex. Photos.app, Screen Saver, etc.)
- Resolve dGPU support for MacBookPro13,3
- Add work-around to Catalyst Buttons not responding on non-Metal in macOS Monterey
- Re-export OpenCanopy icons to better support Haswell and newer Macs
- Increment Binaries:
- OpenCorePkg 0.8.5 release
- Lilu 1.6.2 - release
- FeatureUnlock 1.0.9 release
- PatcherSupportPkg 0.7.1 - release
- BrcmPatchRAM 2.6.4 - release
- AutoPkgInstaller 1.0.1 - release
- CryptexFixup 1.0.1 - rolling (cf3a1e4)
## 0.4.12
## 0.4.11
- Enable AppleMCEReporterDisabler whenever spoofing affected SMBIOS
- ie. iMacPro1,1, MacPro6,1 and MacPro7,1
- Verify host's disk space before downloading macOS Installers
- Remove duplicate OS builds in macOS downloader
- Avoids Apple's odd bug of publishing 2 different 12.5.1 products
- Implement deeper macOS installer parsing
- Provides better version detection than Apple provides in .app
- Ensure WhateverGreen is always installed on Mac Pro configurations
- Resolve Safari 16 rendering in macOS 12.6
- Increment Binaries:
- PatcherSupportPkg 0.5.4 - release
- Add missing OpenCL resources for Nvidia GPUs
## 0.4.10
- Resolve Nvidia Kepler support in macOS 12.5 Beta 3 and newer
- Increment Binaries:
- PatcherSupportPkg 0.5.2 - release
## 0.4.9
- Split Kepler userspace and kernel space patches
- Only installs kernel space patches on 12.5 and newer
- Avoids lock out of user, however breaks graphics acceleration
- Install 12.4 or older for full graphics acceleration on Kepler
- Reference: [macOS 12.5: Nvidia Kepler and WindowServer crashing #1004](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1004)
## 0.4.8
- Ensure Apple Silicon-specific installers are not listed
- ie. M2 specific build (21F2092)
- Avoid adding OpenCore icon in boot picker if Windows bootloader on same partition
- Add error-handling to corrupt/non-standard NVRAM variables
- Add warning prompt when using 'Allow native models'
- Attempt to avoid misuse of option
- Work-around `Failed to extract AssetData` during installer creation
- Apple bug, resolved by using CoW into a different directory than `/Applications`
- Avoid listing beta installers in downloader
- Warn about downloading macOS Ventura installers, unsupported by current patcher
- Fix AppleGVA regression introduced in 0.4.6
- Applicable for Ivy Bridge-only systems
## 0.4.7
- Fix crashing on defaults parsing
@@ -28,7 +362,6 @@
- Deprecate TUI support
- Users may still manually run from source for future builds
- Binaries will no longer be provided on future release
- Switch boot.efi model patch to iMac18,1
## 0.4.5
- Fix AutoPatcher.pkg download on releases
@@ -77,11 +410,11 @@
- Unknown whether this is a "bug" or intentional from Apple, affects native Macs with SIP disabled
- Resolved non-Metal issues:
- Catalyst crashing after 1200 seconds on non-Metal
- Automatic Light/Darkmode (credit @moosethegoose2213)
- Automatic Light/Dark mode (credit @moosethegoose2213)
- Rim improvements
- Trackpad swipe between pages
- Cycle between windows
- Improve Display Prefpane Image
- Improve Display Preference pane Image
- Defaults prefix change (`ASB_` -> `MORAEA_`, reopen non-Metal Settings to apply)
- Increment Binaries:
- PatcherSupportPkg 0.3.9 - release
@@ -114,9 +447,9 @@
- Add Disk Highlighting during Build/Install for previously installed disks
- Only list newest installers by default (reload to show older binaries)
- Remove manual root unpatching
- Removed due to reliablity issues
- Removed due to reliability issues
- `bless` based reversion still supported in Big Sur+
- Remove Unoffical Mojave/Catalina Root Patching
- Remove Unofficial Mojave/Catalina Root Patching
- For TeraScale 2-based acceleration on older OSes, use v0.4.3
- Simplify Binary options
- Removes Online Patcher Variants
@@ -136,7 +469,7 @@
- Control Centre Sliders
- Shift/missing icons
- Hardware Cursor
- Note cursor images will be static (ie. beachball)
- Note cursor images will be static (ie. beach ball)
- Quicklook dismiss/expand
- Keyboard Backlight
- Drops reliance on LabTick
@@ -199,7 +532,7 @@
- PatcherSupportPkg 0.2.9 - release
- Re-add Content Caching support for VMM-spoofed systems
- Add wxPython Based GUI
- Superceeds Obj-C Based GUI
- Supersedes Obj-C Based GUI
- Both standard and offline builds provided
- Allow optional spoofing on native Models
- Recommended for systems that cannot update their firmware natively (ie. dead internal drive)
@@ -259,7 +592,7 @@
- Allow for setting custom SIP values via TUI
- Drop `CSR_ALLOW_EXECUTABLE_POLICY_OVERRIDE` requirement for root patching
- Lowers default SIP Disabled value to 0xA03
- Update Legacy GMUX patchset to latest Sierra Secuirty Update
- Update Legacy GMUX patchset to latest Sierra security Update
- [Source](https://github.com/HackintoshHD/mbp5x-instant-gpu-switching)
- Fix non-Metal acceleration crashing on 12.0.1
- Yes Apple adding a notch broke our accel patches
@@ -360,7 +693,7 @@
- Applicable for BRCM2046 and BRCM2070 chipsets
- Disable Library Validation allowing for AMFI usage
- Remove reliance on amfi_get_out_of_my_way=1
- Add Kepler Accleration Patches for Monterey Beta 7 and newer
- Add Kepler Acceleration Patches for Monterey Beta 7 and newer
- Add FirmwareFeature upgrading to all Models
- Fixes Monterey Beta 7 installation issues
- Add iMac7,1 USB map
@@ -424,7 +757,7 @@
- RestrictEvents 1.0.3 rolling (3773ce2 - 06-20-2021)
- SidecarFixup 1.0.2 rolling (2c29166 - 06-21-2021)
- PatcherSupportPkg 0.0.18
- Allow AirPlay to Mac support on Skylake - Coffeelake Macs
- Allow AirPlay to Mac support on Skylake - Coffee Lake Macs
## 0.1.9
@@ -645,7 +978,7 @@
- OpenCore 9cd61bb (0.6.8 rolling - 2021-03-27)
- Add Mavericks and newer .app support
- Refactor USB map building, fixes USB 3.0 displaying as USB 2.0
- Fix blackscreen on MacBookPro9,1
- Fix black screen on MacBookPro9,1
- Update RestrictEvents with custom build (1.0.1)
- Blocks `/usr/libexec/displaypolicyd` on MacBookPro9,1 to ensure smooth GPU switching
- Add custom SD Card icon

View File

@@ -3,4 +3,4 @@
from resources import main
if __name__ == '__main__':
main.OpenCoreLegacyPatcher(True)
main.OpenCoreLegacyPatcher()

View File

@@ -1,6 +0,0 @@
#!/usr/bin/env python3
# Copyright (C) 2020-2022, Dhinak G, Mykola Grymalyuk
from resources import main
if __name__ == '__main__':
main.OpenCoreLegacyPatcher()

View File

@@ -1,44 +0,0 @@
# -*- mode: python ; coding: utf-8 -*-
import sys, os
sys.path.append(os.path.abspath(os.getcwd()))
from resources import constants
block_cipher = None
a = Analysis(['OpenCore-Patcher.command'],
pathex=['resources', 'data'],
binaries=[],
datas=[('payloads', 'payloads')],
hiddenimports=[],
hookspath=[],
runtime_hooks=[],
excludes=['wxPython', 'wxpython'],
win_no_prefer_redirects=False,
win_private_assemblies=False,
cipher=block_cipher,
noarchive=False)
pyz = PYZ(a.pure, a.zipped_data,
cipher=block_cipher)
exe = EXE(pyz,
a.scripts,
a.binaries,
a.zipfiles,
a.datas,
[],
name='OpenCore-Patcher',
debug=False,
bootloader_ignore_signals=False,
strip=False,
upx=True,
upx_exclude=[],
runtime_tmpdir=None,
console=True )
app = BUNDLE(exe,
name='OpenCore-Patcher.app',
icon="payloads/OC-Patcher-TUI.icns",
bundle_identifier="com.dortania.opencore-legacy-patcher-tui",
info_plist={
"CFBundleShortVersionString": constants.Constants().patcher_version,
"CFBundleExecutable": "MacOS/Launcher",
"NSHumanReadableCopyright": constants.Constants().copyright_date,
})

25
PRIVACY.md Normal file
View File

@@ -0,0 +1,25 @@
# Privacy Policy
OpenCore Legacy Patcher may collect pseudo-anonymized data about the host system and the OpenCore Legacy Patcher application. This data is used to improve the project and to help diagnose issues. The data collected is as follows:
* System's UUID as a SHA1 hash
* This is used to identify the system and to prevent duplicate reports
* Cannot be used to identify the system without the user providing the UUID
* Application name and version
* System's OS version
* System's model name, GPUs present and firmware vendor
* May include more hardware information in the future (ex. CPU, WiFi, etc)
* General country code of system's reported region
* ex. `US`, `CA`, etc
Identifiable data such as IP addresses, MAC addresses, serial numbers, etc. are not collected.
In the future, crash logs may also be collected to help with diagnosing issues.
----------
Users who wish to opt-out can do so either via the application's preferences or via the following command:
```
defaults write com.dortania.opencore-legacy-patcher DisableCrashAndAnalyticsReporting -bool true
```
To have your data removed, please contact us via our [Discord server](https://discord.gg/rqdPgH8xSN) and provide the UUID of your system.

View File

@@ -5,7 +5,7 @@
A Python-based project revolving around [Acidanthera's OpenCorePkg](https://github.com/acidanthera/OpenCorePkg) and [Lilu](https://github.com/acidanthera/Lilu) for both running and unlocking features in macOS on supported and unsupported Macs.
Our project's main goal is to breath new life to Macs no longer supported by Apple, allowing for the installation and usage of macOS Big Sur and newer on machines as old as 2007.
Our project's main goal is to breathe new life into Macs no longer supported by Apple, allowing for the installation and usage of macOS Big Sur and newer on machines as old as 2007.
----------
@@ -15,24 +15,24 @@ Our project's main goal is to breath new life to Macs no longer supported by App
Noteworthy features of OpenCore Legacy Patcher:
* Support for macOS Big Sur and Monterey
* Native Over the Air(OTA) System Updates
* Support for macOS Big Sur, Monterey and Ventura
* Native Over the Air (OTA) System Updates
* Supports Penryn and newer Macs
* Full support for WPA Wifi and Personal Hotspot on BCM943224 and newer chipsets
* Full support for WPA Wi-Fi and Personal Hotspot on BCM943224 and newer wireless chipsets
* System Integrity Protection, FileVault 2, .im4m Secure Boot and Vaulting
* Recovery OS, Safe Mode and Single-user Mode booting on non-native OSes
* Unlocks features such as Sidecar and AirPlay to Mac even on native Macs
* Enable enhanced SATA and NVMe power management on non-stock hardware
* Enables enhanced SATA and NVMe power management on non-Apple storage devices
* Zero firmware patching required (ie. APFS ROM patching)
* Graphics acceleration for both Metal and non-Metal GPUs
----------
Note: Only clean-installs and upgrades are supported, macOS Big Sur installs already patched with other patchers, such as [Patched Sur](https://github.com/BenSova/Patched-Sur) or [bigmac](https://github.com/StarPlayrX/bigmac), cannot be used due to broken file integrity with APFS snapshots and SIP.
Note: Only clean-installs and upgrades are supported. macOS Big Sur installs already patched with other patchers, such as [Patched Sur](https://github.com/BenSova/Patched-Sur) or [bigmac](https://github.com/StarPlayrX/bigmac), cannot be used due to broken file integrity with APFS snapshots and SIP.
* You can however reinstall macOS with this patcher and retain your original data
* You can, however, reinstall macOS with this patcher and retain your original data
Note 2: Currently OpenCore Legacy Patcher officially supports patching to run macOS Big Sur and Monterey installs. For older OSes, OpenCore may function however support is currently not provided from Dortania.
Note 2: Currently, OpenCore Legacy Patcher officially supports patching to run macOS Big Sur through Ventura installs. For older OSes, OpenCore may function; however, support is currently not provided from Dortania.
* For macOS Mojave and Catalina support, we recommend the use of [dosdude1's patchers](http://dosdude1.com)
@@ -44,8 +44,10 @@ To start using the project, please see our in-depth guide:
## Support
To get aid with the patcher, we recommend joining the [OpenCore Patcher Paradise Discord Server](https://discord.gg/rqdPgH8xSN). We're actively there and is the quickest way to receive help.
This project is offered on an AS-IS basis, we do not guarantee support for any issues that may arise. However, there is a community server with other passionate users and developers that can aid you:
* [OpenCore Patcher Paradise Discord Server](https://discord.gg/rqdPgH8xSN)
* Keep in mind that the Discord server is maintained by the community, so we ask everyone to be respectful.
* Please review our docs on [how to debug with OpenCore](https://dortania.github.io/OpenCore-Legacy-Patcher/DEBUG.html) to gather important information to help others with troubleshooting.
## Running from source
@@ -55,14 +57,14 @@ To run the project from source, see here: [Build and run from source](./SOURCE.m
## Credits
* [Acidanthera](https://github.com/Acidanthera)
* OpenCorePkg as well as many of the core kexts and tools
* OpenCorePkg, as well as many of the core kexts and tools
* [DhinakG](https://github.com/DhinakG)
* Main co-author
* [Khronokernel](https://github.com/Khronokernel)
* Main co-author
* [Ausdauersportler](https://github.com/Ausdauersportler)
* iMacs Metal GPUs Upgrade Patch set and documentation
* Great amounts of help debugging and code suggestions
* Great amounts of help with debugging, and code suggestions
* [vit9696](https://github.com/vit9696)
* Endless amount of help troubleshooting, determining fixes and writing patches
* [ASentientBot](https://github.com/ASentientBot), [EduCovas](https://github.com/educovas) and [ASentientHedgehog](https://github.com/moosethegoose2213)
@@ -73,7 +75,7 @@ To run the project from source, see here: [Build and run from source](./SOURCE.m
* [Syncretic](https://forums.macrumors.com/members/syncretic.1173816/)
* [AAAMouSSE](https://forums.macrumors.com/threads/mp3-1-others-sse-4-2-emulation-to-enable-amd-metal-driver.2206682/), [telemetrap](https://forums.macrumors.com/threads/mp3-1-others-sse-4-2-emulation-to-enable-amd-metal-driver.2206682/post-28447707) and [SurPlus](https://github.com/reenigneorcim/SurPlus)
* [dosdude1](https://github.com/dosdude1)
* Main author of [original GUI](https://github.com/dortania/OCLP-GUI)
* Main author of the [original GUI](https://github.com/dortania/OCLP-GUI)
* Development of previous patchers, laying out much of what needs to be patched
* [parrotgeek1](https://github.com/parrotgeek1)
* [VMM Patch Set](https://github.com/dortania/OpenCore-Legacy-Patcher/blob/4a8f61a01da72b38a4b2250386cc4b497a31a839/payloads/Config/config.plist#L1222-L1281)
@@ -87,7 +89,18 @@ To run the project from source, see here: [Build and run from source](./SOURCE.m
* Endless hours helping architect and troubleshoot many portions of the project
* [flagers](https://github.com/flagersgit)
* Aid with Nvidia Web Driver research and development
* [joevt](https://github.com/joevt)
* [FixPCIeLinkrate](https://github.com/joevt/joevtApps)
* Amazing users who've graciously donate hardware:
* [JohnD](https://forums.macrumors.com/members/johnd.53633/) - 2013 Mac Pro
* [SpiGAndromeda](https://github.com/SpiGAndromeda) - AMD Vega 64
* [turbomacs](https://github.com/turbomacs) - 2014 5k iMac
* [vinaypundith](https://forums.macrumors.com/members/vinaypundith.1212357/) - MacBook7,1
* [ThatStella7922](https://github.com/ThatStella7922) - 2017 13" MacBook Pro (A1708)
* zephar - 2008 Mac Pro
* jazo97 - 2011 15" MacBook Pro
* And others (reach out if we forgot you!)
* MacRumors and Unsupported Mac Communities
* Endless testing, reporting issues
* Endless testing and reporting issues
* Apple
* for macOS and many of the kexts, frameworks and other binaries we reimplemented into newer OSes

View File

@@ -1,21 +1,20 @@
# Build and run from source
OpenCore Legacy Patcher at its core is a python-based TUI/CLI based application. This means that to run the project from source, you simply need to invoke the OpenCore-Patcher.command file via Python.
OpenCore Legacy Patcher at its core is a Python-based GUI/CLI-based application. In turn, to run the project from source, you simply need to invoke the OpenCore-Patcher-GUI.command file via Python.
For developers wishing to validate mainline changes, you may use these nightly links:
* [GUI (Graphical Based App)](https://nightly.link/dortania/OpenCore-Legacy-Patcher/workflows/build-app-wxpython/main/OpenCore-Patcher.app%20%28GUI%29.zip)
* [TUI (Text Based App)](https://nightly.link/dortania/OpenCore-Legacy-Patcher/workflows/build-app/main/OpenCore-Patcher-TUI.app.zip)
**Warning**: These binaries should not be used without first consulting the [CHANGELOG](./CHANGELOG.md). Do not distribute these links in forums, instead direct to this file.
**Warning**: These binaries should not be used without first consulting the [CHANGELOG](./CHANGELOG.md). Do not distribute these links in forums, please link to this document instead.
* Users running new builds of the project without understanding what has changed are at higher of bricking their installation as they do not read any warnings provided in the CHANGELOG. We wish to minimize these situations as much as possible.
* Users running new builds of the project without understanding what has changed are at a higher risk of bricking their installation as they do not read any warnings provided in the CHANGELOG. We wish to minimize these situations as much as possible.
## Getting Started
To start, ensure you have python 3.6 or newer installed. Additionally ensure that they were downloaded from the Official source, [python.org](https://www.python.org/downloads/macos/).
To start, ensure you have Python 3.6 or newer installed. Additionally, ensure that it was downloaded from the official source, [python.org](https://www.python.org/downloads/macos/).
* Python installations either preinstalled or provided with Xcode/Xcode Tools are unsupported due to reliablility issues
* Python installations either preinstalled or provided with Xcode or the Xcode Command Line Tools are unsupported due to reliability issues.
Once Python is installed, open Terminal and run the following:
@@ -26,49 +25,40 @@ cd ~/Developer
git clone https://github.com/dortania/OpenCore-Legacy-Patcher
# Move into Project directory
cd ./OpenCore-Legacy-Patcher
# Install Python dependacies used by the project
# Install Python dependencies used by the project
pip3 install -r requirements.txt
```
If you have installation error, see following troubleshooting options:
* Use Python 3.9
* Currently our build server uses py3.9 for generating binaries used in releases
* Use .whl snapshots for installing additional dependancies
* [wxPython 4.1.1 wheel for py3.9](https://files.pythonhosted.org/packages/2c/a8/7027e8ca3ba20dc2ed2acd556e31941cb44097ab87d6f81d646a79de4eab/wxPython-4.1.1-cp39-cp39-macosx_10_10_x86_64.whl)
* [PyObjc 8.5 wheel for py3](https://files.pythonhosted.org/packages/69/3d/786f379dd669a078cf0c4a686e242c9b643071c23367bfbd3d9a7eb589ec/pyobjc-8.5-py3-none-any.whl)
* [Requests 2.27.1 for py2/py3](https://files.pythonhosted.org/packages/2d/61/08076519c80041bc0ffa1a8af0cbd3bf3e2b62af10435d269a9d0f40564d/requests-2.27.1-py2.py3-none-any.whl)
If you have any installation errors, see the following troubleshooting options:
* Use Python 3.10
* Our build server currently uses Python 3.10 for generating binaries used in releases
* Use .whl snapshots for installing additional dependencies
## Running OpenCore Legacy Patcher
To run the project from source, simply invoke via python3:
```sh
# Launch TUI
python3 OpenCore-Patcher.command
```
```sh
# Launch GUI
python3 OpenCore-Patcher-GUI.command
```
Note that the OpenCore-Patcher.command file can be run as both a TUI and a CLI utility for other programs to call. If no core arguments are passed, the TUI is initialized. Otherwise the CLI will start:
Note that the OpenCore-Patcher-GUI.command file can be run as both a GUI and a CLI utility for other programs to call. If no core arguments are passed, the GUI is initialized. Otherwise the CLI will start:
```sh
# Launch CLI
python3 OpenCore-Patcher.command --build --model iMac12,2 --verbose
python3 OpenCore-Patcher-GUI.command --build --model iMac12,2 --verbose
```
See `-h`/`--help` for more information on supported CLI arguments.
Pass `-h` or `--help` for more information on supported CLI arguments.
## Generating prebuilt binaries
The main goal of generating prebuilt binaries is to strip the requirement of a local python installation for users. For developers, there's very little benefit besides enabling dark mode support in the GUI. For development, simply use the OpenCore-Patcher.command file with a python3 installation.
The main goal of generating prebuilt binaries is to strip the requirement of a local Python installation for users. For developers, there's very little benefit besides enabling dark mode support in the GUI. For development, simply use the OpenCore-Patcher-GUI.command file with a Python 3 installation.
* Note that due to PyInstaller's linking mechanism, binaries generated on Catalina and newer are not compatible with High Sierra and older
* To ensure the largest compatibility, generate binaries on macOS Mojave. These binaries will be compatible with macOS 10.9 to macOS 12.
* To ensure the best compatibility, generate binaries on macOS Mojave. These binaries will be compatible with macOS 10.9 to macOS 12.
* Currently our build system is a [Macmini8,1 provided by MacStadium](https://www.macstadium.com/opensource) running macOS Mojave (10.14.6).
```sh
@@ -78,7 +68,6 @@ pip3 install pyinstaller
cd ~/Developer/OpenCore-Legacy-Patcher/
# Create the pyinstaller based Application
# Optional Arguments
# '--build_tui': Create TUI vairant
# '--reset_binaries': Redownload and generate support files
python3 Build-Binary.command
# Open build folder
@@ -87,4 +76,4 @@ open ./dist/
Once done, you'll find the application generated at `./dist/OpenCore-Patcher.app`:
![](./images/build-dist.png)
![](./images/build-dist.png)

57
data/amfi_data.py Normal file
View File

@@ -0,0 +1,57 @@
# Copyright (C) 2022, Mykola Grymalyuk
# Within AppleMobileFileIntegrity.kext, Apple has a bitmask-based boot-arg (ex. amfi=128)
# Below information is from reversed values in 13.0 Beta 6's AppleMobileFileIntegrity.kext
# Currently only 'amfi=3' has been used by Apple publicly
# - 0x3 used in 11.0.1 dyld source:
# - https://github.com/apple-oss-distributions/dyld/blob/5c9192436bb195e7a8fe61f22a229ee3d30d8222/testing/test-cases/kernel-hello-world.dtest/main.c#L2
import enum
class AppleMobileFileIntegrity(enum.IntEnum):
# Names set are solely for readability
# Internal names are unknown
AMFI_ALLOW_TASK_FOR_PID: int = 0x1 # Allow Task for PID (alt. amfi_unrestrict_task_for_pid=0x1)
AMFI_ALLOW_INVALID_SIGNATURE: int = 0x2 # Reduce sig enforcement (alt. amfi_allow_any_signature=0x1)
AMFI_LV_ENFORCE_THIRD_PARTY: int = 0x4 # Don't mark external binaries as platform binaries
AMFI_UNKNOWN_1: int = 0x8
AMFI_UNKNOWN_2: int = 0x10
AMFI_UNKNOWN_3: int = 0x20
AMFI_UNKNOWN_4: int = 0x40
AMFI_ALLOW_EVERYTHING: int = 0x80 # Disable sig enforcement and Library Validation (alt. amfi_get_out_of_my_way=0x1)
# Internally within AMFI.kext, Apple references 0x2 and 0x80 as both 'Disable signature enforcement'
# However 0x80 is a higher privilege than 0x2, and breaks TCC support in OS (ex. Camera, Microphone, etc prompts)
# Supported boot-args within AMFI.kext, last compared against 13.0 Beta 6
#
# Within _initializeAppleMobileFileIntegrity():
# - amfi_unrestrict_task_for_pid=0x1
# - amfi_dev_mode_policy=0x1
# - amfi_allow_any_signature=0x1
# - amfi_get_out_of_my_way=0x1
# - amfi_unrestricted_local_signing=0x1
# - pmap_cs_unrestricted_local_signing=0x1
# - amfi_ready_to_roll=0x1
# - cs_enforcement_disable=0x1
#
# Within AMFIInitializeLocalSigningPublicKey():
# - -restore
#
# Within macOSPolicyConfigurationInit():
# - amfi_force_policy=0x1
# - amfi_block_unsigned_code=0x1
# - amfi_force_cs_kill=0x1
# - amfi_hsp_disable=0x1
# - amfi_hsp_logging=0x1
# - amfi_allow_bni_as_platform=0x1
# - amfi_allow_non_platform=0x1
# - amfi_prevent_old_entitled_platform_binaries=0x1
# - amfi_allow_only_tc=0x1
# - amfi_allow_only_tc_override=0x1
#
# Within configurationSettingsInit()
# - amfi_enforce_launch_constraints=0x1
# - amfi_allow_3p_launch_constraints=0x1
# - BATS_TESTPLAN_ID="Custom Team ID"

View File

@@ -1,14 +0,0 @@
# Data for SkyLightShim Plugin systems
class shim_list:
shim_pathing = {
"CoreWLAN.dylib": "/System/Library/CoreServices/WiFiAgent.app/Contents/MacOS/WiFiAgent",
"BacklightFixup.dylib": "/System/Library/CoreServices/loginwindow.app/Contents/MacOS/loginwindow",
}
shim_legacy_accel = [
"CoreWLAN.dylib",
]
shim_legacy_accel_keyboard = [
"BacklightFixup.dylib",
]

View File

@@ -21,6 +21,7 @@ class MacBook:
cpu=device_probe.CPU(
name="Intel(R) Core(TM)2 Duo CPU P8600 @ 2.40GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -42,7 +43,8 @@ class MacBookPro:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17201, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -67,7 +69,8 @@ class MacBookPro:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17312, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP03@1c0002/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x2)/Pci(0x0,0x0)'),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-4258U CPU @ 2.40GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[],
),
oclp_version='0.4.2',
opencore_version='DBG-077-2022-01-10',
@@ -75,6 +78,48 @@ class MacBookPro:
third_party_sata_ssd=False
)
MacBookPro133_Stock = device_probe.Computer(
real_model='MacBookPro13,3',
real_board_id='Mac-A5C67F76ED83108C',
reported_model='MacBookPro13,3',
reported_board_id='Mac-A5C67F76ED83108C',
build_model='MacBookPro13,3',
gpus=[
device_probe.Intel(vendor_id=32902, device_id=6427, class_code=196608, name='IGPU', model='Intel HD Graphics 530', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
device_probe.AMD(vendor_id=4098, device_id=26607, class_code=196608, name='GFX0', model='AMD Radeon Pro 455', acpi_path='IOACPIPlane:/_SB/PCI0@0/PEG0@10000/GFX0@0', pci_path='PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
igpu=device_probe.Intel(vendor_id=32902, device_id=6427, class_code=196608, name='IGPU', model='Intel HD Graphics 530', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
dgpu=device_probe.AMD(vendor_id=4098, device_id=26607, class_code=196608, name='GFX0', model='AMD Radeon Pro 455', acpi_path='IOACPIPlane:/_SB/PCI0@0/PEG0@10000/GFX0@0', pci_path='PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
storage=[
device_probe.NVMeController(vendor_id=5197, device_id=43012, class_code=67586, name='SSD0', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP17@1b0000/SSD0@0', pci_path='PciRoot(0x0)/Pci(0x1b,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False, aspm=258)
],
usb_controllers=[
device_probe.XHCIController(vendor_id=32902, device_id=41263, class_code=787248, name='XHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/XHC1@140000', pci_path='PciRoot(0x0)/Pci(0x14,0x0)', disable_metal=False, force_compatible=False),
device_probe.XHCIController(vendor_id=32902, device_id=5588, class_code=787248, name='XHC3', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/PEG2@10002/UPSB@0/DSB2@20000/XHC3@0', pci_path='PciRoot(0x0)/Pci(0x1,0x2)/Pci(0x0,0x0)/Pci(0x2,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
device_probe.XHCIController(vendor_id=32902, device_id=5588, class_code=787248, name='XHC2', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/PEG1@10001/UPSB@0/DSB2@20000/XHC2@0', pci_path='PciRoot(0x0)/Pci(0x1,0x1)/Pci(0x0,0x0)/Pci(0x2,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
sdxc_controller=[],
ethernet=[],
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17338, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i7-6820HQ CPU @ 2.70GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[]
),
oclp_version='0.5.0',
opencore_version=None,
opencore_path=None,
bluetooth_chipset=None,
ambient_light_sensor=False,
third_party_sata_ssd=False,
secure_boot_model='x86legacyap',
secure_boot_policy=0,
oclp_sys_version=None,
oclp_sys_date=None,
oclp_sys_url=None,
firmware_vendor='Apple'
)
MacBookPro141_SSD_Upgrade = device_probe.Computer(
real_model='MacBookPro14,1',
real_board_id='Mac-B4831CEBD52A0C4C',
@@ -95,7 +140,8 @@ class MacBookPro:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17315, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP09@1d0000/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1d,0x0)/Pci(0x0,0x0)'),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-7360U CPU @ 2.30GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[],
), oclp_version='0.4.1',
opencore_version=None,
bluetooth_chipset=None,
@@ -115,6 +161,7 @@ class MacBookPro:
cpu=device_probe.CPU(
name="Apple M1",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTSE64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "AES", "SEGLIM64"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -122,6 +169,144 @@ class MacBookPro:
class Macmini:
Macmini52_Stock = device_probe.Computer(
real_model='Macmini5,2',
real_board_id='Mac-4BC72D62AD45599E',
reported_model='Macmini5,2',
reported_board_id='Mac-4BC72D62AD45599E',
build_model='Macmini5,2',
gpus=[
device_probe.Intel(vendor_id=32902, device_id=294, class_code=229376, name='IGPU', model='Intel HD Graphics 3000', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
device_probe.AMD(vendor_id=4098, device_id=26433, class_code=196608, name='GFX0', model='AMD Radeon HD 6630M', acpi_path='IOACPIPlane:/_SB/PCI0@0/P0P2@10000/GFX0@0', pci_path='PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)],
igpu=device_probe.Intel(vendor_id=32902, device_id=294, class_code=229376, name='IGPU', model='Intel HD Graphics 3000', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
dgpu=device_probe.AMD(vendor_id=4098, device_id=26433, class_code=196608, name='GFX0', model='AMD Radeon HD 6630M', acpi_path='IOACPIPlane:/_SB/PCI0@0/P0P2@10000/GFX0@0', pci_path='PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
storage=[
device_probe.SATAController(vendor_id=32902, device_id=7171, class_code=67073, name='SATA', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/SATA@1f0002', pci_path='PciRoot(0x0)/Pci(0x1f,0x2)', disable_metal=False, force_compatible=False)
],
usb_controllers=[
device_probe.EHCIController(vendor_id=32902, device_id=7213, class_code=787232, name='EHC2', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/EHC2@1a0007', pci_path='PciRoot(0x0)/Pci(0x1a,0x7)', disable_metal=False, force_compatible=False),
device_probe.EHCIController(vendor_id=32902, device_id=7206, class_code=787232, name='EHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/EHC1@1d0007', pci_path='PciRoot(0x0)/Pci(0x1d,0x7)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=7212, class_code=787200, name='UHC5', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/UHC5@1a0000', pci_path='PciRoot(0x0)/Pci(0x1a,0x0)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=7207, class_code=787200, name='UHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/UHC1@1d0000', pci_path='PciRoot(0x0)/Pci(0x1d,0x0)', disable_metal=False, force_compatible=False)
],
sdxc_controller=[
device_probe.SDXCController(vendor_id=5348, device_id=5820, class_code=525569, name='SDXC', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/SDXC@1', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x1)', disable_metal=False, force_compatible=False)
],
ethernet=[
device_probe.BroadcomEthernet(vendor_id=5348, device_id=5812, class_code=131072, name='GIGE', model='Broadcom 57765-B0', acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/GIGE@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17201, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP02@1c0001/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-2520M CPU @ 2.50GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0'],
leafs=['']
),
oclp_version='0.5.0',
opencore_version='REL-083-2022-08-01',
opencore_path='PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x0,0x0,0x0)/HD(1,GPT,D011D782-7E9A-459B-905D-9DA8D6494A53,0x28,0x64000)/EFI\\OC\\OpenCore.efi',
bluetooth_chipset='BRCM20702 Hub',
ambient_light_sensor=False,
third_party_sata_ssd=True,
secure_boot_model='x86legacyap',
secure_boot_policy=0,
oclp_sys_version='v0.4.11',
oclp_sys_date='October 06, 2022 @ 10:06:53',
oclp_sys_url=None,
firmware_vendor='Apple',
rosetta_active=False
)
Macmini61_Stock = device_probe.Computer(
real_model='Macmini6,1',
real_board_id='Mac-031AEE4D24BFF0B1',
reported_model='Macmini6,1',
reported_board_id='Mac-031AEE4D24BFF0B1',
build_model='Macmini6,1',
gpus=[
device_probe.Intel(vendor_id=32902, device_id=358, class_code=196608, name='IGPU', model='Intel HD Graphics 4000', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False)
],
igpu=device_probe.Intel(vendor_id=32902, device_id=358, class_code=196608, name='IGPU', model='Intel HD Graphics 4000', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
dgpu=None,
storage=[
device_probe.SATAController(vendor_id=32902, device_id=7683, class_code=67073, name='SATA', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/SATA@1f0002', pci_path='PciRoot(0x0)/Pci(0x1f,0x2)', disable_metal=False, force_compatible=False)
],
usb_controllers=[
device_probe.XHCIController(vendor_id=32902, device_id=7729, class_code=787248, name='XHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/XHC1@140000', pci_path='PciRoot(0x0)/Pci(0x14,0x0)', disable_metal=False, force_compatible=False),
device_probe.EHCIController(vendor_id=32902, device_id=7725, class_code=787232, name='EHC2', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/EHC2@1a0000', pci_path='PciRoot(0x0)/Pci(0x1a,0x0)', disable_metal=False, force_compatible=False),
device_probe.EHCIController(vendor_id=32902, device_id=7718, class_code=787232, name='EHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/EHC1@1d0000', pci_path='PciRoot(0x0)/Pci(0x1d,0x0)', disable_metal=False, force_compatible=False)
],
sdxc_controller=[
device_probe.SDXCController(vendor_id=5348, device_id=5820, class_code=525569, name='SDXC', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/SDXC@1', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x1)', disable_metal=False, force_compatible=False)
],
ethernet=[
device_probe.BroadcomEthernet(vendor_id=5348, device_id=5766, class_code=131072, name='GIGE', model='Broadcom 57766-A1', acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/GIGE@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17201, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP02@1c0001/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False
),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=['RDWRFSGS', 'SMEP', 'ERMS', 'MDCLEAR', 'IBRS', 'STIBP', 'L1DF', 'SSBD']
),
oclp_version='0.5.0',
opencore_version='REL-083-2022-08-01',
opencore_path='PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x0,0x0,0x0)/HD(1,GPT,B46958E3-7EB7-40C2-BB3A-2C88A0856DC7,0x28,0x64000)/EFI\\OC\\OpenCore.efi',
bluetooth_chipset='BRCM20702 Hub',
ambient_light_sensor=False,
third_party_sata_ssd=True,
secure_boot_model='x86legacyap',
secure_boot_policy=0,
oclp_sys_version='v0.5.0',
oclp_sys_date='October 04, 2022 @ 12:24:50',
oclp_sys_url='',
firmware_vendor='Apple',
rosetta_active=False
)
Macmini71_Stock = device_probe.Computer(
real_model='Macmini7,1',
real_board_id='Mac-35C5E08120C7EEAF',
reported_model='Macmini7,1',
reported_board_id='Mac-35C5E08120C7EEAF',
build_model='Macmini7,1',
gpus=[
device_probe.Intel(vendor_id=32902, device_id=2606, class_code=196608, name='IGPU', model='Intel Iris', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False)
],
igpu=device_probe.Intel(vendor_id=32902, device_id=2606, class_code=196608, name='IGPU', model='Intel Iris', acpi_path='IOACPIPlane:/_SB/PCI0@0/IGPU@20000', pci_path='PciRoot(0x0)/Pci(0x2,0x0)', disable_metal=False, force_compatible=False),
dgpu=None,
storage=[
device_probe.SATAController(vendor_id=32902, device_id=39939, class_code=67073, name='SATA', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/SATA@1f0002', pci_path='PciRoot(0x0)/Pci(0x1f,0x2)', disable_metal=False, force_compatible=False)
],
usb_controllers=[
device_probe.XHCIController(vendor_id=32902, device_id=39985, class_code=787248, name='XHC1', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/XHC1@140000', pci_path='PciRoot(0x0)/Pci(0x14,0x0)', disable_metal=False, force_compatible=False)
],
sdxc_controller=[
device_probe.SDXCController(vendor_id=5348, device_id=5820, class_code=525569, name='SDXC', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP04@1c0003/SDXC@1', pci_path='PciRoot(0x0)/Pci(0x1c,0x3)/Pci(0x0,0x1)', disable_metal=False, force_compatible=False)
],
ethernet=[
device_probe.BroadcomEthernet(vendor_id=5348, device_id=5766, class_code=131072, name='GIGE', model='Broadcom 57766-A1', acpi_path='IOACPIPlane:/_SB/PCI0@0/RP04@1c0003/GIGE@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x3)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17312, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP03@1c0002/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x2)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-4278U CPU @ 2.60GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=['RDWRFSGS', 'TSC_THREAD_OFFSET', 'BMI1', 'AVX2', 'SMEP', 'BMI2', 'ERMS', 'INVPCID', 'FPU_CSDS', 'MDCLEAR', 'IBRS', 'STIBP', 'L1DF', 'SSBD']
),
oclp_version='0.5.0',
opencore_version='REL-083-2022-08-01',
opencore_path='PciRoot(0x0)/Pci(0x1F,0x2)/Sata(0x0,0x0,0x0)/HD(1,GPT,293E8ABF-B98C-4258-A811-04464BCA90EF,0x28,0x64000)/EFI\\OC\\OpenCore.efi',
bluetooth_chipset='BRCM20702 Hub',
ambient_light_sensor=False,
third_party_sata_ssd=True,
secure_boot_model='x86legacyap',
secure_boot_policy=0,
oclp_sys_version='v0.5.0',
oclp_sys_date='October 04, 2022 @ 12:04:48',
oclp_sys_url='https://github.com/dortania/OpenCore-Legacy-Patcher/commit/daf28a62effb2ce06a71cb5961c9d0c79d72c16b',
firmware_vendor='Apple',
rosetta_active=False
)
Macmini81_Stock = device_probe.Computer(
real_model="Macmini8,1",
real_board_id="Mac-7BA5B2DFE22DDD8C",
@@ -134,7 +319,8 @@ class Macmini:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17508, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Core(TM) i7-8700B CPU @ 3.20GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "FMA", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "x2APIC", "MOVBE", "POPCNT", "AES", "PCID", "XSAVE", "OSXSAVE", "SEGLIM64", "TSCTMR", "AVX1.0", "RDRAND", "F16C"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "FMA", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "x2APIC", "MOVBE", "POPCNT", "AES", "PCID", "XSAVE", "OSXSAVE", "SEGLIM64", "TSCTMR", "AVX1.0", "RDRAND", "F16C"],
leafs=[],
),
oclp_version=None,
opencore_version=None
@@ -155,7 +341,8 @@ class Macmini:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17445, class_code=163840, name="wlan", model=None, pci_path=""),
cpu=device_probe.CPU(
name="Apple M1",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTSE64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "AES", "SEGLIM64"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTSE64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "AES", "SEGLIM64"],
leafs=[],
),
oclp_version=None,
opencore_version=None
@@ -180,7 +367,8 @@ class iMac:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17192, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1c,0x4)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Core(TM)2 Duo CPU E8135 @ 2.40GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -203,7 +391,8 @@ class iMac:
wifi=device_probe.Atheros(vendor_id=5772, device_id=42, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Core(TM) i3 CPU 540 @ 3.07GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT", "PCID"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT", "PCID"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -226,7 +415,8 @@ class iMac:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17338, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "xAPIC", "POPCNT", "AES", "PCID", "XSAVE", "OSXSAVE", "TSCTMR", "AVX1.0"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "xAPIC", "POPCNT", "AES", "PCID", "XSAVE", "OSXSAVE", "TSCTMR", "AVX1.0"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -252,7 +442,8 @@ class iMac:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17201, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP02@1c0001/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)'),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i7-2600 CPU @ 3.40GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0'],
leafs=[],
),
oclp_version='0.3.3',
opencore_version=None,
@@ -278,7 +469,8 @@ class iMac:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17312, class_code=163840, name='ARPT', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1c,0x2)/Pci(0x0,0x0)'),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-4690 CPU @ 3.50GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -305,7 +497,8 @@ class iMac:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17508, class_code=163840, name='ARPT', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/RP01@1c0000/ARPT@0', pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)'),
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i5-10500 CPU @ 3.10GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'FMA', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'PCID', 'XSAVE', 'OSXSAVE', 'SEGLIM64', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -333,6 +526,7 @@ class MacPro:
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU X5482 @ 3.20GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -358,6 +552,7 @@ class MacPro:
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU X5482 @ 3.20GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -383,6 +578,7 @@ class MacPro:
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU X5482 @ 3.20GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -406,6 +602,7 @@ class MacPro:
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU X5482 @ 3.20GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1"],
leafs=[],
),
oclp_version=None,
opencore_version=None,
@@ -424,7 +621,8 @@ class MacPro:
wifi=device_probe.Atheros(vendor_id=5772, device_id=48, class_code=163840, name="PXS4", model=None, pci_path="PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x4,0x0)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU W3520 @ 2.67GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT"],
leafs=[],
),
oclp_version=None,
opencore_version=None
@@ -447,7 +645,8 @@ class MacPro:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17312, class_code=163840, name="ARPT", model=None, pci_path="PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x4,0x0)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU W3520 @ 2.67GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "DTES64", "MON", "DSCPL", "VMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT"],
leafs=[],
),
oclp_version="0.2.5",
opencore_version="REL-071-2021-07-02"
@@ -470,7 +669,8 @@ class MacPro:
wifi=device_probe.Broadcom(vendor_id=5348, device_id=17312, class_code=163840, name="PXS4", model=None, pci_path="PciRoot(0x0)/Pci(0x1,0x0)/Pci(0x0,0x0)/Pci(0x4,0x0)/Pci(0x0,0x0)"),
cpu=device_probe.CPU(
name="Intel(R) Xeon(R) CPU X5670 @ 2.93GHz",
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT", "AES", "PCID"]
flags=["FPU", "VME", "DE", "PSE", "TSC", "MSR", "PAE", "MCE", "CX8", "APIC", "SEP", "MTRR", "PGE", "MCA", "CMOV", "PAT", "PSE36", "CLFSH", "DS", "ACPI", "MMX", "FXSR", "SSE", "SSE2", "SS", "HTT", "TM", "PBE", "SSE3", "PCLMULQDQ", "DTES64", "MON", "DSCPL", "VMX", "SMX", "EST", "TM2", "SSSE3", "CX16", "TPR", "PDCM", "SSE4.1", "SSE4.2", "POPCNT", "AES", "PCID"],
leafs=[],
),
oclp_version="0.2.5",
opencore_version="REL-071-2021-07-02"
@@ -508,7 +708,8 @@ class MacPro:
wifi=None,
cpu=device_probe.CPU(
name='Intel(R) Xeon(R) CPU X5670 @ 2.93GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'POPCNT', 'AES', 'PCID']
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'DS', 'ACPI', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'TM', 'PBE', 'SSE3', 'PCLMULQDQ', 'DTES64', 'MON', 'DSCPL', 'VMX', 'SMX', 'EST', 'TM2', 'SSSE3', 'CX16', 'TPR', 'PDCM', 'SSE4.1', 'SSE4.2', 'POPCNT', 'AES', 'PCID'],
leafs=[],
),
oclp_version='0.4.6',
opencore_version='REL-080-2022-04-18',
@@ -521,4 +722,57 @@ class MacPro:
oclp_sys_version='v0.4.6',
oclp_sys_date='September 03, 2019 @ 23:13:43',
firmware_vendor='Apple'
)
class Hackintosh:
QEMU_Virtual_Machine_GT710 = device_probe.Computer(
real_model='iMac14,4',
real_board_id='Mac-81E3E92DD6088272',
reported_model='iMac14,4',
reported_board_id='Mac-81E3E92DD6088272',
build_model=None,
gpus=[
device_probe.NVIDIA(vendor_id=4318, device_id=4747, class_code=196608, name='GFX0', model='NVIDIA GeForce GT 710', acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False)
],
igpu=None,
dgpu=device_probe.NVIDIA(vendor_id=4318, device_id=4747, class_code=196608, name='GFX0', model='NVIDIA GeForce GT 710', acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
storage=[
device_probe.SATAController(vendor_id=32902, device_id=10530, class_code=67073, name='pci8086,2922', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1f,0x2)', disable_metal=False, force_compatible=False),
device_probe.SATAController(vendor_id=32902, device_id=10530, class_code=67073, name='pci8086,2922', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1e,0x0)/Pci(0x1,0x0)/Pci(0x7,0x0)', disable_metal=False, force_compatible=False),
device_probe.NVMeController(vendor_id=5197, device_id=43016, class_code=67586, name='pci144d,a808', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False, aspm=0)
],
usb_controllers=[
device_probe.XHCIController(vendor_id=6945, device_id=8514, class_code=787248, name='pci1b21,2142', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1c,0x2)/Pci(0x0,0x0)', disable_metal=False, force_compatible=False),
device_probe.EHCIController(vendor_id=32902, device_id=10556, class_code=787232, name='pci8086,293c', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1a,0x7)', disable_metal=False, force_compatible=False),
device_probe.EHCIController(vendor_id=32902, device_id=10554, class_code=787232, name='pci8086,293a', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1d,0x7)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10551, class_code=787200, name='SD0', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/SD0@1a0000', pci_path='PciRoot(0x0)/Pci(0x1a,0x0)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10552, class_code=787200, name='pci8086,2938', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1a,0x1)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10553, class_code=787200, name='pci8086,2939', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1a,0x2)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10548, class_code=787200, name='SE8', model=None, acpi_path='IOACPIPlane:/_SB/PCI0@0/SE8@1d0000', pci_path='PciRoot(0x0)/Pci(0x1d,0x0)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10549, class_code=787200, name='pci8086,2935', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1d,0x1)', disable_metal=False, force_compatible=False),
device_probe.UHCIController(vendor_id=32902, device_id=10550, class_code=787200, name='pci8086,2936', model=None, acpi_path=None, pci_path='PciRoot(0x0)/Pci(0x1d,0x2)', disable_metal=False, force_compatible=False)
],
sdxc_controller=[],
ethernet=[],
wifi=None,
cpu=device_probe.CPU(
name='Intel(R) Core(TM) i9-7920X CPU @ 2.90GHz',
flags=['FPU', 'VME', 'DE', 'PSE', 'TSC', 'MSR', 'PAE', 'MCE', 'CX8', 'APIC', 'SEP', 'MTRR', 'PGE', 'MCA', 'CMOV', 'PAT', 'PSE36', 'CLFSH', 'MMX', 'FXSR', 'SSE', 'SSE2', 'SS', 'HTT', 'SSE3', 'PCLMULQDQ', 'VMX', 'SSSE3', 'FMA', 'CX16', 'PDCM', 'SSE4.1', 'SSE4.2', 'x2APIC', 'MOVBE', 'POPCNT', 'AES', 'VMM', 'PCID', 'XSAVE', 'OSXSAVE', 'TSCTMR', 'AVX1.0', 'RDRAND', 'F16C'],
leafs=['RDWRFSGS', 'TSC_THREAD_OFFSET', 'BMI1', 'HLE', 'AVX2', 'SMEP', 'BMI2', 'ERMS', 'INVPCID', 'RTM', 'MPX', 'AVX512F', 'AVX512DQ', 'RDSEED', 'ADX', 'SMAP', 'CLFSOPT', 'CLWB', 'AVX512CD', 'AVX512BW', 'AVX512VL', 'UMIP', 'MDCLEAR', 'IBRS', 'STIBP', 'ACAPMSR', 'SSBD']
),
oclp_version=None,
opencore_version='REL-083-2022-08-01',
opencore_path=None,
bluetooth_chipset=None,
ambient_light_sensor=False,
third_party_sata_ssd=False,
secure_boot_model='x86legacyap',
secure_boot_policy=0,
oclp_sys_version=None,
oclp_sys_date=None,
oclp_sys_url=None,
firmware_vendor='EDK II',
rosetta_active=False
)

View File

@@ -1,11 +0,0 @@
# Mirrors of Apple's InstallAssistant.ppkg
# Currently only listing important Installers no longer on Apple's servers
Install_macOS_Big_Sur_11_2_3 = {
"Version": "11.2.3",
"Build": "20D91",
"Link": "https://archive.org/download/install-assistant-20D91/InstallAssistant.pkg",
"Size": 12211077798,
"Source": "Archive.org",
"integrity": None,
}

View File

@@ -8,6 +8,7 @@ SupportedSMBIOS = [
"MacBook6,1",
"MacBook7,1",
"MacBook8,1",
"MacBook9,1",
# MacBook Air
"MacBookAir2,1",
"MacBookAir3,1",
@@ -18,6 +19,8 @@ SupportedSMBIOS = [
"MacBookAir5,2",
"MacBookAir6,1",
"MacBookAir6,2",
"MacBookAir7,1",
"MacBookAir7,2",
# MacBook Pro
"MacBookPro4,1",
"MacBookPro5,1",
@@ -38,6 +41,12 @@ SupportedSMBIOS = [
"MacBookPro11,1",
"MacBookPro11,2",
"MacBookPro11,3",
"MacBookPro11,4",
"MacBookPro11,5",
"MacBookPro12,1",
"MacBookPro13,1",
"MacBookPro13,2",
"MacBookPro13,3",
# Mac Mini
"Macmini3,1",
"Macmini4,1",
@@ -46,6 +55,7 @@ SupportedSMBIOS = [
"Macmini5,3",
"Macmini6,1",
"Macmini6,2",
"Macmini7,1",
# iMac
"iMac7,1",
"iMac8,1",
@@ -64,10 +74,14 @@ SupportedSMBIOS = [
"iMac14,3",
"iMac14,4",
"iMac15,1",
"iMac16,1",
"iMac16,2",
"iMac17,1",
# Mac Pro
"MacPro3,1",
"MacPro4,1",
"MacPro5,1",
"MacPro6,1",
# Xserve
"Xserve2,1",
"Xserve3,1",
@@ -119,21 +133,45 @@ LegacyAudio = [
# GPU
ModernGPU = [
"MacBook8,1", # Intel 6000
"MacBook9,1", # Intel Skylake
"MacBookAir5,1", # Intel 4000
"MacBookAir5,2", # Intel 4000
"MacBookAir6,1", # Intel 5000
"MacBookAir6,2", # Intel 5000
"MacBookAir7,1", # Intel 6000
"MacBookAir7,2", # Intel 6000
"MacBookPro9,1", # Intel 4000 + Nvidia 650M
"MacBookPro9,2", # Intel 4000
"MacBookPro10,1", # Intel 4000 + Nvidia 650M
"MacBookPro10,2", # Intel 4000
"MacBookPro11,1", # Intel 5000
"MacBookPro11,2", # Intel 5000
"MacBookPro11,3", # Intel 5000 + Nvidia Kepler
"MacBookPro11,4", # Intel 5000
"MacBookPro11,5", # Intel 5000 + GCN 1
"MacBookPro12,1", # Intel 6000
"MacBookPro13,1", # Intel Skylake
"MacBookPro13,2", # Intel Skylake
"MacBookPro13,3", # Intel Skylake
"Macmini6,1", # Intel 4000
"Macmini6,2", # Intel 4000
"Macmini7,1", # Intel 5000
"iMac13,1", # Intel 4000
"iMac13,2", # Intel 4000 + Nvidia Kepler
"iMac13,3", # Intel 4000
"iMac14,1", # Intel 5000 + Nvidia Kepler
"iMac14,2", # Intel 5000 + Nvidia Kepler
"iMac14,3", # Intel 5000 + Nvidia Kepler
"iMac14,4", # Intel 5000
"iMac15,1", # Intel 5000 + GCN 1
"iMac16,1", # Intel 6000
"iMac16,2", # Intel 6000
"iMac17,1", # Intel Skylake + GCN1
"MacPro3,1", # Lacks AVX2.0
"MacPro4,1", # Lacks AVX2.0
"MacPro5,1", # Lacks AVX2.0
"MacPro6,1", # GCN 1
]
LegacyGPU = [
@@ -211,6 +249,9 @@ IntelNvidiaDRM = [
# Mac Pro and Xserve
MacPro = ["MacPro3,1", "MacPro4,1", "MacPro5,1", "Xserve2,1", "Xserve3,1", "Dortania1,1"]
# MXM iMac
MXMiMac = ["iMac11,1", "iMac11,2", "iMac11,3", "iMac10,1", "iMac12,1", "iMac12,2", "Dortania1,1"]
NoAGPMSupport = ["MacBook4,1", "MacBookPro4,1", "iMac7,1", "iMac8,1", "MacPro3,1", "Xserve2,1", "Dortania1,1"]
AGDPSupport = [
@@ -277,3 +318,39 @@ Missing_USB_Map = [
"Xserve2,1",
"Xserve3,1",
]
Missing_USB_Map_Ventura = [
"MacBook8,1",
"MacBookAir5,1",
"MacBookAir5,2",
"MacBookAir6,1",
"MacBookAir6,2",
"MacBookAir7,1",
"MacBookAir7,2",
"MacBookPro9,1",
"MacBookPro9,2",
"MacBookPro10,1",
"MacBookPro10,2",
"MacBookPro11,1",
"MacBookPro11,2",
"MacBookPro11,3",
"MacBookPro11,4",
"MacBookPro11,5",
"MacBookPro12,1",
"MacPro5,1",
"MacPro6,1",
"Macmini6,1",
"Macmini6,2",
"Macmini7,1",
"iMac13,1",
"iMac13,2",
"iMac14,1",
"iMac14,2",
"iMac14,3",
"iMac14,4",
"iMac15,1",
"iMac15,2",
"iMac16,1",
"iMac16,2",
"iMac17,1",
]

View File

@@ -1,24 +1,29 @@
from curses.ascii import isdigit
import enum
class os_data(enum.IntEnum):
# OS Versions, Based off Major Kernel Version
tiger = 8
leopard = 9
snow_leopard = 10
lion = 11
cheetah = 4 # Actually 1.3.1
puma = 5
jaguar = 6
panther = 7
tiger = 8
leopard = 9
snow_leopard = 10
lion = 11
mountain_lion = 12
mavericks = 13
yosemite = 14
el_capitan = 15
sierra = 16
high_sierra = 17
mojave = 18
catalina = 19
big_sur = 20
monterey = 21
ventura = 22
max_os = 99
mavericks = 13
yosemite = 14
el_capitan = 15
sierra = 16
high_sierra = 17
mojave = 18
catalina = 19
big_sur = 20
monterey = 21
ventura = 22
max_os = 99
class os_conversion:
@@ -45,4 +50,98 @@ class os_conversion:
if source_minor < target_minor:
return True
else:
return False
return False
def convert_kernel_to_marketing_name(kernel):
# Convert major XNU version to Marketing Name
try:
# Find os_data enum name
os_name = os_data(kernel).name
# Remove "_" from the string
os_name = os_name.replace("_", " ")
# Upper case the first letter of each word
os_name = os_name.title()
except ValueError:
# Handle cases where no enum value exists
# Pass kernel_to_os() as a substitute for a proper OS name
os_name = os_conversion.kernel_to_os(kernel)
return os_name
def convert_marketing_name_to_kernel(marketing_name):
# Convert Marketing Name to major XNU version
try:
# Find os_data enum value
os_kernel = os_data[marketing_name.lower().replace(" ", "_")]
except KeyError:
os_kernel = 0
return int(os_kernel)
def find_largest_build(build_array):
# Find the newest version within an array of versions
# These builds will have both numbers and letters in the version
# ex:
# [
# "22A5295i",
# "22A5266r",
# "22A5286j",
# "22A5295h",
# ]
max_length = 0 # Length of the longest build
build_array_split = [] # 'build_array', converted into individual array of elements
final_build = "" # Largest determined build
# Convert strings to arrays
for build in build_array:
list_build = list(build)
if len(list_build) > max_length:
max_length = len(list_build)
build_array_split.append(list_build)
# Pad out each array to same length
for build in build_array_split:
while len(build) < max_length:
build.append("0")
# Convert all letters to int using ord()
for build in build_array_split:
for entry in build:
if not entry.isdigit():
build[build.index(entry)] = ord(entry)
for build_outer_loop in build_array_split:
for build_inner_loop in list(build_array_split):
for i in range(len(build_outer_loop)):
# remove any builds that are not the largest
if int(build_outer_loop[i]) > int(build_inner_loop[i]):
build_array_split.remove(build_inner_loop)
break
if int(build_outer_loop[i]) < int(build_inner_loop[i]):
break
# Convert array back to string
for entry in build_array_split[0]:
# Since we split per character, we know that anything above 9 is a letter
if int(entry) > 9:
# revert back to letter
final_build += chr(entry)
else:
final_build += str(entry)
# Since we pad with 0s, we need to next determine how many 0s to remove
for build in build_array:
if final_build.startswith(build):
# Handle cases where Apple added a letter to the build
# ex. "22A5295" vs "22A5295"
remaining_strings = final_build.split(build)[1]
# If all remaining strings are 0s, then we can remove the 0s
if all(char == "0" for char in remaining_strings):
final_build = build
return final_build

View File

@@ -1,6 +1,6 @@
# Array of Device IDs for different devices
class nvidia_ids:
# Courteous of envytools as well as Macrumors:
# Courteous of envytools as well as MacRumors:
# https://envytools.readthedocs.io/en/latest/hw/pciid.html
# https://forums.macrumors.com/threads/2011-imac-graphics-card-upgrade.1596614/
# https://pci-ids.ucw.cz/read/PC/10de
@@ -796,6 +796,11 @@ class amd_ids:
0x67CF, # Unknown
]
polaris_spoof_ids = [
# Polaris 12 (Lexa)
0x6981, # Lexa XT [Radeon PRO WX 3200]
]
vega_ids = [
# GCN v5
# AMDRadeonX5000

View File

@@ -134,6 +134,14 @@ class system_integrity_protection:
"CSR_ALLOW_UNAPPROVED_KEXTS", # 0x200 - Required for Aux Cache in Big Sur+
]
root_patch_sip_ventura = [
# Variables required to root patch in Ventura
"CSR_ALLOW_UNTRUSTED_KEXTS", # 0x1 - Required for Aux Cache in Big Sur+
"CSR_ALLOW_UNRESTRICTED_FS", # 0x2 - Required to mount and edit root volume, as well as load modded platform binaries
"CSR_ALLOW_UNAUTHENTICATED_ROOT", # 0x800 - Required to avoid KC mismatch kernel panic
]
# CSR_ALLOW_EXECUTABLE_POLICY_OVERRIDE (introduced with Mojave):
# This bit is quite strange and was originally assumed to be required for modded platform binaries
# However after extensive testing, this doesn't seem true. In addition, this bit is never flipped via

View File

@@ -14,6 +14,9 @@
# Switchable GPUs: If model uses a GMUX
# Stock GPUs: GPUs variations shipped
# Reference:
# https://github.com/acidanthera/OpenCorePkg/blob/master/Library/OcMacInfoLib/AutoGenerated.c
from resources import device_probe
from data import cpu_data, os_data, bluetooth_data
@@ -225,10 +228,10 @@ smbios_dictionary = {
},
"MacBook9,1": {
"Board ID": "Mac-9AE82516C7C6B903",
"FirmwareFeatures": "0xFC0FE13F",
"FirmwareFeatures": "0x8FC0FE13F",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART,
"Screen Size": 12,
@@ -242,7 +245,7 @@ smbios_dictionary = {
},
"MacBook10,1": {
"Board ID": "Mac-EE2EBD4B90B839A8",
"FirmwareFeatures": "0xFC0FE13F",
"FirmwareFeatures": "0x8FC0FE13F",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -432,10 +435,10 @@ smbios_dictionary = {
},
"MacBookAir7,1": {
"Board ID": "Mac-9F18E312C5C2BF0B",
"FirmwareFeatures": "0xFF0FF576",
"FirmwareFeatures": "0x8FF0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.broadwell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Screen Size": 11,
@@ -449,10 +452,10 @@ smbios_dictionary = {
},
"MacBookAir7,2": {
"Board ID": "Mac-937CB26E2E02BB01",
"FirmwareFeatures": "0xFF0FF576",
"FirmwareFeatures": "0x8FF0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.broadwell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Screen Size": 13,
@@ -466,7 +469,7 @@ smbios_dictionary = {
},
"MacBookAir8,1": {
"Board ID": "Mac-827FAC58A8FDFA22",
"FirmwareFeatures": "0xFD8FF42E",
"FirmwareFeatures": "0x8FD8FF42E",
"SecureBootModel": "j140k",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -483,7 +486,7 @@ smbios_dictionary = {
},
"MacBookAir8,1_v2": {
"Board ID": "Mac-112818653D3AABFC",
"FirmwareFeatures": "0xFD8FF42E",
"FirmwareFeatures": "0x8FD8FF42E",
"SecureBootModel": "j140k", # TODO: Verify
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -502,7 +505,7 @@ smbios_dictionary = {
# AppleInternal MacBookAir8,1
# True Model unknown
"Board ID": "Mac-827FAC58A8FDFA22",
"FirmwareFeatures": "0xFD8FF42E",
"FirmwareFeatures": "0x8FD8FF42E",
"SecureBootModel": "x589amlu",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -519,7 +522,7 @@ smbios_dictionary = {
},
"MacBookAir8,2": {
"Board ID": "Mac-226CB3C6A851A671",
"FirmwareFeatures": "0xFD8FF42E",
"FirmwareFeatures": "0x8FD8FF42E",
"SecureBootModel": "j140a",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -536,7 +539,7 @@ smbios_dictionary = {
},
"MacBookAir9,1": {
"Board ID": "Mac-0CFF9C7C2B63DF8D",
"FirmwareFeatures": "0xFFAFF06E",
"FirmwareFeatures": "0x8FFAFF06E",
"SecureBootModel": "j230k",
"CPU Generation": cpu_data.cpu_data.ice_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -555,7 +558,7 @@ smbios_dictionary = {
# AppleInternal MacBookAir9,1
# True Model unknown
"Board ID": "Mac-0CFF9C7C2B63DF8D",
"FirmwareFeatures": "0xFFAFF06E",
"FirmwareFeatures": "0x8FFAFF06E",
"SecureBootModel": "x589icly",
"CPU Generation": cpu_data.cpu_data.ice_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1014,7 +1017,7 @@ smbios_dictionary = {
"Screen Size": 13,
"Ethernet Chipset": "Broadcom",
"Stock GPUs": [
device_probe.NVIDIA.Archs.Kepler
device_probe.Intel.Archs.Ivy_Bridge,
],
"Stock Storage": [
"SATA 2.5",
@@ -1050,7 +1053,7 @@ smbios_dictionary = {
"Screen Size": 13,
"Ethernet Chipset": None,
"Stock GPUs": [
device_probe.NVIDIA.Archs.Kepler
device_probe.Intel.Archs.Ivy_Bridge,
],
"Stock Storage": [
"mSATA",
@@ -1103,6 +1106,7 @@ smbios_dictionary = {
"Ethernet Chipset": None,
"Stock GPUs": [
device_probe.Intel.Archs.Haswell,
device_probe.NVIDIA.Archs.Kepler,
],
"Stock Storage": [
"NVMe",
@@ -1110,10 +1114,10 @@ smbios_dictionary = {
},
"MacBookPro11,4": {
"Board ID": "Mac-06F11FD93F0323C5",
"FirmwareFeatures": "0xEB0FF577",
"FirmwareFeatures": "0x8EB0FF577",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.haswell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Screen Size": 15,
@@ -1127,10 +1131,10 @@ smbios_dictionary = {
},
"MacBookPro11,5": {
"Board ID": "Mac-06F11F11946D27C5",
"FirmwareFeatures": "0xEB0FF577",
"FirmwareFeatures": "0x8EB0FF577",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.haswell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Screen Size": 15,
@@ -1146,10 +1150,10 @@ smbios_dictionary = {
},
"MacBookPro12,1": {
"Board ID": "Mac-E43C1C25D4880AD6",
"FirmwareFeatures": "0xFD0FF576",
"FirmwareFeatures": "0x8FD0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.broadwell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Screen Size": 13,
@@ -1163,10 +1167,10 @@ smbios_dictionary = {
},
"MacBookPro13,1": {
"Board ID": "Mac-473D31EABEB93F9B",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART,
"Screen Size": 13,
@@ -1180,10 +1184,10 @@ smbios_dictionary = {
},
"MacBookPro13,2": {
"Board ID": "Mac-66E35819EE2D0D05",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART,
"Screen Size": 13,
@@ -1197,10 +1201,10 @@ smbios_dictionary = {
},
"MacBookPro13,3": {
"Board ID": "Mac-A5C67F76ED83108C",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20703_UART,
"Screen Size": 15,
@@ -1216,7 +1220,7 @@ smbios_dictionary = {
},
"MacBookPro14,1": {
"Board ID": "Mac-B4831CEBD52A0C4C",
"FirmwareFeatures": "0xFF0FF57E",
"FirmwareFeatures": "0x8FF0FF57E",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1233,7 +1237,7 @@ smbios_dictionary = {
},
"MacBookPro14,2": {
"Board ID": "Mac-CAD6701F7CEA0921",
"FirmwareFeatures": "0xFF0FF57E",
"FirmwareFeatures": "0x8FF0FF57E",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1250,7 +1254,7 @@ smbios_dictionary = {
},
"MacBookPro14,3": {
"Board ID": "Mac-551B86E5744E2388",
"FirmwareFeatures": "0xFF0FF57E",
"FirmwareFeatures": "0x8FF0FF57E",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1269,7 +1273,7 @@ smbios_dictionary = {
},
"MacBookPro15,1": {
"Board ID": "Mac-937A206F2EE63C01",
"FirmwareFeatures": "0xFD8FF426",
"FirmwareFeatures": "0x8FD8FF426",
"SecureBootModel": "j680",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1288,7 +1292,7 @@ smbios_dictionary = {
},
"MacBookPro15,2": {
"Board ID": "Mac-827FB448E656EC26",
"FirmwareFeatures": "0xFD8FF426",
"FirmwareFeatures": "0x8FD8FF426",
"SecureBootModel": "j132",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1305,7 +1309,7 @@ smbios_dictionary = {
},
"MacBookPro15,3": {
"Board ID": "Mac-1E7E29AD0135F9BC",
"FirmwareFeatures": "0xFD8FF426",
"FirmwareFeatures": "0x8FD8FF426",
"SecureBootModel": "j780",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1324,7 +1328,7 @@ smbios_dictionary = {
},
"MacBookPro15,4": {
"Board ID": "Mac-53FDB3D8DB8CA971",
"FirmwareFeatures": "0xFD8FF426",
"FirmwareFeatures": "0x8FD8FF426",
"SecureBootModel": "j213",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1341,7 +1345,7 @@ smbios_dictionary = {
},
"MacBookPro16,1": {
"Board ID": "Mac-E1008331FDC96864",
"FirmwareFeatures": "0xFDAFF066",
"FirmwareFeatures": "0x8FDAFF066",
"SecureBootModel": "j152f",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1360,7 +1364,7 @@ smbios_dictionary = {
},
"MacBookPro16,2": {
"Board ID": "Mac-5F9802EFE386AA28",
"FirmwareFeatures": "0xFFAFF06E",
"FirmwareFeatures": "0x8FFFFFF7F",
"SecureBootModel": "j214k",
"CPU Generation": cpu_data.cpu_data.ice_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1377,7 +1381,7 @@ smbios_dictionary = {
},
"MacBookPro16,3": {
"Board ID": "Mac-E7203C0F68AA0004",
"FirmwareFeatures": "0xFDAFF066",
"FirmwareFeatures": "0x8FDAFF066",
"SecureBootModel": "j223",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1394,7 +1398,7 @@ smbios_dictionary = {
},
"MacBookPro16,4": {
"Board ID": "Mac-A61BADE1FDAD7B05",
"FirmwareFeatures": "0xFDAFF066",
"FirmwareFeatures": "0x8FDAFF066",
"SecureBootModel": "j215",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1637,10 +1641,10 @@ smbios_dictionary = {
},
"Macmini7,1": {
"Board ID": "Mac-35C5E08120C7EEAF",
"FirmwareFeatures": "0xE00DE137",
"FirmwareFeatures": "0x8E00DE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.haswell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
@@ -1654,7 +1658,7 @@ smbios_dictionary = {
},
"Macmini8,1": {
"Board ID": "Mac-7BA5B2DFE22DDD8C",
"FirmwareFeatures": "0xFD8FF466",
"FirmwareFeatures": "0x8FD8FF466",
"SecureBootModel": "j174",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -1868,8 +1872,10 @@ smbios_dictionary = {
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM2046,
"Ethernet Chipset": "Nvidia",
"nForce Chipset": True,
"Socketed GPUs": "MXM",
"Stock GPUs": [
device_probe.NVIDIA.Archs.Tesla,
device_probe.AMD.Archs.TeraScale_1,
],
"Stock Storage": [
"SATA 3.5",
@@ -1939,7 +1945,7 @@ smbios_dictionary = {
"nForce Chipset": True,
"Socketed GPUs": "MXM",
"Stock GPUs": [
device_probe.NVIDIA.Archs.Tesla,
device_probe.AMD.Archs.TeraScale_1,
],
"Stock Storage": [
"SATA 3.5",
@@ -1957,7 +1963,7 @@ smbios_dictionary = {
"nForce Chipset": True,
"Socketed GPUs": "MXM",
"Stock GPUs": [
device_probe.NVIDIA.Archs.Tesla,
device_probe.AMD.Archs.TeraScale_1,
],
"Stock Storage": [
"SATA 3.5",
@@ -1975,7 +1981,7 @@ smbios_dictionary = {
"nForce Chipset": True,
"Socketed GPUs": "MXM",
"Stock GPUs": [
device_probe.NVIDIA.Archs.Tesla,
device_probe.AMD.Archs.TeraScale_1,
],
"Stock Storage": [
"SATA 3.5",
@@ -2137,7 +2143,6 @@ smbios_dictionary = {
"Ethernet Chipset": "Broadcom",
"Stock GPUs": [
device_probe.Intel.Archs.Ivy_Bridge,
device_probe.NVIDIA.Archs.Kepler,
],
"Stock Storage": [
"SATA 3.5",
@@ -2155,7 +2160,6 @@ smbios_dictionary = {
"Ethernet Chipset": "Broadcom",
"Stock GPUs": [
device_probe.Intel.Archs.Haswell,
device_probe.NVIDIA.Archs.Kepler,
],
"Stock Storage": [
"SATA 3.5",
@@ -2255,10 +2259,10 @@ smbios_dictionary = {
},
"iMac16,1": {
"Board ID": "Mac-A369DDC4E67F1C45",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.broadwell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
@@ -2272,10 +2276,10 @@ smbios_dictionary = {
},
"iMac16,2": {
"Board ID": "Mac-FFE5EF870D7BA81A",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.broadwell.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
@@ -2289,16 +2293,17 @@ smbios_dictionary = {
},
"iMac17,1": {
"Board ID": "Mac-DB15BD556843C820",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
"5K Display": True,
"Stock GPUs": [
device_probe.Intel.Archs.Skylake,
device_probe.AMD.Archs.Legacy_GCN_8000,
device_probe.AMD.Archs.Legacy_GCN_9000,
],
"Stock Storage": [
@@ -2308,16 +2313,17 @@ smbios_dictionary = {
},
"iMac17,1_v2": {
"Board ID": "Mac-65CE76090165799A",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
"5K Display": True,
"Stock GPUs": [
device_probe.Intel.Archs.Skylake,
device_probe.AMD.Archs.Legacy_GCN_8000,
device_probe.AMD.Archs.Legacy_GCN_9000,
],
"Stock Storage": [
@@ -2327,16 +2333,17 @@ smbios_dictionary = {
},
"iMac17,1_v3": {
"Board ID": "Mac-B809C3757DA9BB8D",
"FirmwareFeatures": "0xFC0FE137",
"FirmwareFeatures": "0x8FC0FE137",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.skylake.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
"5K Display": True,
"Stock GPUs": [
device_probe.Intel.Archs.Skylake,
device_probe.AMD.Archs.Legacy_GCN_8000,
device_probe.AMD.Archs.Legacy_GCN_9000,
],
"Stock Storage": [
@@ -2346,7 +2353,7 @@ smbios_dictionary = {
},
"iMac18,1": {
"Board ID": "Mac-4B682C642B45593E",
"FirmwareFeatures": "0xFD0FF576",
"FirmwareFeatures": "0x8FD0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2363,7 +2370,7 @@ smbios_dictionary = {
},
"iMac18,2": {
"Board ID": "Mac-77F17D7DA9285301",
"FirmwareFeatures": "0xFD0FF576",
"FirmwareFeatures": "0x8FD0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2381,7 +2388,7 @@ smbios_dictionary = {
},
"iMac18,3": {
"Board ID": "Mac-BE088AF8C5EB4FA2",
"FirmwareFeatures": "0xFD0FF576",
"FirmwareFeatures": "0x8FD0FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.kaby_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2400,7 +2407,7 @@ smbios_dictionary = {
},
"iMac19,1": {
"Board ID": "Mac-AA95B1DDAB278B95",
"FirmwareFeatures": "0xFD8FF576",
"FirmwareFeatures": "0x8FD8FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2421,7 +2428,7 @@ smbios_dictionary = {
"AAPL_iMac19,1": {
# AppleInternal iMac19,1 unit
"Board ID": "Mac-CF21D135A7D34AA6",
"FirmwareFeatures": "0xFD8FF576",
"FirmwareFeatures": "0x8FD8FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2441,7 +2448,7 @@ smbios_dictionary = {
},
"iMac19,2": {
"Board ID": "Mac-63001698E7A34814",
"FirmwareFeatures": "0xFD8FF576",
"FirmwareFeatures": "0x8FD8FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2460,7 +2467,7 @@ smbios_dictionary = {
},
"iMac20,1": {
"Board ID": "Mac-CFF7D910A743CAAF",
"FirmwareFeatures": "0xFD8FF576",
"FirmwareFeatures": "0x8FFB3F066",
"SecureBootModel": "j185",
"CPU Generation": cpu_data.cpu_data.comet_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2478,7 +2485,7 @@ smbios_dictionary = {
},
"iMac20,2": {
"Board ID": "Mac-AF89B6D9451A490B",
"FirmwareFeatures": "0xFD8FF576",
"FirmwareFeatures": "0x8FFB3F066",
"SecureBootModel": "j185f",
"CPU Generation": cpu_data.cpu_data.comet_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2589,7 +2596,9 @@ smbios_dictionary = {
"Ethernet Chipset": "Intel 80003ES2LAN",
"Socketed GPUs": "PCIe",
"Stock GPUs": [
device_probe.AMD.Archs.TeraScale_1
device_probe.AMD.Archs.TeraScale_1,
device_probe.AMD.Archs.Polaris,
],
"Stock Storage": [
"SATA 3.5",
@@ -2607,7 +2616,8 @@ smbios_dictionary = {
"Ethernet Chipset": "Intel 82574L",
"Socketed GPUs": "PCIe",
"Stock GPUs": [
device_probe.NVIDIA.Archs.Tesla
device_probe.NVIDIA.Archs.Tesla,
device_probe.AMD.Archs.Polaris,
],
"Stock Storage": [
"SATA 3.5",
@@ -2624,7 +2634,8 @@ smbios_dictionary = {
"Ethernet Chipset": "Intel 82574L",
"Socketed GPUs": "PCIe",
"Stock GPUs": [
device_probe.AMD.Archs.TeraScale_2
device_probe.AMD.Archs.TeraScale_2,
device_probe.AMD.Archs.Polaris,
],
"Stock Storage": [
"SATA 3.5",
@@ -2632,10 +2643,10 @@ smbios_dictionary = {
},
"MacPro6,1": {
"Board ID": "Mac-F60DEB81FF30ACF6",
"FirmwareFeatures": "0xE90FF576",
"FirmwareFeatures": "0x8E90FF576",
"SecureBootModel": None,
"CPU Generation": cpu_data.cpu_data.ivy_bridge.value,
"Max OS Supported": os_data.os_data.max_os,
"Max OS Supported": os_data.os_data.monterey,
"Wireless Model": device_probe.Broadcom.Chipsets.AirportBrcmNIC,
"Bluetooth Model": bluetooth_data.bluetooth_data.BRCM20702_v2,
"Ethernet Chipset": "Broadcom",
@@ -2648,7 +2659,7 @@ smbios_dictionary = {
},
"MacPro7,1": {
"Board ID": "Mac-27AD2F918AE68F61",
"FirmwareFeatures": "0xFDAFF066",
"FirmwareFeatures": "0x8FDAFF066",
"SecureBootModel": "j160",
"CPU Generation": cpu_data.cpu_data.coffee_lake.value,
"Max OS Supported": os_data.os_data.max_os,
@@ -2814,7 +2825,7 @@ smbios_dictionary = {
# Apple Silicon Virtual Machine
"Board ID": None,
"FirmwareFeatures": None,
"SecureBootModel": "vma1macos",
"SecureBootModel": "vma1",
"CPU Generation": cpu_data.cpu_data.apple_m1.value,
"Max OS Supported": os_data.os_data.max_os,
"Wireless Model": None,
@@ -3004,4 +3015,4 @@ smbios_dictionary = {
"Stock GPUs": [],
"Stock Storage": [],
},
}
}

File diff suppressed because it is too large Load Diff

11
data/video_bios_data.py Normal file

File diff suppressed because one or more lines are too long

View File

@@ -93,6 +93,15 @@ module.exports = {
},
{
title: 'macOS Ventura',
collapsable: false,
sidebarDepth: 1,
children: [
['VENTURA-DROP', 'macOS Ventura Support'],
]
},
{
title: 'macOS Monterey',
collapsable: false,
sidebarDepth: 1,

View File

@@ -13,16 +13,17 @@
* [Unable to allow Safari Extensions](#unable-to-allow-Safari-Extensions)
* [Cannot Login on 2011 15" and 17" MacBook Pros](#cannot-login-on-2011-15-and-17-macbook-pros)
* [Black Boxes on HD3000 iGPUs](#black-boxes-on-hd3000-igpus)
* [Cannot Pair Bluetooth Devices](#cannot-pair-bluetooth-devices)
The below page is for users experiencing issues with their overall usage of macOS Big Sur / macOS Monterey and the Legacy Graphics Acceleration patches. Note that the following GPUs currently do not have acceleration support in Big Sur / Monterey:
The below page is for users experiencing issues with their overall usage of macOS Big Sur / Monterey / Ventura and the Legacy Graphics Acceleration patches. Note that the following GPUs currently do not have acceleration support in Big Sur / Monterey / Ventura:
* Intel 3rd and 4th Gen - GMA series
For those unfamiliar with what is considered a non-Metal GPU, see below chart:
For those unfamiliar with what is considered a non-Metal GPU, see the chart below:
::: details macOS GPU Chart
Metal is Apple's in-house graphics API that acts as a replacement for OpenGL/OpenCL, introduced in 2015. With the release of macOS Mojave, every system without a Metal-capable GPU was dropped.
Metal is Apple's in-house graphics API that acts as a replacement for OpenGL/OpenCL, introduced in 2015. With the release of macOS Mojave, every system without a Metal-capable GPU was dropped.
| Graphics Vendor | Architecture | Series | Supports Metal |
| :--- | :--- | :--- | :--- |
@@ -30,7 +31,7 @@ Metal is Apple's in-house graphics API that acts as a replacement for OpenGL/Ope
| ^^ | TeraScale 2 | HD5000 - HD6000 | ^^ |
| AMD | GCN (and newer) | HD7000+ | <span style="color:green">Yes</span> |
| NVIDIA | Tesla | 8000GT - GT300 | <span style="color:red">No</span> |
| ^^ | Fermi | GT400 - GT500 | ^^ |
| ^^ | Fermi | GT400 - GT500 | ^^ |
| ^^ | Kepler | GT600 - GT700 | <span style="color:green">Yes</span> |
| Intel | GMA | GMA900 - GMA3000 | <span style="color:red">No</span> |
| ^^ | Iron Lake | HD series | ^^ |
@@ -101,13 +102,13 @@ Due to the Metal Backend, the enhanced color output of these apps seems to heavi
## Cannot press "Done" when editing a Sidebar Widget
Workaround: Press some combination of Tab, or Tab and then Shift-Tab, or just Shift-Tab until the "Done" button is highlighted. Then press spacebar to activate the button, the same as in any other dialog with a highlighted button halo.
Workaround: Press some combination of Tab, or Tab and then Shift-Tab, or just Shift-Tab until the "Done" button is highlighted. Then press spacebar to activate the button, the same as in any other dialog with a highlighted button halo.
## Wake from sleep heavily distorted on AMD/ATI in macOS 11.3 and newer
Unfortunately a very well known issue the community is investigating, current known solution is to simply downgrade to 11.2.3 or older until a proper fix can be found. Additionally logging out and logging in can resolve the issue without requiring a reboot
Unfortunately, this is a very well known issue that the community is investigating. A currently known solution is to downgrade to macOS 11.2.3 or older until a proper fix can be found. Additionally, logging out and logging back in can resolve the issue without requiring a reboot.
* Note, this issue should be exclusive to TeraScale 1 GPUs (ie. HD2000-4000). TeraScale 2 GPUs should not exhibit this issue
* Note, this issue should be exclusive to TeraScale 1 GPUs (ie. HD2000-4000). TeraScale 2 GPUs should not exhibit this issue.
In the event Apple removes 11.2.3 from their catalogue, we've provided a mirror below:
@@ -115,19 +116,19 @@ In the event Apple removes 11.2.3 from their catalogue, we've provided a mirror
## Unable to switch GPUs on 2011 15" and 17" MacBook Pros
Currently OpenCore Legacy Patcher, GPU switching between the iGPU and dGPU is broken. The simplest way to set a specific GPU is to disable the dGPU when you wish to remain on the more power efficient iGPU.
Currently, with OpenCore Legacy Patcher, GPU switching between the iGPU and dGPU is broken. The simplest way to set a specific GPU is to disable the dGPU when you wish to remain on the more power efficient iGPU.
The best way to achieve this is to boot Recovery (or Single User Mode if the dGPU refuses to function at all) and run the following command:
The best way to achieve this is to boot to Recovery (or Single User Mode if the dGPU refuses to function at all) and run the following command:
```sh
nvram FA4CE28D-B62F-4C99-9CC3-6815686E30F9:gpu-power-prefs=%01%00%00%00
```
This will disable the dGPU and allow the iGPU to function in Big Sur. Note that external display outputs are directly routed to the dGPU and therefore can no longer be used. Solutions such as a [DisplayLink Adapters](https://www.displaylink.com/products/usb-adapters) can work around this limitation, however note that you'll need to use older drivers (5.2.6):
This will disable the dGPU and allow the iGPU to function in Big Sur. Note that external display outputs are directly routed to the dGPU and therefore can no longer be used. Solutions such as [DisplayLink Adapters](https://www.displaylink.com/products/usb-adapters) can work around this limitation, however, note that you'll need to use older drivers (5.2.6):
* [DisplayLink USB Graphics Software for macOS - For Mojave and Catalina - 5.2.6](https://www.synaptics.com/products/displaylink-graphics/downloads/macos-5.2.6)
Note this driver only provides partial support in macOS, full graphics acceleration is not currently available on the displays driven by DisplayLink
Note: This driver only provides partial support in macOS, full graphics acceleration is not currently available on displays driven by DisplayLink.
## Erratic Colours on ATI TeraScale 2 GPUs (HD5000/HD6000)
@@ -135,7 +136,7 @@ Resolved with OpenCore Legacy Patcher v0.4.2
::: details Legacy Fix (prior to 0.4.2)
Due to an odd bug with ATI's TeraScale 2 GPUs, many users will experience erratic/strobing colours once finished installing and rebooting into the accelerated patches. The issue stems from an incorrect assumption in the GPU drivers where it will enforce the Billion Colour space on your display. To fix, simply force your Display into a lower color depth such as a Million Colours.
Due to an odd bug with ATI's TeraScale 2 GPUs, many users will experience erratic/strobing colours once finished installing accelerated patches and rebooting into macOS. The issue stems from an incorrect assumption in the GPU drivers where it will enforce the Billion Colour space on your display. To fix, simply force your Display into a lower color depth such as Million Colours.
Applications that can set color depth are:
@@ -146,25 +147,23 @@ Applications that can set color depth are:
## Unable to allow Safari Extensions
Due to an bug on the legacy acceleration patches, users won't be able to enable Safari Extensions
Due to a bug in the legacy acceleration patches, users won't be able to enable Safari Extensions.
This tool can be used to work-around this issue:
The following tool can be used to work-around this issue:
* [Non-Metal Safari Extensions](https://github.com/moosethegoose2213/Non-Metal-Safari-Extensions/)
## Cannot Login on 2011 15" and 17" MacBook Pros
By default OpenCore Legacy Patcher will assume MacBookPro8,2/3 have a faulty dGPU and disable acceleration. This is the safest option for most users as enabling dGPU acceleration on faulty Macs will result in failed booting.
By default, OpenCore Legacy Patcher will assume MacBookPro8,2/3 have a faulty dGPU and disable acceleration. This is the safest option for most users as enabling dGPU acceleration on faulty Macs will result in failed booting.
However if your machine does not have the dGPU disabled via NVRAM, you'll experience a login loop. To work around this is quite simple:
However, if your machine does not have the dGPU disabled via NVRAM, you'll experience a login loop. To work around this is quite simple:
1. Boot macOS in Single User Mode
* Press Cmd+S in OpenCore's menu when you turn the Mac on
2. When command line prompt appears, enter the dGPU disabler argument (at the bottom)
2. When the command line prompt appears, enter the dGPU disabler argument (at the bottom)
3. Reboot and patched macOS should work normally
4. If you still want to use the dGPU, run OpenCore Legacy Patcher and enable TS2 Acceleration from settings. Then root patch your Mac again
* TUI: `Patcher Settings -> Misc Settings -> TeraScale 2 Accel`
* GUI: `Patcher Settings -> Developer Settings -> Set TeraScale 2 Accel`
4. If you still want to use the dGPU, run OpenCore Legacy Patcher and enable TS2 Acceleration from settings. Go to `Patcher Settings -> Developer Settings -> Set TeraScale 2 Accel`, then root patch again.
5. Either Reset NVRAM or set `gpu-power-prefs` to zeros to re-enable the dGPU
```sh
@@ -178,10 +177,20 @@ nvram FA4CE28D-B62F-4C99-9CC3-6815686E30F9:gpu-power-prefs=%00%00%00%00
A somewhat strange issue on Intel HD3000-based Macs, on 3rd party displays sometimes UI elements may become black and unreadable. To resolve, select either the generic `Display` or `Display P3` Color Profiles in Display Settings.
* Mainly applicable for HDMI Displays, DVI and DisplayPort are generally unaffected
* Mainly applicable for HDMI Displays, DVI and DisplayPort are generally unaffected.
* If you're inside Setup Assistant, press `Cmd` + `Option` + `Control` + `T` to launch Terminal. From there, run `open /System/Applications/System\ Preferences.app`
* Issue has spread to more Macs with macOS Ventura, including MacBook Airs and MacBook Pros
| Default Color Profile | Display/Display P3 Profile |
| :--- | :--- |
| ![](../images/HD3000-Default-Colors.png) | ![](../images/HD3000-Display-Colors.png) |
| ![](../images/HD3000-Default-Colors.png) | ![](../images/HD3000-Display-Colors.png) |
## Cannot Pair Bluetooth Devices
In macOS Ventura, hover states may not function correctly which results in the "Connect" button not appearing in System Settings. To resolve:
1. Enable Keyboard Navigation in System Settings -> Keyboard
2. Tab + space over Bluetooth devices in System Settings -> Bluetooth
3. Pair button should appear
For more information, see [ASentientBot's post](https://forums.macrumors.com/threads/macos-13-ventura-on-unsupported-macs-thread.2346881/page-116?post=31858759#post-31858759).

View File

@@ -2,7 +2,7 @@
Now we finally get to boot OpenCore!
Reboot machine while holding `Option` to select the EFI Boot entry with the OpenCore icon (holding the `Control` key will make this the default boot entry):
Reboot the machine while holding `Option` to select the EFI Boot entry with the OpenCore icon (holding the `Control` key will make this the default boot entry):
* This will be the Mac Boot Picker
@@ -18,7 +18,7 @@ Firstly, open the Terminal and run the following command:
```sh
sudo nvram "recovery-boot-mode=unused" && sudo reboot recovery
```
This will make your machine reboot into the Recovery Environment. Alternatively, holding Command + R when your machine is starting up will also let you enter the Recovery.
This will make your machine reboot into the Recovery Environment. Alternatively, holding `Command` + `R` when your machine is starting up will also let you enter the Recovery.
Secondly, open the Recovery Environment's Terminal (Menu bar > Utilities > Terminal).
@@ -31,7 +31,7 @@ The command should produce a list of drives installed in your system:
Keep track of the drive with the OCLP install. You will need the drive identifer for later.
Now you'll want to mount the EFI partition (where OCLP is installed, though may differ if you've installed OCLP to a FAT-32 volume).
Now you'll want to mount the EFI partition (where OCLP is installed, though it may differ if you've installed OCLP to a FAT-32 volume).
Run the following command (Replace X with the drive number):
```sh
@@ -40,7 +40,7 @@ diskutil mount diskXs1
![](../images/Unflashed-Boot-2.png)
If everything is correct, the EFI partion should be mounted.
Now you'll want to use the bless command to set the default boot device:
Now you'll want to use the `bless` command to set the default boot device:
```sh
bless --mount /Volumes/EFI --setBoot --file /Volumes/EFI/System/Library/CoreServices/boot.efi
```
@@ -52,24 +52,24 @@ If the command produces an output, ensure that you've typed it in correctly.
Now you can reboot your machine. OCLP is now the default boot option!
:::
Now that you've loaded OpenCore, now select Install macOS:
Now that you've loaded OpenCore, "select Install macOS":
* This will be the OpenCore Picker
![](../images/oc-boot.png)
You will soon reach the installer screen! If you enabled verbose mode when building OCLP, a lot of text will run across the screen. From there it's just like any normal macOS install. For an example of how the boot process looks, see the following video:
You will soon reach the installer screen! If you enabled verbose mode when building OCLP, a lot of text will run across the screen. From there, it's just like any normal macOS install. For an example of how the boot process looks, see the following video:
* [OpenCore Legacy Patcher Boot Process](https://www.youtube.com/watch?v=AN3zsbQV_n4)
If your Mac is looping back into the beginning of the setup after the first reboot, turn it off, start it again and hold `Option`. This time select the option with a grey hard disk icon, it can say "macOS Installer" or the name you gave the disk during the installer process. Keep repeating this step after every reboot if necessary.
If your Mac is looping back into the beginning of the setup after the first reboot, turn it off, start it again and hold `Option`. This time, select the option with a grey hard disk icon, it can say "macOS Installer" or the name you gave the disk during the installer process. Keep repeating this step after every reboot if necessary.
![](../images/oclp-stuck-firstreboot.png)
::: warning
**MacBookPro11,3 Note**: When booting macOS Monterey, you'll need to boot into safe mode if acceleration patches are not installed yet. [Otherwise you'll hit a black screen due to missing NVIDIA drivers.](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/522) Safe Mode can be entered by holding Shift+Enter when selecting macOS Monterey in OCLP's Boot Menu.
**MacBookPro11,3 Note**: When booting macOS Monterey, you'll need to boot into safe mode if acceleration patches are not installed yet. [Otherwise, you'll hit a black screen due to missing NVIDIA drivers.](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/522) Safe Mode can be entered by holding `Shift + Enter` when selecting macOS Monterey in OCLP's Boot Menu.
:::

View File

@@ -1,6 +1,6 @@
# Building and installing OpenCore
Now that we have a macOS installer, lets now build our OpenCore configuration!
Now that we have a macOS installer, let's now build our OpenCore configuration!
If you haven't downloaded OpenCore Patcher yet, do so now:
@@ -10,6 +10,11 @@ Next, run the `OpenCore-Patcher.app`:
![](../images/OCLP-GUI-Main-Menu.png)
::: warning
OpenCore configurations are hardware specific.
If you're building OpenCore for a different model than you're currently running, it is absolutely necessary to select the proper model from Settings.
:::
Here we'll select Build and Install OpenCore and start building:
| Start Building | Finished Building |
@@ -18,7 +23,7 @@ Here we'll select Build and Install OpenCore and start building:
Once it finishes building, you'll want to select the Install OpenCore button:
* If you created a macOS USB manually and don't see it listed, make sure it's either formatted as GUID/GPT or has a FAT32 partition for OpenCore to sit on
* If you created a macOS USB manually and don't see it listed, make sure it's either formatted as GUID/GPT or has a FAT32 partition for OpenCore to reside on.
| Select Drive | Select Partition |

View File

@@ -1,10 +1,10 @@
# How to debug with OpenCore
For those who've hit an odd bug and unsure if it's user error or patcher, we recommend asking on the [OpenCore Patcher Paradise Discord Server](https://discord.gg/rqdPgH8xSN) for help.
For those who've hit an odd bug and are unsure if it's user error or within the patcher, we recommend asking on the [OpenCore Patcher Paradise Discord Server](https://discord.gg/rqdPgH8xSN) for help.
## Debugging yourself
The easiest way to debug yourself is via Patcher Settings. Here there are many different settings however the 3 main options that will help are:
The easiest way to debug yourself is via Patcher Settings. Here there are many different settings, however, the 3 main options that will help are:
* "Enable Verbose Mode"
* "Enable OpenCore DEBUG"
@@ -14,7 +14,7 @@ When you've enabled these 3 options, rebuild OpenCore and install to your drive.
## Obtaining OpenCore logs from disk
With "Enable OpenCore DEBUG" set, every boot there will be a .txt file generated in your disk. To grab these logs, [download and run MountEFI](https://github.com/corpnewt/MountEFI):
With "Enable OpenCore DEBUG" set, on every boot there will be a .txt file generated on the EFI Partition. To grab these logs, [download and run MountEFI](https://github.com/corpnewt/MountEFI):
![](../images/mountefi.png)
@@ -38,13 +38,13 @@ From there, you'll have a log on your desktop.
Currently issues have been disabled due to [current events](ISSUES-HOLD.md). You can continue to receive support in the [OpenCore Patcher Paradise Discord Server](https://discord.gg/rqdPgH8xSN), where there are active members of the community available.
:::
Now that you have proper logs, you can now [file issues with us](https://github.com/dortania/OpenCore-Legacy-Patcher/issues). Reminder we want the following info:
Now that you have proper logs, you can now [file issues with us](https://github.com/dortania/OpenCore-Legacy-Patcher/issues). This is a reminder to include the following info:
* Model patching for (ie. MacBookPro10,1)
* Model that you're patching for (ie. MacBookPro10,1)
* Target OS (ie. macOS 11.2.3)
* Host OS (ie. macOS 10.15.7)
* Upload of your OpenCore Build Folder
* Upload of your OpenCore log (if applicable)
* Upload of your Kernel log (if applicable)
Additionally, please search whether the issue has been reported before. This avoids having duplicate issues.
Additionally, please search to see if the issue has been reported before. This avoids having duplicate issues.

View File

@@ -1,6 +1,6 @@
# Supporting the patcher
OpenCore Legacy Patcher is a hobby project for us developers, and while we love helping out the community it's very difficult for us to troubleshoot issues remotely. The best way for us to get to work on the patcher, fix issues and add enhancements is having the hardware in-hand. As a hobby project, neither of the main developers can afford to buy every legacy Mac to test on.
OpenCore Legacy Patcher is a hobby project for us developers, and while we love helping out the community, it's very difficult for us to troubleshoot issues remotely. The best way for us to get to work on the patcher, fix issues and add enhancements is having the hardware in-hand. As a hobby project, neither of the main developers can afford to buy every legacy Mac to test on.
The best way to support us in all honesty is to donate any old hardware you no longer need, as this allows us to have machines to test locally and push fixes much faster. While we appreciate cash donations, this makes it much more difficult for us to handle as an organization.
@@ -8,10 +8,6 @@ Main sections of help we'd appreciate:
* Donating any Mac you own
* Does require SSE4,1 CPU to test on Sierra and newer however
* Donating any spare SATA SSDs
* Having extra SSDs on hand allows us to quickly and easily test specific builds of macOS without having to wipe drives and reinstall as much
* Aiding by buying items in our Amazon Wishlist
* Currently we have a few members within Dortania testing so we recommend messaging the email listed below to see which member at the time would require something purchased the most
Additionally, hardware info dumps are greatly beneficial for us to determine what patches a machine might need:
@@ -19,7 +15,7 @@ Additionally, hardware info dumps are greatly beneficial for us to determine wha
* `File -> SaveAs` and open an issue on Github
* Note: We want IOReg dumps of hardware not running on OpenCore, instead running a clean, officially supported OS by the machine
If you have any legacy hardware you're willing to donate or what to buy us something, please contact us at the following email:
If you have any legacy hardware you're willing to donate or want to buy us hardware, please contact us at the following email:
* khronokernel@icloud.com

View File

@@ -1,9 +1,9 @@
# Boot Process with OpenCore Legacy Patcher
OpenCore Legacy Patcher itself is actually quite a "dumb" program, and essentially edits a config.plist file and moves files around, it actually has little logic regarding the boot process. The real magic of OCLP is [OpenCorePkg](https://github.com/acidanthera/OpenCorePkg), our back-end and what makes this patcher so powerful.
OpenCore Legacy Patcher itself is actually quite a "dumb" program. It essentially edits a config.plist file and moves files around, actually having little logic regarding the boot process. The real magic of OCLP is [OpenCorePkg](https://github.com/acidanthera/OpenCorePkg), our back-end, and what makes this patcher so powerful.
## Boot Process with OpenCore
To understand a bit more of how OpenCore is able revive older Macs in such a native-like way, we need to go over *how* OpenCore works with your Mac:
To understand a bit more of how OpenCore is able to revive older Macs in such a native-like way, we need to go over *how* OpenCore works with your Mac:
![](../images/oc-explained.png)

View File

@@ -1,6 +1,6 @@
# Creating custom icons for OpenCore and Mac Boot Picker
For users who want to customize your setup to be more personal, OpenCore does allow for custom icons and images in the boot picker.
For users who want to customize their setup to be more personal, OpenCore does allow for custom icons and images in the boot picker.
* [Custom OpenCore icons](#custom-opencore-icons)
* [Custom Mac Boot Picker icons](#custom-mac-boot-picker-icons)
@@ -34,7 +34,7 @@ Once you have a custom image you want to use(for example, as a background), down
![](../images/icnspack-folder.png)
Now `cd` this folder in terminal and run the following:
Now `cd` to this folder in terminal and run the following:
```sh
./icnspack Background.icns <insert_x1_image> <insert_x2_image>
@@ -46,13 +46,13 @@ Once done, you'll see your custom icon generated in `icnspack`'s folder:
# Custom Mac Boot Picker icons
Custom boot picker icons is much more complicated on Legacy Macs, on late 2013+ Macs the [Custom OpenCore icons](#custom-opencore-icons) method will work just fine. However on many 2012 and older Macs, the icons generated will be incompatible with the firmware.
Custom boot picker icons are much more complicated on Legacy Macs. On late 2013+ Macs, the [Custom OpenCore icons](#custom-opencore-icons) method will work just fine. However, on many 2012 and older Macs, the icons generated will be incompatible with the firmware.
To generate legacy icons, you'll need the following:
* A machine running macOS 10.4 through 10.11
* Icon Composer.app (Requires Apple Developer Account for official download)
* Users without the developer account can find a mirrors here:
* Users without a developer account can find mirrors here:
* [Icon Composer 10.6](https://github.com/dortania/OpenCore-Legacy-Patcher/blob/main/docs/Icon-Composer-10.6.zip)
* [Icon Composer 10.11](https://github.com/dortania/OpenCore-Legacy-Patcher/blob/main/docs/Icon-Composer-10.11.zip)
* PNG Image you wish to convert
@@ -69,15 +69,15 @@ Now run the app and simply drag the images to each section as so:
![](../images/icon-SL.png)
Now save and export the new icns
Now save and export the new icns file.
# Installing updated icons
To install, please ensure that Vault is disabled when you built OpenCore. If you're unsure, simply rebuild OpenCore with the Patcher setting "Vault" set to false.
To install, please ensure that Vault was disabled when you built OpenCore. If you're unsure, simply rebuild OpenCore with the Patcher setting "Vault" set to false.
* <span style="color:red"> Warning</span>: Editing your OpenCore EFI incorrectly can result in a bricked install. Please ensure you have a natively supported version of macOS installed to boot into in case of issues.
Now that you've verified you can edit OpenCore safely, you'll need to mount the drive that OpenCore is stored on. To do this, download [MountEFI](https://github.com/corpnewt/MountEFI) and run it:
Now that you've verified that you can edit OpenCore safely, you'll need to mount the drive that OpenCore is stored on. To do this, download [MountEFI](https://github.com/corpnewt/MountEFI) and run it:
![](../images/mountefi.png)
@@ -96,7 +96,7 @@ Now reboot and you should see your updated icon(s)!
### Updating Mac Boot Picker icons
To update the Mac Boot Picker icons is actually quite simple, on the root of your drive simply drop the icon onto the root of the drive with the name `.VolumeIcon.icns`
Updating the Mac Boot Picker icons is actually quite simple. On the root of your drive, simply drop the icon into the root of the drive with the name `.VolumeIcon.icns`
![](../images/mac-icns-drive.png)

View File

@@ -1,8 +1,8 @@
# Download and build macOS Installers
This doc is centered around downloading and writing the macOS installer to a USB. If you're already familiar with how to do this, you can skip.
This document is centered around downloading and writing the macOS installer to a USB drive. If you're already familiar with how to do this, you can skip this section.
* Note: 16GB+ USB will be required for the installer
* Note: 16GB+ USB drive will be required for the installer
## Creating the installer
@@ -12,21 +12,23 @@ With OpenCore Legacy Patcher, our new GUI includes a download menu for macOS ins
For this guide, we'll be using the standard OpenCore-Patcher (GUI).
Once downloaded, open the app and you should be greeted with this menu:
Once downloaded, open the app and you should be greeted by this menu:
![OCLP GUI Main Menu](../images/OCLP-GUI-Main-Menu.png)
First we'll want to select the "Create macOS Installer" button. This will present you with 2 options:
First, we'll want to select the "Create macOS Installer" button. This will present you with 2 options:
![](../images/OCLP-GUI-Create-Installer-Menu.png)
For this example, we'll assume you'll need an installer. Selecting this option will download Apple's Installer Catalogs and build a list for you to choose:
| Downloading | Listed Installers |
| :--- | :--- |
| ![OCLP GUI Installer Download Catalog](../images/OCLP-GUI-Installer-Download-Catalog.png) | ![OCLP GUI Installer Download Listed Products](../images/OCLP-GUI-Installer-Download-Listed-Products.png) |
| Downloading | Listed Installers | Unsupported Installer |
| :--- | :--- | :--- |
| ![OCLP GUI Installer Download Catalog](../images/OCLP-GUI-Installer-Download-Catalog.png) | ![OCLP GUI Installer Download Listed Products](../images/OCLP-GUI-Installer-Download-Listed-Products.png) | ![](../images/OCLP-GUI-Installer-Download-Unsupported.png)
Since the patcher officially supports Big Sur and newer for patching, only those entires will be shown. For ourselves, we'll select 12.1 as that's the latest public release at the time of writing. This will download and install the macOS installer to your applications folder.
Since the patcher officially supports Big Sur and newer for patching, only those entires will be shown. For ourselves, we'll select macOS 12 as that's the latest public release at the time of writing. This will download and install the macOS installer to your applications folder.
* Note that some machines (namely 2012 and older) may not be currently supported on macOS Ventura. If you see this prompt, you'll need to use an older version of macOS.
| Downloading the Installer | Requesting to install | Finished Installing |
| :--- | :--- | :--- |

View File

@@ -1,4 +1,4 @@
# OpenCore Legacy Patcher Licence
# OpenCore Legacy Patcher License
This patcher is made of multiple external applications from different people and organizations. See each program for their licensing:

View File

@@ -1,6 +1,6 @@
# Supported Models
Any hardware supporting SSE4.1 CPU and 64-Bit firmware work on this patcher. To check your hardware model, run the below command on the applicable machine in terminal:
Any hardware supporting SSE4.1 CPU and 64-Bit firmware work on this patcher. To check your hardware model, run the following command on the applicable machine in the terminal:
```bash
system_profiler SPHardwareDataType | grep 'Model Identifier'
@@ -18,10 +18,12 @@ The below table will list all supported and unsupported functions of the patcher
Regarding OS support, see below:
* Machines listing `YES - Ventura and older` means they cannot run macOS Ventura at this time. Machines with only `YES` can run all of the supported macOS versions offered by OpenCore Legacy Patcher.
| Support Entry | Supported OSes | Description | Comment |
| :--- | :--- | :--- | :--- |
| HostOS | macOS 10.9 - macOS 12 | Refers to OSes where running OpenCore-Patcher.app are supported | Supports 10.7+ if [Python 3.9 or higher](https://www.python.org/downloads/) is manually installed, simply run the `OpenCore-Patcher.command` located in the repo |
| TargetOS | macOS 11 - macOS 12 | Refers to OSes that can be patched to run with OpenCore | May support 10.4 and newer (in a potentially broken state). No support provided. |
| HostOS | macOS 10.9 - macOS 13 | Refers to OSes where running OpenCore-Patcher.app are supported | Supports 10.7+ if [Python 3.9 or higher](https://www.python.org/downloads/) is manually installed, simply run the `OpenCore-Patcher-GUI.command` located in the repo |
| TargetOS | macOS 11 - macOS 13 | Refers to OSes that can be patched to run with OpenCore | May support 10.4 and newer (in a potentially broken state). No support provided. |
### MacBook
@@ -30,27 +32,30 @@ Regarding OS support, see below:
| MacBook1,1 | Mid-2006 | <span style="color:red"> NO </span> | 32-Bit CPU limitation |
| MacBook2,1 | Late 2006 | ^^ | 32-Bit Firmware limitation |
| MacBook3,1 | Late 2007 | ^^ | ^^ |
| MacBook4,1 | Early 2008 | <span style="color:#30BCD5"> YES </span> | - No GPU Acceleration in Mavericks and newer<br/>- No Keyboard and Trackpad<br/>- No USB |
| MacBook5,1 | Late 2008 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> |
| MacBook5,2 | Early 2009 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/>- Trackpad is recognized as mouse |
| MacBook6,1 | Late 2009 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> |
| MacBook4,1 | Early 2008 | ^^ | - No GPU Acceleration in Mavericks and newer<br/>- No Keyboard and Trackpad<br/>- No USB |
| MacBook5,1 | Late 2008 | <span style="color:#30BCD5"> YES </span> | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> - UHCI/OHCI support in Public Beta, see current issues ([#1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021))|
| MacBook5,2 | Early 2009 | ^^ | ^^ |
| MacBook6,1 | Late 2009 | ^^ | ^^ |
| MacBook7,1 | Mid-2010 | ^^ | ^^ |
| MacBook8,1 | Mid-2015 | ^^ | <span style="color:green"> Everything is supported</span> |
| MacBook9,1 | Early 2016 | ^^ | ^^ |
### MacBook Air
| SMBIOS | Year | Supported | Comment |
| :--- | :--- | :--- | :--- |
| MacBookAir1,1 | Early 2008 | <span style="color:red"> NO </span> | Requires SSE4.1 CPU |
| MacBookAir2,1 | Late 2008 |<span style="color:#30BCD5"> YES </span> | GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)) |
| MacBookAir2,1 | Late 2008 | <span style="color:#30BCD5"> YES </span> | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> - UHCI/OHCI support in Public Beta, see current issues ([#1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021))|
| MacBookAir3,1 | Late 2010 | ^^ | ^^ |
| MacBookAir3,2 | ^^ | ^^ | ^^ |
| MacBookAir4,1 | Mid-2011 | ^^ | ^^ |
| MacBookAir4,1 | Mid-2011 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))|
| MacBookAir4,2 | ^^ | ^^ | ^^ |
| MacBookAir5,1 | Mid-2012 |^^ | <span style="color:green"> Everything is supported</span> |
| MacBookAir5,1 | Mid-2012 | ^^ | <span style="color:green"> Everything is supported</span> |
| MacBookAir5,2 | ^^ | ^^ | ^^ |
| MacBookAir6,1 | Mid-2013, Early 2014 | ^^ | ^^ |
| MacBookAir6,2 | ^^ | ^^ | ^^ |
| MacBookAir7,1 | Early-2015, 2017 | ^^ | ^^ |
| MacBookAir7,2 | ^^ | ^^ | ^^ |
### MacBook Pro
@@ -61,16 +66,16 @@ Regarding OS support, see below:
| MacBookPro2,1 | Late 2006 | ^^ | 32-Bit Firmware limitation |
| MacBookPro2,2 | Late 2006 | ^^ | ^^ |
| MacBookPro3,1 | Mid-2007 | ^^ | Requires SSE4.1 CPU |
| MacBookPro4,1 | Early 2008 | <span style="color:#30BCD5"> YES </span> | GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)) |
| MacBookPro4,1 | Early 2008 | <span style="color:#30BCD5"> YES </span> | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> - UHCI/OHCI support in Public Beta, see current issues ([#1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021))|
| MacBookPro5,1 | Late 2008 | ^^ | ^^ |
| MacBookPro5,2 | Early 2009 | ^^ | ^^ |
| MacBookPro5,3 | Mid-2009 | ^^ | ^^ |
| MacBookPro5,4 | ^^ | ^^ | ^^ |
| MacBookPro5,5 | ^^ | ^^ | ^^ |
| MacBookPro6,1 | Mid-2010 | ^^ | ^^ |
| MacBookPro6,1 | Mid-2010 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))|
| MacBookPro6,2 | ^^ | ^^ | ^^ |
| MacBookPro7,1 | ^^ | ^^ | ^^ |
| MacBookPro8,1 | Early 2011 | ^^ | ^^ |
| MacBookPro7,1 | ^^ | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> - UHCI/OHCI support in Public Beta, see current issues ([#1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021))|
| MacBookPro8,1 | Early 2011 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))|
| MacBookPro8,2 | ^^ | ^^ | ^^ |
| MacBookPro8,3 | ^^ | ^^ | ^^ |
| MacBookPro9,1 | Mid-2012 | ^^ | <span style="color:green"> Everything is supported</span> |
@@ -80,6 +85,12 @@ Regarding OS support, see below:
| MacBookPro11,1 | Late 2013, Mid-2014 | ^^ | ^^ |
| MacBookPro11,2 | ^^ | ^^ | ^^ |
| MacBookPro11,3 | ^^ | ^^ | ^^ |
| MacBookPro11,4 | Mid 2015 | ^^ | ^^ |
| MacBookPro11,5 | ^^ | ^^ | ^^ |
| MacBookPro12,1 | Early 2015 | ^^ | ^^ |
| MacBookPro13,1 | Late 2016 | ^^ | ^^ |
| MacBookPro13,2 | ^^ | ^^ | ^^ |
| MacBookPro13,3 | ^^ | ^^ | ^^ |
### Mac mini
@@ -87,13 +98,14 @@ Regarding OS support, see below:
| :--- | :--- | :--- | :--- |
| Macmini1,1 | Early 2006 | <span style="color:red"> NO </span> | 32-Bit CPU limitation |
| Macmini2,1 | Mid-2007 | ^^ | 32-Bit Firmware limitation |
| Macmini3,1 | Early 2009 | <span style="color:#30BCD5"> YES </span> | GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)) |
| Macmini3,1 | Early 2009 | <span style="color:#30BCD5"> YES </span> | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> - UHCI/OHCI support in Public Beta, see current issues ([#1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021))|
| Macmini4,1 | Mid-2010 | ^^ | ^^ |
| Macmini5,1 | Mid-2011 | ^^ | ^^ |
| Macmini5,1 | Mid-2011 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))|
| Macmini5,2 | ^^ | ^^ | ^^ |
| Macmini5,3 | ^^ | ^^ | ^^ |
| Macmini6,1 | Late 2012 | ^^ | <span style="color:green"> Everything is supported</span> |
| Macmini6,2 | ^^ | ^^ | ^^ |
| Macmini7,1 | Mid-2014 | ^^ | ^^ |
### iMac
@@ -104,11 +116,11 @@ Regarding OS support, see below:
| iMac5,1 | Late 2006 | ^^ | 32-Bit Firmware limitation |
| iMac5,2 | ^^ | ^^ | ^^ |
| iMac6,1 | ^^ | ^^ | ^^ |
| iMac7,1 | Mid-2007 | <span style="color:#30BCD5"> YES </span> | - Requires an [SSE4.1 CPU Upgrade](https://lowendmac.com/2018/penryn-t9300-9500-cpu-upgrades-for-the-2007-imac/)<br/>- GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/>- Stock Bluetooth 2.0 card non-functional |
| iMac8,1 | Early 2008 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))) |
| iMac7,1 | Mid-2007 | <span style="color:#30BCD5"> YES </span> | - Requires an [SSE4.1 CPU Upgrade](https://lowendmac.com/2018/penryn-t9300-9500-cpu-upgrades-for-the-2007-imac/)<br/>- GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/>- Stock Bluetooth 2.0 card non-functional<br/> - UHCI/OHCI support in Public Beta, see current issues ([#1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021))|
| iMac8,1 | Early 2008 | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))<br/> - UHCI/OHCI support in Public Beta, see current issues ([#1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021))|
| iMac9,1 | Early 2009 | ^^ | ^^ |
| iMac10,1 | Late 2009 | ^^ | - GPU is socketed, [recommend upgrading to Metal GPU](https://forums.macrumors.com/threads/2011-imac-graphics-card-upgrade.1596614/?post=17425857#post-17425857) <br/>- GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)) |
| iMac11,1 | ^^ | ^^ | ^^ |
| iMac10,1 | Late 2009 | ^^ | - GPU is socketed, [recommend upgrading to Metal GPU](https://forums.macrumors.com/threads/2011-imac-graphics-card-upgrade.1596614/?post=17425857#post-17425857) <br/>- GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108)) <br/> - UHCI/OHCI support in Public Beta, see current issues ([#1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021))|
| iMac11,1 | ^^ | ^^ | - GPU Acceleration in Public Beta, see current issues ([#108](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/108))|
| iMac11,2 | Mid-2010 | ^^ | ^^ |
| iMac11,3 | ^^ | ^^ | ^^ |
| iMac12,1 | Mid-2011 | ^^ | ^^ |
@@ -120,7 +132,10 @@ Regarding OS support, see below:
| iMac14,2 | ^^ | ^^ | ^^ |
| iMac14,3 | ^^ | ^^ | ^^ |
| iMac14,4 | Mid-2014 | ^^ | ^^ |
| iMac15,1 | Late 2014, Mid-2015 | ^^ | ^^ |
| iMac15,1 | Late 2014, Mid-2015 | ^^ | ^^ |
| iMac16,1 | Late 2014, Mid-2015 | ^^ | ^^ |
| iMac16,2 | Late 2014, Mid-2015 | ^^ | ^^ |
| iMac17,1 | Late 2015, Early-2016 | ^^ | ^^ |
* For iMac10,1 through iMac12,x, we highly recommend users upgrade the GPU to a Metal supported model. See here for more information: [iMac late 2009 to mid-2011 Graphics Card Upgrade Guide](https://forums.macrumors.com/threads/2011-imac-graphics-card-upgrade.1596614/?post=17425857#post-17425857)
@@ -130,16 +145,17 @@ Regarding OS support, see below:
| :--- | :--- | :--- | :--- |
| MacPro1,1 | Mid-2006 | <span style="color:red"> NO </span> | 32-Bit Firmware limitation |
| MacPro2,1 | Mid-2007 | ^^ | ^^ |
| MacPro3,1 | Early 2008 | <span style="color:#30BCD5"> YES </span> | - Potential boot issues with built-in USB 1.1 ports (recommend using a USB 2.0 hub or dedicated USB PCIe controller)<br/>- Potential boot issues with stock Bluetooth card, recommend removing to avoid kernel panics |
| MacPro4,1 | Early 2009 | ^^ | <span style="color:green"> Everything is supported as long as GPU is Metal capable </span> |
| MacPro3,1 | Early 2008 | <span style="color:#30BCD5"> YES </span> | - UHCI/OHCI support in Public Beta, see current issues ([#1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issesues/1021)) <br/>- Potential boot issues with stock Bluetooth card, recommend removing to avoid kernel panics |
| MacPro4,1 | Early 2009 | ^^ | - Everything is supported as long as GPU is Metal capable <br/> - UHCI/OHCI support in Public Beta, see current issues ([#1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issesues/1021))|
| MacPro5,1 | Mid-2010, Mid-2012 | ^^ | ^^ |
| MacPro6,1 | Late 2013 | ^^ | - CPU Power Management currently unsupported<br/> - No DRM support |
### Xserve
| SMBIOS | Year | Supported | Comment |
| :--- | :--- | :--- | :--- |
| Xserve1,1 | Mid-2006 | <span style="color:red"> NO </span> | 32-Bit Firmware limitation |
| Xserve2,1 | Early 2008 | <span style="color:#30BCD5"> YES </span> | <span style="color:green"> Everything is supported as long as GPU is Metal capable </span> |
| Xserve2,1 | Early 2008 | <span style="color:#30BCD5"> YES </span> | - UHCI/OHCI support in Public Beta, see current issues ([#1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021))|
| Xserve3,1 | Early 2009 | ^^ | ^^ |
# Once you've verified your hardware is supported, head to [Download and build macOS Installers](./INSTALLER.md)

View File

@@ -1,7 +1,7 @@
![](../images/macos-monterey.png)
With OpenCore Legacy Patcher v0.1.7 and newer, we've implemented beta macOS Monterey support for users. Please note that Apple has dropped a lot of hardware with this release as well as broken many of our previous patch sets. This page will be used to inform users regarding current issues and will be updated as new patch sets are developed and added to our patcher.
## Newly dropped hardware
With Monterey, Apple continues their their somewhat ruthless march of dropping Intel hardware. This release saw the removal, and thus addition into OpenCore Legacy Patcher, of the following models:
@@ -29,7 +29,7 @@ With Monterey, Apple continues their their somewhat ruthless march of dropping I
* MacBook Pro (Retina, 13-inch, Mid 2014)
* MacBook Pro (Retina, 15-inch, Mid 2014)
:::
:::
All of these models now have support in OpenCore Legacy Patcher.
@@ -43,7 +43,7 @@ Due to the display being routed through the NVIDIA Kepler card and macOS being r
::: details iMac15,1 5K Display Output Issue (Resolved in 0.3.2 and newer)
* Documentation:
* Documentation:
* [5K iMac and UEFI: Fixing the dreaded output limitation](https://khronokernel.github.io/macos/2021/12/08/5K-UEFI.html)
* Associated Github Issue:
* [5k Output issues on iMac15,1 (27" 5k iMac - 2014) #359](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/359)
@@ -79,7 +79,7 @@ The following models lost Wifi support in macOS Monterey due to their legacy Wir
* MacBookPro6,x is exempt
* MacPro5,1 and older
Note: BCM943224, BCM94331, BCM94360 and BCM943602 are still fully support by OpenCore Legacy Patcher
Note: BCM943224, BCM94331, BCM94360 and BCM943602 are still fully supported by OpenCore Legacy Patcher
:::
@@ -96,7 +96,7 @@ The following models lost Bluetooth support in macOS Monterey due to their legac
* MacBookPro8,1 and older
* MacPro5,1 and older
Note: Native BRCM20702 and BRCM20703 are still fully support by OpenCore Legacy Patcher
Note: Native BRCM20702 and BRCM20703 are still fully supported by OpenCore Legacy Patcher
::: details Dropped Firmwares

View File

@@ -1,6 +1,6 @@
# Explaining the patches in OpenCore Legacy Patcher
In our patcher, there are numerous patches used to ensure a stable system. Here we're going to go over what patches are used and why we recommend or even require them.
In our patcher, there are numerous patches used to ensure a stable system. Here, we're going to go over what patches are used and why we recommend or even require them.
* [OpenCore Settings](#opencore-settings)
* [Injected Kexts](#injected-kexts)
@@ -8,7 +8,7 @@ In our patcher, there are numerous patches used to ensure a stable system. Here
## OpenCore Settings
Below is a run down of the main logic OpenCore Legacy Patcher uses to gain native support in macOS. Note OpenCore's configuration is documented within [OpenCorePkg](https://github.com/acidanthera/OpenCorePkg) as well as an online version provided by us:
Below is a rundown of the main logic that OpenCore Legacy Patcher uses to gain native support in macOS. Note that OpenCore's configuration is documented within [OpenCorePkg](https://github.com/acidanthera/OpenCorePkg) as well as on an online version provided by us:
* [OpenCorePkg Online Docs](https://dortania.github.io/docs/latest/Configuration.html)
@@ -17,7 +17,7 @@ Below is a run down of the main logic OpenCore Legacy Patcher uses to gain nativ
### ACPI -> Add
* SSDT-CPBG
* Reason: Resolves Kernel Panic on Arrendale Macs in early Big Sur builds
* Reason: Resolves Kernel Panic on Arrandale Macs in early Big Sur builds
* Logic: Disable dummy CPBG device in ACPI
* Models: MacBookPro6,x and iMac11,x
* SSDT-PCI
@@ -28,7 +28,7 @@ Below is a run down of the main logic OpenCore Legacy Patcher uses to gain nativ
* Reason: Allows for software based deMUX disabling dGPUs in 2011 MacBook Pros
* Logic: Sends power down request to dGPU via ACPI
* Models: MacBookPro8,2 and MacBookPro8,3 with dead dGPUs
### ACPI -> Patch
* `EHCx` and `XHC1` Patches
@@ -39,13 +39,13 @@ Below is a run down of the main logic OpenCore Legacy Patcher uses to gain nativ
* Reason: To be paired with SSDT-PCI
* `_INI` to `XINI` Patch
* Reason: To be paired with SSDT-DGPU
### Booter -> Patch
* Reroute `HW_BID` to `OC_BID`
* Reason: Allows macOS installers to be used on unsupported models
* Logic: Reroutes Board ID macOS checks to custom variable
* Models: All systems using VMM spoofing
* Models: All systems using VMM spoofing
### Booter -> Quirks
@@ -146,7 +146,7 @@ Below is a run down of the main logic OpenCore Legacy Patcher uses to gain nativ
* Reason: Used for proper output on machines with UGA firmware but GOP GPU
* Logic: Provide GOP protocol instances on top of UGA protocol instances
* Models: MacPro3,1, MacBook4,1 iMac7,1-8,1
:::
## Injected Kext
@@ -173,7 +173,7 @@ Below is an explanation of what Kexts OpenCore Legacy Patcher will inject into m
* Reason: Patches BlueTool to enable bluetooth functionality on Monterey
* Models: All models with pre-BCM94360 wireless cards or 3rd-party chipsets
* Bluetooth-Spoof
* Reason: Injects extra data into certain bluetooth chipsets for recognition by the system
* Reason: Injects extra data into certain bluetooth chipsets for recognition by the system
* Models: Models with the BCM2070 or BCM2046 chipsets
* FeatureUnlock (Night Shift)
* Reason: Patches CoreBrightness.framework to enable Night Shift on unsupported models
@@ -195,7 +195,7 @@ Below is an explanation of what Kexts OpenCore Legacy Patcher will inject into m
* Models: 2008 and older Marvel Ethernet require
* CatalinaBCM5701Ethernet
* Reason: Inject old Broadcom Ethernet kext to resolve networking in Big Sur
* Logic: Patch out conflicting symbols to not colide existing BCM5701Ethernet
* Logic: Patch out conflicting symbols to not collide existing BCM5701Ethernet
* Models: 2011 and older Broadcom Ethernet require
### Maps
@@ -217,11 +217,11 @@ Below is an explanation of what Kexts OpenCore Legacy Patcher will inject into m
* IO80211HighSierra
* Reason: Re-inject Atheros wifi drivers from High Sierra
* Logic: Patch out conflicting symbols to not colide existing IO80211Family
* Logic: Patch out conflicting symbols to not collide existing IO80211Family
* Models: Atheros cards
* IO80211Mojave
* Reason: Re-inject Broadcom wifi drivers from Mojave
* Logic: Patch out conflicting symbols to not colide existing IO80211Family
* Logic: Patch out conflicting symbols to not collide existing IO80211Family
* Models: BCM94322
### Misc

View File

@@ -14,42 +14,39 @@ Once you've installed macOS through OpenCore, you can boot up and go through the
* Install OpenCore to internal drive
* Reboot holding Option, and select the internal EFI
And voila! No more USB drive required
And voila! No more USB drive required.
## Booting seamlessly without Verbose or OpenCore Picker
To do this, run the OpenCore Patcher and head to Patcher Settings:
| GUI Settings | TUI Settings
| :--- | :--- |
|![](../images/OCLP-GUI-Settings-ShowPicker.png) | ![](../images/OCLP-TUI-Settings.png) |
![](../images/OCLP-GUI-Settings-ShowPicker.png)
Here you can change different patcher settings, however the main interest is:
* Show Boot Picker (GUI)
* Set ShowPicker Mode (TUI)
* Show Boot Picker
Once you've toggled them both off, build your OpenCore EFI once again and install to your desired drive. Now to show the OpenCore selector, you can simply hold down the "ESC" key while clicking on EFI boot, then you can release the "ESC" key when you see the cursor arrow at the top left.
Once you've toggled them both off, build your OpenCore EFI once again and install to your desired drive. Now to show the OpenCore selector, you can simply hold down the "ESC" key while clicking on EFI boot, and then you can release the "ESC" key when you see the cursor arrow at the top left.
## Enabling SIP
For many users, SIP will be enabled by default on build. For Intel HD 4000 users, you may have noticed that SIP is partially disabled. This is to ensure full compatibility with macOS Monterey and allow seamless booting between it and older OSes. However for users who do not plan to boot Monterey, you can re-enable under Patcher Settings.
For many users, SIP will be lowered by default on build. For Intel HD 4000 users, you may have noticed that SIP is partially disabled. This is to ensure full compatibility with macOS Monterey and allow seamless booting between it and older OSes. However for users who do not plan to boot Monterey, you can re-enable under Patcher Settings.
Note: Machines with non-Metal GPUs cannot enable SIP in Big Sur either due to patched root volume
Note: Machines running macOS Ventura or systems with non-Metal GPUs cannot enable SIP outright, due to having a patched root volume. Enabling it will brick the installation.
| SIP Enabled | SIP Lowered (Root Patching) | SIP Disabled |
| :--- | :--- | :--- |
| ![](../images/OCLP-GUI-Settings-SIP-Enabled.png) | ![](../images/OCLP-GUI-Settings-SIP-Root-Patch.png) | ![](../images/OCLP-GUI-Settings-SIP-Disabled.png) |
:::warning
:::warning
If you're unsure whether you should enable SIP, leave as-is. Systems where you have already ran the Post Install Root Patching cannot enable SIP without potentially breaking the current install.
If you're unsure whether you should enable SIP, leave it as-is. Systems where you have already ran the Post Install Root Patching cannot enable SIP without potentially breaking the current install.
:::
## Applying Post Install Volume Patches
Post Install Volume Patches, sometimes also called root patches, are patches that have to be installed on disk for some older Macs to gain back functionality.
Post Install Volume Patches, sometimes also called root patches, are patches that have to be installed to disk for some older Macs to gain back functionality.
OCLP v0.4.4 and higher include an autopatcher, which will automatically root patch your system but **only if the USB install media was created within OCLP.**
@@ -69,7 +66,7 @@ In OCLP v0.4.5 a new indicator was added to help users to see if, when and on wh
### Running Post Install patches manually
If you're using OCLP v0.4.3 or earlier, or need to run the patcher manually, you can do so with the app. There is no harm in trying to run the Patcher, as without compatible hardware nothing will be done. You can see below on whether your hardware needs root volume patching.
If you're using OCLP v0.4.3 or earlier, or need to run the patcher manually, you can do so with the app. There is no harm in trying to run the Patcher, as without compatible hardware, nothing will be done. You can see below on whether your hardware needs root volume patching or not.
| Listing Patches | Patching Finished |
| :--- | :--- |
@@ -78,13 +75,22 @@ If you're using OCLP v0.4.3 or earlier, or need to run the patcher manually, you
:::warning
With OpenCore Legacy Patcher versions prior to v0.4.4, Root Patching requires a network connection by default to grab associated resources. If your system is having difficulties with wifi or ethernet, you can grab the newest release :
With macOS Ventura and Macs with AMD Legacy GCN GPUs (ie. Metal), Root Patching requires a network connection to grab Apple's Kernel Debug Kit to start root patching. If your system is unable to connect to the internet, you can manually download a KDK from Apple's site:
* [OpenCore Legacy Patcher releases](https://github.com/dortania/OpenCore-Legacy-Patcher/releases/latest)
* [Apple's Developer Download Page](https://developer.apple.com/download/all/?q=Kernel%20Debug%20Kit)
Grab the Kernel Debug Kit whose version is closest to the OS you installed, and install it to the machine running Ventura.
Machines that require this are those with AMD Metal dGPUs:
* 2008 - 2013 Mac Pros (MacPro3,1 - 6,1)
* 2009 - 2016 iMacs (iMac10,1 - 17,1)
* 2015 15" MacBook Pro with a dGPU (MacBookPro11,5)
:::
:::details Unsupported GPUs in macOS Big Sur
Below entries represent GPUs no longer natively supported, ie. requiring root volume patching with OpenCore Legacy Patcher:
:::details GPUs requiring patching in macOS Big Sur
* NVIDIA:
* Tesla (8000 - 300 series)
@@ -96,7 +102,7 @@ With OpenCore Legacy Patcher versions prior to v0.4.4, Root Patching requires a
:::
:::details Unsupported GPUs in macOS Monterey
:::details GPUs requiring patching in macOS Monterey
* NVIDIA:
* Tesla (8000 - 300 series)
@@ -110,7 +116,7 @@ With OpenCore Legacy Patcher versions prior to v0.4.4, Root Patching requires a
:::
:::details Unsupported Wireless Cards in macOS Monterey
:::details Wireless Cards requiring patching in macOS Monterey
* Broadcom:
* BCM94328
@@ -118,3 +124,18 @@ With OpenCore Legacy Patcher versions prior to v0.4.4, Root Patching requires a
* Atheros
:::
:::details GPUs requiring patching in macOS Ventura
* NVIDIA:
* Kepler (600 - 800 series)
* AMD:
* GCN 1-3 (7000 - R9 series)
* Polaris (RX 4xx/5xx series, if CPU lacks AVX2)
* Intel:
* Ivy Bridge (4000 series)
* Haswell (4400, 4600, 5000 series)
* Broadwell (6000 series)
* Skylake (500 series)
:::

View File

@@ -1,15 +1,13 @@
# What is OpenCore?
This is a sophisticated boot loader used to inject and patch data in memory, instead of on disk. This means we're able to get near-native experience on many unsupported Macs.
OpenCore is a sophisticated boot loader used to inject and patch data in memory, instead of on disk. This means that we're able to achieve a near-native experience on many unsupported Macs.
* We recommend viewing the [OpenCore Patcher Terminology Page](./TERMS.md) if you have questions
* For troubleshooting, join the [OpenCore Patcher Paradise Discord Server](https://discord.gg/rqdPgH8xSN) and see our [Troubleshooting Page](./TROUBLESHOOTING.md)
* We recommend viewing the [OpenCore Patcher Terminology Page](./TERMS.md) if you have questions.
* For troubleshooting, join the [OpenCore Patcher Paradise Discord Server](https://discord.gg/rqdPgH8xSN) and see our [Troubleshooting Page](./TROUBLESHOOTING.md).
## How do I get started?
1. The first step of ensuring whether your model is supported is checking here:
* [Supported Models](./MODELS.md)
1. The first step of ensuring whether your model is supported is by checking the [Supported Models](./MODELS.md) page.
2. [Download and build macOS Installer](./INSTALLER.md)
3. [Run the `OpenCore-Patcher.app`](./BUILD.md)

View File

@@ -6,7 +6,7 @@ With OpenCore Legacy Patcher, we use a lot of different terms to refer to hardwa
Term | Description
--- | ---
**macOS** | Apple's own UNIX based OS used for Mac machines and "What makes a Mac a Mac".
**macOS** | Apple's own UNIX based OS used for Mac machines and is "What makes a Mac a Mac".
**Windows** | Microsoft's proprietary OS that is used and supported on a wide range of devices
**Linux** | Family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991, by Linus Torvalds. Linux is typically packaged in a Linux distribution. Note that while macOS and Linux may be UNIX-based, they're vastly different.
**Bootloader** | Piece of software that loads an OS, usually made by the OS creators. OpenCore is technically not a bootloader per se (see boot manager explanation down below). Apple's Boot.efi would be the actual boot loader in a Mac.
@@ -16,14 +16,14 @@ Term | Description
--- | ---
**OpenCore** | The new hotness on the scene, made with security in mind by the [Acidanthera team](https://github.com/acidanthera), has faster booting and lighter weight than previous boot managers. Supports many native Mac features such as SIP, FileVault, Secure Boot, etc
**ACPI** | Tables defined in your firmware defining your hardware and different methods, tied directly to how IOKit/IOService handles device setup
**NVRAM** | Non-volitile storage, where many variables are stored including default boot options, Hibernation keys, Secure Boot information, etc
**NVRAM** | Non-volatile storage, where many variables are stored including default boot options, Hibernation keys, Secure Boot information, etc
---
Term | Description
--- | ---
**XNU** | Also known as **X** is **N**ot **U**nix, XNU is referred to as macOS's "kernel" and the heart of what makes macOS tick
**Kexts** | Also known as **K**ernel **Ext**ensions, are macOS's drivers. They're used to perform different tasks like device drivers or for a different purpose (in this patcher) like patching the OS, injecting information or running tasks.
**KernelCollection** | Also known as the ImmutableKernel and PrelinkedKernel, this is a bundle of the kernel(XNU) and kernel extensions(Kexts) that we use to boot macOS. This is also what OpenCore patches in memory to allow us to have a seamless experience <br/>- PrelinkedKernel: Default caching system since 10.7 <br/>- ImmutableKernel: Secure Boot based caching system since 10.13 <br/>- KernelCollection: Merge of both Prelinked and ImmutableKernel's since macOS 11, Big Sur
**IOKit** | Backbone of how Kernel Extentions (Kexts) probe and attach onto hardware, starts quickly after kernel initates
**IOKit** | Backbone of how Kernel Extensions (Kexts) probe and attach onto hardware, starts quickly after kernel initiates
**WindowServer** | Backbone of the GUI interface in macOS, one of the first userfacing userspace programs to kick-in
**OTA** | Short for **O**ver **T**he **A**ir, refers to native OS updates via System Preferences like a supported Mac
**DELTA** | Often used with OTA, refers to OS updates that much smaller than full installers (generally ~3GB), note Deltas require the root volume to be unmodified otherwise ~12GB updates will occur.
@@ -31,9 +31,9 @@ Term | Description
Term | Description
--- | ---
**EFI** | It can denote two things: <br/>- Mac's firmware, which is the same as UEFI, but pretty modified for Macs only, so not so "Universal" <br/>- The partition on your hard drive that stores software read by the UEFI to load OSes (like the Windows bootloader) or UEFI Applications (like OpenCore), it's FAT32 formatted and has an ID type of EF00 (in hex). It can be named ESP or SYSTEM, and it's usually from 100MB to 400MB in size but the size doesn't reflect upon anything.
**HFS+** | Also known as MacOS Journaled, this was the default macOS drive format up until macOS 10.13, format was designed around spinning disks
**APFS** | This was the default macOS drive from macOS 10.13 and onwards for SSDs, and standard for all drives in Mojave. Format was designed around SSDs primarily.
**HFS+** | Also known as Mac OS Extended (Journaled), this was the default macOS drive format up until macOS 10.13. It was designed around spinning disks.
**APFS** | This is the default macOS drive format from macOS 10.13 and onwards for SSDs, and standard for all drives in Mojave. This format was designed primarily around SSDs.
**32 and 64-Bit CPU** | The bit number of a CPU determines how much data a CPU can address. <br/>- 32-Bit CPUs were only supported up-to Mac OS X 10.6, Snow Leopard.
**32-Bit Firmware** | The bit number of a Firmware determines how much data the firmware can address. In some older Macs, it's common to have a 64-Bit CPU can have a 32-Bit firmware<br/>- 32-Bit Firmwares were only supported up-to Mac OS X 10.7, Lion.
**32-Bit Firmware** | The bit number of a Firmware determines how much data the firmware can address. In some older Macs, it's common to have a 64-Bit CPU with a 32-Bit firmware<br/>- 32-Bit Firmwares were only supported up-to Mac OS X 10.7, Lion.
**SSE Instructions** | Also known as **S**IMD **S**ingle-Precision Floating-Point **I**nstructions, these are defined as instruction sets supported by your CPU. In macOS, there are a certain number of instruction sets required for normal operation: <br/>- SSE3: Required for all Intel CPUs since Mac OS X 10.4, Tiger <br/>- SSSE3: Required for all Intel 64-Bit CPUs since Mac OS X 10.6, Snow Leopard <br/>- SSE4.1: Required for all Intel CPUs since macOS 10.12, Sierra
---

View File

@@ -1,12 +1,12 @@
# Tested Models on OpenCore Legacy Patcher
To aid users in troubleshooting, we've compiled a list of users who've reported success with OpenCore Legacy patcher as well as the version used. This should aid users in verifying whether issues with the patcher are regression-related with newer versions.
To aid users in troubleshooting, we've compiled a list of users who've reported success with OpenCore Legacy Patcher as well as the version used. This should aid users in verifying whether issues with the patcher are regression-related with newer versions.
::: details MacBook
| SMBIOS | Tested | Tester | Model | Version | Comment |
| :--- | :--- | :--- | :--- | :--- | :--- |
| MacBook4,1 | <span style="color:#30BCD5"> YES </span> | Mami | Stock | Unknown | Couldn't install due to broke USB support |
| MacBook4,1 | <span style="color:#30BCD5"> YES </span> | Mami | Stock | Unknown | Couldn't install due to broken USB support |
| MacBook5,1 | ^^ | air.man | ^^ | 0.0.19 | N/A |
| MacBook5,2 | ^^ | Finder352 | ^^ | ^^ | ^^ |
| MacBook6,1 | ^^ | Finder352 | ^^ | ^^ | ^^ |
@@ -20,7 +20,7 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
::: details MacBook Air
| SMBIOS | Tested | Tester | Model | Version | Comment |
| :--- | :--- | :--- | :--- | :--- | :--- |
| :--- | :--- | :--- | :--- | :--- | :--- |
| MacBookAir2,1 | <span style="color:#30BCD5"> YES </span> | Bruno | Stock | 0.4.5 | Slow to the point of being unusable. |
| MacBookAir3,1 | ^^ | uvesten | Stock | 0.3.3 | N/A |
| MacBookAir3,2 | ^^ | houser42 | ^^ | Unknown | ^^ |
@@ -39,12 +39,12 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
::: details MacBook Pro
| SMBIOS | Tested | Tester | Model | Version | Comment |
| :--- | :--- | :--- | :--- | :--- | :--- |
| :--- | :--- | :--- | :--- | :--- | :--- |
| MacBookPro4,1 | <span style="color:#30BCD5"> YES </span> | cboukouv | Stock | 0.0.19 | N/A |
| MacBookPro5,1 | ^^ | GURU_Jasho#5736 | ^^ | 0.0.21 | ^^ |
| MacBookPro5,2 | ^^ | hvds | ^^ | ^^ | ^^ |
| MacBookPro5,3 | ^^ | kommtzeitkonrad | ^^ | 0.0.22 | ^^ |
| MacBookPro5,4 | <span style="color:red"> NO </span> | N/A | N/A | N/A | ^^ |
| MacBookPro5,4 | <span style="color:red"> NO </span> | N/A | N/A | N/A | ^^ |
| MacBookPro5,5 | <span style="color:#30BCD5"> YES </span> | ASentientHedgehog | Stock | - | ^^ |
| ^^ | ^^ | ParaDoX1994 | Stock | 0.4.5 | Camera/Bluetooth not working (connector broken) |
| MacBookPro6,1 | <span style="color:red"> NO </span> | N/A | N/A | N/A | N/A |
@@ -62,7 +62,7 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
| ^^ | ^^ | LIPA85 | ^^ | ^^ | ^^ |
| MacBookPro9,2 | <span style="color:#30BCD5"> YES </span> | alexx17xx | ^^ | ^^ | ^^ |
| ^^ | ^^ | Arvxistanx | ^^ | ^^ | ^^ |
| ^^ | ^^ | CyberDroid1 | ^^ | 0.0.16 | ^^ |
| ^^ | ^^ | CyberDroid1 | ^^ | 0.0.16 | ^^ |
| ^^ | ^^ | woefi | Upgraded | 0.0.13 | Upgraded BCM94331CAX |
| ^^ | ^^ | whgmkeller | Stock | 0.0.11 | N/A |
| ^^ | ^^ | vinaypundith | Unknown | 0.0.7 | ^^ |
@@ -79,13 +79,13 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
::: details Mac mini
| SMBIOS | Tested | Tester | Model | Version | Comment |
| :--- | :--- | :--- | :--- | :--- | :--- |
| :--- | :--- | :--- | :--- | :--- | :--- |
| Macmini3,1 | <span style="color:#30BCD5"> YES </span> | ASentientHedgehog | Stock | N/A | N/A |
| Macmini4,1 | <span style="color:#30BCD5"> YES </span> | Towster15#6369 | ^^ | 0.4.4 | Does not have internal SATA cable, booted and installed to SSD over USB 2.0 instead |
| ^^ | ^^ | MykolaG | ^^ | 0.4.5 | SD card reader possibly broken. |
| Macmini5,1 | <span style="color:#30BCD5"> YES </span> | MykolaG | ^^ | 0.4.5 | N/A |
| Macmini5,2 | ^^ | charly-black | ^^ | 0.3.1 | ^^ |
| ^^ | ^^ | MykolaG | ^^ | 0.4.5 | SD card reader possibly broken. |
| ^^ | ^^ | MykolaG | ^^ | 0.4.5 | SD card reader possibly broken. |
| Macmini5,3 | <span style="color:red"> NO </span> | N/A | N/A | N/A | N/A |
| Macmini6,1 | <span style="color:#30BCD5"> YES </span> | cicofz | Stock | 0.0.21 | ^^ |
| ^^ | ^^ | Stig124 | ^^ | 0.0.19 | ^^ |
@@ -99,7 +99,7 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
::: details iMac
| SMBIOS | Tested | Tester | Model | Version | Comment |
| :--- | :--- | :--- | :--- | :--- | :--- |
| :--- | :--- | :--- | :--- | :--- | :--- |
| iMac7,1 | <span style="color:#30BCD5"> YES </span> | lulujyc | Upgraded | 0.3.1 | Upgraded with BCM94352HMB <br><br> The USB 1.1 controller is unstable on Big Sur+, using USB hubs (forcing USB 2.0) can fix unrecognized keyboard/ mouse. |
| iMac8,1 | <span style="color:#30BCD5"> YES </span> | EduCovas | Stock | 0.0.21 | N/A |
| iMac9,1 | <span style="color:#30BCD5"> YES </span> | Allanrfox | ^^ | ^^ | ^^ |
@@ -128,7 +128,7 @@ To aid users in troubleshooting, we've compiled a list of users who've reported
::: details Mac Pro
| SMBIOS | Tested | Tester | Model | Version | Comment |
| :--- | :--- | :--- | :--- | :--- | :--- |
| :--- | :--- | :--- | :--- | :--- | :--- |
| MacPro3,1 | <span style="color:#30BCD5"> YES </span> | MykolaG | Upgraded | 0.1.6 | Upgraded RX 470 and BCM94360CD.<br/>Stock Bluetooth card removed. |
| ^^ | ^^ | christiann | ^^ | 0.0.21 | Upgraded RX 560 and BCM94322.<br/>Stock Bluetooth card removed. |
| ^^ | ^^ | gw463 | ^^ | 0.0.22 | Upgraded GTX 680 and BCM94360 |

View File

@@ -1,7 +1,8 @@
# Troubleshooting
Here are some common errors users may experience while using this patcher:
Here are some common errors that users may experience while using this patcher:
* [OpenCore Legacy Patcher not launching](#opencore-legacy-patcher-not-launching)
* [Stuck on `This version of Mac OS X is not supported on this platform`](#stuck-on-this-version-of-mac-os-x-is-not-supported-on-this-platform)
* [Cannot boot macOS without the USB](#cannot-boot-macos-without-the-usb)
* [Infinite Recovery OS Booting](#infinite-recovery-os-reboot)
@@ -18,29 +19,38 @@ Here are some common errors users may experience while using this patcher:
* [Cannot Disable SIP in recoveryOS](#cannot-disable-sip-in-recoveryos)
* [Stuck on "Less than a minute remaining..."](#stuck-on-less-than-a-minute-remaining)
* [No acceleration after a Metal GPU swap on Mac Pro](#no-acceleration-after-a-metal-gpu-swap-on-mac-pro)
* [Keyboard, Mouse and Trackpad not working in installer or after update](#keyboard-mouse-and-trackpad-not-working-in-installer-or-after-update)
## OpenCore Legacy Patcher not launching
If the application won't launch (e.g. icon will bounce in the Dock), try launching OCLP via Terminal by typing the following command, make sure you've moved the app to `/Applications` before this.
```sh
/Applications/OpenCore-Patcher.app/Contents/MacOS/OpenCore-Patcher
```
## Stuck on `This version of Mac OS X is not supported on this platform`
This means macOS has detected a SMBIOS it does not support, to resolve this ensure you're booting OpenCore **before** the macOS installer in the boot picker. Reminder the option will be called `EFI Boot`
This means macOS has detected an SMBIOS it does not support. To resolve this, ensure you're booting OpenCore **before** the macOS installer in the boot picker. Reminder that the option will be called `EFI Boot`.
Once you've booted OpenCore at least once, your hardware should now auto boot it until either NVRAM reset or you remove the drive with OpenCore installed.
Once you've booted OpenCore at least once, your hardware should now auto-boot it until either an NVRAM reset occurs, or you remove the drive with OpenCore installed.
## Cannot boot macOS without the USB
By default, the OpenCore Patcher won't install OpenCore onto the internal drive itself during installs. Instead, you'll need to either [manually transfer](https://dortania.github.io/OpenCore-Post-Install/universal/oc2hdd.html) OpenCore to the internal drive's EFI or run this patcher's Option 2 again but select your internal drive.
By default, the OpenCore Patcher won't install OpenCore onto the internal drive itself during installs. Instead, you'll need to either [manually transfer](https://dortania.github.io/OpenCore-Post-Install/universal/oc2hdd.html) OpenCore to the internal drive's EFI or run this patcher's Option 2 again and select your internal drive.
Reminder that once this is done, you'll need to select OpenCore in the boot picker again for your hardware to remember this entry and auto boot from then on.
## Infinite Recovery OS Booting
With OpenCore Legacy Patcher, we rely on Apple Secure Boot to ensure OS updates work correctly and reliably with Big Sur. However this installs NVRAM variables that will confuse your Mac if not running with OpenCore. To resolve, simply uninstall OpenCore and [reset NVRAM](https://support.apple.com/en-mide/HT201255).
With OpenCore Legacy Patcher, we rely on Apple Secure Boot to ensure OS updates work correctly and reliably with Big Sur. However this installs NVRAM variables that will confuse your Mac if not running with OpenCore. To resolve this, simply uninstall OpenCore and [reset NVRAM](https://support.apple.com/en-mide/HT201255).
* Note: Machines with modded root volumes will also result in infinite recovery until integrity is restored
* Note: Machines with modified root volumes will also result in an infinite recovery loop until integrity is restored.
## Reboot when entering Hibernation (`Sleep Wake Failure`)
[Known issue on some models](https://github.com/dortania/Opencore-Legacy-Patcher/issues/72), temporary fix is to disable Hibernation:
[Known issue on some models](https://github.com/dortania/Opencore-Legacy-Patcher/issues/72), a temporary fix is to disable Hibernation by executing the following command in the terminal:
```
sudo pmset -a hibernatemode 0
@@ -48,58 +58,57 @@ sudo pmset -a hibernatemode 0
## Booting with a non-flashed GPU
For Mac Pro, Xserve and iMac users with non-flashed GPUs, you can still easily boot OpenCore and view the entire boot process. To do so, make sure SIP is disabled(to allow NVRAM write access) and run the following:
For Mac Pro, Xserve and iMac users with non-flashed GPUs, you can still easily boot OpenCore and view the entire boot process. To do so, make sure SIP is disabled (to allow NVRAM write access) and run the following:
```sh
sudo bless --verbose --file /Volumes/VOLNAME/EFI/OC/OpenCore.efi --folder /Volumes/VOLNAME/EFI/OC --setBoot
```
* Note you will need to replace `VOLNAME` with the Volume name of your USB or hard drive with OpenCore
* Note 2: Once done, you can re-enable SIP
* Note 3: The EFI partition OpenCore was installed on must be mounted, if it's unmounted simply rerun "Install OpenCore to drive"
* Note 1: You will need to replace `VOLNAME` with the Volume name of your USB or hard drive with OpenCore.
* Note 2: Once done, you can re-enable SIP.
* Note 3: The EFI partition OpenCore was installed on must be mounted. If it's unmounted, simply rerun "Install OpenCore to drive."
Once you boot OpenCore for the first time, LauncherOption will install itself as the top boot priority making OpenCore always launch. Combined with `RequestBootVar`, all boot options must go through OpenCore ensuring seamless usage even with OS installation and updates.
Once you boot OpenCore for the first time, LauncherOption will install itself as the top boot priority, making OpenCore always launch. Combined with `RequestBootVar`, all boot options must go through OpenCore, ensuring seamless usage even with OS installation and updates.
## How to Boot Big Sur Recovery
By default, the patcher will try to hide extra boot options such as recovery from the user. To make them appear, simply press the "Spacebar" inside OpenCore's Picker to list all boot options.
By default, the patcher will try to hide extra boot options such as recovery from the user. To make them appear, simply press the `Spacebar` key while inside OpenCore's Picker to list all boot options.
## Stuck on "Your Mac needs a firmware update"
Full error: "Your Mac needs a firmware update in order to install to this Volume. Please select a Mac OS Extended (Journaled) volume instead."
This error occurs when macOS determines the firmware to not have full APFS support. To resolve is quite simple, when building OpenCore head to "Patcher Settings" and enable "Moderate SMBIOS Patching" or higher. This will ensure that the firmware reported will show as supporting full APFS capabilities.
This error occurs when macOS determines that the current firmware does not have full APFS support. To resolve this, when installing OpenCore, head to "Patcher Settings" and enable "Moderate SMBIOS Patching" or higher. This will ensure that the firmware reported will show support for full APFS capabilities.
## No Brightness Control
With OCLP v0.0.22, we've added support for brightness control on many models. However some users may have noticed that their brightness keys do not work.
With OCLP v0.0.22, we've added support for brightness control on many models. However, some users may have noticed that their brightness keys do not work.
To work-around, we recommend user try out the below app:
As a work-around, we recommend users try out the below app:
* [Brightness Slider](https://actproductions.net/free-apps/brightness-slider/)
## Cannot connect Wi-Fi on Monterey with legacy cards
With OCLP v0.2.5, we've added support for legacy Wi-Fi on Monterey. However some users may have noticed that they can't connect to wireless networks.
With OCLP v0.2.5, we've added support for legacy Wi-Fi on Monterey. However, some users may have noticed that they can't connect to wireless networks.
To work-around, we recommend users to manually connect using the "other" option on the Wi-Fi menu bar or manually adding the network on the "Network" preference pane.
To work-around this, we recommend that users manually connect using the "Other" option in the Wi-Fi menu bar or manually adding the network in the "Network" preference pane.
## No Graphics Acceleration
In macOS, GPU drivers are often dropped from the OS with each major release of it. With macOS Big Sur, currently, all non-Metal GPUs require additional patches to gain acceleration. In addition, macOS Monterey removed Graphics Drivers for both Intel Ivy Bridge and NVIDIA Kepler graphics processors.
In macOS, each release generally means GPU drivers are dropped from the OS. With macOS Big Sur, currently all non-Metal GPUs require additional patches to gain acceleration. In addition, macOS Monterey removed Graphics Drivers for both Intel Ivy Bridge and NVIDIA Kepler.
If you're using OCLP v0.4.4, you should have been prompted to install Root Volume patches after first boot from installation of macOS. If you need to do this manually, you can within our app. Once rebooted, acceleration will be re-enabled as well as brightness control for laptops.
If you're using OCLP v0.4.4, you should have been prompted to install Root Volume patches after the first boot from installation of macOS. If you need to do this manually, you can do so within the patcher app. Once rebooted, acceleration will be re-enabled as well as brightness control for laptops.
## Black Screen on MacBookPro11,3 in macOS Monterey
Due to Apple dropping NVIDIA Kepler support in macOS Monterey, [MacBookPro11,3's GMUX has difficulties switching back to the iGPU to display macOS correctly.](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/522) To work-around this issue, boot the MacBookPro11,3 in Safe Mode and once macOS is installed, run OCLP's Post Install Root Patches to enable GPU Acceleration for the NVIDIA dGPU.
* Safe Mode can be started by holding Shift+Enter when selecting macOS Monterey in OCLP's Boot Menu.
* Safe Mode can be started by holding `Shift` + `Enter` when selecting macOS Monterey in OCLP's Boot Menu.
## No DisplayPort Output on Mac Pros with NVIDIA Kepler
If you're having troubles with DisplayPort output on Mac Pros, try enabling Minimal Spoofing in Settings -> SMBIOS Settings and rebuild/install OpenCore. This will trick macOS drivers into thinking you have a newer MacPro7,1 and play nicer.
If you're having trouble with DisplayPort output on Mac Pros, try enabling Minimal Spoofing in Settings -> SMBIOS Settings and rebuild/install OpenCore. This will trick macOS drivers into thinking you have a newer MacPro7,1 and resolve the issue.
![](../images/OCLP-GUI-SMBIOS-Minimal.png)
@@ -111,17 +120,17 @@ A semi-common popup some users face is the "Volume Hash Mismatch" error:
<img src="../images/Hash-Mismatch.png">
</p>
What this error signifies is that the OS detects the boot volume's hash does not match to what the OS detects, this error is generally cosmetic and can be ignored. However if your system starts to crash spontaneously shortly after, you'll want to reinstall macOS fresh without importing any data at first.
What this error signifies is that the OS detects that the boot volume's hash does not match what the OS is expecting, this error is generally cosmetic and can be ignored. However if your system starts to crash spontaneously shortly after, you'll want to reinstall macOS fresh without importing any data at first.
* Note that this bug affects native Macs as well and is not due to issues with unsupported Macs: [OSX Daily: “Volume Hash Mismatch” Error in MacOS Monterey](https://osxdaily.com/2021/11/10/volume-hash-mismatch-error-in-macos-monterey/)
Additionally it can help to disable FeatureUnlock in Settings -> Misc Settings as this tool can be strenuous on systems with weaker memory stability.
Additionally, it can help to disable FeatureUnlock in Settings -> Misc Settings as this tool can be strenuous on systems with weaker memory stability.
## Cannot Disable SIP in recoveryOS
With OCLP, the patcher will always overwrite the current SIP value on boot to ensure that users don't brick an installation after NVRAM reset. However for users wanting to disable SIP entirely, this can be done easily.
With OCLP, the patcher will always overwrite the current SIP value on boot to ensure that users don't brick an installation after an NVRAM reset. However, for users wanting to disable SIP entirely, this can be done easily.
Head into the GUI, Patcher Settings and toggle the bits you need disabled from SIP:
Head into the GUI, go to Patcher Settings, and toggle the bits you need disabled from SIP:
| SIP Enabled | SIP Lowered (Root Patching) | SIP Disabled |
| :--- | :--- | :--- |
@@ -136,19 +145,42 @@ For those experiencing issues with USB 1.1 devices (such as mice, keyboards and
Because of this, we recommend placing a USB 2.0/3.0 hub between your devices and the port on the Mac Pro. UHCI and EHCI cannot both be used at once, so using a USB hub will always force the EHCI controller on.
* Alternatively, you can try cold starting the hardware and see if macOS recognizes the UHCI controller properly
* Alternatively, you can try cold-starting the hardware and see if macOS recognizes the UHCI controller properly.
## Stuck on "Less than a minute remaining..."
A common area for systems to get "stuck", namely for units that are missing the `AES` CPU instruction/older mobile hardware. During this stange a lot of heavy cryptography is performed, which can make systems appear to be stuck when in reality they are working quite hard to finish up the installation.
A common area for systems to get "stuck", namely for units that are missing the `AES` CPU instruction/older mobile hardware. During this stage, a lot of heavy cryptography is performed, which can make systems appear to be stuck. In reality they are working quite hard to finish up the installation.
Because this step can take a few hours or more depending on drive speeds, be patient at this stage and do not manually reboot your machine as this will break the installation and require you to reinstall. If you think your system has stalled, press the Caps Lock key. If the light turns on, your system is busy.
Because this step can take a few hours or more depending on drive speeds, be patient at this stage and do not manually power off or reboot your machine as this will break the installation and require you to reinstall. If you think your system has stalled, press the Caps Lock key. If the light turns on, your system is busy and not actually frozen.
## No acceleration after a Metal GPU swap on Mac Pro
If you finished installing Monterey with the original card installed (to see bootpicker for example) and swapped your GPU to a Metal supported one, you may notice that you're missing acceleration. To fix this, open OCLP and revert root patches to get your Metal-supported GPU work again.
Alternatively, you can remove "AutoPkg-Assets.pkg" from /Library/Packages on the USB drive before proceeding with the installation. To see the folder, enable hidden files with `Command` + `Shift` + `.`
Alternatively, you can remove "AutoPkg-Assets.pkg" from /Library/Packages on the USB drive before proceeding with the installation. To see the folder, enable hidden files with `Command` + `Shift` + `.`
The reason for this is that the autopatcher will assume you will be using the original card and therefore does non-metal patching, which includes removing some drivers for other cards. This causes Metal cards to not accelerate when swapped.
The reason for this is that the autopatcher will assume that you will be using the original graphics card and therefore does non-metal patching, which includes removing some drivers for other cards. This causes Metal cards to not accelerate after swapping.
## Keyboard, Mouse and Trackpad not working in installer or after update
For Macs using legacy USB 1.1 controllers, OpenCore Legacy Patcher can only restore support once it has performed root volume patches. Thus to install macOS, you need to hook up a USB hub between your Mac and Keyboard/Mouse.
* For MacBook users, you'll need to find an external keyboard/mouse in addition to the USB hub
More information can be found here:
* [Legacy UHCI/OHCI support in Ventura #1021](https://github.com/dortania/OpenCore-Legacy-Patcher/issues/1021)
Applicable models include:
| Family | Year | Model | Notes |
| :---------- | :--------------------| :---------------------------- | :----------------------------------------------- |
| MacBook | Mid 2010 and older | MacBook4,1 - MacBook7,1 | |
| MacBook Air | Late 2010 and older | MacBookAir2,1 - MacBookAir3,x | |
| MacBook Pro | Mid 2010 and older | MacBookPro4,1 - MacBookPro7,x | Excludes Mid 2010 15" and 17" (MacBookPro6,x) |
| iMac | Late 2009 and older | iMac7,1 - iMac10,x | Excludes Core i5/7 27" late 2009 iMac (iMac11,1) |
| Mac mini | Mid 2011 and older | Macmini3,1 - Macmini5,x | |
| Mac Pro | Mid 2010 and older | MacPro3,1 - MacPro5,1 | |
![](../images/usb11-chart.png)

View File

@@ -1,13 +1,14 @@
# Uninstalling OpenCore
To remove OpenCore is actually quite simply:
To remove OpenCore:
1. Remove OpenCore either from the USB or internal drive
* You'll need to mount the drive's EFI partition, and delete the `EFI/OC` and `System` folders
* Note **do not** delete the entire EFI folder, this will likely break any existing Windows and Linux installations
* [See here for an example on how to mount](https://dortania.github.io/OpenCore-Post-Install/universal/oc2hdd.html)
* You'll need to mount the drive's EFI partition, and delete the `EFI/OC` and `System` folders
* Note: **Do not** delete the entire EFI folder, this will likely break any existing Windows and Linux installations.
* [See here for an example on how to mount](https://dortania.github.io/OpenCore-Post-Install/universal/oc2hdd.html)
* For 5K iMac users, you will also need to delete `boot.efi` on the root of the EFI partition.
2. [Reset NVRAM](https://support.apple.com/HT204063)
Know that if you are on Big Sur when you remove the EFI folder, your Mac will no longer boot and show the prohibited symbol. Be ready to install an older version of macOS before you uninstall OpenCore.
Note that if you are on Big Sur when you remove the EFI folder, your Mac will no longer boot and show the "prohibited" symbol. Be ready to install an older version of macOS before you uninstall OpenCore.

View File

@@ -1,8 +1,9 @@
# Universal Control on unsupported Macs
Introduced in macOS 12 Monterey, Universal Control is a feature that allows a Mac to control other Macs and/or iPads, share input devices, and share files across them simultaneously. With OpenCore and FeatureUnlock, Universal Control can be unlocked for most unsupported Macs, so long as they meet the technical requirements.
Introduced in macOS 12 Monterey, Universal Control is a feature that allows a Mac to control other Macs and/or iPads, share input devices, and share files across them simultaneously. With OpenCore and FeatureUnlock, Universal Control can be unlocked for most unsupported Macs, as long as they meet the technical requirements listed on this page.
* Note: Following page is primarily for hobbiests, no proper support is provided outside of Discord support (see bottom of page)
* Note: The following page is primarily for tinkerers, no proper support is provided outside of Discord support (see bottom of page).
## Enabling Universal Control
@@ -14,7 +15,7 @@ If you meet all the requirements, in most cases you can go to Display Preference
| ![](../images/UC-enable-1.png) | ![OCLP GUI Build Finished](../images/UC-enable-2.png) |
Most Macs 2011 and above should work out of the box. However, older Macs like 2008-2011 MacBook Pro's require upgrading to a newer Wi-Fi/Bluetooth card. More info in the [requirements section.](#requirements-for-universal-control)
Most Mac models from 2011 and above should work out of the box. However, older Macs like the 2008-2011 MacBook Pros require upgrading the Wi-Fi/Bluetooth card to a newer model. More info in the [requirements section.](#requirements-for-universal-control)
Some Monterey-native models are blacklisted, check the [blacklisted models section](#blacklisted-models) for more info.
@@ -28,33 +29,34 @@ Technical requirements:
* iPadOS 15.4 or newer (if applicable)
* OpenCore Legacy Patcher 0.4.3 or newer
Check the [table of models](#table-of-models) below whether you need to upgrade hardware and exactly what hardware is required to be changed based on the offending Macs. Refer for help on how to upgrade the Wi-Fi card on older 2008-2011 models on the Discord channel [#hardware](https://discord.gg/rqdPgH8xSN) if required.
Check the [table of models](#table-of-models) below to see whether you need to upgrade hardware and exactly what hardware is required to be changed based on the offending Macs listed. For help on how to upgrade the Wi-Fi card in older 2008-2011 models, refer to the `#hardware` channel in the [Discord server](https://discord.gg/rqdPgH8xSN) if required.
Other requirements:
* All devices signed into the same iCloud account.
* Two Factor Authentication enabled with your Apple ID.
* Bluetooth and WiFi enabled, neither needs to be connected so long as they are enabled.
* All devices are signed into the same iCloud account.
* Two Factor Authentication is enabled with your Apple ID.
* Bluetooth and WiFi are enabled. Neither needs to be connected, leaving them enabled is sufficient.
* Handoff turned on from iCloud settings.
* The devices in question to be in close proximity.
* The devices in question are in close proximity.
### Table of models
This table shows which models do and don't support Universal Control out of box (OOB) and what is required to gain support.
This table shows which models do and do not support Universal Control out of box (OOB) and what is required to gain support.
Note: For AirPort upgrades, only the best/newest cards are listed.
::: details MacBook
| SMBIOS | WiFi/BT version | UC OOB | Comment |
|------------|-----------------|------------|---------|
| MacBook4,1 | Wi-Fi 4 / BT 2.0 EDR | <span style="color:red"> NO </span> | Use the Mac Pro Wi-Fi upgrade kit to upgrade to BCM94360 |
| MacBook5,1 | ^^ | ^^ | ^^ |
| MacBook5,2 | WiFi 4 / BT 2.1 EDR | ^^ | ^^ |
| MacBook6,1 | ^^ | ^^ | Upgrade to BCM94360 |
| MacBook4,1 | Wi-Fi 4 / BT 2.0 EDR | <span style="color:red"> NO </span> | Replace stock AirPort card with an mPCIE + USB Connector Adapter board with a BCM94360CS2 card |
| MacBook5,1 | ^^ | ^^ | <span style="color:red"> Use a Broadcom USB Bluetooth 4.0+ Dongle </span> |
| MacBook5,2 | WiFi 4 / BT 2.1 EDR | ^^ | Replace stock AirPort card with an mPCIE + USB Connector Adapter board with a BCM94360CS2 card |
| MacBook6,1 | ^^ | ^^ | Replace stock AirPort card with a BCM94331PCIEBT4CAX/BCM94331PCIEBT4 card |
| MacBook7,1 | ^^ | ^^ | ^^ |
| MacBook8,1 | WiFi 5 + BT 4.0 | <span style="color:#30BCD5"> YES </span> | Universal Control will work. |
| MacBook8,1 | WiFi 4 + BT 4.2 | <span style="color:#30BCD5"> YES </span> | Universal Control will work. |
:::
@@ -62,8 +64,8 @@ This table shows which models do and don't support Universal Control out of box
| SMBIOS | WiFi/BT version | UC OOB | Comment |
|--------|-----------------|------------|---------|
| MacBookAir2,1 | Wi-Fi 4 / BT 2.1 EDR | <span style="color:red"> NO </span> | Replace the card with BCM94360 and disconnect/disable the BT module. |
| MacBookAir3,1 | ^^ | ^^ | ^^ |
| MacBookAir2,1 | Wi-Fi 4 / BT 2.1 EDR | <span style="color:red"> NO </span> | Use a Broadcom USB Bluetooth 4.0+ Dongle |
| MacBookAir3,1 | ^^ | ^^ | Replace stock AirPort card with a BCM94360CS2 card |
| MacBookAir3,2 | ^^ | ^^ | ^^ |
| MacBookAir4,1 | Wi-Fi 4 + BT 4.0 | <span style="color:#30BCD5"> YES </span> | Universal Control will work. |
| MacBookAir4,2 | ^^ | ^^ | ^^ |
@@ -81,16 +83,16 @@ This table shows which models do and don't support Universal Control out of box
| SMBIOS | WiFi/BT version | UC OOB | Comment |
|--------|-----------------|-------------|---------|
| MacBookPro4,1 | Wi-Fi 4 / BT 2.1 EDR | <span style="color:red"> NO </span> | Use the Mac Pro Wi-Fi upgrade kit to upgrade to BCM94360 |
| MacBookPro5,1 | ^^ | ^^ | Upgrading to BCM94331 requires some heavy case hardware modifications, so instead use a USB BT 4.0 dongle |
| MacBookPro4,1 | Wi-Fi 4 / BT 2.1 EDR | <span style="color:red"> NO </span> | Replace stock AirPort card with an mPCIE + USB Connector Adapter board with a BCM94360CS2 card |
| MacBookPro5,1 | ^^ | ^^ | Use a Broadcom USB Bluetooth 4.0+ Dongle |
| MacBookPro5,2 | ^^ | ^^ | ^^ |
| MacBookPro5,3 | ^^ | ^^ | ^^ |
| MacBookPro5,4 | ^^ | ^^ | ^^ |
| MacBookPro5,5 | ^^ | ^^ | ^^ |
| MacBookPro6,1 | ^^ | ^^ | ^^ |
| MacBookPro6,2 | ^^ | ^^ | ^^ |
| MacBookPro7,1 | ^^ | ^^ | ^^ |
| MacBookPro8,1 | Wi-Fi 4 + BT 2.1 EDR | ^^ | Upgrade to BCM94331 |
| MacBookPro6,2 | ^^ | ^^ | Replace stock AirPort card with a BCM94331PCIEBT4CAX/BCM94331PCIEBT4 card |
| MacBookPro7,1 | ^^ | ^^ | Use a Broadcom USB Bluetooth 4.0+ Dongle |
| MacBookPro8,1 | Wi-Fi 4 + BT 2.1 EDR | ^^ | Replace stock AirPort card with a BCM94331PCIEBT4CAX/BCM94331PCIEBT4 card |
| MacBookPro8,2 | ^^ | ^^ | ^^ |
| MacBookPro9,1 | Wi-Fi 4 + BT 4.0 | <span style="color:#30BCD5"> YES </span> | Universal Control will work. |
| MacBookPro9,2 | ^^ | ^^ | ^^ |
@@ -108,8 +110,8 @@ This table shows which models do and don't support Universal Control out of box
| SMBIOS | WiFi/BT version | UC OOB | Comment |
|--------|-----------------|------------|---------|
| Macmini3,1 | Wi-Fi 4 + BT 2.1 EDR | <span style="color:red"> NO </span> | Upgrade requires some heavy electrical and case modifications, so instead used a USB BT 4.0 dongle. |
| Macmini4,1 | ^^ | ^^ | Upgrade to BCM94360. |
| Macmini3,1 | Wi-Fi 4 + BT 2.1 EDR | <span style="color:red"> NO </span> | Upgrade requires some heavy electrical and case modifications, so instead used a Broadcom USB Bluetooth 4.0+ Dongle. |
| Macmini4,1 | ^^ | ^^ | ^^ |
| Macmini5,1 | Wi-Fi 4 + BT 4.0 | <span style="color:#30BCD5"> YES </span> | Universal Control will work. |
| Macmini5,2 | ^^ | ^^ | ^^ |
| Macmini5,3 | ^^ | ^^ | ^^ |
@@ -117,21 +119,21 @@ This table shows which models do and don't support Universal Control out of box
| Macmini6,2 | ^^ | ^^ | ^^ |
| Macmini7,1 | Wi-Fi 5 + BT 4.0 | <span style="color:red"> NO </span> | Hardware supports UC. <br> [**Spoofing required.**](#blacklisted-models) |
:::
:::
:::details iMac
| SMBIOS | WiFi/BT version | UC OOB | Comment |
|----------|-----------------|------------|---------|
| iMac7,1 | Wi-Fi 4 + BT 2.0 EDR | <span style="color:red"> NO </span> | Use the Mac Pro Wi-Fi upgrade kit to upgrade to BCM94360 (soldering required for BT)
| iMac7,1 | Wi-Fi 4 + BT 2.0 EDR | <span style="color:red"> NO </span> | Replace stock AirPort card with an mPCIE + USB Connector Adapter board with a BCM94360CD card
| iMac8,1 | ^^ | ^^ | ^^ |
| iMac9,1 | Wi-Fi 4 / BT 2.1 EDR | ^^ | ^^ |
| iMac10,1 | ^^ | ^^ | ^^ |
| iMac11,1 | ^^ | ^^ | ^^ |
| iMac11,2 | ^^ | ^^ | ^^ |
| iMac11,3 | ^^ | ^^ | ^^ |
| iMac12,1 | ^^ | ^^ | ^^ |
| iMac12,1 | ^^ | ^^ | Replace stock AirPort card with an mPCIE + USB Connector Adapter board with a BCM943602CD card
| iMac12,2 | ^^ | ^^ | ^^ |
| iMac13,1 | Wi-Fi 4 + BT 4.0 | <span style="color:#30BCD5"> YES </span> | Universal Control will work. |
| iMac13,2 | ^^ | ^^ | ^^ |
@@ -144,21 +146,32 @@ This table shows which models do and don't support Universal Control out of box
| iMac16,1 | Wi-Fi 5 + BT 4.2 | <span style="color:red"> NO </span> | Hardware supports UC. <br> [**Spoofing required.**](#blacklisted-models) |
| iMac16,2 | ^^ | ^^ | ^^ |
:::
:::
:::details Mac Pro
| SMBIOS | WiFi/BT version | UC OOB | Comment |
|-----------|-----------------|---------|---------|
| MacPro3,1 | Wi-Fi 4 + BT 2.0 EDR | <span style="color:red"> NO </span> | Use the Mac Pro Wi-Fi upgrade kit to upgrade to BCM94360. |
| MacPro4,1 | Wi-Fi 4 + BT 2.1 EDR | ^^ | Use the Mac Pro Wi-Fi upgrade kit to upgrade to BCM94360 (soldering required for BT) |
| MacPro3,1 | Wi-Fi 4 + BT 2.0 EDR | <span style="color:red"> NO </span> | Replace stock AirPort card with an mPCIE Adapter board with a BCM943602CD card |
| MacPro4,1 | Wi-Fi 4 + BT 2.1 EDR | ^^ | Replace stock AirPort card with an mPCIE + USB Connector Adapter board with a BCM943602CD card |
| MacPro5,1 | ^^ | ^^ | ^^ |
| MacPro6,1 | Wi-Fi 5 + BT 4.0 | ^^ | Hardware supports UC. <br> [**Spoofing required.**](#blacklisted-models) |
* Note: Some older Mac Pro configurations may not have shipped with a WiFi card in the base model
:::
:::
:::details Xserve ;p
| SMBIOS | WiFi/BT version | UC OOB | Comment |
|-----------|-----------------|---------|---------|
| Xserve2,1 | N/A | <span style="color:red"> NO </span> | Install a PCIe BCM943602CD card |
| Xserve3,1 | ^^ | ^^ | ^^ |
:::
## Blacklisted models
The following models are blacklisted from using Universal Control by Apple:
@@ -171,9 +184,9 @@ The following models are blacklisted from using Universal Control by Apple:
- Macmini7,x - Mac mini 2014
- MacPro6,x - Mac Pro Late 2013
The hardware in these models is capable but due to blacklisting, the only solution to use Universal Control on the models above is to spoof their SMBIOS. SMBIOS spoofing essentially fools some aspects of macOS to think they are running on a different machine.
The hardware in these models are capable of supporting Universal Control, but due to blacklisting, the only solution to use Universal Control on these models is to spoof their SMBIOS. SMBIOS spoofing essentially fools some aspects of macOS to think they are running on a different machine.
With SMBIOS Spoofing, the Universal Control handshake recognizes a different SMBIOS and thus grants a blacklisted Mac to connect to other iPads and Macs with Universal Control.
With SMBIOS Spoofing, the Universal Control handshake recognizes a different SMBIOS and thus grants a blacklisted Mac to connect to other Macs and iPads with Universal Control.
| Situation | Condition | Solution |
|-----------|-----------|---------|
@@ -184,44 +197,80 @@ With SMBIOS Spoofing, the Universal Control handshake recognizes a different SMB
:::warning
Before we continue, please keep in mind SMBIOS Spoofing is an advanced feature of OpenCore, that with reckless usage of it, could potentially screw things around and leave your installation non-working. Once you boot into a spoofed state, it is highly recommended you stay spoofed, and avoid booting macOS without OpenCore.
Before we continue, please keep in mind that SMBIOS Spoofing is an advanced feature of OpenCore. Reckless usage of it could potentially break important functionality and leave your installation in a non-working state. Once you boot into a spoofed state, it is highly recommended that you stay spoofed, and avoid booting macOS without OpenCore.
:::
### How to spoof
Firstly, run the GUI version of OpenCore Legacy Patcher, go to **Settings** and tick **Allow native models**.
Ventura has dropped more models which includes all of the blacklisted Macs in question, making the procedure slightly different. It is important to follow the guide for the version you're on, failing to do so is likely to cause boot issues.
**Note:** Unless you are building OpenCore on a different machine than it's targeted for, **do not** change the model in this main settings view. It is important to understand that OCLP targets this model regardless of what you may have spoofed to, as your Mac is still what the Native SMBIOS shows.
::: details macOS Ventura
Firstly run the GUI version of OpenCore Legacy Patcher.
Then go to **Settings**, go to **SMBIOS Settings**, set SMBIOS Spoof Level to **Moderate**. Set SMBIOS Spoof Model **one listed next to your native model in the table for spoofed models below.**
Notice that "Allow native models" and "Allow Native Spoofs" **are NOT** enabled unlike on Monterey, this is on purpose. They are no longer relevant on Ventura and enabling them will cause boot issues.
| Main Settings view | SMBIOS settings |
| :--- | :--- |
| ![](../images/ventura_uc1.png) | ![](../images/ventura_uc2.png) |
Secondly, go to **SMBIOS Settings**, tick **Allow Native Spoofs**, set SMBIOS Spoof Level to **Moderate**. Set SMBIOS Spoof Model to **one next to your native model in the table for spoofed models below.**
::: details Table for spoofed models (click to expand)
Any model after the list of officially blacklisted Macs should be supported, but these are the earliest Macs with Universal Control support, and thus chosen for the sake of simplicity.
Spoofing to any model with native Ventura support should work, but these are the earliest Macs natively supported by Ventura and thus chosen for the sake of simplicity.
**Reminder:** Macs that are not listed on this table work without spoofing, including systems that do not natively support Monterey as long as the other requirements are met, since they aren't blacklisted.
**Reminder:** Macs that are not listed on this table work without spoofing, including systems that do not natively support Ventura as long as the other requirements are met, since they aren't blacklisted.
| Mac by name | Native SMBIOS | Spoof SMBIOS | Tested | Tested by |
|-------------|---------------|--------------|--------|-----------|
| MacBook Air Early 2015 11" / 13" | MacBookAir7,x | MacBookAir8,1 | <span style="color:#30BCD5"> YES </span> | Hzlph |
| MacBook Pro Early 2015 13" | MacBookPro12,x | MacBookPro13,1 | ^^ | ^^ |
| MacBook Pro Mid 2015 15" | MacBookPro11,4 / 11,5 | MacBookPro13,3 | ^^ | ^^
| iMac Late 2015 21" | iMac16,x | iMac18,2 | ^^ | ^^
| MacBook Air Early 2015 11" / 13" | MacBookAir7,x | MacBookAir8,1 | <span style="color:red"> NO </span> | N/A |
| MacBook Pro Early 2015 13" | MacBookPro12,x | MacBookPro14,1 | ^^ | ^^ |
| MacBook Pro Mid 2015 15" | MacBookPro11,4 / 11,5 | MacBookPro14,3 | ^^ | ^^
| iMac Late 2015 21" | iMac16,x | iMac18,2 | ^^ | ^^
| Mac mini Late 2014 | Macmini7,x | MacMini8,1 | <span style="color:red"> NO </span> | N/A |
| Mac Pro Late 2013 | MacPro6,x | MacPro7,1 | <span style="color:#30BCD5"> YES </span> | Crystall1nedev |
| Mac Pro Late 2013 | MacPro6,x | MacPro7,1 | <span style="color:red"> NO </span> | N/A |
:::
::: details macOS Monterey
Firstly, run the GUI version of OpenCore Legacy Patcher. Secondly, go to **Settings** and tick **Allow native models**.
Then, go to **SMBIOS Settings**, tick **Allow Native Spoofs**, set SMBIOS Spoof Level to **Moderate**. Set SMBIOS Spoof Model to **one listed next to your native model in the table for spoofed models below.**
| Main Settings view | SMBIOS settings |
| :--- | :--- |
| ![](../images/OCLP-allow-native-models.png) | ![](../images/OCLP-smbios-settings.png) |
Build and install OpenCore again, reboot back to the OS. Enable Universal Control as explained in [Enabling Universal Control section.](#enabling-universal-control)
::: details Table for spoofed models (click to expand)
Any model after the list of officially blacklisted Macs should be supported, but these are the earliest Macs with Universal Control support, and thus chosen for the sake of simplicity.
**Reminder:** Macs that are not listed on this table work without spoofing, including systems that do not natively support Monterey, as long as the other requirements are met, since they aren't blacklisted.
| Mac by name | Native SMBIOS | Spoof SMBIOS | Tested | Tested by |
|-------------|---------------|--------------|--------|-----------|
| MacBook Air Early 2015 11" / 13" | MacBookAir7,x | MacBookAir8,1 | <span style="color:#30BCD5"> YES </span> | Hzlph |
| MacBook Pro Early 2015 13" | MacBookPro12,x | MacBookPro13,1 | ^^ | ^^ |
| MacBook Pro Mid 2015 15" | MacBookPro11,4 / 11,5 | MacBookPro13,3 | ^^ | ^^
| iMac Late 2015 21" | iMac16,x | iMac18,2 | ^^ | ^^
| Mac mini Late 2014 | Macmini7,x | MacMini8,1 | <span style="color:red"> NO </span> | N/A |
| Mac Pro Late 2013 | MacPro6,x | MacPro7,1 | <span style="color:#30BCD5"> YES </span> | Crystall1nedev |
:::
**Note:** Unless you are building OpenCore on a different machine than it's targeted for, **do not** change the model in the main settings view. It is important to understand that OCLP targets this model regardless of what you may have spoofed to, as your Mac is still what the Native SMBIOS shows.
Lastly, Build and install OpenCore again, and reboot back to the OS. Enable Universal Control as explained in the [Enabling Universal Control section.](#enabling-universal-control)
You should now be prompted to log back into iCloud by your Mac. This means you were successful, otherwise, verify you are correctly following the steps listed above, or else ask on the Discord group for assistance on [#misc-help](https://discord.gg/rqdPgH8xSN).
You should now be prompted to log back into iCloud by your Mac. If you get this prompt, you have successfully configured SMBIOS spoofing. Otherwise, verify that you have correctly followed the steps listed above, or ask on the Discord server for further assistance in [#misc-help](https://discord.gg/rqdPgH8xSN).

View File

@@ -1,14 +1,14 @@
# Updating OpenCore and Patches
With OpenCore Legacy Patcher, generally there's very little reason for users to update the OpenCore installed on their machine unless you feel there's a benefit with new versions for your setup, e.g. Bluetooth has stopped working with a new macOS update.
With OpenCore Legacy Patcher, there's generally very little reason for users to update the OpenCore installation on their machine unless you feel there's a benefit with new versions for your setup, e.g. Bluetooth has stopped working with a new macOS update.
For those who do wish to update, it's actually quite easy. Simply [download the latest release](https://github.com/dortania/OpenCore-Legacy-Patcher/releases) and rerun the patcher:
For those who do wish to update, simply [download the latest release](https://github.com/dortania/OpenCore-Legacy-Patcher/releases) and rerun the patcher:
![](../images/OCLP-GUI-Main-Menu.png)
Then simply rebuild your OpenCore build and install again. Then voila, OpenCore is updated!
Then, rebuild your OpenCore build and install again. OpenCore Will now be updated!
To check what version of OpenCore and Patcher version you're currently running, you can run the following in terminal:
To check what version of OpenCore and the Patcher you're currently running, you can run the following in the terminal:
```bash
# OpenCore Version
@@ -19,4 +19,4 @@ nvram 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:OCLP-Version
![](../images/oclp-version.png)
From this, we can see we're running a RELEASE version of OpenCore 0.6.8 built on March 27th, 2021 with Patcher Version 0.0.20!
From this, we can see that we're running a RELEASE version of OpenCore 0.6.8 built on March 27th, 2021 with Patcher Version 0.0.20!

143
docs/VENTURA-DROP.md Normal file
View File

@@ -0,0 +1,143 @@
![](../images/ventura.png)
With the release of OpenCore Legacy Patcher v0.5.0 and newer, early support for macOS Ventura has been implemented for most Metal-capable Macs. This page will be used to inform users regarding current issues and will be updated as new patch sets are developed and added to our patcher.
## Newly dropped hardware
Ventura's release dropped a large amount of Intel hardware, thus requiring the usage of OpenCore Legacy Patcher on the following models (in addition to previously removed models):
* iMac16,1 (21.5-inch, Late 2015)
* iMac16,2 (21.5-inch 4K, Late 2015)
* iMac17,1 (27-inch 5K, Late 2015)
* MacBook9,1 (12-inch, Early 2016)
* MacBookAir7,1 (11-inch, Early 2015)
* MacBookAir7,2 (13-inch, Early 2015)
* MacBookPro11,4 (15-inch, Mid 2015, iGPU)
* MacBookPro11,5 (15-inch, Mid 2015, dGPU)
* MacBookPro12,1 (13-inch, Early 2015)
* MacBookPro13,1 (13-inch, Late 2016)
* MacBookPro13,2 (13-inch, Late 2016)
* MacBookPro13,3 (15-inch, Late 2016)
* Macmini7,1 (Late 2014)
* MacPro6,1 (Late 2013)
## Current status
<img width="625" alt="" src="../images/OCLP-060-Initial-Support.png">
For older hardware, see below sections:
* [Currently Unsupported/Broken Hardware in Ventura](#currently-unsupportedbroken-hardware-in-ventura)
* [AMD Polaris, Vega and Navi support on pre-2019 Mac Pros and pre-2012 iMacs](#amd-polaris-vega-and-navi-support-on-pre-2019-mac-pros-and-pre-2012-imacs)
* [USB 1.1 (OHCI/UHCI) Support](#usb-11-ohciuhci-support)
* [Ethernet issue with Early 2008 Mac Pro](#ethernet-issue-with-early-2008-mac-pro)
The team is doing their best to investigate and fix the aforementioned issues, however no estimated time can be provided.
## Currently Unsupported/Broken Hardware in Ventura
### AMD Polaris, Vega and Navi support on pre-2019 Mac Pros and pre-2012 iMacs
For users with 2008 to 2013 Mac Pros (MacPro3,1-6,1) and 2009 to 2011 iMacs (iMac9,1-12,2), keep in mind that macOS Ventura now requires [AVX2.0 support in the CPU](https://en.wikipedia.org/wiki/Advanced_Vector_Extensions#Advanced_Vector_Extensions_2) for native graphics acceleration. Thus while your GPU may be natively supported, you cannot run Ventura officially with these GPUs.
* CPUs supporting AVX2.0 are Haswell or newer, which no pre-2019 Mac Pros can be upgraded with.
Currently at this time, OpenCore Legacy Patcher only supports patching the AMD Polaris and Vega Graphics stack to no longer require AVX2.0. We're recently received an AMD RX 6600 donation, so hopefully in the future the project can support AMD Navi with pre-Haswell Macs. However, no time estimates can be given.
Following GPUs are applicable:
| GPU Architecture | Model Families | Supported |
| :--- | :--- | :--- |
| AMD Polaris | RX 4xx/5xx (10/20 series) | <span style="color:#30BCD5"> Supported with patching </span> |
| AMD Vega | Vega 56/64/VII (10/20 series) | ^^ |
| AMD Navi | RX 5xxx/6xxx (10/20 series) | <span style="color:red"> Unsupported </span> |
### USB 1.1 (OHCI/UHCI) Support
For Penryn systems and pre-2013 Mac Pros, USB 1.1 support was outright removed in macOS Ventura. While USB 1.1 may seem unimportant, it handles many important devices on your system. These include:
* Keyboard and Trackpad for laptops
* IR Receivers
* Bluetooth
With OpenCore Legacy Patcher v0.6.0, basic support has been implemented via Root Volume patching. However due to this, users will need to use a USB hub for installation and post-OS updates when patches are cleaned:
![](../images/usb11-chart.png)
::: warning The following systems rely on USB 1.1
* iMac10,x and older
* Macmini3,1 and older
* MacBook7,1 and older
* MacBookAir3,1 and older
* MacBookPro7,1 and older
* MacBookPro6,x is exempt
* MacPro5,1 and older
:::
### Ethernet issue with Early 2008 Mac Pro
MacPro3,1 suffers from the Ethernet driver dying after returning from sleep, current workaround is to use a USB Ethernet adapter or disable sleep.
::: details Legacy Wireless Support (Resolved in v0.6.0 and newer)
### Legacy Wireless Support
For systems that required Root Patches in macOS Monterey to achieve Wireless support, unfortunately macOS Ventura has broken the patch set. Currently the following Wifi cards are unsupported:
* Atheros: All models
* Broadcom: BCM94328 and BCM94322
The following machines shipped stock with these cards:
* iMac12,x and older
* Macmini3,1 and older
* MacBook5,x and older
* MacBookAir2,1 and older
* MacBookPro7,1 and older
* MacBookPro6,x is exempt
* MacPro5,1 and older
Currently BCM943224, BCM94331, BCM94360 and BCM943602 are still fully supported by OpenCore Legacy Patcher. Consider upgrading to these cards if possible.
:::
::: details Non-Metal Graphics Acceleration (Resolved in v0.6.0 and newer)
### Non-Metal Graphics Acceleration
Regarding non-Metal, the team is hard at work to get non-Metal working, however this is our greatest challenge since Big Sur.
Apple has made significant changes to the graphics stack in order to facilitate fancy effects, and in particularly, Stage Manager. We will update you as we work on development, however, now is not the best time to ask about ETAs.
The following GPUs are applicable:
* NVIDIA:
* Tesla (8000 - 300 series)
* AMD:
* TeraScale (2000 - 6000 series)
* Intel:
* Iron Lake
* Sandy Bridge (2000 - 3000 series)
The following machines shipped stock with an unsupported GPU:
* iMac7,1 - iMac12,x
* MacBook4,1 - MacBook7,1
* MacBookAir2,1 - MacBookAir4,x
* MacBookPro4,1 - MacBookPro8,x
* Macmini3,1 - Macmini5,x
* MacPro3,1 - MacPro5,1
* Xserve2,1 - Xserve3,1
:::

View File

@@ -1,102 +1,199 @@
# Installing UEFI Windows 10
# Installing Windows in UEFI Mode
* Guide based off of [cdf's Mac Pro Thread](https://forums.macrumors.com/threads/opencore-on-the-mac-pro.2207814/)
Modern versions of Windows officially support two types of firmware: UEFI and BIOS. Users may want to boot Windows through the OCLP Bootpicker, but only UEFI Installations of Windows will show up in the OCLP Bootpicker.
Many older Macs do not "officially" support UEFI Windows installations, leading to installation failures and strange behaviour, but OCLP can be used to prevent almost all of these issues.
To install UEFI is actually super simple! All it requires is to boot Windows' Installer through OpenCore to force a UEFI setup. Here we'll be going a bit more step by step in the process including partitioning and such.
## Minimum Requirements
* Note: UEFI Windows is generally quite usable for Arrendale and newer models, however machines with Penryn CPUs may experience issues
* Recommended Models:
* MacBookAir4,x - 5,x
* MacBookPro8,x - 10,x
* Macmini5,x - 6,x
* iMac11,x - 13,x
This guide will focus on the installation of Windows 10 without using Boot Camp Assistant. Windows 11 should also work, but its quirks will not be covered.
Once you know your model is supported, you're good to go with the rest of this guide
* Due to hardware and firmware limitations, UEFI Windows installations are only recommended on the following machines:
* Newer models than listed here will already natively support UEFI Windows through Boot Camp
* 2015 MacBook or newer (MacBook8,x+)
* 2011 MacBook Air or newer (MacBookAir4,x+)
* 2011 MacBook Pro or newer (MacBookPro8,x+)
* 2011 Mac mini or newer (Macmini5,x+)
* 2009[^1] Mac Pro or newer (MacPro4,1+), upgraded GPU is preferred
* 2010 iMac or newer (iMac11,x+), upgraded GPU is preferred
* 2009[^2] Xserve (Xserve3,1), upgraded GPU is preferred
For MacPro4,1/5,1 and Xserve3,1 users, please be aware that Windows has troubles with automatic installation, so please refer to cdf's guide on manual installation:
* [cdf's Mac Pro Thread](https://forums.macrumors.com/threads/opencore-on-the-mac-pro.2207814/)
[^1]: MacPro4,1 and MacPro5,1 systems experience issues with the Windows installer, follow the DISM installation section for instructions.
[^2]: Theoretically supported, not tested. Follow DISM installation section
## Disk Formatting
If your machine is not listed, UEFI Windows will likely still install, but you may face stability/driver issues.
To start off, we'll need the following:
## Disk Partitioning and Formatting
* An 8GB USB drive for the Windows Installer
* Minimum of 30GB of free space on whatever drive you want to install Windows too
The following is required for installation:
* 8GB+ USB Drive for the Windows installer
* 30GB+ Free Space on an existing drive / empty drive for the Windows installation
First, lets format out drives as follows:
### Formatting the USB Drive
### USB Drive Formatting
Open Disk Utility in macOS and format the USB Drive as ExFat with MBR Scheme:
Open Disk Utility in macOS and format the USB Drive as ExFat with the Master Boot Record scheme:
![](../images/windows-mbr-format.png)
### Disk Formatting
### Formatting the Target Drive
Next, grab the drive you wish to install Windows on and partition it as ExFat (If formatting entire drive, ensure it's GUID Partition Table):
Next, select the drive you wish to install Windows in Disk Utility on and partition it as ExFat (If formatting the entire drive, ensure it's using the GUID Partition Table scheme):
![](../images/windows-partition-1.png)
:::warning
Incorrectly erasing your drive can lead to data loss! Please verify that you are erasing the correct drive/partition.
:::
If you plan to use the same hard drive for macOS and Windows, we recommend creating a dedicated partition just for OpenCore. This lets Windows have the ESP to itself and OpenCore can stay within it's own bubble.
Recommended size is 200MB and the partition format **must** be FAT32 for OpenCore to operate correctly. You will next want to install OpenCore onto the new partition, either moving from the ESP with [MountEFI](https://github.com/corpnewt/MountEFI) or rerunning the OpenCore-Patcher.app
* Note: For machines with dedicated drives for Windows, having different partitions for OpenCore is not required
* Note 2: We recommend uninstalling OpenCore from the ESP/EFI Partition when you create this new OpenCore partition to avoid confusion when selecting OpenCore builds in the Mac's boot picker
* Note 1: For machines with dedicated drives for Windows, having different partitions for OpenCore is not required.
* Note 2: Having different partitions for OpenCore is not required if the Windows boot files detected by the stock Bootpicker are removed. See "Removing the Windows option from the stock bootpicker" for further information.
* Note 3: We recommend uninstalling OpenCore from the ESP/EFI Partition when you create this new OpenCore partition to avoid confusion when selecting OpenCore builds in the Mac's boot picker.
![](../images/windows-partition-2.png)
## Creating the Installer
## Creating the Windows Installer
First up, lets grab Windows's Installer at the below link:
The latest Windows installation images can be downloaded from Microsoft using the following links:
* [Download Windows 10 Disc Image (ISO File)](https://www.microsoft.com/en-ca/software-download/windows10ISO)
Next, mount the Windows 10 ISO:
* [Download Windows 11 Disc Image (ISO File)](https://www.microsoft.com/en-ca/software-download/windows11)
Once the file is downloaded, mount the .iso image:
![](../images/windows-iso.png)
The open terminal and run `rsync` on the USB drive (replace CCCOMA_X64 with the mounted ISO's name, as well as replacing W10USB with your USB drive's name):
Then open terminal and use the `rsync` command with the disk image set as the source and your USB drive set as the target. (Replace "CCCOMA_X64" with the mounted image's partition name, and replace "InstallWin10" with your USB Drive's name).
```
rsync -r -P /Volumes/CCCOMA_X64/ /Volumes/W10USB
rsync -r -P /Volumes/CCCOMA_X64/ /Volumes/InstallWin10
```
::: details If you get an error about install.wim
One of the files, `install.wim`, may be too big for the FAT32 file system to hold. If this is the case, you should enter the commands below rather than the one above. This assumes you have `wimlib` installed, if not you can install it with [Homebrew](https://brew.sh):
```
# Copy everything but the install.wim file
rsync -vha -P --exclude=sources/install.wim /Volumes/CCCOMA_X64/ /Volumes/W10USB
# Use wimlib to split the install.wim file into a size that fits
wimlib-imagex split /Volumes/CCCOMA_X64/sources/install.wim /Volumes/W10USB/sources/install.swm 4000
```
Once that's completed, you can continue.
:::
![](../images/rsync-progess.png)
Command will take some time, so sit back and get some coffee. Once finished, the root of the USB drive should look as follows:
* Ensure that these folders and files are on the root, otherwise the USB will not boot
The `rsync` command will take some time, so get some coffee and sit back. Once finished, the root of the USB drive should look as follows:
![](../images/windows-rsync-done.png)
Once done, lets reboot into OpenCore's Menu and you'll see a new Windows' entry:
* Ensure that these folders and files are in the root of the USB drive, otherwise the USB will not boot.
* Note: Do not boot the installer outside of OpenCore as this will default back to the old MBR BIOS setup. Booting through OpenCore ensures Windows uses UEFI
![](../images/oc-windows.png)
## Installation Process
From there, install Windows as normal and you'll get a new BootCamp entry in OpenCore's picker when done! Don't forget to run BootCamp's utilities installer as well to ensure Wifi and such are functioning correctly. This can be downloaded from the BootCamp Assistant app in macOS, or with [brigadier](https://github.com/timsutton/brigadier) in Windows.
Once you reboot your machine, you should see a new boot option in the OCLP Bootpicker labelled as "EFI Boot". It may or may not have the Boot Camp icon.
![](../images/oc-windows-done.png)
:::warning
If you aren't booted into OCLP, you may see two boot options labelled "Windows" and "EFI Boot". Do not choose either of the options and boot into OCLP to continue.
:::
### Installation: Microsoft Method
Once booted into the Windows installer, proceed as you normally would on any Windows computer. If you see an error message containing “Windows could not prepare the computer to boot into the next phase of installation”, please follow the next portion of this guide (DISM Installation).
### Installation: DISM Deployment Method
Once booted into the Windows installer, proceed as you normally would until you reach the "Where do you want to install Windows" disk formatting section.
When you are prompted to select a drive, select your desired partition and delete it using "Delete". If you want to install Windows to an empty drive, erase every partition currently on the desired drive.
After your drive/partition is erased, press "New" to create the Windows system partitions.
![](../images/DISM-1.png)
You will be prompted to confirm the creation of the system partitions, press "OK".
![](../images/DISM-2.png)
Once the partitions are created, select the main (largest) partition and press "Format". This will format the partition using the NFTS file system.
![](../images/DISM-3.png)
After the installer formats the partition, open up the Command Prompt by pressing SHIFT + F10. Then run the `diskpart` command, and `list vol`. This will produce a list of volumes in your system, make sure to keep track of the drive letters of the main Windows partition (largest, NTFS), the EFI partition (100MB, FAT32), and the Windows installer (Usually Drive D). Run `exit` to close diskpart
![](../images/DISM-4.png)
Now, get a list of available Windows editions by running `dism /Get-WimInfo /WimFile:D:\Sources\install.wim` (substituting D with the Installer Drive Letter). This guide will use Option 6 for Windows 10 Pro.
![](../images/DISM-5.png)
You can now start the deployment process. Run `dism /Apply-Image /ImageFile:D:\Sources\install.wim /index:6 /ApplyDir:E:`, replacing "D" with the Installer Drive Letter, "6" with the Windows edition option, and "E" with the Windows Partition Drive Letter.
![](../images/DISM-6.png)
Once `dism` finishes its thing, run `bcdboot E:\Windows`, substituting "E" for the drive letter of the main Windows partition to create the boot files.
![](../images/DISM-7.png)
Windows is now installed. It should be recognized as "EFI Boot" with a Boot Camp icon in the OCLP Bootpicker.
:::warning
After the boot files are created, **DO NOT** reboot if you are using a MacPro4,1, MacPro5,1, or Xserve3,1 system! A bug in the Windows bootloader exists that will completely brick the system if it is loaded through the stock bootpicker. See the "Installation: Removing the Windows option from the stock bootpicker" section for a workaround.
:::
### Installation: Removing the Windows option from the stock bootpicker
Removing the Windows boot option from the stock bootpicker is **HIGHLY RECOMMENDED** on MacPro4,1, MacPro5,1, and Xserve3,1 systems in order to prevent Secure Boot NVRAM corruption and bricking.
Start up a command prompt window in the Windows Setup environment by running `cmd`.
Next, enter the EFI Folder by running `C:`, substituting "C" for the EFI Partition Drive Letter. Then run `cd EFI` to enter the EFI Partition. Then, run `rmdir Boot /S /Q` to remove the boot files that can be detected by the stock Bootpicker. The OCLP Picker will still be able to detect and boot Windows.
![](../images/DISM-8.png)
You can verify that the `Boot` folder is removed by running the `dir` command:
![](../images/DISM-9.png)
If, for whatever reason, you are not able to remove the boot files from the Windows setup, shut down your system, boot into macOS, mount your EFI partition with [MountEFI](https://github.com/corpnewt/MountEFI), and remove the `Boot` folder (it should have a recent file modification date, and contain `Bootx64.efi`).
## Post-Installation
### Installing Boot Camp Software
To get started, download the Brigadier utility from the following link:
* [Download Brigadier](https://github.com/timsutton/brigadier/releases/download/0.2.4/brigadier.exe)
Once Brigadier is downloaded, move it to your desktop for easy access.
Open up a command prompt window as a standard user and run `cd desktop`.
![](../images/BOOTCAMP-1.png)
Then run `.\brigadier.exe --model=MODEL1,1`, replacing "MODEL1,1" with your machine's SMBIOS model.
![](../images/BOOTCAMP-2.png)
Once the Boot Camp software is downloaded, you can install it by executing `Setup.exe` or `\Drivers\Apple\BootCamp.msi` (`BootCamp64.msi` if present).
### Installing Boot Camp 6 softare on unsupported machines
To get started, download the Brigadier utility from the following link:
* [Download Brigadier](https://github.com/timsutton/brigadier/releases/download/0.2.4/brigadier.exe)
Once Brigadier is downloaded, move it to your desktop for easy access.
Open up a command prompt window as a standard user and run `cd desktop`.
![](../images/BOOTCAMP-1.png)
Then run `.\brigadier.exe --model=MacPro7,1`. This will download the latest BootCamp 6 package.
![](../images/BOOTCAMP-2.png)
Once the Boot Camp software is downloaded, you can install Boot Camp 6 by executing `\Drivers\Apple\BootCamp.msi` in an administrator command prompt window.
## Troubleshooting
@@ -116,12 +213,12 @@ If needed, you can run it from the command line as administrator:
set __COMPAT_LAYER=WIN7RTM && start \path\to\BootCamp\Drivers\Apple\Bootcamp.msi'
```
Make sure to substitute `\path\to` with the location of the BootCamp folder.
Make sure to substitute `\path\to` with the location of the Boot Camp folder.
You can also open `Properties` on the file to change the compatibility to `Previous version of Windows` in case you have BootCamp 4.0 drivers (the above command does this already.)
You can also open `Properties` on the file to change the compatibility to `Previous version of Windows` in case you have Boot Camp 4.0 drivers (the above command does this already.)
:::
### iMac12,x Bluescreen after driver installation
Currently Intel's iGPU drivers for the HD 3000 series do not support UEFI booting in Windows. The recommended solution is to simply disable: [iMac 12,1 Windows 10 Boot Loop Fix Intel Graphics issue](https://zzq.org/?p=39)
Currently Intel's iGPU drivers for the HD 3000 series do not support UEFI booting in Windows. The recommended solution is to simply disable the iGPU: [iMac 12,1 Windows 10 Boot Loop Fix Intel Graphics issue](https://zzq.org/?p=39)

View File

@@ -2,8 +2,8 @@ from pathlib import Path
import subprocess
for i in [i for i in list(Path().resolve().glob("**/*.md")) if "node_modules" not in str(i.parent) and "_book" not in str(i.parent)]:
#bert = subprocess.run(['npx', 'markdown-link-check', '"' + str(i) + '"', '-c', '.markdownlinkcheck.json'], capture_output=True, shell=True, cwd=Path().resolve())
#bert = subprocess.run(['npx', 'markdown-link-check', '"' + str(i) + '"', '-c', '.markdownlinkcheck.json'], capture_output=True, shell=True, cwd=Path().resolve())
bert = subprocess.run('npx markdown-link-check "' + str(i) + '"', stdout=subprocess.PIPE, stderr=subprocess.STDOUT, shell=True, cwd=Path().resolve())
outpot = bert.stdout.decode().replace("\r", "").split("\n")
outpot = [i for i in outpot if ("FILE: " in i or " → Status: " in i) and " → Status: 429" not in i]
[print(i) for i in outpot]
output = bert.stdout.decode().replace("\r", "").split("\n")
output = [i for i in output if ("FILE: " in i or " → Status: " in i) and " → Status: 429" not in i]
[print(i) for i in output]

BIN
images/BOOTCAMP-1.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

BIN
images/BOOTCAMP-2.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 56 KiB

BIN
images/DISM-1.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

BIN
images/DISM-2.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 41 KiB

BIN
images/DISM-3.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 33 KiB

BIN
images/DISM-4.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 30 KiB

BIN
images/DISM-5.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB

BIN
images/DISM-6.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 19 KiB

BIN
images/DISM-7.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 13 KiB

BIN
images/DISM-8.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

BIN
images/DISM-9.png Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 26 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 782 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 984 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 150 KiB

After

Width:  |  Height:  |  Size: 214 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 265 KiB

After

Width:  |  Height:  |  Size: 257 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 359 KiB

BIN
images/usb11-chart.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 787 KiB

BIN
images/ventura.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 374 KiB

BIN
images/ventura_uc1.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 405 KiB

BIN
images/ventura_uc2.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 330 KiB

View File

@@ -1,9 +1,9 @@
/* Disable the non-existant Co-processor Bridge found on Arrendale, Lynnfield and Clarkdale Macs.
/* Disable the non-existent Co-processor Bridge found on Arrandale, Lynnfield and Clarkdale Macs.
* IOPCIFamily in macOS 11.0 up-to 11.2 was unable to handle ACPI probing when device was not present,
* therefore kernel panicing the machine.
* therefore kernel panicking the machine.
*
* This SSDT reports the device as disabled avoiding the probing.
* Not required for macOS 11.2 and newer, however recommended to alliviate pottential issues
* Not required for macOS 11.2 and newer, however recommended to alleviate potential issues
*/
DefinitionBlock ("", "SSDT", 2, "DRTNIA", "CPBGoff", 0x00001000)
{

View File

@@ -4,15 +4,15 @@
* hardware modifications.
*
* Notes:
* - SSDT must be used in conjuction with '_INI' to 'XINI' patch
* - SSDT must be used in conjunction with '_INI' to 'XINI' patch
* to reroute PCI0 initialization.
*
*
* - AMD drivers in macOS may still attempt to attach and kernel
* panic. Disable the dGPU with class-code/device-id spoof or
* with '-wegnoegpu'.
*
* - dGPU will reactivate with sleep-wake, additional process
* is needed to disable the dGPU.
* is needed to disable the dGPU.
* - ie. AMDGPUWakeHandler.kext for macOS
*
* Ref:
@@ -30,13 +30,13 @@ DefinitionBlock ("", "SSDT", 2, "DRTNIA", "dGPU_OFF", 0x00001000)
OperationRegion (IOGP, SystemIO, 0x0700, 0x51)
Field (IOGP, ByteAcc, NoLock, Preserve)
{
Offset (0x10),
P710, 8,
Offset (0x28),
P728, 8,
Offset (0x40),
P740, 8,
Offset (0x50),
Offset (0x10),
P710, 8,
Offset (0x28),
P728, 8,
Offset (0x40),
P740, 8,
Offset (0x50),
P750, 8
}
@@ -90,7 +90,7 @@ DefinitionBlock ("", "SSDT", 2, "DRTNIA", "dGPU_OFF", 0x00001000)
Store (0x07D9, OSYS)
}
}
// Disables dGPU
Store ("Requesting dGPU power off", Debug)
P728 = One // Switch select

View File

@@ -1,6 +1,6 @@
/* Removes PCI0's 32-bit Allocation Limitation to resolve PCIe device support on Sandy and
* Ivy Bridge Macs, mainly applicable for Audio and eGPU support.
* BUF0 to BUF1 patch required to override exisiting BuffObj in DSDT.
* BUF0 to BUF1 patch required to override existing BuffObj in DSDT.
*
* Source:
* https://egpu.io/forums/pc-setup/fix-dsdt-override-to-correct-error-12/

View File

@@ -19,7 +19,7 @@
<key>Enabled</key>
<false/>
<key>Comment</key>
<string>Patch CPBG for Arrendale, Lynnfield and Clarkdale</string>
<string>Patch CPBG for Arrandale, Lynnfield and Clarkdale</string>
<key>Path</key>
<string>SSDT-CPBG.aml</string>
</dict>
@@ -663,6 +663,42 @@
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Comment</key>
<string>Intel 80003ES2LAN Ethernet Patch</string>
<key>Enabled</key>
<false/>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>BundlePath</key>
<string>Intel82574L.kext</string>
<key>ExecutablePath</key>
<string>Contents/MacOS/Intel82574L</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Comment</key>
<string>Intel 82574L Ethernet Patch</string>
<key>Enabled</key>
<false/>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>BundlePath</key>
<string>AppleIntel8254XEthernet.kext</string>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleIntel8254XEthernet</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
@@ -1233,12 +1269,30 @@
<key>ExecutablePath</key>
<string>Contents/MacOS/NoAVXFSCompressionTypeZlib</string>
<key>MaxKernel</key>
<string></string>
<string>21.99.99</string>
<key>MinKernel</key>
<string>21.5.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>NoAVXFSCompressionTypeZlib-AVXpel.kext</string>
<key>Comment</key>
<string>Work-around 13.0+ Zlib kernel panic</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/NoAVXFSCompressionTypeZlib</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
@@ -1267,7 +1321,7 @@
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBTopCase</string>
<string></string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
@@ -1275,6 +1329,240 @@
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCButtons.kext</string>
<key>Comment</key>
<string>AppleUSBTCButtons</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBTCButtons</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyboard.kext</string>
<key>Comment</key>
<string>AppleUSBTCKeyboard</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBTCKeyboard</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>AppleUSBTopCase.kext/Contents/PlugIns/AppleUSBTCKeyEventDriver.kext</string>
<key>Comment</key>
<string>AppleUSBTCKeyEventDriver</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBTCKeyEventDriver</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>USB1.1-Injector.kext/Contents/PlugIns/AppleUSBOHCI.kext</string>
<key>Comment</key>
<string>USB1.1 - AppleUSBOHCI</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBOHCI</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>USB1.1-Injector.kext/Contents/PlugIns/AppleUSBOHCIPCI.kext</string>
<key>Comment</key>
<string>USB1.1 - AppleUSBOHCIPCI</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBOHCIPCI</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>USB1.1-Injector.kext/Contents/PlugIns/AppleUSBUHCI.kext</string>
<key>Comment</key>
<string>USB1.1 - AppleUSBUHCI</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBUHCI</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>USB1.1-Injector.kext/Contents/PlugIns/AppleUSBUHCIPCI.kext</string>
<key>Comment</key>
<string>USB1.1 - AppleUSBUHCIPCI</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleUSBUHCIPCI</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>CryptexFixup.kext</string>
<key>Comment</key>
<string>CryptexFixup</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/CryptexFixup</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>20.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>AppleIntelCPUPowerManagement.kext</string>
<key>Comment</key>
<string>Legacy Power Management (pre-XCPM)</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleIntelCPUPowerManagement</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>AppleIntelCPUPowerManagementClient.kext</string>
<key>Comment</key>
<string>Legacy Power Management (pre-XCPM) Helper</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/AppleIntelCPUPowerManagementClient</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>MonteAHCIPort.kext</string>
<key>Comment</key>
<string>MonteAHCIPort</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/MonteAHCIPort</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>KDKlessWorkaround.kext</string>
<key>Comment</key>
<string>KDKlessWorkaround</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/KDKlessWorkaround</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.3.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>BundlePath</key>
<string>RSRHelper.kext</string>
<key>Comment</key>
<string>RSRHelper</string>
<key>Enabled</key>
<false/>
<key>ExecutablePath</key>
<string>Contents/MacOS/RSRHelper</string>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>20.0.0</string>
<key>PlistPath</key>
<string>Contents/Info.plist</string>
</dict>
</array>
<key>Block</key>
<array/>
@@ -1511,7 +1799,7 @@
<key>Base</key>
<string></string>
<key>Comment</key>
<string>Reroute kern.hv_vmm_present patch (2)</string>
<string>Reroute kern.hv_vmm_present patch (2) Legacy</string>
<key>Count</key>
<integer>1</integer>
<key>Enabled</key>
@@ -1525,7 +1813,7 @@
<key>Mask</key>
<data></data>
<key>MaxKernel</key>
<string></string>
<string>21.99.99</string>
<key>MinKernel</key>
<string>20.4.0</string>
<key>Replace</key>
@@ -1535,6 +1823,36 @@
<key>Skip</key>
<integer>0</integer>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Base</key>
<string></string>
<key>Comment</key>
<string>Reroute kern.hv_vmm_present patch (2) Ventura</string>
<key>Count</key>
<integer>1</integer>
<key>Enabled</key>
<false/>
<key>Find</key>
<data>Ym9vdCBzZXNzaW9uIFVVSUQAaHZfdm1tX3ByZXNlbnQA</data>
<key>Identifier</key>
<string>kernel</string>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data></data>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>Replace</key>
<data>Ym9vdCBzZXNzaW9uIFVVSUQAZGlyZWN0X2hhbmRvZmYA</data>
<key>ReplaceMask</key>
<data></data>
<key>Skip</key>
<integer>0</integer>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
@@ -1565,6 +1883,66 @@
<key>Skip</key>
<integer>0</integer>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Base</key>
<string>_authenticate_root_hash</string>
<key>Comment</key>
<string>Disable Root Hash validation</string>
<key>Count</key>
<integer>0</integer>
<key>Enabled</key>
<false/>
<key>Find</key>
<data></data>
<key>Identifier</key>
<string>com.apple.filesystems.apfs</string>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data></data>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>Replace</key>
<data>uAAAAADD</data>
<key>ReplaceMask</key>
<data></data>
<key>Skip</key>
<integer>0</integer>
</dict>
<dict>
<key>Arch</key>
<string>x86_64</string>
<key>Base</key>
<string>__ZL22_vnode_check_signatureP5vnodeP5labeliP7cs_blobPjS5_ijPPcPm</string>
<key>Comment</key>
<string>Disable _csr_check() in _vnode_check_signature</string>
<key>Count</key>
<integer>1</integer>
<key>Enabled</key>
<false/>
<key>Find</key>
<data>AQAAAOgAAAAAhcB1</data>
<key>Identifier</key>
<string>com.apple.driver.AppleMobileFileIntegrity</string>
<key>Limit</key>
<integer>0</integer>
<key>Mask</key>
<data>//////8AAAAA////</data>
<key>MaxKernel</key>
<string></string>
<key>MinKernel</key>
<string>22.0.0</string>
<key>Replace</key>
<data>AQAAALgBAAAAhcB1</data>
<key>ReplaceMask</key>
<data></data>
<key>Skip</key>
<integer>0</integer>
</dict>
</array>
<key>Quirks</key>
<dict>
@@ -1635,6 +2013,8 @@
<integer>0</integer>
<key>HibernateMode</key>
<string>Auto</string>
<key>HibernateSkipsPicker</key>
<true/>
<key>HideAuxiliary</key>
<true/>
<key>LauncherPath</key>
@@ -1681,12 +2061,8 @@
<array/>
<key>Security</key>
<dict>
<key>AllowNvramReset</key>
<true/>
<key>AllowSetDefault</key>
<true/>
<key>AllowToggleSip</key>
<false/>
<key>ApECID</key>
<integer>0</integer>
<key>AuthRestart</key>
@@ -1767,6 +2143,8 @@
<false/>
<key>TextMode</key>
<false/>
<key>FullNvramAccess</key>
<false/>
</dict>
<dict>
<key>Arguments</key>
@@ -1787,6 +2165,8 @@
<false/>
<key>TextMode</key>
<true/>
<key>FullNvramAccess</key>
<false/>
</dict>
</array>
</dict>
@@ -1831,6 +2211,8 @@
<string>OCLP-Spoofed-MLB</string>
<string>revcpu</string>
<string>revcpuname</string>
<string>revblock</string>
<string>revpatch</string>
</array>
<key>7C436110-AB2A-4BBB-A880-FE41995C9F82</key>
<array>
@@ -1840,8 +2222,6 @@
<key>FA4CE28D-B62F-4C99-9CC3-6815686E30F9</key>
<array/>
</dict>
<key>LegacyEnable</key>
<false/>
<key>LegacyOverwrite</key>
<false/>
<key>LegacySchema</key>
@@ -2021,6 +2401,12 @@
<integer>0</integer>
<key>KeySubsequentDelay</key>
<integer>5</integer>
<key>PointerDwellClickTimeout</key>
<integer>0</integer>
<key>PointerDwellDoubleClickTimeout</key>
<integer>0</integer>
<key>PointerDwellRadius</key>
<integer>0</integer>
<key>PointerPollMask</key>
<integer>-1</integer>
<key>PointerPollMax</key>
@@ -2072,6 +2458,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2082,6 +2470,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2092,6 +2482,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2102,6 +2494,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2112,6 +2506,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2122,6 +2518,8 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
@@ -2132,6 +2530,56 @@
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
<string></string>
<key>Path</key>
<string>ResetNvramEntry.efi</string>
<key>Enabled</key>
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
<string></string>
<key>Path</key>
<string>AMDGOP.efi</string>
<key>Enabled</key>
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
<string></string>
<key>Path</key>
<string>NVGOP_GK.efi</string>
<key>Enabled</key>
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
<dict>
<key>Comment</key>
<string></string>
<key>Path</key>
<string>FixPCIeLinkRate.efi</string>
<key>Enabled</key>
<false/>
<key>Arguments</key>
<string></string>
<key>LoadEarly</key>
<false/>
</dict>
</array>
<key>Input</key>
@@ -2163,6 +2611,8 @@
<false/>
<key>ForceResolution</key>
<false/>
<key>GopBurstMode</key>
<false/>
<key>GopPassThrough</key>
<string>Disabled</string>
<key>IgnoreTextInGraphics</key>
@@ -2251,6 +2701,8 @@
<true/>
<key>ResizeGpuBars</key>
<integer>-1</integer>
<key>ResizeUsePciRbIo</key>
<false/>
<key>TscSyncTimeout</key>
<integer>0</integer>
<key>UnblockFsConnect</key>

BIN
payloads/Drivers/AMDGOP.efi Normal file

Binary file not shown.

Binary file not shown.

Binary file not shown.

Binary file not shown.

View File

@@ -583,6 +583,43 @@
<key>SHARED_SETTINGS_FOR_ALL_APPAREANCES</key>
<true/>
</dict>
<key>INSTALLATION TYPE</key>
<dict>
<key>HIERARCHIES</key>
<dict>
<key>INSTALLER</key>
<dict>
<key>LIST</key>
<array>
<dict>
<key>CHILDREN</key>
<array/>
<key>DESCRIPTION</key>
<array/>
<key>OPTIONS</key>
<dict>
<key>HIDDEN</key>
<false/>
<key>STATE</key>
<integer>1</integer>
</dict>
<key>PACKAGE_UUID</key>
<string>4312D78E-7981-41F2-A0E9-5C7E11AC61C5</string>
<key>TITLE</key>
<array/>
<key>TYPE</key>
<integer>0</integer>
<key>UUID</key>
<string>B3E23E4E-EF8D-4C21-933E-03C8187D415B</string>
</dict>
</array>
<key>REMOVED</key>
<dict/>
</dict>
</dict>
<key>MODE</key>
<integer>0</integer>
</dict>
<key>INSTALLATION_STEPS</key>
<array>
<dict>
@@ -645,7 +682,19 @@
<key>INTRODUCTION</key>
<dict>
<key>LOCALIZATIONS</key>
<array/>
<array>
<dict>
<key>LANGUAGE</key>
<string>English</string>
<key>VALUE</key>
<dict>
<key>PATH</key>
<string>intro.txt</string>
<key>PATH_TYPE</key>
<integer>1</integer>
</dict>
</dict>
</array>
</dict>
<key>LICENSE</key>
<dict>
@@ -659,6 +708,11 @@
<key>LOCALIZATIONS</key>
<array/>
</dict>
<key>SUMMARY</key>
<dict>
<key>LOCALIZATIONS</key>
<array/>
</dict>
<key>TITLE</key>
<dict>
<key>LOCALIZATIONS</key>
@@ -675,7 +729,65 @@
<key>PROJECT_REQUIREMENTS</key>
<dict>
<key>LIST</key>
<array/>
<array>
<dict>
<key>BEHAVIOR</key>
<integer>3</integer>
<key>DICTIONARY</key>
<dict>
<key>IC_REQUIREMENT_FILES_CONDITION</key>
<integer>1</integer>
<key>IC_REQUIREMENT_FILES_DISK_TYPE</key>
<integer>0</integer>
<key>IC_REQUIREMENT_FILES_LIST</key>
<array>
<string>/System/Library/CoreServices/OpenCore-Legacy-Patcher.plist</string>
</array>
<key>IC_REQUIREMENT_FILES_SELECTOR</key>
<integer>0</integer>
</dict>
<key>IC_REQUIREMENT_CHECK_TYPE</key>
<integer>1</integer>
<key>IDENTIFIER</key>
<string>fr.whitebox.Packages.requirement.files</string>
<key>MESSAGE</key>
<array>
<dict>
<key>LANGUAGE</key>
<string>English</string>
<key>VALUE</key>
<string>AutoPkg-Assets.pkg should never be used by end-users manually, please use the OpenCore-Patcher.app listed on Github</string>
</dict>
</array>
<key>NAME</key>
<string>Files</string>
<key>STATE</key>
<true/>
</dict>
<dict>
<key>BEHAVIOR</key>
<integer>3</integer>
<key>DICTIONARY</key>
<dict>
<key>IC_REQUIREMENT_OS_DISK_TYPE</key>
<integer>0</integer>
<key>IC_REQUIREMENT_OS_DISTRIBUTION_TYPE</key>
<integer>0</integer>
<key>IC_REQUIREMENT_OS_MINIMUM_VERSION</key>
<integer>110000</integer>
</dict>
<key>IC_REQUIREMENT_CHECK_TYPE</key>
<integer>1</integer>
<key>IDENTIFIER</key>
<string>fr.whitebox.Packages.requirement.os</string>
<key>MESSAGE</key>
<array/>
<key>NAME</key>
<string>Operating System</string>
<key>STATE</key>
<true/>
</dict>
</array>
<key>RESOURCES</key>
<array/>
<key>ROOT_VOLUME_ONLY</key>

View File

@@ -0,0 +1,7 @@
DO NOT RUN AUTOPKG-ASSETS MANUALLY!
THIS CAN BREAK YOUR SYSTEM'S INSTALL!
This package should only ever be invoked by the Patcher itself, never downloaded or run by the user. Download the OpenCore-Patcher.app on the Github Repository.
https://github.com/dortania/OpenCore-Legacy-Patcher/releases/

View File

@@ -1,40 +0,0 @@
diff --git a/BrcmPatchRAM/BlueToolFixup.cpp b/BrcmPatchRAM/BlueToolFixup.cpp
index a6e3c69..5e8a424 100644
--- a/BrcmPatchRAM/BlueToolFixup.cpp
+++ b/BrcmPatchRAM/BlueToolFixup.cpp
@@ -48,6 +48,27 @@ bool BlueToolFixup::start(IOService *provider) {
static const uint8_t kSkipUpdateFilePathOriginal[] = "/etc/bluetool/SkipBluetoothAutomaticFirmwareUpdate";
static const uint8_t kSkipUpdateFilePathPatched[] = "/System/Library/CoreServices/boot.efi";
+
+// Workaround 12.4 Beta 3+ bug where macOS may detect the Bluetooth chipset twice
+// Once as internal, and second as an external dongle:
+// 'ERROR -- Third Party Dongle has the same address as the internal module'
+// Applicable for BCM2046 and BCM2070 chipsets (BT2.1)
+static const uint8_t kSkipAddressCheckOriginal[] =
+{
+ 0x48, 0x89, 0xF3, // mov rbx, rsi
+ 0xE8, 0xE3, 0xF3, 0xFE, 0xFF, // call sub_1000c5bc6
+ 0x85, 0xC0, // test eax, eax
+ 0x74, 0x1D, // je loc_1000d6804
+};
+
+static const uint8_t kSkipAddressCheckPatched[] =
+{
+ 0x48, 0x89, 0xF3, // mov rbx, rsi
+ 0xE8, 0xE3, 0xF3, 0xFE, 0xFF, // call sub_1000c5bc6
+ 0x85, 0xC0, // test eax, eax
+ 0x72, 0x1D, // jb short loc_1000d6804
+};
+
static const uint8_t kVendorCheckOriginal[] =
{
0x81, 0xFA, // cmp edx
@@ -131,6 +152,7 @@ static void patched_cs_validate_page(vnode_t vp, memory_object_t pager, memory_o
}
else if (strcmp(path + dirLength, "bluetoothd") == 0) {
searchAndPatch(data, PAGE_SIZE, path, kVendorCheckOriginal, kVendorCheckPatched);
+ searchAndPatch(data, PAGE_SIZE, path, kSkipAddressCheckOriginal, kSkipAddressCheckPatched);
searchAndPatch(data, PAGE_SIZE, path, kBadChipsetCheckOriginal, kBadChipsetCheckPatched);
if (shouldPatchBoardId)
searchAndPatch(data, PAGE_SIZE, path, boardIdsWithUSBBluetooth[0], kBoardIdSize, BaseDeviceInfo::get().boardIdentifier, kBoardIdSize);

Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More