Skip to content

programmersd21/payxt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

payxt

Modern Android OTA payload.bin extractor in Python 3.12+.

Screenshots

List Partitions

List Partitions

View Manifest

View Manifest

Extract Partitions

Extract Partitions

Verify Hashes

Verify Hashes

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.

About

📦 Modern Android OTA payload.bin extractor written in Python. Supports streaming extraction, OTA ZIPs, partition selection, protobuf manifest parsing, and modern compression formats.

Topics

Resources

License

Stars

4 stars

Watchers

1 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages