[Samsung Galaxy Nexus] twistedumbrella:
The dual-boot kernel that boots the first ROM regularly and the second from cache is up and running FINALLY. I would have had it weeks ago, but it turns out the script (not open-source, no documentation) ties into a couple of the imoseyon scripts for checking the voltages and such when booting. Once the scripts were left in, it worked just fine.

The uBoot kernel is still in progress. This is not much different, but allows the second build to be ANYTHING by simply modifying the second kernel and placing it in the data partition. I have designed it to still boot from cache as the system so that the tools can still work. There will be a package to modify the second kernel once this version works.

Happy Easter or whatever, lol.

For those who have noted the bluetooth doesn't work on dual-boot kernels, here is the log error I am trying to fix:

D/BluetoothManagerService( 466): enable(): mBluetooth =android.bluetooth.IBluetooth$Stub$Proxy@4126dcd0 mBinding = false
D/BluetoothManagerService( 466): Message: 1
D/BluetoothManagerService( 466): MESSAGE_ENABLE: mBluetooth = android.bluetooth.IBluetooth$Stub$Proxy@4126dcd0
D/BluetoothAdapterService( 4957): Broadcasting updateAdapterState() to 1 receivers.
D/BluetoothBondStateMachine( 4957): make
D/BluetoothManagerService( 466): Message: 60
D/BluetoothManagerService( 466): MESSAGE_BLUETOOTH_STATE_CHANGE: prevState = 10, newState=11
D/BluetoothManagerService( 466): Bluetooth State Change Intent: 10 -> 11
D/BluetoothAdapterService(1092287296)( 4957): getState(): mAdapterProperties: com.android.bluetooth.btservice.AdapterProperties@411b1468
D/BluetoothAdapterService(1092287296)( 4957): getState(): mAdapterProperties: com.android.bluetooth.btservice.AdapterProperties@411b1468
D/BluetoothAdapterService(1092287296)( 4957): getState(): mAdapterProperties: com.android.bluetooth.btservice.AdapterProperties@411b1468
I/bluedroid( 4957): enable
D/BTIF_CORE( 4957): not disabled
E/BluetoothAdapterState( 4957): Error while turning Bluetooth On
D/BluetoothAdapterService( 4957): Broadcasting updateAdapterState() to 1 receivers.
D/BluetoothManagerService( 466): Message: 60
D/BluetoothManagerService( 466): MESSAGE_BLUETOOTH_STATE_CHANGE: prevState = 11, newState=10
D/BluetoothManagerService( 466): Broadcasting onBluetoothStateChange(false) to 8 receivers.
D/BluetoothHeadset( 994): onBluetoothStateChange: up=false
E/BluetoothHeadset( 994):
E/BluetoothHeadset( 994): java.lang.IllegalArgumentException: Service not registered: android.bluetooth.BluetoothHeadset$2@4123f390
E/BluetoothHeadset( 994): at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:921)
E/BluetoothHeadset( 994): at android.app.ContextImpl.unbindService(ContextImpl.java:1470)
E/BluetoothHeadset( 994): at android.content.ContextWrapper.unbindService(ContextWrapper.java:484)
E/BluetoothHeadset( 994): at android.bluetooth.BluetoothHeadset$1.onBluetoothStateChange(BluetoothHeadset.java:234)
E/BluetoothHeadset( 994): at android.bluetooth.IBluetoothStateChangeCallback$Stub.onTransact(IBluetoothStateChangeCallback.java:55)
E/BluetoothHeadset( 994): at android.os.Binder.execTransact(Binder.java:351)
E/BluetoothHeadset( 994): at dalvik.system.NativeStart.run(Native Method)
D/BluetoothPbap( 4975): onBluetoothStateChange: up=false
E/BluetoothPbap( 4975):
E/BluetoothPbap( 4975): java.lang.IllegalArgumentException: Service not registered: android.bluetooth.BluetoothPbap$2@411c8248
E/BluetoothPbap( 4975): at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:921)
E/BluetoothPbap( 4975): at android.app.ContextImpl.unbindService(ContextImpl.java:1470)
E/BluetoothPbap( 4975): at android.content.ContextWrapper.unbindService(ContextWrapper.java:484)
E/BluetoothPbap( 4975): at android.bluetooth.BluetoothPbap$1.onBluetoothStateChange(BluetoothPbap.java:122)
E/BluetoothPbap( 4975): at android.bluetooth.IBluetoothStateChangeCallback$Stub.onTransact(IBluetoothStateChangeCallback.java:55)
E/BluetoothPbap( 4975): at android.os.Binder.execTransact(Binder.java:351)
E/BluetoothPbap( 4975): at dalvik.system.NativeStart.run(Native Method)
E/BluetoothPan( 4975):
E/BluetoothPan( 4975): java.lang.IllegalArgumentException: Service not registered: android.bluetooth.BluetoothPan$2@411c38e8
E/BluetoothPan( 4975): at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:921)
E/BluetoothPan( 4975): at android.app.ContextImpl.unbindService(ContextImpl.java:1470)
E/BluetoothPan( 4975): at android.content.ContextWrapper.unbindService(ContextWrapper.java:484)
E/BluetoothPan( 4975): at android.bluetooth.BluetoothPan$1.onBluetoothStateChange(BluetoothPan.java:183)
E/BluetoothPan( 4975): at android.bluetooth.IBluetoothStateChangeCallback$Stub.onTransact(IBluetoothStateChangeCallback.java:55)
E/BluetoothPan( 4975): at android.os.Binder.execTransact(Binder.java:351)
E/BluetoothPan( 4975): at dalvik.system.NativeStart.run(Native Method)
E/BluetoothPan( 466):
E/BluetoothPan( 466): java.lang.IllegalArgumentException: Service not registered: android.bluetooth.BluetoothPan$2@41904c38
E/BluetoothPan( 466): at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:921)
E/BluetoothPan( 466): at android.app.ContextImpl.unbindService(ContextImpl.java:1470)
E/BluetoothPan( 466): at android.bluetooth.BluetoothPan$1.onBluetoothStateChange(BluetoothPan.java:183)
E/BluetoothPan( 466): at com.android.server.BluetoothManagerService.sendBluetoothStateCallback(BluetoothManagerService.java:471)
E/BluetoothPan( 466): at com.android.server.BluetoothManagerService.bluetoothStateChangeHandler(BluetoothManagerService.java:1049)
E/BluetoothPan( 466): at com.android.server.BluetoothManagerService.access$2700(BluetoothManagerService.java:46)
E/BluetoothPan( 466): at com.android.server.BluetoothManagerService$BluetoothHandler.handleMessage(BluetoothManagerService.java:814)
E/BluetoothPan( 466): at android.os.Handler.dispatchMessage(Handler.java:99)
E/BluetoothPan( 466): at android.os.Looper.loop(Looper.java:137)
E/BluetoothPan( 466): at android.os.HandlerThread.run(HandlerThread.java:60)
D/BluetoothInputDevice( 4975): onBluetoothStateChange: up=false
E/BluetoothInputDevice( 4975):
E/BluetoothInputDevice( 4975): java.lang.IllegalArgumentException: Service not registered: android.bluetooth.BluetoothInputDevice$2@411bf0a0
E/BluetoothInputDevice( 4975): at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:921)
E/BluetoothInputDevice( 4975): at android.app.ContextImpl.unbindService(ContextImpl.java:1470)
E/BluetoothInputDevice( 4975): at android.content.ContextWrapper.unbindService(ContextWrapper.java:484)
E/BluetoothInputDevice( 4975): at android.bluetooth.BluetoothInputDevice$1.onBluetoothStateChange(BluetoothInputDevice.java:199)
E/BluetoothInputDevice( 4975): at android.bluetooth.IBluetoothStateChangeCallback$Stub.onTransact(IBluetoothStateChangeCallback.java:55)
E/BluetoothInputDevice( 4975): at android.os.Binder.execTransact(Binder.java:351)
E/BluetoothInputDevice( 4975): at dalvik.system.NativeStart.run(Native Method)
D/BluetoothA2dp( 466): onBluetoothStateChange: up=false
E/BluetoothA2dp( 466):
E/BluetoothA2dp( 466): java.lang.IllegalArgumentException: Service not registered: android.bluetooth.BluetoothA2dp$2@4158eac0
E/BluetoothA2dp( 466): at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:921)
E/BluetoothA2dp( 466): at android.app.ContextImpl.unbindService(ContextImpl.java:1470)
E/BluetoothA2dp( 466): at android.bluetooth.BluetoothA2dp$1.onBluetoothStateChange(BluetoothA2dp.java:121)
E/BluetoothA2dp( 466): at com.android.server.BluetoothManagerService.sendBluetoothStateCallback(BluetoothManagerService.java:471)
E/BluetoothA2dp( 466): at com.android.server.BluetoothManagerService.bluetoothStateChangeHandler(BluetoothManagerService.java:1049)
E/BluetoothA2dp( 466): at com.android.server.BluetoothManagerService.access$2700(BluetoothManagerService.java:46)
E/BluetoothA2dp( 466): at com.android.server.BluetoothManagerService$BluetoothHandler.handleMessage(BluetoothManagerService.java:814)
E/BluetoothA2dp( 466): at android.os.Handler.dispatchMessage(Handler.java:99)
E/BluetoothA2dp( 466): at android.os.Looper.loop(Looper.java:137)
E/BluetoothA2dp( 466): at android.os.HandlerThread.run(HandlerThread.java:60)
D/BluetoothHeadset( 466): onBluetoothStateChange: up=false
E/BluetoothHeadset( 466):
E/BluetoothHeadset( 466): java.lang.IllegalArgumentException: Service not registered: android.bluetooth.BluetoothHeadset$2@412b9730
E/BluetoothHeadset( 466): at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:921)
E/BluetoothHeadset( 466): at android.app.ContextImpl.unbindService(ContextImpl.java:1470)
E/BluetoothHeadset( 466): at android.bluetooth.BluetoothHeadset$1.onBluetoothStateChange(BluetoothHeadset.java:234)
E/BluetoothHeadset( 466): at com.android.server.BluetoothManagerService.sendBluetoothStateCallback(BluetoothManagerService.java:471)
E/BluetoothHeadset( 466): at com.android.server.BluetoothManagerService.bluetoothStateChangeHandler(BluetoothManagerService.java:1049)
E/BluetoothHeadset( 466): at com.android.server.BluetoothManagerService.access$2700(BluetoothManagerService.java:46)
E/BluetoothHeadset( 466): at com.android.server.BluetoothManagerService$BluetoothHandler.handleMessage(BluetoothManagerService.java:814)
E/BluetoothHeadset( 466): at android.os.Handler.dispatchMessage(Handler.java:99)
E/BluetoothHeadset( 466): at android.os.Looper.loop(Looper.java:137)
E/BluetoothHeadset( 466): at android.os.HandlerThread.run(HandlerThread.java:60)
D/BluetoothHeadset( 994): onBluetoothStateChange: up=false
E/BluetoothHeadset( 994):
E/BluetoothHeadset( 994): java.lang.IllegalArgumentException: Service not registered: android.bluetooth.BluetoothHeadset$2@41200f28
E/BluetoothHeadset( 994): at android.app.LoadedApk.forgetServiceDispatcher(LoadedApk.java:921)
E/BluetoothHeadset( 994): at android.app.ContextImpl.unbindService(ContextImpl.java:1470)
E/BluetoothHeadset( 994): at android.content.ContextWrapper.unbindService(ContextWrapper.java:484)
E/BluetoothHeadset( 994): at android.bluetooth.BluetoothHeadset$1.onBluetoothStateChange(BluetoothHeadset.java:234)
E/BluetoothHeadset( 994): at android.bluetooth.IBluetoothStateChangeCallback$Stub.onTransact(IBluetoothStateChangeCallback.java:55)
E/BluetoothHeadset( 994): at android.os.Binder.execTransact(Binder.java:351)
E/BluetoothHeadset( 994): at dalvik.system.NativeStart.run(Native Method)
D/BluetoothManagerService( 466): Bluetooth State Change Intent: 11 -> 10
D/BluetoothAdapterService(1092287296)( 4957): getState(): mAdapterProperties: com.android.bluetooth.btservice.AdapterProperties@411b1468
D/BluetoothAdapterService(1092287296)( 4957): getState(): mAdapterProperties: com.android.bluetooth.btservice.AdapterProperties@411b1468
D/BluetoothAdapterService(1092287296)( 4957): getState(): mAdapterProperties: com.android.bluetooth.btservice.AdapterProperties@411b1468
W/ContextImpl( 4975): Calling a method in the system process without a qualified user: android.app.ContextImpl.startService:1371 android.content.ContextWrapper.startService:450 android.content.ContextWrapper.startService:450 com.android.settings.bluetooth.DockEventReceiver.beginStartingService:134 com.android.settings.bluetooth.DockEventReceiver.onReceive:115
D/DockEventReceiver( 4975): finishStartingService: stopping service
D/BluetoothAdapterService(1092287296)( 4957): getState(): mAdapterProperties: com.android.bluetooth.btservice.AdapterProperties@411b1468
I/BluetoothBondStateMachine( 4957): StableState(): Entering Off State

Upcoming changes:

Triboot. This will be a fun one.

Actually, I just got an idea to have some fun with this...