Skip to content

Dev note on how to manually download and install Xcode simulator runtimes. Includes official Apple links, simctl instructions, manual copy methods, and legacy cache seeding for older Xcode. Consolidates multiple Stack Overflow answers into a single guide.

License

Notifications You must be signed in to change notification settings

ivanopcode/devnote-xcode-manual-runtime-install

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 

Repository files navigation

Manually Download & Install Xcode Simulator Runtimes

This guide provides detailed instructions for manually downloading and installing Xcode Simulator runtimes, including prerequisites, installation methods, verification, troubleshooting, and official download sources.

Contents

  • Prerequisites
  • Quick Start (Xcode 15+)
  • Method 2: Manual Copy of .simruntime
  • Method 3 (Legacy ≤ Xcode 14): Cache Seeding
  • Verify & Create Devices
  • Uninstall a Runtime
  • Troubleshooting
  • Known Download Sources & Direct Links
  • Credits & License

Prerequisites

Apple ID: Required to access official Apple download sources. Admin Rights: May be necessary to write to /Library. Version Compatibility: Ensure the runtime is supported by your Xcode version. If validation fails, install a compatible runtime or upgrade Xcode.

Quick Start (Xcode 15+)

The preferred method is to let Xcode install and verify runtimes automatically. Remove quarantine from the DMG to prevent install/verify failures

xattr -cr "/path/to/iOS_XX.Y_Simulator_Runtime.dmg"

Install the runtime (drag the DMG into Terminal to insert the full path)

xcrun simctl runtime add "/path/to/iOS_XX.Y_Simulator_Runtime.dmg"

If a permissions error occurs, prepend sudo

Notes:

The simctl runtime add command is designed for Apple platform runtimes distributed with Xcode 15 or later. If the error "not supported by this Xcode" appears, your Xcode version is too old for the selected runtime.

Method 2: Manual Copy of .simruntime

If the simctl command fails, you can manually mount and copy the runtime bundle.

Mount the DMG by double-clicking or using: hdiutil attach "/path/to/iOS_XX.Y_Simulator_Runtime.dmg"

Copy the .simruntime bundle to CoreSimulator runtimes:

sudo mkdir -p "/Library/Developer/CoreSimulator/Profiles/Runtimes"
sudo cp -R "/Volumes/<DMG Name>/Library/Developer/CoreSimulator/Profiles/Runtimes/*.simruntime" \
           "/Library/Developer/CoreSimulator/Profiles/Runtimes/"

Remove quarantine (Gatekeeper) if necessary:

sudo xattr -cr "/Library/Developer/CoreSimulator/Profiles/Runtimes/*.simruntime"

Restart Xcode. If the runtime does not appear, refer to the Troubleshooting section to restart CoreSimulator.

Method 3 (Legacy ≤ Xcode 14): Cache Seeding

For older Xcode versions (≤ 14), you can "seed" the cache to allow Xcode to discover a locally downloaded DMG.

Place the DMG in the following directory:

~/Library/Caches/com.apple.dt.Xcode/Downloads

If com.apple.dt.Xcode appears as a package in Finder, right-click → Show Package Contents, then create the Downloads folder.

Delete index files to force a re-scan:

