Stock TMo US + Root + Xposed + TWRP - Nexus 6 Q&A, Help & Troubleshooting

With the information to the title and with M coming soon, can I:
1) Update over the air?
2) Update over the air if I install a custom kernel?

Root, Xposed, TWRP, and a custom kernel will each make it so you can't install an OTA.

With that said, I'll have to keep doing fresh installs if I'm doing an ADB-like install with root, right? Or, can those be dirty flashed like you could with a custom recovery (no dirty flash from L to M, obviously)?

Don_Perrignon said:
With that said, I'll have to keep doing fresh installs if I'm doing an ADB-like install with root, right? Or, can those be dirty flashed like you could with a custom recovery (no dirty flash from L to M, obviously)?
Click to expand...
Click to collapse
You basically have two options. Flash the necessary bits through fastboot. Google provides the factory images usually pretty quickly, sometimes before the OTAs even start going out. There are guides on the site on how to use fastboot, as well as guides on how to flash updates without wiping. Basically you just flash the necessary parts (kernel, radio, system, and perhaps bootloader), making sure not to use the -w flag and to not flash the userdata image.
Or wait until someone makes a TWRP flashable one, and use that.
You may not have to wipe if you are stock with root. If you are on a non-Google build, then you probably will need to wipe. There are things that can get screwy after an update though, so never say 100% for certain you won't need to wipe. Generally speaking though, you should be fine if you are on an official Google built ROM. You will likely have to re-root after you flash the update as well, but that should be as easy as flashing a zip in TWRP.
Another thing to consider, if you have removed encryption from your device, flashing the stock kernel will force encryption again if you allow it to boot into Android. So if you want to avoid that you will need to flash a compatible kernel that doesn't force encryption. If you are still encrypted, then it doesn't really matter.

cupfulloflol said:
You basically have two options. Flash the necessary bits through fastboot. Google provides the factory images usually pretty quickly, sometimes before the OTAs even start going out. There are guides on the site on how to use fastboot, as well as guides on how to flash updates without wiping. Basically you just flash the necessary parts (kernel, radio, system, and perhaps bootloader), making sure not to use the -w flag and to not flash the userdata image.
Or wait until someone makes a TWRP flashable one, and use that.
You may not have to wipe if you are stock with root. If you are on a non-Google build, then you probably will need to wipe. There are things that can get screwy after an update though, so never say 100% for certain you won't need to wipe. Generally speaking though, you should be fine if you are on an official Google built ROM. You will likely have to re-root after you flash the update as well, but that should be as easy as flashing a zip in TWRP.
Another thing to consider, if you have removed encryption from your device, flashing the stock kernel will force encryption again if you allow it to boot into Android. So if you want to avoid that you will need to flash a compatible kernel that doesn't force encryption. If you are still encrypted, then it doesn't really matter.
Click to expand...
Click to collapse
Thank you!

Related

[Q] How to flash OTA updates once rooted/custom recovery?

Hi Nexus 6 experts -
My Nexus 6 arrived today, so of course the first thing I did was follow this thread to unlock the boot loader, gain root, and TWRP:
http://forum.xda-developers.com/nexus-6/general/how-to-nexus-6-one-beginners-guide-t2948481
Now I'm reading about how this breaks OTA updates, and after 30 minutes of looking for the right answer across the forums, I'm in need of some more accurate advice.
1. Is this the right location for downloading factory images?
https://developers.google.com/android/nexus/images
Part of my confusion stems from the fact that my build number for 5.0 is currently LNX07M, and the one listed for 5.0 is LRX21O. Does this matter at all? Could I flash the files from 5.0.1 (LRX22C) without any issue?
2. In order to flash 5.0.1, is this the right procedure to follow?
http://forum.xda-developers.com/showpost.php?p=57411133&postcount=75
I'm looking for how to flash the right images in the right sequence with fastboot, as I'd rather not use any toolkits. The aforementioned post flashes the radio image, then the system image. Is anything else missing there?
3. I'm assuming I need to re-flash root again after this point - is the version listed in the beginners guide still applicable?
Since I've had the phone for all of 2 hours I'm trying my best not to brick it. Any insight would be appreciated, thanks!
EDIT: Download the factory images from the google link above and extract everything. The first extraction renders the radio and bootloader images, along with a zip file. Extract the zip file and you'll find the boot, cache, recovery, and system images. Using fastboot is easy:
fastboot flash <type> <filename>
example:
fastboot flash system system.img
As far as I can tell, <type> is specific to every file. Very easy, only takes a few minutes, and you only need to flash what you need.
Yes Lollipop requires 100% stock for OTA updates now. But OTA is overrated
1. Yes indeed. thats the right place. Wasn't LNX07M the pre-release developer preview?
2. The image contains a flash-all script for windows and linux, but this will wipe data (unless you remove the -w i believe) but I prefer to flash individually.
flashing Radio isnt essential but you will probably want to try it at least. You also want to flash the system and boot images (boot image is the kernel). Then flash SuperSU from recovery. I know OTA's have a script that replace your recovery on first boot if you dont immediately root. I havent flashed a factory image for a whiole so not sure if these have them too, so just a word of caution there.
3. I tend to go for the latest from the beta thread personally, but there is no hard going for older versions except that some things might not gain root properly due to the changes with SElinux etc
Hey thanks rootSU - this is exactly what I was looking for! Once I run through that process I'll add the details to my original post.
So I am on LRX210, rooted and am running twrp recovery. Sounds like I should download the 5.0.1 image and flash the boot, cache, recovery, system, and radio files individually, correct?
Any specific order?
scotbotmosh said:
So I am on LRX210, rooted and am running twrp recovery. Sounds like I should download the 5.0.1 image and flash the boot, cache, recovery, system, and radio files individually, correct?
Any specific order?
Click to expand...
Click to collapse
I only flashed a few of the files, like boot, system and radio. Recovery will remove twrp so you don't want that. Order doesn't seem to matter.
im on 5.01 decrypted boot img...if 5.02 comes out all i do is flash an xda modded 5.02 img boot decrypted file and all the other files except for userdata.img to save all my data and files/settings right? no neeed to revert back to stock, update to ota official 5.02, blah blah ...
cobyman7035 said:
im on 5.01 decrypted boot img...if 5.02 comes out all i do is flash an xda modded 5.02 img boot decrypted file and all the other files except for userdata.img to save all my data and files/settings right? no neeed to revert back to stock, update to ota official 5.02, blah blah ...
Click to expand...
Click to collapse
Yeah you shouldn't need to revert/unroot and use the OTA. Just flash what you need from the factory image. System is the only major one to flash, boot would be the kernel, so use whatever you need for the decrypted version.
I'm assuming userdata overwrites /data which would wipe your files and apps.

