About macOSdb

macOSdb catalogs which versions of open-source components ship with each macOS and Xcode release for Apple silicon. Every release is scanned directly from Apple's IPSW firmware files and Xcode archives to extract version strings from binaries, the dyld shared cache, and SDK headers.

What's tracked

Over 30 open-source components are tracked across every release, including curl, OpenSSH, SQLite, zsh, Python, Ruby, LibreSSL, and more. For macOS releases, kernel and hardware support data shows which chip families and devices are supported by each build.

How scanning works

For macOS releases:

  1. Download the IPSW firmware file from Apple
  2. Extract and mount the system disk image
  3. Scan filesystem binaries for embedded version strings
  4. Extract components from the dyld shared cache
  5. Parse kernelcaches to identify supported chips and devices

For Xcode releases:

  1. Download the XIP archive from Apple
  2. Extract the Xcode application bundle
  3. Scan toolchain binaries for version strings
  4. Parse SDK headers for component versions

Data freshness

New releases are typically scanned and published the same day Apple makes them available. When the scanner is improved to extract additional components, all existing releases are rescanned so the catalog stays consistent.

Source and license

The scanning tools and website are open source under AGPL-3.0. Release data is published under CC-BY-4.0. Both are available on GitHub.