[GUIDE][Unlocked] Flashing T-Mobile OnePlus 6T to International OOS ROM - OnePlus 6T Guides, News, & Discussion

Note: Firmware flashing procedure is exactly the same for all firmware versions for conversions.
Local Updating using: 9.0.11 is safe
This is a basic write up to convert your bootloader unlocked T-Moilbe OnePlus 6T to the International Version firmware via fastboot flashable firmware files.
Contents:
-Disclaimer
-Full Device Backup - Precautionary - Optional, but Recommended.
-Firmware Conversion Process
-Update after conversion
-Rom Sources
-MSMDownloadTool
-FAQ's
-Additional/Optional Tools
-Credits
Disclaimer:
Like any other form of modding, there are risk involved, we have a near flawless option to recovery by use of the MSMDownload linked at the end of this post, but like with any form of modification, you are solely responsible for what is done to your device and you accept all risk involved, should something go wrong, for the most part, recovery is fairly simply, no matter how bad we screw up, thanks to OP.
Instructions to a full device backup:
1. Download the zip below and extract it to it's own folder
2. Run the backup.bat script
3. It will backup all partitions on your device, including your efs.
4. zip all of the image files and store it somewhere safe.
Backup: https://androidfilehost.com/?fid=11410963190603855581
Steps to convert from stock T-Mobile firmware to Global firmware:
FLASHING STEPS
Requirements:
1. Bootloader Unlocked T-Mobile OP 6T
Unlock Processs Can Be Found Here: https://support.oneplus.com/app/ans...-bootloader-for-oneplus-6t-(t-mobile-version)
2. OOS Stock ROM of your choice: all necessary zip files are included in the rom file, Not the TMOUS branded ROM. (Get the fastboot flashable full rom here: https://forum.xda-developers.com/oneplus-6t/how-to/rom-stock-fastboot-roms-oneplus-6t-t3862516)
3. PC/MAC/LINUX
Flashing Process
1.. Whichever full rom zip you choose, extract its contents. (In my case I used the 9.0.5 full zip)
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
2. In each zip file you'll find images.zip as well as others_flashall.zip, extract both of them into the same folder/directory as the rest of the original zip file.
(Optional, download the modded flash-all-partitions-fastboot.bat file at the end of the thread, it includes the reboot command to auto reboot when done flashing)
Attached Below is also a flash-all-partitions-fastboot.sh script for Mac OS users (Note this script will not wipe your device, so if you need to wipe, run the ./fastboot -w command in fastboot manually)
All bat files, images and adb files should all be in the exact same folder, no subfolder(s)
3. Now boot into fastboot using either the vol+/vol- and power key combo or via adb using the following adb command
Code:
adb reboot bootloader
.
4. Once in fastboot run the bat file called flash-all-partitions-fastboot.bat
9
5. When asked, I would advise typing 'Y' for yes to format the device. (wipe only if you're converting for the first time)
The sparse header error is completely normal.
6. Upon completion, the script should pause and say press enter to continue, it will not reboot your device...
WAIT UNTIL NOTHING ELSE IS HAPPENING AND ITS NO LONGER FLASHING ANY FILES
At this point, hit power and reboot.
Note: Modded fastboot flashing script attached at the end with the reboot command included, also attached is a script for MAC users, mac script will not wipe your device, wipe manually if you need to using
Code:
./fastboot -w
B]
All done!
Update After Conversion (You can also update using the conversion process with the new fastboot files)
Use this if you'd like to convert and relock your bootloader or you've locked your bootloader or simply prefer this method.
1. Download the Full Official Rom from here, not the incremental update, the Full ROM only and copy it to the root of your device: HERE
2. Go to settings > system > system updates > tap settings in top right and choose local upgrade or you can use twrp
3. a) if using local upgrade, choose the ROM zip from the list and install, it will install and give you the option to reboot when complete.
b) if using twrp, boot into recovery, choose install zip and select the full rom file and flash, then follow the steps below
The following steps are for users who have/want root or a modified device or used twrp to install the ROM, device will not boot without the following steps if you installed using twrp:
4. Flash twrp installer HERE
5. Reboot back to TWRP
6. Flash Magisk (if you don't won't boot, you only need this step if your system was rooted/modified in any way) Magisk Here
Or you can skip the additional steps and simply do a factory reset.
NOTE: After using the local upgrade option, you can relock your bootloader if you choose to remain stock, enabling widevine L1 for HD videos, as well as a certified play store device.
You can continue with a locked bootloader using the local upgrade option, but be wary that you should confirm we can local upgrade prior to attempting an update. OTA updates will not show, but future local full ROM updates are working as of: current 9.0.11.
relock using fastboot oem lock command, this will wipe your device.
ROM Sources
Mauronofrio's Thread
T-Mobile 9.0 FULL Fastboot ROM
Saythis' International Firmware 9.0.6​
Full ROMs directly from OnePlus for Updating Purposes ONLY
Recovery - MSMDownloadTool
If for some WEIRD reason you brick, have a HW mismatch, etc, or you just can't boot go to this thread -> MSMDownloadTool - T-Mobile 9.0
OPTIONAL Steps
Root is available via two Options below:
- OnePlus Rooter
- Manual Root Using a Patched Boot Image
Automated Process
Luckily There are devs looking to make things simpler:
For @Dameon87's automated tool to carry out this process, go to the thread below:
https://forum.xda-developers.com/oneplus-6t/how-to/rom-oxygen-os-9-0-6-fastboot-windows-t3870170
WARNINGS!
-Advisable you disable automatic updates in developer options upon boot if it is enabled.
-Do not attempt to update using the OTA files, so far we've had one softbrick due to it and said user was unable to boot into fastboot to attempt any kind of recovery.
-ALSO DO NOT FLASH WITHOUT THE FILES IN THE FOLDER, IF YOU DO YOU WILL END UP WITH A SOFTBRICK
-If you get either dump mode or fastboot bootloop check your downloaded rom file to make sure its complete, unzip again and flash again
FAQ
Q. Will this enable dual sim functionality?
A. Dual sim functionality works, volte, Wifi calling and vvm.
Q. Can I take OTA's like a regular device?
A. No, sadly.
Q. What about when a new update comes out?
A. Update procedure is written above.
Q. What if I brick or have a HW/SW mismatch?
A. Use the MSMDownloadTool to recover.
Q. Do all the features work?
A. For the most part, there are minor bugs, but they aren't consistent, so can't really say.
Q. Is this a full conversion?
A. Somewhat.
Q. Do I have to wipe everytime I update?
A. No, wiping may only be necessary for conversions, no wipe needed to update.
Q. Do I have to root everytime I update?
A. Yup, sadly.
Q. Do I have to convert to a specific version?
A. Nope, you can convert to any version.
if any edits are suggested, I'll include them.
Credits:
@mackentosh for testing and unfortunately bricking using the OTA File
@Velrix for being the second successful tester, among others.
All the other users who've been testing/contributing to testing
I'll add names when I get to comb through the threads.
@Dameon87 for the correct ROM source link of the unpacked ROM with batch files.
@Krunk_Kracker for the disable auto updates image
Thanks to @Addiso for the Stock T-Mobile Backup images
@mauronofrio for the scripts and for hosting the Rom zip @hartleyshc for testing and confirming full dual sim functionality.
@Saythis - for the 9.0.6 FULL ROM Zip
@Taebom for first testing/confirming 9.0.7 local upgrade

Thanks for the write up! It was getting confusing trying to follow multiple threads and conversations. I'm gonna wait a while before I try this but I know it'll only get better and better.

This will only work with the 9.0.4/5 ROM that has already been converted for use with Fastboot.
The full roms in the post you link do not have the required .bat files for flashing and also must be extracted from the Payload.bin file.
Did you perhaps mean to link to this thread instead? : https://forum.xda-developers.com/oneplus-6t/how-to/rom-stock-fastboot-roms-oneplus-6t-t3862516

Dameon87 said:
This will only work with the 9.0.4/5 ROM that has already been converted for use with Fastboot.
The full roms in the post you link do not have the required .bat files for flashing and also must be extracted from the Payload.bin file.
Did you perhaps mean to link to this thread instead? : https://forum.xda-developers.com/oneplus-6t/how-to/rom-stock-fastboot-roms-oneplus-6t-t3862516
Click to expand...
Click to collapse
Correct, thank you.

Dark Nightmare said:
Correct, thank you.
Click to expand...
Click to collapse
No worries!

nice doing this tomorrow night when my .bin is 7 days old

What's up with persist? No output or not getting flashed? Has anyone run it manually?

Doesn't seem like anything that needs TWRP is flashing to the partitions whether that's a good or bad thing remains to be seen since we have no clue what could brick our devices when flashing those partitions.
LLStarks said:
What's up with persist? No output or not getting flashed? Has anyone run it manually?
Click to expand...
Click to collapse
Sent from my ONEPLUS A6013 using Tapatalk

Edit. I misread. Thanks for the guide..

Does this actually give us 2 IMEIS?

ahrion said:
Does this actually give us 2 IMEIS?
Click to expand...
Click to collapse
No. It's the same imei on both slots.

Will this work with 9.0.5?

Krunk_Kracker said:
Will this work with 9.0.5?
Click to expand...
Click to collapse
Yes. He state's in the OP that he used 9.0.5.
It currently works with 9.0.4 and 9.0.5.

Is there any commands we can use to do flash-all-partitions.bat? My Mac doesn't recognize terminal as a program that can open the .bat file

dchurch85 said:
Is there any commands we can use to do flash-all-partitions.bat? My Mac doesn't recognize terminal as a program that can open the .bat file
Click to expand...
Click to collapse
Open the bat, it references 3 other bats, open those bat files in order (as text files, or just rename them .txt).
Just copy paste each line into terminal and run them that way.

hartleyshc said:
Open the bat, it references 3 other bats, open those bat files in order (as text files, or just rename them .txt).
Just copy paste each line into terminal and run them that way.
Click to expand...
Click to collapse
Thank you!

May be able to make a sh script for terminal.

Can we flash h2os?

Thank you so much to everyone involved. I should be receiving my unlock.bin file today and am anxious to get flashing. I have a few questions if anyone knows the answer:
Is the radio/modem working correctly?
If I understand correctly, after following this guide and flashing to 9.0.5 we CANNOT do future OTAs (say to 9.0.6 for example) as they are released. Is this correct?

Wow, received my token this morning, fired this up and updated. Didn't think it was possible but the update actually made the phone even better.thanks to everyone's pre work in figuring a lot of this out...

Related

[APP] Flash Image GUI - Flash Kernels and Recoveries from normal Android mode!

Credits:
birbeck for the usual random java guidance, slushpupie for his previous java guidance, dodgejcr for extreme amounts of testing, and one_love_420 and shift for some great graphics!
testers: JT-, couga6442, happytweak and many others I might have forgot in the furry of three days I built the initial app from scratch.!
Thanks to SDX
Works with HTC Unlock Method:
Tested after using htcdev.com's bootloader unlock method.
Please see the guides at the bottom of this post!
Background:
flash_image (bmlwrite) is an extremely useful utility for flashing custom kernels, boot logos (so far ONLY Samsung devices) and recoveries. This binary has made it possible to easily flash all these items and is used almost everywhere behind the scenes (i.e. in custom recoveries, packaged into a kernel /sbin directoy, included in custom ROMs, etc).
Description:
This android application, FlashImageGUI, is basically a GUI interface for the linux binary, flash_image provided by google in AOSP for loading custom kernels and recovery images onto the phone.
This app allows the flashing of kernels and custom recovery images in normal android mode!
Current Device Support:
Full Kernel, Logo and Recovery flashing: Samsung Moment, Transform, Intercept and Acclaim - the s3c6410 series of devices
Full Kernel (Anykernel and boot.img) Flashing and Recovery (zip file or image) flashing: Sprint HTC One, T-Mobile HTC One, HTC EVO 4G LTE, One S, EVO 3D CDMA and GSM, One XL, Droid DNA, Amaze, Vivid/Holiday, EVO 4G, EVO Shift, Google Nexus 4, Google Nexus 10, Google Nexus 7, Samsung Google Galaxy Nexus, Nexus S/Nexus S 4G & LG Optimus
Full Kernel (zImage) Flashing: Samsung Epic
Check application version for updates
Future Support:
Will continue to test kernels as they are released to ensure compatibility!
YouTube Install Video:
http://www.youtube.com/watch?v=9aqnhFxb__k
Thanks @wwjoshdew !
Install Directions:
Install process is the same as any other .apk. Download to computer and adb push or mount sdcard on computer and copy over or download directly to the phone. Use any file manager, adb, connectbot/terminal emulator to install.
My preferred method, maybe a bit technical: ./adb install c:\downloads\FlashImageGUI.apk
Download Locations
Market (99 cents!): Flash Image GUI
Release version (free): Flash Image GUI
Contact:
Any questions, comments, concerns, or issues, please post in this thread or send me an email! Thanks for all the help and support!
FAQ:
Q: Will this app support a marketplace to pick and chose kernels from?
A: No. Use Kernel Manager!
Q: Can I flash nandroid kernel backups?
A: Yes. Rename the specific image to boot.img and select from inside of Flash Image GUI. **Make sure to also load the associated modules or WiFi might stop working!
Screenshots:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Feedback:
Please post any helpful feedback. I'm always looking to improve the application!
HTC Unlock - User Guides for Flash Image GUI!!
HTC Unlock - Users Guide for ROMs with a Kernel (boot.img file):
1) Unlock using the HTC method and gain root access.
2) Load this application, Flash Image GUI, onto the device, either through the Market or the link provided in this OP.
3) Download ROM .zip file to the sdcard on the device.
4) Open up Flash Image GUI, select Browse and select the ROM .zip file, downloaded to /sdcard in the previous step.
5) Flash Image GUI will provide a warning, reminding that the ROM .zip file will *need* to be flashed in the custom recovery afterward.
6) Flash Image GUI will index the full ROM .zip file searching for the kernel and kernel modules. Once located, the Flash Image button should be enabled.
7) Select the Flash Image button and Flash Image GUI will load the kernel modules and kernel from inside the ROM zip file.
8) Select reboot recovery.
9) Inside the custom recovery, wipe data as ROM requires and load/flash the ROM zip file.
10) Reboot to normal Android mode and all should work including WiFi!
HTC Unlock - Users Guide for flashing ONLY a Kernel (zip file):
1) Unlock using the HTC method and gain root access.
2) Make sure the selected Kernel is compatible with the currently loaded ROM. If not, this will result in a lot of frustration!!! See troubleshooting steps below.
3) Download kernel zip file to /sdcard.
4) Open Flash Image GUI, browse and select kernel zip file, downloaded/loaded to sdcard in previous step.
5) Flash Image GUI will validate the kernel zip file is contains the minimum required files
6) Select the Flash Image button and Flash Image GUI will load the kernel and the kernel modules from the source kernel zip file.
7) Reboot
Troubleshooting after Rebooting:
First step, when experiencing issues flashing is to RE FLASH the files again. Many times, re flashing again will clear up any issues. If not, see the issues/solutions below.
Issue #1: If the device hangs or reboots while on the splash screen, the kernel itself or the ramdisk packaged in the kernel is NOT compatible with your device!!!
Solution for #1: Have to boot into fastboot (or directly into the custom recovery) and load the custom recovery to flash a known good kernel or restore a previously known good nandroid backup. Command: fastboot boot c:\downloads\cwm-recovery.img
Issue #2: If the device hangs or reboots while on the boot animation, the ROM is likely NOT compatible with the kernel!!!
Solution for #2: Have to boot into fastboot and load the custom recovery to flash a known good ROM/kernel combination either from a zip file or restore from a nandroid backup.
I actually used this app the other day I used on my evo lte a lot before s-off. Also makes flashing kernels and recoveries a breeze
Sent from my HTCONE using xda premium
This is a great app. Been using it for a while....thanks.
via phONE.
For the guys who never used it,it works great. Forgot how much it was but it was worth every dime.
Just an amazing app.
Sent from my HTCONE using Tapatalk 2
I made a video showing how to update/install custom recovery using your app! Thanks @joeykrim!
http://www.youtube.com/watch?v=9aqnhFxb__k
wwjoshdew said:
I made a video showing how to update/install custom recovery using your app! Thanks @joeykrim!
http://www.youtube.com/watch?v=9aqnhFxb__k
Click to expand...
Click to collapse
Excellent! I've added a link in the OP. Thanks!
App didn't seem to like philz_touch_5.08.5-m7spr.img wouldn't work for me, verified md5 downloaded it twice wouldn't work, then I renamed it to TWRP.img and finally it work and would allow me to hit the Flash Image button.
im0rtalz said:
App didn't seem to like philz_touch_5.08.5-m7spr.img wouldn't work for me, verified md5 downloaded it twice wouldn't work, then I renamed it to TWRP.img and finally it work and would allow me to hit the Flash Image button.
Click to expand...
Click to collapse
The error message that occurs each time you select a file that doesn't fit the naming criteria says, for a boot.img file, it needs to have the phrase "boot" in the name. Just need to add "boot" to the filename, for example: philz_touch_5.08.5-m7spr-boot.img.
Unfortunately, this limitation came about from beginners flashing incorrect files and overwriting their kernels so the device wouldn't boot. No real way around that issue other than silly filename limitations in an effort to education the users.
I test out the function real quick and the error message does come and go fairly quickly. I'll look at adjusting that so it the error message sticks around a bit longer to make it easier to read it.
Thanks for the feedback and hope that helps!
Thanks for the quick reply. This was definately worth the 99 cents. Since I can never get fastboot drivers to work on windows 8.
Myself, I prefer to adb .img's. But for a person who isnt as familiar with adb or someone who just doesnt want to, this is a great app, well worth the .99cnts. Thanks joey.
***Sent from my Super Groovy Hand Held Porno Machine***
Will this let us flash a firmware update instead of using adb? Thanks
Sent from my HTCONE using Xparent Blue Tapatalk 2
treIII said:
Will this let us flash a firmware update instead of using adb? Thanks
Sent from my HTCONE using Xparent Blue Tapatalk 2
Click to expand...
Click to collapse
Unfortunately, as far as I've seen HTC doesn't allow direct access to the firmware components from the standard booted Android mode. If you see any new information on how to access the firmware components directly, feel free to provide the links here and I'll research.
Thanks for the support!

[Recovery] Official TWRP for the ZTE Axon 7

