Getting started

Three ways in, from the one that needs nothing to the one that needs a phone. Each page says what you need, what to run, what you should see, and what to check when you do not see it.

What you get What you need Time
The open kernel in QEMU the kernel, the loader and a tiny user space, booting a Linux or macOS machine, QEMU minutes
iOS in QEMU the lock screen and the home screen in a window Linux, 12 GB of disk, Apple's IPSW (downloaded for you) an hour, mostly downloads
On the phone the system on a POCO X5 Pro 5G, in RAM the phone, its boot loader unlocked, adb and fastboot an hour the first time

Building from source is optional for all three: prebuilt/ has a kernel, a loader and libraries made from these repositories. Building from source when you change something.

Your machine

Host What works Notes
Linux x86-64 everything the reference: CI runs here
macOS (Apple silicon) building the kernel, the loader, user space; the tests QEMU from Homebrew for running; the phone through adb/fastboot
Windows everything, split between WSL 2 and Git Bash Windows says what runs where

make doctor checks the machine (and a phone on adb) for what HakiOS needs, and says what to install.

Where to go next

  • Architecture: how a boot goes, from UEFI to the home screen, and which part does what.
  • Configuration: defconfigs, fragments, and what a CONFIG_ symbol turns into.
  • Port a device: your own phone, step by step.

View the source of this page