Registry / devops / developer-disk-image

developer-disk-image

JSON →
library0.2.0pypypiunverified

The 'developer-disk-image' Python library automates the download of Apple Developer Disk Images and Personalized Images. These images are essential for iOS development and debugging, allowing tools like Xcode to connect to devices running specific iOS versions. The library fetches these files directly from GitHub repositories. The current version is 0.2.0, with updates typically aligning with new iOS releases or Xcode versions.

pip install developer-disk-image
INSTALL
IMPORT
SIG · DEVELOPER-DISK-IMA
D
developer-disk-image
devopspythonv0.2.0
Install
2.1s avg
Import
Disk
19MB
Pass rate
10/ 10
Env Coverage10 / 10
glibc
3.93.13
musl
3.93.13
Install & Compatibility
Where this runs
tested against v0.2.0 · pip install
no network on importno background threads
Install × environment matrix
Each cell = how many times install + import succeeded across repeated harness runs. Partial = flaky.
glibc = Debian/Ubuntu slim · musl = Alpine Linux
musl
py 3.103.920 runs
installs and imports cleanly · install 0.0s · import 0.000s · 21.2MB
glibc
py 3.103.920 runs
installs and imports cleanly · install 2.1s · import 0.000s · 22MB
19MB installed
● package 19MB
Code
Verified usage

Verified import paths — ran on the pinned version, not inferred.

download_latest_developer_disk_image_for_ios_version
from developer_disk_image import download_latest_developer_disk_image_for_ios_version
from developer_disk_image import download_latest_developer_disk_image_for_ios_version

This quickstart demonstrates how to download both a Developer Disk Image and a Personalized Disk Image for specific iOS versions. It includes error handling for GitHub API rate limits and encourages the use of a `GITHUB_TOKEN` for robust operation.

import os from developer_disk_image import ( download_latest_developer_disk_image_for_ios_version, download_latest_personalized_disk_image_for_ios_version, GithubRateLimitExceededError ) # It's highly recommended to use a GitHub token to avoid API rate limits. # You can generate one at https://github.com/settings/tokens GITHUB_TOKEN = os.environ.get('GITHUB_TOKEN', '') output_directory = "." os.makedirs(output_directory, exist_ok=True) try: # Download a Developer Disk Image (e.g., for iOS 17.0) print("Downloading Developer Disk Image for iOS 17.0...") dev_image_path = download_latest_developer_disk_image_for_ios_version( version="17.0", github_token=GITHUB_TOKEN, output_dir=output_directory, verbose=True ) print(f"Developer Disk Image downloaded to: {dev_image_path}") # Download a Personalized Disk Image (e.g., for iOS 16.0) print("\nDownloading Personalized Disk Image for iOS 16.0...") pers_image_path = download_latest_personalized_disk_image_for_ios_version( version="16.0", github_token=GITHUB_TOKEN, output_dir=output_directory, verbose=True ) print(f"Personalized Disk Image downloaded to: {pers_image_path}") except GithubRateLimitExceededError: print("GitHub API rate limit exceeded. Please provide a GitHub token in the GITHUB_TOKEN environment variable or as a parameter.") except Exception as e: print(f"An error occurred: {e}")
Debug
Known issues
gotchaFrequent use without authentication will quickly hit GitHub's API rate limits, leading to `GithubRateLimitExceededError` and preventing further downloads.
fix
Always provide a GitHub Personal Access Token (PAT) via the `github_token` parameter in download functions or by setting the `GITHUB_TOKEN` environment variable. Generate a PAT at `github.com/settings/tokens`.
affects: All versions
gotchaThe specific Developer Disk Image or Personalized Image files for an iOS version on GitHub may be updated, replaced, or removed. For instance, `v0.1.0` replaced the 15.8 image with 15.5 due to issues.
fix
Ensure your version string (e.g., '17.0') is accurate. If a download fails, check the GitHub repository directly for the latest available versions and asset names. Implement robust error handling (e.g., for `GithubAssetNotFound`) in your scripts.
affects: All versions
gotchaDeveloper Disk Images are large files (often several gigabytes). Downloads can consume significant bandwidth and disk space, and may take a considerable amount of time depending on your network speed.
fix
Ensure you have sufficient disk space before initiating downloads. Use the `verbose=True` argument in the download functions to monitor the download progress and avoid assuming the script is stuck.
affects: All versions
Upgrade
Version history
0.2.0latest on PyPI · released Jul 23, 2025
Audit
Dependencies
requestsrequiredUsed for making HTTP requests to download the actual disk image files.
PyGithubrequiredUsed to interact with the GitHub API for listing releases and assets.
Agent activity
22 hits · last 30 days
node
20
Resources
developer-disk-image — pip install developer-disk-image · libregistry