[Android Software Development] osm0sis:
Let's try this again! After a few more final struggles it looks like we have a release! Right off the top, massive thanks to @Postman1year and @CXZa. 🙌 They went the extra mile with testing the earlier v3.8 "pre"-release which ended up having major last minute issues with hangs for many from the cut command, and then regressions to cpio/symlink creation, all from bad Cygwin updates! 😳 That should all be resolved now, and I'll be freezing Cygwin at the lower, working version in AIK until I can report on and verify these issues have been fixed by Cygwin. Upside of all this being I had a bit more time to polish up a few more things in the build scripts and other platforms while I was at it, so we should be even more solid now. 💪

Big news is of course full boot_img_hdr_v3 support, and along with it support for the new AOSP vendor_boot format, which I'm calling AOSP_VNDR within AIK due to its "VNDRBOOT" header magic. These almost completely break backwards compatibility with the previous boot_img_hdr versions so took a bit more effort to backport to my tools, but I'm pleased with the results and rewrites it allowed me to do even if it did take longer, plus upkeep should be easier again going forward. (y)

AIK false positives from heuristics with Windows Defender, et al. seem to go back and forth over time, but have indeed gotten worse again lately. Thanks to @CXZa for the help investigating the Windows sudo false positives and alternatives, and ideas for fixing the multiple sudo prompts, which are included in this release. I submitted the old UPX-packed sudo.exe to Microsoft again as a false positive and pointed them to my source and compile method, so hopefully Windows Defender will stop trying to quarantine my AIK archived zips while we're at it. :p

I have also tweaked my updated boot_signer.jar to have a higher cutoff before it determines that the image has a dt (since the header_version value the dt_size conflicts with is up to 4 already in AOSP upstream), and added more graceful error catching and messages for attempting to verify or sign boot_img_hdr_v3 (which is not supported by AVBv1 at all).

Please note there is a Windows Registry fix if you run into duplicate "terminfo" files errors unpacking the latest TWRP images.

The AIK Build Farm scripts are updated with fixes, including updates to the cross-platform regression tester, for any wanting to play along at home.

Flashlt was updated over in my Odds and Ends thread as well, highly recommended as it's the perfect companion package to AIK-mobile.

I work on these projects in my limited time off, so if you like the progress I'm making, or enjoy anything else I've done on xda, please consider sponsoring my ongoing work using my GitHub Sponsors profile. For a one-time donation you can hit the donate link from my profile. Thanks for your support!

Android Image Kitchen v3.8:

- fix majority of sudo.exe VirusTotal false positives by UPX decompressing it

- fix magic detection false positives of OSIP bootimg headerless

- add test to ensure Windows sudo is executable

- fix multiple Windows sudo prompts by putting ramdisk packing commands into a single find2cpio.bat to execute

- update mkbootimg, unpackbootimg, pxa-mkbootimg, pxa-unpackbootimg and unpackelf binaries from my repos

- fix for corrected unpackbootimg/unpackelf kernel+ramdisk suffixes

- update AOSP support for boot_img_hdr_v3

- add AOSP vendor_boot VNDRBOOT magic detection and support

- fix false no files error on ramdisks with only directories in root

- update lz4 binary (1.9.3)

- fix lz4 and lz4-l ramdisk default repack compression level to match what Google seems to be using

- update mkimage and dumpimage binaries (2021.04)

- update slimmed magic file (from file 5.40) with my own fixes

- update boot_signer*.jar to more clearly catch failure with hdr_v3

- fix exiting scripts with an error code on failures

- update to the latest Cygwin binaries and libraries

- revert Cygwin library (3.1.4-1) due to hangs for most users with cut related to 3.2.0-1, and broken cpio symlink creation related to 3.1.5-1+

AIK-mobile v3.8 + AIK-Linux v3.8:

- fix magic detection false positives of OSIP bootimg headerless

- update busybox binary (1.32.1) with the latest patches and fixes from my repo (AIK-mobile)

- clean up old `test` style tic

- fix sloppy/unpredictable `cmd && this || that` statements

- update Diffusion Installer Backend for Android 11 and latest Magisk (AIK-mobile)

- update mkbootimg, unpackbootimg, pxa-mkbootimg, pxa-unpackbootimg and unpackelf binaries from my repos

- fix for corrected unpackbootimg/unpackelf kernel+ramdisk suffixes

- update AOSP support for boot_img_hdr_v3

- add AOSP vendor_boot VNDRBOOT magic detection and support

- update lz4 binary (1.9.3)

- fix lz4 and lz4-l ramdisk default repack compression level to match what Google seems to be using

- update mkimage and dumpimage binaries (2021.04)

- update file binary (5.40) (AIK-mobile)

- update slimmed magic file (from file 5.40) with my own fixes

- update boot_signer*.jar to more clearly catch failure with hdr_v3

- update to the latest MacPorts binaries and libraries (AIK-Linux)

- revert xz binary (5.2.4) due to arm64 segfaults in 5.2.5 with levels -4 to -9 (AIK-mobile)

More on my own build changes in the commits here: https://github.com/osm0sis/mkbootimg; https://github.com/osm0sis/pxa-mkbootimg; https://github.com/osm0sis/unpackelf; https://github.com/osm0sis/android-busybox-ndk.

Installation information and details on each edition can be found in the OP for Win32 or the AIK-mobile and AIK-Linux initial release notes.

If you are reporting a problem with your device, please clearly state your device name and model/variant as well as provide a link to the image file.