Unpacker Kitchen for Android(UKA)

Search This thread

ElZy GreVee

Member
Jan 12, 2016
6
0
Anybody have any idea of how i end up failed to repack the vendor.new.dat.br that i unpacked earlier?

FYI unpack & repack system.new.dat.br work just fine
 

Attachments

  • IMG_20211029_192103.jpg
    IMG_20211029_192103.jpg
    186.4 KB · Views: 176

ElZy GreVee

Member
Jan 12, 2016
6
0
Build an image with the size of the folder, with the input of the size, or with the addition of N mb
I've tried that before, success, and with the repacked size bigger than the original one, is that normal? Im only change 1 small file with exact sam size.
While flashing the modified rom, i'm facing 2 issues:
1. vendor failed to flash, the error message is something like "dynamic partition op list"
2. Then i matching the size of output repack vendor to the dynamic partition op list file, flashing work just fine, then bootloop
 

kory-vadim

Member
Dec 12, 2016
21
16
I've tried that before, success, and with the repacked size bigger than the original one, is that normal? Im only change 1 small file with exact sam size.
While flashing the modified rom, i'm facing 2 issues:
1. vendor failed to flash, the error message is something like "dynamic partition op list"
2. Then i matching the size of output repack vendor to the dynamic partition op list file, flashing work just fine, then bootloop
Register the size (raw) of the resulting image in dinamic_partitions_op_list
 

kory-vadim

Member
Dec 12, 2016
21
16
I've tried that before, success, and with the repacked size bigger than the original one, is that normal? Im only change 1 small file with exact sam size.
While flashing the modified rom, i'm facing 2 issues:
1. vendor failed to flash, the error message is something like "dynamic partition op list"
2. Then i matching the size of output repack vendor to the dynamic partition op list file, flashing work just fine, then bootloop
Flash the patched vbmeta.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 1
    A step by step guide so we can take a xiaomi update.zip and make custom builds.
    What kind of update.zip? OTA? Recovery firmware zip? You have to be more specific. It depends on the files inside the zip. Did you already unpack the archive to see what files are in there?

    OTA => never contains whole firmware images! Only single file system blocks. File size < 300MB

    Recovery.zip = whole firmware images with *.dat.br (brotli compressed *.dat files) and *.list file extensions. To unpack them use:
    Code:
    su
    menu
    
    # use option:
    5.) => Unpack .br
    # and/or
    6.) => Unpack .dat
    # accordingly to the files inside your zip.

    You do not need a step by step guide to use UKA. You need a better understanding of the different file types that are used by Android. I strongly recommend you to use a Linux OS instead of Windows when dealing with ext4 file systems and all the other file types on your desktop to modify them.
    1
    I m interested in taking each update of miui make them debloated ,disable force encrypted e.t.c and then make a zip for flashing the rom.
    It doesn't make sense to build a flashable ROM. I assume you're using TWRP or OF to flash the zips?

    A normal OTA.zip contains 3 files for each updated system partition, e.g. /system => system.transfer.list + system.new.dat + system.patch.dat.
    The last one isn't important, so we ignore it.

    system.new.dat => contains the new blocks for /system (all or only the updated ones)

    system.transfer.list => Holds the information at which address the blocks of system.new.dat should be written to

    What you are trying to do: system.transfer.list + system.new.dat => system.img (raw image by using sdat2img) => modify it => repack it to system.transfer.list + system.new.dat => flash it, where it gets unpacked to a raw image again.

    What you should do: system.transfer.list + system.new.dat => system.img => modify it => flash it to /system using fastboot or TWRP.

    That's much easier than building a complete new OTA.zip.
    1
    yes TWRP and ofox sometimes
    my plan is making a build custom rom from ota.zip
    like this:
    Send me a link to the ota.zip you like to customize.
    1
    I see the spirit. Thank u for extended answer brother.
    Will give a try
    1
    Xiaomi.eu change file
    Now, How to unpack super.img.0
    View attachment 5823507
    Rename all of them into super.img_sparsechunk.0, super.img_sparsechunk.1,......

    Then copy or move them to root/data/local/UnpackerQfil

    Termux > su > menu > 11 > 4 > 1

    Done, the output img will be there in the UnpackerQfil/output. Just unpack it as you unpack img files normally
  • 9
    version: 4.9.4

    Last update of the program in the header: 04/06/2020

    Developer: kory-vadim

    For the program to function, root privileges are required.

    Install: flash as Magisk module

    Short description:
    Unpacking, assembling and converting system (vendor) {. Img} {. New.dat} {. New.dat.br}, mounting raw.images, gluing the system.img broken into parts into a single image (from the firmware for Qfil), unpacking payload.bin, repackaging boot (recovery) .img, extracting file_contexts from boot.img (android <= 8.1), and converting file_contexts.bin on the phone.

    Description:
    To unpack images, you can use a phone with android 5+.
    The system make_ext4fs is used from the phone’s firmware, so on a phone with android 6+ (or better 7), you can collect system.img images from android 5+.
    We need root rights, busybox (needed before UKA version: 4.4 inclusive) and enough space for the images themselves and unpacking them in ./data.
    Before flashing versions 4.6, 4.7, delete the old version and flash the corresponding archive via twrp.
    In the kitchen there is a utility AIK - Android Image Kitchen for repacking boot (recovery) .img.
    If, for some reason, you do not want to flash AIK-mobile (or, for example: already installed), then delete the file "AIK.Mobile.Installer.v3.4.zip" from the archive and flash "unpack-android_new_4.6. zip "without this file.
    After flashing, install the terminal emulator (if it is not already installed), and check the box for UTF-8 in its settings.

    To start the kitchen, in the terminal enter:
    su
    menu

    Go to the item: "Extract file_contexts", and select the subitem: "Install configuration", if this is not done, then the conversion file_contexts.bin -> file_contexts will not work.
    You need to run the configuration installation only once.
    *In version 4.5 and above it should work without applying this item.

    And then enter the numbers corresponding to the desired action.

    To extract file_contexts, put boot.img in the folder: /data/local/UnpackerContexts.
    To unpack .img images, you need to put system.img or vendor.img in the folder: /data/local/UnpackerSystem, and select the .img file (no more than 5) for unpacking.
    When unpacking, the folders will be deleted: "system", or "vendor"; files: * _fs_config and * _pack.sh from the previous unpacking.
    To build the image, copy the received file_contexts to the folder: /data/local/UnpackerSystem, if for some reason it will not be in the folder, then the assembly will be performed with file_contexts obtained when unpacking the image.
    If files or folders were added to the disassembled image, then before assembling it, you must enter everything added into fs_config, and only then collect it.
    If there are spaces in the names of folders or files in the unpacked image, then make_ex4fs will not collect such an image until you rename the files and correct the entries in fs_config.
    Therefore, adding folders and files with spaces to the unpacked image is also not possible.
    In version 4.6, the write assistant in fs_config is added.
    If you just deleted something, then you do not need to edit fs_config.
    Also in the collected folder must be present symlinks.
    Well, in terms of context, Selinux will also need to be watched, depending on what was added.
    To unpack or convert .dat, .br and in other cases, you will be prompted to enter the path to the folder where the image is located (in the same folder should be system (vendor) .transfer.list).
    When converting and assembling in .dat, look behind the phone screen, because in some cases you need to enter a number corresponding to the version of the android, the image being collected.

    There is a choice of compression ratio for converting * .new.dat to br.
    To reduce the conversion time, compression can be selected 3-5 (maximum 7).

    To unpack boot (recovery) .img, put the file in the folder: /data/local/AIK-mobile, and select the file in the menu: "unzip boot"
    For packaging, use the item: "pack boot".
    The collected file will be located in the folder: /data/local/AIK-mobile with the name boot-output.img.
    To clean the working folder, also use the corresponding item. Source and output files will not be deleted.
    AIK-mobile can be completely removed from the phone directly from the menu.

    To mount, use the corresponding menu item, and the raw image must be located in the folder: /data/local/UnpackerSystem.
    Do not forget to unmount the image.
    To remove the kitchen from the phone, go to the corresponding menu item and confirm the removal,
    after confirmation, the phone will be overloaded in twrp, and after working out the script, it will be loaded into the system.

    Screenshots(Gdrive): https://drive.google.com/folderview?id=1-5dSaOQKpDH4gy737gcDp-Anp0vAj_VU

    Download(Gdrive): https://drive.google.com/file/d/1-nOvictMuUNXbowwn3h1lbdrkJur2jJh/view?usp=drivesdk

    MOD EDIT: Link removed
    5
    please try attached ZIP module, compiled by me thanks to RajivShastri king's translation
    3
    UKA_5.6_eng_screenshot
    3
    Yes, fixed v5.6.
    3
    UKA_5.6_eng_magisk.zip ("Translated in English")