[EVO 4G Android Development] whitslack:
IMPORTANT: The process described in this post breaks WiMAX, so I have removed the download links, and I recommend that no one attempt it. Please see this thread for a way to get from the original stock everything all the way up to the latest rooted OTA with the latest radio+WiMAX firmwares without even needing adb.

~~~ remainder of this post retained for historical interest only ~~~

Background: I didn't want to flash a full /system partition to upgrade my EVO 4G from Flipz's rooted stock 1.32.651.6 ROM to the latest 1.47.651.1, and I feel better using a barely modified "official" update from Sprint/HTC, so here's what I did:

Allowed the phone to download the update from Sprint/HTC. (It downloads into /cache.)

Copied the update to my computer and unzipped it.

Edited the META_INF/com/google/android/updater-script. (See below for a diff.)

Removed the recovery.img from the firmware.zip. (I don't want to go back to a stock recovery.)

Deleted the patch files for Sprint_Qik.apk and Sprint_TV.apk, since I've deleted those apps from my phone.

Edited the /system/build.prop file on the phone to remove the line that Flipz added at the bottom, thus restoring it to its stock condition (sha1=ee40d5143cf1089af2575045a9db9061f0d0dca9).

Zipped the update back up and signed it.

Download the update here:

OTA_Supersonic_1.47.651.1-1.32.651.6_rootsafe.zip

(md5=913c7594ca8ca94594a2c8e1ec9b5564)

Download the original build.prop file here:

build.prop-1.32.651.6

(md5=a29ab0ec25ad976bd12bc8bad5a97063)

Alternate: If you kept Sprint TV and Sprint Qik, use this update zip instead:

OTA_Supersonic_1.47.651.1-1.32.651.6_rootsafe-Sprint.zip

(md5=410f57feeaebcf89c5497cd6e599a807)

Before you begin: You MUST be using a rooted stock 1.32.651.6 ROM, such as this one released by Flipz. Because this update is an incremental update, it cannot apply to any other ROM, even custom ROMs having the same base system version.

How to install this update:

Caution: There has been a report that updating using this method breaks the WiMAX. If that's true, it can only be because HTC must have added some new function to their recovery program that the custom recoveries don't have. It is recommended that you run a Nandroid backup in case you need to revert.

Download the two files linked above.

adb push OTA_Supersonic_1.47.651.1-1.32.651.6_rootsafe.zip /sdcard/ (Or copy the update zip to your SD card by some other means.)

adb remount

adb push build.prop-1.32.651.6 /system/build.prop (See below for what to do if this step fails.)

adb reboot recovery

Run a Nandroid backup just in case.

Flash from the update zip and reboot.

The radio+WiMAX updates will install. This takes a while. Don't touch it. When it's finished, it will reboot on its own.

You'll find yourself in recovery one last time. Reboot.

It'll sit on the "4G" splash for a long time. Don't panic.

Once the home screen appears, go to Settings, About Phone, and verify that your "Software number" is 1.47.651.1 and your "Baseband version" is 2.05.00.06.10.

You may need to remove and re-add some home screen widgets.

If you're still using su and Superuser.apk from Flipz's stock rooted ROM, you will need to install the su-2.1-e-unsecure-signed.zip from this thread. It's a much, much newer version than the one Flipz included. It's an update zip, so install it via recovery.

Enjoy!

What to do if pushing build.prop fails:

This probably means you haven't unlocked NAND by flashing the engineering SPL. That's okay. Your custom recovery program probably supports adb while in recovery mode. If so, you can simply reboot the phone into recovery, perform step #4 from above, skip step #5, and continue from step #6.

For the curious, here's the diff of the updater-script from the stock update to mine: updater-script-1.47.651.1.diff

Troubleshooting

If you're getting an error that says assert failed: apply_patch_check, it means something about your system is different from a totally stock 1.32.651.6 system. Most likely you're running a custom ROM, not a rooted stock ROM, you've already applied the update, or you've installed some kind of hack like QuickBoot. Because this update is an incremental update, it can only be applied to a rooted (but otherwise unaltered) stock 1.32.651.6 ROM. Try flashing Flipz's stock rooted 1.32.651.6 ROM and then proceeding with the steps above under "How to install this update."

If Wireless Tether gets stuck when starting tethering, it probably means you still have the old and crusty su and Superuser.apk. Install the su-2.1-e-unsecure-signed.zip update mentioned above to get the latest set of superuser tools. Then Wi-Fi Tether should work fine.