h2. 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 h2. 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