[Q] 5.1.1 stock update: Re-root and Unencrypt Q's

Many of you have heard by now that 5.1.1 is out, and we should receive an update soon on our stock rom Nexus 6. I just bought a Nexus 6 64gb, XT1103, and it is running the stock rom, rooted, and un-encrypted. I'm wondering if we'll lose root and un-encrypt if we take the update, and loose data if we re-unencrypt. What have your experiences been on the stock rom 5.1 update?
bovineyard said:
Many of you have heard by now that 5.1.1 is out, and we should receive an update soon on our stock rom Nexus 6. I just bought a Nexus 6 64gb, XT1103, and it is running the stock rom, rooted, and un-encrypted. I'm wondering if we'll lose root and un-encrypt if we take the update, and loose data if we re-unencrypt. What have your experiences been on the stock rom 5.1 update?
Click to expand...
Click to collapse
While the update will download, it will not install with root and an unencrypted kernel.
IF you want to take the OTA, then you will need to fastboot flash the boot.img and system.img from the factory image. Boot.img will encrypt your kernel, but you will not loose data (but you will have to factory reset, again, if you want to unencrypt, which will wipe data). Flashing the system.img will remove root and flash stock recovery.
cam30era said:
While the update will download, it will not install with root and an unencrypted kernel.
IF you want to take the OTA, then you will need to fastboot flash the boot.img and system.img from the factory image. Boot.img will encrypt your kernel, but you will not loose data (but you will have to factory reset, again, if you want to unencrypt, which will wipe data). Flashing the system.img will remove root and flash stock recovery.
Click to expand...
Click to collapse
i think with root but encrypted will do the update
HitNrun_ said:
i think with root but encrypted will do the update
Click to expand...
Click to collapse
Nope, not on Lollipop. Kitkat and before, yes. Not anymore.
cam30era said:
Nope, not on Lollipop. Kitkat and before, yes. Not anymore.
Click to expand...
Click to collapse
so unroot and encypted will do the trick? what about the bootloader, will it work with unlocked or should it be relocked too?
5.1.1 is NOT officially out for the nexus 6. it is in aosp though. thats two differing things. stock is on 5.1.
HitNrun_ said:
so unroot and encypted will do the trick? what about the bootloader, will it work with unlocked or should it be relocked too?
Click to expand...
Click to collapse
The OTA package only looks at system.img and boot.img. Of course you need stock recovery to install it. And the "unroot" option inside SuperSU is insufficient. It leaves some traces around that will prevent the OTA from loading. Flash the stock system.img.
And afterwards, when unencrypting, you'll have to fastboot format userdata. Which will wipe your SDcard again.
HitNrun_ said:
so unroot and encypted will do the trick? what about the bootloader, will it work with unlocked or should it be relocked too?
Click to expand...
Click to collapse
Bootloader status has no effect on the OTA.
I have rooted, but encrypted 5.1, and got OTA5 5.1.1, I am on custom recovery,
should I flash stock recovery before flashing? plus, after installing, I will need to regain root access right? my data/apps will stay intact right?
ibraheeemz said:
I have rooted, but encrypted 5.1, and got OTA5 5.1.1, I am on custom recovery,
should I flash stock recovery before flashing? plus, after installing, I will need to regain root access right? my data/apps will stay intact right?
Click to expand...
Click to collapse
As it says above, you cannot FLASH the update if you are rooted, even with a stock recovery.
You will have to flash the system.img and boot.img of the Stock factory image. IF the full factory image of the version you want is available here: https://developers.google.com/android/nexus/images
...download it, extract the system and boot.img and fastboot flash them. Job done. If the version you need is only available in an OTA file, you'll need to flash the system and boot of the expected version (i.e. the one you're on now) AND flash the recovery to accept the OTA
danarama said:
As it says above, you cannot receive the update if you are rooted, even with a stock recovery.
You will have to flash the system.img and boot.img of the Stock factory image. IF the full factory image of the version you want is available here: https://developers.google.com/android/nexus/images
...download it, extract the system and boot.img and fastboot flash them. Job done. If the version you need is only available in an OTA file, you'll need to flash the system and boot of the expected version (i.e. the one you're on now) AND flash the recovery to accept the OTA
Click to expand...
Click to collapse
I am using a custom recovery, on a rooted but STOCK 5.1, and I already got OTA, I downloaded it as well, but needed to make sure before upgrading, that it doesn't cause data lose if I move to stock recovery, and want to regain root after flashing 5.1.1,
anyway, i flashed stock recovery, then proceeded with the update, it tried flashing but showed "error" at the android screen, so, I don't whats missing, as I was using stock 5.1, just unlocked it, rooted it, and flashed customer recovery,
ibraheeemz said:
I am using a custom recovery, on a rooted but STOCK 5.1, and I already got OTA, I downloaded it as well, but needed to make sure before upgrading, that it doesn't cause data lose if I move to stock recovery, and want to regain root after flashing 5.1.1,
anyway, i flashed stock recovery, then proceeded with the update, it tried flashing but showed "error" at the android screen, so, I don't whats missing, as I was using stock 5.1, just unlocked it, rooted it, and flashed customer recovery,
Click to expand...
Click to collapse
When I said receive, I meant flash. You cannot FLASH the update if you are rooted. Period. Read my post again but substitute the word receive for flash.
danarama said:
When I said receive, I meant flash. You cannot FLASH the update if you are rooted. Period. Read my post again but substitute the word receive for flash.
Click to expand...
Click to collapse
got it, but still looking for the answer, will I loose data after flashing system.img? or while regaining root after 5.1.1 update?
ibraheeemz said:
got it, but still looking for the answer, will I loose data after flashing system.img? or while regaining root after 5.1.1 update?
Click to expand...
Click to collapse
No. Only factory reset or unlocking the bootloader loses data. System.img is the rom, flashing to /system. Boot.img is the kernel, flashing to /boot. if you flash these separately, userdata.img is not flashed to /data, so your /data partition remains in tact.
root doesn't touch /data either. Just /system
HitNrun_ said:
i think with root but encrypted will do the update
Click to expand...
Click to collapse
How do you get root while leaving it encrypted?
Arfyness said:
How do you get root while leaving it encrypted?
Click to expand...
Click to collapse
No OTA update will flash with any mods to system, boot, or recovery. No way, no how.
Evolution_Tech said:
No OTA update will flash with any mods to system, boot, or recovery. No way, no how.
Click to expand...
Click to collapse
Yeahhh I get that now. It's got to verify that what's already there matches what it's supposed to be updating.
I'm looking here because I'm on Fi now, and there are more implications there than I realized before. Not that those matter too much, I do want stock. Just trying to see how I can stay current, be rooted, and not break Fi. Thankfully it's a Nexus device so it's not throwing up insane device restrictions blocking root access.
I want to be able to update system and boot, as they come available, with a recovery like TWRP or CWM. Then reapply SuperSU flash after that. What I'm not sure of is whether I can even do that. I'm fuzzy on the whole " encrypted device" thing. Does that apply to the images at https://developers.google.com/android/nexus/images#shamu
Would I be hosed if I took the system and boot images and flash those to update from one version to the next?
Arfyness said:
Yeahhh I get that now. It's got to verify that what's already there matches what it's supposed to be updating.
I'm looking here because I'm on Fi now, and there are more implications there than I realized before. Not that those matter too much, I do want stock. Just trying to see how I can stay current, be rooted, and not break Fi. Thankfully it's a Nexus device so it's not throwing up insane device restrictions blocking root access.
I want to be able to update system and boot, as they come available, with a recovery like TWRP or CWM. Then reapply SuperSU flash after that. What I'm not sure of is whether I can even do that. I'm fuzzy on the whole " encrypted device" thing. Does that apply to the images at https://developers.google.com/android/nexus/images#shamu
Would I be hosed if I took the system and boot images and flash those to update from one version to the next?
Click to expand...
Click to collapse
You absolutely can, it's just that if you wish to decrypt, you'll have to format data. I've had this device, since launch and I'm still encrypted. Not an issue for me. But you can just flash, individually, everything but userdata and keep your data intact, each time a new image becomes available. Then just flash TWRP and then SuoerSu from TWRP. If you've unencrypted, OTA won't flash. You can always update manually.
edit - this was a duplicate. i can't delete it.
Evolution_Tech said:
You absolutely can, it's just that if you wish to decrypt, you'll have to format data. I've had this device, since launch and I'm still encrypted. Not an issue for me. But you can just flash, individually, everything but userdata and keep your data intact, each time a new image becomes available. Then just flash TWRP and then SuoerSu from TWRP. If you've unencrypted, OTA won't flash. You can always update manually.
Click to expand...
Click to collapse
Oohhh, wait, so flash from fastboot, except flash SuperSU from TWRP? (update.zip style?) Is only the data partition encrypted then? If that's the case why are folks decrypting? Unlocking the bootloader requires it, but what is that required for?
And thank you loads BTW! I'm so far behind! I'm coming off 3 years of rooted, stable SGS3 stock, last updated to 4.1.2. There were no further stock updates that I wanted, (too many bugs) and everything was working so I left well enough alone.
(I probably would have messed about with CM and other roms, if I had not initially bricked the thing trying to put TWRP on... and had to send it for somebody to JTAG reprogram it. Thought about it several times, but never wanted to chance it again.)
Thanks again!

Nexus 6 MRA58K/N/R Forced Encryption

I am sure this is a noob question here so I apologize in advance. I am a bit confused about how to go about disabling / removing encryption on my Nexus 6. When I look into it, it seems to be required to flash a new boot.img. However, you already need to use a modified boot.img to root.
So, once you are rooted, you can change your boot.img without losing root?
Does the modified boot.img from Chainfires post already disable / remove encryption?
Is there a modified boot image that disables encryption and allows root?
When I am in Titanium Backup, I see encryption: DISABLED. Is that telling me that my phone encryption is disabled or that just Titanium Backup Encryption is disabled?
Also, now there is MRA58K/N/R. Chainfires post has the modified boot image from K. Has the boot.img changed at all from K to N to R? If so, how can one still use the modified boot.img from K after flashing to R?
1. you need to flash a modified kernel(boot.img) that allows for decryption.
2. secondly, you have to format your user data and cache, which will delete everything from your phones storage.
3. now when you boot up, you will be decrypted.
simms22 said:
1. you need to flash a modified kernel(boot.img) that allows for decryption.
2. secondly, you have to format your user data and cache, which will delete everything from your phones storage.
3. now when you boot up, you will be decrypted.
Click to expand...
Click to collapse
I understand this. What I am wondering though, if this will remove root being you have to flash a modified boot image to obtain root. This is why I am confused. Does the modified boot image from chainfire for rooting the Nexus 6 remove encryption? I see where it may disable forced encryption, but does that mean that it removes encryption as well? Here is the post:
http://forum.xda-developers.com/apps/supersu/wip-android-6-0-marshmellow-t3219344
Sorry if I sound straight noob. I just don't get it. If I follow the root method which already requires a modified boot.img, how can I turn around and then flash yet another modified boot.img to remove encryption? Or does the modified boot.img for root also remove encryption?
Rektifying said:
I understand this. What I am wondering though, if this will remove root being you have to flash a modified boot image to obtain root. This is why I am confused. Does the modified boot image from chainfire for rooting the Nexus 6 remove encryption? I see where it may disable forced encryption, but does that mean that it removes encryption as well? Here is the post:
http://forum.xda-developers.com/apps/supersu/wip-android-6-0-marshmellow-t3219344
Sorry if I sound straight noob. I just don't get it. If I follow the root method which already requires a modified boot.img, how can I turn around and then flash yet another modified boot.img to remove encryption? Or does the modified boot.img for root also remove encryption?
Click to expand...
Click to collapse
you can flash different kernels all day long, and youll never lose root. only if you flash a rom will you lode root. about chainfires kernel i am clueless.
simms22 said:
you can flash different kernels all day long, and youll never lose root. only if you flash a rom will you lode root. about chainfires kernel i am clueless.
Click to expand...
Click to collapse
Do you have a Nexus 6? The current root method required a modified boot.img. So are you saying that after you flash the modified boot.img and obtain root, you then can change the boot.img and still have root?
Anyone else care to answer this for me? I am newer to Android period so I apologize again for sounding noob. I just don't fully quite understand how this root method works. So if a modified boot.img is required for root, how can I turn around and flash a different boot.img and still have root?
I am literally sitting here waiting to flash my Nexus 6 to MRA58R until I figure this out. I am well aware how to flash stock images, custom recovery, sideload superSU. I just want to clean flash my Nexus 6, have root, and have encryption disabled.
Rektifying said:
Do you have a Nexus 6? The current root method required a modified boot.img. So are you saying that after you flash the modified boot.img and obtain root, you then can change the boot.img and still have root?
Click to expand...
Click to collapse
i use despair kernel. technically, any custom kernel is a modified kernel. and it alows for decryption, even though i did not decrypt. i flashed marshmallow, flashed despair, then flashed supersu. now im on marshmallow with root.
what im saying is that i have never used chainfires kernel, so dont know anything about it.
I have been googling my a$$ off and still can not find an answer. All I wan't to know, is that after I obtain root on my Nexus 6, which requires a modified boot.img, can I turn around a flash a different boot.img, and still have root. I want my Nexus 6 to be rooted and not use encryption. That is all I wan't. I can not believe I am having this hard of a time figuring this out.
Everything I find even closely related to this is about 5.0 / 5.1. I am new to Android, my Nexus 6 is my first Android device and all I know is 6.0 Marshmallow. I believe the root methods for 6.0 are different than 5.0/5.1 but I could be wrong. I prefer direct answers. No where can I find a definite answer.
Rektifying said:
I have been googling my a$$ off and still can not find an answer. All I wan't to know, is that after I obtain root on my Nexus 6, which requires a modified boot.img, can I turn around a flash a different boot.img, and still have root. I want my Nexus 6 to be rooted and not use encryption. That is all I wan't. I can not believe I am having this hard of a time figuring this out.
Everything I find even closely related to this is about 5.0 / 5.1. I am new to Android, my Nexus 6 is my first Android device and all I know is 6.0 Marshmallow. I believe the root methods for 6.0 are different than 5.0/5.1 but I could be wrong. I prefer direct answers. No where can I find a definite answer.
Click to expand...
Click to collapse
first off, to make things easier, a boot.img is a kernel. you can flash any custom kernel when rooting on marshmallow, not just chainfires. if it doesnt allow unencryption, then you cam flash any other custom m kernel. you dont lose any information/data when flaahing kernels, so you never have to reroot. theres nothing hard here to understand, you can download and flash any kernel that you want, that will work on m. which one you chose is your choice. the vast amount of custom kernels allow for decryption.
simms22 said:
first off, to make things easier, a boot.img is a kernel. you can flash any custom kernel when rooting on marshmallow, not just chainfires. if it doesnt allow unencryption, then you cam flash any other custom m kernel. you dont lose any information/data when flaahing kernels, so you never have to reroot. theres nothing hard here to understand, you can download and flash any kernel that you want, that will work on m. which one you chose is your choice. the vast amount of custom kernels allow for decryption.
Click to expand...
Click to collapse
Ok lets leave encryption out of it a second. So lets say I have stock 6.0. I flash the modified boot image, sideload SuperSU, and I am now rooted. Then I turn around and flash the stock boot.img. SO I will still have root then?
Rektifying said:
Ok lets leave encryption out of it a second. So lets say I have stock 6.0. I flash the modified boot image, sideload SuperSU, and I am now rooted. Then I turn around and flash the stock boot.img. SO I will still have root then?
Click to expand...
Click to collapse
yes(but im not sure with marshmallow). with all other android builds, yes.
simms22 said:
yes(but im not sure with marshmallow). with all other android builds, yes.
Click to expand...
Click to collapse
Ok I think I am starting to get it now. So the modified boot image that is needed to obtain root, is only initially needed to initially obtain root. Once root is obtain, you can flash different boot.img's all day long and you will not lose root? I understand boot.img is the kernal?
Rektifying said:
Ok I think I am starting to get it now. So the modified boot image that is needed to obtain root, is only initially needed to initially obtain root. Once root is obtain, you can flash different boot.img's all day long and you will not lose root? I understand boot.img is the kernal?
Click to expand...
Click to collapse
yes.
but the thing i dont know about is that the stock marshmallow kernel might prevent root, even though the files are still there. but you can flash any marshmallow custom kernel(for n6).
I figured it out. Here is what I ended up doing. I hope it was the best way to do so. I probably went overboard with some stuff but I wanted to start fresh from stock.
Booted into TWRP Recovery and did a full wipe 3 times over
Rebooted to bootloader
Flashed bone stock MRA58R
Rebooted to bootloader
Flashed modified boot.img, reboot bootloader
Flashed TWRP Recovery, reboot into recovery
Format Data, disabling encryption
Installed SuperSU, Wiped Dalvik Cache / Cache
Reboot System
I am now running Android 6.0 MRA58R / Rooted / No Encryption
I did not realize that encryption could be disabled right in TWRP. So that is why I was so confused because I thought I had to flash a modified boot.img to obtain root (which you do), then a different modified boot.img for encryption removal. If that was the case, I was worried that flashing the modified boot.img for encryption removal would remove root. Oh well. I have it figured out now.
Thank you for your help @simms22. You have given me a better understanding of root access and kernals.
Rektifying said:
I figured it out. Here is what I ended up doing. I hope it was the best way to do so. I probably went overboard with some stuff but I wanted to start fresh from stock.
Booted into TWRP Recovery and did a full wipe 3 times over
Rebooted to bootloader
Flashed bone stock MRA58R
Rebooted to bootloader
Flashed modified boot.img, reboot bootloader
Flashed TWRP Recovery, reboot into recovery
Format Data, disabling encryption
Installed SuperSU, Wiped Dalvik Cache / Cache
Reboot System
I am now running Android 6.0 MRA58R / Rooted / No Encryption
I did not realize that encryption could be disabled right in TWRP. So that is why I was so confused because I thought I had to flash a modified boot.img to obtain root (which you do), then a different modified boot.img for encryption removal. If that was the case, I was worried that flashing the modified boot.img for encryption removal would remove root. Oh well. I have it figured out now.
Thank you for your help @simms22. You have given me a better understanding of root access and kernals.
Click to expand...
Click to collapse
awesome
Rektifying said:
I figured it out. Here is what I ended up doing. I hope it was the best way to do so. I probably went overboard with some stuff but I wanted to start fresh from stock.
Booted into TWRP Recovery and did a full wipe 3 times over
Rebooted to bootloader
Flashed bone stock MRA58R
Rebooted to bootloader
Flashed modified boot.img, reboot bootloader
Flashed TWRP Recovery, reboot into recovery
Format Data, disabling encryption
Installed SuperSU, Wiped Dalvik Cache / Cache
Reboot System
I am now running Android 6.0 MRA58R / Rooted / No Encryption
I did not realize that encryption could be disabled right in TWRP. So that is why I was so confused because I thought I had to flash a modified boot.img to obtain root (which you do), then a different modified boot.img for encryption removal. If that was the case, I was worried that flashing the modified boot.img for encryption removal would remove root. Oh well. I have it figured out now.
Thank you for your help @simms22. You have given me a better understanding of root access and kernals.
Click to expand...
Click to collapse
I was trying to figure out the same thing. What modified boot.img did u use for root access and which modified boot.img did u use to remove encryption. Thanks.
Basically any kernel that does not check encryption and force it to be applied... In other words almost any 3rd party kernel... But double check the kernels feature list and make sure it says no forced encryption.
The device will probably give you a "system is corrupt" error with a stock kernel and root installed. I would flash a custom kernel for sure because it usually doesn't force encryption and does support root! I am using elementalx right now and it's a very good kernel for this. Many other custom kernels work just as well! I HAVE used chainfire's kernel, and it does not force encryption, it also supports root, I can confirm this. If you use chainfire's kernel, make sure you format your data to unencrypt. You can use the "format data" option in TWRP or use the fastboot command "fastboot format userdata". Hope I helped!
EDIT: You have to format your data to decrypt regardless of WHICH kernel you choose, sorry if that sounded confusing.

