[NO LONGER MAINTAINED][RECOVERY][aca] TWRP touch recovery

Search This thread

Captain_Throwback

Recognized Developer
UPDATE: I am no longer maintaining TWRP for devices that I do not possess. I am also no longer posting on XDA.

Code:
*** Disclaimer ***

All flashing is done at your own risk!
While nothing from this thread should break your device,
don't come back here blaming anyone if it does!

Introduction
Team Win Recovery Project 3.x, or twrp3 for short, is a custom recovery built with ease of use and customization in mind. Its a fully touch driven user interface no more volume rocker or power buttons to mash. The GUI is also fully XML driven and completely theme-able. You can change just about every aspect of the look and feel.

Images


Installation instructions
NOTE: Read the FAQ from Post #2 to ensure that you're installing the correct version of TWRP!!

Fastboot Install Method:
You will need the platform-tools from the Android SDK on your computer. Find the Android command line tools section on the page linked and install the SDK tools package. From the SDK Manager, download only the platform-tools to get adb and fastboot binaries.

Windows users will need proper drivers installed on their computer. You can try the Naked ADB drivers or the Universal ADB drivers if you don't already have a working driver installed

On your device, go into Settings -> About and find the Build Number and tap on it 7 times to enable developer settings. Press back and go into Developer Options and enable USB debugging. From your computer, open a command prompt and type:
Code:
adb reboot download
You should now be in fastboot mode.

Download the correct image file and copy the file into the same folder as your adb and fastboot binaries. Rename the image to twrp.img and type:
Code:
fastboot flash recovery twrp.img
Code:
fastboot reboot

Alternate Installation Method (requires prior TWRP installation):
TWRP Image Install method:
Most devices can be updated quickly and easily within TWRP if you already have version 2.8.4.0 or higher installed.
  1. Download the latest version of TWRP appropriate for your device/firmware
  2. Reboot to TWRP
  3. Hit Install and tap the "Install Image" button in the lower right
  4. Browse to the location of the TWRP image on your device and select it
  5. Select recovery from the partition list and swipe to flash

Device Changelog
Current version: 3.2.1-0:
Code:
[LIST]Initial official release[/LIST]
Older Device-specific versions:
Code:
[LIST]N/A[/LIST]

TWRP Official Changelog
Current version: 3.2.1:
Code:
[LIST]minui fixes (cryptomilk)
[*]Better android-8.0 compatibility in ROM trees (Dees_Troy)
[*]Fix missing library in android-8.0 (nkk71)
[*]Fix inconsistent SDCard naming (DevUt)
[*]Default to TWRP restore instead of adb backup restore to fix restore on fresh TWRP boot (jlask)[/LIST]

Older versions:
Code:
[SIZE="4"][COLOR="Green"]3.2.0:[/COLOR][/SIZE]
[LIST]Allow restoring adb backups in the TWRP GUI (bigbiff)
[*]Fix gzip backup error in adb backups (bigbiff)
[*]Fix a bug in TWRP's backup routines that occasionally corrupted backup files (nkk71)
[*]Better support for installing Android 8.0 based zips due to legacy props (nkk71)
[*]Support vold decrypt with keymaster 3.0 in 8.0 firmwares (nkk71)
[*]Decrypt of synthetic passwords for Pixel 2 (Dees_Troy)
[*]Support newer ext4 FBE policies for backup and restore in libtar (Dees_Troy)
[*]v2 fstab support (Dees_Troy)
[*]Bring TWRP forward to android 8.0 AOSP base (Dees_Troy)
[*]Various other minor bugfixes and tweaks[/LIST]

[SIZE="4"][COLOR="Green"]3.1.1:[/COLOR][/SIZE]
[LIST]Backups will now include adopted storage keys (Dees_Troy)
[*]Fixed an adb restore issue (bigbiff)
[*]Fixed rebooting when no OS is present (Dees_Troy)
[*]Fixed line wrapping in the GUI terminal (_that)
[*]Updated TWRP source code to AOSP 7.1.2 (Dees_Troy)[/LIST]

[SIZE="4"][COLOR="Green"]3.1.0:[/COLOR][/SIZE]
[LIST]vold decrypt on a few select HTC devices, TWRP will now attempt to use the system partition's vold and vdc binaries and libraries to decrypt the data partition (nkk71 and CaptainThrowback)
[*]adb backup to stream a backup directly to or from your PC, see documentation [URL="https://github.com/omnirom/android_bootable_recovery/commit/ce8f83c48d200106ff61ad530c863b15c16949d9"]here[/URL] (bigbiff)
[*]tweak MTP startup routines (mdmower)
[*]support new Android 7.x xattrs for backup and restore to fix loss of data after a restore (Dees_Troy)
[*]support POSIX file capabilities backup and restore to fix VoLTE on HTC devices and possibly other issues (Dees_Troy)
[*]better indicate to users that internal storage is not backed up (Dees_Troy)
[*]improve automatic determination of TW_THEME (mdmower)
[*]minimal getcap and setcap support (_that)
[*]try mounting both ext4 and f2fs during decrypt (jcadduono and Dees_Troy)
[*]shut off backlight with power key (mdmower)
[*]timeout during FDE decrypt (Dees_Troy and nkk71)
[*]support for FBE decrypt and backing up and restoring FBE policies (Dees_Troy)
[*]boot slot support (Dees_Troy)
[*]TWRP app install prompt during reboot (Dees_Troy)
[*]support for AB OTA zips (Dees_Troy)
[*]support new Android 7.x log command (Dees_Troy)
[*]update recovery sources to AOSP 7.1 (Dees_Troy)
[*]numerous bugfixes and improvements by too many people to mention[/LIST]

