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.

0403979

Cancelled
Original poster
Jun 11, 2018
1,402
1,735

How to update Catalina

Updating Catalina has become quite a ride since Apple stopped delivering full installers in summer 2020. Without additional tools the software update process is broken, too. So there is no direct way to apply security updates.

You need to use tools provided by @jackluke from GitHub or this post and to follow this documentation. Pre APFS systems without an APFS patch installed need an an additional step using the USBOpenCoreAPFSloader3 available on GitHub.

Apple offers official updates and during development and test phase so called beta versions. You can switch between the normal seed and the developer seed offering beta versions of updates using this Apple tool .

Fair warning: Please do not jump onto each available beta version unless you have a stable fall back to boot from. All this is entirely unsupported.

Machine Support

MacPro3,1​
MacPro4,1​
iMac8,1​
iMac9,1​
iMac10,x​
iMac11,x (systems with AMD Radeon HD 5xxx and 6xxx series GPUs will be almost unusable when running Mojave. More details are located in the Current Issues section below.)​
iMac12,x (systems with AMD Radeon HD 5xxx and 6xxx series GPUs will be almost unusable when running Mojave. More details are located in the Current Issues section below.)​
MacBookPro4,1​
MacBookPro5,x​
MacBookPro6,x​
MacBookPro7,1​
MacBookPro8,x​
MacBookAir2,1​
MacBookAir3,x​
MacBookAir4,x​
MacBook5,1​
Macmini3,1​
Macmini4,1​
Macmini5,x​
MacBook4,1*​
MacBook5,2​
MacBook6,1​
MacBook7,1​
Xserve2,1​
Xserve3,1​

Video Card Support

Pre-Metal AMD video cards (Radeon HD 6xxx series and older without acceleration, Radeon HD 4xxx series and older with acceleration.)
Pre-Metal Nvidia video cards (GeForce 5xx series and older without acceleration, GeForce 3xx Series and older with acceleration i.e. 8600M(GT)/8800M(GT), 9400M/9600M(GT), 320M/330M)
Pre-Metal Intel video cards (Intel HD Graphics 3000 and Intel HD Graphics Arrandale)

Installation

macOS Catalina Patcher

To install on your machine, you can download and run @dosdude1's macOS Catalina Patcher application, which will let you download a copy of the latest installer app from Apple and create a bootable installer drive for use on unsupported Macs. It contains all the patches necessary to achieve the hardware support listed above. The installation guide can be found here and an installation guide video here.

macOS patcher (discontinued)​

More advanced users may consider using macOS Patcher, which is a command line-based tool that provides the same hardware support, while also adding support for MacBook4,1 systems. Please note that this project is no longer supported by the developer.

APFS ROM Patcher

Warning: This tool could irreversibly brick your EFI chip. Please exercise caution with machines that have multiple EEPROM definitions. Relevant information can be found here and here. The APFS ROM patcher can be found here. Use the password apfs to decrypt the ZIP.

Known Issues

Currently, it is not possible to get full graphics acceleration when running Catalina on a system with a Radeon HD 5xxx or 6xxx series video card. Catalina will be almost unusable without graphics acceleration. This includes the 15" and 17" MacBook Pro systems (MacBookPro8,2 and 8,3). If you want to enable GPU acceleration on these machines, you'll need to disable the AMD video card (This will work on MacBook Pro 8,2 and 8,3 systems ONLY. You CANNOT disable the AMD GPU in an iMac.) Weird colors will also be produced when running Catalina with one of these video cards installed/enabled. To disable the AMD GPU on a 2011 MacBook Pro 8,2 or 8,3, follow the guide found here.​
In the Photos app, there is no tab for "All Photos." However, if you right-click any photo, you can choose, "Show in All Photos" and the expected "All Photos" functionality is displayed.​
You can also set up a smart album, call it "All Photos" and use search criteria "Date Captured is after 1/1/1970".​
The Intel GMA X3100 in the MB4,1 is not fully supported (framebuffer only, no acceleration). Catalina will be almost unusable without graphics acceleration.​

Builds and Installer Versions

2019/10/07 10.15.0 Final, build 19A583, installer 15.0.33
2019/10/29 10.15.1, build 19B88, installer 15.1.03
2019/12/10 10.15.2, build 19C57, installer 15.2.02
2020/01/29 10.15.3, build 19D76, installer 15.3.00
2020/03/24 10.15.4, build 19E266, installer 15.4.01
2020/04/09 10.15.4 supplemental, build 19E287, installer 15.4.02
2020/05/26 10.15.5, build 19F96, installer 15.5.01
2020/06/01 10.15.5 supplemental, build 19F101, installer 15.5.02
2020/07/xx 10.15.6, build 19G73, installer 15.6.00
2020/08/13 10.15.6 supplemental, build 19G2021, installer 15.6.00
2020/09/24 10.15.7, build 19H2, installer 15.7.02
2020/11/13 10.15.7 supplemental, build 19H15, installer 15.7.03

2019/06/04 10.15.0 beta 1, build 19A471t, installer 15.0.11
2019/06/17 10.15.0 beta 2, build 19A487l, installer 15.0.15
2019/07/02 10.15.0 beta 3, build 19A501i, installer 15.0.17
2019/07/16 10.15.0 beta 4, build 19A512f, installer 15.0.18
2019/07/31 10.15.0 beta 5, build 19A526h, installer 15.0.21
2019/08/19 10.15.0 beta 6, build 19A536g, installer 15.0.23
2019/08/28 10.15.0 beta 7, build 19A546d, installer 15.0.25
2019/09/10 10.15.0 beta 8, build 19A558d, installer 15.0.27
2019/09/23 10.15.0 beta 9, build 19A573a, installer 15.0.30
2019/09/30 10.15.0 beta 10, build 19A578c, installer 15.0.31
2019/10/03 10.15.0 beta 11, build 19A582a, installer 15.0.32
2019/12/17 10.15.3 beta 1, build 19D49f
2020/01/14 10.15.3 beta 2, build 19D62e
2020/01/24 10.15.3 beta 3, build 19D75a
2020/02/05 10.15.4 beta 1, build 19E224g
2020/02/19 10.15.4 beta 2, build 19E234g
2020/02/26 10.15.4 beta 3, build 19E242d
2020/03/03 10.15.4 beta 4, build 19E250c
2020/03/10 10.15.4 beta 5, build 19E258a
2020/03/18 10.15.4 beta 6, build 19E264b
2020/04/01 10.15.5 beta 1, build 19F53f
2020/04/16 10.15.5 beta 2, build 19F62f
2020/04/29 10.15.5 beta 3, build 19F72f
2020/05/08 10.15.5 beta 4, build 19F83c
2020/05/20 10.15.5 beta 5, build 19F94a
2021/04/15 10.15.7 Security Update 2021-002 beta, build 19H1027
2021/04/20 10.15.7 Security Update 2021-002 beta, build 19H1030
2021/04/22 10.15.7 Security Update 2021-003 beta, build 19H1208 <do not install! SMB networking faulty>

Credits

@ASentientBot - Achieved full graphics acceleration, achieved semi-acceleration, fixed IOHID timeout, fixed AirPort, fixed Xcode 11 Metal crashes
@jackluke - Fixed brightness control under semi-acceleration, fixed Wi-Fi AirDrop option, fixed Continuity with a dongle, fixed AirDrop with Broadcom cards
@parrotgeek1 - Developed LegacyUSBInjector, developed SIPManager, developed NDRVShim, source
@Czo - Fixed SUVMMFaker, source
@oliveira131 - Developed script to apply patches for AirDrop with Broadcom cards and Continuity with a dongle (from jackluke)
Apple - Fixed IOHID timeout, fixed Xcode 11 Metal crashes, fixed Siri Metal crashes, fixed Photos Metal crashes.
Don't know why you did it, but, thanks Apple.

Moderator Note
Please do not ask for, or provide help getting developers profile information to access unauthorised beta software on MacRumors. If you are not a developer, sign up to the Apple Beta Software Program to get the official public beta releases.


 
Last edited:
Alright, so for those who were wondering, myself and @parrotgeek1 have been working on this acceleration issue on our own, and have come to the conclusion that it is not going to be possible to achieve graphics acceleration on non-Metal video cards in Catalina. This is for various reasons, but the main one is the SkyLight and CoreDisplay dependencies. In Catalina, SkyLight and CoreDisplay have been changed greatly, and are interdependent on each other. Meaning, if you replace one from an older version of macOS, you must replace the other, otherwise you'll be left with a ton of unresolved symbols. The problem with doing this, though, Catalina's AppKit relies on all the new functions present in the Catalina CoreDisplay framework. You cannot use a copy of AppKit from an older macOS version, without causing a ton more unresolved symbols.

