dortania / bugtracker

Dortania Bugtracker
110 stars 7 forks source link

Feature Request: Disclaimer that from OC 0.7.3 onwards an updated version of ProperTree is needed for a Clean Snapshot of config.plist #243

Open ThaoDChan opened 2 years ago

ThaoDChan commented 2 years ago

Guide in question:

Link to page with the issue: https://dortania.github.io/OpenCore-Post-Install/universal/update.html#updating-opencore https://dortania.github.io/OpenCore-Install-Guide/troubleshooting/extended/kernel-issues.html#stuck-on-eb-log-exitbs-start

Issue with the page / Possible fixes: Please add a disclaimer that from OC 0.7.3 onwards an updated version of ProperTree is needed to perform a Clean Snapshot of the config.plist file. Most users updating will already have installed an old version ProperTree and will not deem it necessary to update. A clean snapshot performed with an outdated version of ProperTree will look like everything is OK but because values are stored in an array from OC 0.7.3 onwards, the config.plist file will be faulty and thus result in a kernel panic on boot. In my case the kernel crash occured after [EB|#LOG:EXITBS:START] so it might be a good idea to also put a disclaimer regarding the usage of an outdated version of ProperTree in the Troubleshooting guide.

Possible disclaimer: "Please note: From OC 0.7.3 onwards an updated version of ProperTree is needed to perform a Clean Snapshot of the config.plist file. A clean snapshot performed with an outdated version of ProperTree will result in a faulty config.plist."

Personal anecdote: I was ripping my hair out for about 2 days trying to update from OC 0.6.8 to OC 0.7.4 and getting stuck on [EB|#LOG:EXITBS:START] during boot. Tried every suggestion in the troubleshooting guide with no luck. Especially annoying since my old EFI still worked like a charm and the EFI folders were identical (just with updated kexts and drivers ofc). Comparing the two config.plist files with Meld also showed no significant differences apart from a few new entries. Finally found the solution (updating ProperTree) in a reddit post and everything works flawlessly now.

1Revenger1 commented 2 years ago

We already tell people to run it through an updated version of ocvalidate and compare it with the new sample.plist. OpenCore already gives a schema warning if something isn't right like that - I think a better warning is to not assume that ProperTree is to always use ocvalidate or some other tool and not just rely on ProperTree. Guess I can add a better warning in the update guide, but I don't think it belongs in the troubleshooting guide.

chriswayg commented 2 years ago

I experienced such problems with ProperTree as well and it messed up my Config.plist file. ProperTree should add an auto-update feature. I stopped using ProperTree for this reason and am using OCAuxiliaryTools instead which has a proper auto-update and keeps in sync with the current version of OpenCore including Config.plist structure changes.

The root of this problem is that the Config.plist does not have any indication of which version of OpenCore it is actually compatible with. 3rd party apps like ProperTree could give a warning, if they could detect version incompatibility, but for whatever reason the developers of OpenCore never added version compatibility information to the Config.plist specification.