-
-
Couldn't load subscription status.
- Fork 271
Filesystem Patches
Caution
macOS host or VM required for the following commands. Linux/Windows 3rd party APFS drivers not tested, feel free to do so.
hdiutil attach -imagekey diskimage-class=CRawDiskImage -blocksize 4096 rootsudo diskutil enableownership /Volumes/System
sudo mount -urw /Volumes/SystemCopy the original dyld into the same directory as the PatchDYLD.fish (for fish shell) or PatchDYLD.sh (for other shells):
cp /Volumes/System/System/Library/Caches/com.apple.dyld/dyld_shared_cache_arm64e dyld_shared_cache_arm64e.origPatch script:
- fish: https://git.chefkiss.dev/ChefKiss/QEMUAppleSiliconTools/raw/branch/master/PatchDYLD.fish
- other shells: https://git.chefkiss.dev/ChefKiss/QEMUAppleSiliconTools/raw/branch/master/PatchDYLD.sh
Run like so:
sudo chmod +x ./PatchDYLD.fish && sudo ./PatchDYLD.fish # fish shell
sudo chmod +x ./PatchDYLD.sh && sudo ./PatchDYLD.sh # other shellsYou must currently disable the following launch services from the launch service cache: com.apple.voicemail.vmd, com.apple.CommCenter, com.apple.locationd.
Backup the original service cache:
cp /Volumes/System/System/Library/xpc/launchd.plist launchd.plistConvert the service cache to a readable plist:
sudo plutil -convert xml1 /Volumes/System/System/Library/xpc/launchd.plistEdit the service cache:
sudo nano /Volumes/System/System/Library/xpc/launchd.plistFind each service and add the following:
<key>Disabled</key>
<true/>
Like in the following image:

Eject the disk:
diskutil eject /Volumes/SystemAnd you're done. Note that you are now unable to boot without the launchd_unsecure_cache=1 boot arg until you restore the original service cache back.
Now, start the emulator once again and wait until data migration completes. You will see the setup screen. Enjoy!