pongoOS
Last updated Jul 7, 2026
2.7k
Stars
475
Forks
46
Issues
+8
Stars/day
Attention Score
74
Topics
Language breakdown
No language data available.
โธ Files
click to expand
README
pongoOS
A pre-boot execution environment for Apple boards built on top of checkra1n.
Building on macOS
- Install Xcode + command-line utilities
- Run
make all
Building on Linux
- Install clang (if in doubt, from apt.llvm.org)
- Install
ld64and cctools'strip.
echo 'deb https://assets.checkra.in/debian /' | sudo tee /etc/apt/sources.list.d/checkra1n.list
sudo apt-key adv --fetch-keys https://assets.checkra.in/debian/archive.key
sudo apt-get update
sudo apt-get install -y ld64 cctools-strip
- On other Linux flavours you'll likely have to build them yourself. Maybe this repo will help you.
- Run
make all
clang, ld64 or cctools-strip don't have their default names/paths, you'll want to change their invocation. For reference, the default variables are equivalent to:
EMBEDDEDCC=clang EMBEDDEDLDFLAGS=-fuse-ld=/usr/bin/ld64 STRIP=cctools-strip make all
Build artifacts
The Makefile will create four binaries in build/:
Pongo- A Mach-O of the main PongoOSPongo.bin- Same as the above, but as a bare metal binary that can be jumped tocheckra1n-kpf-pongo- The checkra1n kernel patchfinder, as a Pongo module (Mach-O/kext)PongoConsolidated.bin- PongoOS and the KPF merged into a single binary
Usage
checkra1n -k Pongo.bin # Boots to Pongo shell, KPF not available checkra1n -k PongoConsolidated.bin # Auto-runs KPF and boots to XNU checkra1n -k PongoConsolidated.bin -p # Loads KPF, but boots to Pongo shell
Contributions
By submitting a pull request, you agree to license your contributions under the MIT License and you certify that you have the right to do so. If you want to import third-party code that cannot be licensed as such, that shall be noted prominently for us to evaluate accordingly.
Structure
- The core PongoOS and drivers are in
src/.
tools/.
- The stdlib used by PongoOS (Newlib) is in
aarch64-none-darwin.
- An example module exists in
example/. - Scripts to communicate with the PongoOS shell are in
scripts/.
pongoterm, an interactive shell client for macOS.
- The checkra1n kernel patchfinder (KPF) is in
checkra1n/kpf.
- A userland version of the KPF can be built from
checkra1n/kpf-test(can only be run on arm64).
๐ More in this category