[Miscellaneous Android Development] sandnap:
ROM

Flashing a Custom ROM

WARNING: If you downloaded the ROM that was originally linked to in this guide (magnus-jb-4.1.2-cwm-unlocked_bootloader-rooted-all_partitions.zip) please do not flash it!! While this has worked on most phones the original IMEI on a couple of phones was wiped out.

WARNING 2 (Untested fix uploaded on 11/29, see below) : A couple of users have reported that this update failed on their phones but they were able to restore from a nandroid backup. If you still want to try this ROM please backup your current ROM in CWM first! If you try this please let me know if this works or does not work on your phone and which Android version you were on prior to flashing it. Thanks!

UPDATE 11/29/2013 Newly uploaded file will most likely fix the issues mentioned in warning 2 above, however, I still strongly encourage that you do a backup in CWM before flashing. Please respond with the results indicating which version of Android you flashed this over.

Click "CLICK TO SHOW CONTENT" to proceed.

This guide covers the procedure to flash a specific, JB ROM as discussed below, however, the basic procedure can be used to flash different ROMs as they become available.

Features

Jellybean 4.1.2 stock (other than noted below)

Rooted with /system/xbin/su

SuperSU installed as a system app

Magnus CWM recovery

ICS unlocked bootloader (aboot)

This update is intended to install the unlocked bootloader for all users; provide a restore point going forward; and serve as a basis for future ROMs and enhancements.

This update does not flash the cache or data partitions so your installed apps and data will remain.

WARNING: Please review the Warning/Disclaimer in the original post before following this procedure!

NOTE FOR ICS USERS: The AT&T/Pantech OTA JB Update (from ICS) provides patches to several partitions that are not patched as part of this update. If you are able to run the OTA update I recommend it, if not and you don’t mind having a “hybrid” ROM go for it at your own risk.

Since this flashes the bootloader I strongly recommend checking the MD5 Checksum as per the guide below before executing the update. Make sure the device has enough power, and don't unplug, wiggle, or otherwise mess with the device until the update is complete.

Prerequisites

Magnus CWM installed per the guide above (see OP)

Jellbean or ICS (see notes above before flashing over ICS)

ADB installed and functional

Make sure the battery level of the device is adequate

Flash from the internal sdcard

Download the update from here.

Boot into CWM recovery by holding down the volume up button and power button

Do a CWM nandroid backup

Select "mounts and storage > mount /sdcard > +++++Go Back+++++"

Select "wipe cache partition"

Select "advanced > wipe dalvik cache > +++++Go Back+++++"

OPTIONAL: Select "wipe data/factory reset". WARNING: This will remove your personal apps and data!

Once the download from step 1 is complete, plug the phone into your computer, open a command window, navigate to the download directory, and push the update to the sdcard with:

adb push magnus-jb-4.1.2-cwm-unlocked_bootloader-rooted2.zip /sdcard/

Check the md5 checksum to ensure you don't have a corrupt download (IMPORTANT!)

adb shell
cd /sdcard
md5sum magnus-jb-4.1.2-cwm-unlocked_bootloader-rooted2.zip

Should result in:

3dca0555f81cef97e304c17515c807fa magnus-jb-4.1.2-cwm-unlocked_bootloader-rooted2.zip

If not, download the update and try again. Do not proceed if your checksum doesn't match!

Exit adb shell:

exit

On the phone, select "install zip from sdcard > choose zip from sdcard", select the update file, and confirm

Wait patiently and do not unplug the device or disrupt the process!

When the update is finished select "+++++Go Back+++++" followed by "reboot system now", if you are prompted to "Fix root" select "Yes" to prevent it from warning again

Wait patiently while it boots, configures the apps, compiles & caches, and connects to your carrier. This can take a few minutes.

Enjoy!