- add built-in support for mtd-utils (nanddump, flash_erase, nandwrite) for MTD-based Android devices that do not work with dd
- wipe boot block with dd before write to be clean/safe (SuperSU zip also does this)
Known working mtd-utils ARM binaries can be found in my FlashIt v2.5 package:
https://forum.xda-developers.com/showthread.php?t=2239421
- add built-in support for unpackelf for Sony ELF devices (see: https://github.com/osm0sis/unpackelf)
- kernel section is not gzipped on ELF devices with non-QCDT/non-ELF dtb, which needs compression and the dtb appended before it can be repacked (thanks @tobiaswaldvogel)
- add busybox to the zip to provide a uniform expected environment
- set up busybox symlinks in /tmp and execute anykernel.sh from a shell created with these at the front of the path, overriding the recovery applets
- fix insert_line to perform more as expected by adding a newline automatically
- add updated arm mkbootimg+unpackbootimg binaries from my AIK Build Farm, see my repos for changes
- rewrite backend to use proper exit codes from anykernel.sh now that it is shell
- fix ui_print and specific error messages by passing the outfd to anykernel.sh from the backend
- add error messages for unpacking and repacking ramdisk, and make resulting image size check into its own error message
- fix for cpio overwriting AK2 ramdisk files on some recoveries by using a tmp directory
- add further ramdisk unpack verification by checking that there are actually files in the ramdisk directory prior to moving the tmp files back
- add insert_file function to make multi-line additions easier
- add patch_fstab function to greatly simplify mount option/flag changes (thanks @Khaon for the idea)