A couple days ago, I started getting notifications that a system update was ready for install. This was the IMM76K (Android 4.0.4) OTA update that people had been impatiently waiting on for a while. After making a nandroid backup (via CWM), I decided to give it a try.
The system rebooted, and went to the screen with the android's belly open and the blue spinny thing. Then he was on his back, with the dreaded red triangle. I wasn't surprised that the OTA update wasn't going to work with my modified phone.
This excellent post on xda-developers gave links to the official
for the different versions of the G-Nex. So I downloaded the
mysid IMM76K from ICL53F update.zip,
adb pushd it to
/sdcard. Rebooting into CWM recovery, I tried to
install the update, but it failed with:
assert failed: apply_patch_check("/system/app/VZWBackupAssistant.apk".....
I knew why it was failing. I had removed some of the VZW garbage apps that cam
pre-installed. Luckily, I didn't actually delete them, I had just renamed them
.apk.REMOVED. After putting them back1 the update installed successfully.
Another thing to note - I didn't realize it, but the xda post pointed out this
important detail: Verizon OTA updates include a script that runs every boot,
whose purpose is to restore the recovery image if it is not the expected stock
image. The script is at
/system/etc/install-recovery.sh and the recovery image
(for flashing) is
/system/recovery-from-boot.p. Thus, if you don't wan't to
lose CWM (or other custom recovery), you need to rename these files.
I didn't realize it, but ADB is supported in CWM. When I looked in device
manager while my phone was connected and in CWM, I saw one device just named
"Full". I manually specified the same Samsung drivers (already installed) from
before, and bingo, my phone showed up in