Home > Mac administration, macOS > Listing the full OS installers available from Apple’s Software Update feed on macOS Big Sur

Listing the full OS installers available from Apple’s Software Update feed on macOS Big Sur

One of the changes in macOS Big Sur is that the softwareupdate command has been updated with new functionality.

usage: softwareupdate <cmd> [<args> …]
** Manage Updates:
-l | –list List all appropriate update labels (options: –no-scan, –product-types)
-d | –download Download Only
-i | –install Install
<label> … specific updates
-a | –all All appropriate updates
-R | –restart Automatically restart (or shut down) if required to complete installation.
-r | –recommended Only recommended updates
–list-full-installers List the available macOS Installers
–fetch-full-installer Install the latest recommended macOS Installer
–full-installer-version The version of macOS to install. Ex: –full-installer-version 10.15
–install-rosetta Install Rosetta 2
–background Trigger a background scan and update operation
** Other Tools:
–dump-state Log the internal state of the SU daemon to /var/log/install.log
–evaluate-products Evaluate a list of product keys specified by the –products option
–history Show the install history. By default, only displays updates installed by softwareupdate.
–all Include all processes in history (including App installs)
** Options:
–no-scan Do not scan when listing or installing updates (use available updates previously scanned)
–product-types <type> Limit a scan to a particular product type only – ignoring all others
Ex: –product-types macOS || –product-types macOS,Safari
–products A comma-separated (no spaces) list of product keys to operate on.
–force Force an operation to complete. Use with –background to trigger a background scan regardless of "Automatically check" pref
–agree-to-license Agree to the software license agreement without user interaction.
–verbose Enable verbose output
–help Print this help
view raw gistfile1.txt hosted with ❤ by GitHub

Among the changes is the ability to scan Apple’s Software Update feed and display a list of the currently available full OS installers. To access this list, run the command below with root privileges:

softwareupdate --list-full-installers

The list you receive will be dependent on whether or not your Mac can run a particular OS version. As an example, here’s the list you would receive inside of a VMware VM as of March 3rd, 2021.

Screen Shot 2021 03 03 at 8 26 35 AM

Once you have the right macOS installer identified, you can use the softwareupdate tool to download it.

One thing to be aware of is that multiple versions of a macOS full installer may show up in the Software Update feed. As an example of this, the list above includes multiple entries for macOS 10.15.6 and 10.15.7. These installers would be for hardware-specific builds of that macOS version’s full installer. Unfortunately, it’s not easy to tell the various installers apart using the softwareupdate command because the build number is not included.

If you do need to be able to download an installer with a specific build number, I recommend using the installinstallmacos.py tool. This tool also references the Apple Software Update feed, so the information you get back should be similar but also include the relevant build numbers for the macOS full installers.

 

Categories: Mac administration, macOS
  1. Maurizio MAFFEI
    March 5, 2021 at 8:59 am

    I wonder if you are aware of any issue about the SW update as used by Mosyle MDM:

    all my iMacs have been aligned (such, manually) to 11.2.2 but the MDM raises alarms to notify that MacOS is not updated.

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: