Why doesn't E OS provide an option to the user to not overwrite the custom recovery already installed?

For example if you have TWRP installed as your custom recovery then use it to flash E OS, the custom recovery which comes with E OS overwrites TWRP. If you then attempt to reflash TWRP it overwrites the entire E OS install. WTF?

How can a ROM that claims to be about “user choice” not allow users to CHOOSE what custom recovery they install? Why is E OS so hell bent on forcing their terrible feature lacking recovery that requires a PC and ADB to do anything upon it’s users?

As it currently stands it’s not possible to have both TWRP and E OS installed at the same time on a device. That’s bullshit hypocrisy.

In my experience it is provided in the First start wizard, but I missed it one time, then it can be hard to find in Settings ! :frowning_face: (Device / version dependent ?)

I currently have /e/OS and TWRP running fine on two devices. However since Android 10 one can experience some encryption related unevenness with TWRP, hence both LineageOS and /e/OS adopting a simplified custom Recovery.

1 Like

Check the settings of the updater. There should be an option to “update recovery”. Uncheck this.

2 Likes

WTF indeed. And I don’t mean the issue, but the attitude on display here. Every fringe thing is such a huge outrage these days before asking a simple question or even suspecting the smallest amount of missing knowledge … so tiring.
Anyway …

On which device is this even happening, and applying which TWRP install procedure? Doesn’t sound normal.

On some devices without a dedicated recovery partition you can overwrite the whole boot partition by simply flashing TWRP to it, which would prevent the OS from booting obviously, but on these devices TWRP can be installed with an install script keeping the boot partition intact with TWRP embedded in it.
See device documentation on twrp.me.

Tell that to all the /e/OS users who have this either natively or via Magisk.

4 Likes

My ROM flashing days sort of ended with Oreo or at least slowed down. Coming back with my first A/B device and finding out that recoveries are part of the boot image was a shocker and a shame I thought.
Learned how to deal with it though.

It’s fairly the norm. Can’t blame /e/ or Lineage or any other ROM when TWRP or other custom recovery disappears on an update. That’s just the way it works nowadays. Mostly. Depending.
Prepare for it and be ready to reflash it after an update or even use a method to preserve it, if possible.

There are no settings when installing E OS. You either install via ADB or flash with a custom recovery. Not sure what you are talking about here…

If you’re talking about the built in updater in the E OS settings menu: system updates → preferences and unclicking the “update recovery” slider that doesn’t work. I receive the error “it is impossible to disable lineage recovery updates on this device”.

Sony Xperia 10 Plus.

Tapping the install button in TWRP, selecting the ROM.zip file and sliding the slider to flash doesn’t sound normal to you? That’s a head scratcher… Either way, this ends up overwriting the TWRP recovery with the built in E OS one. Then when you reflash TWRP in attempt to get it back that overwrites the entire E OS install on a never ending cycle.

Never heard about this script you mention. Will have to look into that but there’s no reason why this should be happening in the first place. Why does E OS even come packaged with a recovery to begin with? It’s so bare bones it might as well not be there instead of causing users headaches overwriting what they already had on the device for a reason.

There’s no way to “reflash” TWRP though. Doing so overwrites the entire ROM install.

https://doc.e.foundation/pages/install-twrp

These official instructions on the actual E OS website don’t even work. After the last step you receive an error in command prompt stating the recovery partition doesn’t exist…

So the page you linked to is simply the TWRP releases list. No mention of any scripts there. Even the actual device page mentions nothing about it either. The only instructions present are the basics of how to install TWRP on the device to begin with.

I would love to know more about this script you mentioned if that’s truly a solution to the problem…

So there’s an A and a B partition. Is it possible to flash E OS to one and the TWRP recovery to the other to resolve this then?

Not anymore, apparently TWRP has a button for that now. Wasn’t always the case on my device.
But you can still have a look at the install script: Download twrp-installer-3.7.0_9-0-mermaid.zip - open it - have a look at META-INF/com/google/android/update-binary in a text editor.

I see the possible mistake in the /e/OS documentation. They assume using their own recovery for quite some time now, but still say “booting a custom recovery” and then flash it to the boot partition in https://doc.e.foundation/devices/mermaid/install.
Pinging @Manoj.

That’s not what I was referring to, if you look at my post.

Yes.

If you mean flashing TWRP to the boot partition, then this will of course overwrite the /e/OS boot partition with TWRP and /e/OS will not boot anymore, although it will still be there (minus the boot partition). You could reflash the /e/OS boot partition to fix that, I would assume.

