{"id":16668873,"url":"https://github.com/doronz88/applecatalog","last_synced_at":"2025-03-17T00:31:40.019Z","repository":{"id":57411071,"uuid":"383832286","full_name":"doronz88/applecatalog","owner":"doronz88","description":"Python library and CLI for listing and downloading Apple's updates for macOS (Secruity updates, CommandLineTools, OS Upgrades and etc...)","archived":false,"fork":false,"pushed_at":"2024-09-19T10:12:41.000Z","size":30,"stargazers_count":13,"open_issues_count":0,"forks_count":1,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-10-13T11:27:26.047Z","etag":null,"topics":["cli","firmware","macos","python","python3","updates"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/doronz88.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-07-07T14:47:01.000Z","updated_at":"2024-09-19T10:12:43.000Z","dependencies_parsed_at":"2024-08-21T00:02:46.205Z","dependency_job_id":"42af983a-52ab-434c-830d-3d478102fb73","html_url":"https://github.com/doronz88/applecatalog","commit_stats":{"total_commits":23,"total_committers":1,"mean_commits":23.0,"dds":0.0,"last_synced_commit":"cedc2de3c7768e2c289b5fd0328e0faf0431b17e"},"previous_names":[],"tags_count":13,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doronz88%2Fapplecatalog","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doronz88%2Fapplecatalog/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doronz88%2Fapplecatalog/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/doronz88%2Fapplecatalog/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/doronz88","download_url":"https://codeload.github.com/doronz88/applecatalog/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":221669246,"owners_count":16860844,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cli","firmware","macos","python","python3","updates"],"created_at":"2024-10-12T11:27:48.661Z","updated_at":"2024-10-27T11:34:52.107Z","avatar_url":"https://github.com/doronz88.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"[![Python application](https://github.com/doronz88/applecatalog/workflows/Python%20application/badge.svg)](https://github.com/doronz88/applecatalog/actions/workflows/python-app.yml \"Python application action\")\n[![Pypi version](https://img.shields.io/pypi/v/applecatalog.svg)](https://pypi.org/project/applecatalog/ \"PyPi package\")\n\n# Description\n\nSimple library for automating downloads of updates from Apple's servers. Use this simply tool for downloads macOS\nimages, CommandLineTools, XProtect database and just everything you can think of :).\n\n# Installation\n\nYou can either install using `pip`:\n\n```shell\npython3 -m pip install -U applecatalog\n```\n\nOr install locally from git:\n\n```shell\ngit clone git@github.com:doronz88/applecatalog.git\ncd applecatalog\npython3 -m pip install -U -e .\n```\n\n# Usage\n\n```\nUsage: applecatalog [OPTIONS] {macos|rosetta} COMMAND [ARGS]...\n\n  CLI util for downloading updates from either macos/rosetta seeds\n\nOptions:\n  --help  Show this message and exit.\n\nCommands:\n  date      last update date\n  download  download a single product packages\n  info      query info for a single product\n  list      list all products\n```\n\n## Snippets\n\n```shell\n# List CommandLineTools\npython3 -m applecatalog macos list -q | grep CLTools\n\n# List all macOS products\npython3 -m applecatalog macos list\n\n# List macOS OS installers\npython3 -m applecatalog macos list --os -q\n\n# List rosetta installers\npython3 -m applecatalog rosetta list -q\n\n# Download single component (by given PRODUCT_ID)\npython3 -m applecatalog macos download PRODUCT_ID /tmp\n\n```\n\n## Example output\n\n```\n➜  dev applecatalog macos products list\nProduct(id='031-17335', version='11.0.0.0', title='Photo Content Catalogs', date=datetime.datetime(2015, 2, 23, 18, 1, 41), basename='PhotoContentCatalogs.smd')\nProduct(id='031-17334', version='11.0.0.0', title='Photo Content Themes', date=datetime.datetime(2015, 2, 23, 18, 1, 41), basename='PhotoContentThemes.smd')\nProduct(id='031-18981', version='17.0.0.0', title='Photo Content Catalogs', date=datetime.datetime(2015, 3, 25, 17, 12, 1), basename='PhotoContentCatalogs.smd')\nProduct(id='091-76740', version='1.0.0.0', title='Noticeboard Removal Tool', date=datetime.datetime(2018, 4, 5, 17, 17, 49), basename='NRT.smd')\nProduct(id='041-91737', version='1.0', title='BootCamp', date=datetime.datetime(2019, 10, 9, 19, 40, 56), basename='BootCampESD.smd')\nProduct(id='041-91736', version='1.0', title='BootCamp', date=datetime.datetime(2019, 10, 9, 19, 43, 9), basename='BootCampESD.smd')\nProduct(id='041-88235', version='31.0.0.0', title='Photo Content Catalogs', date=datetime.datetime(2019, 10, 9, 21, 33, 35), basename='PhotoContentCatalogs.smd')\nProduct(id='041-88237', version='31.0.0.0', title='Photo Content Themes', date=datetime.datetime(2019, 10, 9, 21, 34, 21), basename='PhotoContentThemes.smd')\nProduct(id='041-88232', version='1.8', title='Mac mini EFI Firmware Update', date=datetime.datetime(2019, 10, 9, 21, 35, 34), basename='MacminiEFIUpdate1.8.smd')\nProduct(id='041-88233', version='3.7.2', title='Remote Desktop Admin Update', date=datetime.datetime(2019, 10, 9, 21, 37, 47), basename='RemoteDesktopAdmin372.smd')\nProduct(id='041-88177', version='2.0.1', title='Dictation Language Update - Italian (Italy)', date=datetime.datetime(2019, 10, 9, 23, 10, 48), basename='SRCLUpdate_it_IT.smd')\nProduct(id='041-94866', version='2.0.1', title='Dictation Language Update - English (Australia)', date=datetime.datetime(2019, 10, 9, 23, 11, 3), basename='SRCLUpdate_en_AU.smd')\nProduct(id='041-88170', version='2.0.3', title='Dictation Language Update - French (France)', date=datetime.datetime(2019, 10, 9, 23, 12, 27), basename='SRCLUpdate_fr_FR.smd')\nProduct(id='041-88171', version='2.0.1', title='Dictation Language Update - Spanish (United States)', date=datetime.datetime(2019, 10, 9, 23, 12, 28), basename='SRCLUpdate_es_US.smd')\nProduct(id='041-88172', version='2.0.1', title='Dictation Language Update - Chinese (China)', date=datetime.datetime(2019, 10, 9, 23, 12, 28), basename='SRCLUpdate_zh_CN.smd')\n...\n```\n\n# Downloading macOS Images\n\nListing macOS images can be done as follows:\n\n```\n➜  apple-catalog git:(master) ✗ applecatalog macos products list --macos\nMacOsProduct(product='061-26578', name=None, build='18F2059', version='10.14.5')\nMacOsProduct(product='061-26589', name=None, build='18G103', version='10.14.6')\nMacOsProduct(product='041-91758', name=None, build='17G66', version='10.13.6')\nMacOsProduct(product='041-88800', name=None, build='18E2034', version='10.14.4')\nMacOsProduct(product='041-90855', name=None, build='17F66a', version='10.13.5')\nMacOsProduct(product='061-86291', name=None, build='19D2064', version='10.15.3')\nMacOsProduct(product='001-04366', name=None, build='19E2269', version='10.15.4')\nMacOsProduct(product='001-15219', name=None, build='19F2200', version='10.15.5')\nMacOsProduct(product='001-36735', name=None, build='19G2006', version='10.15.6')\nMacOsProduct(product='001-36801', name=None, build='19G2021', version='10.15.6')\nMacOsProduct(product='001-51042', name=None, build='19H2', version='10.15.7')\nMacOsProduct(product='001-57224', name=None, build='19H4', version='10.15.7')\nMacOsProduct(product='001-68446', name=None, build='19H15', version='10.15.7')\nMacOsProduct(product='071-14766', name='macOS Big Sur', build='20D91', version='11.2.3')\nMacOsProduct(product='071-29172', name='macOS Big Sur', build='20E232', version='11.3')\nMacOsProduct(product='071-32414', name='macOS Big Sur', build='20E241', version='11.3.1')\nMacOsProduct(product='071-00696', name='macOS Big Sur', build='20F71', version='11.4')\nMacOsProduct(product='071-52235', name='macOS Big Sur Beta', build='20G5042c', version='11.5')\nMacOsProduct(product='071-59953', name='macOS Monterey beta', build='21A5268h', version='12.0')\n```\n\nFor Downloading each one you just download their packages as you would for any other product:\n\n```\n➜  apple-catalog git:(master) ✗ applecatalog macos products download 071-59953 ~/Downloads/macos\n2021-07-08 10:48:27 DoronZ.local root[21530] DEBUG downloading: UpdateBrain.zip\n100%|██████████████████████████████████████████████████████████████████████████████████████████| 2.75M/2.75M [00:00\u003c00:00, 44.7MiB/s]\n2021-07-08 10:48:27 DoronZ.local root[21530] DEBUG downloading: Info.plist\n...\n```\n\nFor creating an installation from these files you can now simply:\n\n```shell\nsudo installer -pkg /path/to/InstallAssistant.pkg -target /\n```\n\nThis should create an `Install macOS XXXXXX.app` application at your `/Applications` folder. If you wish to make a\nbootable device from this installation you can use the following official guidelines:\n\nhttps://support.apple.com/en-us/HT201372\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoronz88%2Fapplecatalog","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdoronz88%2Fapplecatalog","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdoronz88%2Fapplecatalog/lists"}