programmersd21/payxt

GitHub: programmersd21/payxt

Stars: 4 | Forks: 0

# payxt Modern Android OTA payload.bin extractor in Python 3.12+. ## Screenshots ### List Partitions ![List Partitions](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/c77213ef5f150659.png) ### View Manifest ![View Manifest](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/b297d7b446150705.png) ### Extract Partitions ![Extract Partitions](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/3d931ad2c1150711.png) ### Verify Hashes ![Verify Hashes](https://static.pigsec.cn/wp-content/uploads/repos/2026/06/778176e2fc150716.png) ## Features - **High Performance:** Parallel extraction, streaming IO, memory-efficient. - **Protobuf Powered:** Uses AOSP `DeltaArchiveManifest`. - **Streaming Support:** Local files, ZIP archives, and HTTPS URLs (via Range requests). - **Compression:** Supports `REPLACE`, `REPLACE_BZ`, `REPLACE_XZ`, `REPLACE_ZSTD`. - **Verification:** SHA256 integrity checks. - **Modern CLI:** Beautiful UI with `rich` and `typer`. ## Installation ### Clone the repository git clone https://github.com/programmersd21/payxt.git cd payxt ### Install from source pip install . ### Or install directly from GitHub pip install git+https://github.com/programmersd21/payxt.git ## Usage # Extract all partitions payxt extract payload.bin # Extract selected partitions from a URL payxt extract https://example.com/ota.zip --partitions boot,vendor # List partitions payxt list payload.bin ## Architecture `payxt` follows a modular architecture inspired by AOSP `update_engine`: - `core/`: Payload header and manifest parsing. - `operations/`: Strategy-based handlers for different installation operations. - `streaming/`: Abstracted IO for files, ZIPs, and network. - `protobuf/`: Generated bindings for Android OTA metadata.