== 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 curent 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 ./ }}} * dowload 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 writed 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 lastest 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); #.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 }}}