checkra1n / Pongoos
Licence: other
pongoOS
Stars: ✭ 1,058
Programming Languages
c
50402 projects - #5 most used programming language
Labels
Projects that are alternatives of or similar to Pongoos
Toaruos
A completely-from-scratch hobby operating system: bootloader, kernel, drivers, C library, and userspace including a composited graphical UI, dynamic linker, syntax-highlighting text editor, network stack, etc.
Stars: ✭ 4,687 (+343.01%)
Mutual labels: bootloader
Hoodloader2
16u2 Bootloader to reprogram 16u2 + 328/2560 with Arduino IDE
Stars: ✭ 509 (-51.89%)
Mutual labels: bootloader
Awesome Embedded
A curated list of awesome embedded programming.
Stars: ✭ 831 (-21.46%)
Mutual labels: bootloader
Hackintosh Installer University
Open source tutorial & information collector for hackintosh installation.
Stars: ✭ 3,815 (+260.59%)
Mutual labels: bootloader
Aio Boot
AIO Boot is an All-in-One bootable software for USB and HDD. Is one of the best Multiboot USB Creator for Windows.
Stars: ✭ 300 (-71.64%)
Mutual labels: bootloader
P Load
The Pololu USB Bootloader Utility (p-load) is a command-line program that allows you to read and write from the memories of certain Pololu USB bootloaders.
Stars: ✭ 6 (-99.43%)
Mutual labels: bootloader
Hackintosh
Hackintosh long-term maintenance model EFI and installation tutorial
Stars: ✭ 6,589 (+522.78%)
Mutual labels: bootloader
Moto G5p Toolkit
A toolkit for unlocking the bootloader and rooting Moto G5 Plus built with Electron. Runs on Windows, Linux and macOS.
Stars: ✭ 26 (-97.54%)
Mutual labels: bootloader
Bootstomp
BootStomp: a bootloader vulnerability finder
Stars: ✭ 303 (-71.36%)
Mutual labels: bootloader
Stm32 Bootloader
Customizable Bootloader for STM32 microcontrollers. This example demonstrates how to perform in-application-programming of a firmware located on an external SD card with FAT32 file system.
Stars: ✭ 541 (-48.87%)
Mutual labels: bootloader
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
ld64
and cctools'strip
.- On Debian/Ubuntu these can be installed from the checkra1n repo:
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.
- On Debian/Ubuntu these can be installed from the checkra1n repo:
- Run
make all
If 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:
EMBEDDED_CC=clang EMBEDDED_LDFLAGS=-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 PongoOS -
Pongo.bin
- Same as the above, but as a bare metal binary that can be jumped to -
checkra1n-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/
.- Build-time helper tools are in
tools/
.
- Build-time helper tools are in
- The stdlib used by PongoOS (Newlib) is in
aarch64-none-darwin
.- This includes a custom patch for Newlib to work with the Darwin ABI.
- An example module exists in
example/
. - Scripts to communicate with the PongoOS shell are in
scripts/
.- This includes
pongoterm
, an interactive shell client for macOS.
- This includes
- The checkra1n kernel patchfinder (KPF) is in
checkra1n/kpf
.- This currently includes the SEP exploit, though that is to be moved into mainline PongoOS in the future.
- A userland version of the KPF can be built from
checkra1n/kpf-test
(can only be run on arm64).
Note that the project description data, including the texts, logos, images, and/or trademarks,
for each open source project belongs to its rightful owner.
If you wish to add or remove any projects, please contact us at [email protected].