Comment by bri3d
3 days ago
The eShard thing and this GitHub are fairly different, as far as I know.
The eShard people found an earlier version of this repository and set about patching one billion parts of the iOS kernel, library cache, and userland to make it run on the limited emulator.
Meanwhile, the actual emulator has been advancing, arguably more quickly than the eShard patch set.
The current set of patches needed for the latest commits on this repo to run iOS are less than 10 instructions, all to enable the software-rendering/framebuffer fallback code path instead of trying to use display drivers.
https://github.com/ChefKissInc/QEMUAppleSilicon/wiki/Filesys...
In the interest of completeness I looked deeper and there are a few more patches to the kernel and SEP OS done at emulation time:
https://github.com/ChefKissInc/QEMUAppleSilicon/blob/6eff3ab...
but really nothing too extensive or hard to port. It’s mostly flipping various can_has_debug returns, bypassing sigcheck, and the classic patch to flip launchd into research device mode.
> set about patching one billion parts of the iOS kernel, library cache, and userland to make it run on the limited emulator
You don’t say! They’ve hacked the whole process and it feels extremely brittle. Like there’s no chance they can sustainably port this to another version of the software, let alone hardware.
eShard provided ChefKissInc with the whole patches like a year ago to show him what he had to do in order to have the UI working and sponsored its project with both hardware, financial support and knowledge. Both thing are really just different side of the same common goal. I got told that they have iOS 18 already working and 26 on the way, so probably that in a year or so QEMUAppleSilicon will also have that for everyone to use !
Thanks for the wiki pointer.