Become a MacRumors Supporter for $50/year with no ads, ability to filter front page stories, and private forums.
Status
The first post of this thread is a WikiPost and can be edited by anyone with the appropiate permissions. Your edits will be public.
I'm used to Automatic, you guys are used to non-Automatic and SMBIOS
This is the bit I think might potentially cause confusion and this that approach might be better in a spin off
Can you implement OC on your unit without using "Automatic" and by following the set up posted here ... or is it a requirement?

Automatic until recent commit would set some fake parameters
Valid point. They only just very recently updated "Automatic" to potentially make it stop setting unwanted hackintosh stuff.
 
Perhaps the default config should have it turned OFF so people pay attention. Otherwise they just leave it ON from my observations.
From what I've just been told and read, I think it is more a documentation thing. If you need it on some earlier machines, and on Catalina, then it seems absolutely fine that it is on by default, if there's also a clear message that, if you are using hybridization and if you have the bios number faked and if you find you are getting updates anyway without it (which is likely to be true on newer machines, and/or once you've got past Bug Sur 11.1) then you no longer need it.
 
Last edited:
From what I've just been told and read, I think it is more a documentation thing. If you need it on some earlier machines, and on Catalina, then it seems absolutely fine that it is on by default, the there's also a clear message that, if you are using hybridization and if you have the bios number faked and if you find you are getting updates anyway without it (which is likely to be true on newer machines, and/or once you've got past Bug Sur 1.1) then you no longer need it.
If you leave it ON the power management does not work. So it is not a good idea to stay permanently.
 
  • Like
Reactions: Bmju
PS Just to introduce myself, and why I even care about this, I'm not here asking for support with my config, but rather I've been looking into all this (here, here, here, here, etc.) and I care about this thread because my current understanding of what you guys offer is this. Which is good! At least, it is if you're happy with it!

So basically, I would be interested in discussing how your config works, and also in discussing minor tweaks that don't screw it up for Mac Pro's but maybe do improve it at the same time for other Macs.
 
This is the bit I think might potentially cause confusion and this that approach might be better in a spin off
Can you implement OC on your unit without using "Automatic" and by following the set up posted here ... or is it a requirement?


Valid point. They only just very recently updated "Automatic" to potentially make it stop setting unwanted hackintosh stuff.
Yes, I can, everything I said can easily be translated to the config here, and works just the same. I think, for convenience, that I'll do that (obviously testing it, to make sure I'm right) in future.

PS Yes, that was in response to an issue I raised! ;)
 
  • Like
Reactions: Dayo
Automatic until recent commit would set some fake parameters including SN even if omitted in the generic section. Supposedly this have changed. Have you tested the new behavior?
I asked for the changes!

Yes, I've tested it.
 
  • Like
Reactions: startergo
PS Just to introduce myself, and why I even care about this, I'm not here asking for support with my config, but rather I've been looking into all this (here, here, here, here, etc.) and I care about this thread because my current understanding of what you guys offer is this. Which is good! At least, it is if you're happy with it!

So basically, I would be interested in discussing how your config works, and also in discussing minor tweaks that don't screw it up for Mac Pro's but maybe do improve it at the same time for other Macs.
Maybe you can consider this also:
There is no need for full SN spoofing and is also mentioned there.
 
I disagree with the suggestion of using the plistlib format, because the OC sample docs use <array/> and <dict/> and I think it's more important to tie any formatting choices to what they do.
I agree but the Apple plistlib library formats this way the code. For the sake of easiness of comparing the code, I think is worth the adjustment.
 
Maybe you can consider this also:
There is no need for full SN spoofing and is also mentioned there.
I AM NOT DOING FULL SN SPOOFING! 🤪 I've actually be arguing against it. Even if I avoid talking in Automatic=true terms in future on here, for convenience of communication(!), I still assure you that using Automatic = true is 100% is not equivalent to doing full SN spoofing (you can do full SN spoofing, or not, with Automatic = true, or not): see here for a discussion about doing it, or not, with Automatic = true. And also OpenCoreAPFSLoader (widely used on the other thread, for a while) always used Automatic = true and (I 100% promise you!) was not a full SN spoofing approach.
 
I AM NOT DOING FULL SN SPOOFING! 🤪 I've actually be arguing against it. Even if I avoid talking in Automatic=true terms in future on here, for convenience of communication(!), I still assure you that using Automatic = true is 100% is not equivalent to doing full SN spoofing (you can do full SN spoofing, or not, with Automatic = true, or not): see here for a discussion about doing it, or not, with Automatic = true. And also OpenCoreAPFSLoader (widely used on the other thread, for a while) always used Automatic = true and (I 100% promise you!) was not a full SN spoofing approach.
I think @startergo was just emphasizing that point which we all agree on. Don't worry about not mentioning Automatic=true. Acidanthera's receptiveness to the issues you've raised have made automatic mode a possibility for effective hybridization. In fact, we should explore the new possibilities with OC as they arise.
 
I agree but the Apple plistlib library formats this way the code. For the sake of easiness of comparing the code, I think is worth the adjustment.
Unfortunately too many people will use too many different tools (each with their own advantages), I think, and OC itself is tied to using Xcode as its plist tool, I'm sure! Here, I found the ref in Configuration.pdf:

3.2 Installation and Upgrade
...
OC config, just like any property lists can be edited with any stock textual editor (e.g. nano, vim), but specialised software may provide better experience. On macOS the preferred GUI application is Xcode. For a lightweight cross-platform and open-source alternative ProperTree editor can be utilised.
...
I've just now double-checked this, because obviously it matters, and Xcode does produce <array/> and <dict/> output for empty elements.
 
Last edited:
  • Like
Reactions: cdf and Dayo
I agree but the Apple plistlib library formats this way the code. For the sake of easiness of comparing the code, I think is worth the adjustment.
@TECK I appreciate you're doing a lot of work for the benefit of others, working on this thread particularly, and for some time! So all other things being equal, of course you get to choose the preferred tools and not me! But the format which (admittedly) I've got used to seeing is the format the OC project themselves use, and recommend. For that reason (only!) I don't think the choice of tools, if made to give greatest ease of use to everybody who comes to the project, and wants to link what they learn with the greater OC world, is a free choice. :-/

Is plistlib the Python library I'm finding? Did you mean plutil? I've got myself slightly confused about that, but I don't think it affects the above... (I hope!).
 
Unfortunately too many people will use too many different tools
There is only one official library to programatically build macOS .plist files, the plistlib library (not plutil) which is part of the OS. I honestly think we are nitpicking now. On my side, I will continue to use the format plistlib generates, for simplicity reasons. What is important for me is to get a configuration that passes the ocvalidate check.
 
Last edited:
There is only one tool to build macOS .plist files, the plistlib library.
In that case, the library should be able to easily convert to the short syntax, which Xcode and plutil use. Using the short syntax is the right choice: it is used by the Acidanthera documentation and samples.
 
In that case, the library should be able to easily convert to the short syntax, which Xcode and plutil use.
plutil does not convert empty elements to escaped elements. The fact is using <array></array> will not flag any syntax warnings or errors in any code validator. BTW, is very easy to fix that programatically with Python, but I prefer to keep whatever the Apple developers designed to produce with that library, as end-code. If Xcode produces <array/>, then eventually plistlib will have that addressed also and the issue will be corrected automatically.
 
Last edited:
plutil does not convert empty elements to escaped elements. The fact is using <array></array> will not flag any syntax warnings or errors in any code validator.
It is 100% not a syntax error, absolutely 100% agreed. But I've also just checked that too, and plutil -convert xml1 config.plist 100% does convert <dict></dict> and <array></array> to <dict/> and <array/>. (At least on my Mac, with my unmodified - AFAIK - version.)

I am 100% not saying in any way that you should use a different library, only that my Johnny-come-lately vote, for what it is worth (if anything), having seen that the question was in the air, is only to suggest that this project (the stuff published on p.1) should not change format.
 
Yes it does
You're right it does. I don't know what to say. On one side, I agree this is the right format, on the other hand, I hate to add code manipulation when the library should be able to do it out of the box. I will process the file with plutil, I guess.
 
  • Like
Reactions: cdf
<dict></dict> and <array></array> to <dict/> and <array/>.
I presume it keeps <string></string> even though <string/> is apparently valid (I think).

For empty items, I personally use the short syntax for "dict" and "array" and "<TagName></TagName> for others".
Never on two lines for the long syntax but that is just a preference thing.
 
One last thing - honestly!

Regarding passing ocvalidate checks, I also saw this was being discussed and wanted to offer some quick, recent info. @TECK I think we are in agreement about this one - and probably not really in any disagreement about plist libraries, either, so sorry!

I don't know if you guys spotted that - also in response to an issue I posted - the OC docs have recently been updated to make clear that any of the DataHub, Memory, PlatformNVRAM and SMBIOS sections can be validly completely omitted if they are not being used. (Apparently this was always true, just not completely clearly documented.)

As you already know any sections that are present should have all their properties present to pass; but in your case that is only SMBIOS out of the above, the other three can just be removed, removing tons of errors.

Generic apparently should never be omitted, and still needs filling out, but that is many less errors than currently.

Sorry if that's all already known!

EDIT 1: I got the info about Generic wrong, fixed.

EDIT 2: See comments below; although the principle that you can sometimes remove these sections is correct, I have ended up making my own errors in translation and you can't remove these if you are using Automatic=false. This might - to the very open-minded! ;) - potentially be an argument to move to using the Automatic=true method of weak, hybrid faking? :) (But, to be clear, I am 100% not, ever, advocating strong, full-serial faking on a legacy Mac!)
 
Last edited:
I presume it keeps <string></string> even though <string/> is apparently valid (I think).

For empty items, I personally use the short syntax for "dict" and "array" and "<TagName></TagName> for others".
Never on two lines for the long syntax but that is just a preference thing.
That sounds to me like the OC/Xcode/plist standard.
 
Working perfect for me to unlock with watch, see signature what BT card I use.
TECK - did you have to do any patching in Big Sur? I patched both Mojave and Catalina to enable Continuity/Apple Watch unlock but poking in Big Sur shows Continuity disabled for my MacPro5,1. I'll have to open my machine to see what Broadcom card I have though it works for Bluetooth and WiFi fine in Big Sur.
 
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.