zearp / OptiHack

Dell OptiPlex 7020/9020 Hackintosh Stuff
https://zearp.github.io/OptiHack/
155 stars 53 forks source link

Is macOS Monterey the end of the line for our Optiplex machines? #74

Closed zearp closed 1 year ago

zearp commented 1 year ago

Monterey is the last macOS that still supports the Haswell platform with 1 SMBIOS.

Ventura drops support for the Haswell platform all together. This means CPU/iGPU are no longer natively supported.

While it might be possible to get things to work I am not very confident the hardware will be as well supported as we would need to use parts of older macOS versions in Ventura to gt things to work. While it may make some part function again it is not ideal.

I want the SMBIOS we use to be supported by the macOS version we run. Because the SMBIOS controls so much it is one of my personal requirements that it matches at least the platform (Haswell).

I will do testing using the OCLP project if it can make things like power management and iGPU work properly but I will not support it. OCLP is a nice project buit it has some caveats when it comes to security and the vanilla state of the install. Both security and the vanilla state are impacted by OCLP. Resulting in a less secure machine that is no longer vanilla (no modifications to the OS itself).

I will keep updating the EFI and maybe create a few base EFI's targeted at the different macOS versions you want to to run, this to prevent update nags or the machine updating itself without you wanting it when you leave auto update on. While Ventura might run I will not recommend it for daily usage as stability and security won't be as good as when using Monterey or older.

As long as Monterey receives security updates our old trusty Optiplex machines will purr along happily. After that it might be best to install Linux or if you want tinker with OCLP at your own peril. Of course you can run older macOS version just fine for as long as you wish, but keep in mind it might not be fully secure. But as a machine thats not connected directly to the internet it will do fine. I use Catalina on one of my 7020s for some music related things and it does not need any direct internet access.

JohnAker33 commented 1 year ago

What about using a supported AMD dGPU with Ventura to get around the unsupported graphics problem ? I was lucky enough to get this new WX 2100 for $39 on Ebay. Works great with Monterey with a Device-ID spoof.

188325112-cbdef426-1fcd-4f75-89e7-317de6ae9373 I'll try it with Ventura once it's out of beta. Fits perfectly in the Optiplex SFF models. What do you think would be the best SMBIOS choice for Ventura when using this in a 7020 or 9020 ? I'm using iMac17,1 and running the iGPU headless with Monterey.

zearp commented 1 year ago

Even with another video card the CPU would be unsupported. Apple doesn't give much info on SMBIOS but if you check what they share you can see it does a lot. Including power management, voltages and frequencies. I'm not sure if its possible to get proper CPU support in Ventura without any Haswell SMBIOS support in it.

https://opensource.apple.com/source/AppleSMBIOS/

zearp commented 1 year ago

Updated the EFI to the latest OpenCore and its kexts. Might improve certain things, might break things or might not have noticeable differences lol.

https://github.com/zearp/OptiHack/releases/tag/v4.3b

Haven't fully tested it yet due to my test 7020 being used as normal desktop now.

mgrimace commented 1 year ago

Hey, following along here. Out of curiosity the beta EFI states: "Not fully tested and not really necessary to update since the latest stable EFI supports Ventura which will be the last supported macOS." Is that meant to say Monterey for our systems, or am I confused?

JohnAker33 commented 1 year ago

Hey, following along here. Out of curiosity the beta EFI states: "Not fully tested and not really necessary to update since the latest stable EFI supports Ventura which will be the last supported macOS." Is that meant to say Monterey for our systems, or am I confused?

Just for fun, I tried the new 0.8.5 EFI with the latest Ventura PB on my 7020 SFF. The install went perfectly using iMacPro1,1. DRM content plays, didn't test but I'm certain 4K/60 will work because I have the WX-2100 installed. It looks like iMac18,2 is the closest SMBIOS because those used a Radeon Pro RX560 dGPU. Anyone with the MT model could install an RX460 or 560 or a WX-4100 and have native graphics support. OpenCL and Metal tests with GeekBench 5 showed expected results.

Screenshot 2022-09-07 at 11 25 07 AM Screenshot 2022-09-07 at 11 28 19 AM

mgrimace commented 1 year ago

Updated the EFI to the latest OpenCore and its kexts. Might improve certain things, might break things or might not have noticeable differences lol.

https://github.com/zearp/OptiHack/releases/tag/v4.3b

