h1. Installation {{toc}} h2. Detailed instructions to install Replicant h3. Make sure your phone is supported Replicant only supports a few phones. Make sure the phone you want to install Replicant on is on the [[ReplicantStatus]] list. If it's not, you won't be able to install Replicant on your device without at least a bit of software hacking. h3. Make sure your phone allows non-official images Some phones come with software that allows the user to _flash_ the memory (replace the content of the memory partitions, like the system or the kernel one), but it's not always the case. Google-branded phones (Nexus One and Nexus S) come with this allowed but for some other devices, you'll certainly have to do some more operations to make this possible (it's required to flash Replicant). Please, refer to the "CyanogenMod wiki":http://wiki.cyanogenmod.com/wiki/Main_Page to find and follow the instructions to *root the phone*. Note that instructions for Replicant 2.2 correspond to [[CyanogenMod]] 6 and Replicant 2.3 correspond to [[CyanogenMod]] 7. For instance on the "HTC Dream":http://wiki.cyanogenmod.com/wiki/HTC_Dream page, you'll need to follow the instructions to *root the phone* and to install *DangerSPL*. *Note: all the radio images and bootloader images that are provided on these pages are not free software.* h3. Download the Replicant images and tools for your phone h4. Find the codename of your phone * Each device we support has a codename. You can find the codename on the dedicated device page, which are all listed in [[ReplicantStatus]]. For instance, HTC Dream codename is: @dream_sapphire@. h4. Find the latest usable Replicant image * You will also find the latest Replicant image for the device on the dedicated device page, which are all listed in [[ReplicantStatus]]. For instance, HTC Dream/HTC Magic latest usable image is: @Replicant 2.2 preview 0009@. h4. Find the base location of the tools/images for your device * Replicant images are hosted at: http://ftp2.osuosl.org/pub/replicant/images/ * From this page, select the Replicant version (replicant-2.2, replicant-2.3, etc) of the latest usable Replicant image for your device. * Then, select the Replicant image type (preview or release) of the latest usable Replicant image for your device. * Select the Replicant image number (0006 for example) of the latest usable Replicant image for your device. For instance, if the phone is HTC Dream and the latest image Replicant 2.2 preview 0009, the base location will be: http://ftp2.osuosl.org/pub/replicant/images/replicant-2.2/preview/0009/. h4. Download the tools to flash your device * From the base location we just found out, select the *tools* directory and download the *fastboot* utility to write Replicant on your device. h4. Download the Replicant images for your device * From the base location we just found out, select the *pieces* directory and then the directory corresponding to your phone codename and download the *boot.img* (kernel), *system.img* (OS) and *userdata.img* (data) files. *Downloading the files can take some time.* h3. Setup the computer to flash Replicant * Open a terminal and go to the location where you downloaded all the files (usually, ~/Downloads ). To do this, run the following command:
cd ~/Downloads 
If you have downloaded the files in any other place, change ~/Downloads by the location where you downloaded the files. * Then, you need to get root on this terminal. Run:
sudo su 
This will ask you to type your password. Note that in most cases, the letters you type won't be shown. * Now that you're root, you are able to use the *fastboot* utility. We first need to make it executable. To do this, run the following:
chmod a+x fastboot 
*Keep this terminal open during the next step.* h3. Setup the device to flash Replicant * Completely turn off your device. You can also remove and reinsert the battery then. * Now, you'll need to turn your device in fastboot mode. The usual way to do this is to hold a few buttons when booting. A list of the buttons to hold for each (Google) device is available at: http://source.android.com/source/building-devices.html#booting-into-fastboot-mode * Connect the USB cable to your PC, hold the appropriate keys and boot the phone. You should get on fastboot menu. * If it's the first time you flash an image and your phone is Google Nexus One or Google Nexus S, you'll need to unlock the bootloader. Switch back to the terminal we opened earlier and run:
./fastboot oem unlock Warning: on Nexus One, the operation voids the warranty and is irreversible. On Nexus S and Nexus S 4G, the bootloader can be locked back.
h3. Flash Replicant images *WARNING: This step will erase every data stored on the phone, make sure you copied the data if you don't want to lose it.* * Switch back to the terminal we just opened and run the following commands:
./fastboot flash system system.img
./fastboot flash boot boot.img
./fastboot flash userdata userdata.img 
* If you want to flash Recovery image:
./fastboot flash recovery recovery.img 
* Then clean the cache and reboot:
./fastboot erase cache
./fastboot reboot
Your device should reboot with Replicant running. Now you are done, Replicant is installed on your device! h2. Summary of the instructions to install Replicant h3. Requirements * a rooted or unlocked phone * fastboot(can be built or obtained "from our ftp":http://ftp2.osuosl.org/pub/replicant/images/replicant-2.2/) * the images(can be built or obtained "from our ftp":http://ftp2.osuosl.org/pub/replicant/images/replicant-2.2/) h3. Installation Put the phone in fastboot mode (by holding the Camera button and the Power button, then following on-screen instructions), make sure it's connected to your computer, and run the following commands on your computer. You may need to use sudo. *Note, if you don't have instructions for entering fastboot mode, you may need to install [[DangerSPL]] using the [[CyanogenMod]] instructions.* *Note that it will erase everything on the phone*
./fastboot flash system system.img
./fastboot flash boot boot.img
./fastboot flash userdata userdata.img 
./fastboot erase cache
./fastboot reboot