PaleRa1n written in C — direct boot to PongoOS | iOS 15–16.4
A semi-tethered jailbreak for A8–A11 devices running iOS/iPadOS 15.0–16.4, built from source on Apple Silicon (M4) macOS.
A prebuilt macOS ARM64 binary is included at the root of this repo:
./palera1n
Built on: Wed Apr 8 07:49 MDT 2026
Version: 2.0.0
Platform: macOS (Apple Silicon, arm64)
palera1n [-DEhpvVdsSLRnPI] [-e boot arguments] [-k Pongo image]
[-o overlay file] [-r ramdisk file] [-K KPF file] [-i checkra1n file]
Options:
--version Print version
--force-revert Remove jailbreak
-d, --demote Demote
-D, --dfuhelper Exit after entering DFU
-e, --boot-args <args> XNU boot arguments
-E, --enter-recovery Enter recovery mode
-h, --help Show help
-i, --override-checkra1n <f> Override checkra1n binary
-k, --override-pongo <f> Override Pongo image
-K, --override-kpf <f> Override kernel patchfinder
-L, --jbinit-log-to-file Log jbinit to /cores/jbinit.log
-n, --exit-recovery Exit recovery mode
-I, --device-info Print info about connected device
-o, --override-overlay <f> Override overlay
-p, --pongo-shell Boot to PongoOS shell
-P, --pongo-full Boot to PongoOS shell with default images
-r, --override-ramdisk <f> Override ramdisk
-R, --reboot-device Reboot connected device
-s, --safe-mode Boot in safe mode
-S, --no-springs Boot without SpringBoard
-v, --verbose Verbose logging
-V, --verbose-boot Verbose boot
brew install autoconf automake libtool pkg-config openssl@3 mbedtls readlinegit clone https://github.com/sudo-self/Palera1n-C.git
cd Palera1n-C
# Fix permissions and download deps
sudo chown -R $(whoami) .
./download_deps.sh
PREFIX="$(pwd)/dep_root"
# Build in order
for lib in libplist libimobiledevice-glue libusbmuxd libirecovery libimobiledevice; do
cd $lib
PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig" ./autogen.sh --prefix="$PREFIX" --without-cython 2>/dev/null || \
PKG_CONFIG_PATH="$PREFIX/lib/pkgconfig" ./autogen.sh --prefix="$PREFIX"
make -j$(sysctl -n hw.logicalcpu) && make install
cd ..
done
# Copy mbedtls, readline, and openssl into dep_root
OPENSSL=$(brew --prefix openssl@3)
cp $(brew --prefix mbedtls)/lib/libmbed{tls,crypto,x509}.a "$PREFIX/lib/"
cp $(brew --prefix readline)/lib/libreadline.a "$PREFIX/lib/"
cp "$OPENSSL/lib/lib"{ssl,crypto}.a "$PREFIX/lib/"
cp -r "$OPENSSL/include/openssl" "$PREFIX/include/"# Fix strict-prototypes and missing sys/stat.h
sed -i '' 's/-pedantic-errors/-pedantic-errors -Wno-strict-prototypes/' Makefile
grep -rL "sys/stat.h" src/*.c | xargs -I{} sed -i '' '1s/^/#include <sys\/stat.h>\n/' {}
# Add OpenSSL to link flags
sed -i '' 's|-framework CoreFoundation|-framework CoreFoundation $(DEP)/lib/libssl.a $(DEP)/lib/libcrypto.a|' Makefile
makeThe binary will be at src/palera1n.
- A11 devices (iPhone X, 8, 8 Plus): disable your passcode while jailbroken. On iOS 16, reset your device before proceeding.
- USB-A cables are recommended. USB-C may have issues asserting DFU mode.
- AMD desktop CPUs have a low success rate with the checkm8 exploit.
- Apple Silicon Macs: if checkm8 fails, try unplugging and replugging the lightning cable, or use a USB hub.
- palera1n will not work inside VirtualBox, VMware, or any VM without PCI passthrough.
Built by: Nick Chan, Ploosh, Mineek, Nebula, llsc12
Thanks to: dora2ios, pythonplayer, tihmstar, nikias (libimobiledevice), the checkra1n team (Siguza, axi0mx, littlelailo et al.), Procursus Team (Hayden Seay, Cameron Katri, Keto et al.)



