applecatalog


Nameapplecatalog JSON
Version 2.0.5 PyPI version JSON
download
home_pageNone
SummaryAppleCatalog download agent
upload_time2024-08-20 22:47:22
maintainerNone
docs_urlNone
authorNone
requires_python>=3.8
licenseNone
keywords apple download automations updates
VCS
bugtrack_url
requirements coloredlogs tqdm click requests
Travis-CI No Travis.
coveralls test coverage No coveralls.
            [![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")
[![Pypi version](https://img.shields.io/pypi/v/applecatalog.svg)](https://pypi.org/project/applecatalog/ "PyPi package")

# Description

Simple library for automating downloads of updates from Apple's servers. Use this simply tool for downloads macOS
images, CommandLineTools, XProtect database and just everything you can think of :).

# Installation

You can either install using `pip`:

```shell
python3 -m pip install -U applecatalog
```

Or install locally from git:

```shell
git clone git@github.com:doronz88/applecatalog.git
cd applecatalog
python3 -m pip install -U -e .
```

# Usage

```
Usage: applecatalog [OPTIONS] {macos|rosetta} COMMAND [ARGS]...

  CLI util for downloading updates from either macos/rosetta seeds

Options:
  --help  Show this message and exit.

Commands:
  date      last update date
  download  download a single product packages
  info      query info for a single product
  list      list all products
```

## Snippets

```shell
# List CommandLineTools
python3 -m applecatalog macos list -q | grep CLTools

# List macOS
python3 -m applecatalog macos list --macos

# Download single component (by given PRODUCT_ID)
python3 -m applecatalog macos download PRODUCT_ID /tmp

```

## Example output

```
➜  dev applecatalog macos products list
Product(id='031-17335', version='11.0.0.0', title='Photo Content Catalogs', date=datetime.datetime(2015, 2, 23, 18, 1, 41), basename='PhotoContentCatalogs.smd')
Product(id='031-17334', version='11.0.0.0', title='Photo Content Themes', date=datetime.datetime(2015, 2, 23, 18, 1, 41), basename='PhotoContentThemes.smd')
Product(id='031-18981', version='17.0.0.0', title='Photo Content Catalogs', date=datetime.datetime(2015, 3, 25, 17, 12, 1), basename='PhotoContentCatalogs.smd')
Product(id='091-76740', version='1.0.0.0', title='Noticeboard Removal Tool', date=datetime.datetime(2018, 4, 5, 17, 17, 49), basename='NRT.smd')
Product(id='041-91737', version='1.0', title='BootCamp', date=datetime.datetime(2019, 10, 9, 19, 40, 56), basename='BootCampESD.smd')
Product(id='041-91736', version='1.0', title='BootCamp', date=datetime.datetime(2019, 10, 9, 19, 43, 9), basename='BootCampESD.smd')
Product(id='041-88235', version='31.0.0.0', title='Photo Content Catalogs', date=datetime.datetime(2019, 10, 9, 21, 33, 35), basename='PhotoContentCatalogs.smd')
Product(id='041-88237', version='31.0.0.0', title='Photo Content Themes', date=datetime.datetime(2019, 10, 9, 21, 34, 21), basename='PhotoContentThemes.smd')
Product(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')
Product(id='041-88233', version='3.7.2', title='Remote Desktop Admin Update', date=datetime.datetime(2019, 10, 9, 21, 37, 47), basename='RemoteDesktopAdmin372.smd')
Product(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')
Product(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')
Product(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')
Product(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')
Product(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')
...
```

# Downloading macOS Images

Listing macOS images can be done as follows:

```
➜  apple-catalog git:(master) ✗ applecatalog macos products list --macos
MacOsProduct(product='061-26578', name=None, build='18F2059', version='10.14.5')
MacOsProduct(product='061-26589', name=None, build='18G103', version='10.14.6')
MacOsProduct(product='041-91758', name=None, build='17G66', version='10.13.6')
MacOsProduct(product='041-88800', name=None, build='18E2034', version='10.14.4')
MacOsProduct(product='041-90855', name=None, build='17F66a', version='10.13.5')
MacOsProduct(product='061-86291', name=None, build='19D2064', version='10.15.3')
MacOsProduct(product='001-04366', name=None, build='19E2269', version='10.15.4')
MacOsProduct(product='001-15219', name=None, build='19F2200', version='10.15.5')
MacOsProduct(product='001-36735', name=None, build='19G2006', version='10.15.6')
MacOsProduct(product='001-36801', name=None, build='19G2021', version='10.15.6')
MacOsProduct(product='001-51042', name=None, build='19H2', version='10.15.7')
MacOsProduct(product='001-57224', name=None, build='19H4', version='10.15.7')
MacOsProduct(product='001-68446', name=None, build='19H15', version='10.15.7')
MacOsProduct(product='071-14766', name='macOS Big Sur', build='20D91', version='11.2.3')
MacOsProduct(product='071-29172', name='macOS Big Sur', build='20E232', version='11.3')
MacOsProduct(product='071-32414', name='macOS Big Sur', build='20E241', version='11.3.1')
MacOsProduct(product='071-00696', name='macOS Big Sur', build='20F71', version='11.4')
MacOsProduct(product='071-52235', name='macOS Big Sur Beta', build='20G5042c', version='11.5')
MacOsProduct(product='071-59953', name='macOS Monterey beta', build='21A5268h', version='12.0')
```

For Downloading each one you just download their packages as you would for any other product:

```
➜  apple-catalog git:(master) ✗ applecatalog macos products download 071-59953 ~/Downloads/macos
2021-07-08 10:48:27 DoronZ.local root[21530] DEBUG downloading: UpdateBrain.zip
100%|██████████████████████████████████████████████████████████████████████████████████████████| 2.75M/2.75M [00:00<00:00, 44.7MiB/s]
2021-07-08 10:48:27 DoronZ.local root[21530] DEBUG downloading: Info.plist
...
```

For creating an installation from these files you can now simply:

```shell
sudo installer -pkg /path/to/InstallAssistant.pkg -target /
```

This should create an `Install macOS XXXXXX.app` application at your `/Applications` folder. If you wish to make a
bootable device from this installation you can use the following official guidelines:

https://support.apple.com/en-us/HT201372

            

Raw data

            {
    "_id": null,
    "home_page": null,
    "name": "applecatalog",
    "maintainer": null,
    "docs_url": null,
    "requires_python": ">=3.8",
    "maintainer_email": "doronz88 <doron88@gmail.com>",
    "keywords": "apple, download, automations, updates",
    "author": null,
    "author_email": "doronz88 <doron88@gmail.com>",
    "download_url": "https://files.pythonhosted.org/packages/8f/35/1fdb0208c007f74946086a04350b2ffd135ac4227313bb826aa6b23a200d/applecatalog-2.0.5.tar.gz",
    "platform": null,
    "description": "[![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 macOS\npython3 -m applecatalog macos list --macos\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\u279c  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\u279c  apple-catalog git:(master) \u2717 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\u279c  apple-catalog git:(master) \u2717 applecatalog macos products download 071-59953 ~/Downloads/macos\n2021-07-08 10:48:27 DoronZ.local root[21530] DEBUG downloading: UpdateBrain.zip\n100%|\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588\u2588| 2.75M/2.75M [00:00<00: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",
    "bugtrack_url": null,
    "license": null,
    "summary": "AppleCatalog download agent",
    "version": "2.0.5",
    "project_urls": {
        "Bug Reports": "https://github.com/doronz88/applecatalog/issues",
        "Homepage": "https://github.com/doronz88/applecatalog"
    },
    "split_keywords": [
        "apple",
        " download",
        " automations",
        " updates"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "9966ccb680d7b01465851f78d04caabe14cdb512aae89e1990aeb875a9a63210",
                "md5": "17e2ae1b716588f52d263ea428a62176",
                "sha256": "0e928bac7b8427c2fbdea55a8dd2b42b2e252a72afc920c8da586f5c2e52bb0a"
            },
            "downloads": -1,
            "filename": "applecatalog-2.0.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "17e2ae1b716588f52d263ea428a62176",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.8",
            "size": 6695,
            "upload_time": "2024-08-20T22:47:21",
            "upload_time_iso_8601": "2024-08-20T22:47:21.372329Z",
            "url": "https://files.pythonhosted.org/packages/99/66/ccb680d7b01465851f78d04caabe14cdb512aae89e1990aeb875a9a63210/applecatalog-2.0.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "8f351fdb0208c007f74946086a04350b2ffd135ac4227313bb826aa6b23a200d",
                "md5": "c9cf025c6586cc4c0beaa9eecd164b4a",
                "sha256": "9758a953c8334f447914bd714042901c8a3024b0d2396991aa9a8a9433aced5c"
            },
            "downloads": -1,
            "filename": "applecatalog-2.0.5.tar.gz",
            "has_sig": false,
            "md5_digest": "c9cf025c6586cc4c0beaa9eecd164b4a",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.8",
            "size": 7500,
            "upload_time": "2024-08-20T22:47:22",
            "upload_time_iso_8601": "2024-08-20T22:47:22.674599Z",
            "url": "https://files.pythonhosted.org/packages/8f/35/1fdb0208c007f74946086a04350b2ffd135ac4227313bb826aa6b23a200d/applecatalog-2.0.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-20 22:47:22",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "doronz88",
    "github_project": "applecatalog",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "requirements": [
        {
            "name": "coloredlogs",
            "specs": []
        },
        {
            "name": "tqdm",
            "specs": []
        },
        {
            "name": "click",
            "specs": []
        },
        {
            "name": "requests",
            "specs": []
        }
    ],
    "lcname": "applecatalog"
}
        
Elapsed time: 4.58182s