Skip to content

programmersd21/payxt

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 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

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages