MIUI 13 porting guide - Xiaomi Mi 8 Guides, News, & Discussion

Hello guys,
After a little research, I have successfully ported MIUI 13 (v22.2.17) to Mi 8. I do not have any permissions to share the changed files as a rom, so I am writing this guide. I hope it will help
TO BEGIN WITH, WE NEED TO DOWNLOAD THE FOLLOWING FILES:
1) MIUI 13.0.10 for Mi 8
2) POCO OS for Pocophone F1 (choose the latest)
3) A custom kernel (personally, I prefer No Gravity Kernel v2.4.1)
4) An image extractor you prefer (Brotli Extractor, Jancox Tool, etc.)
AND HERE WE START:
--> Firstly, we extract the 2nd zip file using the image extractor (4) [vendor patch]
--> While waiting, we extract the same zip (the 2nd one) with a common extractor (such as WinRAR) and take system.img and boot.img [base "system" and "boot"]
--> Then, we extract the 1st zip and take vendor.new.dat.br, vendor.patch.dat, and vendor.transfer.list and META-INF and we navigate to META-INF/com/google/android and edit updater-script replacing the following lines: [base "vendor"]
Code:
ui_print("Patching vendor image unconditionally...");
show_progress(0.500000, 0);
block_image_update("/dev/block/bootdevice/by-name/vendor", package_extract_file("vendor.transfer.list"), "vendor.new.dat.br", "vendor.patch.dat") ||
abort("E2001: Failed to update vendor image.");
set_progress(1.000000);
When done, we add the above vendor files and META-INF folder to (another) archive
--> When the extraction with the image extractor (4) finishes, we navigate to vendor and copy the following folders [vendor patch continue]:
* overlay
* etc/selinux
IN THE END WE HAVE...
> To flash system.img as image ["base system" step]
> To flash the .zip archive which only contains the vendor files (and, obviously, "META-INF") ["base vendor" step]
> To mount "/vendor", to delete the folders "overlay" and "etc/selinux" and, then, to replace these from the ["vendor patch continue" step]
> To flash the extracted boot.img ["base boot" step]
> (And, finally,) to flash the custom kernel (3), which makes the rom bootable.
Due to deodex, the whole boot should be finished in approximately 4 minutes
MISSING FEATURES:
> No NFC support
> No multilingual rom (but there are also some MIUI R roms here)
SPECIAL THANKS TO:
> romKTpro (for POCO OS)
> UOTAN (for vendor files)
> Tech Karan (for his similar guide)
> and to all the other developers who made the required and useful tools and mods

Link for this this "Tech Karan (for his similar guide)"?

I was able to install it mate thanks.
Working fine, very smooth.
Mi Login doesnt work tho, which i dont mind.

nsfnd said:
Link for this this "Tech Karan (for his similar guide)"?
Click to expand...
Click to collapse
You are right, sorry for forgetting this link. I have just edited the first post

nsfnd said:
I was able to install it mate thanks.
Working fine, very smooth.
Mi Login doesnt work tho, which i dont mind.
Click to expand...
Click to collapse
Yes, I have found this bug, too. This happens because there is the same one on Poco F1 (base rom).
Also, there are some missing applications, which can be installed as normal .apk files from APKMirror:
-> Mi Browser
-> Mi Cleaner
-> Mi Scanner

They made an Android 12, MIUI 13 version for Poco F1.
I tried to do the same technic explained above for that.
But Jancox Tools failed to extract with errors.
(imgextractor.py and ext4.py, NameError: name 'xattr' is not defined)
Link for the rom.
PocoOs Stable Channel (Official)
╭━┳━┳━┳━╮╭━┳━━╮ ┃╋┃┃┃╭┫┃┃┃┃┃━━┫ ┃╭┫┃┃╰┫┃┃┃┃┣━━┃ ╰╯╰━┻━┻━╯╰━┻━━╯ MIUI 13.0.4 EU rom Based on Android 12, Code name:Ignition🔥 ======================= Maintained by @facerracer4u ======================= About PocoOs: PocoOs comes with all poco standards We do not include harmful mods, and we...
t.me
Maybe you want to check it out.

