An enthusiast project has booted Apple’s own operating system on a budget Redmi Note 12 4G. This is not an iPhone-style theme or launcher running on top of Android. The phone loads Apple’s kernel, lock screen and boot logo, and its settings identify the device as an iPhone X. The port is experimental and far from usable as a daily phone. It takes about three minutes to reach the lock screen, half of the processor is disabled, and calls, Wi-Fi, sound and the App Store do not work.

iOS 16 running on a Xiaomi smartphone

iOS 16 on a Xiaomi smartphone

What you need to know

  • The ios-topaz project, by a developer known as MakrSas, runs Apple’s open-source XNU kernel and iOS 16.5 system components from iPhone X firmware on a Redmi Note 12 4G with a Snapdragon 685.
  • Only four of the chip’s eight cores are active, because the energy-efficient cores cannot handle the 16 KB memory pages Apple’s system uses.
  • The phone takes about three minutes to boot to the lock screen. Cellular service, Wi-Fi, Bluetooth, sound, cameras, GPS, sensors, the App Store and Apple ID sign-in do not work.
  • Installation erases all Android data and leaves system security almost entirely disabled. The developers describe the port as an experiment, not a daily-use system.

Not a theme or a launcher

Android users have long been able to install iPhone-style themes, icon packs and launchers, but Android still runs underneath. This project goes further. The developer adapted Apple’s open XNU kernel to the Redmi Note 12 4G and then ran iOS 16.5 system components from iPhone X firmware on top of it. No emulation is involved and no Android layer sits underneath: the phone boots Apple’s system directly.

The system identifies itself in Settings as an iPhone X. Only the hardware is still Xiaomi’s.

The About screen of iOS on a Xiaomi smartphone

The “About” section on a Xiaomi smartphone running iOS

The work builds on an earlier project, ios-sweet by the team dipa-studio. That project was the first to run Apple’s kernel on the Redmi Note 10 Pro, which uses a Snapdragon 732G. ios-topaz carried that work over to a newer model, but the move required some serious compromises.

Half the processor had to be switched off

Apple’s system works with 16 KB memory pages, and the Snapdragon 685’s energy-efficient cores do not support them. As a result, only four of the chip’s eight cores run, and the rest are disabled. The processor also lacks some modern instructions, so the kernel has to emulate them in software.

Graphics are a bigger problem. There is no driver for the GPU, so the CPU renders the interface. On the Redmi Note 10 Pro, where the project has progressed further, this produces about 20–30 frames per second. For comparison, modern smartphone screens refresh four to six times more often.

Three minutes on the Apple logo

After it is powered on, the Redmi Note 12 4G sits on the Apple logo for roughly three minutes before the lock screen appears. On the Note 10 Pro, booting takes about four minutes. The system cannot yet read the real-time clock, so the date resets to December 31 every time the phone starts.

An empty app list on a Xiaomi smartphone running iOS

An empty app list on a Xiaomi phone running iOS

What works and what doesn’t

Redmi Note 10 Pro

The Redmi Note 10 Pro port is the most advanced. The following already work on it:

  • the touchscreen
  • the power and volume buttons
  • the lock screen
  • Settings
  • Control Center
  • Notification Center
  • some system apps

Users cannot leave an open app, however, because the home gesture does not work yet.

Redmi Note 12 4G

On the Redmi Note 12 4G, the system reaches the lock screen, but reports of what happens beyond that differ. A video circulating on social media appears to show the screen responding to touch. The developer, however, writes that the touch driver has been written but not verified, and that the buttons have not been ported yet.

Missing on both phones

The list of features that do not work is the same on both devices:

  • cellular service, so calls and SMS are impossible
  • Wi-Fi and Bluetooth
  • sound and cameras
  • GPS and sensors
  • the App Store and Apple ID sign-in

The result is a convincing-looking iPhone X that cannot make calls, go online or download apps. Even so, plenty of people are keen to try it, especially because the code is open.

Possible to install, but not recommended

Installing iOS on a Xiaomi smartphone

Installing iOS on a Xiaomi smartphone

Any Redmi Note 12 4G owner can technically repeat the experiment, but the barrier to entry is high. The requirements include:

  • a phone with an unlocked bootloader
  • a Linux computer with fastboot
  • a GitHub account, used to build the kernel on macOS servers
  • iOS firmware for the iPhone X, which users must download from Apple themselves

No ready-made build is available. The developers do not distribute Apple’s system and state explicitly that iOS belongs to Apple.

The risks are significant:

  • Installation erases all Android data.
  • System security is almost entirely disabled, so personal accounts should not be kept on a phone running the port.
  • The developers themselves call the project an experiment, not a system for everyday use.