• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

Downgrading from 23010 to any lower version–stock boot.img doesn't seem to get patched

Search This thread

davidmoore0

Member
Mar 6, 2015
14
2
Nashville, Tennessee
Phone: Android 11 stock running on Pixel 4XL

The canary came out of the coal mine yesterday and I gladly accepted 23010 without realizing the implications of doing so. The update broke, and Magisk ceased working. I reinstalled the apk and got a patched boot image out of it and all was well, until I saw that MagiskHide is gone–I am not yet ready for that.

So, I tried to downgrade. I have the stock boot.img (and prior patched images I'd saved for my current version of Android). I tried to flash the patched image for 23000 and 22100 in fastboot, and even attempted flashing the old 21.4 zip file in recovery. Still, when I boot my device, it always ends up as lacking a Magisk installation unless I use 23010.

Any ideas?
 

magjir

Member
Jul 7, 2013
32
5
The fix for me was to remove "magisk.db" from /data/adb/. When I downgraded, magisk crashed (as seen in log) and wasn't recognized in app. Only after removal of .db, the older v23000 was correctly started.
 

xscope44

Member
Jan 25, 2019
11
2
Bratislava
Phone: Android 11 stock running on Pixel 4XL

The canary came out of the coal mine yesterday and I gladly accepted 23010 without realizing the implications of doing so. The update broke, and Magisk ceased working. I reinstalled the apk and got a patched boot image out of it and all was well, until I saw that MagiskHide is gone–I am not yet ready for that.

So, I tried to downgrade. I have the stock boot.img (and prior patched images I'd saved for my current version of Android). I tried to flash the patched image for 23000 and 22100 in fastboot, and even attempted flashing the old 21.4 zip file in recovery. Still, when I boot my device, it always ends up as lacking a Magisk installation unless I use 23010.

Any ideas?
I had exactly same issue, so I am going to try uninstall magisk from app now.
 

ssdd28561

Member
Aug 7, 2012
11
7
Newest alfa builds still have MagiskHide if you decide not to use Zygisk. So this change is going to canary and stable versions. Module repository is definitely gone.


At this point I'm using https://github.com/Fox2Code/FoxMagiskModuleManager app, that checks module updates from

https://github.com/Magisk-Modules-Alt-Repo
https://github.com/Magisk-Modules-Repo

Screenshot_20211028-081720.png
 

wiz.wiz

Senior Member
Oct 29, 2013
236
25
Toulouse
www.tournoidesdieux.fr
Hi, I rooted my Pixel 6 (non pro) but also have the issue with "magisk hide" which disappeared.
I understood I had to :
1) through magisk app, click on "uninstall magisk", then reboot system
2) reboot fastboot and flash unpatched boot.img
3) install magisk v23 ? and patch boot.img
=> This step fails : "Unable to unpack boot image, installation failed"
=> Am I using the right magisk version ??? If not, where can I retrieve the correct one ?
4) reboot fastboot and flash patched boot.img

Thanks or your help
 
Last edited:

Didgeridoohan

Senior Moderator / Dev Committee / Dev Relations
Staff member
May 31, 2012
12,231
1
14,337
Gothenburg
Google Nexus 4
Nexus 6
Hi, I rooted my Pixel 6 (non pro) but also have the issue with "magisk hide" which disappeared.
I understood I had to :
1) through magisk app, click on "uninstall magisk", then reboot system
2) reboot fastboot and flash unpatched boot.img
3) install magisk v23 (here : https://magiskapp.com/apk/) ? and patch boot.img
=> This step fails : "Unable to unpack boot image, installation failed"
=> Am I using the right magisk version ??? If not, where can I retrieve the correct one ?
4) reboot fastboot and flash patched boot.img

Thanks or your help
That's not an "issue", it's by design. And v23 won't work on the Pixel 6, you need build 23010 or newer.

A couple of options are available. Stay on the current official Canary and following releases, or use one of the custom unofficial Magisk releases that are available with MagiskHide added back in (you can find them if you look through the general support thread).

As far as I've seen, Deny list is just about as useful for hiding root as MagiskHide (but there are of course differences).

Never use any other source for downloading Magisk other than John's Github (or whatever unofficial build you want to use). That link you're providing/using is not an official source and if you're really unlucky you'll be downloading and installing malicious files...
 

wiz.wiz

Senior Member
Oct 29, 2013
236
25
Toulouse
www.tournoidesdieux.fr
That's not an "issue", it's by design. And v23 won't work on the Pixel 6, you need build 23010 or newer.

A couple of options are available. Stay on the current official Canary and following releases, or use one of the custom unofficial Magisk releases that are available with MagiskHide added back in (you can find them if you look through the general support thread).

As far as I've seen, Deny list is just about as useful for hiding root as MagiskHide (but there are of course differences).

Never use any other source for downloading Magisk other than John's Github (or whatever unofficial build you want to use). That link you're providing/using is not an official source and if you're really unlucky you'll be downloading and installing malicious files...
Hi, thanks a lot for the explanations !
not having Magisk Hide is actually an issue for me. I understood that it's been removed "on purpose" by the author (since he's been hired by Google, strange coincidence no ?), but not having it prevents a few apps from working (Revolut banking app), and the deny list seem not to operate with that app at least.
I will remove the link of my post not to lead other people to that same unofficial source.
I will also look at the unofficial releases, is there one you would recommend ?
 

Didgeridoohan

Senior Moderator / Dev Committee / Dev Relations
Staff member
May 31, 2012
12,231
1
14,337
Gothenburg
Google Nexus 4
Nexus 6
Hi, thanks a lot for the explanations !
not having Magisk Hide is actually an issue for me. I understood that it's been removed "on purpose" by the author (since he's been hired by Google, strange coincidence no ?), but not having it prevents a few apps from working (Revolut banking app), and the deny list seem not to operate with that app at least.
I will remove the link of my post not to lead other people to that same unofficial source.
I will also look at the unofficial releases, is there one you would recommend ?
Of course it's not a coincidence that the nature of MagiskHide changed when John joined the Google security team. Changing MagiskHide to the Deny list was already well underway before that though...

I tested the Revolut app on my device right now, and as soon as I added it to the Deny list it stopped complaining about root and started without issue.

I don't use any unofficial builds, so I have nothing to recommend...
 

wiz.wiz

Senior Member
Oct 29, 2013
236
25
Toulouse
www.tournoidesdieux.fr
Of course it's not a coincidence that the nature of MagiskHide changed when John joined the Google security team. Changing MagiskHide to the Deny list was already well underway before that though...

I tested the Revolut app on my device right now, and as soon as I added it to the Deny list it stopped complaining about root and started without issue.

I don't use any unofficial builds, so I have nothing to recommend...
maybe I missed something yesterday when I tested it.
I tried again, but my Revolut version (installed from local apk) is too old : I can't install/update as the phone is "not certified" on play store.
I have to look at how to workaround it. There was "magikhide props config" I think, but not sure it is going to work with this magisk version.

