Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Official Apple URL for macOS firmware downloads #83

Open
n8felton opened this issue Jun 10, 2022 · 4 comments
Open

Official Apple URL for macOS firmware downloads #83

n8felton opened this issue Jun 10, 2022 · 4 comments
Labels
help wanted Extra attention is needed question Further information is requested

Comments

@n8felton
Copy link
Contributor

I'm not sure if this information was already known, but I came across it today and wanted to document it somewhere/somehow.

I know for firmware downloads today, Mist is using the API at https://api.ipsw.me, but in case we ever want to cross verify from an official Apple source, or switch to only pulling from an official Apple source, it appears that Apple's official listing for IPSW files is at https://mesu.apple.com/assets/macos/com_apple_macOSIPSW/com_apple_macOSIPSW.xml

@ninxsoft ninxsoft added the enhancement New feature or request label Jun 13, 2022
@ninxsoft
Copy link
Owner

ninxsoft commented Jun 13, 2022

There was a previous discussion in #25 in regards to pulling IPSW data, but the reasons why may not be obvious in the thread.

From what I can see / remember, com_apple_macOSIPSW.xml doesn't provide all the metadata you would hope for when running mist list firmware:

Metadata Available Notes
Signed Not present
Name ⚠️ Name could be translated from ProductVersion key
Version ProductVersion key
Build BuildVersion key
Size ⚠️ Not present - could verify download against FirmwareSHA1 key but this would be post-download
Date Not present
Compatible ⚠️ Not present - could compare against remainder of metadata to build a compatibility list on-the-fly

Even if we were able to find a workaround for all of the above, the biggest issue we face is that com_apple_macOSIPSW.xml only seems to return information for macOS 12.4:

➜ curl https://mesu.apple.com/assets/macos/com_apple_macOSIPSW/com_apple_macOSIPSW.xml --silent | grep ipsw | sed 's/<string>//' | sed 's/<\/string>//' | awk '{ print $1 }' 
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw
https://updates.cdn-apple.com/2022SpringFCS/fullrestores/012-06874/9CECE956-D945-45E2-93E9-4FFDC81BB49A/UniversalMac_12.4_21F79_Restore.ipsw

Would 💯 trade 3rd-party APIs for an Apple-only implementation, just not sure how to solve this one yet 🤔

@ninxsoft ninxsoft added the question Further information is requested label Jun 13, 2022
@PicoMitchell
Copy link

Might be worth adding the Apple MESU url as a fallback such as when the IPSW.me list is being updating? Or maybe that would just confuse users since only the latest would ever be listed with minimal details.

@ninxsoft ninxsoft added help wanted Extra attention is needed and removed enhancement New feature or request labels Jun 25, 2022
@PicoMitchell
Copy link

PicoMitchell commented Jul 18, 2023

Oops, means to post here.

@ninxsoft
Copy link
Owner

ninxsoft commented Jul 5, 2024

Foreshadowing: phoeninx.dev

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
help wanted Extra attention is needed question Further information is requested
Projects
None yet
Development

No branches or pull requests

3 participants