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.

Unlocking the bootloader

  1. Make sure your computer has working fastboot and adb.
  2. Enable USB debugging on your device.

  3. Enable OEM unlock in the Developer options settings on the device, if present.

  4. Connect the device to your PC via USB.
  5. Open a terminal on the PC and boot the device to fastboot mode by typing:

     adb reboot bootloader
    

    You can also boot into fastboot mode via a key combination:

    • Hold Volume Down while booting.
  6. Once the device is in fastboot mode, verify your PC finds it by typing:

     fastboot devices
    

    If you see no permissions fastboot or <waiting for device>, try running fastboot as root/Administrator.

  7. From the same terminal, type the following command to obtain your bootloader unlock token:

     fastboot oem get_identifier_token
    
  8. 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.

  9. If the device doesn’t automatically reboot, reboot it. It should now be unlocked.
  10. Since the device resets completely, you will need to re-enable USB debugging to continue.

Installing a custom recovery using fastboot

  1. Make sure your computer has working fastboot and adb.
  2. Enable USB debugging on your device.
  3. Download recovery - visit twrp.me to obtain the latest version of Team Win Recovery Project for your device.
  4. Connect your device to your PC via USB.
  5. Open a terminal on the PC and boot the device to fastboot mode by typing:

     adb reboot bootloader
    

    You can also boot into fastboot mode via a key combination:

    • Hold Volume Down while booting.
  6. Once the device is in fastboot mode, verify your PC finds it by typing:

     fastboot devices
    

    If you see no permissions fastboot or <waiting for device>, try running fastboot as root/Administrator.

  7. Flash recovery onto your device:

     fastboot flash recovery your_recovery_img.img
    
  8. Now reboot into recovery to verify the installation:
    • Boot into download (hold Volume Down while booting), select Reboot to bootloader and then in the bootloader select Boot to recovery mode.

Installing LineageOS from recovery

  1. Make sure your computer has working adb. Setup instructions can be found here.

  2. Download the LineageOS install package that you’d like to install or build the package yourself.

    • Optionally, download 3rd party application packages like Google Apps
  3. 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.
  4. If you aren’t already in recovery, boot into recovery:
    • Boot into download (hold Volume Down while booting), select Reboot to bootloader and then in the bootloader select Boot to recovery mode.
  5. (Optional, but recommended): Select the Backup button to create a backup.
  6. Select Wipe and then Advanced Wipe.
  7. Select Cache, System and Data partitions to be wiped and then Swipe to Wipe.
  8. Go back to return to main menu, then select Install.
  9. Navigate to /sdcard, and select the LineageOS .zip package.
  10. Follow the on-screen prompts to install the package.
  11. (Optional): Install any additional packages using the same method.
  12. (Optional): Root the device by installing the LineageOS su add-on or using any other method you prefer.
  13. 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.