When used it tries to flash the kernel like normal and doesn't do anything special if able to, otherwise it will copy a script to the system partition and install the kernel when the ROM tries to boot up. All that's needed is for a few lines to be added to the updater-script and it can do the rest.
I'll update this with more information at a later time, but for now I just want to say thank you to everyone who has helped contribute ideas and tested. As always, any help with improving it is welcomed.
How To Use It
This is mainly for ROM and kernel devs to use before releasing, but it can easily be added to any that don't normally use it. For more detailed instructions see Page 3.
- Download and add the "kernel" folder to your update zip
- Edit your updater-script and use the following when you are ready to install the boot.img
ui_print("Installing Kernel, please wait..."); package_extract_file("boot.img", "/tmp/boot.img"); package_extract_dir("kernel", "/tmp/kernel"); set_perm_recursive(0, 2000, 0777, 0777, "/tmp/kernel"); run_program("/tmp/kernel/install_kernel.sh", "/tmp/boot.img", "/tmp/bootready.tmp");; ifelse(file_getprop("/tmp/bootready.tmp","kernel.ready") != "READY",( ifelse(file_getprop("/tmp/bootready.tmp","kernel.ready") == "STARTUP", ui_print("Kernel Will Be Installed On Startup."), ui_print("ERROR: Kernel Not Installed!") ) ));
- Sign the zip and it can then be installed like normal from any device with a custom recovery
- flashboot.sh - Fixed the case statement that verifies the kernel flashed properly
- flashboot.sh - Moved the call for DD to save the old kernel so that it always gets used
Kernel Folder on DevHost (MD5: 27eB86aae3562e147d86b8dfe7a04786)
Github - All files including the flashboot binary source