[Android Software Development] osm0sis:
With the addition of Intel OSIP format support I've finally completed all the image formats planned for what was originally AIK v3.0. :silly:

A lot of (protracted) research and time went into it, and a massive thanks to [MENTION=1813976]shakalaca[/MENTION] for helping to complete the format support on the Python version and test.

In other news, Google/AOSP has updated the bootimg format to v2 for Android Q so now mkbootimg has both --recovery_dtbo and --dtb, plus my fork still supports the old pre-version dtb (where dt_size is in the same place as header_version in the v1+ header) as --dt, so, things are getting complex on the mkbootimg command line! But hey, that's why AIK exists. :D

To try and help people keep it all straight, I've renamed *-dtb for the old pre-version variants in unpackbootimg and pxa-unpackbootimg, as well as unpackelf, to *-dt; *mkbootimg already used --dt for this so basically I have just made everything match again and then I have simply added the new --dtb to mkbootimg with some logic based on header_version to allow each as the format allows. Happy hacking! :cowboy:

The AIK Build Farm scripts got a pretty big revamp for the NDK Unified Headers and me refactoring all the easy compiles into a "generic" build function to simplify.

Fla**** is available over in my Odds and Ends thread, 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 do hit the donate link from my profile. Thanks for your support!

Android Image Kitchen v3.5:

- fix ramdisk .hidden/000 (restricted) permissions subdirectory access issue from inherited parent unzip directory permissions

- add workaround for U-Boot dumpimage failing on untrimmed uImage dumps

- add support for uncompressed cpio format ramdisks

- add Intel OSIP format detection and use mboot to unpack/repack

- update mkimage and dumpimage binaries (2019.04)

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

- support dtb and dtb_offset from AOSP boot_img_hdr_v2

- abort on repack for ramdisks that require elevation when Windows sudo is missing

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

- add --local to use the current directory for unpack/repack instead of the AIK directory

- fix error catching for U-Boot uImage unpacking

- update lz4 binary (1.9.0)

- update to the latest Cygwin binaries and libraries

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

- fix weird recovery install edge case where device is arm64, and recovery is arm64, but ROM is arm, so only arm binaries will work (AIK-mobile)

- add workaround for U-Boot dumpimage failing on untrimmed uImage dumps

- add support for uncompressed cpio format ramdisks

- fix aik --restore for Magisk (AIK-mobile)

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

- support new Magisk v18.0, v18.1 and v18.2+ paths in installer and aik shortcut (AIK-mobile)

- add script permission fixing to all .sh scripts

- add Intel OSIP format detection and use mboot to unpack/repack

- update mkimage and dumpimage binaries (2019.04)

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

- support dtb and dtb_offset from AOSP boot_img_hdr_v2

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

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

- add --local to use the current directory for unpack/repack instead of the AIK directory (AIK-Linux)

- update lz4 binary (1.9.0)

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

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/mboot; 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.