#!/bin/zsh #Get Big Sur, Monterey & Ventura InstallAssistant.pkg links from Apple #For macOS 11 (Big Sur), 12 (Monterey) and 13 (Ventura), Apple provides the Install macOS ___.app packaged as InstallAssistant.pkg #The links for the InstallAssistant packages are listed in the seed catalogs #The seed catalogs are listed in /System/Library/PrivateFrameworks/Seeding.framework/Versions/A/Resources/SeedCatalogs.plist #The script gets the CustomerSeed seed catalog link from SeedCatalogs.plist, then gets the macOS versions available from the Info.plist and prints the links for the corresponding InstallAssistant.pkg #Other options #PublicSeed (Public Beta) #link=$( plutil -p /System/Library/PrivateFrameworks/Seeding.framework/Resources/SeedCatalogs.plist | grep 'PublicSeed' | sed -e s/'"PublicSeed" => "'//g -e s/'.gz"'//g -e s/\ //g ) #DeveloperSeed (Developer Beta) #link=$( plutil -p /System/Library/PrivateFrameworks/Seeding.framework/Resources/SeedCatalogs.plist | grep 'DeveloperSeed' | sed -e s/'"DeveloperSeed" => "'//g -e s/'.gz"'//g -e s/\ //g ) link=$( plutil -p /System/Library/PrivateFrameworks/Seeding.framework/Resources/SeedCatalogs.plist | grep 'CustomerSeed' | sed -e s/'"CustomerSeed" => "'//g -e s/'.gz"'//g -e s/\ //g ) for file in $(curl -# $link | grep Info.plist | grep -Evw '(Info.plist.integrityDataV1|InstallInfo.plist)' | sed -e s/""//g -e s/"<\/string>"//g -e s/\ //g); do curl -# $file | egrep -EA 1 '(>Build<|OSVersion)' | sed -e s/""//g -e s/"<\/string>"//g -e s/\ //g | sed -e s/""//g -e s/"<\/key>"//g -e s/\ //g echo $file | sed -e "s/Info.plist/InstallAssistant.pkg/g" done