TLDR, based on this analysis, non-Metal GPU acceleration is not, and will not be possible on 10.15 Catalina. With that said, I will not be releasing the "usual" patcher for 10.15. I do not believe the general public should be using a copy of macOS without full graphics acceleration (I sure as heck know I wouldn't want to), and I'm not going to release a patch that results in extremely poor system performance for the end user (not to mention I would get thousands of complaints per day about it if I did).

I will, however, more than likely make somewhat of a "cut down" patch, designed for use only on Mac Pro systems and some iMacs that have had their video cards upgraded.

I'm as disappointed as you all are about this discovery, and deeply apologize I won't be able to provide a patcher because of it.
 
Thx. I'd mention one in public beta, but don't want to promote on this thread. I'll just say and an X to my handle. Google. Has to do with SXM. Sort of a revival.


Good question. I am pretty sure he will make a patch tool for Catalina. I think the hold up is mainly no acceleration on non-metal GPUs. And we are only on Dev. beta 1. Pretty early.

I was not that involved the last go around. dosdude1 could be worn out as well. This stuff is pretty demanding for with people just doing this in their free time.

I did notice that Power Management is not working on MP3,1. No charging via USB. I am gonna try some manually patches from Mojave. And No still WiFi or Sound. haven't done any patches. I've been busy just coming up with good clone techniques. And deciding how committed I am to be using Catalina when I have production work to get back to. A lot of devs will be great new stuff! and then great old stuff that has to be at least maintained. If you keep the logic away from the UI though. SwiftUI should not be a big deal. However, I have some Apps were the UI is extensive even on a simple 4 page app and unless going to SwiftUI makes a lot of sense for awhile I will probably support iOS12 for at least a 6 months to a year. And then SwiftUI 2.0 will be out.

I am glad my MP3,1 should make it another year. It is too bad more machines will be cutoff.

My iPad mini 2 which just got iOS12 added to it Nov. 2018. It was in iOS land for a couple years. Apple finally beefed it up but just yanked it again with iPadOS. I think mainly because it did have not a pencil. Only reason I can think. I may get an iPad mini 4 just to stay current. Not sure yet.

I do hope Apple takes SwiftUI to the NeXT level: Android and Windows 10. It would take a lot but they could dominate the landscape. I mean if I have an App that runs on desktop, mobile, watch and TV, wouldn't you want it to run on the same size screens on other platforms? SwiftUI is a good first step but it could be just a glimpse of what Apple is up to.

I think we could do something really cool for dosdude1. Even if he says or goes, I think we should pool our money together and get dosdude1 an amazing gift. I can think of only 1 thing that would be fitting and I think there are enough people here to do it. With over 2.8 million readers on the Mojave thread. I don't think it would take much to get dosdude1 the ultimate Mac gift. Just throwing it out there because he has done so much for the unsupported Mac community. This is not to take away from anyone else, just a good nod to someone who is kind of a big deal.
Wow, well let me just say I really appreciate the support! I will say that creating, maintaining, and supporting all of my Patcher tools has been quite a lot of work, especially being a full-time college student. I, of course, also REALLY appreciate the work of everybody else who has worked to get these later macOS versions running on unsupported systems. I find it truly unbelievable and amazing that we were able to "squeak" THREE extra years of support out of the 2008-2009 systems, with very few issues.

When I initially started creating these patches, with the first Sierra patcher, I had no idea it would take off as much as it has. I have a TON of users, and quite a bit of support emails to match (about 10-20 per day). Needless to say, it's become a bit difficult to keep up with as a single-man operation. Regardless, though, I will still continue putting in any work necessary to keep my current patches up-to-date, and compatible with the latest minor systems updates from Apple.

As for the future of Catalina Patcher, there are a couple factors playing in to my consideration of not releasing one. For one, it's going to be a lot of work, which will take time that honestly I don't have all that much of. Secondly, I'd feel really bad releasing a patch that results in poor system performance due to lack of graphics acceleration. Yes, I know the majority of people on this thread would be fine with it, however, that is a VERY small portion of the users of my tools. The vast majority would not be pleased (as would myself), and this would result in and endless slew of support emails and messages (despite the many warnings I would include in the docs).

With that said, though, I'm NOT saying I'll completely stop working on creating patches for Catalina. I plan on getting an installer patch figured out, so Catalina can at least be downloaded and installed onto an unsupported machine without the use of a supported one, plus other fixes.

Once again, I REALLY appreciate the consideration and support from you, and many others. While these patchers have taken over a big chunk of my life, I think it was well worth it to help the hundreds of thousands of people who have benefitted from upgrading the machines that Apple unnecessarily dropped support for. Please don't feel obligated, though, to get me anything. I do this because I enjoy programming, and work on old Macs all the time. I already have a whole slew of Macs, ranging from an original 1984 Macintosh to my main machines, a Mid-2012 15" Retina MacBook Pro, and a Mid-2010 Mac Pro 5,1.

Thank you again, and I really wish I were more able to continue to deliver high-quality patching tools for Catalina.
 
After many hours of research, patching, and fighting with Apple's codesinging enforcement, I have FINALLY managed to create a 100% WORKING installer patch for macOS Catalina installers! This will allow you to install Catalina on your system, just like you would on a supported Mac! Download and info can be found here. I will be making another post later today explaining exactly what I did to get this working. Remember, this is the first iteration, so I expect there to be bugs that I'll need to work out. Enjoy!
 
An update: I am currently working on an installer patch that seems promising thus far, but not fully working yet. Once this is complete, development will start of a full Catalina Patcher. I am going to be completely starting over with a brand new codebase, as the Sierra through Mojave Patcher implementation has gotten ridiculously hard to maintain and update. Expect a MUCH more intuitive and user-friendly UI, higher first-time success rate, and many more optimizations. System compatibility will remain as it is now, requiring 64-bit Mac OS X 10.6 Snow Leopard or later to run.

With this being a complete re-write, I am open for feature requests, new UI design/flow mockups, and much more. If you have any suggestions, just let me know!
 
Just finished another update to Catalina Patcher, which now includes an all-new, fully-automated post-install tool! While it can still be applied manually just like older post-install tool versions, this new one will now be applied automatically for you once the Catalina installation completes, with all the optimal patches for your machine pre-determined.

Screen Shot 2019-06-30 at 4.38.42 PM.png
 
Rastafabi's Catalina loader

READ THIS ENTIRE POST AND THE INCLUDED README FIRST!

It took me a while, but finally I managed to create a "Catalina loader", which enables you to install macOS 10.15 Catalina on unsupported Macs with compatible hardware. It's meant for Mac Pro 4,1 & 5,1 and iMac 2010/2011 systems, which have a Metal compatible GPU. A upgraded WiFi/Bluetooth card might be necessary to have OOB support. I have not yet looked into audio, though on my Mac Pro 4,1 it works OOB. The download includes an installation guide with additional details.
It is not meant for systems without a Metal GPU or with Core2 Duo (based) CPUs.

The loader is based on rEFInd and OpenCore, which spoofs the Mac to be a compatible model.
Screenshot 2019-06-13 at 22.01.21.png


Download the Catalina loader.zip

————————————

Some might be reminded of my old Mavericks download enabler. ;)