Team Win Recovery Project 3.1.1-0
This is for the A2017, A2017U, and A2017G.
WARNING: The ZTE Axon 7 stock boot image has dm-verity, which prevents you from booting if you swipe to enable system modifications!
SOLUTION: Follow the full rooting steps below in order to allow system modifications without the risk of a boot loop!
WHAT IS TWRP?
Oh come on, you know what it is - don't try to fool me!
In case you're serious, though...
Team Win Recovery Project is a custom recovery for Android devices.
It allows you to back up and restore your data, flash custom ROMs to your device, repair broken file systems, and root your device.
Read more about TWRP here: https://twrp.me/about/
DOWNLOAD
You can find the device page here:
http://teamw.in/devices/zteaxon7.html
There is a download link there, as well as instructions on how to flash it.
You can find up to date fastboot & adb binaries here!
UNLOCKING YOUR BOOTLOADER
WARNING: Unlocking your bootloader will erase all userdata on the device! Your device will be completely reset to factory defaults!
A2017U or A2017 users can simply unlock from EDL mode using MiFlash here.
I do not have a method for A2017G, there may be other threads on XDA to guide you through the process.
FULL STEPS FOR OBTAINING ROOT
Follow these instructions until someone nice comes along and makes a video from them (without ads):
Unlock your bootloader! See above!
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Download TWRP for the ZTE Axon 7.
Reboot your device into fastboot mode. To do this, select reboot from the power menu and hold the [Volume Up] button while your device reboots or boots from power off.
Once you're in fastboot with your bootloader unlocked, you're ready to flash TWRP. To do this, run the command (replacing twrp.img with the actual image name):
fastboot flash recovery twrp.img
Once the image is flashed, you should use your volume keys to navigate to RECOVERY and the press the power key to select it.
At this point, you will reach the screen asking you if you want to allow system modifications.
By swiping right, you will trigger dm-verity, and if you don't follow the next step you will be unable to boot!
If you are going to root your device and follow the rest of these steps, then it is safe to swipe right and enable modifications.
If you want to be rooted with SuperSU:
Download the latest SuperSU stable by Chainfire.
Without exiting TWRP, transfer the SuperSU zip to your device over MTP* and flash it using [Install] in TWRP.
---or (not both) ---
If you want to be rooted with Magisk:
Download the latest Magisk stable by topjohnwu.
Without exiting TWRP, transfer the Magisk zip to your device over MTP* and flash it using [Install] in TWRP.
---or (not both) ---
If you want to be rooted with something else or just want a bootable system:
Download the latest dm-verity and forced encryption disabler zip.
Without exiting TWRP, transfer the no-verity-opt-encrypt zip to your device over MTP* and flash it using [Install] in TWRP.
This will also allow you to use [Format Data] to completely disable your encryption if desired.
Go to [Reboot] -> [System].
Wait 2-5 minutes for your device to finish setting itself up. (SuperSU will reboot you a few times)
* MTP, known as Media Transfer Protocol, is the same way you transfer files from your PC to your device when booted into system.
UPDATING TWRP
To update TWRP, simply download the new twrp.img on your phone, then boot into your current TWRP and flash it.
To flash a twrp.img, navigate to [Install] -> [Flash Image] -> select your twrp.img -> [x] Recovery -> Flash!
After that, just use [Reboot] -> [Recovery] to reboot into the updated TWRP.
CHANGES
v3.1.1-0 (twrp.me) - See release details here!
v3.1.0-0 (twrp.me) - See release details here!
v3.0.4-1 (build.nethunter.com) - Fix crash on selecting reboot with an empty data partition, add Data backup warnings
v3.0.4-0 (build.nethunter.com) - Capability restoration for Nougat, F2FS backport support, EXT4 decryption support
v3.0.3-1 (twrp.me) - Use crypto libraries from ROM (Nougat support). Fix USB OTG and Fast Charging. Reduce boot times.
v3.0.3-0 (twrp.me) - Renamed to ailsa_ii, Persist merged with EFS, Modem no longer mounted, Backup/Restore/Flash Bluetooth/System Image added. LA.HB.1.3.1.c1-19500-8x96.0 + Linux 3.18.45.
v3.0.2-0 (twrp.me) - Initial release.
FEATURES
MTP support
USB OTG storage support
Legacy USB Mass Storage mode support - use your phone like an SDCard reader or flash drive!
Hardware Qualcomm-based full-disk encryption support
f2fs file system support (read, write, format, backup & restore)
exFAT file system support (read, write, format)
NTFS file system support (read, write, format)
ADB root
Full SELinux support
Built in android 6.0 tree
Allows ZTE full OTA flashing (only for A2017U firmware)
KNOWN ISSUES
F2FS takes a long time to boot, see below.
WHY DOES F2FS MAKE TWRP SO SLOW?
When TWRP boots up or wipes partitions and a few other scenarios, it checks each partition to see how much disk space is used. Ext4 handles disk usage calls quite efficiently and will finish this very fast. F2FS on the other hand is very slow when it comes to checking disk usage. We're unsure why this is. Every file on the F2FS formatted partition adds a little more time, and a device that is 30 GB full could take up to 10 minutes to boot TWRP!
I suggest switching your data partition to ext4 - all the f2fs hype is merely from benchmarks that don't actually represent real world use (ie. you're not writing thousands of files per second)
For someone who doesn't do lots of write access to their data partition, ext4 can actually be advantageous (it has faster access times and reads!)
HOW DO I GET LOGS SO WHEN I COMPLAIN I'M NOT COMPLETELY IGNORED OR SHAMED BY OTHER USERS?
To get logs while in TWRP, you should connect your device to your PC and use adb.
adb pull /tmp/recovery.log
adb exec-out dmesg > dmesg.log
This will create 2 files in the directory your shell is currently in, recovery.log and dmesg.log. You will need to upload these somewhere such as a pastebin or Google Drive. You can also attach it to your XDA post (recommended!)
If you are having an operating system boot issue, you should gather a ramoops log instead. Do this while in TWRP after the failed boot:
adb exec-out "tar c /sys/fs/pstore 2>/dev/null" > pstore.tar
CONTACT & SUPPORT
You can find us on IRC at #twrp on chat.freenode.net.
You can also post in this thread and I will attempt to answer any questions you may have.
SOURCE CODE
TWRP: https://github.com/omnirom/android_bootable_recovery (android-7.1)
Device tree: https://github.com/TeamWin/android_device_zte_ailsa_ii (android-6.0)
Kernel: https://github.com/jcadduono/android_kernel_oneplus_msm8996 (twrp-6.0)
CONTRIBUTIONS
Gerrit for TWRP: http://gerrit.omnirom.org/
Gerrit for officially supported devices: http://gerrit.twrp.me/
XDA:DevDB Information
Team Win Recovery Project for the ZTE Axon 7, Tool/Utility for the ZTE Axon 7
Contributors
jcadduono, Team Win
Source Code: https://github.com/TeamWin/android_device_zte_ailsa_ii
Version Information
Status: Stable
Current Stable Version: 3.0.4-1
Stable Release Date: 2017-02-08
Created 2016-12-09
Last Updated 2017-11-25
Link does not work is there a typo?
lokissmile said:
Link does not work is there a typo?
Click to expand...
Click to collapse
Nope, bigbiff is just taking long time to hit the go button on jenkins to build the device and rebuild twrp.me lol
I think he fell asleep
You can use this for now: https://build.nethunter.com/test-builds/twrp/zte/twrp-3.0.2-0-a2017u.img
Downloaded and installed although not sure how this differs from the one in the unlock thread. Made a backup everything seems OK. Thanks!
lafester said:
Downloaded and installed although not sure how this differs from the one in the unlock thread. Made a backup everything seems OK. Thanks!
Click to expand...
Click to collapse
It shouldn't be any different, or any differences there are should be minimal.
One (and maybe only) notable difference might be that it uses ZTE's USB configuration rather than Google's.
It also supports legacy mass storage. (accessing sdcard like a flash drive, instead of MTP)
I should also add that it's pretty much 1/3 of the size too lol.
UnjustifiedDev's unofficial TWRP is 3.0.2-2. I recall people were having issues with restoring some partitions (mostly EFS), so he backported the bugfix from the 7.0 TWRP code, which seemed to have fixed the issues. Does this official build include that bugfix?
Is there any technical reason why this version shouldn't be installed on A2017G?
xtermmin said:
UnjustifiedDev's unofficial TWRP is 3.0.2-2. I recall people were having issues with restoring some partitions (mostly EFS), so he backported the bugfix from the 7.0 TWRP code, which seemed to have fixed the issues. Does this official build include that bugfix?
Click to expand...
Click to collapse
That bug was fixed in September on the 6.0 branch.
_phk_ said:
Is there any technical reason why this version shouldn't be installed on A2017G?
Click to expand...
Click to collapse
I don't have any technical reason, just from what I've read it won't boot. You can try it, let me know what happens. Actually please do, because if it does boot it would be quite pleasing and I'd end up unifying them.
Is this TWRP using the stock B29 kernel or your custom Kernel?
I was building my own TWRP for the Axon-7 the other day. Mainly to include more partitions for backup purpose while working on CM and back to stock. (Especially persist).
As far as I saw the CM rom messes with persist (creates folders and files in persist).
Should ZTE release Android 7.0 in January I want to be able to go back using the backup created of B29 and simply run the OTA.
If CM messes with persist and one goes back to B29 to upgrade to Android 7. The OTA partitions check before upgrade will probably fail with checksum errors. And the upgrade will fail.
One would have to go all the way back to factory B20 then =>B27 =>B29=>Android 7.
Correct me if I'm wrong.
But shouldn't we include at least those partitions that CM touches in TWRP for proper restore possibilities? And future upgrades of Stock?
celoxocis said:
...If CM messes with persist and one goes back to B29 to upgrade to Android 7. The OTA partitions check before upgrade will probably fail with checksum errors. And the upgrade will fail...
Click to expand...
Click to collapse
So far, none of the OTAs (at least for the US model) have done a check of persist, but who knows if they will for Nougat.
celoxocis said:
Is this TWRP using the stock B29 kernel or your custom Kernel?
I was building my own TWRP for the Axon-7 the other day. Mainly to include more partitions for backup purpose while working on CM and back to stock. (Especially persist).
As far as I saw the CM rom messes with persist (creates folders and files in persist).
Should ZTE release Android 7.0 in January I want to be able to go back using the backup created of B29 and simply run the OTA.
If CM messes with persist and one goes back to B29 to upgrade to Android 7. The OTA partitions check before upgrade will probably fail with checksum errors. And the upgrade will fail.
One would have to go all the way back to factory B20 then =>B27 =>B29=>Android 7.
Correct me if I'm wrong.
But shouldn't we include at least those partitions that CM touches in TWRP for proper restore possibilities? And future upgrades of Stock?
Click to expand...
Click to collapse
It uses a custom very minimal kernel configuration with modifications to make it more compatible with TWRP.
Why does modification of persist matter? Persist can't affect OTAs as it's meant to be modified, it's only a firmware/calibration cache.
If it ever had an issue you could simply type:
make_ext4fs /dev/block/bootdevice/by-name/persist
CM should not modify any partitions that are meant to be static.
The only partitions that will need to be fixed to take OTAs should be: boot, system, recovery, modem (NON-HLOS.bin)
The only reason modem needs to be fixed is because it's used in TWRP and I can't enable both backup and read-only at the same time.
Update: I'll just make two entries, backup/restore for raw modem emmc, and read-only mount for decrypt. (should be safe to do this with mounttodecrypt unmounting it)
xtermmin said:
So far, none of the OTAs (at least for the US model) have done a check of persist, but who knows if they will for Nougat.
Click to expand...
Click to collapse
They will not. There is no logical reason to check a partition that is designed to be modified.
In fact, I'll add Persist (calibration data) to the Wipe page!
jcadduono said:
It uses a custom very minimal kernel configuration with modifications to make it more compatible with TWRP.
Why does modification of persist matter? Persist can't affect OTAs as it's meant to be modified, it's only a firmware/calibration cache.
If it ever had an issue you could simply type:
make_ext4fs /dev/block/bootdevice/by-name/persist
Click to expand...
Click to collapse
Thanks for the clarification. I just remember when I was dirty flashing CM13 months ago when doing one of my devices bring-up. TWRP would complain with error 7 (I think?).
When I run a diff of the partitions it touched (I checked all init.rc's) I found the difference in persist. Reverting back the persist with DD (I always do a DD backup of my untouched devices, on all partitions before messing with them and store them on my NAS). The dirty flash went fine. Ever since that I include persist in my TWRP's.
I don't mind not having it in TWRP. I can bake my own anytime
celoxocis said:
Thanks for the clarification. I just remember when I was dirty flashing CM13 months ago when doing one of my devices bring-up. TWRP would complain with error 7 (I think?).
When I run a diff of the partitions it touched (I checked all init.rc's) I found the difference in persist. Reverting back the persist with DD (I always do a DD backup of my untouched devices, on all partitions before messing with them and store them on my NAS). The dirty flash went fine. Ever since that I include persist in my TWRP's.
I don't mind not having it in TWRP. I can bake my own anytime
Click to expand...
Click to collapse
I just replaced the -0 version, new one has modem read only and persist shows up in wipe page as "Persist (calibration data)" so people know what they're wiping.
There's a lot of partitions that seem scary and screw up your device when they're corrupt but you can just either format them (in the case of persist) or dd zeros to them (in the case of misc, modemst1, modemst2, efsg, and efsc) and the OS/firmware will regenerate everything on boot like you just took it out of the box.
any reason to flash this version of TWRP over the one UnjustifiedDev's made?? I can just flash the twrp.img file right?
celoxocis said:
Is this TWRP using the stock B29 kernel or your custom Kernel?
I was building my own TWRP for the Axon-7 the other day. Mainly to include more partitions for backup purpose while working on CM and back to stock. (Especially persist).
As far as I saw the CM rom messes with persist (creates folders and files in persist).
Should ZTE release Android 7.0 in January I want to be able to go back using the backup created of B29 and simply run the OTA.
If CM messes with persist and one goes back to B29 to upgrade to Android 7. The OTA partitions check before upgrade will probably fail with checksum errors. And the upgrade will fail.
One would have to go all the way back to factory B20 then =>B27 =>B29=>Android 7.
Correct me if I'm wrong.
But shouldn't we include at least those partitions that CM touches in TWRP for proper restore possibilities? And future upgrades of Stock?
Click to expand...
Click to collapse
I was under the impression that you couldn't install OTAb updates with an unlocked bootloader anyway. Is this not true?
abdi7451 said:
I was under the impression that you couldn't install OTAb updates with an unlocked bootloader anyway. Is this not true?
Click to expand...
Click to collapse
Bootloader status hasn't been checked by the OTAs so far (on the US model anyway). I've been able to go from a bootloader unlocked B20 -> official B27 OTA -> TWRP+CM13 -> Restore my B27 backup in TWRP + reflash stock recovery -> official B29 OTA -> reflash TWRP+CM13. As long as you are completely stock besides the bootloader, you can apply OTAs fine. (you can check the updater script in the OTA files for specifics on what it checks and what it patches)
xtermmin said:
Bootloader status hasn't been checked by the OTAs so far (on the US model anyway). I've been able to go from a bootloader unlocked B20 -> official B27 OTA -> TWRP+CM13 -> Restore my B27 backup in TWRP + reflash stock recovery -> official B29 OTA -> reflash TWRP+CM13. As long as you are completely stock besides the bootloader, you can apply OTAs fine. (you can check the updater script in the OTA files for specifics on what it checks and what it patches)
Click to expand...
Click to collapse
I am rooted and unlocked bootloader. How do apply the stock recovery in order to receive OTA updates?
Just wanna clarify this... B20 bootloader allows the fastboot OEM unlock command, and once you're unlocked, you can flash any bootloader you want. Flashing B29 bootloader does not lock you, once unlocked, always unlocked. Unless you relock it yourself. You can even go older than B20 bootloader. Feel free to play around with BL versions. I like B20 because no stupid 5 second warning thing.
If I already have the unofficial version for TWRP should I install this one over it or is it really the same thing?
@jcadduono, I think most people would find it helpful if you could list what's different between the now official version and @Unjustified Dev's version, as I know they've been developed semi in parallel.

[Guide]Installing Lineage

Installing Lineage​
Few quick things.
LOS 18.1 is now official so the guide will now just be covering that.
I also want to address a common question, you can use Windows for this process. I prefer Linux, and Fastboot just works in Linux without driver issues. If you have Fastboot and ADB working in Windows already feel free to use that if you want.
Frequently asked Questions:
This looks like a lot of work, is there an easier way to install? Try the LOS Wiki Method.
Using TWRP 3.5.2_9-0​1. Start off Fresh. Install OOS using the Fastboot ROM.
Start off with a fresh install of OOS. You need the latest version of OOS 10. I typically use a the fastboot ROMs for this as it will do both slots for me at once. (Alternatively you can use TWRP and install the ZIPs and do it twice to get it on both slots, or my least favorite, the MSM Tool if you want. Doesn't matter how OOS ends up on both slots, as long as it ends up on both slots.)
I use Linux, and honestly I feel like it's easier and more reliable for fastboot and ADB so that's what I'm including here in these steps. It's easy to boot from a USB.
To create a bootable Linux flash drive you can use Unetbootin, which you can download for free here (Your other option would be to burn the ISO straight to a DVD and skip the unetbootin step):
https://unetbootin.github.io/
For Linux, I'm using Linux Mint Cinnamon, You can download for free here:
https://www.linuxmint.com/download.php
Then run unetbootin (yours will look a little different, I'm running it in Linux):
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
Point it to the Linux ISO, and tell it where an empty flash drive is. It will erase everything on the flash drive. Afterwards you can load whatever you want on the flash drive. However be aware when booting Linux from this drive you can't access what is on the drive (at least not by normal methods).
After this has successfully completed, reboot the PC, and boot from the USB drive. Your PC will boot into Linux (turning off the PC and removing the USB drive will make it boot up like normal again).
Next we need to install fastboot and adb. You need to open up the "start menu" and open the "synaptic package manager". You can find this stuff in the menus, however the easiest way to get to these items is to just start typing the name of the item. See below:
Search fastboot, click the boxes, choose install. Then search for ADB, click the boxes, choose install and then click apply. It's that easy it will download everything that's needed and install.
Time to open up a terminal:
Just to make sure we don't run into any problems we need to update adb and fastboot. In the terminal run these commands to update fastboot and adb (this is downloading them directly from Google).
wget https://dl.google.com/android/repository/platform-tools-latest-linux.zip
unzip \platform-tools-latest-linux.zip
sudo cp platform-tools/adb /usr/bin/adb
sudo cp platform-tools/fastboot /usr/bin/fastboot
You will also need the appropriate fastboot ROM. Fastboot ROMs available in this thread. The catch being that thread is no longer updated. So we will need to make our own fastboot rom. To do this we need two things:
1. The stock rom zip (OP Site).
2. Payload dumper. I've yet to get the one from the GitHub link to work, so I've been using the one from this Article. Direct Download Link
You need to extract the payload.bin file from the stock rom zip. Extract the payload_dumper files as well, and place everything in the same folder. Payload_dumper requires python3. Open up Synaptic again, search for python3.6 and install it. Now open a terminal so we can extract the images from the payload.bin.
Navigate to the location of payload_dumper and your payload.bin file. In my case my commands are:
cd Desktop <-- switches to the Desktop folder
cd payload_dumper <-- switches to the payload_dumper folder on the Desktop
python3 payload_dumper.py payload.bin <-- runs the payload_dumper "program" and extract the images from the payload.bin
Now would be a good time to back everything up. The phone will get wiped. Extract the fastboot images to a folder that is easy to find. I would recommend the Desktop.
Now it's time to flash all those images we just extracted using payload dumper. Place the phone in fastboot mode. You can do this using the advanced reboot menu, ADB, or the key combinations (all key combos listed below for reference):
Volume Up + Power while turning on will boot to fastboot.
Volume Down + Power while turn on will boot to recovery.
Holding Volume Up + Power should force the phone to turn off.
Volume Up + Volume Down should put your phone in Download mode for the MSM Tool.
You can flash the images one by one or use a script. My script is available here. Flashing the fastboot ROM should look something like this:
That image explained:
cd Desktop <-- Switched the directory to the Desktop the default directory when you open up the terminal is the /home directory.
cd flash <-- I put my fastboot images in a folder called flash. This stuff is case sensitive. My folder was all lowercase.
sudo fastboot devices <-- Is just checking to see if my PC can see my phone, and making sure it's in fastboot. Sudo is necessary for this distro, as both fastboot and ADB must be run as root.
sudo sh FlashThese.sh <-- Tells the terminal to run my script, since the script contains fastboot commands it must be run as root.
At the end you should get something like this:
Then just choose start form Fastboot (If you were previously on a custom ROM go straight to recovery and wipe everything). Not booting and getting dumped off at the OnePlus recovery screen is nothing to worry about. Choose your language of choice, Wipe data and cache, Erase everything (Music, pics, etc), This can not be undone, continue. After that the phone will boot. Once booted enable developer options, advanced reboot, and reboot to fastboot.
2. Installing TWRP.
First step is to boot the correct TWRP image. Grab the current TWRP from the official site. You need both files, the img file, and the installer. Once again from the terminal:
The image explained:
cd Desktop <-- Switched the directory to the Desktop the default directory when you open up the terminal is the /home directory.
sudo fastboot devices <-- Is just checking to see if my PC can see my phone, and making sure it's in fastboot. Sudo is necessary for this distro, as both fastboot and ADB must be run as root.
sudo fastboot boot twrp-3.5.2_9-0-fajita.img * <-- Sends that TWRP image to the phone to be booted temporarily. Only boot this, never run the command "flash".
Once in TWRP the phone should show up as a media device so you can copy files to it. Copy the TWRP installer over to it. Choose Install from the TWRP menu and navigate to where you placed the TWRP installer. Press on it, and swipe to confirm flash. When it is done hit the back button until you are back out to the main menu.
From the main menu choose reboot, and choose Recovery:
The first time you try and reboot the official version of TWRP it will ask you if you want to install the TWRP app. Do NOT install the app. In the settings you can disable this prompt. Your other option is just uncheck both boxes at the screen you see below when you get to it, and then click the button that says do not install. Do use the slider. At that point the phone will reboot as to recovery as you selected.
Now that you are back in TWRP that is now installed, time to wipe the phone. From the main menu choose Wipe. Swipe the factory reset slider at the bottom. Then hit back. Next hit Format Data. Type Yes to Continue. Hit back to continue. Keep hitting back till you get to the main menu.
Do NOT wipe cache, do not Wipe system, do NOT Wipe Dalvik / ART, do not add anything else, Just Factory Reset and Format Data. After doing those two Reboot to Recovery one more time. So go back into the reboot menu, choose reboot to recovery again (swipe to allow modifications if it asks). You must do this after formatting data.
3. Install Lineage
Links:
Lineage 18.1 XDA Thread
Official 6T Lineage Downloads
The phone should still be in TWRP at this point. You now need to copy Lineage to the phone. From TWRP's main menu choose install. Then navigate to your ROM .zip location and click on it. Then swipe to confirm flash.
Lineage will replace TWRP, so you need to reflash TWRP as well. Run the TWRP installer again. If it's not on the phone, just copy it over again real quick. On A/B devices ROMs get flashed to the opposite slot. Things like Gapps, Magisk, etc get flashed to the current slot. We need Lineage on both slots, so it must be flash again. Flashing it twice only needs to be done the first time as we need to get rid of OOS. For updates it just gets flashed once. After the TWRP installer has run, back out to the main menu, and choose reboot, then recovery:
Once back in TWRP flash Lineage again. From TWRP's main menu choose install. Then navigate to your ROM .zip location and click on it. Then swipe to confirm flash.
Now run the TWRP installer again. Back out to the main menu, and reboot to recovery.
4.Optional, Gapps
Links:
NikGapps <-- For Lineage 18.1 (Use the R Folders for Android 11. I recommend the "Core" version. I also tested Basic though if you want that level of Gapps. I strongly recommend you grab setup wizard out of the R Addons Folder, I used the regular setup wizard, not the pixel one.)
MindTheGapps <-- It's worth mentioning here Lineage recommends MindTheGapps for 18.1. Take your pick. I personally use NikGapps as I can use a "leaner" Gapps package.
Now that your phone is back in TWRP for the last time before booting up Lineage, it's time to install Gapps if you want them. This step is optional. Same as the other steps here, go to install, choose your OpenGapps package, Then navigate to your .zip location and click on it. Then swipe to confirm flash.
5. Very Optional, Magisk
These steps are very optional. However this is how I, root, pass safety net, and get a various apps to appear in the Play store.
Flash Magisk in TWRP. For Magisk 23, you now have to rename the Magisk.apk to Magisk.zip. Then flash it in TWRP. If you wanted to uninstall it, you rename it to uninstall.zip. If you already had an older version of Magisk installed, make sure you do not have it hidden / nenamed when installing Magisk 23 for the first time. Restore the original package before installing 23.
Magisk <-- Flash this right after Gapps.
These items are add-ons are flashed in Magisk after the first boot (Don't flash these in TWRP anymore):
MagiskHide Props Config
Busybox
To flash modules in Magisk press the puzzle piece icon. Then choose install from storage. Now just choose your addons. After flashing the icons it will have a reboot icon at the bottom. You can reboot or you can press back and flash another. After you are done reboot.
You will also need a Terminal Emulator. I personally use:
Terminal Emulator for Android
Once all these are installed the first step is setup Magisk. Under Magisk go to settings:
In version 20.4+ Magisk Hide is no longer on by default. So make sure the Magisk Hide, Hide Magisk from various forms of detection switch is flipped. Then press Hide Magisk Manager. This will bring up a box for you to choose a random name for the Magisk Manager, type whatever you want here. You can leave it Manager if you wish, but I typically change this.
Now open Magisk again. It will ask you to download it again, click ok, then manually open the app again as it says. Now we need to open Magisk hide. This is now under the shield icon, then click the arrow at the top:
These are the apps you don't want to know that you have root. Less is better. You can cause instability problems by just choosing everything. My general rule of thumb is, Google, steaming video, music, and payment apps get selected. In my experience if I come across an app that needs it and I didn't select it, I just clear cache and/or data and re-open the app and it works. There are some big multiplayer apps that ban hardware / people, so do your research (don't ask me, I don't play those games).
Next time to change the device fingerprint using MagiskHide Props Config Module. We do this using the terminal emulator. In the terminal emulator, type "su" to gain root privileges. Then type props to run the module:
Now it's just following the menus. Choose option 1 - Edit device finger print. (type 1, hit enter)
After this you will see a menu of devices. It doesn't matter what device you pick really. If you want apps / Google to think you have a OPPO or Samsung pick one of those Fingerprints. However there's a bit more to passing Safety-net than that. Since Google has changed how things work not all those fingerprints that used to work will work now. Also now you may get an error when you turn on the phone because of the security dates. The OP6T Android 10 fingerprint has no issues at this point, so use that if you want:
After choosing the fingerprint you want, it will ask you if you want to reboot. Choose yes. After rebooting, you may need to clear the cache from the play store for some apps to appear in it. You should now pass safety net. Check this in Magisk:
6. Very Optional, Ad Blocking with a Host File.
You can block many things with a hosts file, most popular would be ads. I've been use StevenBlack's host file which is a compilation of several hosts files. This is located on Github:
https://github.com/StevenBlack/hosts (Scroll down you'll see the options of what you can block)
Direct link to the hosts file I use. This will block Adware / Malware.
Unfortunately for quite some time now on this device you can no longer just use a root browser to swap the hosts file. The easiest way is to use TWRP.
First we have to make the hosts file. The hosts file must use unix / linux line endings. If you are using linux, don't worry about this, just create the file. If you are using Windows, the easiest thing to do is use Notepad++ (Free).
Notepad++ Downloads
Next one other caveat. The hosts file is quite large. I've never had much luck copy and pasting it from any other browser than Firefox (Windows or Linux), but however you get it into Notepad++ is not a big deal.
Once in you have the hosts file into Notepad++ go to Edit, EOL Conversion, and Choose Unix (LF).
Now save the file as "hosts" no ending. This does mean under file type you will need to change it to All File types *.*. Move this hosts file to your phone. Then reboot to recovery. From the main TWRP menu, choose mount. Then mount system:
Hit the back button and go to the advanced menu. Choose File Manager:
You will find your hosts file under /sdcard, wherever you placed it. In my case I placed it in a folder called ROMs. Once you locate it, press and hold it for a moment, and relase. Then choose copy file:
At this point you need to tell TWRP where you want to paste the hosts file. It belongs in the /etc folder. The only hic-cup here is depending on what you were doing in TWRP this could be (on this device) /system/etc or /system/system/etc (you will see similar folders to the image below if you are in the right place). Once you are there, press "paste?" button in the lower right corner:
After this just swipe to confirm:
You can now reboot the device, and your hosts file should now be in place. Your ad block should now be active for all apps as it's global for all connections.
7. Reboot to system.
Updating Lineage​
1. Flash Lineage.
Reboot to recovery. You can use the advanced reboot menu, or Volume Down + Power while turning the phone on. Don't wipe anything. From TWRP's main menu choose install. Then navigate to your ROM .zip location and click on it. Then swipe to confirm flash.
Lineage will replace TWRP, so you need to reflash TWRP as well. Run the TWRP installer again. After the TWRP installer has run, back out to the main menu, and choose reboot, then recovery:
2. Optional, Gapps (if you installed them once you must continue to install them or do a clean install)
Links:
NikGapps
Now that your phone is back in TWRP for the last time before booting up Lineage, it's time to install Gapps if you want them. This step is optional. Same as the other steps here, go to install, choose your OpenGapps package, Then navigate to your .zip location and click on it. Then swipe to confirm flash.
3. Reboot to system.
Last updated​Since I don't want people to have to wonder if these instructions are current, I am going to periodically test and update this post with my results. Please note I'm testing with a 6T, TMobile 6Ts are different. You can generally assume previous versions of LOS and OOS were also tested, but if you are unsure feel free to ask in this thread.
Last tested with:
OOS 10.3.7 and LOS 17.1 12-31 with TWRP 3.4.0-2
OOS 10.3.11 and LOS 18.1 05-27 with TWRP 3.5.2_9-0
This method has also been tested with:
OOS 10.3.3 and Omnirom 5-24 MicroG and Omnirom 5-24.
Cliff Notes
*TWRP 3.5.0_9-0+ Must be used with LOS 18 / 18.1
- Backup everything to the PC, so you will need to copy all your data over.
- Sync all your accounts, etc.
- In TWRP format data. Reboot recovery (This step wipes the device, make sure you backed everything up!)
- Factory Reset. (This is the slider at the bottom, do not Wipe system, do NOT Wipe Dalvik / ART, do not add anything else)
- Flash Lineage
- Flash TWRP Installer
- Reboot to Recovery
- Flash Lineage (This is only the first time, to get the AOSP rom on both slots, only do this for the first install)
- Flash TWRP Installer (This is only the first time, to get the AOSP rom on both slots, only do this for the first install)
- Reboot to Recovery (This is only the first time, to get the AOSP rom on both slots, only do this for the first install)
- Flash Gapps (Optional)
- Flash Magisk (Optional) (Remember for ver 22 the Magisk.apk gets renamed to Magisk.zip, can also be renamed to uninstall.zip for uninstalling)
- Reboot to System.
- Then you should be able to setup the device, copy everything back over. Restore your data.
After this you should be able to update Lineage as normal.
- Reboot to recovery
- Flash Lineage.
- Flash TWRP Installer
- Reboot to Recovery
- Flash Gapps. (Optional, but if you flashed them once you have to keep flashing them.)
- Flash Magisk. (Optional)
- Reboot to system.
- No loss of data, or anything.
Thanks for the guide, able to flash los 17.1 successfully.
How to go back to OOS?
Does anyone have a guide on how to go back to OOS after flashing Lineage according to Lineage's instructions?
fordjonathan said:
Does anyone have a guide on how to go back to OOS after flashing Lineage according to Lineage's instructions?
Click to expand...
Click to collapse
Back up your data, use Step 1 of these instructions. That will put OOS back on your phone.
MSM Tool, always my least favorite option, but always an option.
MSM Tools for Regular 6T (TMobile uses a different one)
installed 17.1!
OhioYJ said:
Installing Lineage...​
Click to expand...
Click to collapse
Massive thanks for your instructions!
- at first, I tried upgrading from LOS 16.0 to LOS 17.1. I followed the instructions on the wiki, but it landed me in the qualcomm crashdump mode.
- after that I ran into your instructions, and tried to follow your update guide, but it didn't help (not very surprising I guess, but I haven't had much to lose at this point ).
- after that, I just followed your fresh install guide (i.e. flashing the fastboot room and starting from scratch), followed every step and it worked!
I wonder if it's worth updating lineage OS wiki and pointing to your instructions? There is bunch of people in this thread, who also bricked the phone into crashdump, so perhaps it could help to prevent it for someone else.
Updating to LOS 17.1 ?
Dasseem said:
Thanks for the guide, able to flash los 17.1 successfully.
Click to expand...
Click to collapse
Initially I had problems with updating LOS, so I returned to Stock. As more people attempted to install LOS, and this fine Original Poster "Ohio" offered such excellent, and detailed instructions, I have been running LOS 16 since February.
However, I have not updated it, since I have had Zero Issues.
But to clarify, you used this method to update to LOS 17.1 ?
- coming from LOS 16 - without first returning to a fast-boot ROM ?
Did you up-date GApps accordingly during this Flash ?
Thank You, in advance, for any assistance!
:good:
barguybrady said:
But to clarify, you used this method to update to LOS 17.1 ?
- coming from LOS 16 - without first returning to a fast-boot ROM ?
Click to expand...
Click to collapse
Hi, I updated my previous reply to make it a bit more clear!
Yep, I was on LOS 16. Haven't had any issues, but figured why not update if I'll have to do it eventually
So I downloaded 17.1 and used the wiki instructions, which messed the phone up
Ended up flashing fastboot rom and starting from scratch, flashed gapps and magisk according to OhioYJ's instruction and it worked.
Flashing method
barguybrady said:
But to clarify, you used this method to update to LOS 17.1 ?
- coming from LOS 16 - without first returning to a fast-boot ROM ?
Did you up-date GApps accordingly during this Flash ?
Thank You, in advance, for any assistance!
:good:
Click to expand...
Click to collapse
I was using carbon ROM previously, had to move to OOS latest for flashing the lineage 17.1, believe it needs to be done if you are coming from pie, people know better correct me if I am wrong here.
As Karlicoss mentioned, it's better to follow the method posted by Ohio.
OhioYJ said:
Cliff Notes Versions
Installing Lineage
- Install fastboot ROM boot it once. Just to make sure everything is good.
- Reboot to fastboot.
- Boot the image of TWRP.
- Run the TWRP installer, reboot to recovery
- You backed everything up right?
- Factory reset (This is the slider at the bottom in the wipe menu).
- Format data. (This is the button that says Format data in the wipe menu)
- Do NOT wipe cache, do not Wipe system, do NOT Wipe Dalvik / ART, do not add anything else, Just Factory Reset and Format Data. After doing those two Reboot to Recovery one more time. You must do this after formatting data.
- Now transfer Lineage and TWRP to your phone, Windows / Linux should see TWRP fine as a media device when plugged in.
- Install Lineage
- Run the TWRP Installer.
- Reboot to Recovery.
- Install Lineage (You need Lineage on both slots, so yes run it again)
- Run the TWRP Installer (yes again).
- Reboot to Recovery.
- Install Gapps if you want them.
- Install Magisk if you use Magisk. Do not install modules or other add ons at this point. Boot once and go through the setup and everything, then install your add-ons.
- Be aware the phone may restart once, then Lineage will start up and all will be good.
Updating Lineage
- Reboot to recovery
- Flash Lineage.
- Flash TWRP Installer
- Reboot to Recovery
- Flash Gapps. (Assuming you use them, if you installed them once you must continue to install them or do a clean install)
- Flash Magisk. (Optional If you use it)
- Reboot to system.
- No loss of data, or anything.
- No need to flash anything twice etc.
Click to expand...
Click to collapse
Updating failed for me, as it shows everything encripted once I reboot the second time to recovery on slot B...
badpanda said:
Updating failed for me, as it shows everything encripted once I reboot the second time to recovery on slot B...
Click to expand...
Click to collapse
Usually this means you didnt format data, or you are using an old version of TWRP. Did you do a clean install?
I just tried it on my phone, was running 4-12 build, using 3.3.1-32 TWRP, updated to the 4-14 build, using 4-14 Gapps (nano), everything went smoothly here.
OhioYJ said:
Usually this means you didnt format data, or you are using an old version of TWRP. Did you do a clean install?
I just tried it on my phone, was running 4-12 build, using 3.3.1-32 TWRP, updated to the 4-14 build, using 4-14 Gapps (nano), everything went smoothly here.
Click to expand...
Click to collapse
No, no clean install. Just wanted to update to today's newest build os.
bump...
Thanks a lot for your guide. Very helpfull.
I'm using it with /e/ rom.
installing android 10 roms
I followed exactly as it was written. Same issues arose for me. After the phone is off then turned on no LTE. It makes phone calls and also text stuff. HOWEVER when you take out and reinsert sim LTE is enable. What is the problom?????????
sickpoppy said:
I followed exactly as it was written. Same issues arose for me. After the phone is off then turned on no LTE. It makes phone calls and also text stuff. HOWEVER when you take out and reinsert sim LTE is enable. What is the problom?????????
Click to expand...
Click to collapse
Just cycling airplane mode doesnt work? This isn't a TMobile 6T is it? You are in Sim slot 1? You maybe better asking in the LOS thread, and provide log it not working and then it working when you reinsert it. Im not quite sure whats going on there.
OhioYJ said:
Usually this means you didnt format data, or you are using an old version of TWRP. Did you do a clean install?
I just tried it on my phone, was running 4-12 build, using 3.3.1-32 TWRP, updated to the 4-14 build, using 4-14 Gapps (nano), everything went smoothly here.
Click to expand...
Click to collapse
So this means you do have to always format data for every single update??
---------- Post added at 09:07 PM ---------- Previous post was at 09:05 PM ----------
sickpoppy said:
I followed exactly as it was written. Same issues arose for me. After the phone is off then turned on no LTE. It makes phone calls and also text stuff. HOWEVER when you take out and reinsert sim LTE is enable. What is the problom?????????
Click to expand...
Click to collapse
Change your sim card to the other slot...
---------- Post added at 09:11 PM ---------- Previous post was at 09:07 PM ----------
@OhioYJ So for an update you boot to recovery flash LOS latest version then flash twrp again and then reboot to recovery second time then format data to possibly decript encrypted system and, transfer files both gapps and magisk to device and then install gapps and magisk, lastly just reboot to system?
reply
yes it is a tmobile but it was flashed to global. TWRP is the version you are using. downloaded the lastest ROM. Weird it finds LTE at first then like I said when then phone shuts off LTE doesnt work til I take sim out.
badpanda said:
So this means you do have to always format data for every single update??
Click to expand...
Click to collapse
No that would be ridiculous. Not necessary at all. You have something else going on, but I dont know what. My update procedure is exactly as listed on the OP, on two 6Ts, two different carriers.
sickpoppy said:
yes it is a tmobile but it was flashed to global. TWRP is the version you are using. downloaded the lastest ROM. Weird it finds LTE at first then like I said when then phone shuts off LTE doesnt work til I take sim out.
Click to expand...
Click to collapse
A TMobile "converted" to global does not equal a global 6T. Logs posted in the LOS thread, may help out other TMobile users? The TMobile 6Ts introduce all sorts of quirks, and Im afraid I dont have any experience with them, so hopefully another TMobile user will be able to help.

How To Guide [GUIDE] Pixel 5a "barbet": Unlock Bootloader, Update, Root, Pass SafetyNet

If you are looking for my guide on a different Pixel, find it here:
Pixel 3
Pixel 3XL
Pixel 3a
Pixel 3aXL
Pixel 4
Pixel 4XL
Pixel 4a
Pixel 4a (5G)
Pixel 5
Pixel 6
Pixel 6 Pro
For best results, use the latest stable Magisk release.
Discussion thread for migration to 24.0+.
Note: Magisk prior to Canary 23016 does not incorporate the necessary fixes for Android 12+.
WARNING: YOU AND YOU ALONE ARE RESPONSIBLE FOR ANYTHING THAT HAPPENS TO YOUR DEVICE. THIS GUIDE IS WRITTEN WITH THE EXPRESS ASSUMPTION THAT YOU ARE FAMILIAR WITH ADB, MAGISK, ANDROID, AND ROOT. IT IS YOUR RESPONSIBILITY TO ENSURE YOU KNOW WHAT YOU ARE DOING.
Prerequisites:
Latest SDK Platform Tools - if Platform Tools is out of date, you WILL run into problems!
USB Debugging enabled
Google USB Driver installed
I recommend using Command Prompt for these instructions; some users have difficulty with PowerShell.
Make sure the Command Prompt is running from your Platform Tools directory!
Android Source - Setting up a device for development
Spoiler: Downloads
Pixel OTA Images
Pixel Factory Images
Magisk Stable, Magisk Canary - Magisk GitHub
Spoiler: Unlock Bootloader
Follow these instructions to enable Developer Options and USB Debugging.
Enable OEM Unlocking. If this option is grayed out, unlocking the bootloader is not possible.
Connect your device to your PC, and open a command window in your Platform Tools folder.
Ensure ADB sees your device:
Code:
adb devices
If you don't see a device, make sure USB Debugging is enabled, reconnect the USB cable, or try a different USB cable.
If you see "unauthorized", you need to authorize the connection on your device.
If you see the device without "unauthorized", you're good to go.
Reboot to bootloader:
Code:
adb reboot bootloader
Unlock bootloader: THIS WILL WIPE YOUR DEVICE!
Code:
fastboot flashing unlock
Select Continue on the device screen.
Spoiler: Initial Root / Create Master Root Image
Install Magisk on your device.
Download the factory zip for your build.
Inside the factory zip is the update zip: "device-image-buildnumber.zip". Open this, and extract boot.img
Copy boot.img to your device.
Patch boot.img with Magisk: "Install" > "Select and Patch a File"
Copy the patched image back to your PC. It will be named "magisk_patched-23xxx_xxxxx.img". Rename this to "master root.img" and retain it for future updates.
Reboot your device to bootloader.
Flash the patched image:
Code:
fastboot flash boot <drag and drop master root.img here>
Reboot to Android. Open Magisk to confirm root - under Magisk at the top, you should see "Installed: <Magisk build number>
Spoiler: Update and Root Automatic OTA
Before you download the OTA, open Magisk, tap Uninstall, then Restore Images. If you have any Magisk modules that modify system, uninstall them now.
Take the OTA update when prompted. To check for updates manually, go to Settings > System > System Update > Check for Update
Allow the update to download and install. DO NOT REBOOT WHEN PROMPTED. Open Magisk, tap Install at the top, then Install to inactive slot. Magisk will then reboot your device.
You should now be updated with root.
Spoiler: Update and Root OTA Sideload
Download the OTA.
Reboot to recovery and sideload the OTA:
Code:
adb reboot sideload
Once in recovery:
Code:
adb sideload ota.zip
When the OTA completes, you will be in recovery mode. Select "Reboot to system now".
Allow system to boot and wait for the update to complete. You must let the system do this before proceeding.
Reboot to bootloader.
Boot the master root image (See note 1):
Code:
fastboot boot <drag and drop master root.img here>
Note: If you prefer, you can download the factory zip and manually patch the new boot image, then flash it after the update. Do not flash an older boot image after updating.
Your device should boot with root. Open Magisk, tap Install, and select Direct Install.
Reboot your device. You should now be updated with root.
Note: You can use Payload Dumper to extract the contents of the OTA if you want to manually patch the new boot image. However, I will not cover that in this guide.
Spoiler: Update and Root Factory Image
Please note that the factory update process expects an updated bootloader and radio. If these are not up to date, the update will fail.
Download the factory zip and extract the contents.
Reboot to bootloader.
Spoiler: Update bootloader if necessary
Compare bootloader versions between phone screen and bootloader.img build number
Code:
fastboot flash bootloader <drag and drop new bootloader.img here>
If bootloader is updated, reboot to bootloader.
Spoiler: Update radio if necessary
Compare baseband versions between phone screen and radio.img build number
Code:
fastboot flash radio <drag and drop radio.img here>
If radio is updated, reboot to bootloader.
Apply update:
Code:
fastboot update --skip-reboot image-codename-buildnumber.zip
When the update completes, the device will be in fastbootd. Reboot to bootloader.
Boot the master root image (See note 1):
Code:
fastboot boot <drag and drop master root.img here>
Note: If you prefer, you can manually patch the new boot image, then flash it after the update. Do not flash an older boot image after updating.
Your device should boot with root. Open Magisk, tap Install, and select Direct Install.
Reboot your device. You should now be updated with root.
Note: If you prefer, you can update using the flash-all script included in the factory zip. You will have to copy the script, bootloader image, radio image, and update zip into the Platform Tools folder; you will then have to edit the script to remove the -w option so it doesn't wipe your device.
The scripted commands should look like this:
Code:
fastboot flash bootloader <bootloader image name>
fastboot reboot bootloader
ping -n 5 127.0.0.1 > nul
fastboot flash radio <radio image name>
fastboot reboot bootloader
ping -n 5 127.0.0.1 > nul
fastboot update --skip-reboot <image-device-buildnumber.zip>
Once this completes, you can reboot to bootloader and either boot your master patched image, or if you patched the new image, flash it at this time.
Spoiler: Update and Root using PixelFlasher <<RECOMMENDED FOR NOVICES>>
PixelFlasher by @badabing2003 is an excellent tool that streamlines the update process - it even patches the boot image for you.
The application essentially automates the ADB interface to make updating and rooting much easier. However, it is STRONGLY recommended that you still learn the "basics" of using ADB.
For instructions, downloads, and support, please refer to the PixelFlasher thread.
Spoiler: Update and Root using the Android Flash Tool
Follow the instructions on the Android Flash Tool to update your device. Make sure Lock Bootloader and Wipe Device are UNCHECKED.
When the update completes, the device will be in fastbootd. Reboot to bootloader.
Boot the master root image (See note 1):
Code:
fastboot boot <drag and drop master root.img here>
Note: If you prefer, you can download the factory zip and manually patch the new boot image, then flash it after the update. Do not flash an older boot image after updating.
Your device should boot with root. Open Magisk, tap Install, and select Direct Install.
Reboot your device. You should now be updated with root.
Spoiler: Pass SafetyNet/Play Integrity
SafetyNet has been deprecated for the new Play Integrity API. More information here.
In a nutshell, Play Integrity uses the same mechanisms as SafetyNet for the BASIC and DEVICE verdicts, but uses the Trusted Execution Environment to validate those verdicts. TEE does not function on an unlocked bootloader, so legacy SafetyNet solutions will fail.
However, @Displax has modified the original Universal SafetyNet Fix by kdrag0n; his mod is able to force basic attestation instead of hardware, meaning that the device will pass BASIC and DEVICE integrity.
Mod available here. Do not use MagiskHide Props Config with this mod.
This is my configuration that is passing Safety Net. I will not provide instructions on how to accomplish this. Attempt at your own risk.
Zygisk + DenyList enabled
All subcomponents of these apps hidden under DenyList:
Google Play Store
GPay
Any banking/financial apps
Any DRM media apps
Modules:
Universal SafetyNet Fix 2.3.1 Mod - XDA post
To check SafetyNet status:
YASNAC - GitHub
To check Play Integrity status:
Play Integrity Checker - NOTE: MEETS_STRONG_INTEGRITY will ALWAYS fail on an unlocked bootloader.
I do not provide support for Magisk or modules. If you need help with Magisk, here is the Magisk General Support thread. For support specifically with Magisk v24+, see this thread.
Points of note:
The boot image is NOT the bootloader image. Do not confuse the two - YOU are expected to know the difference. Flashing the wrong image to bootloader could brick your device.
While the Magisk app is used for patching the boot image, the app and the patch are separate. This is what you should see in Magisk for functioning root:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
"Installed" shows the version of patch in the boot image. If this says N/A, you do not have root access - the boot image is not patched, or you have a problem with Magisk.
"App" simply shows the version of the app itself.
If you do not have a patched master boot image, you will need to download the factory zip if you haven't already, extract the system update inside it, then patch boot.img.
If you prefer updating with the factory image, you can also extract and manually patch the boot image if desired.
Some Magisk modules, especially those that modify read only partitions like /system, may cause a boot loop after updating. As a general rule, disable these modules before updating. You are responsible for knowing what you have installed, and what modules to disable.
Credits:
Thanks to @badabing2003 , @pndwal , @Displax , @Az Biker , @ipdev , @kdrag0n , @Didgeridoohan , and last but not least, @topjohnwu for all their hard work!
Thank you so so much! I've successfully updated from October 2021 build to November 2021 build without any issues by following your guide. Bunch of thanks again.
I'm currently using Magisk Canary build?
May I Install Magisk Beta and also Magisk Stable build to the latest November 2021 build?
Rafiul Bari Chowdhury said:
Thank you so so much! I've successfully updated from October 2021 build to November 2021 build without any issues by following your guide. Bunch of thanks again.
Click to expand...
Click to collapse
Coming from the Pixel 3XL, which bricked out of the blue. I did every update on that phone, but never got to do 12 before the magical brick. I want to update this phone (5a, which I just realized is different than the 5?), but this seems to be missing quite a few steps. Shouldn't there be 4 different files added to your SDK folder and flashed, or has it completely changed, and I need to do more digging? Thanks.
Is there any way to do this after already updating? Or do I have to wait for the next update (I prefer flashing factory images).
I flashed the Nov factory image but forgot to disable the verified boot. Is there any way I can disable it so i can flash the magisk patched boot?
Rafiul Bari Chowdhury said:
I'm currently using Magisk Canary build?
May I Install Magisk Beta and also Magisk Stable build to the latest November 2021 build?
Click to expand...
Click to collapse
I honestly don't know. I've used Magisk 22.1, 23.0, Canary 23001 through 23011, all have worked for me.
The caveat is that Magisk 23010+ is Zygisk, which means that some legacy modules won't work anymore until they're updated - Universal SafetyNet Fix for example.
mcwups1 said:
Coming from the Pixel 3XL, which bricked out of the blue. I did every update on that phone, but never got to do 12 before the magical brick. I want to update this phone (5a, which I just realized is different than the 5?), but this seems to be missing quite a few steps. Shouldn't there be 4 different files added to your SDK folder and flashed, or has it completely changed, and I need to do more digging? Thanks.
Click to expand...
Click to collapse
You don't have to add any files to your SDK folder, you can always drag and drop them into the command line window. We are only working with two files here: vbmeta.img and boot.img.
EXV said:
Is there any way to do this after already updating? Or do I have to wait for the next update (I prefer flashing factory images).
Click to expand...
Click to collapse
You can do this as many times as you want. The critical point to remember is that if you allow Android to boot after not disabling verity/verification, you will have to wipe the next time you disable it.
EXV said:
I flashed the Nov factory image but forgot to disable the verified boot. Is there any way I can disable it so i can flash the magisk patched boot?
Click to expand...
Click to collapse
Yes...but you're going to have to wipe data. Extract vbmeta.img, and reflash it:
Code:
fastboot flash vbmeta --disable-verity --disable-verification <drag and drop vbmeta.img here>
Then, reboot your device. You will end up in Rescue Party, with the option to "Try again" or "Factory data reset". Choose the factory reset.
The best way to make sure you don't have to wipe your data is to always use --disable-verity --disable-verification when updating via the factory image.
Updated to November build with no problems, didn't like the new security patch - file managers targeting API 26 and below can no longer display/access other's apps data directories, hole is plugged, so went back to October build and had to wipe data to boot. So downgrading within same Android version also requires data wipe.
No more updates for me, sticking with October build...
I was on latest version of Android 11, rooted. I followed your third method using Android Flash Tool, and had both disable verity and verification checked. The Android flash tool says I may disconnect the phone. The phone is now stuck during boot, saying cannot load android system, data may be corrupt, may need to perform factory data reset and erase all user data, or try again. Trying again causes the boot loop. Any suggestions? Prefer not to perform factory data reset.
I got my phone back into bootloader and followed your second method via fastboot. I also arrived at the same error.
I tried the same thing on my wife's pixel 5a as well. Same errors.
I selected factory data reset and my phone boots up fine. Guess I had to reset my phone anyway, despite this guide. Hoping I don't have to reset my wife's phone. It's currently stuck at boot, but I can get into fastboot.
tintn00+xda said:
I was on latest version of Android 11, rooted. I followed your third method using Android Flash Tool, and had both disable verity and verification checked. The Android flash tool says I may disconnect the phone. The phone is now stuck during boot, saying cannot load android system, data may be corrupt, may need to perform factory data reset and erase all user data, or try again. Trying again causes the boot loop. Any suggestions? Prefer not to perform factory data reset.
Click to expand...
Click to collapse
This guide is for only Android 12. And you can't get your now at any cost.
That's a bummer. Guess there should be a disclaimer about going from Android 11 to 12. Good thing everything is backed up.
tintn00+xda said:
I tried the same thing on my wife's pixel 5a as well. Same errors.
I selected factory data reset and my phone boots up fine. Guess I had to reset my phone anyway, despite this guide. Hoping I don't have to reset my wife's phone. It's currently stuck at boot, but I can get into fastboot.
Click to expand...
Click to collapse
This guide was intended for updating, not for root.
If it wasn't clear in the guide, you will have to wipe data when you disable verity and verification, if they were not already disabled.
tintn00+xda said:
That's a bummer. Guess there should be a disclaimer about going from Android 11 to 12. Good thing everything is backed up.
Click to expand...
Click to collapse
It's at the very top of the post...
V0latyle said:
As many of you know by now, in order to run a patched boot image on Android 12 requires disabling Android Verified Boot.
Verified Boot on Android 12 devices, at least Pixels with the SD765G and Tensor, is tied to device encryption. Therefore, disabling Verified Boot requires a wipe, if it was not previously disabled.
Click to expand...
Click to collapse
This is why it's important to read the entire post, and ask questions if you don't understand something before you proceed.
Thanks a lot! This is my first device with verified boot / encryption linked - after crosshatch, and I have almost messed things up (just manually typed commands from memory), until I remembered this post.
Updated, everything is great.
December patch has brought bootanimation with different colours (Material You blahblah), made me freak out a little bit - I thought something went wrong.
I was always used to updating factory images (removing the -w) via ADB so none of my data would be wiped. But since the methods listed above don't include removing the -w from the zip, will any of those methods wipe my data while applying the update? I wanted to try the Android Flash Tool but got a bit paranoid since I didn't want my data wiped (I know there was a checkbox option to wipe the data, but I just want reassurance since with my luck, it'll probably brick my phone for no reason).
EXV said:
I was always used to updating factory images (removing the -w) via ADB so none of my data would be wiped. But since the methods listed above don't include removing the -w from the zip, will any of those methods wipe my data while applying the update? I wanted to try the Android Flash Tool but got a bit paranoid since I didn't want my data wiped (I know there was a checkbox option to wipe the data, but I just want reassurance since with my luck, it'll probably brick my phone for no reason).
Click to expand...
Click to collapse
Are you already rooted?
I personally don't use the flashall.bat method; I'm "old fashioned" and prefer to type the commands myself.
If you do use the script, just edit the "fastboot update" command to omit -w and include --disable options:
Code:
fastboot update image-barbet-buildnumber.zip --disable-verity --disable-verification
If you patch the boot image beforehand, you can add --skip-reboot, then once the update finishes, reboot to bootloader and flash the patched image.
Followed directions for recommended Android Flash Tool and everything worked flawlessly. If you've already rooted your phone once then you have somewhat of an idea of what you're doing. Just read everything twice and follow the directions. Thank you OP for such a clear path to update and root!
Magisk Canary was updated to 23016 last night. This includes a fix for the vbmeta header issue, meaning that disabling verity/verification should no longer be required, and we should be able to root as we did before.
I will be updating the OP to reflect this.
V0latyle said:
Magisk Canary was updated to 23016 last night. This includes a fix for the vbmeta header issue, meaning that disabling verity/verification should no longer be required, and we should be able to root as we did before. This needs testing, make sure you back up your data and photos before you try this!
I will be updating the OP to reflect this.
Click to expand...
Click to collapse
Just updated my wifes 5a-5G (non-root, verity/vbmeta enabled) to Dec update. Was able to root via flashing the patched boot.img with v23016 without a factory reset! Great news that John is still working on this tool and making all of our lives easier.
Someone want to test this?
Requirement: Pixel 4a, 5, 5a, 6, 6 Pro rooted with Magisk 23016
Reboot into bootloader and reflash vbmeta without flags.
Reboot to system.
Reboot to bootloader again, re-reflash vbmeta with disable flags.
Reboot to system. If you get the Rescue Party corruption message, just reboot to bootloader and reflash vbmeta without flags.
Report results here.

[GUIDE] Pixel 4 "flame": Unlock Bootloader, Update, Root, Pass SafetyNet

If you are looking for my guide on a different Pixel, find it here:
Pixel 3
Pixel 3XL
Pixel 3a
Pixel 3aXL
Pixel 4XL
Pixel 4a
Pixel 4a (5G)
Pixel 5
Pixel 5a
Pixel 6
Pixel 6 Pro
For best results, use the latest stable Magisk release.
Discussion thread for migration to 24.0+.
Note: Magisk prior to Canary 23016 does not incorporate the necessary fixes for Android 12+.
WARNING: YOU AND YOU ALONE ARE RESPONSIBLE FOR ANYTHING THAT HAPPENS TO YOUR DEVICE. THIS GUIDE IS WRITTEN WITH THE EXPRESS ASSUMPTION THAT YOU ARE FAMILIAR WITH ADB, MAGISK, ANDROID, AND ROOT. IT IS YOUR RESPONSIBILITY TO ENSURE YOU KNOW WHAT YOU ARE DOING.
Prerequisites:
Latest SDK Platform Tools - if Platform Tools is out of date, you WILL run into problems!
USB Debugging enabled
Google USB Driver installed
I recommend using Command Prompt for these instructions; some users have difficulty with PowerShell.
Make sure the Command Prompt is running from your Platform Tools directory!
Android Source - Setting up a device for development
Spoiler: Downloads
Pixel OTA Images
Pixel Factory Images
Magisk Stable, Magisk Canary - Magisk GitHub
Spoiler: Unlock Bootloader
Follow these instructions to enable Developer Options and USB Debugging.
Enable OEM Unlocking. If this option is grayed out, unlocking the bootloader is not possible.
Connect your device to your PC, and open a command window in your Platform Tools folder.
Ensure ADB sees your device:
Code:
adb devices
If you don't see a device, make sure USB Debugging is enabled, reconnect the USB cable, or try a different USB cable.
If you see "unauthorized", you need to authorize the connection on your device.
If you see the device without "unauthorized", you're good to go.
Reboot to bootloader:
Code:
adb reboot bootloader
Unlock bootloader: THIS WILL WIPE YOUR DEVICE!
Code:
fastboot flashing unlock
Select Continue on the device screen.
Spoiler: Initial Root / Create Master Root Image
Install Magisk on your device.
Download the factory zip for your build.
Inside the factory zip is the update zip: "device-image-buildnumber.zip". Open this, and extract boot.img
Copy boot.img to your device.
Patch boot.img with Magisk: "Install" > "Select and Patch a File"
Copy the patched image back to your PC. It will be named "magisk_patched-23xxx_xxxxx.img". Rename this to "master root.img" and retain it for future updates.
Reboot your device to bootloader.
Flash the patched image:
Code:
fastboot flash boot <drag and drop master root.img here>
Reboot to Android. Open Magisk to confirm root - under Magisk at the top, you should see "Installed: <Magisk build number>
Spoiler: Update and Root Automatic OTA
Before you download the OTA, open Magisk, tap Uninstall, then Restore Images. If you have any Magisk modules that modify system, uninstall them now.
Take the OTA update when prompted. To check for updates manually, go to Settings > System > System Update > Check for Update
Allow the update to download and install. DO NOT REBOOT WHEN PROMPTED. Open Magisk, tap Install at the top, then Install to inactive slot. Magisk will then reboot your device.
You should now be updated with root.
Spoiler: Update and Root OTA Sideload
Download the OTA.
Reboot to recovery and sideload the OTA:
Code:
adb reboot sideload
Once in recovery:
Code:
adb sideload ota.zip
When the OTA completes, you will be in recovery mode. Select "Reboot to system now".
Allow system to boot and wait for the update to complete. You must let the system do this before proceeding.
Reboot to bootloader.
Boot the master root image (See note 1):
Code:
fastboot boot <drag and drop master root.img here>
Note: If you prefer, you can download the factory zip and manually patch the new boot image, then flash it after the update. Do not flash an older boot image after updating.
Your device should boot with root. Open Magisk, tap Install, and select Direct Install.
Reboot your device. You should now be updated with root.
Note: You can use Payload Dumper to extract the contents of the OTA if you want to manually patch the new boot image. However, I will not cover that in this guide.
Spoiler: Update and Root Factory Image
Please note that the factory update process expects an updated bootloader and radio. If these are not up to date, the update will fail.
Download the factory zip and extract the contents.
Reboot to bootloader.
Spoiler: Update bootloader if necessary
Compare bootloader versions between phone screen and bootloader.img build number
Code:
fastboot flash bootloader <drag and drop new bootloader.img here>
If bootloader is updated, reboot to bootloader.
Spoiler: Update radio if necessary
Compare baseband versions between phone screen and radio.img build number
Code:
fastboot flash radio <drag and drop radio.img here>
If radio is updated, reboot to bootloader.
Apply update:
Code:
fastboot update --skip-reboot image-codename-buildnumber.zip
When the update completes, the device will be in fastbootd. Reboot to bootloader.
Boot the master root image (See note 1):
Code:
fastboot boot <drag and drop master root.img here>
Note: If you prefer, you can manually patch the new boot image, then flash it after the update. Do not flash an older boot image after updating.
Your device should boot with root. Open Magisk, tap Install, and select Direct Install.
Reboot your device. You should now be updated with root.
Note: If you prefer, you can update using the flash-all script included in the factory zip. You will have to copy the script, bootloader image, radio image, and update zip into the Platform Tools folder; you will then have to edit the script to remove the -w option so it doesn't wipe your device.
The scripted commands should look like this:
Code:
fastboot flash bootloader <bootloader image name>
fastboot reboot bootloader
ping -n 5 127.0.0.1 > nul
fastboot flash radio <radio image name>
fastboot reboot bootloader
ping -n 5 127.0.0.1 > nul
fastboot update --skip-reboot <image-device-buildnumber.zip>
Once this completes, you can reboot to bootloader and either boot your master patched image, or if you patched the new image, flash it at this time.
Spoiler: Update and Root using PixelFlasher <<RECOMMENDED FOR NOVICES>>
PixelFlasher by @badabing2003 is an excellent tool that streamlines the update process - it even patches the boot image for you.
The application essentially automates the ADB interface to make updating and rooting much easier. However, it is STRONGLY recommended that you still learn the "basics" of using ADB.
For instructions, downloads, and support, please refer to the PixelFlasher thread.
Spoiler: Update and Root using the Android Flash Tool
Follow the instructions on the Android Flash Tool to update your device. Make sure Lock Bootloader and Wipe Device are UNCHECKED.
When the update completes, the device will be in fastbootd. Reboot to bootloader.
Boot the master root image (See note 1):
Code:
fastboot boot <drag and drop master root.img here>
Note: If you prefer, you can download the factory zip and manually patch the new boot image, then flash it after the update. Do not flash an older boot image after updating.
Your device should boot with root. Open Magisk, tap Install, and select Direct Install.
Reboot your device. You should now be updated with root.
Spoiler: Pass SafetyNet/Play Integrity
SafetyNet has been deprecated for the new Play Integrity API. More information here.
In a nutshell, Play Integrity uses the same mechanisms as SafetyNet for the BASIC and DEVICE verdicts, but uses the Trusted Execution Environment to validate those verdicts. TEE does not function on an unlocked bootloader, so legacy SafetyNet solutions will fail.
However, @Displax has modified the original Universal SafetyNet Fix by kdrag0n; his mod is able to force basic attestation instead of hardware, meaning that the device will pass BASIC and DEVICE integrity.
Mod available here. Do not use MagiskHide Props Config with this mod.
This is my configuration that is passing Safety Net. I will not provide instructions on how to accomplish this. Attempt at your own risk.
Zygisk + DenyList enabled
All subcomponents of these apps hidden under DenyList:
Google Play Store
GPay
Any banking/financial apps
Any DRM media apps
Modules:
Universal SafetyNet Fix 2.3.1 Mod - XDA post
To check SafetyNet status:
YASNAC - GitHub
To check Play Integrity status:
Play Integrity Checker - NOTE: MEETS_STRONG_INTEGRITY will ALWAYS fail on an unlocked bootloader.
I do not provide support for Magisk or modules. If you need help with Magisk, here is the Magisk General Support thread. For support specifically with Magisk v24+, see this thread.
Points of note:
The boot image is NOT the bootloader image. Do not confuse the two - YOU are expected to know the difference. Flashing the wrong image to bootloader could brick your device.
While the Magisk app is used for patching the boot image, the app and the patch are separate. This is what you should see in Magisk for functioning root:
{
"lightbox_close": "Close",
"lightbox_next": "Next",
"lightbox_previous": "Previous",
"lightbox_error": "The requested content cannot be loaded. Please try again later.",
"lightbox_start_slideshow": "Start slideshow",
"lightbox_stop_slideshow": "Stop slideshow",
"lightbox_full_screen": "Full screen",
"lightbox_thumbnails": "Thumbnails",
"lightbox_download": "Download",
"lightbox_share": "Share",
"lightbox_zoom": "Zoom",
"lightbox_new_window": "New window",
"lightbox_toggle_sidebar": "Toggle sidebar"
}
"Installed" shows the version of patch in the boot image. If this says N/A, you do not have root access - the boot image is not patched, or you have a problem with Magisk.
"App" simply shows the version of the app itself.
If you do not have a patched master boot image, you will need to download the factory zip if you haven't already, extract the system update inside it, then patch boot.img.
If you prefer updating with the factory image, you can also extract and manually patch the boot image if desired.
Some Magisk modules, especially those that modify read only partitions like /system, may cause a boot loop after updating. As a general rule, disable these modules before updating. You are responsible for knowing what you have installed, and what modules to disable.
Credits:
Thanks to @badabing2003 , @pndwal , @Displax , @Az Biker , @ipdev , @kdrag0n , @Didgeridoohan , and last but not least, @topjohnwu for all their hard work!
@V0latyle The Pixel phone I'm rooting belongs to a friend who wants it rooted. Prior to doing anything (thankfully!), I established that the phone is actually a Pixel 4, not a 4a.
I downloaded the correct stock image for that model and then followed all your instructions. This included updating the bootloader and radio from the factory stock zip before flashing the Magisk-patched boot image.
Everything went well and the phone is now rooted with your recommended Magisk modules to pass SafetyNet. However, the wifi no longer works on the phone. I don't have his sim to test if mobile signal/data works. Thinking the problem might be the new radio, I found and reflashed the oId radio image but no joy.
What steps do I need to take to resolve the situation and get wifi working again?
Thanks for your help.
UPDATE: I've managed to restore the phone back to stock firmware (Mar 22 flame for Pixel 4 - the version it was given to me in) ang got the wifi working again. The bootloader is still unlocked. I cannot figure out what I did in the rooting process that affected the functioning of the wifi
largeruk said:
@V0latyle The Pixel phone I'm rooting belongs to a friend who wants it rooted. Prior to doing anything (thankfully!), I established that the phone is actually a Pixel 4, not a 4a.
I downloaded the correct stock image for that model and then followed all your instructions. This included updating the bootloader and radio from the factory stock zip before flashing the Magisk-patched boot image.
Everything went well and the phone is now rooted with your recommended Magisk modules to pass SafetyNet. However, the wifi no longer works on the phone. I don't have his sim to test if mobile signal/data works. Thinking the problem might be the new radio, I found and reflashed the oId radio image but no joy.
What steps do I need to take to resolve the situation and get wifi working again?
Thanks for your help.
UPDATE: I've managed to restore the phone back to stock firmware (Mar 22 flame for Pixel 4 - the version it was given to me in) ang got the wifi working again. The bootloader is still unlocked. I cannot figure out what I did in the rooting process that affected the functioning of the wifi
Click to expand...
Click to collapse
I had your post moved to this thread to keep the other one on topic.
I don't think there's anything you could have possibly done during the flashing or patching process to cause WiFi to stop working. Try again using the latest update; make absolutely sure it's for "flame", no other version.
Dear
V0latyle​Will the magisk posted here and process work on latest Android 13 build ?
Many Thanks
zerodi said:
Dear
V0latyle​Will the magisk posted here and process work on latest Android 13 build ?
Many Thanks
Click to expand...
Click to collapse
Rooting Android 13 works exactly the same way as Android 12 and 11. Just make sure you're using the latest Magisk release, which should be 25.3.
V0latyle said:
Rooting Android 13 works exactly the same way as Android 12 and 11. Just make sure you're using the latest Magisk release, which should be 25.3.
Click to expand...
Click to collapse
excellent many thanks

Categories

Resources