rm -f ~/Library/Caches/com.apple.dt.Xcode/*.dvtdownloadableindex

Open Xcode → Preferences > Components (or Settings > Platforms), and start the same simulator download. Xcode should detect the local DMG and install it without re-downloading.

Verify & Create Devices To verify installed runtimes: xcrun simctl runtime list

To create a device targeting a specific runtime:

Example for iOS 17.0

xcrun simctl create "iPhone 15 (iOS 17)" \
  "com.apple.CoreSimulator.SimDeviceType.iPhone-15" \
  "com.apple.CoreSimulator.SimRuntime.iOS-17-0"

Uninstall a Runtime

To remove a runtime: sudo rm -rf "/Library/Developer/CoreSimulator/Profiles/Runtimes/iOS 17.0.simruntime" xcrun simctl runtime list

Troubleshooting

"Developer cannot be verified" / Quarantine Issues:

xattr -cr "/path/to/iOS_XX.Y_Simulator_Runtime.dmg"
or after installation:
sudo xattr -cr "/Library/Developer/CoreSimulator/Profiles/Runtimes/<name>.simruntime"

Runtime Does Not Appear in Xcode: Quit Xcode first

xcrun simctl shutdown all 2>/dev/null || true
pkill -f CoreSimulator || true
pkill -f "com.apple.CoreSimulator.CoreSimulatorService" || true

Reopen Xcode → Settings > Platforms

"Not supported by this Xcode":Install an older runtime compatible with your Xcode version or upgrade Xcode.

"No mountable file systems" when opening DMG:The DMG is likely corrupted. Re-download using a web browser, which supports safer resume functionality.

Download Stalls or Is Slow:Use aria2c for faster multi-connection downloads: brew install aria2 aria2c -x10 "<DMG_URL>"

Xcode Ignores DMG in Cache:Ensure the filename matches exactly (no extra spaces) and recreate the Downloads folder if missing.

Find Official Download URL:Start a download in Xcode, cancel it, and check Console logs or run Xcode with sudo to reveal the URL: sudo /Applications/Xcode.app/Contents/MacOS/Xcode

Then navigate to Xcode → Settings → Platforms, start and cancel a simulator download, and copy the URL from Terminal logs.

Known Download Sources & Direct Links

Official Sources (Recommended)

Sign in: https://developer.apple.com/account/ Xcode builds: https://developer.apple.com/download/all/?q=xcode iOS simulators: https://developer.apple.com/download/all/?q=ios

Note: Apple requires a sign-in and typically provides only the latest revision per runtime. Direct DMG Links (Apple Sign-In Required) Newest runtimes are listed first; availability may vary.

Version Download Link
iOS 18.2 iOS 18.2 Simulator Runtime
iOS 18.1 iOS 18.1 Simulator Runtime
iOS 18.0 iOS 18.0 Simulator Runtime
iOS 17.4 iOS 17.4 Simulator Runtime
iOS 17.2 iOS 17.2 Simulator Runtime
iOS 17.0.1 iOS 17.0.1 Simulator Runtime
iOS 15.5 iOS 15.5 Simulator Runtime
iOS 15.4 iOS 15.4 Simulator Runtime
iOS 15.2 iOS 15.2 Simulator Runtime
iOS 14.5 iOS 14.5 Simulator Runtime
iOS 14.4 iOS 14.4 Simulator Runtime
iOS 14.3 iOS 14.3 Simulator Runtime
iOS 14.2 iOS 14.2 Simulator Runtime
iOS 14.1 iOS 14.1 Simulator Runtime
iOS 14.0 iOS 14.0 Simulator Runtime
iOS 13.7 iOS 13.7 Simulator Runtime
iOS 13.6 iOS 13.6 Simulator Runtime
iOS 13.5 iOS 13.5 Simulator Runtime
iOS 13.4 iOS 13.4 Simulator Runtime
iOS 13.3 iOS 13.3 Simulator Runtime
iOS 13.2 iOS 13.2 Simulator Runtime
iOS 13.1 iOS 13.1 Simulator Runtime
iOS 13.0 iOS 13.0 Simulator Runtime
iOS 12.4 iOS 12.4 Simulator Runtime
iOS 12.2 iOS 12.2 Simulator Runtime
iOS 12.1 iOS 12.1 Simulator Runtime
iOS 12.0 iOS 12.0 Simulator Runtime
iOS 11.4 iOS 11.4 Simulator Runtime
iOS 11.3 iOS 11.3 Simulator Runtime
iOS 11.2 iOS 11.2 Simulator Runtime
iOS 11.1 iOS 11.1 Simulator Runtime
iOS 11.0 iOS 11.0 Simulator Runtime
iOS 10.3.1 iOS 10.3.1 Simulator Runtime

Tip: For a machine-readable index of runtimes, Apple hosts: https://devimages-cdn.apple.com/downloads/xcode/simulators/index2.dvtdownloadableindex

Credits & License

This guide consolidates knowledge from Stack Overflow answers by (alphabetical): Amit Vaghela, Asma Ahmed, Dave, Divyesh, emp, Jeremy Eaton, kia.tech, Krunal, Mojtaba Hosseini, Mr.jie, Shamsudheen TK, Sbe-ng, superquanganh, Suraj Sonawane, 2xSamurai, alireza rl.

Stack Overflow user contributions are licensed under CC BY-SA. Please retain attribution if reusing this content. Repository License: This README licensed under MIT; external quotes and links remain under CC BY-SA.

About

Dev note on how to manually download and install Xcode simulator runtimes. Includes official Apple links, simctl instructions, manual copy methods, and legacy cache seeding for older Xcode. Consolidates multiple Stack Overflow answers into a single guide.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published