Tuesday, August 20, 2013

Stock system dumps for HTC One & HTC One X

Last two days were very exciting for HTC community, especially for HTC One X users (Android 4.2.2 with HTC Sense 5.0 update described here). However, there is always one problem when it comes to HTC updates - no RUUs (ROM Update Utility) officially available do download for regular users (HTC One Developer Edition and Google Edition seems to be the only exceptions). Why RUU is that important to us?

These executable (.exe) files for MS Windows are installers of complete firmware, including for example system or data partitions. Not having latest RUU means:
  1. users using custom ROMs can't download latest OTA from HTC,
  2. developers have no system dumps they can work with.
Ad. 1) If you want to download and flash latest OTA, your device must have completely stock system partition and recovery. Every OTA update is checking MD5 of each file on system partition to ensure .apk patch can be applied. If even one of 1000 files won't match, OTA update installation will fail. In this case you need to flash the latest official update you can find (even one year old) and later download official OTA updates.

Ad. 2) There are few workarounds, however none of them is as good as having a RUU:
  • adb pull /system in custom recovery mode*
  • cp /system /data/media/dump in custom recovery mode*
  • nandroid backup
  • boot partition can be taken from inside firmware.zip inside OTA .zip package or it can be dumped using dd if=</path/to/boot/partition> of=/data/media/boot.img
* adb pull, cp or dd commands must be executed from custom recovery mode, otherwise system dump will be missing few important files or these files will have 0kb size. Also, keep in mind that adb features are heavily limited on stock un-rooted device. In case of dd command, root access (su) is needed to make such operation.

That's why I created my own stock system dumps (as a custom recovery .zip packages) for both HTC One and HTC One X. I believe this can save a lot of time for many XDA users and developers.

Download links can be found on this blog, under Downloads section - Downloads

Have any questions or comments? Feel free to share! Also, if you like this article, please use media sharing buttons (Twitter, G+, Facebook) down this post!