Introduction
Here's a tutorial that covers the installation of a previously built or downloaded Free Android Image,we will assume that:
* you don't have the engineering bootloader
* you have root access
* you have a blank vfat sdcard in your android phone with enough free space
Howto
* /!\ first backup your current version...in case something is wrong we need it
* then if you want the proprietary wifi firmware,execute the following command on your computer(/!\ the firmware is proprietary,we don't know what it does and we are not even allowed to redistribute it):
{{{
# ./adb pull /system/etc/wifi/Fw1251r1c.bin ./
}}}
* download an image that can flash our Free Android, like cm-recovery-1.4.img for instance (/!\ we didn't check cm-recovery-1.4.img's freedom)
{{{
# wget http://n0rp.chemlab.org/android/cm-recovery-1.4.img
}}}
Then we will boot on the image that will flash our android:
* shutdown your phone if it isn't shut down
* press the camera button first,keep pressing it while pressing the power button...that will give you a screen with skateboarders
* use fastboot to boot:
{{{
# ./fastboot boot cm-recovery-1.4.img
}}}
* press on the back button(<-) that is under the menu button at the right of the trackball
it will boot
* backup your image selecting "nandroid v2.2 backup"
* then use adb to push your images but first we need to look where to push them:
{{{
./adb shell
# mount -t vfat /dev/block/mmcblk0p1 /sdcard
# ls -d /sdcard/nandroid/*/*
/sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455
# exit
}}}
* write down the last line before the exit command,because it will differ from device to device
* push the images:
{{{
# ./adb shell
# mount -t vfat /dev/block/mmcblk0p1 /sdcard
# exit
# ./adb push boot.img /sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455
# ./adb push system.img /sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455
}}}
* then we need to compute the md5sums:
{{{
./adb shell
# md5sum /sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455/boot.img
a491db2000489c7fb7c5f7fe4b103b8c boot.img
# md5sum /sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455/system.img
610b10a715ea1a5db4e6badd6a8a2989 system.img
}}}
* write down the result of both md5sum commands
* download the nandroid.md5 file
{{{
# ./adb pull /sdcard/nandroid/HT935NG03334/CBDMRS12-20090917-1455/nandroid.md5 ./
}}}
* change the lines where there is boot.img and system.img to the ones you've written down previously
* push them:
{{{
# ./adb push nandroid.md5 /sdcard/nandroid/HT935NG03936/CBDMRS12-20090917-1455/nandroid.md5
}}}
* unmount the sdcard
{{{
# ./adb shell
umount /sdcard
}}}
* then select "restore the latest backup" on the screen,with the trackball
* press home like it is said
* then select "wipe data/factory reset" on the screen,with the trackball /!\ it will erase all the data of your phone...
* then select reboot system now
* wait for the system to boot(the boot will take longer than usual)
* then do the following:
{{{
# ./adb shell
# cd /data/data/com.android.providers.settings/databases
# sqlite3 settings.db
SQLite version 3.5.9
Enter ".help" for instructions
sqlite> INSERT INTO secure (name, value) VALUES ('device_provisioned', 1);
sqlite> .exit
}}}
* then if you want the proprietary wifi firmware,execute do the following: (/!\ the firmware is proprietary,we don't know what it does and we are not even allowed to redistribute it):
{{{
# ./adb remount
# ./adb push Fw1251r1c.bin /system/etc/wifi/
}}}
* then reboot:
{{{
# ./adb shell
reboot
}}}