[SIZE="4"][COLOR="Green"]3.0.3:[/COLOR][/SIZE]
[LIST]Partial release to help support the release of the [URL="https://www.xda-developers.com/team-win-releases-their-first-official-twrp-app-in-the-play-store/"]Official TWRP app[/URL][/LIST]

[SIZE="4"][COLOR="Green"]3.0.2:[/COLOR][/SIZE]
[LIST]Fix a bug with the input box that affected masked inputs (passwords). This fixes decrypt of full device encryption on devices that support decrypt. This bug also impacts encrypted backups. Users are highly encouraged to stop using 3.0.1 if you use encrypted backups or if you need decrypt of data in TWRP.
[*]Add Greek translation to some builds.[/LIST]

[SIZE="4"][COLOR="Green"]3.0.1:[/COLOR][/SIZE]
[LIST]support new CM 13.0 pattern encryption (sultanqasim)
[*]fix slow flashing issue due to modprobe (present on only some devices) (#twrp)
[*]libtar updated to latest upstream and fixes (jcadduono)
[*]fixes for loading custom themes (_that)
[*]TWRP will now detect and install TWRP themes automatically through the normal zip install process (Dees_Troy)
[*]translation updates - added Italian, Czech and Polish and significant updates to Dutch
[*]progress bar improvements - progress bar updates during image flashing and better tracks progress during file system backups (tar) (Dees_Troy)
[*]fix input box text display (Dees_Troy)
[*]reboot option after zip install complete (bigbiff)
[*]other mostly invisible bug fixes and improvements[/LIST]

[SIZE="4"][COLOR="Green"]3.0.0:[/COLOR][/SIZE]
[LIST]Completely new theme - Much more modern and much nicer looking (by z31s1g)
[*]True Terminal Emulator - Includes arrow keys, tab and tab completion, etc. (by _that)
[*]Language translation - It won’t be perfect and especially some languages that require large font files like Chinese & Japanese won’t be availble on most devices. Also some languages may only be partially translated at this time. Feel free to submit more translations to OmniROM’s Gerrit. (mostly by Dees_Troy)
[*]Flashing of sparse images - On select devices you will be able to flash some parts of factory images via the TWRP GUI (by HashBang173)
[*]Adopted storage support for select devices - TWRP can now decrypt adopted storage partitions from Marshmallow
[*]Reworked graphics to bring us more up to date with AOSP - includes support for adf and drm graphics (by Dees_Troy)
[*]SuperSU prompt will no longer display if a Marshmallow ROM is installed
[*]Update exfat, exfat fuse, dosfstools (by mdmower)
[*]Update AOSP base to 6.0
[*]A huge laundry list of other minor fixes and tweaks[/LIST]
[U]Additional Notes[/U]
[LIST]WARNING: This is our first release in a long time. We have a lot of new and somewhat aggressive changes in this new release. The changes to the graphics back-end may cause some devices to not boot up properly or have other display-related issues. If you are not in a position to reflash an older build of TWRP, then wait until you are or at least wait until others have tried the new version for your specific device. You don’t want to end up with a non-working recovery and have to wait several hours or days to get to a computer to be able to fix it.
[*]Notes for themers: In addition to the updated theme, we have introduced a theme version variable to the TWRP theme system. If the theme version does not match the version that TWRP expects, TWRP will reject the custom theme and load its stock theme. This change will ensure that people who update TWRP without updating their theme will still have a workable recovery. We have removed libjpeg support. The stock theme was only using a jpeg image for the splash / curtain. This change means that any custom themes will no longer be able to use jpeg images. It also means that tools used to repack recovery images with a different curtain / splash will need to be updated to use the new method.
[*]Version number notes: For a while we’ve been using a 4 digit version number and reserved the 4th digit for device-specific updates. For instance, we find and fix a device-specific issue like decryption of data on Nexus 5, we would release that as a 2.8.7.1. After a while, some people would start asking where 2.8.7.1 was for other devices. So, going forward we have decided to change the numbering scheme to 3.0.0-2, etc. Our hope is that this version numbering scheme will more clearly identify that the 4th digit does not indicate a version change for the code base.
[*]We need your help! The bulk of TWRP work is done by 3 people on a volunteer basis. We have pushed most of our device files to our github and we have a gerrit instance. If you have the ability, please help us maintain our official devices and/or add your device to our official device list. Thanks in advance![/LIST]

[SIZE="4"][COLOR="Green"]2.8.7.0:[/COLOR][/SIZE]
[LIST]Initial ground work for software drawn keyboard (_that)
[*]Fix handling of wiping internal storage on datamedia devices (xuefer)
[*]Allow DataManager to set and read values from the system properties (xuefer)
[*]Fix crash when taking screenshots on arm64 devices (xuefer)
[*]Fix error message after an ORS script completes (Dees_Troy)
[*]Fix crashes / error when creating encrypted backups (_that, Dees_Troy)
[*]Add system read only option – more details below (Dees_Troy)
[*]Add resize2fs and GUI option to run resize2fs (Dees_Troy)
[*]Fix crash loop caused by empty lines in AOSP recovery command file (_that)
[*]Prevent duplicate page overlays such as multiple lock screens (mdmower)[/LIST]
[U]Additional Notes[/U]
[LIST]Note: As always, be sure your custom theme is up to date (or remove your custom theme) before updating TWRP.
[*]System read only option: Devices that ship with 5.0 and higher as their initial OS are using block level OTA updates. With this style of OTA update, the update script checks to see if the system partition has ever been mounted read/write. Further, the script also usually runs an SHA sum of the entire system partition to detect if any changes have been made. If any changes have been made, the OTA update will refuse to install. Since not all OEMs and devices have factory images available, we have created a new feature in TWRP that detects if the system partition has ever been mounted read/write. If not, you will be prompted asking if you want TWRP to mount system as read/write. If you choose not to allow TWRP to mount as read/write, TWRP won’t prompt to install SuperSU and TWRP won’t try to patch the stock ROM to prevent TWRP from being replaced by stock recovery. The goal of this option is to hopefully allow the user to make a raw system image backup that they can use to get back to a state where they can take OTA updates again.
[*]resize2fs feature: On some devices like the Nexus 6, the factory images include a userdata image that is the proper size only for the 32GB units. If you flash the factory image to a 64GB Nexus 6, the data partition will appear as if it only has the free space of a 32GB device. Using the resize2fs option, TWRP can resize your data partition to take up the full space available. The resize2fs may also be useful to resize system partitions on devices where custom ROM system images don’t take up the full partition space. Lastly, resize2fs may be useful in some cases to reserve the proper space at the end of a data partition for a full disk encryption key, should your partition be formatted incorrectly for some reason.
[*]This new version also marks our first set of full builds using our new jenkins build server. You can track the progress of builds at [url]https://jenkins.twrp.me[/url] and we have taken additional steps to make it easier for device maintainers to step up and submit patches to our gerrit server at [url]https://gerrit.twrp.me[/url] to help us keep devices up to date and working.[/LIST]

Downloads
NOTE: Read the FAQ from Post #2 to ensure that you're installing the correct version of TWRP!!

Download
Latest Official versions

Sources
Device tree


FAQ - Post #2


Known Issues
  • Reboot recovery option doesn't work - device will only reboot to system (needs custom-built kernel to fix)

Bug Reporting
If you have an issue, the first step is to post a recovery log so we can determine the cause of the issue. This is done in recovery using Advanced -> Copy Log, or adb pull /tmp/recovery.log. Once a log is uploaded we can determine how best to proceed. NOTE: Posts that are reporting bugs or issues without an accompanying recovery log will be ignored! Additionally, providing details about your device setup, including variant, firmware version, and exact steps to reproduce your issue will also be helpful in diagnosing the problem.
74479355.jpg

If your issue is determined to be a bug, please consider posting it to our github issues log. It's pretty much impossible for us to keep up with the more than 40 threads that we have for the devices that we "directly" support. If you have a significant problem that cannot be answered in this thread, your best bet is to contact us via our website, or find us in our IRC channel below. If you see someone that's struggling, feel free to point it out to us. We need your help to help us keep track of all of our devices! Thanks!

Additional Help/Support:
Live support is available via #twrp on Freenode with your IRC client or just click this link.

XDA:DevDB Information
Team Win Recovery Project (TWRP), Tool/Utility for the HTC Bolt

Contributors
Captain_Throwback, OMJ, nkk71, Dees_Troy, bigbiff, _that
Source Code: https://github.com/omnirom/android_bootable_recovery


Version Information
Status: Stable
Current Stable Version: 3.2.1-0
Stable Release Date: 2017-12-09

Created 2016-12-14
Last Updated 2018-03-07
 

Captain_Throwback

Recognized Developer
Frequently Asked Questions (FAQ)
1. Why is this device different than my previous HTC device?
  • With Marshmallow devices, HTC has moved to a block-based OTA system. This means that even mounting system as read-write (as TWRP typically does during startup checks) will nullify the device's ability to take an OTA. Any other changes to the system partition will also cause an OTA to fail (even if that check is removed from the OTA zip) due to "unexpected contents." Additionally, see this thread.
2. Which version of TWRP am I supposed to use?
  • The best version to use is 3.2.3-0, the latest official version from twrp.me.
3. Why is there a "System" backup option and a "System Image" backup option now?
  • The "System" option is the standard tar backup. "System Image" is a dd backup of the entire system block device (/dev/block/bootdevice/by-name/system). The "System Image" option is only relevant if your system is unmodified. This allows you to make a fully stock backup that can be restored later to take an OTA.
    • NOTE: You only need to choose ONE of these options when making a backup!!
      [*]NOTE 2: If you are using a FAT32-formatted card, a "System Image" backup may fail (depending on your variant), due to the 4GB file limit on that format. For a successful System Image backup, internal storage or NTFS/exFAT-formatted external storage must be used (either SD card or USB-OTG)
4. How do I backup stock recovery prior to flashing TWRP?
  • You can't. The "fastboot boot" command appears to be disabled in ABOOT, so TWRP must be fastboot flashed over stock recovery. You can however, extract the stock recovery.img from the OTA firmware.zip when it's received and use that to install the OTA.
  • An alternate method to obtain a stock recovery is listed below, but it requires 2 devices (either owned by you, or help from someone else in the forum):
    • Someone fastboot flash twrp and immediately make a backup of boot and upload it to XDA.
    • Once the above is available, someone else download that boot.img to their device, and fastboot flash twrp to the BOOT partition of their device.
    • Once the above is done, reboot the device, which will bring up TWRP, and then backup stock RECOVERY in TWRP, and upload to XDA.
    • Then, from within TWRP, use the Image install feature in TWRP to flash the stock boot.img.
5. How do I restore stock system so that I can accept an OTA?
  • Check the "Mount system as read-only" box in the Mount menu.
  • Restore stock "System Image" backup (This will only work if you've made a System Image backup prior to making any modifications to /system).
  • Fastboot flash stock recovery (fastboot flash recovery recovery_signed.img)
    • NOTE: It is also possible to restore stock recovery via the TWRP GUI. Rename the stock recovery file to "recovery.emmc.win" and place in the backup folder with the stock system image. Recovery will then show as a restore option. MAKE SURE YOU REALLY WANT TO DO THIS, AS TWRP WILL BE GONE WHEN YOU REBOOT OUT OF RECOVERY!!
      [*]NOTE 2: It is possible to install an OTA without using stock recovery (i.e. installing it with TWRP). TWRP will not flash the firmware.zip included in an OTA file. Please see here for a detailed description of the process.
  • Reboot to system, install OTA.
6. What if I have an RUU? Do I need to worry about all this OTA nonsense?
  • Not if you don't care about losing all your data. If you're S-ON and have an RUU available for your exact variant (model ID and CID must match) and software number (main version must be the same or newer), then you can get back to a fully stock state by relocking (fastboot oem lock) and flashing an RUU. However, if you'd prefer to take an OTA to keep your data intact, the method stated above is how to do so. Or, you can just run a custom ROM and wait for your ROM chef to update their ROM to the latest software (though you'll still have to find a way to update your firmware if you're not S-OFF)
7. After I go through all this and successfully apply an OTA, how do I make sure I have a clean starting point again?
  • After the OTA is applied and TWRP is flashed, it will once again detect an untouched system, which will mount system read-only and allow you to make a fully stock backup and start the process over again, this time with the new base.
8. After I restored my Data backup and boot back to Android, I'm entering the correct PIN/password, but it's telling me the password is wrong. What happened, and how do I fix it?
  • It appears that sometimes after restoring a backup of Data where security was enabled (such as a PIN or password lock), the device does not recognize the correct password. There are two ways to avoid this issue:
    • Disable security in Android before making a backup of data.
    • After restoring Data, while still in TWRP, use the TWRP File Manager to navigate to /data/system and delete all the locksettings.* files (such as locksettings.db, etc). When you reboot, the password will be gone.
 
Last edited:

Captain_Throwback

Recognized Developer
Alright, against my better judgement I decided to post this thread. Based on @OMJ's testing, TWRP is working properly with decryption. The only remaining bug I'm aware of is that the "Reboot Recovery" option doesn't work, because of how I hacked the kernel to enable touch. I'm working on an alternative method to get around that, but since I can't test on the device, not sure how that will go.

Make a note of what it says in the OP under "BUGS" because if you report one without a log, it will be ignored! I hope everyone with this device enjoys this "unofficial" version of TWRP.
 
  • Like
Reactions: buckhunter and OMJ

Team DevDigitel

Senior Member
Jul 10, 2012
1,541
1,935
Va
Alright, against my better judgement I decided to post this thread. Based on @OMJ's testing, TWRP is working properly with decryption. The only remaining bug I'm aware of is that the "Reboot Recovery" option doesn't work, because of how I hacked the kernel to enable touch. I'm working on an alternative method to get around that, but since I can't test on the device, not sure how that will go.

Make a note of what it says in the OP under "BUGS" because if you report one without a log, it will be ignored! I hope everyone with this device enjoys this "unofficial" version of TWRP.


you are the man for sure, i still like the idea of a unencrypted device and glad its a option but im more happy knowing that twrp is now able to support both options!

Thanks bro, know you have been working hard for people who dont necessarily effect you. thanks man!
 

Captain_Throwback

Recognized Developer
Can someone please confirm whether this TWRP boots/works/functions properly? Thanks!

https://forum.xda-developers.com/devdb/project/dl/?id=23498

EDIT: @OMJ tested that one and it didn't boot. Updated the link to a new version. I need a log from a ROM flash where the ROM zip includes a root zip to confirm it's getting extracted correctly.
 
Last edited:
  • Like
Reactions: OMJ

M.A.P

Senior Member
Alright, against my better judgement I decided to post this thread. Based on @OMJ's testing, TWRP is working properly with decryption. The only remaining bug I'm aware of is that the "Reboot Recovery" option doesn't work, because of how I hacked the kernel to enable touch. I'm working on an alternative method to get around that, but since I can't test on the device, not sure how that will go.

Make a note of what it says in the OP under "BUGS" because if you report one without a log, it will be ignored! I hope everyone with this device enjoys this "unofficial" version of TWRP.
Sir, you mentioned that you hacked the kernel to enable touch in recovery can you share how to did that and did you modify the kernel source code or hacked the kernel without the source code as even other htc devices are having this issue and I can see commit in source codes that'll enable touch in recovery but what if there is no kernel source any hack for that? Thanks in advance.
 

Captain_Throwback

Recognized Developer
Sir, you mentioned that you hacked the kernel to enable touch in recovery can you share how to did that and did you modify the kernel source code or hacked the kernel without the source code as even other htc devices are having this issue and I can see commit in source codes that'll enable touch in recovery but what if there is no kernel source any hack for that? Thanks in advance.
https://forum.xda-developers.com/de...esire-530-guide-to-root-t3410015/post70697756

Similar procedure to that, only difference is that you don't have to deal with vmlinux since the kernel binary is simply gzip compressed.

And if dtb is combined, you'll need to extract it from the original kernel and re-append it to the modified binary.
 

M.A.P

Senior Member
https://forum.xda-developers.com/de...esire-530-guide-to-root-t3410015/post70697756

Similar procedure to that, only difference is that you don't have to deal with vmlinux since the kernel binary is simply gzip compressed.

And if dtb is combined, you'll need to extract it from the original kernel and re-append it to the modified binary.
Thank you sir will check that out but why is htc doing this? I mean even some devices running 4.2.2 are having touch disabled and mine is 620g and is disabled too.
 

Captain_Throwback

Recognized Developer
Thank you sir will check that out but why is htc doing this? I mean even some devices running 4.2.2 are having touch disabled and mine is 620g and is disabled too.
Well, touch isn't needed in stock recovery, so it's really just a way to save power while booted into that mode. Only custom recoveries like TWRP require working touch, so that's why we have to hack the kernel if source isn't available.
 

M.A.P

Senior Member
Well, touch isn't needed in stock recovery, so it's really just a way to save power while booted into that mode. Only custom recoveries like TWRP require working touch, so that's why we have to hack the kernel if source isn't available.
Oh. but still it is difficult for devices with no kernel source. Will try the hack sir it's night yesterday.

---------- Post added at 09:50 AM ---------- Previous post was at 09:33 AM ----------

https://forum.xda-developers.com/de...esire-530-guide-to-root-t3410015/post70697756

Similar procedure to that, only difference is that you don't have to deal with vmlinux since the kernel binary is simply gzip compressed.

And if dtb is combined, you'll need to extract it from the original kernel and re-append it to the modified binary.
Sir, can you explain it a bit more as I'm newbie in kernel stuff. I'm having boot.img for my phone and the kernel inside it can you help me how to hack the kernel sir? Thanks in advance
 

Captain_Throwback

Recognized Developer
Oh. but still it is difficult for devices with no kernel source. Will try the hack sir it's night yesterday.

---------- Post added at 09:50 AM ---------- Previous post was at 09:33 AM ----------


Sir, can you explain it a bit more as I'm newbie in kernel stuff. I'm having boot.img for my phone and the kernel inside it can you help me how to hack the kernel sir? Thanks in advance
Your question doesn't belong in this thread. It belongs in Q&A.
 

Top Liked Posts

  • There are no posts matching your filters.
  • 5
    UPDATE: I am no longer maintaining TWRP for devices that I do not possess. I am also no longer posting on XDA.

    Code:
    *** Disclaimer ***
    
    All flashing is done at your own risk!
    While nothing from this thread should break your device,
    don't come back here blaming anyone if it does!

    Introduction
    Team Win Recovery Project 3.x, or twrp3 for short, is a custom recovery built with ease of use and customization in mind. Its a fully touch driven user interface no more volume rocker or power buttons to mash. The GUI is also fully XML driven and completely theme-able. You can change just about every aspect of the look and feel.

    Images


    Installation instructions
    NOTE: Read the FAQ from Post #2 to ensure that you're installing the correct version of TWRP!!

    Fastboot Install Method:
    You will need the platform-tools from the Android SDK on your computer. Find the Android command line tools section on the page linked and install the SDK tools package. From the SDK Manager, download only the platform-tools to get adb and fastboot binaries.

    Windows users will need proper drivers installed on their computer. You can try the Naked ADB drivers or the Universal ADB drivers if you don't already have a working driver installed

    On your device, go into Settings -> About and find the Build Number and tap on it 7 times to enable developer settings. Press back and go into Developer Options and enable USB debugging. From your computer, open a command prompt and type:
    Code:
    adb reboot download
    You should now be in fastboot mode.

    Download the correct image file and copy the file into the same folder as your adb and fastboot binaries. Rename the image to twrp.img and type:
    Code:
    fastboot flash recovery twrp.img
    Code:
    fastboot reboot

    Alternate Installation Method (requires prior TWRP installation):
    TWRP Image Install method:
    Most devices can be updated quickly and easily within TWRP if you already have version 2.8.4.0 or higher installed.
    1. Download the latest version of TWRP appropriate for your device/firmware
    2. Reboot to TWRP
    3. Hit Install and tap the "Install Image" button in the lower right
    4. Browse to the location of the TWRP image on your device and select it
    5. Select recovery from the partition list and swipe to flash

    Device Changelog
    Current version: 3.2.1-0:
    Code:
    [LIST]Initial official release[/LIST]
    Older Device-specific versions:
    Code:
    [LIST]N/A[/LIST]

    TWRP Official Changelog
    Current version: 3.2.1:
    Code:
    [LIST]minui fixes (cryptomilk)
    [*]Better android-8.0 compatibility in ROM trees (Dees_Troy)
    [*]Fix missing library in android-8.0 (nkk71)
    [*]Fix inconsistent SDCard naming (DevUt)
    [*]Default to TWRP restore instead of adb backup restore to fix restore on fresh TWRP boot (jlask)[/LIST]

    Older versions:
    Code:
    [SIZE="4"][COLOR="Green"]3.2.0:[/COLOR][/SIZE]
    [LIST]Allow restoring adb backups in the TWRP GUI (bigbiff)
    [*]Fix gzip backup error in adb backups (bigbiff)
    [*]Fix a bug in TWRP's backup routines that occasionally corrupted backup files (nkk71)
    [*]Better support for installing Android 8.0 based zips due to legacy props (nkk71)
    [*]Support vold decrypt with keymaster 3.0 in 8.0 firmwares (nkk71)
    [*]Decrypt of synthetic passwords for Pixel 2 (Dees_Troy)
    [*]Support newer ext4 FBE policies for backup and restore in libtar (Dees_Troy)
    [*]v2 fstab support (Dees_Troy)
    [*]Bring TWRP forward to android 8.0 AOSP base (Dees_Troy)
    [*]Various other minor bugfixes and tweaks[/LIST]
    
    [SIZE="4"][COLOR="Green"]3.1.1:[/COLOR][/SIZE]
    [LIST]Backups will now include adopted storage keys (Dees_Troy)
    [*]Fixed an adb restore issue (bigbiff)
    [*]Fixed rebooting when no OS is present (Dees_Troy)
    [*]Fixed line wrapping in the GUI terminal (_that)
    [*]Updated TWRP source code to AOSP 7.1.2 (Dees_Troy)[/LIST]
    
    [SIZE="4"][COLOR="Green"]3.1.0:[/COLOR][/SIZE]
    [LIST]vold decrypt on a few select HTC devices, TWRP will now attempt to use the system partition's vold and vdc binaries and libraries to decrypt the data partition (nkk71 and CaptainThrowback)
    [*]adb backup to stream a backup directly to or from your PC, see documentation [URL="https://github.com/omnirom/android_bootable_recovery/commit/ce8f83c48d200106ff61ad530c863b15c16949d9"]here[/URL] (bigbiff)
    [*]tweak MTP startup routines (mdmower)
    [*]support new Android 7.x xattrs for backup and restore to fix loss of data after a restore (Dees_Troy)
    [*]support POSIX file capabilities backup and restore to fix VoLTE on HTC devices and possibly other issues (Dees_Troy)
    [*]better indicate to users that internal storage is not backed up (Dees_Troy)
    [*]improve automatic determination of TW_THEME (mdmower)
    [*]minimal getcap and setcap support (_that)
    [*]try mounting both ext4 and f2fs during decrypt (jcadduono and Dees_Troy)
    [*]shut off backlight with power key (mdmower)
    [*]timeout during FDE decrypt (Dees_Troy and nkk71)
    [*]support for FBE decrypt and backing up and restoring FBE policies (Dees_Troy)
    [*]boot slot support (Dees_Troy)
    [*]TWRP app install prompt during reboot (Dees_Troy)
    [*]support for AB OTA zips (Dees_Troy)
    [*]support new Android 7.x log command (Dees_Troy)
    [*]update recovery sources to AOSP 7.1 (Dees_Troy)
    [*]numerous bugfixes and improvements by too many people to mention[/LIST]
    
    [SIZE="4"][COLOR="Green"]3.0.3:[/COLOR][/SIZE]
    [LIST]Partial release to help support the release of the [URL="https://www.xda-developers.com/team-win-releases-their-first-official-twrp-app-in-the-play-store/"]Official TWRP app[/URL][/LIST]
    
    [SIZE="4"][COLOR="Green"]3.0.2:[/COLOR][/SIZE]
    [LIST]Fix a bug with the input box that affected masked inputs (passwords). This fixes decrypt of full device encryption on devices that support decrypt. This bug also impacts encrypted backups. Users are highly encouraged to stop using 3.0.1 if you use encrypted backups or if you need decrypt of data in TWRP.
    [*]Add Greek translation to some builds.[/LIST]
    
    [SIZE="4"][COLOR="Green"]3.0.1:[/COLOR][/SIZE]
    [LIST]support new CM 13.0 pattern encryption (sultanqasim)
    [*]fix slow flashing issue due to modprobe (present on only some devices) (#twrp)
    [*]libtar updated to latest upstream and fixes (jcadduono)
    [*]fixes for loading custom themes (_that)
    [*]TWRP will now detect and install TWRP themes automatically through the normal zip install process (Dees_Troy)
    [*]translation updates - added Italian, Czech and Polish and significant updates to Dutch
    [*]progress bar improvements - progress bar updates during image flashing and better tracks progress during file system backups (tar) (Dees_Troy)
    [*]fix input box text display (Dees_Troy)
    [*]reboot option after zip install complete (bigbiff)
    [*]other mostly invisible bug fixes and improvements[/LIST]
    
    [SIZE="4"][COLOR="Green"]3.0.0:[/COLOR][/SIZE]
    [LIST]Completely new theme - Much more modern and much nicer looking (by z31s1g)
    [*]True Terminal Emulator - Includes arrow keys, tab and tab completion, etc. (by _that)
    [*]Language translation - It won’t be perfect and especially some languages that require large font files like Chinese & Japanese won’t be availble on most devices. Also some languages may only be partially translated at this time. Feel free to submit more translations to OmniROM’s Gerrit. (mostly by Dees_Troy)
    [*]Flashing of sparse images - On select devices you will be able to flash some parts of factory images via the TWRP GUI (by HashBang173)
    [*]Adopted storage support for select devices - TWRP can now decrypt adopted storage partitions from Marshmallow
    [*]Reworked graphics to bring us more up to date with AOSP - includes support for adf and drm graphics (by Dees_Troy)
    [*]SuperSU prompt will no longer display if a Marshmallow ROM is installed
    [*]Update exfat, exfat fuse, dosfstools (by mdmower)
    [*]Update AOSP base to 6.0
    [*]A huge laundry list of other minor fixes and tweaks[/LIST]
    [U]Additional Notes[/U]
    [LIST]WARNING: This is our first release in a long time. We have a lot of new and somewhat aggressive changes in this new release. The changes to the graphics back-end may cause some devices to not boot up properly or have other display-related issues. If you are not in a position to reflash an older build of TWRP, then wait until you are or at least wait until others have tried the new version for your specific device. You don’t want to end up with a non-working recovery and have to wait several hours or days to get to a computer to be able to fix it.
    [*]Notes for themers: In addition to the updated theme, we have introduced a theme version variable to the TWRP theme system. If the theme version does not match the version that TWRP expects, TWRP will reject the custom theme and load its stock theme. This change will ensure that people who update TWRP without updating their theme will still have a workable recovery. We have removed libjpeg support. The stock theme was only using a jpeg image for the splash / curtain. This change means that any custom themes will no longer be able to use jpeg images. It also means that tools used to repack recovery images with a different curtain / splash will need to be updated to use the new method.
    [*]Version number notes: For a while we’ve been using a 4 digit version number and reserved the 4th digit for device-specific updates. For instance, we find and fix a device-specific issue like decryption of data on Nexus 5, we would release that as a 2.8.7.1. After a while, some people would start asking where 2.8.7.1 was for other devices. So, going forward we have decided to change the numbering scheme to 3.0.0-2, etc. Our hope is that this version numbering scheme will more clearly identify that the 4th digit does not indicate a version change for the code base.
    [*]We need your help! The bulk of TWRP work is done by 3 people on a volunteer basis. We have pushed most of our device files to our github and we have a gerrit instance. If you have the ability, please help us maintain our official devices and/or add your device to our official device list. Thanks in advance![/LIST]
    
    [SIZE="4"][COLOR="Green"]2.8.7.0:[/COLOR][/SIZE]
    [LIST]Initial ground work for software drawn keyboard (_that)
    [*]Fix handling of wiping internal storage on datamedia devices (xuefer)
    [*]Allow DataManager to set and read values from the system properties (xuefer)
    [*]Fix crash when taking screenshots on arm64 devices (xuefer)
    [*]Fix error message after an ORS script completes (Dees_Troy)
    [*]Fix crashes / error when creating encrypted backups (_that, Dees_Troy)
    [*]Add system read only option – more details below (Dees_Troy)
    [*]Add resize2fs and GUI option to run resize2fs (Dees_Troy)
    [*]Fix crash loop caused by empty lines in AOSP recovery command file (_that)
    [*]Prevent duplicate page overlays such as multiple lock screens (mdmower)[/LIST]
    [U]Additional Notes[/U]
    [LIST]Note: As always, be sure your custom theme is up to date (or remove your custom theme) before updating TWRP.
    [*]System read only option: Devices that ship with 5.0 and higher as their initial OS are using block level OTA updates. With this style of OTA update, the update script checks to see if the system partition has ever been mounted read/write. Further, the script also usually runs an SHA sum of the entire system partition to detect if any changes have been made. If any changes have been made, the OTA update will refuse to install. Since not all OEMs and devices have factory images available, we have created a new feature in TWRP that detects if the system partition has ever been mounted read/write. If not, you will be prompted asking if you want TWRP to mount system as read/write. If you choose not to allow TWRP to mount as read/write, TWRP won’t prompt to install SuperSU and TWRP won’t try to patch the stock ROM to prevent TWRP from being replaced by stock recovery. The goal of this option is to hopefully allow the user to make a raw system image backup that they can use to get back to a state where they can take OTA updates again.
    [*]resize2fs feature: On some devices like the Nexus 6, the factory images include a userdata image that is the proper size only for the 32GB units. If you flash the factory image to a 64GB Nexus 6, the data partition will appear as if it only has the free space of a 32GB device. Using the resize2fs option, TWRP can resize your data partition to take up the full space available. The resize2fs may also be useful to resize system partitions on devices where custom ROM system images don’t take up the full partition space. Lastly, resize2fs may be useful in some cases to reserve the proper space at the end of a data partition for a full disk encryption key, should your partition be formatted incorrectly for some reason.
    [*]This new version also marks our first set of full builds using our new jenkins build server. You can track the progress of builds at [url]https://jenkins.twrp.me[/url] and we have taken additional steps to make it easier for device maintainers to step up and submit patches to our gerrit server at [url]https://gerrit.twrp.me[/url] to help us keep devices up to date and working.[/LIST]

    Downloads
    NOTE: Read the FAQ from Post #2 to ensure that you're installing the correct version of TWRP!!

    Download
    Latest Official versions

    Sources
    Device tree


    FAQ - Post #2


    Known Issues
    • Reboot recovery option doesn't work - device will only reboot to system (needs custom-built kernel to fix)

    Bug Reporting
    If you have an issue, the first step is to post a recovery log so we can determine the cause of the issue. This is done in recovery using Advanced -> Copy Log, or adb pull /tmp/recovery.log. Once a log is uploaded we can determine how best to proceed. NOTE: Posts that are reporting bugs or issues without an accompanying recovery log will be ignored! Additionally, providing details about your device setup, including variant, firmware version, and exact steps to reproduce your issue will also be helpful in diagnosing the problem.
    74479355.jpg

    If your issue is determined to be a bug, please consider posting it to our github issues log. It's pretty much impossible for us to keep up with the more than 40 threads that we have for the devices that we "directly" support. If you have a significant problem that cannot be answered in this thread, your best bet is to contact us via our website, or find us in our IRC channel below. If you see someone that's struggling, feel free to point it out to us. We need your help to help us keep track of all of our devices! Thanks!

    Additional Help/Support:
    Live support is available via #twrp on Freenode with your IRC client or just click this link.

    XDA:DevDB Information
    Team Win Recovery Project (TWRP), Tool/Utility for the HTC Bolt

    Contributors
    Captain_Throwback, OMJ, nkk71, Dees_Troy, bigbiff, _that
    Source Code: https://github.com/omnirom/android_bootable_recovery


    Version Information
    Status: Stable
    Current Stable Version: 3.2.1-0
    Stable Release Date: 2017-12-09

    Created 2016-12-14
    Last Updated 2018-03-07
    3
    Frequently Asked Questions (FAQ)
    1. Why is this device different than my previous HTC device?
    • With Marshmallow devices, HTC has moved to a block-based OTA system. This means that even mounting system as read-write (as TWRP typically does during startup checks) will nullify the device's ability to take an OTA. Any other changes to the system partition will also cause an OTA to fail (even if that check is removed from the OTA zip) due to "unexpected contents." Additionally, see this thread.
    2. Which version of TWRP am I supposed to use?
    • The best version to use is 3.2.3-0, the latest official version from twrp.me.
    3. Why is there a "System" backup option and a "System Image" backup option now?
    • The "System" option is the standard tar backup. "System Image" is a dd backup of the entire system block device (/dev/block/bootdevice/by-name/system). The "System Image" option is only relevant if your system is unmodified. This allows you to make a fully stock backup that can be restored later to take an OTA.
      • NOTE: You only need to choose ONE of these options when making a backup!!
        [*]NOTE 2: If you are using a FAT32-formatted card, a "System Image" backup may fail (depending on your variant), due to the 4GB file limit on that format. For a successful System Image backup, internal storage or NTFS/exFAT-formatted external storage must be used (either SD card or USB-OTG)
    4. How do I backup stock recovery prior to flashing TWRP?
    • You can't. The "fastboot boot" command appears to be disabled in ABOOT, so TWRP must be fastboot flashed over stock recovery. You can however, extract the stock recovery.img from the OTA firmware.zip when it's received and use that to install the OTA.
    • An alternate method to obtain a stock recovery is listed below, but it requires 2 devices (either owned by you, or help from someone else in the forum):
      • Someone fastboot flash twrp and immediately make a backup of boot and upload it to XDA.
      • Once the above is available, someone else download that boot.img to their device, and fastboot flash twrp to the BOOT partition of their device.
      • Once the above is done, reboot the device, which will bring up TWRP, and then backup stock RECOVERY in TWRP, and upload to XDA.
      • Then, from within TWRP, use the Image install feature in TWRP to flash the stock boot.img.
    5. How do I restore stock system so that I can accept an OTA?
    • Check the "Mount system as read-only" box in the Mount menu.
    • Restore stock "System Image" backup (This will only work if you've made a System Image backup prior to making any modifications to /system).
    • Fastboot flash stock recovery (fastboot flash recovery recovery_signed.img)
      • NOTE: It is also possible to restore stock recovery via the TWRP GUI. Rename the stock recovery file to "recovery.emmc.win" and place in the backup folder with the stock system image. Recovery will then show as a restore option. MAKE SURE YOU REALLY WANT TO DO THIS, AS TWRP WILL BE GONE WHEN YOU REBOOT OUT OF RECOVERY!!
        [*]NOTE 2: It is possible to install an OTA without using stock recovery (i.e. installing it with TWRP). TWRP will not flash the firmware.zip included in an OTA file. Please see here for a detailed description of the process.
    • Reboot to system, install OTA.
    6. What if I have an RUU? Do I need to worry about all this OTA nonsense?
    • Not if you don't care about losing all your data. If you're S-ON and have an RUU available for your exact variant (model ID and CID must match) and software number (main version must be the same or newer), then you can get back to a fully stock state by relocking (fastboot oem lock) and flashing an RUU. However, if you'd prefer to take an OTA to keep your data intact, the method stated above is how to do so. Or, you can just run a custom ROM and wait for your ROM chef to update their ROM to the latest software (though you'll still have to find a way to update your firmware if you're not S-OFF)
    7. After I go through all this and successfully apply an OTA, how do I make sure I have a clean starting point again?
    • After the OTA is applied and TWRP is flashed, it will once again detect an untouched system, which will mount system read-only and allow you to make a fully stock backup and start the process over again, this time with the new base.
    8. After I restored my Data backup and boot back to Android, I'm entering the correct PIN/password, but it's telling me the password is wrong. What happened, and how do I fix it?
    • It appears that sometimes after restoring a backup of Data where security was enabled (such as a PIN or password lock), the device does not recognize the correct password. There are two ways to avoid this issue:
      • Disable security in Android before making a backup of data.
      • After restoring Data, while still in TWRP, use the TWRP File Manager to navigate to /data/system and delete all the locksettings.* files (such as locksettings.db, etc). When you reboot, the password will be gone.
    2
    Alright, against my better judgement I decided to post this thread. Based on @OMJ's testing, TWRP is working properly with decryption. The only remaining bug I'm aware of is that the "Reboot Recovery" option doesn't work, because of how I hacked the kernel to enable touch. I'm working on an alternative method to get around that, but since I can't test on the device, not sure how that will go.

    Make a note of what it says in the OP under "BUGS" because if you report one without a log, it will be ignored! I hope everyone with this device enjoys this "unofficial" version of TWRP.
    2
    Had to update TWRP as I forgot that gunzip isn't working on builds from the 7.1 tree. Using a pre-compiled busybox binary in TWRP as a workaround. 3.0.2-2 now available on Downloads tab with this fix included.
    2
    Uploaded new version to Downloads Tab. Just some code cleanup mostly and a version bump that coincides to the release of the Official TWRP app.