As of Sep 2020, the steps to do this on High Sierra or Mojave are:
- Make sure you have Security Update 2020-005 installed
- Enrol your device in Mobile Device Management. For those that have a workplace or school that already use MDM, this is simple - just follow their instructions for 'bring your own device' setup. For those that don't, you can setup your own MDM by signing up for a JAMF Now account - see my guide at bottom.
- Double check your device is now managed, by executing
profiles status -type enrollment
in a terminal and checking that at least one of Enrolled via DEP or MDM enrolment is Yes.
- Run
sudo softwareupdate --ignore "macOS Catalina"
in a terminal to ignore the Catalina update. If it worked, you should see Ignored updates:( "macOS Catalina" )
- Run
defaults write com.apple.systempreferences AttentionPrefBundleIDs 0;killall Dock
in a terminal to turn off the red notifications tag for the Software Updates dock icon and refresh the dock.
Changes to software update --ignore ability
As you mentioned, the fix for this used to be the command:
sudo softwareupdate --ignore "macOS Catalina"
However, this command was deprecated in May 2020 with security update 2020-003
. Mr Macintosh did a great job of documenting this at the time. As of that update, softwareupdate --ignore
returns the below message, without actually adding anything to the ignore list.
Ignoring software updates is deprecated.
The ability to ignore individual updates will be removed in a future release of macOS.
Apple must have got a lot of heat for this, as they backflipped, a bit: with security updates 2020-004
& 2020-005
they re-enabled ignoring updates, but only for managed devices, ie those managed with Apple Business/School Manager or user-approved MDM. (2020-004
was meant to re-enable it for both but actually it was still broken for UAMDM. 2020-005
finally fixed this)
So if you've installed those updates, provided your device is enrolled in any UA MDM, running the above ignore command will work. Signing into your work email using Mail might be enough to achieve this, depending on the setup.
Setting up your own MDM to enrol in
If you don't have a work or school management provider to use, you can always set up you own using one of the many free trials offered by MDM providers. This is going to somewhat extreme ends to remove the upgrade prompt, but it only took me about 15 mins to do, so may be worth it if it annoys you sufficiently.
Steps:
- From https://www.jamf.com/solutions/industries/business/, look for JAMF Now and click Create Free Account
- Fill in the form, then check your email to finish activating the account and login
- Follow the steps to create a new Push Certificate and upload it to your JAMF account
- Setup Open Enrolment in your account, and share the enrolment link to the device you want to disable the Catalina update on
- Click the link on that device, and enrol it in the UA MDM you've setup
You should now be enrolled. You can check by running profiles status -type enrollment
in terminal - you should see a line saying MDM enrollment: Yes (User Approved)
. If you do, the sudo softwareupdate --ignore "macOS Catalina"
command should now work!