How elcapitanoe/build-prop-beta works
Build Prop BETA Builder fetches Pixel OTA builds, extracts partition and boot images, synthesizes Android properties and sysconfig files, and packages them as flashable Magisk/KernelSU/APatch modules. Its main local workflow runs from target selection and OTA download through extraction, generation, and packaging. A separate tracker probes Google release pages and persists release changes. The README documents the shell build stages and module runtime; those links are represented at the documented level because their source was not sampled.
Main entry points: extract_images.sh Image Extraction · main.py Tracker Orchestrator · build_module.sh Module Packaging · customize.sh Module Installer
Components 20
OTA Build
- OTA Download
download_latest_ota_build.sh - Image Extraction
extract_images.sh - Extraction Utilities
util_functions.sh - Property Synthesis
build_props.sh - Sysconfig Extraction
build_sysconfig.sh - Module Packaging
build_module.sh
Release Tracker
- Device Discovery
src/devices.py - Tracker Orchestrator
src/main.py - OTA HTTP Client
src/client.py - OTA Page Parser
src/parser.py
Flashable Module
- Module Templates
module_files - Module Installer
module_files/customize.sh - Early Boot Overrides
module_files/post-fs-data.sh - Boot Property Service
module_files/service.sh
Persistent State
- State Persistence
src/state.py - Tracker State
data/state.json
Other components
- User
- Google OTA Pages
- Payload Dumper
- Scheduled Trigger
Connections 21
- User → OTA Download: selects target
- OTA Download → Google OTA Pages: fetches build
- User → Image Extraction: starts build
- Image Extraction → Extraction Utilities: uses helpers
- Image Extraction → Payload Dumper: extracts payload
- Image Extraction → Property Synthesis: invokes generation
- Image Extraction → Sysconfig Extraction: invokes extraction
- Property Synthesis → Module Packaging: provides properties
- Sysconfig Extraction → Module Packaging: provides XMLs
- Module Packaging → Module Templates: assembles scripts
- Module Packaging → Module Installer: includes
- Module Installer → Early Boot Overrides: installs module
- Module Installer → Boot Property Service: installs module
- Scheduled Trigger → Tracker Orchestrator: triggers probe
- Tracker Orchestrator → State Persistence: loads and saves
- State Persistence → Tracker State: reads and writes
- Tracker Orchestrator → OTA HTTP Client: fetches pages
- OTA HTTP Client → Google OTA Pages: requests pages
- Tracker Orchestrator → OTA Page Parser: validates and parses
- Device Discovery → Tracker State: reads target
- Device Discovery → Google OTA Pages: scrapes devices