A modified version of marzipanify (originally created by @stroughtonsmith) that allows bringup of the Contacts app from the iOS 14 Simulator as well as some iOS system apps on macOS Big Sur. This tool is unsupported.
A previous version of this repo supported macOS Catalina. See the commit history for more details.
This tool has not been tested on macOS Monterey; as such, these instructions are only valid for macOS Big Sur 11.6.x. You may need to modify code (e.g. changing the versions the tool sets in LC_BUILD_VERSION et al.) to make this work on macOS Monterey.
Before you begin, copy Contacts.app from the iOS 14 Simulator runtime to a directory where you have write access. How to do this is left as an exercise to the reader.
If you don't already have Xcode or the Command-Line Tools installed, you can install the necessary things with xcode-select --install
.
There is no need to disable SIP.
From here, the steps are:
git clone <repo-url>
cd /path/to/repo/
make
make remove-x86 APPNAME=Contacts BINNAME=Contacts
(This step useslipo
to remove unwanted slices. If on Intel, changeremove-x86
toremove-arm64
.)./marzipanify /path/to/Contacts.app
make unquarantine
(This disables the Gatekeeper warning when you run the app.)- Run your app!
On Macs with Apple silicon, this tool supports converting iOS system apps from an IPSW file to Mac Catalyst apps. Here's how to do this:
- Download an iOS 14.7.x or iPadOS 14.7.x IPSW (iPadOS recommended) for a device with the A11 processor or older. There are websites online that allow you to do this.
- The processor requirement is important - A12 and newer devices use the arm64e architecture instead of arm64, but macOS on Apple Silicon does not (yet) support running arm64e binaries without first disabling SIP and setting an NVRAM boot argument. In addition, enabling arm64e support is only recommended when you are developing drivers with DriverKit. For more details, see Apple's documentation here.
- Rename the .ipsw file extension to .zip, then double-click the zip file to extract its contents.
- There will be three DMG files in the extracted zip file's contents. Double-click the largest one to mount it. This is the root filesystem.
- In the past, root filesystem DMGs in IPSWs were encrypted. This is no longer the case.
- In the mounted volume, system applications can be found in /Applications as well as /var/staged_system_apps. Copy the apps you want to convert to a directory where you have write access. The Contacts app is a good first app to try.
- Follow the steps in the "Howto" section to convert these apps to Mac Catalyst apps, but skip the
make remove-x86
step (iOS apps do not contain an x86_64 slice). Please note that some apps will not run due to differences in libraries present in iOS and in macOS. If you want to figure out what is causing an app to crash, it is best to inspect the crash report. - That's all!
iOS Simulator:
- Contacts (14.5)
- Only tested on Apple silicon
iOS:
- Calculator (14.7.1)
- Has oversized buttons, but otherwise works well and responds to resizing the window. With a couple tweaks, Apple could ship this on iPad.
- Contacts (14.7.1)