Phone won't boot after flashing latest November NBD91P image

Phone happily running 7.0.0 (NBD90Z, Oct 2016)
Running system less super su SR3 and Franco #57
Downloaded and fast boot flashed the latest November update from PC.
Only flashed updated bootloader and system image from 7.0.0 (NBD91P, Nov 2016)
Restarted Phone and it loops at boot animation, left for twenty minutes, no progress, so rebooted back to recovery and tried wiping, cache, dalvik and art cache, and restarted again still no difference, looped at boot animation again for twenty minutes.
So rebooted to recovery and restored October backup.
Was anyone else and to fast boot flash latest factory system image and boot their phone without any issues?
Is a full wipe really necessary?
Any one?
Sent from my Shamu using Tapatalk
ben_pyett said:
Phone happily running 7.0.0 (NBD90Z, Oct 2016)
Running system less super su SR3 and Franco #57
Downloaded and fast boot flashed the latest November update from PC.
Only flashed updated bootloader and system image from 7.0.0 (NBD91P, Nov 2016)
Restarted Phone and it loops at boot animation, left for twenty minutes, no progress, so rebooted back to recovery and tried wiping, cache, dalvik and art cache, and restarted again still no difference, looped at boot animation again for twenty minutes.
So rebooted to recovery and restored October backup.
Was anyone else and to fast boot flash latest factory system image and boot their phone without any issues?
Is a full wipe really necessary?
Any one?
Sent from my Shamu using Tapatalk
Click to expand...
Click to collapse
I flashed NBD91P without a full wipe and my phone booted without any issues. However I have not been able to get su SR2 or su SR3 to work with either NBD90Z or NBD91P. SR1 works without any issues.
I flashed bootloader, boot and system without a problem. Also using FK, but have magisk+phh root.
I've seen a few people mentioning having problems with SuperSU 2.78 SR2 and SR3 and the latest update (NBD91P)
"Only flashed updated bootloader and system image"
I'm genuinely puzzled as to why people aren't using the OTA sideload method, which is incredibly simple and leaves your data and settings totally intact.
The quote above makes me think "You did half a job and now wonder why your phone won't work...?"
dahawthorne said:
I'm genuinely puzzled as to why people aren't using the OTA sideload method, which is incredibly simple and leaves your data and settings totally intact.
The quote above makes me think "You did half a job and now wonder why your phone won't work...?"
Click to expand...
Click to collapse
You didn't read the post completely, as my phone is working as I always make the precaution of taking a backup and simply restored to it.
I didn't think ota method was possible if you had custom recovery?
Using the method I've described also leaves data and settings in tact.
I didn't run the flash all scripts.
Thanks
Sent from my Shamu using Tapatalk
No offence intended. I have never (touch wood) had any serious problems with my many upgrades on many devices. As you did, I always have a backup in case it goes wrong. In fact I even have multiple backups on my laptop in case the latest one doesn't work.
I've use the OTA sideload method a dozen times now on all my rooted Nexus devices. All of them as standard have TWRP & root (either doitright's or Chainfire's), and the OTA just slides right in there regardless. No problems at all. When it's installed (which takes about five minutes) I have to reroot - I can't remember if I've had to reinstall TWRP, though on a number of occasions I've just reinstalled it anyway without bothering to check if it was already still there.
So in summary the OTA sideload works for rooted/TWRPed devices, doesn't lose anything, and is far simpler and safer than running separate partition flashes. Give it a go and I guarantee you'll never do it the old way again.
dahawthorne said:
No offence intended. I have never (touch wood) had any serious problems with my many upgrades on many devices. As you did, I always have a backup in case it goes wrong. In fact I even have multiple backups on my laptop in case the latest one doesn't work.
I've use the OTA sideload method a dozen times now on all my rooted Nexus devices. All of them as standard have TWRP & root (either doitright's or Chainfire's), and the OTA just slides right in there regardless. No problems at all. When it's installed (which takes about five minutes) I have to reroot - I can't remember if I've had to reinstall TWRP, though on a number of occasions I've just reinstalled it anyway without bothering to check if it was already still there.
So in summary the OTA sideload works for rooted/TWRPed devices, doesn't lose anything, and is far simpler and safer than running separate partition flashes. Give it a go and I guarantee you'll never do it the old way again.
Click to expand...
Click to collapse
Do you change, or alter you system partition, ie remove application or add some.
I'm asking if an ota will apply over the top of an altered system?
If so I'll try it once I've finished work.
Although will also rule out the version of super su first.
Sent from my Shamu using Tapatalk
I change nothing. My N6 is rooted and TWRPed and I just connect to the computer and use ADB to sideload the OTA. It says "flashing unconditionally" so I'm guessing (I'm just an end-user, not a dev) that the OTA just wipes the old ROM and overwrites it, but doesn't touch the data partition. Since the system partition is replaced, root disappears with it, but I'm not sure if it touches TWRP - as I said, I just reinstall it anyway each time and then use it to flash SuperSU.
Give it a go - you'll like it...
P.S. I understand that the OTA has some sort of internal checksum to verify the package integrity, but I always double-check my download with Checksum Utility:
https://raylin.wordpress.com/downloads/md5-sha-1-checksum-utility/
dahawthorne said:
I change nothing. My N6 is rooted and TWRPed and I just connect to the computer and use ADB to sideload the OTA. It says "flashing unconditionally" so I'm guessing (I'm just an end-user, not a dev) that the OTA just wipes the old ROM and overwrites it, but doesn't touch the data partition. Since the system partition is replaced, root disappears with it, but I'm not sure if it touches TWRP - as I said, I just reinstall it anyway each time and then use it to flash SuperSU.
Give it a go - you'll like it...
P.S. I understand that the OTA has some sort of internal checksum to verify the package integrity, but I always double-check my download with Checksum Utility:
https://raylin.wordpress.com/downloads/md5-sha-1-checksum-utility/
Click to expand...
Click to collapse
So flashed, ota through flash fire, worked as described.
As expected phone booted, with stock kernel, recovery and no root.
So rebooted to bootloader and had to re fast boot flash twrp recovery.
But then flashed systemless super su and Franco kernel, phone no longer boots.
Restored backup as ran out of time.
Will try again tonight with our systemless, which root version and methods are you using?
I'll try just kernel and then just root to see which it is that's causing the problem
Progress.
Although to be honest, I'm still of the opinion that flashing just system partition is a far simpler, process then ota.
This is the first time in a a good few years and multiple nexus/android versions, where I've ever had an issue with this process. (And I've had N4, N5 and N6)
Anyone?
Thanks
Sent from my Shamu using Tapatalk
Maybe you're trying too much all at once? I installed the OTA, TWRP and SuperSU 2.78 R3 with no problems - I have tried a couple of custom kernels but saw no appreciable difference, so decided that I'd avoid the risk of tinkering with stuff I don't understand.
Maybe there's some incompatibility with the Franco kernel? I know that SuperSU performs some processing on the kernel - it shows in the installation dialogue.
The more Google locks down android the harder it will be so people need to make a choice and live with it. Either you want the pointless OTA or you are gonna use a custom set up. Not flashing an update properly and then posting a thread about it only makes developers laugh.
zelendel said:
The more Google locks down android the harder it will be so people need to make a choice and live with it. Either you want the pointless OTA or you are gonna use a custom set up. Not flashing an update properly and then posting a thread about it only makes developers laugh.
Click to expand...
Click to collapse
Why do you say he didn't flash the update properly? I thought the only difference between NBD90Z and NBD91P was the bootloader and system images. There was no new recovery, radio, etc... included in that release. So what's the harm in only updating the bootloader/system partitions?
If you did it the "right way" I guess that would be running the flash-all.bat file in the folder. All that does is flash all the partitions (which is dumb because you're overwriting the same partitions which is completely unnecessary if you already have them) and wipe userdata. With his method userdata would've stayed intact.
Please note I never do this method, I'm a custom ROM man thru and thru. Whether it's Dirty Unicorns, AOSiP, OctOS, etc... I never run factory system images because even though with GravityBox you can get a lot of customization, I still prefer CMTE over Substratum/OMS. No way to get CMTE in stock firmware.
dahawthorne said:
Maybe you're trying too much all at once? I installed the OTA, TWRP and SuperSU 2.78 R3 with no problems - I have tried a couple of custom kernels but saw no appreciable difference, so decided that I'd avoid the risk of tinkering with stuff I don't understand.
Maybe there's some incompatibility with the Franco kernel? I know that SuperSU performs some processing on the kernel - it shows in the installation dialogue.
Click to expand...
Click to collapse
Finally managed it.
Fastboot Flashed system
Fastboot Flashed stock boot
Went in to recovery
Flashed Franco
Booted rom
Went back to recovery
Flashed update-unSU (unsure is this stage is needed, but was taking no chances)
Flashed super su
Was finally able to boot rom
Seems combination of super su and Franco wouldn't work in single flash for me. Needed clean reboot between each.
Although I still believe that fast boot flash system is easiest method rather than ota, as doesn't affect recovery or boot partitions and you stay in control, each to their own.
This is the first time I've encountered any issues with this method.
Comments suggesting I didn't do it properly without highlighting what, if anything I did wrong or without adding any positive feedback are worthless.
Thanks for input and suggestions.
Sent from my Nexus 6 using Tapatalk
I had very similar issues. I've been updating this phone monthly since day 1 without issue but with the NBD91P update, I got the same boot loop even with the stock kernel. My device is also encrypted.
After I booted back to the bootloader I noticed that TWRP was gone. I found that very odd. It was like the system image was trying to write over it. Not sure though, but I do know that I had to re-flash TWRP (I've had the same version, which is also the latest one, for months) after every boot loop.
I kept re-flashing and trying different versions of the systemless versions of SuperSU but none of them worked. Got stuck in the same boot loop everytime.
I finally re-flashed everything except for SuperSU and stock NBD91P booted up fine without root.
I'm also having the same issue. I can't even flash SR1. Any update on this?
I can't not boot the NBD91P factory image if I have any layers installed. Removing that overlay folder via TWRP is the only way to make it boot again.
LordDeath said:
I can't not boot the NBD91P factory image if I have any layers installed. Removing that overlay folder via TWRP is the only way to make it boot again.
Click to expand...
Click to collapse
There is a bug in this update which causes a bootloop if the system is themed. Restore to NBD90Z.
msaitta said:
I had very similar issues. I've been updating this phone monthly since day 1 without issue but with the NBD91P update, I got the same boot loop even with the stock kernel. My device is also encrypted.
After I booted back to the bootloader I noticed that TWRP was gone. I found that very odd. It was like the system image was trying to write over it. Not sure though, but I do know that I had to re-flash TWRP (I've had the same version, which is also the latest one, for months) after every boot loop.
I kept re-flashing and trying different versions of the systemless versions of SuperSU but none of them worked. Got stuck in the same boot loop everytime.
I finally re-flashed everything except for SuperSU and stock NBD91P booted up fine without root.
Click to expand...
Click to collapse
collinjames said:
I'm also having the same issue. I can't even flash SR1. Any update on this?
Click to expand...
Click to collapse
LordDeath said:
I can't not boot the NBD91P factory image if I have any layers installed. Removing that overlay folder via TWRP is the only way to make it boot again.
Click to expand...
Click to collapse
I was able to get over my own original problem using the process listed a few posts above, in my previous comment.
Even though it took several attempts to determine a working sequence. Did you try the process which worked for me on your devices?
Strephon Alkhalikoi said:
There is a bug in this update which causes a bootloop if the system is themed. Restore to NBD90Z.
Click to expand...
Click to collapse
Can't comment as my system wasn't themed.
Does the boot loop occur, if you, remove your themes then upgrade to latest image, reboot it and finally reapply your layers?
Sent from my Nexus 6 using Tapatalk
Dopamin3 said:
Why do you say he didn't flash the update properly? I thought the only difference between NBD90Z and NBD91P was the bootloader and system images. There was no new recovery, radio, etc... included in that release. So what's the harm in only updating the bootloader/system partitions?
Click to expand...
Click to collapse
He said, quote:
Only flashed updated bootloader and system image from 7.0.0 (NBD91P, Nov 2016)
Click to expand...
Click to collapse
Unless you have the diffs from the Android git, you can't decide if flashing boot necessary or not. And even then you can decide wrong.
The whole package is: bootloader, radio, boot, system, (vendor in case of the 6P), recovery, and the clutter.
You should skip data, and shouldn't bother with the cache partition, but it's a good idea clearing it after flashing a new system. You can always check if the bootloader and radio have changed, you can diff them if you don't believe the version numbers.
That leaves boot and system, you should always flash both, even if it goes by the nuisance of re-rooting.
Also if you're unencypted, as I am, then after flashing boot, you should not reboot without flashing a root that deals with it.
(But making an unencrypted and verity-less boot is five minutes tops, by the way)
Strephon Alkhalikoi said:
There is a bug in this update which causes a bootloop if the system is themed. Restore to NBD90Z.
Click to expand...
Click to collapse
Having the lastest security fixes is more important than themes.

How (not) to loose OTA? - Experiences and Discussion

Ok, as discussed in the other thread, I want to document when you loose OTA, how to avoid it, and how to fix it.
From what I know, OTA is lost when modifying the system. This means flashing a new kernel, rooting the device and modifying the build.prop or other root level stuff (mostly) will do it. The easiest way to recover from it would be to flash the stock boot.img and everything should be fine, right?
The reason this is in the Q&A is because I need real world examples what happened to you and how you've managed to get it back as well as what have you done and not lost OTA?
Thanks in advance!
You can use OTA with magisk quite easily, without even using computer( worst case, magisk wont find the stock boot.img and you need to reflash it, not such a big deal)
If you mount system for any operation(Cam2Api, or any other modification) , you need to reflash system as well.
You can always reflash stock system(or whole fastboot image), or even wait and flash a whole stock image from scratch
This tool is incredably helpful as well
https://forum.xda-developers.com/mi-a2/how-to/mi-a2-toolkit-unlock-bootloader-root-t3834585
for perfoming these operations ( Also, i have used the cam2 enabler from this tool this time, i have to see if that broke OTA next time there's an update)
I applaud the question, it's a good one, and a good basic place to start re discussing Cam2api enabling.
But, you did mean to say flash stock 'system' image, not "flash the stock boot.img"? Because the reason OTA stops working is probably both images. But for sure the system image being modified will stop them.
I can say for certain that enabling cam2api with the 'adb shell setprop persist... etc) commands will enable the API and ALSO allow you to continue to get OTA updates. I'd suggest doing some research on the setprop persist type commands to know why and exactly how it works, but it DOES NOT modify the 'system' partition, that's why OTA's continue.
A word of warning to the noobs, there are a kazillion 'Tools' in the A2 forums (no, I mean software tools, not the other kind ). Be aware, if that 'Tool' mounts 'System' as Read Write (which I know at least one of them does), 'System' is then considered modified! NO More OTA!
Reptant said:
You can use OTA with magisk quite easily, without even using computer( worst case, magisk wont find the stock boot.img and you need to reflash it, not such a big deal)
If you mount system for any operation(Cam2Api, or any other modification) , you need to reflash system as well.
You can always reflash stock system(or whole fastboot image), or even wait and flash a whole stock image from scratch
This tool is incredably helpful as well
https://forum.xda-developers.com/mi-a2/how-to/mi-a2-toolkit-unlock-bootloader-root-t3834585
for perfoming these operations ( Also, i have used the cam2 enabler from this tool this time, i have to see if that broke OTA next time there's an update)
Click to expand...
Click to collapse
Noted, and will be added to the "documentation" when I write it. Thanks for the Magisk tips.
As for the tool, looking at the other comment, OTA should now be broken because the tool should've mounted the system, but I'll wait a couple of weeks before posting that step in the documentation, and do let me know how it went for you.
AsItLies said:
I applaud the question, it's a good one, and a good basic place to start re discussing Cam2api enabling.
But, you did mean to say flash stock 'system' image, not "flash the stock boot.img"? Because the reason OTA stops working is probably both images. But for sure the system image being modified will stop them.
I can say for certain that enabling cam2api with the 'adb shell setprop persist... etc) commands will enable the API and ALSO allow you to continue to get OTA updates. I'd suggest doing some research on the setprop persist type commands to know why and exactly how it works, but it DOES NOT modify the 'system' partition, that's why OTA's continue.
A word of warning to the noobs, there are a kazillion 'Tools' in the A2 forums (no, I mean software tools, not the other kind ). Be aware, if that 'Tool' mounts 'System' as Read Write (which I know at least one of them does), 'System' is then considered modified! NO More OTA!
Click to expand...
Click to collapse
Yup, my mistake. I ment system. Thanks for the sugestion, I'll have to look at setprop persist type commands.
Now looking back at the new info I have, would that mean that flashing a custom kernel would not stop OTA from working and after the OTA update is applied, a new stock kernel would just be flashed along with the OTA?
@ILA "Now looking back at the new info I have, would that mean that flashing a custom kernel would not stop OTA from working and after the OTA update is applied, a new stock kernel would just be flashed along with the OTA?"
I've never flashed a custom kernel, but I highly doubt doing that WOULD NOT stop OTA? If that's not modifying the phone, what is? I mean, that seems to me to be an obvious modification Xiaomi would be unhappy about and try to prevent, would be my bet.
AsItLies said:
I've never flashed a custom kernel, but I highly doubt doing that WOULD NOT stop OTA? If that's not modifying the phone, what is? I mean, that seems to me to be an obvious modification Xiaomi would be unhappy about and try to prevent, would be my bet.
Click to expand...
Click to collapse
I would have to agree, and that would be highly illogical to me as well, but as far as we've seen so far is that it's only triggered by system modification. On the other hand, we haven't really had custom kernels up until recently so, not really a way to check that until someone tries it with the next OTA, but my bet's on it breaking OTA as well. If noone faces it until December, I'll try it with that update. With the November one, I want to have a sanity check if everything passes. If I have time, maybe I'll rollback updates and try it sooner, but I doubt anything from my side on this front will happen before December.
@ILA, if you do not test with another OTA, the next one will be pie update, well, at least that is what we all expect
minnuss said:
@ILA, if you do not test with another OTA, the next one will be pie update, well, at least that is what we all expect
Click to expand...
Click to collapse
Hope you are correct
But until Pie, I can always test this with rolling back to the previous OTA.
To keep OTA you need:
Stock unmodified boot image
Stock, unmodified and never mounted as writable system partition and vendor partition
Systemless root (such as Magisk), custom kernel and custom recovery all install to the boot image, if you only did one of those, flashing the stock boot image will be enough, or if you allowed Magisk to backup the stock boot image, doing this would be the easiest solution https://github.com/topjohnwu/Magisk/blob/master/docs/tutorials.md
Simply mounting System or Vendor as writable will be enough for you to lose OTA (it's normal to mount them read only, don't panic when magisk does that)
so a modified build.prop will break OTA, but using setprop or resetprop will not, because those only affect /data (therefore you can't have a locked bootloader with camera2 enabled, because locking will wipe /data)
If you modified system or vendor and want to OTA, simply flash the stock image of the partition you modified via fastboot and it will work, but only if it comes from the same build you're currently running, if you're on September patch, you'll need to flash system.img from 9.6,13, and only that will work
it's always a good idea to keep the latest fastboot rom on your pc in case you needed it, but if it's not yet available, you can use TWRP to backup system, vendor and stock boot image before modifying them, and restore them before OTA, but make sure to select Backup System image and Vendor image Not backup system/vendor, because normal backup will just copy the files while an image backup will take the whole partition as it is, if you just restore the files then the image will have a different hash and you'll still fail to OTA
Also, as long as Anti Rollback is not active on A2 (it's not yet), you can always just roll back to the latest available fastboot image and OTA from there
Nebrassy said:
To keep OTA you need:
Stock unmodified boot image
Stock, unmodified and never mounted as writable system partition and vendor partition
Systemless root (such as Magisk), custom kernel and custom recovery all install to the boot image, if you only did one of those, flashing the stock boot image will be enough, or if you allowed Magisk to backup the stock boot image, doing this would be the easiest solution https://github.com/topjohnwu/Magisk/blob/master/docs/tutorials.md
Simply mounting System or Vendor as writable will be enough for you to lose OTA (it's normal to mount them read only, don't panic when magisk does that)
so a modified build.prop will break OTA, but using setprop or resetprop will not, because those only affect /data (therefore you can't have a locked bootloader with camera2 enabled, because locking will wipe /data)
If you modified system or vendor and want to OTA, simply flash the stock image of the partition you modified via fastboot and it will work, but only if it comes from the same build you're currently running, if you're on September patch, you'll need to flash system.img from 9.6,13, and only that will work
it's always a good idea to keep the latest fastboot rom on your pc in case you needed it, but if it's not yet available, you can use TWRP to backup system, vendor and stock boot image before modifying them, and restore them before OTA, but make sure to select Backup System image and Vendor image Not backup system/vendor, because normal backup will just copy the files while an image backup will take the whole partition as it is, if you just restore the files then the image will have a different hash and you'll still fail to OTA
Also, as long as Anti Rollback is not active on A2 (it's not yet), you can always just roll back to the latest available fastboot image and OTA from there
Click to expand...
Click to collapse
Thank you for a very comprehensive answer! That pretty much covers everything that I wanted to know in this thread. This will be the main part of the new thread, but I'll write it in a week or so just to leave enough time if anyone remembers any more examples.

Categories

Resources