————————————

Dual CPU Mac Pros also require to be running non x55xx CPUs to omit audio stuttering. Thanks @tsialex

————————————

Questions:
Which installer do I need?
The Catalina Loader is confirmed to work with the first macOS Catalina developer beta installer (DP1).
No other installers have been tested and thus are not supported at the moment as those can potentially damage your hardware.
Can this run on other devices without acceleration tho?
Yes. If your GPU is not metal compatible it will install and boot. However it’s usually not worth it.
What size usb flash drive do I need?
Just about any should work. Find an old 512mb drive and you are good to go. Of course larger drives will work, too. BTW: You may also use SD-Cards, if your Mac can boot from those.
Nice, how can we add the AirPortBrcm4331.kext from Mojave to the loader?
You can't. Just install it manually afterwards. There is now way to add anything, as this basically just enables you to run the legit unmodified Catalina installer.
So what about unsupported audio and WiFi chipsets?
@Starplayr apparently wrote a little script for the Mac Pro 3,1. It should work for other Macs, too.
I have a MacBook (Pro). Does it work?
It seems to install and boot on 2010 & 2011 MacBooks. However you will not have any graphics acceleration natively.
I bricked my computer! (No such reports, yet.)
I am very sorry. However there is nothing I can do. You have been warned (README) and proceeded at your own risk.