Haven't fully tested it yet due to my test 7020 being used as normal desktop now.

Testing on Dell 7020 SFF on Monterey 12.5.1. Everything working out of the box including 4k/60 on primary monitor, and secondary 1080p monitor. Only modified hardware is that I added the Fenvi HB1200 network + bluetooth card. This works out of the box, with the USB routed outside the box to a port in back. As a result, I made a minor change to the USB port map to designate that port as "internal" so the various Handoff functions work as expected.

I obtained a hash-sum mismatch error with this EFI, but I've been getting those with the last few EFIs. It is apparently related (inexplicably) to bluetooth and possibly the above hardware changes. It's a mysterious issue also affecting stock, and others report that it's related to their bluetooth as well (one relevant reddit thread). At any rate, the steps to fix (for now) appear to be reset NVRAM, and a sudo purge. This has worked for me so far, I'll monitor. Otherwise I'll dip back to my last working EFI.

That aside, the beta seems to be working as expected with nothing unusual so far on Monterey. The hash-sum mismatch thing appears to be system specific (me), not the EFI.

@JohnAker33 That is very intriguing re. the GPU. I'm seeing those on ebay as well around the same price, and that's not a huge financial barrier to squeeze out one more OS update out of this old box. You only changed smbios? Thanks so much for sharing that and I look forward to hearing how it all works with the public release!

zearp commented 1 year ago

The hash mismatches are a bit mysterious. I got them once or twice after a clean install or upgrade but they don't last. I think it has to do with apfs/snapshots/file system sealing. I don't think it is caused or can be solved by the EFI.

I tried to find some details on how/why it happens but haven't found out much info. Very difficult to fix something if we don't really know what the cause is. Even on the Appel developers forum there are no real answers, just people guessing and speculating.

https://developer.apple.com/forums/thread/684276

Some people also get panics alongside it and it seems macOS updates can trigger them. Someone said running the purge command as root (sudo purge) fixes it but the purge command just flushes a disk cache. Doesn't seem to have anything to do with checking of hashes. Somehow, somewhere the hash it made during install or when updating a snapshot either isn't saved properly so when it checks there is a mismatch or something else is happening.

It is a bit annoying Apple doesn't have some kind of spec we can check to see what circumstances mess up the hash and trigger the warning. I don't fancy spending too much time reading random blog posts and forums of people claiming to have a fix while Appel should have documentation about what triggers this in the first place. Only then we can actually do something about it.

Have you found a way to reliably get the hash mismatch? Like I said I personally only encountered the message a couple times and it always went away on its own and has not come back.

As for upgrading the video card to work with Ventura, it is not bad but still leaves you with an unsupported CPU. It is als likely that at least the iGPU can be made to work in Ventura but it will only support Metal 1 and 2 while Ventura leans heavily on Metal 3. So at some point even with old kexts and fully working acceleration macOS features may simply not function as the iGPU lacks Metal 3 support. I'm not sure what kind of Metal version the WX-2100 supports.

When changing SMBIOS please be sure to monitor and compare the clock frequencies and voltages with hwmonitor and Intel's power gadget. While things may work it is using an SMBIOS not made for chipsets and CPU. It can lead to issues and instability. I will not use, support or recommend such installs. It is prolly cheaper and easier to find another cheap small form factor Optiplex or Lenovo that uses a newer platform.

It is prolly unlikely but surely possible to slow ruin the hardware when using an SMBIOS that could send voltages that are too high or low or use frequencies that aren't supported properly. Not that it matter for a cheap machine but still doesn't fit within the scope of my idea of running a hackintosh. I only want to use macOS versions that natively support the hardware it runs on without having to resort to using kexts form older versions, modifying the filesystem itself or anything like that.

Monterey will get security updates for at least another 3 years. I'm ok with that. I'm also biased as I quite like Monterey and don't really like Ventura. It has become iPadOS where you have to click and navigate a lot more to get simple things done. The system Preferences is the worst. Really terrible. But thats subjective. I still run Catalina on most of my 7020s as its just rock solid and very stable for production usage and still receives security updates and new Safari versions as well.

Unless the OCLP can sort out the platform issues relating to h/w control, Monterey will be the last macOS to run smoothly and fully supports the Haswell platform. Hacks ways may work but I don't think it will be as smooth or stable as when the OS actually supports the hardware it runs on natively. IMHO the SMBIOS should always match the actual h/w platform.