Edit : the app "mywellness" seem to detect root despite magiskhide (on my wife's previous phone), but works fine with the deny list
 
Last edited:

Didgeridoohan

Senior Moderator / Dev Committee / Dev Relations
Staff member
May 31, 2012
12,231
1
14,337
Gothenburg
Google Nexus 4
Nexus 6
maybe I missed something yesterday when I tested it.
I tried again, but my Revolut version (installed from local apk) is too old : I can't install/update as the phone is "not certified" on play store.
I have to look at how to workaround it. There was "magikhide props config" I think, but not sure it is going to work with this magisk version.

Edit : the app "mywellness" seem to detect root despite magiskhide (on my wife's previous phone), but works fine with the deny list
If you're on the stock Google firmware you're not going to need MagiskHide Props Config. You will most likely need the Universal SafetyNet Fix though, and more specifically the v2.2.0 release (or newer, but that's the latest release as of writing this). Currently only available to the developer's Patreon supporters, but should become publicly available in a not too distant future. That is likely the only way you're going to pass SafetyNet and the your Play Store certified (unless you use some of the experimental unofficial Magisk releases so that you can use earlier releases of the Universal SafetyNet Fix).

Note: to get the Play Store certified once you pass SafetyNet you likely will have to clear data for the Play Store.
 

wiz.wiz

Senior Member
Oct 29, 2013
236
25
Toulouse
www.tournoidesdieux.fr
If you're on the stock Google firmware you're not going to need MagiskHide Props Config. You will most likely need the Universal SafetyNet Fix though, and more specifically the v2.2.0 release (or newer, but that's the latest release as of writing this). Currently only available to the developer's Patreon supporters, but should become publicly available in a not too distant future. That is likely the only way you're going to pass SafetyNet and the your Play Store certified (unless you use some of the experimental unofficial Magisk releases so that you can use earlier releases of the Universal SafetyNet Fix).

Note: to get the Play Store certified once you pass SafetyNet you likely will have to clear data for the Play Store.
Thank you for all this explanation. I will wait for the public availability I think.
Did you use this module to install "Revolut" app, as you tested it ?
I tried to download the apk through a web apk downloader, but it came as a zip file, which I've not been able to install (with pm install, no matter renaming it to .apk or .xapk)
 

AnonVendetta

Senior Member
Apr 29, 2016
935
345
Portland, OR
Thank you for all this explanation. I will wait for the public availability I think.
Did you use this module to install "Revolut" app, as you tested it ?
I tried to download the apk through a web apk downloader, but it came as a zip file, which I've not been able to install (with pm install, no matter renaming it to .apk or .xapk)

Try renaming it to an apks extension, rather than apk or xapk. It could be a split app. Open the zip first and see if there are apk files with "split" in the name. I use Total Commander or Split APK Installer for these.

It's also possible that it's failing to install because it's not "correct" for your CPU architecture. Like, you can't install arm64 split APKs on a 32 bit only arm device.
 

wiz.wiz

Senior Member
Oct 29, 2013
236
25
Toulouse
www.tournoidesdieux.fr
Try renaming it to an apks extension, rather than apk or xapk. It could be a split app. Open the zip first and see if there are apk files with "split" in the name. I use Total Commander or Split APK Installer for these.

It's also possible that it's failing to install because it's not "correct" for your CPU architecture. Like, you can't install arm64 split APKs on a 32 bit only arm device.

no "split" in the name.
I tried with mixplorer and adb shell pm install (and even copying the apks in /data/local/tmp/) :

[email protected]:/media/Donnees/Telephonie/apk$ adb shell pm install com.revolut.revolut_0_apps.evozi.com.apks
Error: Unable to open file: com.revolut.revolut_0_apps.evozi.com.apks
Consider using a file under /data/local/tmp/
Error: Can't open file: com.revolut.revolut_0_apps.evozi.com.apks

Exception occurred while executing 'install':
java.lang.IllegalArgumentException: Error: Can't open file: com.revolut.revolut_0_apps.evozi.com.apks
at com.android.server.pm.PackageManagerShellCommand.setParamsSize(PackageManagerShellCommand.java:572)
at com.android.server.pm.PackageManagerShellCommand.doRunInstall(PackageManagerShellCommand.java:1337)
at com.android.server.pm.PackageManagerShellCommand.runInstall(PackageManagerShellCommand.java:1303)
at com.android.server.pm.PackageManagerShellCommand.onCommand(PackageManagerShellCommand.java:193)
at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)
at android.os.ShellCommand.exec(ShellCommand.java:38)
at com.android.server.pm.PackageManagerService.onShellCommand(PackageManagerService.java:24612)
at android.os.Binder.shellCommand(Binder.java:950)
at android.os.Binder.onTransact(Binder.java:834)
at android.content.pm.IPackageManager$Stub.onTransact(IPackageManager.java:4818)
at com.android.server.pm.PackageManagerService.onTransact(PackageManagerService.java:8506)
at android.os.Binder.execTransactInternal(Binder.java:1184)
at android.os.Binder.execTransact(Binder.java:1143)




[email protected]:/media/Donnees/Telephonie/apk$ unzip -l com.revolut.revolut_0_apps.evozi.com.apks
Archive: com.revolut.revolut_0_apps.evozi.com.apks
Length Date Time Name
--------- ---------- ----- ----
106860349 1980-00-00 00:00 com.revolut.revolut.apk
ApkPure.com
30411 1980-00-00 00:00 icon.png
ApkPure.com
2961817 1980-00-00 00:00 config.en.apk
ApkPure.com
2576899 1980-00-00 00:00 config.de.apk
ApkPure.com
2548227 1980-00-00 00:00 config.es.apk
ApkPure.com
2527747 1980-00-00 00:00 config.it.apk
ApkPure.com
2556419 1980-00-00 00:00 config.pt.apk
ApkPure.com
24570011 1980-00-00 00:00 config.xxxhdpi.apk
ApkPure.com
2691587 1980-00-00 00:00 config.fr.apk
ApkPure.com
2658819 1980-00-00 00:00 config.ja.apk
ApkPure.com
3142147 1980-00-00 00:00 config.ru.apk
ApkPure.com
57116466 1980-00-00 00:00 config.arm64_v8a.apk
ApkPure.com
2109 1980-00-00 00:00 manifest.json
ApkPure.com
--------- -------
210243008 13 files