/twrpdtgen

A Python library/script to automatically generate TWRP-compatible device tree from a boot/recovery image

Primary LanguageJinja

twrpdtgen

PyPi version Codacy Badge

Create a TWRP-compatible device tree only from an Android recovery image (or a boot image if the device uses non-dynamic partitions A/B) of your device's stock ROM It has been confirmed that this script supports images built starting from Android 4.4 up to Android 12

Requires Python 3.8 or greater

Installation

pip3 install twrpdtgen

Linux only: Be sure to have cpio installed in your system (Install cpio using sudo apt install cpio or sudo pacman -S cpio based on what package manager you're using)

Instructions

python3 -m twrpdtgen <path to image>

When an image is provided, if everything goes well, there will be a device tree at output/manufacturer/codename

You can also use the module in a script, with the following code:

from twrpdtgen.device_tree import DeviceTree

# Get image info
device_tree = DeviceTree(image_path)

# Dump device tree to folder
device_tree.dump_to_folder(output_path)

License

#
# Copyright (C) 2022 The Android Open Source Project
#
# SPDX-License-Identifier: Apache-2.0
#