Improved Dynamic Devices Support
- FW: Exclude dynamic_partitions_op_list from and exaid firmware zip and updater-script
- Vendor: Use modified dynamic_partitions_op_list with resize vendor line only
A/B devices support is here
Xiaomi has released Mi 11 with virtual A/B partitions. This is the first device with MIUI interface that uses A/B since it was just limited to Android One devices. So, It became more necessary to add update payload support to our tool
So, now you can use Xiaomi Flashable Firmware Creator to create firmware packages for Mi 11, Mi A3, Mi A2, and Mi A2 Lite.
For now, only firmware packages can be created, I will add fw+vendor packages support soon.
Note: The payload.bin extract part is handled using extract_android_ota_payload tool.
Finally, I would like to thanks @nullbytepl for helping with the
V2.0 is here
This is a complete re-write of the tool, with tons of improvements. However, backward compatibility is maintained and you can use it just like V1.
With this version, the code has been separated into two repositories, this one for the core and CLI tool, and xiaomi-flashable-firmware-creator-gui for the GUI tool.
Remote Zip files support
This version adds the ability to extract and create firmware zip files from remote zips along with local zip files. All you need to do is to pass a direct link to the MIUI zip as a file argument and the tool will create the required zip from it without having to download the whole ROM zip thanks to python-remotezip.
Also, the tool can be used from other python scripts by importing the firmware creator class. Detailed instruction is available in README file.
Finally, you can install the tool from Python PyPi now using pip command.
To install the CLI tool use
pip install xiaomi_flashable_firmware_creator and for the GUI one use
pip install xiaomi_flashable_firmware_creator_gui.
* use regex for getting device codename form updater-script * fix all pylint warnings * update check_firmware logic * use formatted strings instead of concatenation * always remove old files on start, if exists
* as splash, dtbo and vbmeta are no longer included in fw zip, there's no need for including its lines in updater-script