————————————

Updates:
  1. Fixed large file size (60mb), due to an oversight one may part.
  2. Removed experimental flag causing issues.
 
Last edited:
Just fixed the USB issues on certain systems, such as the MacBook6,1. Now, the keyboard and trackpad should work 100% perfectly! Patcher has been updated with the new changes. All that was needed was a modification to LegacyUSBInjector.kext, which I have attached.

EDIT: I've also updated my "patch pack" to include this change as well. I've also added a kext to fix nVidia MCP79/89 Ethernet controllers under Catalina.

For those of you waiting, I plan to have my full, 100% automated Catalina Patcher ready within a couple weeks.
 

Attachments

  • LegacyUSBInjector.kext.zip
    4.5 KB · Views: 360
Last edited:
@0403979, I mean no disrespect, and at the same time I'm going to be straight up about this. While you have some skill, that youthful exuberance, and an ego to match, you don't yet understand earned respect and honor, nor are you quite frankly qualified to run this thread. Have you noticed the distinct absence of someone who should be here leading this discovery and resolution process? This gentleman has earned his respect and honor, because he studied, and was humble and teachable, but more importantly because he has literally worked his a** off day and night since at least Sierra, AND then he has 30-50 PM's to answer when he's done here.

I'm not saying these things to belittle you, because I was you at your age. This isn't about you. It is about millions of people who need these OS's because without them, their businesses die, and their parents won't be able to communicate with their kids and grandkids, and people's general quality of life suffers. I have no doubt you will one day become a great leader, but you don't get there by stepping on the toes or beating to the punch of one of our most trusted and qualified generals in this battle. You will get much more respect and honor by EVERYONE for doing the right thing.

@pkouame, @jackluke, @Larsvonhier and others, you're selfless teamwork is inspiring and awesome. We should keep in mind that this is the 4th straight run at these workarounds for @dosdude1. He's got to be worn down, and weary. Maybe you all could PM with @dosdude1 and share responsibilities for your specific skill sets and maybe help answer the related PM's he gets. Together you make a world class team of problem solvers and it's just pure joy watching you beat Apple at their own game. Btw, he has no idea I'm writing this. There is an urgency about this, this time don't you think? My hat is off to all of you and to @0403979, you have my upmost respect.

Kev
 
At last, the first preliminary release of the FULL macOS Catalina Patcher is now done! This is definitely one of the best macOS patcher implementations I've ever created, and it works amazingly well! I have not yet implemented all the features I intend to, but they will be coming very soon. As of now, the tool works perfectly with its new user interface, and will allow you to install a fully-patched copy of macOS Catalina on your unsupported system!

The tool is able to run under as old as Mac OS X version 10.6 (Snow Leopard), ensuring maximum compatibility (doesn't use any of that awful Swift rubbish).

As of now, the same prequisites apply as with macOS Catalina PartialPatcher:
  • The system must support booting from APFS volumes natively, or have had native APFS support added to its BootROM via my APFS ROM Patcher tool
  • -no_compat_check must be set in NVRAM to install, as detailed on the webpage.

Let me know how you all like it, and of course, please report any bugs!


Screen Shot 2019-06-24 at 9.50.40 PM.png Screen Shot 2019-06-24 at 9.51.10 PM.png Screen Shot 2019-06-24 at 9.51.13 PM.png Screen Shot 2019-06-24 at 9.51.16 PM.png Screen Shot 2019-06-24 at 9.51.19 PM.png Screen Shot 2019-06-24 at 9.51.29 PM.png Screen Shot 2019-06-24 at 9.52.04 PM.png
 
Last edited:
Acceleration achieved on DP2! :)

Screen Shot 2019-06-18 at 2.12.59 AM.png Screen Shot 2019-06-18 at 2.24.05 AM.png

Yay!

Unfortunately, I feel that this effort will soon come to an end if we can't find a better solution than replacing the entire SkyLight and CoreDisplay. But for now, I made stuff happy again by stubbing out another several functions. (It only took so long because dumbass me somehow removed the symlinks inside the OpenGL framework in the process of copying it, and apparently those are necessary.)

It's late so I don't have time to thoroughly test, but it seems much the same as before. Key differences include an actually read-only filesystem, some nice "Loading..." text in Finder's columns view, and a lot of changes to what seems to be mostly accessibility-related display code. (Related: none of the display-related accessibility features in System Preferences really work at the moment due to my stub functions not actually doing anything.)

Anyways, a new CoreDisplay.framework (the SkyLight wrapper is unchanged) is attached for those who want to be on the bleeding edge. Good luck and goodnight.
 

Attachments

  • CoreDisplay.framework.zip
    562.5 KB · Views: 489
Last edited:
Hiiiii! Sorry for being so quiet since my post yesterday. I've been busy. I've significantly improved the SkyLight/CoreDisplay patches to a point where I feel they're ready to be tested/improved upon by you guys!

As of yesterday, I had binary patched about 5 different files (including AppKit, yikes) in order to just barely get the system running. Today, I undid that and implemented wrapper binaries for the old frameworks, with stub functions to (mostly) keep things happy -- a much cleaner solution. I just finished doing a full reinstall to re-check everything, and I'm writing this from accelerated Catalina on my 2010 MacBook!

So... on a system with a working framebuffer (which should be achievable by following the same steps as for 10.14.5), you should be able to just replace these two frameworks with the attached copies. No other binary patches needed!! :D

For convenience I'm also including the fix for the HID timeout, as well as a patched IOSurface.kext that seems to be required to load the nVidia Tesla kexts.

Now for the bad news. Overall, the system is still quite unstable, absolutely not usable as a daily driver yet. For one, most of my rewritten functions are just stubs. So, things like Screen Time (edit: actually seems to be working!) and automatic light/dark switching, which require functions in the new SkyLight? Not working at all. Not sure if they ever will. There is a bit of other weirdness too, like the way that windows can be extended over the Dock -- my stub SLSGetDockRectWithOrientation currently does nothing. And sometimes, stuff just... crashes, and I don't know why yet.

Anyways, have fun! I'm heading to bed, but I hope some of you guys can try this out. I'm definitely struggling a little here, so hopefully some smarter people can help me ;) Speaking of which, @pkouame, how are your efforts going? If we can get this working without the SkyLight replacement altogether, I will have wasted a massive amount of time we will be much more likely to get a usable end product.

Goodnight :)
I am honestly amazed at your determination and skill. This kind of announcement should never have happened. But here you are and you delivered on something thought impossible by many. Congratulations. Between this thread and the Mojave one, you have contributed the most individually and I must say, your contributions are amazing and extremely valuable. I am very fond of your great achievements and respect for everyone on this thread. In my opinion, you have helped the most in getting the vast majority of our devices working. Thank you a lot for your incredible research. You are a valuable asset to this community and we're lucky to have you.

Thanks to you, I was able to capture a screenshot I once thought was impossible. Nine days after the release of the first developer beta of macOS Catalina, the OS is working with no issues whatsoever on an almost nine year old computer. The humble MacBook7,1. Bravo.

Screenshot 2019-06-12 at 18.04.15.png
[doublepost=1560359942][/doublepost]macOS Patcher 3 beta 1 will be released with full support for macOS Catalina and all versions before it dating back to Sierra. This beta will be released as soon as I can get my hands on and implement @dosdude1's installer patch. Big thanks to @ASentientBot for his amazing work on macOS Catalina graphics acceleration.