Because TWRP is a separate project, might not have support for the same devices as /e/OS and is outside of direct control of /e/OS developers in case something would need fixing, I guess.

That’s not how this works, see https://source.android.com/docs/core/ota/ab.

As a default, /e/OS can be installed with the /e/OS recovery (or via fastboot on some particular devices).
Once /e/OS is installed, you can install TWRP properly (the twrp.me way) as long as the bootloader stays unlocked.

If /e/OS can be booted after that, only /e/OS updates would overwrite TWRP, and you could either try the updater option to not update the recovery, or you could just install TWRP again after an OS update. It is not advisable to do OS updates on the fly without a computer nearby anyway.

Talking about a computer nearby … you could just boot TWRP when you need it (see the twrp.me device page at “Temporary boot the downloaded image”). Meaning it would not be on the phone, but you could still use it in connection with a computer.

A number of users have rooted their phone with Magisk. Magisk among other things has a module to retain TWRP through OS updates. I’m not using Magisk myself, but a search should help … Search results for 'magisk twrp' - /e/OS community.

I noticed the maintainer for the mermaid TWRP also provides the LOS builds on XDA. If nothing else he could be a source of clearing things up with regards to the device.

All devices are different but for the sake of argument let’s say the mermaid TWRP zip behaves the same as the one for my OnePlus 8T. Updating the boot image with recovery safely.
Assume /e/OS is still installed because you don’t want to start over and lose data.

Steps I would suggest.

  1. Fastboot boot twrp.img (temporary operation).
  2. Push ROM and TWRP zip to device if possible or not already present.
  3. Flash ROM using temporary TWRP. If /e/OS exists you will not (should not) lose data as it is a dirty flash.
  4. IMMEDIATELY after, flash TWRP ZIP. This should update the boot images in both slots.
    Repeat, immediately after flashing ROM!
  5. Reboot into recovery. NOT the ROM. Recovery. This will switch slots and run TWRP, ready for setting up or doing any additional tasks/flashing. Definitely necessary on new ROM installations. Best to make it a habit.
  6. Now reboot to system. Hope for the best.

Earlier I saw mention of installing TWRP using /e/ recovery. Personally I would not do it that way. It might not be up to snuff there. Lack of any real output makes it hard to see what’s going on. Best to use TWRP to flash TWRP.
I don’t like that kind of recovery anyway. Something that appeared while I was Rip Van Winkled.

1 Like

We picked up the booting part from the LOS wiki

1 Like

Saying “a custom recovery” gives users the freedom to pick TWRP instead of the /e/OS recovery, but this isn’t always advisable anymore or can be misunderstood as instructions how to install TWRP if users don’t see the significance of the /e/OS install guides saying “Temporarily”.

For devices with /e/OS recovery provided the documentation shouldn’t be this ambiguous and instead only refer to the /e/OS recovery.
In case there are devices left without /e/OS recovery provided, the documentation should make clearer that booting the custom recovery is meant as a one-time procedure only to install /e/OS and users should refer to the documentation of the respective recovery for any other use.

3 Likes

Thanks for the tip.

I’m guessing that this is the magisk module you were referring to?

If I understand correctly on how to use it, after an OTA update in the E OS settings menu this script then has to be flashed through magisk immediately afterwards before the device is rebooted?

These instructions are garbage and not only is the last command incorrect but the entire article is misleading. There’s no point keeping trash like that around which serves no purpose other than to waste time of those looking to actually achieve what the wiki suggests. See my instructions from first hand experience yesterday if you need further clarification to update the article as it should be.

Are you aware that the TWRP description Sony Xperia 10 Plus says to boot into TWRP with fastboot and within TWRP use the “Flash Current TWRP” option to install TWRP? This works for me without any problem on my A/B device also after /e/OS has been installed without any harm to /e/OS.

And yes, the mentioned module and the Magisk app help to recover TWRP and Magisk to the new slot before booting to the updated system. This worked on my device until /e/OS q. Since r the OTA update kills root already before rebooting the phone. I sent a message to the /e/ helpdesk about this issue.

I may be off base but would any of the above apply to LineageOS also. I know the LOS people aren’t interested in custom recoveries among other things.
Does straigjt LOS also remove (not retain) custom recoveries? Given that it is the base, /e/OS may be operating in the norm.
But I don’t know as it is rare I use plain LOS. I’ve had other ROMs wipe out TWRP or OrangeFox on OTA. Despite having an option to reinstall itself after OTA.

Historically speaking I’ve never done OTAs, always flashing updates manually. Nowadays things aren’t so “simple”