Unfortunately, we have to make a compatible vendor.img for Mi 8. Otherwise, every MIUI 13 (Android 12) ROM cannot be booted (the existing vendor files are compatible with Android 11 MIUI ROM's). I will try to port /vendor, but I am not promising anything
At least, there is a compatible kernel (No Gravity v3.x.x)
Edit: NoGravityKernel does not support /system_ext (so for most MIUI S ROM's it is not compatible)

OK, ιt's been a long time since my last post, but I have found a bootable Android 12 version of MIUI 13, but I have not managed to fix the common bugs from Pocophone F1:
<!> audio
<!> camera
<!> slow motion while watching videos (due to the audio bug)
Also, this ROM does not have NFC support (Poco F1 does not come with)
In order to install it, I have flashed:
-> the ROM (by deleting the first line in /META-INF/com/google/android/updater-script
-> permissiver v5
-> dfe (disable forced encryption)
-> XDKernel-2.6

Camera is now fixed, after replacing some vendor files (there is no need to chmod):
Code:
vendor/etc/camera/age_gender_bg
vendor/etc/camera/beauty_ui9_intelligent_params.config
vendor/etc/camera/camxoverridesettings.txt
vendor/etc/camera/crown_156_128.bin
vendor/etc/camera/dualcamera.png
vendor/etc/camera/eyelineblush.cng
vendor/etc/camera/face_goodly_208_180
vendor/etc/camera/face_ravishing_238_224
vendor/etc/camera/face_splendid_274_200
vendor/etc/camera/female_bg.png
vendor/etc/camera/female_icon.png
vendor/etc/camera/hdr_ui9_params.config
vendor/etc/camera/lf_facerank_model.bin
vendor/etc/camera/male_bg.png
vendor/etc/camera/male_icon.png
vendor/etc/camera/Miui-Light.ttf
vendor/etc/camera/MIUI_Time.ttf
vendor/etc/camera/people_gender.dat
vendor/etc/camera/score_bg.png
vendor/etc/camera/score_icon.png
vendor/etc/camera/sdm_ys_32p_120_21_5_perturb50.bin
vendor/etc/camera/watermark_font_2300_3199.dat
vendor/lib/camera/com.qti.sensor.imx363.so
vendor/lib/camera/com.qti.sensor.ov7251.so
vendor/lib/camera/com.qti.sensor.s5k3m3.so
vendor/lib/camera/com.qti.sensor.s5k3t1.so
vendor/lib/camera/com.qti.sensormodule.imx333.bin
vendor/lib/camera/com.qti.sensormodule.imx363.bin
vendor/lib/camera/com.qti.sensormodule.liteon_imx333.bin
vendor/lib/camera/com.qti.sensormodule.liteon_imx363.bin
vendor/lib/camera/com.qti.sensormodule.liteon_s5k3m3sn03.bin
vendor/lib/camera/com.qti.sensormodule.ov7251.bin
vendor/lib/camera/com.qti.sensormodule.s5k3m3sn03.bin
vendor/lib/camera/com.qti.sensormodule.s5k3t1.bin
vendor/lib/camera/com.qti.sensormodule.s5k3t1_qtech.bin
vendor/lib/camera/com.qti.tuned.default.bin
vendor/lib/camera/com.qti.tuned.liteon_imx363.bin
vendor/lib/camera/com.qti.tuned.liteon_s5k3m3.bin
vendor/lib/camera/com.qti.tuned.qtech_s5k3t1.bin
vendor/lib/camera/com.qti.tuned.semco_imx363.bin
vendor/lib/camera/com.qti.tuned.semco_s5k3m3.bin
vendor/lib/camera/com.qti.tuned.sunny_ov7251.bin
vendor/lib/camera/com.qti.tuned.sunny_s5k3t1.bin
vendor/lib/camera/components/com.arcsoft.node.capturebokeh.so
vendor/lib/camera/components/com.arcsoft.node.capturefusion.so
vendor/lib/camera/components/com.arcsoft.node.hdr.so
vendor/lib/camera/components/com.arcsoft.node.hdrchecker.so
vendor/lib/camera/components/com.arcsoft.node.realtimebokeh.so
vendor/lib/camera/components/com.arcsoft.node.skinbeautifier.so
vendor/lib/camera/components/com.arcsoft.node.smoothtransition.so
vendor/lib/camera/components/com.arcsoft.node.superlowlight.so
vendor/lib/camera/components/com.mi.node.aiadd.so
vendor/lib/camera/components/com.mi.node.aiasd.so
vendor/lib/camera/components/com.qti.eisv2.so
vendor/lib/camera/components/com.qti.eisv3.so
vendor/lib/camera/components/com.qti.hvx.addconstant.so
vendor/lib/camera/components/com.qti.hvx.binning.so
vendor/lib/camera/components/com.qti.node.dummyrtb.so
vendor/lib/camera/components/com.qti.node.dummysat.so
vendor/lib/camera/components/com.qti.node.eisv2.so
vendor/lib/camera/components/com.qti.node.eisv3.so
vendor/lib/camera/components/com.qti.node.gpu.so
vendor/lib/camera/components/com.qti.node.memcpy.so
vendor/lib/camera/components/com.qti.node.photosolid.so
vendor/lib/camera/components/com.qti.node.remosaic.so
vendor/lib/camera/components/com.qti.node.sr.so
vendor/lib/camera/components/com.qti.node.swregistration.so
vendor/lib/camera/components/com.qti.node.watermark.so
vendor/lib/camera/components/com.qti.node.xiaomigenderage.so
vendor/lib/camera/components/com.qti.stats.aec.so
vendor/lib/camera/components/com.qti.stats.aecwrapper.so
vendor/lib/camera/components/com.qti.stats.af.so
vendor/lib/camera/components/com.qti.stats.afd.so
vendor/lib/camera/components/com.qti.stats.asd.so
vendor/lib/camera/components/com.qti.stats.awb.so
vendor/lib/camera/components/com.qti.stats.awbwrapper.so
vendor/lib/camera/components/com.qti.stats.pdlib.so
vendor/lib/camera/components/com.qti.stats.pdlibsony.so
vendor/lib/camera/components/com.qti.stats.pdlibwrapper.so
vendor/lib/camera/components/com.vidhance.node.eis.so
vendor/lib/camera/components/com.xiaomi.node.mibokeh.so
vendor/lib/camera/components/etc/GpuKernelRepo.pb
vendor/lib/camera/components/etc/model_back.dlc
vendor/lib/camera/components/etc/model_front.dlc
vendor/lib/camera/components/etc/morpho_lowlight4.0.xml
vendor/lib/camera/components/etc/morpho_lowlight4.0_adrc_high.xml
vendor/lib/camera/components/etc/morpho_lowlight4.0_adrc_high_1.xml
vendor/lib/camera/fdconfigpreview.bin
vendor/lib/camera/fdconfigpreviewlite.bin
vendor/lib/camera/fdconfigvideo.bin
vendor/lib/camera/fdconfigvideolite.bin
vendor/lib/hw/camera.qcom.so
vendor/lib/hw/com.qti.chi.override.so
vendor/lib/libarcsoft_beautyshot.so
vendor/lib/libarcsoft_dualcam_image_optical_zoom.so
vendor/lib/libarcsoft_dualcam_refocus.so
vendor/lib/libarcsoft_dualcam_refocus_front.so
vendor/lib/libarcsoft_dualcam_refocus_rear_t.so
vendor/lib/libarcsoft_dualcam_refocus_rear_w.so
vendor/lib/libarcsoft_dualcam_video_optical_zoom.so
vendor/lib/libarcsoft_high_dynamic_range.so
vendor/lib/libarcsoft_low_light_hdr.so
vendor/lib/libarcsoft_portrait_lighting.so
vendor/lib/libarcsoft_portrait_lighting_c.so
vendor/lib/libarcsoft_supernight.so
vendor/lib/libc++_shared.so
vendor/lib/libcamera_dirty.so
vendor/lib/libcamera_scene.so
vendor/lib/libcamxfdalgov7.so
vendor/lib/libcamxfdengine.so
vendor/lib/libcamxstatscore.so
vendor/lib/libcamxtintlessalgo.so
vendor/lib/libcom.qti.chinodeutils.so
vendor/lib/libFaceGrade.so
vendor/lib/libft2vendor.so
vendor/lib/libHalSuperSensorServer.so
vendor/lib/libmibokeh_845.so
vendor/lib/libmmcamera_faceproc.so
vendor/lib/libmmcamera_faceproc2.so
vendor/lib/libmpbase.so
vendor/lib/libnanopb.so
vendor/lib/libremosaic_daemon.so
vendor/lib/libSNPE.so
vendor/lib/libSuperSensor.so
vendor/lib/libSuperSensorCPU.so
vendor/lib/libswregistrationalgo.so
vendor/lib/libsymphony-cpu.so
vendor/lib/libsymphonypower.so
vendor/lib/libtonemapalgo.so
vendor/lib/libvidhance.so
vendor/lib/libXMFD_AgeGender.so
vendor/lib/lib_denoiser3.so
vendor/lib/mibokeh_845_opencl.bin
vendor/lib64/libcamxfdalgov7.so
vendor/lib64/libcamxfdengine.so
vendor/lib64/libcamxstatscore.so
vendor/lib64/libnanopb.so
vendor/lib64/libremosaiclib.so
vendor/lib64/libremosaic_daemon.so
vendor/firmware/bu64748gwz.prog
vendor/firmware/CAMERA_ICP.elf
vendor/firmware/dipper_ois.coeff
vendor/firmware/dipper_ois.prog
vendor/firmware/dipper_ois_liteon.coeff
vendor/firmware/dipper_ois_liteon.prog

Advanced Gears said:
Camera is now fixed, after replacing some vendor files (there is no need to chmod):
Code:
vendor/etc/camera/age_gender_bg
vendor/etc/camera/beauty_ui9_intelligent_params.config
vendor/etc/camera/camxoverridesettings.txt
vendor/etc/camera/crown_156_128.bin
vendor/etc/camera/dualcamera.png
vendor/etc/camera/eyelineblush.cng
vendor/etc/camera/face_goodly_208_180
vendor/etc/camera/face_ravishing_238_224
vendor/etc/camera/face_splendid_274_200
vendor/etc/camera/female_bg.png
vendor/etc/camera/female_icon.png
vendor/etc/camera/hdr_ui9_params.config
vendor/etc/camera/lf_facerank_model.bin
vendor/etc/camera/male_bg.png
vendor/etc/camera/male_icon.png
vendor/etc/camera/Miui-Light.ttf
vendor/etc/camera/MIUI_Time.ttf
vendor/etc/camera/people_gender.dat
vendor/etc/camera/score_bg.png
vendor/etc/camera/score_icon.png
vendor/etc/camera/sdm_ys_32p_120_21_5_perturb50.bin
vendor/etc/camera/watermark_font_2300_3199.dat
vendor/lib/camera/com.qti.sensor.imx363.so
vendor/lib/camera/com.qti.sensor.ov7251.so
vendor/lib/camera/com.qti.sensor.s5k3m3.so
vendor/lib/camera/com.qti.sensor.s5k3t1.so
vendor/lib/camera/com.qti.sensormodule.imx333.bin
vendor/lib/camera/com.qti.sensormodule.imx363.bin
vendor/lib/camera/com.qti.sensormodule.liteon_imx333.bin
vendor/lib/camera/com.qti.sensormodule.liteon_imx363.bin
vendor/lib/camera/com.qti.sensormodule.liteon_s5k3m3sn03.bin
vendor/lib/camera/com.qti.sensormodule.ov7251.bin
vendor/lib/camera/com.qti.sensormodule.s5k3m3sn03.bin
vendor/lib/camera/com.qti.sensormodule.s5k3t1.bin
vendor/lib/camera/com.qti.sensormodule.s5k3t1_qtech.bin
vendor/lib/camera/com.qti.tuned.default.bin
vendor/lib/camera/com.qti.tuned.liteon_imx363.bin
vendor/lib/camera/com.qti.tuned.liteon_s5k3m3.bin
vendor/lib/camera/com.qti.tuned.qtech_s5k3t1.bin
vendor/lib/camera/com.qti.tuned.semco_imx363.bin
vendor/lib/camera/com.qti.tuned.semco_s5k3m3.bin
vendor/lib/camera/com.qti.tuned.sunny_ov7251.bin
vendor/lib/camera/com.qti.tuned.sunny_s5k3t1.bin
vendor/lib/camera/components/com.arcsoft.node.capturebokeh.so
vendor/lib/camera/components/com.arcsoft.node.capturefusion.so
vendor/lib/camera/components/com.arcsoft.node.hdr.so
vendor/lib/camera/components/com.arcsoft.node.hdrchecker.so
vendor/lib/camera/components/com.arcsoft.node.realtimebokeh.so
vendor/lib/camera/components/com.arcsoft.node.skinbeautifier.so
vendor/lib/camera/components/com.arcsoft.node.smoothtransition.so
vendor/lib/camera/components/com.arcsoft.node.superlowlight.so
vendor/lib/camera/components/com.mi.node.aiadd.so
vendor/lib/camera/components/com.mi.node.aiasd.so
vendor/lib/camera/components/com.qti.eisv2.so
vendor/lib/camera/components/com.qti.eisv3.so
vendor/lib/camera/components/com.qti.hvx.addconstant.so
vendor/lib/camera/components/com.qti.hvx.binning.so
vendor/lib/camera/components/com.qti.node.dummyrtb.so
vendor/lib/camera/components/com.qti.node.dummysat.so
vendor/lib/camera/components/com.qti.node.eisv2.so
vendor/lib/camera/components/com.qti.node.eisv3.so
vendor/lib/camera/components/com.qti.node.gpu.so
vendor/lib/camera/components/com.qti.node.memcpy.so
vendor/lib/camera/components/com.qti.node.photosolid.so
vendor/lib/camera/components/com.qti.node.remosaic.so
vendor/lib/camera/components/com.qti.node.sr.so
vendor/lib/camera/components/com.qti.node.swregistration.so
vendor/lib/camera/components/com.qti.node.watermark.so
vendor/lib/camera/components/com.qti.node.xiaomigenderage.so
vendor/lib/camera/components/com.qti.stats.aec.so
vendor/lib/camera/components/com.qti.stats.aecwrapper.so
vendor/lib/camera/components/com.qti.stats.af.so
vendor/lib/camera/components/com.qti.stats.afd.so
vendor/lib/camera/components/com.qti.stats.asd.so
vendor/lib/camera/components/com.qti.stats.awb.so
vendor/lib/camera/components/com.qti.stats.awbwrapper.so
vendor/lib/camera/components/com.qti.stats.pdlib.so
vendor/lib/camera/components/com.qti.stats.pdlibsony.so
vendor/lib/camera/components/com.qti.stats.pdlibwrapper.so
vendor/lib/camera/components/com.vidhance.node.eis.so
vendor/lib/camera/components/com.xiaomi.node.mibokeh.so
vendor/lib/camera/components/etc/GpuKernelRepo.pb
vendor/lib/camera/components/etc/model_back.dlc
vendor/lib/camera/components/etc/model_front.dlc
vendor/lib/camera/components/etc/morpho_lowlight4.0.xml
vendor/lib/camera/components/etc/morpho_lowlight4.0_adrc_high.xml
vendor/lib/camera/components/etc/morpho_lowlight4.0_adrc_high_1.xml
vendor/lib/camera/fdconfigpreview.bin
vendor/lib/camera/fdconfigpreviewlite.bin
vendor/lib/camera/fdconfigvideo.bin
vendor/lib/camera/fdconfigvideolite.bin
vendor/lib/hw/camera.qcom.so
vendor/lib/hw/com.qti.chi.override.so
vendor/lib/libarcsoft_beautyshot.so
vendor/lib/libarcsoft_dualcam_image_optical_zoom.so
vendor/lib/libarcsoft_dualcam_refocus.so
vendor/lib/libarcsoft_dualcam_refocus_front.so
vendor/lib/libarcsoft_dualcam_refocus_rear_t.so
vendor/lib/libarcsoft_dualcam_refocus_rear_w.so
vendor/lib/libarcsoft_dualcam_video_optical_zoom.so
vendor/lib/libarcsoft_high_dynamic_range.so
vendor/lib/libarcsoft_low_light_hdr.so
vendor/lib/libarcsoft_portrait_lighting.so
vendor/lib/libarcsoft_portrait_lighting_c.so
vendor/lib/libarcsoft_supernight.so
vendor/lib/libc++_shared.so
vendor/lib/libcamera_dirty.so
vendor/lib/libcamera_scene.so
vendor/lib/libcamxfdalgov7.so
vendor/lib/libcamxfdengine.so
vendor/lib/libcamxstatscore.so
vendor/lib/libcamxtintlessalgo.so
vendor/lib/libcom.qti.chinodeutils.so
vendor/lib/libFaceGrade.so
vendor/lib/libft2vendor.so
vendor/lib/libHalSuperSensorServer.so
vendor/lib/libmibokeh_845.so
vendor/lib/libmmcamera_faceproc.so
vendor/lib/libmmcamera_faceproc2.so
vendor/lib/libmpbase.so
vendor/lib/libnanopb.so
vendor/lib/libremosaic_daemon.so
vendor/lib/libSNPE.so
vendor/lib/libSuperSensor.so
vendor/lib/libSuperSensorCPU.so
vendor/lib/libswregistrationalgo.so
vendor/lib/libsymphony-cpu.so
vendor/lib/libsymphonypower.so
vendor/lib/libtonemapalgo.so
vendor/lib/libvidhance.so
vendor/lib/libXMFD_AgeGender.so
vendor/lib/lib_denoiser3.so
vendor/lib/mibokeh_845_opencl.bin
vendor/lib64/libcamxfdalgov7.so
vendor/lib64/libcamxfdengine.so
vendor/lib64/libcamxstatscore.so
vendor/lib64/libnanopb.so
vendor/lib64/libremosaiclib.so
vendor/lib64/libremosaic_daemon.so
vendor/firmware/bu64748gwz.prog
vendor/firmware/CAMERA_ICP.elf
vendor/firmware/dipper_ois.coeff
vendor/firmware/dipper_ois.prog
vendor/firmware/dipper_ois_liteon.coeff
vendor/firmware/dipper_ois_liteon.prog
Click to expand...
Click to collapse
Well done, That's great!!!
Hoping to see a fully working android 12 and MIUI 13 soon on our MI8

So, after replacing some audio policy files from /vendor/etc, the sound comes out normally. However, I still have bugs such as slow videos and silent sounds coming as media when earphones are not connected. Are there some files at /vendor/etc to be replaced? I haven't found anything else, yet
(Also, I haven't looked for the required files for NFC support)

OK, now it's ported with no bugs.
Missing features: NFC support (Due to my inexperience, I cannot make bootable system and vendor .img files by using image kitchens and it's more difficult to set the correct permissions to files in the /bin folders from recovery)
The files to be changed are mentioned in this uploaded .txt file

Hello, again. Because the previous guides were time-consuming, I have made a patch which replaces all the required files. Unfortunately, I have not managed to add NFC support.
Instructions:
We flash system.img, vendor.img, cust.img (system_ext.img), boot.img, DFE, XD/Etude kernel
We mount /vendor
We flash the patch

Advanced Gears said:
Hello, again. Because the previous guides were time-consuming, I have made a patch which replaces all the required files. Unfortunately, I have not managed to add NFC support.
Instructions:
We flash system.img, vendor.img, cust.img (system_ext.img), boot.img, DFE, XD/Etude kernel
We mount /vendor
We flash the patch
Click to expand...
Click to collapse
Thanks for sharing your progress, its exciting indeed.
Is it possible for you in the future to share a simpler way for us non advanced users to easily upgrade to MIUI 13, e.g through recovery zip from TWRP.

Because I don't own these ROM's, please check some Telegram channels. The file name of this one (with the mentioned changes) may remind you something

Advanced Gears said:
Hello guys,
After a little research, I have successfully ported MIUI 13 (v22.2.17) to Mi 8. I do not have any permissions to share the changed files as a rom, so I am writing this guide. I hope it will help
TO BEGIN WITH, WE NEED TO DOWNLOAD THE FOLLOWING FILES:
1) MIUI 13.0.10 for Mi 8
2) POCO OS for Pocophone F1 (choose the latest)
3) A custom kernel (personally, I prefer No Gravity Kernel v2.4.1)
4) An image extractor you prefer (Brotli Extractor, Jancox Tool, etc.)
AND HERE WE START:
--> Firstly, we extract the 2nd zip file using the image extractor (4) [vendor patch]
--> While waiting, we extract the same zip (the 2nd one) with a common extractor (such as WinRAR) and take system.img and boot.img [base "system" and "boot"]
--> Then, we extract the 1st zip and take vendor.new.dat.br, vendor.patch.dat, and vendor.transfer.list and META-INF and we navigate to META-INF/com/google/android and edit updater-script replacing the following lines: [base "vendor"]
Code:
ui_print("Patching vendor image unconditionally...");
show_progress(0.500000, 0);
block_image_update("/dev/block/bootdevice/by-name/vendor", package_extract_file("vendor.transfer.list"), "vendor.new.dat.br", "vendor.patch.dat") ||
abort("E2001: Failed to update vendor image.");
set_progress(1.000000);
When done, we add the above vendor files and META-INF folder to (another) archive
--> When the extraction with the image extractor (4) finishes, we navigate to vendor and copy the following folders [vendor patch continue]:
* overlay
* etc/selinux
IN THE END WE HAVE...
> To flash system.img as image ["base system" step]
> To flash the .zip archive which only contains the vendor files (and, obviously, "META-INF") ["base vendor" step]
> To mount "/vendor", to delete the folders "overlay" and "etc/selinux" and, then, to replace these from the ["vendor patch continue" step]
> To flash the extracted boot.img ["base boot" step]
> (And, finally,) to flash the custom kernel (3), which makes the rom bootable.
Due to deodex, the whole boot should be finished in approximately 4 minutes
MISSING FEATURES:
> No NFC support
> No multilingual rom (but there are also some MIUI R roms here)
SPECIAL THANKS TO:
> romKTpro (for POCO OS)
> UOTAN (for vendor files)
> Tech Karan (for his similar guide)
> and to all the other developers who made the required and useful tools and mods
Click to expand...
Click to collapse
Hello, is this manual suitable for mi mix 3?

Advanced Gears said:
Hello, again. Because the previous guides were time-consuming, I have made a patch which replaces all the required files. Unfortunately, I have not managed to add NFC support.
Instructions:
We flash system.img, vendor.img, cust.img (system_ext.img), boot.img, DFE, XD/Etude kernel
We mount /vendor
We flash the patch
Click to expand...
Click to collapse
Hello I am new to this, but I already have an unlocked bootloader.
Can you please confirm :-
1. Which tool I need to use to flash the ROM .img files, Xiaomi Flash Tool?
2. Which latest MIUI 13 ROM is most suitable, POCO OS •13.0.12.0 EU [ IGNITION 4.0 ].zip?
3. Which beryllium2dipper-patch.zip patch I need to use for the Mi 8?
4. Only bug is NFC right? Will audio, camera, safetynet, banking apps, xiaomi account and cloud work?
Edit:
I am not sure if the steps are correct and which beryllium2dipper-patch.zip patch file I should use

To begin with, the steps are not difficult. we have to flash the following files:
--> system.img, cust.img (system_ext), vendor.img (the patched one), boot.img
as images from a recovery which supports cust images, such as OrangeFox.
--> DFE (disable forced encryption), the latest stable patch, permissiver and XD kernel as .zip files
--> base.apk is Mi Video if someone wants to install the provided version and not this from Play Store, APKmirror etc..
(?)> If the ROM is not bootable, we have to make sure the previous ROM was not encrypted or /data is formatted.
(?)> And, of course, we also need to have the latest firmware from Xiaomi (Global/China)
Moreover, the bugs are the same: NFC, perhaps AOD (some developers have removed it on Poco, on Ignition 2.0 there is AOD support) and Dual GPS (but normal GPS works normally). Only these.
When it comes to Ignition 4.0, both are nice. Personally, I would choose the first version of Ignition 4.0 (not the reuploaded one), which is probably more stable.
Last but not least, it is likely that these ROM's can be ported to other devices, such as Mi Mix 3 (similar device), in case a suitable kernel is found and the correct proprietary files are replaced (usually, by testing).

Advanced Gears said:
To begin with, the steps are not difficult. we have to flash the following files:
--> system.img, cust.img (system_ext), vendor.img (the patched one), boot.img
as images from a recovery which supports cust images, such as OrangeFox.
--> DFE (disable forced encryption), the latest stable patch, permissiver and XD kernel as .zip files
--> base.apk is Mi Video if someone wants to install the provided version and not this from Play Store, APKmirror etc..
(?)> If the ROM is not bootable, we have to make sure the previous ROM was not encrypted or /data is formatted.
(?)> And, of course, we also need to have the latest firmware from Xiaomi (Global/China)
Moreover, the bugs are the same: NFC, perhaps AOD (some developers have removed it on Poco, on Ignition 2.0 there is AOD support) and Dual GPS (but normal GPS works normally). Only these.
When it comes to Ignition 4.0, both are nice. Personally, I would choose the first version of Ignition 4.0 (not the reuploaded one), which is probably more stable.
Last but not least, it is likely that these ROM's can be ported to other devices, such as Mi Mix 3 (similar device), in case a suitable kernel is found and the correct proprietary files are replaced (usually, by testing).
Click to expand...
Click to collapse
Thanks for the explanation, I have flashed successfully with minor tweaks.
To resume:-
Prerequisites:
1. MIUI13 Android 12 firmware (POCO OS IGNITION 2.0) feels more responsive
2. Phone ROM with unlocked bootloader and OrangeFox recovery.
3. Phone ROM must be on latest Official ROM (Global/China)
4. Phone ROM must not encypted or /data formatted
Boot to OrangeFox recovery:
1. Flash .img files; system.img, cust.img (system_ext), vendor.img, boot.img (POCO OS IGNITION 2.0)
2. Flash .zip files; DFE (disable forced encryption), latest stable beryllium2dipper-patch, permissive and XD kernel
3. Reboot phone to system and enjoy
Edit:
I have reverted back to my old ROM (xiaomi.eu MIUI12.5} as I feel its more polished and optimised but its nice to see Android 12 with MIUI13 fully working ported to the Mi 8.

Related

[MultiROM] [LINUX] [How-to] Rom installers for sdcard

This is an (hopefully) updated collection of all roms (not android based, but other linux OS, like ubuntu, archlinux, fedora...) for nexus 7 (grouper and tilapia) available using the MultiROM system.
MultiROM is an amazing hack (I want to thank again its author, Tasssadar) that permits to boot different OS (multiboot) and different android roms. It starts between kernel and rom init, showing a sort of bootloader dialog to choose which system to boot.
It supports installing (and booting, of course) roms to USB drives.
To use MultiROM you need multirom installation zip , a modified TWRP recovery and kernels with kexec support. Relax, is not hard or long to do this.
More information and installation (of MultiROM, recovery and kernels) --> [ MULTIROM ]
PS: I need to specify I coded nothing, my only work was helping with issues, repacking roms, make them work. I want to say thank you to all devs are developing for Nexus 7, I'm doing this because I appreciate their work and I want MultiROM to rise. It deserves to.
HOW TO INSTALL A ROM.
Tasssadar provided also a zip template (see the [ WIKI ] for more info) that is incredibly easy to use.
To install a linux os to sdcard, you just need to download the zip and flash it like a normal update.zip.
It won't replace your internal rom, because it is going to install in /sdcard, not in /system or /data. And it WON'T wipe anything.
Remember that flashing ubuntu or android rom is DIFFERENT from flashing those zips. To flash ubuntu or another android rom you need to use MultiROM menu under ADVANCED voice in recovery (again, see wiki or multirom thread if you need more information).
ROM PACKS.
In the next post I'll share links for rom zips. If you have other zips or if you have built other zips, please share them. They will be (hopefully) added to the list. If not, please pm me. I can't read all posts.
If you want to share a zip, please try it first. I don't know if I'll be able to test everything real-time, and I don't want anyone to see his sdcard erased or strange things like this. MultiROM has a percent of risk, but nobody has lost his data till now. So please share zips consciously.
ROM LIST (DOWNLOADS)
* [NEW] PLASMA ACTIVE 4.0 (20140121)
mirror: http://d-h.st/Khh
old version: https://docs.google.com/file/d/0B9ZvdqAbuJi2blQ0TDgweFFKTlU/edit
description: KDE for embedded devices. Very cool and interesting. 4.0 version is more stable, video codec is working as well. Little slow booting.
* BODHI LINUX 20130109
old version: INITIAL RELEASE
notes: old version passwd for root and armhf user is trustno1 (sorry for that, is my fault. In new release it is again bodhilinux)
description: Ubuntu with E17 (Enlightenment) with mobile GUI. Pretty stable and... veeery fast.
*ArchLinux 20130113-2
old version: -
description: ArchLinux. Simply. Not designed for basic users. Really powerfull, with already packed KDE, Gnome-shell, LXDE, XFCE, Enlightenment environments (and many others probably). Needs testing, and some love, as it's initial release.
*WebOS ALPHA
old version: http://www.mediafire.com/?3m58uuvysxiwypw
description: still in alpha stage, unstable. Interesting project. Needs love.
* [MANUAL INSTALL] Ubuntu Touch Tablet DEVELOPER PREVIEW
old version: -
description: developer preview, android-based, with the new Ubuntu Touch UI.
[NEW] Use MultiROM app to install the latest version in the easiest way
ROMS TO BE PACKED/MADE WORKING:
fedora4nexus7?
PAY ATTENTION: NEW MULTIROM CHANGED THE ROM ZIP STRUCTURE!
NEW STRUCTURE HERE.
I GUESS YOU CAN USE OLD ZIPS, BUT I CAN'T TRY AND IT'S BETTER TO USE NEW METHOD (REPACK NEEDED)
STEPS TO CREATE A NEW ROM ZIP (EASY-WAY):
* first, download the template (reworked by me)
* then, unzip the template, put the root.tar.gz and rom_info.txt inside rom folder (if you don't know what I'm talking about, read again the wiki - link above)
* edit rom name inside of scripts/extract.sh script (it's the only thing you have to edit, unless you want it to do something else, but be careful in that case)
* select the 3 folders (META-INF, rom, scripts) and zip them in a zip called <DISTRONAME>-MultiROM-Installer-<VERSION>.zip (I think it's a good standard, if you don't like simply name it another way, but I reckon that using a standard would be a very good thing)
*when the zip is finished, upload your zip somewhere (I use google drive now, but I hope I'll have my storage sometime in the future) and share the link here. I will add it to the list.
If I don't, pm me.
[EDIT] new packing method for webos available https://github.com/Tasssadar/webos_multirom_packer [/EDIT]
MORE INFORMATION.
PLASMA ACTIVE.
known bugs: https://wiki.merproject.org/wiki/Community_Workspace/Tegra3/Nexus7/PA_Known_Issues
username/password : mer/mer, root/mer
Interesting features : Plays 720p movies full screen with sound and 1080p full screen down scaled with sound.
BODHI LINUX.
known bugs: http://forums.bodhilinux.com/index.php?/forum/40-nexus-7/
username/password: armhf/bodhilinux
useful page (customization, add software, guides): http://wiki.bodhilinux.com/doku.php
ARCHLINUX.
armv7h images: http://os.archlinuxarm.org/os/ (see tegra directory)
username/password: arch/arch, root/root
useful link (bible): https://wiki.archlinux.org/
infos: needs an OTG keyboard or to use "sudo screen /dev/ttyACM0 115200" to connect via usb.
While you are connected you need to configure wifi. I use a script that simply uses iwconfig, wpa_supplicant.conf and dhcpcd to get a wifi connection.
The rest is up to you.
Enlightenment is preinstalled in build 20130113-2.
UBUNTU TOUCH.
infos: use MultiROM Manager app to install it.
GENERAL.
lintz said:
Recomended "fixes" after first install (Mer, Plasma ndr) :
Install custom keyboard (write this comands in terminal start with su and after the password for root by default mer)
1. zypper ar -G http://repo.pub.meego.com/home:/won...wonko:branches:Project:KDE:Trunk:Testing.repo
2. zypper up maliit-active libmaliit-quick
3. killall -9 maliit-server
Update the system (use su and root password first)
zypper ref && zypper up
Install GUI package manager (same here su and root password)
zypper in apper
Click to expand...
Click to collapse
Thanks to lintz for the suggestions.
LATEST HOT NEWS.
-updated with latest Plasma version.
-updated with Ubuntu Touch
-updated with latest Plasma & WEBOS version (repacked for new MultiROM structure)
-updated with Ubuntu Touch Dev Preview
-updated OP with arch infos.
-Making zip for new BodhiLinux version, that now has correct passwd
Code:
bodhilinux
as it should be.
xela92 said:
Making zip for new BodhiLinux version, that now has correct passwd
Code:
bodhilinux
as it should be.
Click to expand...
Click to collapse
thx xela, I'm still having trouble creating a zip with the template. perhaps you could post the steps you took to create the new bodhi release
bonzer2u said:
thx xela, I'm still having trouble creating a zip with the template. perhaps you could post the steps you took to create the new bodhi release
Click to expand...
Click to collapse
Steps how-to done
Later (when upload ends) I'll share Bodhi new version installer link
Nice thread. Can't wait to try some other distro's.
xela92 said:
ROM LIST (DOWNLOADS)
* PLASMA ACTIVE 20130109
old version: -
description: KDE for embedded devices. Very cool and interesting, but still an alpha.
* BODHI LINUX (uploading new version)
old version: INITIAL RELEASE
notes: old version passwd for root and armhf user is trustno1 (sorry for that, is my fault. In new release it is again bodhilinux)
description: Ubuntu with E17 (Enlightenment) with mobile GUI. Pretty stable and... veeery fast.
Click to expand...
Click to collapse
Needs more info.
Add following kategories
Plasma Active
Bugs : https://wiki.merproject.org/wiki/Community_Workspace/Tegra3/Nexus7/PA_Known_Issues
Username passwords : mer/mer, root/mer
Recomended "fixes" after first install :
Install custom keyboard (write this comands in terminal start with su and after the password for root by default mer)
1. zypper ar -G http://repo.pub.meego.com/home:/won...wonko:branches:Project:KDE:Trunk:Testing.repo
2. zypper up maliit-active libmaliit-quick
3. killall -9 maliit-server
Update the system (use su and root password first)
zypper ref && zypper up
Install GUI package manager (same here su and root password)
zypper in apper
Features : Plays 720p movies full screen with sound and 1080p full screen down scaled with sound.
Same thing for Bodhi. But I dont know the detales about it since I don't use it.
PS as it is now this thread feels as a start to a redundant thread to what is written in Tassadars first 3 posts in the MultiRom thread. Better if you focus on the current distros that don't have any "real" maintener here on xda.
I will add those categories later
lintz said:
Needs more info.
Add following kategories
Plasma Active
Bugs : https://wiki.merproject.org/wiki/Community_Workspace/Tegra3/Nexus7/PA_Known_Issues
Username passwords : mer/mer, root/mer
Recomended "fixes" after first install :
Install custom keyboard (write this comands in terminal start with su and after the password for root by default mer)
1. zypper ar -G http://repo.pub.meego.com/home:/won...wonko:branches:Project:KDE:Trunk:Testing.repo
2. zypper up maliit-active libmaliit-quick
3. killall -9 maliit-server
Update the system (use su and root password first)
zypper ref && zypper up
Install GUI package manager (same here su and root password)
zypper in apper
Features : Plays 720p movies full screen with sound and 1080p full screen down scaled with sound.
Same thing for Bodhi. But I dont know the detales about it since I don't use it.
PS as it is now this thread feels as a start to a redundant thread to what is written in Tassadars first 3 posts in the MultiRom thread. Better if you focus on the current distros that don't have any "real" maintener here on xda.
Click to expand...
Click to collapse
thanks
this solved my onscreen keyboard problem (not working over browser) ... now only gui glitches was left (multitasking bar )
xela92 said:
STEPS TO CREATE A NEW ROM ZIP (EASY-WAY):
* first, download the template (reworked by me)
* then, unzip the template, put the root.tar.gz and rom_info.txt inside rom folder (if you don't know what I'm talking about, read again the wiki - link above)
* edit rom name inside of scripts/extract.sh script (it's the only thing you have to edit, unless you want it to do something else, but be careful in that case)
* select the 3 folders (META-INF, rom, scripts) and zip them in a zip called <DISTRONAME>-MultiROM-Installer-<VERSION>.zip (I think it's a good standard, if you don't like simply name it another way, but I reckon that using a standard would be a very good thing)
*when the zip is finished, upload your zip somewhere (I use google drive now, but I hope I'll have my storage sometime in the future) and share the link here. I will add it to the list.
If I don't, pm me.
Click to expand...
Click to collapse
Hi xela,
I understand the process except for creating the 'root.tar.gz' file from a compressed image (.img or .raw) file. Do you need to extract the image file to the /root folder and then recompress with a command similar to:
sudo tar --numeric-owner -zpcf root.tar.gz ./*
Nice Topic, i've tried your first Bodhi Zip and it seems very fast and stable to me. A few bugs, but nothing major.
I'm waiting for the new Version to finish uploading
bonzer2u said:
Hi xela,
I understand the process except for creating the 'root.tar.gz' file from a compressed image (.img or .raw) file. Do you need to extract the image file to the /root folder and then recompress with a command similar to:
sudo tar --numeric-owner -zpcf root.tar.gz ./*
Click to expand...
Click to collapse
I couldn't find out how to mount those IMG files. I thought they were ext4 fs but they aren't. I tried to use dd to flash them on a drive but failure again. So to extract rootfs I install them with standard procedure (Ubuntu) and the repack roofs to tar.gz. It could be useful to find out how to directly extract rootfs, because it's the same method used by Ubuntu. With the difference that Ubuntu uses zsync to permit fast upgrade...!
xela92 said:
I couldn't find out how to mount those IMG files. I thought they were ext4 fs but they aren't. I tried to use dd to flash them on a drive but failure again. So to extract rootfs I install them with standard procedure (Ubuntu) and the repack roofs to tar.gz. It could be useful to find out how to directly extract rootfs, because it's the same method used by Ubuntu. With the difference that Ubuntu uses zsync to permit fast upgrade...!
Click to expand...
Click to collapse
I could never get it mounted as well.... Is this why your having a delay in uploading the new bodhi release?
bonzer2u said:
Hi xela,
I understand the process except for creating the 'root.tar.gz' file from a compressed image (.img or .raw) file. Do you need to extract the image file to the /root folder and then recompress with a command similar to:
sudo tar --numeric-owner -zpcf root.tar.gz ./*
Click to expand...
Click to collapse
If you can get the files from the .img files, you really dont need the zip to install it, just creat a dir with the name for the OS, then inside create a dir called root, then inside extract the .img
For the rom_info.txt file, just make the changes needed and put them on the same dir that ../root is and restart and you should be able to boot form it.
Rafase282 said:
If you can get the files from the .img files, you really dont need the zip to install it, just creat a dir with the name for the OS, then inside create a dir called root, then inside extract the .img
For the rom_info.txt file, just make the changes needed and put them on the same dir that ../root is and restart and you should be able to boot form it.
Click to expand...
Click to collapse
Unfortunately we have been unable to mount/extract anything from the image although it appears it may install via the multirom/ubuntu method
bonzer2u said:
I could never get it mounted as well.... Is this why your having a delay in uploading the new bodhi release?
Click to expand...
Click to collapse
I'm not at home right know, but in 30 minutes I'll post it
shared the latest bodhi linux version get the link in OP
bonzer2u said:
Unfortunately we have been unable to mount/extract anything from the image although it appears it may install via the multirom/ubuntu method
Click to expand...
Click to collapse
I think zip solution is the best and most "standard". When I make a zip I know it will work, because it's the final, multiROM surely compatible, version. And I can test it immediately, fix it, reflash, and try without messing the world up. I think update zips are the most user-friendly way too. But that's only MHO.

[LINUX][FREE] SuperR's Kitchen (v1.2.1.5 - 01/08/2022)

Disclaimer: I am not responsible for anything bad that may occur from the use of this kitchen, but I will take all the credit you can give me if it works for you
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Please read the usage instructions in post #3 and the troubleshooting in post #4 below before asking for help. Thanks
Free Changelog
Download/Install
Donate version for Windows/Mac/Linux/WSL:
Dedicated thread found here
Free Kitchen (Linux terminal):
**NOTE: The free kitchen will not work in WSL**​
Download the kitchen.zip from here. Extract to a new directory.
Enter the following commands one by one pressing ENTER after each line where "/location/of/kitchen" is the directory where the kitchen lives:
Code:
cd /location/of/kitchen
./superr
Dependencies:
Java 8 or higher (8 is recommended)
Python (to run the launcher (could be bypassed by running tools/source/superr in the terminal from the main kitchen directory))
Video tutorials by @chevycam94
Credits:
@osm0sis - For Busybox Installer and Android Image Kitchen
@Chainfire - For SuperSU
@JesusFreke - For [Bak]smali
@nkk71 - For creating the TWRP minzip patch
@Captain_Throwback - For providing a pre-compiled update-binary with the minzip patch and squashing bugs
@_riddle - For oat2dex
@iBotPeaches - For Apktool
@AOSP - For zipalign, adb, aapt, img2simg, simg2img, make_ext4fs
@xpirt - for img2sdat
@bcrichster - For extensive testing
XDA:DevDB Information
SuperR's Kitchen, Tool/Utility for the XDA Community Apps
Contributors
SuperR.
Version Information
Status: Stable
Created 2017-04-27
Last Updated 2020-07-24
Usage:
Run "superr" from it's location in terminal
Create new project using the menu
Copy ROM zip into the superr_NAME directory of this tool (NAME = the name of your new project).
OR
Copy system.ext4.tar and boot.img into the superr_NAME directory of this tool.
OR
Copy system.ext4.win and boot.emmc.win into the superr_NAME directory of this tool.
OR
Copy system.img and boot.img into the superr_NAME directory of this tool.
OR
Copy official Nexus tgz into the superr_NAME directory of this tool.
OR
Copy Samsung firmware zip into the superr_NAME directory of this tool.
OR
Copy Moto firmware zip into the superr_NAME directory of this tool.
OR
Leave superr_NAME directory empty to extract from rooted device or custom recovery
Extract for new ROM from the Main menu.
Enjoy!
Example:
In your terminal, type the following where "/home/user/kitchen/" is the directory where the kitchen lives:
Code:
cd /home/user/kitchen/
./superr
NOTE: the above code is 2 separate commands and requires ENTER to be pressed after each command
OR
Double-click the superr file and choose "Run in Terminal" if your OS supports it.
Add your own device support:
Create a new project in the kitchen.
Add your files to the project directory (system.img/boot.img, system.ext4.tar, win, zip, etc.)
Extract for new rom from the menu
When asked how to get your partitions, choose detect by-name from boot.img. If it gives you an error, put a recovery.img in your project directory and choose detect mmc from recovery.img.
Enjoy
Features:
*Extract and create ROM from:
Rooted Device
Custom Recovery
Existing ROM zip
system.img/boot.img (and cache.img on Samsung devices)
system.ext4.tar/boot.img
system.ext4.win/boot.emmc.win (including multi-file *.win000, *.win001, etc)
Moto and other factory firmware zips containing sparsechunk files
cm12 + roms with sparse dat files
Zips that contain system.img and boot.img
Samsung firmware zips that contain tar.md5 file
Official Pixel/Nexus firmware tgz
Official Pixel/Nexus preview tgz
SpreadTrum firmware that includes a pac file
system directory that contains symlinks and boot.img
*Create flashable zips of many varieties including:
Full ROM
Switch between set_perm, set_metadata (KitKat+), raw_img, and sparse_dat (Lollipop+)
Kernel
Recovery
Media
app, priv-app, and framework
*Deodex the following:
Pie ROMs
Oreo ROMs
Nougat ROMs
Marshmallow ROMs
Lollipop ROMs
KitKat and earlier ROMs
*Root features:
Root/unroot
Choose SuperSU or Magisk zip (add other versions to /tools/root/root_zips directory)
Choose system OR systemless root for M+ and Samsung 5.1.1 roms (SuperSU only)
*Boot features:
Unpack/repack boot/recovery img (Big Thanks to @osm0sis for mkbootimg source!!!)
Add/remove su.d support
Add/remove insecure boot
Remove dm-verity
Remove forceencrypt
*By-name auto-detection from:
Device
Existing ROM
boot.img
kernel.elf
**OR**...manually enter it
*mmcblk auto-detection from:
recovery.img
*Kitchen updater:
View the last 3 changelogs when an update is available.
Incremental update for updating the most recent previous version
Option to check for updates when the kitchen starts
*Create system.img
*Device database for mmcblk devices (currently very small, but will grow over time)
*Add devices to the assert
*Add custom asserts
*Zipalign apks
*Debloat ROM
*Custom Debloat list support
*Remove Knox
*Add/remove busybox (Big thanks to @osm0sis for his Busybox Installer)
*Add/remove user app support (/data/app)
*Sign zips
*Translatable with language files
*Donate version additional features:
Cross-platform - Windows, WSL, Macos, Linux
tarfs - Get original permissions, contexts, and capabilities from tar/win backups.
Create system.img with identical permissions, contexts, and capabilities as the original system.img or tar/win backup.
Plugins - Probably the best part! Currently over 20 extra features and growing
Root - Use a custom root zip (not the included Magisk or SuperSU)
Custom directory - can be included in your ROM and flashed to a specified partition
Custom Signature - No Built with SuperR's Kitchen, anywhere, plus add your own
Custom Build Display in About Phone, or leave it as default
AutoROM - Automation for ROM creatiion using a congig file (there's a plugin for that)
Convert updater-script to an update-binary script
No mounting img files. One less thing requiring your password and interrupting extraction.
Upload support.zips and device.zip directly from the kitchen for review
Download language files directly from the kitchen
Restore original boot.img after modifying and repacking
Remove asserts from the updater-script
Configurable compression level for packing zips
Remove all placeholder tags (#ASSERT, #SYM, #PERM, etc.) before packing the ROM
Create ext4 img file from any partition you include in your ROM.
zipalign without building ROM
Fix ext4.img files automatically if block count is higher than actual blocks
Troubleshooting/FAQ:
When asking for help, please provide as much of the following info as possible so I can help as easily as possible. I am a busy person and would prefer not to ask all of these questions every time someone has a problem. Thank you for understanding.
What Kitchen version?
What environment are you running the kitchen in (OS, 32/64-bit, cygwin, Bash on Windows, etc.)?
What device are you working on (make/model)?
What was the source you started from (system.img, system.ext4.tar, rom.zip, etc.)
What Android version?
What perm method (set_perm, set_metadata, sparse_dat, raw_img)?
What did you do after extracting and before building?
Were there errors on the screen if you scroll up in the terminal?
Send a recovery.log after flashing if you have problems flashing the ROM.
Send a link that does not require registration to the files you started with (nandroid, system.img, boot.img, etc)
Use the support option in the Misc Tools menu and attach the support.zip to your post.
Ubuntu4Kitchen
An Ubuntu 16.04 distro with all the things you need to get the kitchen working easily.
Visit the dedicated thread here
Language Files (translations)
English - Default/Included in the kitchen
Download additional language files here
Once the language zip has been downloaded, extract to /kitchen/tools/language and restart the kitchen.
Does this kitchen support Windows CYGWIN?
CYGWIN is not supported and will not work. Try the donate kitchen for Windows, Linux, and Mac.
WSL (Bash on Ubuntu on Windows)
WSL is not supported in the free kitchen and will not work. Try the donate kitchen for Windows, Linux, and Mac.
Which perm type should I choose?
Here is a very brief summary of set_perm, set_metadata, sparse_dat, and raw_img.
set_perm : The oldest of the 4. Sets file/directory permissions when flashing a rom. Not recommended for KitKat and above.
set_metadata: Also sets file/directory permissions when flashing a rom, but also adds file contexts. It was introduced with selinux in KitKat. Recommended for KitKat and above.
sparse_dat: The newest of the 4, and only works on Lollipop +. The permissions, symlinks, and file contexts are all added inside a sparse image. A sparse image is an image with a more efficient space usage. Only for Lollipop and above. The free kitchen uses AOSP permissions/capabilities when building system.img. If your device requires different permissions, this method will not work for you in the free kitchen.
raw_img: This is literally raw images that are flashed to your device. The permissions, symlinks, and file contexts are all added inside the raw image. Works for all Android versions. The free kitchen uses AOSP permissions/capabilities when building system.img. If your device requires different permissions, this method will not work for you in the free kitchen.
Flashing error:
This package is for "xxxxx" devices; this is a "yyyyy"
The problem is the asserts and it is easy to fix. In the kitchen menu, go to ROM Tools > Asserts > Add/Remove device asserts. At the bottom it will say "xxxxx". Edit the line to say "xxxxx,yyyyy" and press enter. Build your rom again and flash.
Why is my ROM zip so small?
blkdiscard failed: Invalid argument
These are generally due to the partition size detection method. You need the correct partition size for ALL partitions you are creating sparse dat and raw_img images for. The kitchen will ask for each one that is included in your rom when you choose to build the full rom zip. If none of the provided auto-detect methods work, you will need to find the partition size on your own and enter it manually in the kitchen.
Root problems?
You can replace the SuperSU.zip and Magisk.zip in the kitchen with any flashable SuperSU/Magisk version you want. It is located in kitchen/tools/root/root_zips. Delete the one that is there (if it exists) and add yours. Then, unroot, re-root and your replacement will be used.
Auto check for updates when kitchen starts
To enable the auto update check, go to "Check for updates" in the main menu. After it checks, you will be asked if you want to enable it.
I added root and busybox but there is no su or busybox in my project. Why?
The kitchen does not add Busybox or SuperSU/Magisk files to the project. Instead it adds flashable zips inside the rom.zip. There are many variables to deal with (Android version, device architecture, manufacturer, system/systemless, etc.). Flashing the zips with the rom accounts for all of these variables and there is no reason to re-invent the wheel.
Debloat and custom debloat
There are 2 options in the debloat menu (besides knox which is self explanatory):
1) Debloat ROM
This option removes all files included in the kitchens standard bloat list file - /kitchen/tools/root/bloat
2) Custom Debloat
This option removes all files included in the bloat_custom file - /kitchen/tools/root/bloat_custom OR kitchen/superr_project/00_project_files/bloat_custom
This file is empty by default and is there for you to add whatever you want to remove. You can either add everything you want to remove and use only option 2, or you can add new files here and use option 1 and 2.
I suggest you take a look at /kitchen/tools/root/bloat to see the format of the listed bloat files. Use the same format for the bloat_custom file.
When you use either option, the files are not deleted. Instead they are moved to the 00_project_files directory in case you want to restore them later.
Deodexing
Deodexing Samsung roms may or may not work. If your rom does not boot after deodexing, try it without. If it works and you must deodex your rom, try a different tool. I hear svadev deodex tool works well for Samsung roms.
boot.img errors
If the kitchen gives you errors about unpacking boot.img, there is a good chance I will not be able to help. I suggest you figure out how to unpack it using Linux commands/binaries and let me know how you did it. You may also find a tutorial about how to unpack your boot.img. If so, please send a link. It does not help me to know another tool works. I need the commands/binaries used in order to update the kitchen.
Feel free to upload your boot.img AND the build.prop from the same rom so I can check to see if I can fix it. I will ignore you if you don't upload both mentioned files
I do not answer support questions through PM. There are no exceptions. Post in the thread if you want help so others can give suggestions and learn from your solution
I will not answer questions if it is clear that you have not read the OP, the info posts after the OP, and searched the thread for answers. I do not have time to answer the same questions over and over. Many questions are already answered in this thread and if you want help, I expect you to try and solve it on your own before posting. If your question has not been answered in the thread, I am happy to assist in any way possible.
If I ask you to upload files, they need to be uploaded on a server that does not require registration for full speed downloads, or registration for downloads at all. Drive, Dropbox, AFH, and Mega are examples of acceptable servers. There are many other good ones, but I hope you get the point.
Thanks for understanding
reserved
Looks promissing, gonna try it asap :good:
I suppose it to work for many devices but are there any already tested for?
Looks great mate. Can't wait to give it a go
Its been an honor, testing this out! This deserves to be stickied!!
Sent from my N9510 using Tapatalk
---------- Post added at 04:51 AM ---------- Previous post was at 04:48 AM ----------
Androidwizzard said:
Looks promissing, gonna try it asap :good:
I suppose it to work for many devices but are there any already tested for?
Click to expand...
Click to collapse
Zte Concord 2
Zte Warp4G
Moto E 2015
LG Exceed 2
LG Realm
Still waiting on results from:
MediaTEK VKworld (VS6050S)
SuperR. said:
Disclaimer: I am not responsible for anything bad that may occur from the use of this tool, but I will take all the credit you can give me if it works for you
Sent from my N9510 using Tapatalk
Click to expand...
Click to collapse
Nice and finally something for Linux. To bad I'm out of town can't wait to test this...
Nice work
Sent from my SM-G928T using Tapatalk
bcrichster said:
Its been an honor, testing this out! This deserves to be stickied!!
Sent from my N9510 using Tapatalk
---------- Post added at 04:51 AM ---------- Previous post was at 04:48 AM ----------
Zte Concord 2
Zte Warp4G
Moto E 2015
LG Exceed 2
LG Realm
Still waiting on results from:
MediaTEK VKworld (VS6050S)
SuperR. said:
Disclaimer: I am not responsible for anything bad that may occur from the use of this tool, but I will take all the credit you can give me if it works for you
Sent from my N9510 using Tapatalk
Click to expand...
Click to collapse
Think it needs to be in xda portal as well
Sent from my SM-N920C using Tapatalk
Click to expand...
Click to collapse
I'll give it a shot on Samsung Galaxy Note 5 - if there aren't any objections against @SuperR.
Is portal different than Chef Central?
Sent from my N9510 using Tapatalk
bcrichster said:
Is portal different than Chef Central?
Sent from my N9510 using Tapatalk
Click to expand...
Click to collapse
Xda portal is video review and goes on xda Facebook as well
Sent from my SM-N920C using Tapatalk
Androidwizzard said:
I'll give it a shot on Samsung Galaxy Note 5 - if there aren't any objections against @SuperR.
Click to expand...
Click to collapse
Right on, should have Knox removal as well. By all means, plz report back
Sent from my N9510 using Tapatalk
Good! I can test with a mtk6582 device with lollipop stock rom... sounds great!! SUPPORT!
Regarding MTK devices, I have never owned one so I am totally unfamiliar with special requirements they may need. I will add support for everything I can as issues come up
SuperR. said:
Regarding MTK devices, I have never owned one so I am totally unfamiliar with special requirements they may need. I will add support for everything I can as issues come up
Click to expand...
Click to collapse
I think you need to add mkbootimg ( https://github.com/osm0sis/mkbootimg ) for work with mtk based boot.img and maybe edit the img extraction of stock imgs.... I dont't now bro, you're the chef hahaha
Regards and support
duniel said:
I think you need to add mkbootimg ( https://github.com/osm0sis/mkbootimg ) for work with mtk based boot.img and maybe edit the img extraction of stock imgs.... I dont't now bro, you're the chef hahaha
Regards and support
Click to expand...
Click to collapse
This kitchen already uses Android Image Kitchen by osm0sis, which includes his mkbootimg. Maybe it will already work for MTK. Let me know if you encounter problems.
SuperR. said:
This kitchen already uses Android Image Kitchen by osm0sis, which includes his mkbootimg. Maybe it will already work for MTK. Let me know if you encounter problems.
Click to expand...
Click to collapse
Yes, It should work.
When I try with my device I'll tell you the results
Regards

[TOOL] [Windows] [GUI] ClassyKitchen For Android ROMs Development

I don't take responsibility for any damage may happen to your device because of using this tool, USE AT YOUR OWN RISK​A new generation of Android ROMs development...The ClassyKitchen​
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
About:
A new C++ Windows application that based on ASSAYYED KITCHEN to deal with the most of android ROMs (stock images, stock updates, running device ..... etc)
In addition to built-in apktool to easily decompile & recompile apk in the PROJECT
And with a friendly user interface with full mouse control just one click.
With static build feature and a new built-in windows tools feature (hex dump) that makes the whole working environment into one exe file only.
ROM editor features:
1 - Supported ROMs type for extract:
Any stock system[lz4] & boot[lz4] [cache | odm] images
All Samsung stock firmwares (TAR[.MD5]) with support for LZ4 compress
All Google stock firmwares (ZIP)
All Lineage stock ROMs (system.new.dat[br] & vendor - payload.bin)
Any other images dumped from other stock ROMs (Huawei - HTC.....etc)
Rooted device OR custom recovery (*With technology to dump boot & system & vendor images without need a space on device*)
2 - Supported ROM edits:
Pre-remove for Samsung RMM security
DeOdex for android [4.x.x] till [9.x.x]
ZipAlign for all APKs & JARs
Heavy DeBloat ROM with Re-Bloat
Full DeKnox ROM
Clean ROM from all CSC apks (in Samsung ROMs)
Support safe and powerful Build.prop tweaks
Support change Build Number text
Support add busybox into the ROM itself with all available symlinks in image
3 - Supported ROM build:
ZIP ROM contains sparse system [vendor & odm] dat
ZIP ROM for custom recovery flashing
ZIP images ROM for fastboot flashing
TAR images ROM for Samsung devices
Support compress Samsung images with original LZ4 format
4 - Supported boot image edits:
Support all boot images partitions names other than boot.img
Remove dm-verity with AVB & ForceEncryption
Enable ADB
Patch sepolicy (supports CIL) to supported deodexed Oreo
Add / Remove Magisk Root to boot image directly in windows
Support patch boot image to run scripts during boot that placed in /system/smart_scripts
5 - Supported Apktool:
Decompile single apk
Recompile single apk
Sign single apk
Support option to specify [New | Original] apk signature
Support use custom apktool.jar selected by user
Support Decompile - Recompile multi APKs in the same time
Support Decompile - Recompile JAR files (Support multi classes files)
6 - Supported On Device Features:
Support dump full device memory using (adb root) - supported (EMMC & UFS) Without need any space on device
Support dump specified partitions from device using (adb root) - (List to user and pick needed partitions)
General Features:
Quite simple user interface
Very safe when working with images ROM for files [modes, gid, uid, contexts, capabilities]
Read the exact EXT4 [symbolic links, full permissions] and re-apply them when building
Write full permissions for [fs_config, contexts, capabilities] when building an EXT4 image or in [updater-script]
Support fix the case sensitive problems with ROMs like (Samsung S8 / S8+)
Support save project and restore it when needing
Support [Added edits log] to allow the user to see all edits he made
Support add custom text during flash in recovery
Support save the system image and [odm] image sizes to rebuild them using the exact original size
Support allow user to change the build configs (size, sparse header, images ext)
Support custom debloat list
Support more that one connected ADB device and list them to user to pick one to pull ROM from
Pro Version:
The kitchen has two versions Free & Pro
And the Pro version requiring a small donation (20$) and it needs an authenticating code to run it on a specified PC,
If anyone need to use it just download and run then send to me the output code with a transaction ID to send the activation code that match the given code.
NOTE: The Pro version is to supporting my work only, and the Free version is enough to create a full modded flashable ROM
- The following features are only available in Pro version:
All On Device Features
Pull ROM from Rooted device or custom recovery
Change Build Number text
Build TAR images ROM for Samsung devices
Build ZIP images ROM for fastboot flashing
Add Magisk Root to boot image directly in Windows
Patch boot image to run script during boot
Decompile - Recompile multi APKs in the same time
Manual DeBloat as user wants
Download link:
- Latest Free Version: http://www.mediafire.com/file/7uch95enkpc7q2p/ClassyKitchen_Free_Beta_1.0.4.7z/file
- Latest Pro Version: http://www.mediafire.com/file/l62q85rj8d8lqu0/ClassyKitchen_Pro_Beta_1.0.4.7z/file
Changelog:
- Version: 1.0.4 - BETA:
Added support to build sparse dat images
Improved some props read in OnePlus devices
Added new tab On Device Features: Support dump Full device memory without need space on device & dump selected partitions without need space too (Pro Version)
Updated flash_kernel.sh script
Updated Magisk to version 18.0
- Version: 1.0.3 - BETA: Free Version - Pro Version
Added support to Decompile - Recompile multi apks in the same time (Pro Version)
Added support to manual DeBloat (list all ROM apks to user to pick one and remove) (Pro Version)
Updated DeKnox list
Improved dump ROM from device (skip search for ODM - VENDOR partitions if the device doesn't have them)
Added support to decompile & recompile JAR files
Added support to deal with boot images that have names other than boot.img
Added support to build ODM image in fastboot build option
ReCoded all Deodex codes to support ROMs that have symlinked 64 oat files like Huawei devices
Updated Magisk Root files and Magisk sources to v18
- Version: 1.0.2 - BETA: Free Version - Pro Version
Added support to ReCompress Samsung images to LZ4 during TAR building
Updated packing original APK signature during APK compiling
Updated Magisk to 17.3 (2018-11-22)
Added SmartScripts feature to easy run scripts as Root during system boot (Pro Version)
- Version: 1.0.1 - BETA: Free Version - Pro Version
Fixed bug happened when switch from system_root to system type ROM
Added support to vendor (build zip - build images - extract)
Updated building images codes (better size printing)
Added support to (vendor.new.dat[br])
Added support to pull vendor image from Rooted devices
- Version: 1.0.0 - BETA: Free Version - Pro Version
Initial release
Reports & Request features:
To report any issue Please provide a pic for the Error happened in the Kitchen and A link for the ROM used (Without them I can not provide any help) (Posting here not via PM please).
To request any features to add or any notes about exists features just post about them on this thread (Or via PM).
Credits:
- Cygwin Project: For base tools to deal with Linux symbolic links in Windows
- 7zip: For 7z binary to deal with EXT4 filesystem
- AOPS Platform Tools: For ADB tools
- And_pda: For ImgExtractor tool
- LZ4 Project: For sources to deal with lz4 compressed images
- AOSP Sources: For all android sources (sparse converting, simg2img, aapt, zipalign, brotli, cdex_convert_sources, readelf......etc)
- Cubinator: For his EXT4 images analyzing python sources
- testwhat: For oat2dex tool
- anestisb: For vdexExtractor tool
- Linus Yang: For compact_dex_converter tool
@topjohnwu: For Magiskboot tool sources
@JesusFreke: For his Smali & Baksmali
@xpirt: For sdat2img python tool
@iuss: For payload_dumper python tool
@iBotPeaches: For apktool tool
WoW , that was mind blowing . I Just got my Pro version, and i build my first tar rom and it was flashed successfully . Thank you sir.
Hello , Is this suitable to port roms , by repacking rom files , as i have a unpacked system folder need to repack to system.new.dat.br or system.new.dat
thank you
arvs47 said:
Hello , Is this suitable to port roms , by repacking rom files , as i have a unpacked system folder need to repack to system.new.dat.br or system.new.dat
thank you
Click to expand...
Click to collapse
Currently working with system folder is not supported due to hard get of correct permissions and image configs.
I will add support for that soon with creating system.dat*
AndroDef said:
Currently working with system folder is not supported due to hard get of correct permissions and image configs.
I will add support for that soon with creating system.dat*
Click to expand...
Click to collapse
ok i am trying to port asus zenfone 5 2018 zenui rom into Asus zenfone max pro m1
so does this app support manufacture rom port once you add system.dat support
arvs47 said:
ok i am trying to port asus zenfone 5 2018 zenui rom into Asus zenfone max pro m1
so does this app support manufacture rom port once you add system.dat support
Click to expand...
Click to collapse
No, Porting feature is not supported now
How do i create custom debloat lists?
Really great application! Made my first rom using it!
Sent from my dream2lte using XDA Labs
dr460nf1r3 said:
How do i create custom debloat lists?
Really great application! Made my first rom using it!
Sent from my dream2lte using XDA Labs
Click to expand...
Click to collapse
Create a (txt) file and write in it all items you want to remove (Names with extensions only without paths)
Then press on Debloat and select custom debloat list and select your txt file (File browser)
At samsung ruins, it would not be possible to include vendor.img.lz4 among the unpacked and repackaged
You also have to change things to get the better rom done
Thanks in advance
I have a N960F, downloaded the latest official firmware from sammobile. Size 4.85GB.
How come the final zip file to flash in recovery is only 2.71GB?
This is what I did to the rom:
removed verity/encryption
enabled adb
disabled rmm
zipaligned
deknox
added busybox
That's all. I didnt add neither remove anything else.
I installed the resulting rom and it installed fine but without detecting the SIM card, not detecting past wifi and bluetooth connections.
I used it previously for my tablet T835 and everything worked perfectly.
Any clues?
Sapiens said:
I have a N960F, downloaded the latest official firmware from sammobile. Size 4.85GB.
How come the final zip file to flash in recovery is only 2.71GB?
This is what I did to the rom:
removed verity/encryption
enabled adb
disabled rmm
zipaligned
deknox
added busybox
That's all. I didnt add neither remove anything else.
I installed the resulting rom and it installed fine but without detecting the SIM card, not detecting past wifi and bluetooth connections.
I used it previously for my tablet T835 and everything worked perfectly.
Any clues?
Click to expand...
Click to collapse
When downloading offical firmware there are lots of other images which are flashed via odin such as vendor etc. By using the kitchen only the system image is used.
Sent from my dreamlte using XDA Labs
dr460nf1r3 said:
When downloading offical firmware there are lots of other images which are flashed via odin such as vendor etc. By using the kitchen only the system image is used.
Sent from my dreamlte using XDA Labs
Click to expand...
Click to collapse
Thanks for the prompt answer. I didnt have a clue about that. Good to know.
Any idea why my SIM and radios got screwed up. No cellphone signal, didnt even ask for the SIM pin as if it didnt see it. The wifi didnt connect the usual network. Bluetooth kept asking me many times to confirm the connection code of my WearOs watch.
Sapiens said:
I have a N960F, downloaded the latest official firmware from sammobile. Size 4.85GB.
How come the final zip file to flash in recovery is only 2.71GB?
This is what I did to the rom:
removed verity/encryption
enabled adb
disabled rmm
zipaligned
deknox
added busybox
That's all. I didnt add neither remove anything else.
I installed the resulting rom and it installed fine but without detecting the SIM card, not detecting past wifi and bluetooth connections.
I used it previously for my tablet T835 and everything worked perfectly.
Any clues?
Click to expand...
Click to collapse
Before flashing any modded ROM with the kitchen flash the Full stock copy of the ROM first.
If this doesn't work try to flash a ROM by the kitchen but without any edits to know if the problem from edits or kitchen itself.
AndroDef said:
Before flashing any modded ROM with the kitchen flash the Full stock copy of the ROM first.
If this doesn't work try to flash a ROM by the kitchen but without any edits to know if the problem from edits or kitchen itself.
Click to expand...
Click to collapse
Do you mean flashing the full stock on Odin? That would make me lose TWRP. And the idea for me of using your very nice ROM creating tool was to remain official, rooted, without having to install custom recovery again.
It worked perfectly on my tablet.
Sapiens said:
I have a N960F, downloaded the latest official firmware from sammobile. Size 4.85GB.
How come the final zip file to flash in recovery is only 2.71GB?
This is what I did to the rom:
removed verity/encryption
enabled adb
disabled rmm
zipaligned
deknox
added busybox
That's all. I didnt add neither remove anything else.
I installed the resulting rom and it installed fine but without detecting the SIM card, not detecting past wifi and bluetooth connections.
I used it previously for my tablet T835 and everything worked perfectly.
Any clues?
Click to expand...
Click to collapse
Hello
Because it does not wrap the complete rom into tar, but only sytem.img, odm.img, and boot.img
he does not do anything else
rstwingo said:
Hello
Because it does not wrap the complete rom into tar, but only sytem.img, odm.img, and boot.img
he does not do anything else
Click to expand...
Click to collapse
Thank you for the explanation
Sent from my SM-N960F using Tapatalk
rstwingo said:
Hello
Because it does not wrap the complete rom into tar, but only sytem.img, odm.img, and boot.img
he does not do anything else
Click to expand...
Click to collapse
Sapiens said:
Thank you for the explanation
Sent from my SM-N960F using Tapatalk
Click to expand...
Click to collapse
I finished add support for vendor partition and will release the update soon.
AndroDef said:
I finished add support for vendor partition and will release the update soon.
Click to expand...
Click to collapse
Looking forward to testing that update!
Sent from my SM-N960F using Tapatalk
---------- Post added at 10:58 AM ---------- Previous post was at 10:18 AM ----------
AndroDef said:
I finished add support for vendor partition and will release the update soon.
Click to expand...
Click to collapse
Also, is it possible to have for the debloating option, a list based on the default list that you provide where one can tick and untick apps to select what to remove and what to keep?
I know this requires more programming. If not possible then to provide the default list that you use to debloat, so we can customize it please.
Thanks
Sent from my SM-N960F using Tapatalk
vendor.new.dat missed
Sapiens said:
Looking forward to testing that update!
Sent from my SM-N960F using Tapatalk
---------- Post added at 10:58 AM ---------- Previous post was at 10:18 AM ----------
Also, is it possible to have for the debloating option, a list based on the default list that you provide where one can tick and untick apps to select what to remove and what to keep?
I know this requires more programming. If not possible then to provide the default list that you use to debloat, so we can customize it please.
Thanks
Sent from my SM-N960F using Tapatalk
Click to expand...
Click to collapse
After debloat process you can navigate to (PROJECT_FILES/DEBLOAT) and delete what you want then restore the needed items by the kitchen, However I will add manual debloat feature and currently I attached the debloat list of the kitchen.
daxiaamu said:
vendor.new.dat missed
Click to expand...
Click to collapse
Send to me a link for a firmware contents that file.

[GUIDE] HDR Fix with OTA Update Survival

Tested with:
Code:
ArrowOS Version: arrow-11.0
ArrowOS Build Type: OFFICIAL
ArrowOS Build Variant: VANILLA
Device Name: POCO X3 NFC (surya)
This modification makes use of the addon.d survival mechanism found in almost all (if not all) custom ROMs, which is leading back to CyanogenMod, and allows the installation of @janhammer504's YouTube HDR & Chrome Yellow Tint - Real Fix with automatic reinstatement after a manual or OTA system update.
Create the folder /sdcard/Android/addon.d/hdrfix, download and unpack YouTube HDR & Chrome Display Fix (v2) - Final.zip to that location.
Place the following script with the name 52-hdrfix.sh into /system/addon.d and make it executable (755), which can either be done from a root shell or through recovery after mounting /system with read-write access:
Code:
#!/sbin/sh
#
# ADDOND_VERSION=2
#
###################
# Restore HDR Fix #
###################
case "$1" in
post-restore)
AD="/sdcard/Android/addon.d"
DD="/product/vendor_overlay/29/etc"
mount /dev/block/mapper/product /product 2> $AD/mount_error.log
[ -d $DD ] && cp $AD/hdrfix/* $DD 2> $AD/hdrfix_error.log
umount /product
;;
esac
That's it, either reinstall the current version of the used custom ROM through recovery or make an OTA update.
Now the catch with this was, that for some unknown reasons, addon.d scripts see the device mapping different than from a running system or recovery, please see this issue for details.
ArrowOS 11 has the two XML files in /product/vendor_overlay/29/etc, but this may be different in other ROMs. In that case, simply have a look and change the destination folder ($DD) in the script accordingly.
The script is safe to use as nothing gets modified if the given destination folder is not found.
To uninstall this modification, simply remove the file /system/addon.d/52-hdrfix.sh.
You can also temporarily disable this modification by removing/renaming the two XLM files from/in /sdcard/Android/addon.d/hdrfix and everything gets back to default with the next system update.
Hint: You may want to watch the changelog for the used ROM and remove that modification once the ROM developers have implemented that fix by themselves.
Although working as supposed to, my approach for applying this fix is more of a proof of concept to me, as I wanted to find out how to make use of the addon.d survival mechanism.
For anyone else looking for an easier way to apply that fix (till your ROM developer has taken care of this), @janhammer504 has already provided the according Magisk Module.
FYI This fix will be implemented in the next build of ArrowOS, so this modification is no longer needed if using that custom ROM.
Is there any magisk module for fix? I'm noob Now using Havoc os 4.3 and don't want to flash arrow os and format data and install everything again Thanks in advance.
Master One said:
FYI This fix will be implemented in the next build of ArrowOS, so this modification is no longer needed if using that custom ROM.
Click to expand...
Click to collapse
I have the latest arrow os 12 on my F3 and HDR does not work.
AndreiR32 said:
I have the latest arrow os 12 on my F3 and HDR does not work.
Click to expand...
Click to collapse
Better ask at the new ArrowOS 12 thread then, because I'm still on 11.

Development [KERNEL] CleanSlate T 2.4.0/S 1.4.2 |AdBlock|SafetyNet|BatterySaver [Oct 28]

tbalden's
CleanSlate kernel
for Asus ZenFone 9
The User Experience Kernel leaning towards Stock Stability plus UX features.
Rock stable stock approach, performance smooth and issue free
"No-Root is a State of Mind"
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
As always tbalden is here to bring you authentic new features first in line, this year Asus ZF9.
No root elevation (magisk) needed for all functions and preference switches through CS Config App
​
Release Calendar
Version 2.4.0 - 13 of Dec 2022
Version 1.4.2 - 28 of Oct 2022
Version 1.0.0 - 29 of Aug 2022
Should work on official ROM bases 32.2050.2050.x+.
Features:
- Flashlight Notification/Call blinking (see video below)
- Vibrating Notification Reminder (DETAILS)
- Notification In-Pocket Booster boost notifications vibrations while phone is in pocket
- Haptic Type Tweak change haptic feedback waveform types
- K.AdAway adblocking built-in kernel only, All browsers, Apps web-ads, except YouTube / streaming / Facebook ads
- SafetyNet pass passes if using without Magisk/Rooting, flashing the boot img only, Google Pay should work
- Sweep to Sleep gestures - highly customizable
- DoubleTap & LongTap on corner area gestures - new way to pull down android Notification Area or screen off
- Sweep/Tap gesture to force close foreground app - DETAILS HERE
- Battery Saver cut back max CPU freqs, 3 levels + touch boost limiter options
- Face down screen off - put phone face down to turn screen off
- Kernel Log / Crash dump to internal storage/sdcard - no root/magisk needed, from Companion App use Kernel Log button
- CleanSlate Companion / Config - rootless app to configure
Facts:
- no root required, use /sdcard/uci_user.cfg file to configure 99% of the features without rooting. If you need tweak apps (e.g. EXKM / FK) you'll need rooting!
- built on top of kernel sources released by ASUS, 5.10.x
- built with standard toolchain for stability and efficiency
- built with Control Flow Integrity sec hardening from Android S versions onwards
- kept stable, no tweakings, just features
- stable and reliable, keeping close to stock except addition of Usability features
Requirements
- Unlocked ZF 9, stock or with magisk root
- BACKUP: make sure you have a stock image (boot img) from asus before installing this!
Installation Guide
Firstly install CleanSlate configuration and CleanSlate companion apps on your phone (both found down below in Download section). (On play store version: with Android 12 you need to join the Beta program for the correct app versions.) Set them up initially.
- Non-rooted method: 0. download the non-rooted boot img.zip, UNZIP it first!
Reboot to bootloader, and flash the images with these commands:
Code:
adb reboot-bootloader
fastboot flash boot full_img/boot.img
fastboot flash vendor_boot full_img/vendor_boot.img
fastboot flash dtbo full_img/dtbo.img
fastboot reboot fastboot
fastboot flash vendor_dlkm full_img/vendor_dlkm.img
fastboot reboot
.. reboot, enjoy
- Rooted method: 0. download the rooted installer zip
1. install magisk
2. use a Kernel Flasher to flash the installer zip
- For SafetyNet, Adblocking, after flashing you might need to restart the phone after the first boot, otherwise it might not work.
- For adblocking KAdaway switching on and off, you will need to Force Close browser app like Chrome to let it work in the given browser.
- For Play Integrity (with SafetyNet passing) you might need to Clean App Data in Google Play Store app to make it reevaluate Integrity
--- If you have magisk installed Play Integrity might be tripped. I only tested without Magisk, flashing CleanSlate 1.0.0 bootimage.
- If using Companion App for notification / gesture etc features, there's a setting in the app to Switch off Proximity sensor while Screen is on. This will prevent the flickering, but Face down screen off feature won't work
Known bugs
- None, please tell
- please disable magisk modules before reporting issues, and please provide logs if possible
Download
Android 13
Non rooted, Android 13 images
ZF9 non rooted installer images zipped - 33.2060.2060.65 WW - CS 1.4.2: https://forum.xda-developers.com/attachments/fastboot_cleanslate_s_zf9_240_imgs-zip.5784177/
Rooted installer zip, Android 13 images
ZF9 to flash from rooted phone with Kernel Flasher: CS 2.4.0: https://forum.xda-developers.com/attachments/cleanslate_s_zf9_240-zip.5784179/
Android 12
Non rooted, Android 12 images
ZF9 non rooted installer images zipped - 32.2050.2050.29 WW - CS 1.4.2: https://www.androidfilehost.com/?fid=14871746926876840958
Rooted installer zip, Android 12 images
ZF9 to flash from rooted phone with Kernel Flasher: CS 1.4.2: https://www.androidfilehost.com/?fid=14871746926876840957
Non rooted, Android 12 image
ZF9 boot image zipped - 32.2030.2030.26 WW - CS 1.0.0: https://www.androidfilehost.com/?fid=14871746926876840958
Config Applications
Companion App 3.3.x-- Donation premium on PlayStore:
You need to join the BETA program to get the working version for the kernel!
https://play.google.com/store/apps/details?id=org.cleanslate.csservice
Configuration App 3.2.x -- Donation premium on playstore:
You need to join the Beta program to get the working version for the kernel!
- additional features in premium app: App Themes, Profiles, Profile Switch QuickTiles
https://play.google.com/store/apps/details?id=org.cleanslate.csconfig
How to join beta program: https://forum.xda-developers.com/t/...ashlight-s2s-vib-dec-22.4281807/post-86171493
Android 12:
Companion App 3.3.9 -- Normal free download:
https://www.androidfilehost.com/?fid=15664248565197208875
Configuration App 3.2.11 -- Normal free download:
https://www.androidfilehost.com/?fid=14871746926876820727
Donation:
If you appreciate this, don't forget to hit the Thanks button, Vote 5 stars on Thread, or consider to Donate. Donations here
Thank you!
Donators Hall of Fame
Much appreciation and many thanks go to...
@velimirchek
@MarcoG:
@guidogsbn
@The Great Dane
@Whiskey103
@purple patch
@panosmdma
@sttw1fa
@jelive
@beartiger
@st_voss
@bigruss
@deagleone
@DroidIt!
@8bitbang
@Will972
@smallKING81
@mick_soul
@p50kombi
@K4Y3
@ dieter
@michaelbsheldon
@dioooi
@ali nz
@bstiti
@Oddvin94
@norgan
@lol8888
@twinnfamous
@cameljockey1
@Cryptycat7
@Pasqui1978
@4ntagonist
@turbo jjjang
@munkyvirus
@knopie
Special thanks to AnyKernel installer developer: osm0sis
To @Freak07 for all his work on XDA and help
To @Captain_Throwback
Sharing policy:
As this is all GPL licensed kernel source, you can use it in your code, but don't forget about proper credit.
Source Code: https://github.com/tbalden/android_kernel_asus_zf9_common-kernel
Readme's and howtos
Changelogs come here later
Be aware that in Battery Saver feature, there's CURRENTLY NO CAMERA APP FOREGROUND DETECTION! Please disable this feature when you use Camera apps (otherwise slow camera, video recording)!
Hopefully camera detection can come later, as still working on more features.
nice work!
great to see you here
Great develop
Thanks for sharing! If I have the patience to get the C version when it eventually releases, I'll give this kernel a try!
- Update Android 12 Stable - 1.4.0 -
Major CleanSlate feature update
​
- Build and repack to QGKI2 kernel format (boot, vendor_boot, vendor_dlkm, dtbo images) with new scripts
--- Thanks go to @Freak07 for the teamwork of many hours in getting to the bottom of this crooked path to build Qualcomm's new modular kernel format and make it work on the ZenFone 9
--- Thanks go to ASUS for providing the most complete sources zip for Qualcomm based QGKI kernels up to date by ANY vendor/OEM.
--- Thanks go to @osm0sis for his AK3 installer and @capntrips for his excellent tooling in AK3 and the tips help he lended in the process of getting things rolling
- Now all features possible to implement added to drivers
-- New:
---- Flashlight notifications
---- Vibrating Notifications reminder
---- Gestures Features: Sweep/Tap in corner gestures added
---- Fingerpint customization added:
----- FP: Possibility to let 4 types of Fingerpint event types to be mapped by third party mapper apps like Button Mapper
----- FP Possibility to set a Double tap to sleep mode on Fingerpint sensor (with possibility of keeping swipe up / down stock feature enabled/working)
---- Double Vibration feature on Phone Calls in DND or Silent mode
-- Updates
-- Hosts file for KAdaway
-- Safetynet + Play integrity still passes without Magisk
-- All features work with or without Magisk (tho flashing magisk will break safetynet until you use SafetyNet fix magisk modules)
Two types of installation methods provided.
- One installer ZIP for magisk rooted kernel flasher apps (like Kernel flasher or EXKM)
- One fastboot ZIP for solely fastboot based from command line with an example linux script to flash, for those who don't want to use Magisk. Be aware that if you flash by this fastboot method, vendor_dlkm flashing works, but will downsize the vendor_dlkm partition. So if you want to flash other kernels in rooted kernel flasher apps, you need to go to fastbootd, flash a stock vendor_dlkm.img (and then also flash in fastboot stock boot/vendor_boot/dtbo for a bootable state) to get back to the stock sized partition and then only after that you can flash AK3 installer zips.
CleanSlate S 1.4.0 Downloads:
Rooted installer zip:
CleanSlate S 1.4.0: https://www.androidfilehost.com/?fid=14871746926876820728
Non rooted, Android S images for fastboot based flashing (firmware wwe 31.2030.2030.26)
fastboot image zip CS 1.4.0: https://www.androidfilehost.com/?fid=14871746926876820729
Cleanslate config app version 3.2.11 needed for new features:
Free version download: https://www.androidfilehost.com/?fid=14871746926876820727
Premium version: https://play.google.com/store/apps/details?id=org.cleanslate.csconfig&hl=hu&gl=US
- rolled out to playstore Beta program
Read first post in thread for installation details.
Will it run with the latest fw update?
NisseGurra said:
Will it run with the latest fw update?
Click to expand...
Click to collapse
It actually runs, but new sources are up, and I'm updating the installers soon.
- Update Android 12 Stable - 1.4.1 -​
CleanSlate asus sources update
-- sources updated to 2040.23
-- Hosts file for KAdaway
Two types of installation methods provided.
- One installer ZIP for magisk rooted kernel flasher apps (like Kernel flasher or EXKM)
- One fastboot ZIP for solely fastboot based from command line with an example linux script to flash, for those who don't want to use Magisk. Be aware that if you flash by this fastboot method, vendor_dlkm flashing works, but will downsize the vendor_dlkm partition. So if you want to flash other kernels in rooted kernel flasher apps, you need to go to fastbootd, flash a stock vendor_dlkm.img (and then also flash in fastboot stock boot/vendor_boot/dtbo for a bootable state) to get back to the stock sized partition and then only after that you can flash AK3 installer zips.
CleanSlate S 1.4.1 Downloads:
Rooted installer zip:
CleanSlate S 1.4.1: https://www.androidfilehost.com/?fid=14871746926876834460
Non rooted, Android S images for fastboot based flashing (firmware wwe 31.2040.2040.23)
fastboot image zip CS 1.4.1: https://www.androidfilehost.com/?fid=14871746926876834462
Read first post in thread for installation details.
Installed, seems flawless
2040.28 update is up, with sources. The new sources has no changes, tested, I'm using the .23 based cs kernel without issues.
- Update Android 12 Stable - 1.4.2 -​
CleanSlate asus sources update
-- sources updated to 2050.29
-- Hosts file for KAdaway
Two types of installation methods provided.
- One installer ZIP for magisk rooted kernel flasher apps (like Kernel flasher or EXKM)
- One fastboot ZIP for solely fastboot based from command line with an example linux script to flash, for those who don't want to use Magisk. Be aware that if you flash by this fastboot method, vendor_dlkm flashing works, but will downsize the vendor_dlkm partition. So if you want to flash other kernels in rooted kernel flasher apps, you need to go to fastbootd, flash a stock vendor_dlkm.img (and then also flash in fastboot stock boot/vendor_boot/dtbo for a bootable state) to get back to the stock sized partition and then only after that you can flash AK3 installer zips.
CleanSlate S 1.4.2 Downloads:
Rooted installer zip:
CleanSlate S 1.4.2: https://www.androidfilehost.com/?fid=14871746926876840957
Non rooted, Android S images for fastboot based flashing (firmware wwe 31.2050.2050.29)
fastboot image zip CS 1.4.2: https://www.androidfilehost.com/?fid=14871746926876840958
Read first post in thread for installation details.
Is there any way to add vowifi or volte without rooting with a kernel like this?
Hello,
I recently buy this phone and wanted to increase the battery life of this phone.
This seem to be an good option, but have you information about battery life with this kernel ?
Thanks you.
Hi,
I don't know what I'm doing wrong but got into quite a bit of bootloops trying to install it, the non-rooted version.
Started by installing the files in the last post directly when in fastboot. This resulted in this message, followed by a bootloop at the ASUS logo :
Writing 'vendor_dlkm' FAILED (remote: '(vendor_dlkm_a) No such partition')
Then, to get out of it, downloaded the ASUS official image, uncompressed the individual files and flashed some of them according to an Internet post, which solved my problem and then the phone could boot again normally.
Then, I decided to flash the cleanstate img file in the first post, followed by the files in the last post, using the sequence described in the bash file. Again, bootloop! Resolved it this time by flashing the same cleanstate img file only and leave at that.
After OS booting, I see that the kernel is definetly there and it seems that ads are being blocked (my main reason to install it).
The kernel version is 5.10.81-cleanstate-100-android12-9.
So, my question is : what did I do wrong and what is the purpose of the new files since they no longer contain a cleanstate img file in the zip file?
Thanks in advance,
dragonii said:
Hi,
I don't know what I'm doing wrong but got into quite a bit of bootloops trying to install it, the non-rooted version.
Started by installing the files in the last post directly when in fastboot. This resulted in this message, followed by a bootloop at the ASUS logo :
Writing 'vendor_dlkm' FAILED (remote: '(vendor_dlkm_a) No such partition')
Then, to get out of it, downloaded the ASUS official image, uncompressed the individual files and flashed some of them according to an Internet post, which solved my problem and then the phone could boot again normally.
Then, I decided to flash the cleanstate img file in the first post, followed by the files in the last post, using the sequence described in the bash file. Again, bootloop! Resolved it this time by flashing the same cleanstate img file only and leave at that.
After OS booting, I see that the kernel is definetly there and it seems that ads are being blocked (my main reason to install it).
The kernel version is 5.10.81-cleanstate-100-android12-9.
So, my question is : what did I do wrong and what is the purpose of the new files since they no longer contain a cleanstate img file in the zip file?
Thanks in advance,
Click to expand...
Click to collapse
Hi, I'm not sure what's happening there, but the second zip with the example script does have all the images in a folder named full_img.
Sorry for the confusion, the installation guide in the first post isn't reflecting that structure, but it's all in there.
The commands to do are:
Code:
adb reboot-bootloader
fastboot flash boot full_img/boot.img
fastboot flash vendor_boot full_img/vendor_boot.img
fastboot flash dtbo full_img/dtbo.img
fastboot reboot fastboot
fastboot flash vendor_dlkm full_img/vendor_dlkm.img
fastboot reboot
tbalden said:
Hi, I'm not sure what's happening there, but the second zip with the example script does have all the images in a folder named full_img.
Sorry for the confusion, the installation guide in the first post isn't reflecting that structure, but it's all in there.
The commands to do are:
Code:
adb reboot-bootloader
fastboot flash boot full_img/boot.img
fastboot flash vendor_boot full_img/vendor_boot.img
fastboot flash dtbo full_img/dtbo.img
fastboot reboot fastboot
fastboot flash vendor_dlkm full_img/vendor_dlkm.img
fastboot reboot
Click to expand...
Click to collapse
So, according to you, I should just take the latest zip file and run the commands in fastboot mode even if I flashed already the cleanstate img file in the first post?
EDIT: did it already and no more error messages with version 1.4.2. Thanks !
Hi again,
How can I access these features? There are not showing up in the CleanSlate Configuration tool.
-- New:
---- Flashlight notifications
---- Vibrating Notifications reminder
---- Gestures Features: Sweep/Tap in corner gestures added
---- Fingerpint customization added:
----- FP: Possibility to let 4 types of Fingerpint event types to be mapped by third party mapper apps like Button Mapper
----- FP Possibility to set a Double tap to sleep mode on Fingerpint sensor (with possibility of keeping swipe up / down stock feature enabled/working)
---- Double Vibration feature on Phone Calls in DND or Silent mode
Thanks in advance,

Categories

Resources