h1. Galaxy S 2 (I9100) Installation *Warning: installing an operating system, such as Replicant, may void your device's warranty and will erase the data stored on the device.* h2. Prerequisites In order to install Replicant on your device, it is assumed that you have a computer running a GNU/Linux operating system and everything necessary to connect your device to the computer through USB available. Moreover, it is assumed that anyone performing the installation knows how to use command lines in a terminal and has basic knowledge about it. h2. Downloading the files The first step in the installation process is to download and set up the files that will be used to install Replicant to the device. The files must be downloaded on your computer first. 1. Find out what the latest image is: check out the @Last image@ part of the general table on [[GalaxyS2I9100]] 2. Download *all* the files listed for the device (including the checksum and the signatures) on [[ReplicantImages]] for the latest image 2. Make sure you have added the [[ReplicantReleaseKey|Replicant release key]] to your GPG keyring 3. Check the signature of the files:
gpg --armor --verify path/to/replicant-6.0-i9100.zip.asc path/to/replicant-6.0-i9100.zip
gpg --armor --verify path/to/recovery-i9100.img.asc path/to/recovery-i9100.img
4. Make sure the check succeeds, *do not install anything if it doesn't*! 5. Check the checksum of the files:
sha256sum -c i9100.sha256
6. Make sure the check succeeds, *do not install anything if it doesn't*! h2. Installing heimdall The heimdall tool is required to flash the recovery image to the device. Instructions to install heimdall: [[ToolsInstallation#Heimdall|ToolsInstallation]] h2. Copying the files to the device There are two means of pushing the system zip to the device: * Using the storage of the device * Using the ADB tool to perform sideload h3. Using the storage of the device You can either complete this step by using the device's internal storage or by using an external microSD card. h4. Using the internal storage 1. Make sure the device is started up and has an Android system running 2. Connect the USB cable to both the computer and the device 3. Enable USB mass storage on the device 4. Mount the mass storage on the computer 5. Copy the @replicant-6.0-i9100.zip@ file at the origin of the mass storage 6. Safely unmount the mass storage on the computer 7. Disable USB mass storage on the device h4. Using a microSD card 1. Connect the microSD card to the computer (e.g. using an USB card reader) 2. Mount the microSD card on the computer 3. Copy the @replicant-6.0-i9100.zip@ file at the origin of the microSD card 4. Safely unmount the microSD card on the computer 5. Disconnect the microSD card from the computer 6. Insert the microSD card in the device (make sure it is turned off before inserting the card) h3. Installing ADB Instructions to install ADB: [[ToolsInstallation#ADB|ToolsInstallation]] h2. Preparing the device The next step in the installation process is to prepare the device for heimdall mode. 1. Make sure the device is completely turned off and the USB cable is disconnected from the device 2. Start the device by holding the following key combination: *Volume down, Select, Power* 3. Hold the key combination until the device shows a *Warning* message 4. Confirm that you want to download a custom OS (using volume up) 5. Make sure the device is in *Downloading* mode 4. Connect the USB cable to both the computer and the device h2. Installing the images Now that both the computer and the device are set up, it is time to actually install the images to the device. 1. Install the recovery image to the device:
heimdall flash --KERNEL path/to/recovery-i9100.img
2. Make sure the device reboots to recovery h3. Data wipe A data wipe is necessary if you switch from the factory image or a different Android distribution to Replicant. You also need to do a data wipe when upgrading to a new major release (e.g. from Replicant 4.2 to Replicant 6.0). Only when updating to a new minor release (e.g. from Replicant 6.0 0001 to Replicant 6.0 0002), a data wipe is usually not required. 3. Select *Factory reset* 4. Select *Wipe data (keep media)* 5. Confirm the data wipe by selecting *Yes* 6. Press the back key (if necessary) to get back to the general menu 7. Select *Apply update* h3. Using the storage of the device h4. Using the internal storage 8. Select *Choose from sdcard0* 9. Select the system zip: *replicant-6.0-i9100.zip* Note: if your device was running Android 4.2 and later, it may be located in the *0* directory 10. Confirm the installation h4. Using a microSD card 8. Select *Choose from sdcard1* 9. Select the system zip: *replicant-6.0-i9100.zip* Note: if your device was running Android 4.2 and later, it may be located in the *0* directory 10. Confirm the installation h3. Using ADB sideload 8. Select *Apply from ADB* 9. Back to the host computer, load the system zip with sideload:
adb sideload path/to/replicant-6.0-i9100.zip
10. Make sure the file is being transfered h3. Completing the installation 11. Press the back key (if necessary) to get back to the general menu If you did the data wipe after step 2, you will need to do a factory reset as well: 12. Select *Factory reset* 13. Select *Full factory reset* 14. Confirm the factory reset by selecting *Yes* 15. Press the back key (if necessary) to get back to the general menu 16. Select *Reboot system now* to reboot the device *Your device should now be running Replicant!*