Just my 2 cents lol.

PS: I wonder why the latest EFI so much smaller. It lost about a megabyte compressed. Either the builtin zip of macOS got better or OpenCore and the kexts have been on a diet!

mgrimace commented 1 year ago

Re. Hash mismatch - started appearing whenever I updated my EFI around 4.2 release or higher. No logical reason why (no hardware change, though OS update may be the culprit). When I rolled it back to my last safe EFI (around 4.0 release) no error. Never had an error on earlier releases. I think EFI is a red herring though, and more likely to do with NVRAM because I wasn't in the habit of clearing it after updating the EFI. On the beta EFI, clearing NVRAM seems to have completely resolved the issue.

Specifically, the error popup triggered whenever a bluetooth event happened (e.g., handoff, connected mouse, airpods, etc.). Previously fixable by killing bluetoothd, then reproducible by invoking something bluetooth. As it is, I cannot reproduce the error now (yay!) after clearing NVRAM, and a sudo purge (which is likely placebo).

Re. update - I didn't realize that the Ventura upgrade path (with card + SMBIOS change) required spoofing the processor. I plan to stay on stock/native Haswell + Monterey for stability as well. I don't need the new feature/design (haven't honestly bothered to look at Ventura yet). Mostly a curiosity at this stage, and agree re. stable/smooth with full support as a priority for my use.

All of that to say, the current EFI beta appears to be working smoothly for me (Monterey 12.5.1), no crashes or bugs to report, and hash mismatch appears easily fixable (if others experience it) with an NVRAM clear at boot.

Thanks for all the work folks!

mgrimace commented 1 year ago

Hmm, might have spoken too soon - hard crash this evening, likely low mem related, using Chrome and a virtual tabletop gaming plugin to play with some friends that absolutely devoured my free memory.

After crash to reboot, hash-sum mismatch too (no specific actions prompting it) not fixable with reboot and nvram wipe. Going to downgrade back to working EFI for the time being!

JohnAker33 commented 1 year ago

You only changed smbios? Thanks so much for sharing that and I look forward to hearing how it all works with the public release!

Add this to config.plist DeviceProperties using a Plist editor.

Screen Shot 16

Spoofing an AMD RX460 which is a Baffin GPU because the WX-2100 is Lexa based. Lexa is unsupported.

JohnAker33 commented 1 year ago

I'm also biased as I quite like Monterey and don't really like Ventura. It has become iPadOS where you have to click and navigate a lot more to get simple things done. The system Preferences is the worst. Really terrible. But thats subjective. I still run Catalina on most of my 7020s as its just rock solid and very stable for production usage and still receives security updates and new Safari versions as well.

Yes, Ventura has become much more like a desktop version of iPadOS. I like Stage Manager but really doubt that I would use it much. Other than that I don't see a good reason to upgrade. I started using Macs and OS X / macOS back in 2005 because I really liked the Tiger GUI and the ease of use compared to XP. Later changes to the GUI in Snow Leopard and beyond were welcomed. After Mavericks things started to go in the direction of making OS X look like iOS. What we have today is the end result of that. Glad that we can keep using Monterey for at least 3 more years but I really prefer the look of the desktop GUI of Catalina and older macOS versions.

camerowo commented 1 year ago

FWIW, I've been seeing Optiplex 3060s are a great solution with the UHD 630 Graphics. Might be an easy(ish) transition for the SSDT and such. Working on it now.

JohnAker33 commented 1 year ago

I've been seeing Optiplex 3060s are a great solution with the UHD 630 Graphics. Might be an easy(ish) transition for the SSDT and such. Working on it now.

The 3050's with an i5-7500 (HD630) also have native support in Ventura. Often sell for about 100 dollars on Ebay for the SFF version. Prices will likely go even lower the next 6-12 months.

zearp commented 1 year ago

I guess the short answer is yes and the long answer is hopefully no.

I will do some extensive testing hopefully soon with OCLP as they seem to have beta support for Haswell in it now. So probably Ventura will run with OCPL but it will be less secure cuz as far as I know some security stuff has to be disabled. But maybe that will be fixed too.

I only want to support OCLP/Ventura if it means we have full and proper power management, SIP, file system protections and also FileVault2 drive encryption. Without those it's just not very secure and also means security updates might not be offered. I recall newer macOS versions do not offer any macOS security updates when SIP and/or other security mechanisms are disabled.