installer.py: Remove duplicate builds

This commit is contained in:
Mykola Grymalyuk
2022-08-18 21:55:15 -06:00
parent 0cb2ad1b20
commit 2c35b62b53
2 changed files with 16 additions and 1 deletions

View File

@@ -4,6 +4,8 @@
- Enable AppleMCEReporterDisabler whenever spoofing affected SMBIOS
- ie. iMacPro1,1, MacPro6,1 and MacPro7,1
- Verify host's disk space before downloading macOS Installers
- Remove duplicate OS builds in macOS downloader
- Avoids Apple's odd bug of publishing 2 different 12.5.1 products
## 0.4.10
- Resolve Nvidia Kepler support in macOS 12.5 Beta 3 and newer

View File

@@ -187,6 +187,7 @@ def only_list_newest_installers(available_apps):
for version in supported_versions:
remote_version_minor = 0
remote_version_security = 0
os_builds = []
# First determine the largest version
for ia in available_apps:
@@ -221,13 +222,25 @@ def only_list_newest_installers(available_apps):
remote_version.pop(0)
if int(remote_version[0]) < remote_version_minor:
available_apps.pop(ia)
elif int(remote_version[0]) == remote_version_minor:
continue
if int(remote_version[0]) == remote_version_minor:
if len(remote_version) > 1:
if int(remote_version[1]) < remote_version_security:
available_apps.pop(ia)
continue
else:
if remote_version_security > 0:
available_apps.pop(ia)
continue
# Remove duplicate builds
# ex. macOS 12.5.1 has 2 builds in the Software Update Catalog
# ref: https://twitter.com/classicii_mrmac/status/1560357471654379522
if available_apps[ia]["Build"] in os_builds:
available_apps.pop(ia)
continue
os_builds.append(available_apps[ia]["Build"])
return available_apps