Magisk General Support / Discussion

Search This thread

notoriginal10

Senior Member
Feb 2, 2022
67
25
Hey there,
apologies, if this has been addressed, but it didn't came up after a lengthy search. (At least not with a solution that worked).


Anyway, I want to run GrapheneOS on a Pixel 7a, rooted with Magisk and a unlocked bootloader for now.

I did flash GrapheneOS and booted it afterwards.
Then I took the boot.img included in the same factory image zip and patched it on device with the latest Magisk app.
I flashed the patched boot.img from fastboot (fastboot flash boot boot.img, I even tried with "--slot all"), but after rebooting the Magisk app shows "Installed N/A".

It simply looks like it doesn't get installed, but every step finishes successful without any error.

Did I miss anything? What else could I try?
 

roirraW "edor" ehT

Forum Moderator
Staff member
Does anyone know if there is a way to switch slots on the device itself, as opposed to jumping on the PC to change via fastboot?
Probably not the answer you're looking for, and this is from an Asus thread, but this may apply to some other devices, such as my Pixel:
3. Switching the Slot via Magisk

The active slot can also be changed in the Magisk App. This is used to update the boot partition after an OTA (see here https://topjohnwu.github.io/Magisk/ota.html for details) but can also be used to manual change the active slot.

Open the Magisk App and choose the "install" button to install Magisk into the boot partition. In the next dialog use the method "Install to inactive Slot (After OTA)".

This works also if no update (OTA) was installed and it does not change the Magisk config - it just replaces the Magisk files in the inactive boot partition and activates the inactive boot partition. To reboot the phone then from the now active partition press the "Reboot" button after the update of the boot partition by Magisk is done.

This only works if the OS in both slots is supported by Magisk, of course.

There is also another method mentioned in that post (details there):
4. Using the binary bootctl
 

roirraW "edor" ehT

Forum Moderator
Staff member
Hey there,
apologies, if this has been addressed, but it didn't came up after a lengthy search. (At least not with a solution that worked).


Anyway, I want to run GrapheneOS on a Pixel 7a, rooted with Magisk and a unlocked bootloader for now.

I did flash GrapheneOS and booted it afterwards.
Then I took the boot.img included in the same factory image zip and patched it on device with the latest Magisk app.
I flashed the patched boot.img from fastboot (fastboot flash boot boot.img, I even tried with "--slot all"), but after rebooting the Magisk app shows "Installed N/A".

It simply looks like it doesn't get installed, but every step finishes successful without any error.

Did I miss anything? What else could I try?
I don't know specifically about GrapheneOS, or the 7a for that matter, but on the Pixel 7 and 7 Pro, init_boot.img is what needs patched with Magisk to get root, not boot.img.
 

shoey63

Recognized Contributor
Probably not the answer you're looking for, and this is from an Asus thread, but this may apply to some other devices, such as my Pixel:


There is also another method mentioned in that post (details there):
Thanks
I have Rog 3 (with latest TWRP) and P6 so I have a few options to try.
 
  • Like
Reactions: roirraW "edor" ehT

sawdoctor

Senior Member
Sep 11, 2016
470
283
There's no problem relocking on Samsung either...

You will lose special Samsung secure 'business platform' B2B (Business to Business) features (+ device enrollment for Knox solutions) incl. use of the Knox Security Container when Knox fuse (warranty bit) is blown.

Several Samsung apps and utilities use Knox Security so these will be also be broken including:
- Samsung pay*
- Samsung Pass
- Samsung Health
- Samsung Secure Folder
*Nb. There should be no issue for G Pay/Wallet.

I believe warrant may still be intact depending on local law, but in many lands the warranty will be voided.

Basically:


Likely most users never use the Knox enterprise features and might not need S Pay, S Health etc but need to realise that those features will be lost by flashing custom mods (not simply by unlocking bootloader)... Otherwise they can simply re-lock if and continue using device as before if they wish.

👀 PW
Unfortunately I use everyones of the apps you listed which is why i never rooted my zfold 3. The one think Knox gives you is adhell 3 and other similar apps. You can use the Knox firewall as a pretty effective adblocker and to disable system apps/remove permissions and receivers.
 

DaOldMan

Senior Member
Oct 6, 2010
3,710
5,961
There's no problem relocking on Samsung either...

You will lose special Samsung secure 'business platform' B2B (Business to Business) features (+ device enrollment for Knox solutions) incl. use of the Knox Security Container when Knox fuse (warranty bit) is blown.

Several Samsung apps and utilities use Knox Security so these will be also be broken including:
- Samsung pay*
- Samsung Pass
- Samsung Health
- Samsung Secure Folder
*Nb. There should be no issue for G Pay/Wallet.

I believe warrant may still be intact depending on local law, but in many lands the warranty will be voided.

Basically:


Likely most users never use the Knox enterprise features and might not need S Pay, S Health etc but need to realise that those features will be lost by flashing custom mods (not simply by unlocking bootloader)... Otherwise they can simply re-lock if and continue using device as before if they wish.

👀 PW
I must say that I totaly hate that warranty bit. No idea why, when relocking the device and wiping the device completely that bit is not reverted to 0x0 to allow the full experience. It's one of the biggest things that I dislike about Samsung devices as I like to root my devices and make roms for them :) .
 

zgfg

Senior Member
Oct 10, 2016
9,647
7,512
Redmi K20 / Xiaomi Mi 9T
Xiaomi Mi 11
Does anybody know what (actually, why it) happened to magisk --path?

AFAIK, it used to point to /dev/<something> but now, with Canary 26102 it points to /debug_ramdisk

Indeed, I can execute the following (commands and responses) on Magisk Delta 25210:

<cmd>
su
magisk --path

<resp>
/dev/gpjeftludcwoxhw

<cmd>
cd $(magisk --path)/.magisk/modules
pwd

<resp>
/dev/gpjeftludcwoxhw/.magisk/modules

<cmd>
touch MY-TEST-FILE_TO-BE-DELETED
ls MY*

<resp>
MY-TEST-FILE_TO-BE-DELETED

<cmd>
rm MY*

Ie, you see the path to /dev and that I can write to the subfolder

However, on Magisk 26102 it responds with a different path and eventually the subfolder is read-only:

<cmd>
su
magisk --path

<resp>
/debug_ramdisk

<cmd>
cd $(magisk --path)/.magisk/modules
pwd

<resp>
/debug_ramdisk/.magisk/modules

<cmd>
touch MY-TEST-FILE_TO-BE-DELETED

<resp>
Read-only file system

<cmd>
ls MY*

<resp>
ls: MY*: No such file or directory

---

I'm asking because I cannot make AML module to work.
It installs but doesn't create and/or populate it's folders with audio conf and xml patched files from eg V4A:
/data/adb/aml
/data/adb/modules/aml/system


It's because its post-fs-data.sh and service.sh scripts at zillion places try to write to the (now) read-only path:
$(magisk --path)/.magisk/modules/aml/system

Even worse, post-fs-data sh strictly assumes it is on /dev/<something>, hence it looks for:

[ -d "/sbin/.magisk" ] && MAGISKTMP="/sbin/.magisk" || MAGISKTMP="$(find /dev -mindepth 2 -maxdepth 2 -type d -name ".magisk")"

MODPATH=$MAGISKTMP/modules/aml

and therefore it obtains a complete b...sht - path to the not-existing folder:

<cmd>
echo "$MODPATH"

<resp>
/modules/aml

where it cannot read nor write to

Today I tried to adapt the AML scripts and got my modded AML module creating the folders, picking up audio conf and xml files but it breaks me then the V4A

---

Actually, I wanted to install JamesDSP (alongside with V4A and AML) - JamesDSP is also broken on Magisk v26 (reported in the JDSP thread by several users)

Unfortunately, JamesDSP does not have scripts but the logic is in the Java JDSP manager app and I assume (both modules are from the same developer and btw he had disabled reporting of Issues to GitHub 😁) that it must be a similar problem with the now changed magisk --path on Magisk v26 (JDSP also works fine with Magisk Delta)

However, JamesDSP fails to work on Magisk v26 even if installed as the single/only audio module (hence, without the need for AML)

It creates /data/adb/modules/ainur_jamesdsp/system but doesn't populate with the patched audio files, and when you try to run JDSP manager app, it immediately crashes

---

If some power users could try please the quoted code on their Magisk v26, and maybe also on Alpha v26 (assuming, the wind of change was blowing again from that direction 😁)

And/or, please try AML and JamesDSP modules on your Canary and Alpha v26

Edit:
Script attached for easier testing. Run the script in Terminal, with root privileges
 

Attachments

  • magisk-path.sh
    579 bytes · Views: 3
  • IMG_20230530_230546.jpg
    IMG_20230530_230546.jpg
    217.3 KB · Views: 42
  • IMG_20230530_230928.jpg
    IMG_20230530_230928.jpg
    245.2 KB · Views: 44
Last edited:

sawdoctor

Senior Member
Sep 11, 2016
470
283
Does anybody know what (actually, why it) happened to magisk --path?

AFAIK, it used to point to /dev/<something> but now, with Canary 26102 it points to /debug_ramdisk

Indeed, I can execute the following (commands and responses) on Magisk Delta 25210:

<cmd>
su
magisk --path

<resp>
/dev/gpjeftludcwoxhw

<cmd>
cd $(magisk --path)/.magisk/modules
pwd

<resp>
/dev/gpjeftludcwoxhw/.magisk/modules

<cmd>
touch MY-TEST-FILE_TO-BE-DELETED
ls MY*

<resp>
MY-TEST-FILE_TO-BE-DELETED

<cmd>
rm MY*

Ie, you see the path to /dev and that I can write to the subfolder

However, on Magisk 26102 it responds with a different path and eventually the subfolder is read-only:

<cmd>
su
magisk --path

<resp>
/debug_ramdisk

<cmd>
cd $(magisk --path)/.magisk/modules
pwd

<resp>
/debug_ramdisk/.magisk/modules

<cmd>
touch MY-TEST-FILE_TO-BE-DELETED

<resp>
Read-only file system

<cmd>
ls MY*

<resp>
ls: MY*: No such file or directory

---

I'm asking because I cannot make AML module to work.
It installs but doesn't create and/or populate it's folders with audio conf and xml patched files from eg V4A:
/data/adb/aml
/data/adb/modules/aml/system


It's because its post-fs-data.sh and service.sh scripts at zillion places try to write to the (now) read-only path:
$(magisk --path)/.magisk/modules/aml/system

Even worse, post-fs-data sh strictly assumes it is on /dev/<something>, hence it looks for:

[ -d "/sbin/.magisk" ] && MAGISKTMP="/sbin/.magisk" || MAGISKTMP="$(find /dev -mindepth 2 -maxdepth 2 -type d -name ".magisk")"

MODPATH=$MAGISKTMP/modules/aml

and therefore it obtains a complete b...sht - path to the not-existing folder:

<cmd>
echo "$MODPATH"

<resp>
/modules/aml

where it cannot read nor write to

Today I tried to adapt the AML scripts and got my modded AML module creating the folders, picking up audio conf and xml files but it breaks me then the V4A

---

Actually, I wanted to install JamesDSP (alongside with V4A and AML) - JamesDSP is also broken on Magisk v26 (reported in the JDSP thread by several users)

Unfortunately, JamesDSP does not have scripts but the logic is in the Java JDSP manager app and I assume (both modules are from the same developer and btw he had disabled reporting of Issues to GitHub 😁) that it must be a similar problem with the now changed magisk --path on Magisk v26 (JDSP also works fine with Magisk Delta)

However, JamesDSP fails to work on Magisk v26 even if installed as the single/only audio module (hence, without the need for AML)

It creates /data/adb/modules/ainur_jamesdsp/system but doesn't populate with the patched audio files, and when you try to run JDSP manager app, it immediately crashes

---

If some power users could try please the quoted code on their Magisk v26, and maybe also on Alpha v26 (assuming, the wind of change was blowing again from that direction 😁)

And/or, please try AML and JamesDSP modules on your Canary and Alpha v26
Not the answer but have you tried the rootless jamesdsp apk? You can use that with or without magisk and can switch between the 2
 

zgfg

Senior Member
Oct 10, 2016
9,647
7,512
Redmi K20 / Xiaomi Mi 9T
Xiaomi Mi 11
Not the answer but have you tried the rootless jamesdsp apk? You can use that with or without magisk and can switch between the 2
No I didn't

I have root and I'm not interested in rootless solutions😁

(And I'm interested to see how/why some things are constantly changed in Magisk in a way that one thing is fixed but the other changed and introducing troubles to the other modules - we are experiencing that since Canary v25207

Although, troubles are dragged here by the code in the AML scripts)
 
Last edited:
  • Like
Reactions: roirraW "edor" ehT

sawdoctor

Senior Member
Sep 11, 2016
470
283
No I didn't

I have root and I'm not interested in rootless solutions😁

(And I'm interested to see how/why some things are constantly changed in Magisk in a way that one thing is fixed but the other changed and introducing troubles to the other modules - we are experiencing that since Canary v25207

Although, troubles are dragged here by the code in the AML scripts)
The rootless jamesdsp apk works either with root or adb so it is also a root app. I meant try it to see if it works with magisk or not, if it works at least you can use the module until magisk issue is resolved and you can easily switch back from within the app itself
 

ipdev

Recognized Contributor
Feb 14, 2016
2,530
1
5,107
Google Nexus 10
Nexus 7 (2013)
Does anybody know what (actually, why it) happened to magisk --path?

AFAIK, it used to point to /dev/<something> but now, with Canary 26102 it points to /debug_ramdisk

<SNIP>
"New magisk tmp dir: /debug_ramdisk"
Magisk - [GitHub] - commit

Example: Pixel 3a Lineage 19.1
Code:
bonito:/ $ magisk -v
c79bc8327-ip:MAGISK:R
bonito:/ $ magisk -V
26102
bonito:/ $ magisk --path
/debug_ramdisk
bonito:/ $ ls -la debug_ramdisk/
ls: debug_ramdisk/: Permission denied
1|bonito:/ $ su -c ls -la debug_ramdisk/
total 1408
drwx--x--x  5 root root    260 2023-05-30 20:21 .
drwxr-xr-x 26 root root   4096 2023-04-22 18:55 ..
drwxr-xr-x 11 root root    260 2023-05-30 20:21 .magisk
drwxr-xr-x  2 root root     80 2023-05-30 20:21 dex2oat
lrwxrwxrwx  1 root root     10 1974-02-05 10:08 magisk -> ./magisk64
-rwxr-xr-x  1 root root 164200 1974-02-05 10:08 magisk32
-rwxr-xr-x  1 root root 259984 1974-02-05 10:08 magisk64
-rwxr-x---  1 root root 657224 1974-02-05 10:08 magiskinit
-rwxr-xr-x  1 root root 345584 2023-05-30 20:21 magiskpolicy
lrwxrwxrwx  1 root root      8 1974-02-05 10:08 resetprop -> ./magisk
drwxr-xr-x  2 root root     80 2023-05-30 20:21 shamiko
lrwxrwxrwx  1 root root      8 1974-02-05 10:08 su -> ./magisk
lrwxrwxrwx  1 root root     14 1974-02-05 10:08 supolicy -> ./magiskpolicy
bonito:/ $

Not sure if it helps but, that was the change.
¯\_(ツ)_/¯

Cheers. :cowboy:
 

pndwal

Senior Member
Unfortunately I use everyones of the apps you listed which is why i never rooted my zfold 3. The one think Knox gives you is adhell 3 and other similar apps. You can use the Knox firewall as a pretty effective adblocker and to disable system apps/remove permissions and receivers.
Still, you said
At least you can relock bootloader and go back stock I guess. On Sammy once you trip Knox that's it something's will never ever work again...
which is just not true.
Edit: Seems I've misunderstood the members meaning here (as pointed out in next post), sorry! 🙃

FWIW however, you can both re-lock B/L and use stock ROM again and you will have Android like other devices. Samsung just disable their proprietary special knox-based features after device is tampered...
I must say that I totaly hate that warranty bit. No idea why, when relocking the device and wiping the device completely that bit is not reverted to 0x0 to allow the full experience.
Old Sammy devices did work that way, but now soc makers include e-fuses that utilise physical burn-in on the substrate... I put info on use of q-fuses (Qualcomm) here:
https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-85146255

Samsung says
If a non-Knox boot loader or kernel has been installed on the device, Knox can no longer guarantee the security of the Knox container. As a result, the Warranty Bit is tripped to 0X1, indicating that this device can no longer use the Knox Workspace (container.)

I put a number of links here (incl. ref. above):
https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-85755893

It's one of the biggest things that I dislike about Samsung devices as I like to root my devices and make roms for them :) .
Yup... It's a choice... Much like Google's device integrity APIs and key attestation models really... They're doing that because they must compete in the secure Mobile OS arena in today's climate, and are loosing to IOS in the enterprise/corporate marketplace because of the (justified) perception that Android is largely insecure...

Samsung want to position themselves as a credible alternative to IOS/iPhone and as the leading manufacturer of property secure Android devices in this market too as the (somewhat outdated) links above show...

The difference in these approaches (ie. Google doesn't penalise modders by making the restoration of some device features impossible while Samsung does) may indicate that Google is more supportive of the modding community than is Samsung... I don't know if Sammy encourage custom modders in any way other than allowing B/L unlock... But it's still far more generous that what IOS will offer you!

😜 PW
 
Last edited:
  • Like
Reactions: VerticalCobra

sawdoctor

Senior Member
Sep 11, 2016
470
283
Still, you said

which is just not true. You can both re-lock B/L and use stock ROM again and you will have Android like other devices. Samsung just disable their proprietary special knox-based features after device is tampered...

Old Sammy devices did work that way, but now soc makers include e-fuses that utilise physical burn-in on the substrate... I put info on use of q-fuses (Qualcomm) here:
https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-85146255

Samsung says


I put a number of links here (incl. ref. above):
https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-85755893


Yup... It's a choice... Much like Google's device integrity APIs and key attestation models really... They're doing that because they must compete in the secure Mobile OS arena in today's climate, and are loosing to IOS in the enterprise/corporate marketplace because of the (justified) perception that Android is largely insecure...

Samsung want to position themselves as a credible alternative to IOS/iPhone and as the leading manufacturer of property secure Android devices in this market too as the (somewhat outdated) links above show...

The difference in these approaches (ie. Google doesn't penalise modders by making the restoration of some device features impossible while Samsung does) may indicate that Google is more supportive of the modding community than is Samsung... I don't know if Sammy encourage custom modders in any way other than allowing B/L unlock... But it's still far more generous that what IOS will offer you!

😜 PW
What I said was once you root something's will never work again which is 💯 CORRECT. Of course you can relock bootloader but it won't fix the apps that will never work again and that was my point ffs
 

pndwal

Senior Member
What I said was once you root something's will never work again which is 💯 CORRECT. Of course you can relock bootloader but it won't fix the apps that will never work again and that was my point ffs
Ah... Sorry. 🙁

I'd read
At least you can relock bootloader and go back stock I guess. On Sammy once you trip Knox that's it something's will never ever work again...
to mean you 'can't relock bootloader and go back to stock on Sammy once you trip Knox, and that's something that will never ever work again' rather than 'If you relock bootloader and go to back stock on Sammy, once you trip Knox some things will never ever work again'!... 🤪

I probably should have asked you to clarify that, sorry mate... PW
 
Last edited:

zgfg

Senior Member
Oct 10, 2016
9,647
7,512
Redmi K20 / Xiaomi Mi 9T
Xiaomi Mi 11
"New magisk tmp dir: /debug_ramdisk"
Magisk - [GitHub] - commit

Example: Pixel 3a Lineage 19.1
Code:
bonito:/ $ magisk -v
c79bc8327-ip:MAGISK:R
bonito:/ $ magisk -V
26102
bonito:/ $ magisk --path
/debug_ramdisk
bonito:/ $ ls -la debug_ramdisk/
ls: debug_ramdisk/: Permission denied
1|bonito:/ $ su -c ls -la debug_ramdisk/
total 1408
drwx--x--x  5 root root    260 2023-05-30 20:21 .
drwxr-xr-x 26 root root   4096 2023-04-22 18:55 ..
drwxr-xr-x 11 root root    260 2023-05-30 20:21 .magisk
drwxr-xr-x  2 root root     80 2023-05-30 20:21 dex2oat
lrwxrwxrwx  1 root root     10 1974-02-05 10:08 magisk -> ./magisk64
-rwxr-xr-x  1 root root 164200 1974-02-05 10:08 magisk32
-rwxr-xr-x  1 root root 259984 1974-02-05 10:08 magisk64
-rwxr-x---  1 root root 657224 1974-02-05 10:08 magiskinit
-rwxr-xr-x  1 root root 345584 2023-05-30 20:21 magiskpolicy
lrwxrwxrwx  1 root root      8 1974-02-05 10:08 resetprop -> ./magisk
drwxr-xr-x  2 root root     80 2023-05-30 20:21 shamiko
lrwxrwxrwx  1 root root      8 1974-02-05 10:08 su -> ./magisk
lrwxrwxrwx  1 root root     14 1974-02-05 10:08 supolicy -> ./magiskpolicy
bonito:/ $

Not sure if it helps but, that was the change.
¯\_(ツ)_/¯

Cheers. :cowboy:
Apparently, there was also a change in the $MAGISKTMP variable (available during the Installation of Magisk modules):
In Magisk v26 it points to magisk --path (the new path), in the older Magisk versions it pointed to the subfolder .magisk of the old magisk --path

Nevertheless, I made the modifications that both AML and JamesDSP modules can now work also on Magisk v26 (zip installations attached in the quoted post):
https://forum.xda-developers.com/t/jamesdsp-audio-manager-mmt-ex.3607970/post-88598223
 

Attachments

  • Screenshot_2023-06-01-19-51-23-736_com.topjohnwu.magisk.jpg
    Screenshot_2023-06-01-19-51-23-736_com.topjohnwu.magisk.jpg
    456.4 KB · Views: 31
  • Screenshot_2023-06-01-19-53-33-002_com.pittvandewitt.viperfx.jpg
    Screenshot_2023-06-01-19-53-33-002_com.pittvandewitt.viperfx.jpg
    237.3 KB · Views: 33
  • Screenshot_2023-06-01-19-50-51-036_com.topjohnwu.magisk.jpg
    Screenshot_2023-06-01-19-50-51-036_com.topjohnwu.magisk.jpg
    340.8 KB · Views: 29
  • Screenshot_2023-06-01-19-52-17-257_james.dsp.jpg
    Screenshot_2023-06-01-19-52-17-257_james.dsp.jpg
    314.8 KB · Views: 33

Top Liked Posts

  • 4
    ... except the poster did indeed try that, and the SIM card is fine. See above.
    That's not the point. The point is it was an obvious thing to check, I never thought of it, @iruiz2 did, and I would have liked to be able to paste glitter and unicorns all over his post to express how much I Liked it.

    You, on the other hand, can expect coal in your stocking.
    1
    the big button that said Uninstall Magiak, hit restore Images, did nothing, then I completed uninstall, unrooted my phone, then i factory resetted my phone, and my phone is still locked.
    Just to make sure... Did you test your SIM card is working on another phone, and that another SIM card is not working on yours?
    1
    Just to make sure... Did you test your SIM card is working on another phone, and that another SIM card is not working on yours?
    Yes I literally walked into a T MOBILE store and the employee put the same sim card into a display phone and it worked normally, even that same phone showing up on my T-Mobile account
    1
    the big button that said Uninstall Magiak, hit restore Images, did nothing, then I completed uninstall, unrooted my phone, then i factory resetted my phone, and my phone is still locked.
    How "did nothing"?

    If "did nothing", how "completed uninstall"?

    And what then is "unrooted"?

    I will grant you that factory reset almost certainly removed the remnants about which I was concerned.

    Maybe instead of wasting more time trying to get you to explain what you did, just follow the instructions you have been given repeatedly:
    • flash the stock ROM
    • confirm that the SIM related functions work
    • install a Magisk manager app
    • patch the boot image (and please make sure that it is the boot image from the stock ROM; and if your device/ROM is one where you need to patch something other than boot.img, patch the right thing, don't patch or flash the wrong thing; remember to uncheck the Recovery option if you have one)
    • flash the appropriate patched file
    • test the SIM related functions

    And please stop saying that your phone is "locked". Unless you have relocked your bootloader. In which case, I'm done.
    1
    the big button that said Uninstall Magiak, hit restore Images, did nothing, then I completed uninstall, unrooted my phone, then i factory resetted my phone, and my phone is still locked.
    If Restore Images "did nothing", I suspect Complete Uninstall, which includes Restore Images, will have failed with errors also...

    Please say if you did anything more to restore unpatched images because it isn't clear...

    Despite 'losing root', before concluding your device is properly returned to stock in the event that Uninstall options don't work, you need to (properly) flash back boot.img or full ROM via fastboot or similar 'download' mode... PW
  • 8
    I consider it to be unfair to define "modder" or "developer" as "anyone who dumps partitions/nandroid".
    <SNIP>

    <SNIP>
    Since it's not available without unlocking, 'anyone who dumps partitions / performs nandroid' has to agree to modify the device by unlocking which changes original product features including disabling security functions and other features... Then they generally install a custom (modified) recovery...😆
    <SNIP>
    I miss the days when I could just use adb to dump the data partition into an image file and flash it back. 😿️

    Better yet, when I could wipe system, install a different OS version and leave userdata alone.
    [The original Clean/Dirty flash install.] 🙃️

    As for the Cat and Mouse game...

    My money is on the Mice. 😜️
    "Look, sorry - are we talking about the little white furry things with the cheese fixation and women standing on tables screaming in early sixties sit coms?"

    Slartibartfast coughed politely.

    "These creatures you call mice, you see, they are not quite as they appear. They are merely the protrusion into our dimension of vast hyperintelligent pandimensional beings. The whole business with the cheese and the squeaking is just a front."
    ― Douglas Adams, The Hitchhiker's Guide to the Galaxy

    Cheers all. :cowboy:

    PS.
    I miss FlashFire.
    😥️
    8
    This illustrates why I always want to be able to use a device upon which TWRP (or perhaps OrangeFox) is functional. As long as I've taken a proper full nandroid backup of a previous working system, I can easily nandroid-restore that working system after an upgrade, if I wish.

    I am not happy with Google for continuing to "enhance" (ha ha!) Android as time goes on,
    Yeah... And Microsoft should have stayed with DOS, and maybe Windows as a DOS add-on!...
    thereby making it more and more difficult to get TWRP and OrangeFox working with newer Android versions.
    That's certainly NOT their intention...

    There's a lot to be said for new innovations and OEM requirements both in the mart of competitive commerce and for the value -added benefits to general Android users...

    Just as a few examples,
    • SAR/2SI enhancements allow for A/B partitioning and 'seamless' (streamed) delta OTA updates,
    • Shared blocks architecture allows for dynamic sup-super partitions which may be RO but are resizable with no unused space, upgradable to larger /system etc in future and space optimised/saving etc,
    • Project Treble (Android 8+)
    https://www.xda-developers.com/goog...ze-android-so-oems-can-update-devices-faster/
    modularised Android so that OEMs can serve Android updates more quickly by reducing OEM dependence on SoC vendors for every single OS update and introduced a new 'vendor interface' and Vendor Test Suite (VTS)... It also facilitated
    • The GSI Project (Android 9+)
    https://developer.android.com/topic/generic-system-image
    which allows app developers to install and run the latest Android Generic System Images to perform app testing on a variety of existing Android devices, and use GSIs from different Android OS release stages... Extra benefits include:
    - Broader test coverage on a greater set of real devices
    - More time to fix app compatibility issues
    - More opportunities to fix compatibility issues in Android that are reported by app developers
    • Project Mainline (Android 10+)
    https://www.xda-developers.com/android-q-project-mainline-security/
    (modules:)
    https://www.xda-developers.com/android-project-mainline-modules-explanation/
    expands on Treble's modularisation to further address fragmentation, adding Android Pony EXpress update packages to allow updating system modules (APEX includes all needed libraries, ART, HALs and precompiled code on addition to apps) through Google Play in Android 10 and 25 new modules with A11, as well as reducing how dependent Google is on OEMs for delivering security updates to key OS components. It also facilitated
    • The GKI Project (Android 11+)
    https://source.android.com/docs/core/architecture/kernel/generic-kernel-image
    with its Generic Kernel Image is an essential change aimed addressing the issue/costs of fragmentation which "has several negative effects on the Android community". GKI/Mainline reductions in fragmentation thus:
    - Make security updates less labor intensive
    - Allow merging Long-Term Supported updates
    - Removes factors that Inhibit Android platform release upgrades
    - Allows easier contribution of kernel changes back to upstream Linux

    So Treble and Mainline, with their GSI and GKI changes/requirements, are initiatives to facilitate easier updates for vendors, give incentive to support devices much longer, etc.

    Google is in the business of promoting it's mobile OS and producing development milestones that reduce costs, improve efficiency, lifecycle, specs etc for OEMs and end users in order to stay competitive, relevant, innovative and appealing... And they make major architectural changes for these reasons...

    They aren't in the game of "making it more and more difficult to get TWRP and OrangeFox working"; they appreciate these efforts but (quite reasonably) have the (different) priorities mentioned above...

    Just as with Magisk injection, there is much pressure on Dee's Troy and team (and other custom recovery teams) to get TWRP functioning properly, let alone to mount and decrypt user data with an ever changing Android architecture, but there are clearly more complex considerations than for simple Magisk injection... Even so, Google allows and even supports such custom mod efforts...

    Moreover it's not Google's fault that community projects like TeamWin find it difficult to devote the time, conscript the Devs or otherwise overcome obstacles needed to properly support new Android iterations... They actually supply clear documentation as part of AOSP for these changes to benefit all Android devs, whether OEMs, app makers or custom modders...

    I don't really know why TWRP has not progressed past Oct 2022 3.7.0 A12 base builds at this time despite the fact that 'Android 13 development had started' already, but the difficulty they have keeping up is not new... I note that everything there is still © 2014 to 2022, also that:
    TWRP development is done by roughly 4 people at this point. We also have a large support community with many people who are willing to answer questions and help people with their devices either through our Zulip channel or on forums like xda-developers.
    https://twrp.me/about/
    and that, just as when Dees Troy lamented that 'real life' was preventing TWRP keeping pace, the four base team members are still appealing for volunteers:
    We need your help! The bulk of TWRP work is done by a handful of people on a volunteer basis. We have pushed most of our device files to our github and we have a gerrit instance. If you have the ability, please help us maintain our official devices and/or add your device to our official device list. Thanks in advance!
    -----​

    Despite the difficulty the TWRP four have keeping up with the Google juggernaut, apparently many devices running A13+ have at least unofficial TWRP support with working decryption. Some won't allow permanent flashing but temp booting TWRP works nonetheless, and some have other issues...

    Re devices launched with Android 13:

    Just on Thursday, Dev @Nebrassy posted a TWRP build for OnePlus 11 which is apparently working despite some niggles:
    https://forum.xda-developers.com/t/recovery-12-unofficial-teamwin-recovery-project.4625181/

    This device has dedicated /recovery_a and /recovery_b partitions and Qualcomm SoC, and the Dev doesn't even own the device...

    For Pixel 7 series, the delay getting TWRP w/ decryption working seems to be Tensor SoC / device tree syncing and possibly StrongBox / KeyMint / Titan chip implementation(?) rather than general Android Architectural changes and initiatives.

    However, just yesterday @Wishmasterflo posted a test build of OrangeFox recovery (this is "synced with the latest Teamwin changes", and originally from a Dev who later joined LineageOS) for the Pixel 7a:
    https://forum.xda-developers.com/t/...g-thats-being-worked-on.4532237/post-88986509
    Nb. The Dev cannot test ATM as his device is still locked...

    Pixel 7a users: If someone tests and this works, I'm sure custom recovery support for Pixel 7 series devices will gain momentum...

    Takers?
    -----​

    ... FWIW, some modders will experiment/toy with the latest devices / Android versions as soon as they arrive... Others will stay with old tech because of affordability but migrate ASAP... Still others will refrain as long as possible, whether out of nostalgia or for other reasons...

    Similarly, some car drivers will migrate to EVs quickly... Others will when the price point is more agreeable... Still others will refrain as long as possible, and some will hanker for the ICE age with the smell of petrol and the roar of engines long after it's gone!

    Personally, despite not being able to afford a Tesla yet, I think auto makers in general have not moved to new tech nearly fast enough!...I expect them to continue to "enhance" transportation options as time goes on however... And I cannot be unhappy when phone market leaders adapt, innovate and move with the times either...

    Just might be able to get me a 2nd hand P7Pro now that the P8's in the wind, and wire a fast-charge outlet into the dash of the ol Ford Perfect... 😜 PW
    4
    Full nandroid backups are for modders...

    Actually, full nandroid backups are quite helpful for non-modders, as well.

    Consider the following ...

    A typical non-modding Android user on a standard, factory, non-rooted ROM on a standard Android-approved device applies standard, approved OTA updates when they are offered.

    But after one such OTA is successfully applied, the user then realizes that the system has been modified in one or more ways that he or she doesn't like, and the user therefore wants to roll back the OTA update.

    If there was a utility which would have allowed the user to have taken a full nandroid-like backup right before initiating the OTA update, he or she could then easily and relatively quickly use that utility to restore the system back to the exact state it was in right before the OTA.

    Again, I'm not saying that Google SHOULD offer a such nandroid-like backup/restore utility, but it certainly would be nice to have. And if such a standard Android utility was offered by Google, this would save countless person-hours of development efforts for the creation of numerous versions of TWRP and OrangeFox for all the various device/OS-version combinations out there.

    But this is little more than a pipe dream, given that Google is extremely unlikely to ever offer such a thing.
    4
    .... thereby making it more and more difficult to get TWRP and OrangeFox working with newer Android versions.

    That's certainly NOT their intention...

    I never said that I believe that to be intentional.

    It's just one of the unintended consequences of Google's continued "improvements" (ha ha!) of Android coupled with the increased usage by more and more developers of root-blocking and mod-blocking technologies.

    Yes, Google is in business to make money with its advertising dissemination and with devices and OS's and services which facilitate that. They have a right to make money in this way and in countless other ways that they might choose. And developers have the right to choose how to make money with their own apps, as well.

    It's just that Google's and many developers' Android-related products and services continue to grow increasingly unappealing to me.

    I still find Android to be less onerous than iOS, but the undesirability gap between them continues to get narrower and narrower for me.
    4
    Sorry laughing at side of road comment, not your post in general
    Yeah... in Australia you should be sure to meet Gumtree electronics vendor in the middle of a busy shopping mall!... In Asian countries this is even more imperative... 😆 PW
  • 1100
    This is the place for general support and discussion regarding "Public Releases", which includes both stable and beta releases.
    All information, including troubleshoot guides and notes, are in the Announcement Thread
    156
    Hello, I haven't given much support on XDA lately. It can be resulted from
    • University started and I have limited free time. In fact, I mostly develop during midnight
    • I live in Taiwan, which has large time zone differences between my European/American contributors/testers, which usually forces me to stay up late at night to discuss/test stuffs.
    • The new version is about to come, I don't want to spend effort on supporting old releases
    The planned update is delayed again and again, to some point I think I'll shed some light about what has been happening lately, also along with some announcements.

    New Forum!
    As you might have already discovered, Magisk got its own subforum on XDA! Many thanks to all the support you gave me, and much more information/features/support is about to come!
    **For developers supporting all the devices that are not using standard Android boot format, feel free to create threads in this section (actually, PLEASE do so) for your favorite devices after v7 is out. As I currently know, Asus devices require signing the boot image before flashing, and is model dependant; Sony devices seems to use ELF kernel that is unpatchable, or some has two ramdisks (inner + outer), both requires different workarounds; LG bootloader locked devices has to manually "BUMP" the boot image after flashing Magisk..... and there may be lots of other crazy boot image formats that haven't come up to my attention yet.
    It is impossible for me to support all these non-standard boot images, and I hope the community can collaborate to make Magisk running across all the devices. Overall, community collaboration is what XDA about :D

    The Pixel Phone
    Some of you might already know this news, that the next Pixel Phone right around the corner seems like it does not have ramdisk in boot image, which pretty much wrecked Magisk in all ways. However, it pretty much doomed root itself too. Kernel modifications is inevitable IMO, so I'll try to migrate my scripts to C programs that could possibly be included into the kernel itself. Note that I'm not familiar with linux kernel, I'm not even sure if my idea and concept is correct or not. But once the device is available, I think developers will find a way to bypass all the difficulties, and I'll do my best to learn things ;)

    Current Progress
    In the past month, I've spent quite some time learning SELinux, so that I can avoid using SuperSU's sepolicy patches. Thanks to the helps and tips from @phhusson and @Chainfire, I finally have a much clearer understanding of how SELinux works. The Magisk core parts (the scripts, boot image patches, new features, more supports) are actually done some time ago. What is causing all the delays is the Magisk Manager.
    To be completely honest, although I can code in Java without much issues, Magisk Manager is actually my first Android application, I had to reach out for assistance, and fortunately awesome developers like @DVDandroid and @digitalhigh contributed a lot, which makes the current Manager awesome.
    After the repo system and module management is mostly done, I was about to do some adjustments and release, but what we really done is decided to add another feature: auto-unroot with per-app settings. I decided to wait for it to be finished, and then do my adjustments. Due to reasons that'll be mentioned later, this feature will likely not be available for the next release (should come in future updates)

    Safety Net Disaster
    Those who are using Magisk for Safety Net bypass purposes must have known that Google recently updated the detection method of my Systemless Xposed. I still have no idea what Safety Net is detecting, so currently I cannot fix it on my side (also because I'm busy working on the next update). However, suhide developed by @Chainfire is able to hide Xposed and worked fine.
    However, only my Systemless Xposed v86.2, which is based on SuperSU's su.d, is supported using that method. v86.2 and v86.5 (latest, Magisk based) have nearly identical binaries, and the only difference is the path where the binaries are stored.
    I'm still not sure what's the real issue for it not being supported, I just hope it is not done intentionally.

    Conclusion
    Due to the fact that my Safety Net bypass is not 100% perfect now, I do not want to spend any more time waiting for auto-unroot to be polished. What I'm doing now is finishing up all the things I'd like to change in Magisk Manager (it has been a while since I last contributed to Manager, my fellow developers are doing all the heavy job), which might take a little more time, after that, packed with tons of information to be announced in Magisk Section, I'll release the long awaited update.

    Hope this lengthy post gives you the idea of the whole situation, and again thanks for all your support!!
    121
    Ah, some Chainfire bashing, I hope it is not too late for me to exercise additional villainy.

    First, let me make clear I have nothing against @topjohnwu, nor against Magisk. Magisk is an interesting project and it certainly displays @topjohnwu ingenuity and persistence. I don't doubt we will see more interesting things from his hands.

    -------------------------

    What has happened here is not all that dark and complicated, from either end. I returned from holidays, and someone pointed me at Magisk. My first thought: interesting!

    Among other things, the thread lists some issues with SuperSU, which in combination with the phrase The developer also requests users to not bug Chainfire with compatibility requests for SuperSU with Magisk from the portal article, raised my left eyebrow by nigh half an inch. The popular systemless xposed mod is apparently now based on it, and apparently it now no longer works with SuperSU, and apparently I'm not supposed to fix that, nor any of the other found issues. I found that a bit weird. So yes, I have told @topjohnwu that I was a bit surprised he was posting about issues with SuperSU without notifying me about them (I can't fix or help fix issues I'm not aware of, after all).

    He's also spreading a modified version of the SuperSU package, which is not all that uncommon, nor necessarily a problem. I have not looked into what he modified, I only ran a few quick tests on one of my devices, and found some commonly used commands run as root to be broken. I have informed him of this as well.

    It appears the tool of choice for Magisk is phh's Superuser, because of some of the mentioned issues with SuperSU. That's fine by itself, but fixing issues in that superuser by incorporating SuperSU's binaries into it is a somewhat questionable practise. After all, SuperSU is a commercial closed-source package that helps pay for my dinner, and superuser is a direct competitor. I have informed him that I was surprised he did this without asking for permission. I have expressed similar surprise on him spreading a modified version of LiveBoot (which helps pay for a snack now and then).
    @topjohnwu has also stated that Magisk's scripts are largely influenced by mine (I have not checked). Scripts based on mine are used all over the place on XDA, some people have crafted amazing things based on them, I have never made an issue of this (otherwise I would have just made them binaries). But yes, I have also stated to him that I don't think it's very nice to base something on one program, and then using that to (almost exclusively) push something directly competing with that program.

    tl;dr Towards @topjohnwu, I have:
    - expressed surprise he has issues getting Magisk to work with SuperSU, and has chosen not to inform me about those
    - expressed surprise he is using SuperSU binaries in a competing superuser without permission
    - expressed surprise he is posting a modified LiveBoot without permission
    - informed him of issues with the modified SuperSU he has posted
    - let him know I thought it wasn't very nice to be applying my scripts to benefit seemingly exclusively that same competing superuser

    To be crystal clear:
    - I have not asked for an apology
    - I have not asked for Magisk to be abandoned, neither the root hiding nor systemless module parts, and certainly not systemless xposed
    - I have not made an issue of any of this anywhere, until this post
    - I have not even specifically asked for anything to be taken down (though obviously in my opinion the other superuser package mixed with SuperSU's binaries, as well as the LiveBoot package, should go)
    - I have not reported this thread to XDA moderators for copyright violations or otherwise

    While my conversation with @topjohnwu may not win any awards for being friendly (though it may win some for brevity), I think all things considered my response has been rather mild. To be perfectly honest, until the apology post, I thought this was over with already. I think the apology post was triggered because I haven't replied to his last PM for a while - I was in the zone, it happens.

    To emphasize again, I have nothing against @topjohnwu, Magisk, or systemless xposed, and it is certainly not my goal to see any of them go. If it can be made to work together with SuperSU, great.

    I get it though: you think of something, you want to see if you can make it work, you finally get it to work, you publish it, it takes off - enthusiasm gets the better of you. Maybe in the rush some mistakes are made. That doesn't mean you have to just drop it and run. None of my stuff would make it past 0.1 if I stopped at the first big mistake :)

    Aside from said being in the zone coding, I usually regret actually responding to these sort of things the day after, which has made me hesitant to reply. Surprise me.
    76
    Thread temporarily closed so everyone sees this.

    The flood of "SafetyNet isn't working for me either!" posts are not helpful, at all. Please refrain from posting further, it will be looked into. Please do not forget that not passing SafetyNet is 100% NORMAL AND INTENDED when you have an unlocked booloader or running custom firmware. These are workarounds and they will be worked around in turn.

    The Flash
    Forum Moderator

    EDIT: Thread is reopened... I will be cleaning any SafetyNet posts for a while to keep the thread clean for real issues.
    75
    Hello everyone!

    I am aware that Google has updated Safety Net that makes Magisk itself a no go for Android Pay. In fact, I witnessed the change live while I am developing the new magiskhide, which should hide all Magisk modules and Magisk installed root.

    Google is serious about Safety Net now, clearly hunting down all possibility to run Xposed with Safety Net passed. I spend quite some time examining the new security measures last midnight, and fortunately it seems that it is possible to run Magisk and root along with Safety Net if no Xposed is running. I'm glad I removed the old root toggle at the right time lol, that is no longer feasible with the latest detection.

    So stay tuned for the next update, it will come with bug fixes, along with the new magiskhide to bypass that Safety Net.

    Google, how will a few systemless mods do any harm :p:p