Note for macOS Patcher 3 and future versions: Starting with macOS Patcher 3, transutil will no longer be included with macOS Patcher. It will be available separately and will support all patchers for Mojave and Catalina. Another utility by the name of apfsutil be made available shortly for switching between APFS volumes for users of the APFS system patch. This utility will support macOS Patcher and support status for other patchers will be announced later. And finally, I will soon start to develop a new utility specifically for macOS Patcher, called, macOS Patcher Subsystem. This utility will also be available separately but for macOS Patcher only. macOS Patcher Subsystem (MPS), will have the ability to detect system updates, system patches that have been overwritten, and will offer updates to patches and to MPS itself. It will also allow the reinstallation of patches (including macOS Patcher Subsystem itself), without the need of the macOS installer drive.

These utilities will not be preinstalled as the aim of macOS Patcher is to give more freedom to the user by expanding their choice of operating systems. And including utilities that a user may not need or want is contradicting that. These utilities will all be open source as is macOS Patcher and will have their own GitHub page and download zips. Install scripts will be available for these utilities and they will be installed with the intent to be easily removable by the user. This can be done either manually or via an uninstall script that will also be there for download.

macOS Patcher 3 will not remove the current utilities by default, instead this will be done via an optional upgrade script that will be released along with macOS Patcher 3. I will also be releasing restore scripts individually for all past versions of macOS Patcher since macOS Patcher 1.0 to allow users to remove patcher files for their specific version of macOS Patcher. These restore scripts will also include the latest improvements in the visual design and code structure of my scripts. Users of the Users of macOS Patcher 1 are encouraged to download the restore script for their version of macOS Patcher, when it is released, and follow the instructions on the RMC website for restoring before they use a newer version of macOS Patcher.

I hope these changes will be beneficial to everyone and I'm excited to provide support for Catalina shortly and make my patcher and its utilities more open and to give more choice to the user about the software they install on their machine.
 
For anyone interested in the SkyLight/CoreDisplay wrappers, I've just finished a couple updates:
- Fixed logout/switch user (it previously just hung forever) by implementing SLSSessionSwitchToAuditSessionIDWithOptions() with a call to the older SLSSessionSwitchToAuditSessionID(), rather than just an empty stub function. It always uses the "cube" transition effect though for some reason.
- Stopped daemon PerfPowerServices from repeatedly crashing by exporting some string constants it was looking for (this noticeably improves performance by preventing ReportCrash from constantly starting, even though the actual daemon seems unnecessary).
- Stopped daemon universalaccessd from repeatedly crashing by creating a stub function that does nothing.
- Added a few other stub functions based on differences between symbol dumps (nm -gU) of the two SkyLight versions. As nothing was complaining about missing these functions, I'm not sure if this actually helped at all.

Please test and report any crashes if you can. Known problems:
- I'm having trouble reimplementing the function SLSSetDockRectWithOrientation() which means that the Dock won't "collide" with windows properly just yet. This is a fairly minor glitch, though.
- The option to auto-switch between dark/light theme will most likely not work since it calls a couple new SkyLight functions, which I have currently only implemented as empty stubs.
- Hopper Disassembler v4 crashes pretty frequently on the patched system... not sure whether it's caused by these patches or an incompatibility with Catalina itself. If someone on a supported Mac could test it, that would be great.
- I've experienced a couple times TextEdit freezing for several seconds. I'm not sure the cause.
- Photos crashing due to its use of Metal. This is unrelated to my patches but I'll look into a fix at some point.

I think that the stability of a system with replaced SkyLight is finally approaching usability as a daily driver!
Enjoy :)

Edit: Attaching the full wrapped frameworks rather than just the binary. As before, if you have working framebuffer, you should be able to just place these into /S*/L*/Frameworks and PrivateFrameworks to get full acceleration!

Edit 2: Look at all these apps being transparent and not crashing and stuff! Yay!
yay.png

Final Edit: An updated version of the CoreDisplay wrapper for DP2 is posted here.
 

Attachments

  • wrapped frameworks.zip
    3.2 MB · Views: 528
