Important Information: Potential DATA LOSS
HTC improved the security of their full disk encryption in their Nougat release. Because of their improved encryption, it no longer possible for a source built ROM to decrypt a userdata partition encrypted with HTC’s Nougat (or later) software.
Terminology
- userdata : The disk partition that contains
/data
and also contains/sdcard
- wipe data or factory reset : Erases the contents of
/data
but not/sdcard
- format userdata : Formats
userdata
, including all content in/scard
What you need to know
- If you are installing from MM (6.0) HTC stock firmware, everything should work normally.
- If you are installing from N (7.x) HTC stock firmware, you will have to format userdata.
If you want to backup your stock install, you must backup to your external SD because
any backup storage in the default location (on
/sdcard
) will be lost in the format. - If you didn’t read these instructions and try to install LineageOS on top of N userdata
after only performing a factory reset then:
- On boot it will ask you for your password to decrypt data but your password will not decrypt it.
- If you reboot to TWRP, TWRP will not be able to mount
/data
or/sdcard
and will also prompt for your password to decrypt it and, again, your password will not work. - To recover from this you will either need to format userdata or you will need to
restore your stock backup. After restoring your stock backup, reboot to TWRP and
it should now be able to mount
/data
and/sdcard
.
Installing on Sprint or Verizon devices
Sprint and Verizon do not ship with an unlockable bootloader. Even if you do unlock it, something in its firmware is still not compatible with LineageOS. People have had success flashing modified US Unlocked firmware and then RUU’ing back to their proper firmware before installing LineageOS. Please use Google and/or XDA to read more about what has worked for others.
Basic requirements
- Make sure your computer has working
adb
andfastboot
. Setup instructions can be found here. - Enable USB debugging on your device.
Unlocking the bootloader
-
Enable OEM unlock in the Developer options under device Settings, if present.
- Connect the device to your PC via USB.
- On the computer, open a command prompt (on Windows) or terminal (on Linux or macOS) window, and type:
adb reboot bootloader
You can also boot into fastboot mode via a key combination:
- With the device powered off, hold Volume Down while booting.
- Once the device is in fastboot mode, verify your PC finds it by typing:
fastboot devices
Tip: If you seeno permissions fastboot
while on Linux or macOS, try runningfastboot
as root. - Now type the following command to obtain your bootloader unlock token:
fastboot oem get_identifier_token
-
Visit the HTCDev Bootloader Unlock website and follow the instructions there to obtain your unlock key and unlock your bootloader. If your device does not appear in the drop-down list, select All Other Supported Models.
Note: If your device is not supported by the HTCDev Bootloader Unlock website, you will need to use an alternative bootloader unlock method like SunShine. - If the device doesn’t automatically reboot, reboot it. It should now be unlocked.
- Since the device resets completely, you will need to re-enable USB debugging to continue.
Installing a custom recovery using fastboot
-
Download a custom recovery - you can download TWRP. Simply download the latest recovery file, named something like
twrp-x.x.x-x-pme.img
. - Connect your device to your PC via USB.
- On the computer, open a command prompt (on Windows) or terminal (on Linux or macOS) window, and type:
adb reboot bootloader
You can also boot into fastboot mode via a key combination:
- With the device powered off, hold Volume Down while booting.
- Once the device is in fastboot mode, verify your PC finds it by typing:
fastboot devices
Tip: If you seeno permissions fastboot
while on Linux or macOS, try runningfastboot
as root. - Flash recovery onto your device:
fastboot flash recovery twrp-x.x.x-x-pme.img
Tip: The file may not be named identically to what stands in this command, so adjust accordingly. - Now reboot into recovery to verify the installation:
- With the device powered off, hold Volume Down while booting. Select “Reboot to bootloader” and then in the bootloader select “Boot to recovery mode”.
Installing LineageOS from recovery
-
Download the LineageOS install package that you’d like to install or build the package yourself.
- Optionally, download 3rd party application packages such as Google Apps (use the
arm64
architecture)
- Optionally, download 3rd party application packages such as Google Apps (use the
- If you aren’t already in recovery, reboot into recovery:
- With the device powered off, hold Volume Down while booting. Select “Reboot to bootloader” and then in the bootloader select “Boot to recovery mode”.
- (Optional, but recommended): Select the Backup button to create a backup. Make sure to create the backup in the external sdcard or copy it into your computer, since the internal storage will be formatted.
- Select Wipe, then Format Data and continue with the formatting process. This will remove encryption and also delete all files stored in the internal storage.
-
Select Wipe and then Advanced Wipe.
-
Select Cache and System partitions to be wiped and then Swipe to Wipe.
- Place the LineageOS
.zip
package, as well as any other .zip packages on the root of/sdcard
:- Using adb:
adb push filename.zip /sdcard/
- You can use any method you are comfortable with.
adb
is universal across all devices, and works both in Android and recovery mode, providing USB debugging is enabled.
- Using adb:
- Go back to return to main menu, then select Install.
- Navigate to
/sdcard
, and select the LineageOS.zip
package. -
Follow the on-screen prompts to install the package.
-
(Optional): Install any additional packages using the same method.
Note: If you want any Google Apps on your device, you must follow this step before the first boot into Android! - (Optional): Root the device by installing the LineageOS su add-on (use the
arm64
package) or using any other method you prefer. - Once installation has finished, return to the main menu, select Reboot, and then System.
Get assistance
If you have any questions or get stuck on any of the steps, feel free to ask on our subreddit or in #LineageOS on freenode.