Fixing ‘Unable to Access Default Device–Set’ in Xcode
TL;DR
If you encounter “Unable to access default device–set” when creating simulators in Xcode, fix directory ownership:
sudo chown -R $(whoami):staff ~/Library/Developer
Restart XCode
Then reimport the simulator runtime and recreate your simulators.
The Problem
When attempting to create a new simulator in Xcode, you may encounter:
Unable to access default device–set
This error occurs due to permission issues with the ~/Library/Developer/CoreSimulator/Devices directory. Apple Developer Forums discuss this issue (thread 1, thread 2), but lack clear solutions.
Troubleshooting Steps
I attempted several fixes that didn’t work:
- Restarting the Mac
- Reinstalling Xcode
- Changing the
xcode-selectpath:sudo xcode-select -s ~/Downloads/Xcode.app/ - Manually installing the Simulator runtime (guide)
Root Cause
Running these commands failed with permission errors:
xcrun simctl list devices
xcodebuild -importPlatform ~/Downloads/iOS_18.2_Simulator_Runtime.dmg
The error logs revealed:
Error Domain=com.apple.CoreSimulator.SimError Code=400 "Unable to determine SimDeviceSet for subscriptions, set_path=~/Library/Developer/CoreSimulator/Devices"
The ~/Library/Developer directory was owned by root instead of your user:
mkdir ~/Library/Developer/CoreSimulator
# Permission denied
The Solution
Change ownership to match your ~/Library directory:
ll ~/Library
# drwx------@ 101 paul staff 3232 7 Feb 08:01 Library
sudo chown -R paul:staff ~/Library/Developer
Then reimport the simulator runtime:
xcodebuild -importPlatform ~/Downloads/iOS_18.2_Simulator_Runtime.dmg
Success:
importing ~/Downloads/iOS_18.2_Simulator_Runtime.dmg
Registered as 9A66D486-5FAE-436A-B0E3-DC2AA9F9****.
You can now create simulators via Xcode → Window → Devices and Simulators → +.