Last edited:
For anyone interested in the SkyLight/CoreDisplay wrappers, I've just finished a couple updates:
- Fixed logout/switch user (it previously just hung forever) by implementing SLSSessionSwitchToAuditSessionIDWithOptions() with a call to the older SLSSessionSwitchToAuditSessionID(), rather than just an empty stub function. It always uses the "cube" transition effect though for some reason.
- Stopped daemon PerfPowerServices from repeatedly crashing by exporting some string constants it was looking for (this noticeably improves performance by preventing ReportCrash from constantly starting, even though the actual daemon seems unnecessary).
- Stopped daemon universalaccessd from repeatedly crashing by creating a stub function that does nothing.
- Added a few other stub functions based on differences between symbol dumps (nm -gU) of the two SkyLight versions. As nothing was complaining about missing these functions, I'm not sure if this actually helped at all.

Please test and report any crashes if you can. Known problems:
- I'm having trouble reimplementing the function SLSSetDockRectWithOrientation() which means that the Dock won't "collide" with windows properly just yet. This is a fairly minor glitch, though.
- The option to auto-switch between dark/light theme will most likely not work since it calls a couple new SkyLight functions, which I have currently only implemented as empty stubs.
- Hopper Disassembler v4 crashes pretty frequently on the patched system... not sure whether it's caused by these patches or an incompatibility with Catalina itself. If someone on a supported Mac could test it, that would be great.
- I've experienced a couple times TextEdit freezing for several seconds. I'm not sure the cause.

New SkyLight wrapper binary is attached. Replace the file into SkyLight.framework/Versions/A/ and reboot.

I think that the stability of a system with replaced SkyLight is finally approaching usability as a daily driver. Enjoy :)
This is some some amazing work, thank you SO much for spending so much time to make this happen! I've been working all day today practically on the installer patch, but I still haven't arrived at a working solution yet. Apple sure made it hard this time around.
 
I have just re-implemented "catalinaswufix5amfi.command" with a GUI to allow, download and install the Catalina Beta Software Update (and public too) on any Catalina unsupported Mac, I have tested it and seems to work enough good.

I used the @Czo SUVMMFaker.dylib , @Pinarek method of OTA .dist editing for machines whitelisting, and @ASentientBot disablelibraryvalidation with AMFI disabling methods .

In case someone resets the PRAM you still should use "csrutil disable" (from an USB Catalina Installer or Recovery environment terminal) before apply the post-install patches.


I release it now, before the 10.15.5 beta 1 , the app should allow also "OTA Combo updates", for example from 10.15.0 to 10.15.4 . While usually the Delta Updates are from 10.15.3 to 10.15.4 .

After you apply the OTA update fix, these are the four apple Catalina OTA update automatic phases:

1) apple logo short loading bar followed by auto reboot OTA packages preparing the "APFS macOS Installer" temporary volume (it may take up to 10 minutes, but on average about 5 minutes)

2) apple logo long loading bar followed by Catalina logo installing (OTA pre-scripts verifying on your APFS volume) (it may take up to 15 minutes, but on average about 10 minutes)

3) Catalina circle logo with installing progress bar (OTA stage2 installation on your APFS volume) (it may take up to 60 minutes, but on average about 45 minutes)

4) apple logo full loading bar OTA post-scripts followed by direct boot to Catalina or a bootloop (because post-install patches are required) (it may take up to 15 minutes, but on average about 10 minutes)

apple logo loading.png
OTA stage 2 new screen.png
catalina circle logo ota installing.jpg
apple logo loading bar.png


The CatalinaOTAswufix.app source code is viewable simply browsing the Show packages Contents.

My app is totally harmless and safe for any mac.

To run properly the app don't rename it and move it to Catalina Desktop , or Applications or Downloads paths.


edit (some tips):
To receive only non-beta updates after the "Software Update fix", simply from Software Update prefpane click "Details" and "Restore Defaults" (OTA update fix will still continue work correctly):
opt out from beta updates.png

Moreover I'd advise to set the "Advanced" menu this way, in order to have more control on how updates are downloaded and installed (to give extended time to make a backup or to build a new USB Catalina Patcher for example):
software update advanced settings.png

Example downloading a non-beta update (from a beta updated machine):

non-beta update example.png
 

Attachments

  • Catalina ota swu fix beta app.png
    Catalina ota swu fix beta app.png
    818.9 KB · Views: 1,292
  • CatalinaOTAswufix.app.zip
    153.1 KB · Views: 2,235
Last edited:
Register on MacRumors! This sidebar will go away, and you'll see fewer ads.