Magisk General Support / Discussion

Search This thread

zgfg

Senior Member
  • Oct 10, 2016
    5,307
    2,607
    i previously asked that too "why is magisk called systemless when it's capable corrupting system partition" but nobody answered me i guess it's one of those question like

    Which Came First, the Chicken or the Egg?​

    nobody know thou it's better left unanswered
    I don't know what do you mean by 'corrupting' the system, but Magisk does not install (hence it does not affect and neither corrupt) the System, but to Boot partition (or in some cases Recovery or Randisk partitions)

    Strictly speaking, those partitions are not System partition - whereas the term Systemless refers strictly to not making changes to the System partition itself

    Hence if something goes wrong (bootlop or so), it was not due to Magisk affected or 'corrupted' the System partition - you could e.g. take a TWRP backup of the System (!) partition before and upon installing Magisk, and compare the back-ups
     
    Last edited:
    • Like
    Reactions: J.Michael

    pndwal

    Senior Member
    Jun 23, 2016
    2,401
    1,691
    Sydney
    Xiaomi Redmi Note 7
    Hello! New user here. So I've been trying to update to latest Magisk version and it seems like I have an issue updating it through the app. Here's what it looks like as of now.
    View attachment 5276525
    The app version is the same as latest, yet it gives me an update option. It also doesn't want to update Magisk itself. (log attached)
    I use Xiaomi redmi note 7 (codename - lavender) with android 10 qkq.1.190910.002 with miui version 12.0.2.0(qfgruxm)

    This is also my first time reporting a bug so if anything more is required please tell me what I need to provide.
    As it's Xiaomi, you can most likely use Magisk in Boot despite ramdisk = no, as you likely know.

    Can you confirm:

    1) You just boot device normally (no special Recovery key combination needed to boot to system with root).

    2) You click Update, Clear Recovery mode box (if it's not already), Click Next, select Direct Install, click Let's Go... Reboot.

    👍 PW
     

    xAutumn

    New member
    Apr 11, 2021
    4
    1
    As it's Xiaomi, you can most likely use Magisk in Boot despite ramdisk = no, as you likely know.

    Can you confirm:

    1) You just boot device normally (no special Recovery key combination needed to boot to system with root).

    2) You click Update, Clear Recovery mode box (if it's not already), Click Next, select Direct Install, click Let's Go... Reboot.

    👍 PW
    I can boot into device normally.
    Did what you mentioned in 2, it didn't update, previously I've ticked recovery mode box.
     

    Iron_Overheat

    Senior Member
    Apr 13, 2016
    104
    16
    You could have attached the screenshot but per description, it looks ok.
    E.g., I have Canary 22002 (not Stable 22000 like you), Magisk properly imstalled and all ok - compare to my screenshot

    If I understand correctly, you reported a crash while installing a Magisk module

    If installing from Repo, take Download (instead of Install), it will download to your Download folder.
    Then, take from Magisk app (again Modules tab, at the top), Install from storage and navigate to the Download folder and the downloaded module zip file

    I.e., there was recently a bug that Magisk app was crashing when installing a module but by e.g. installing an already downloaded module zip file it worked fine (since I'm on Canary 22002, I don't know how is the case with your Stable 22000)

    There was also another workaround. When taking Install, once Magisk app crashed, it was just enough to tap to the notification that module was downloaded - Magisk app would continue installinf the module

    If still failing/crashing, try with another Magisk module (from Repo!) to make sure it wasn't an errant module
    Installing the zip from storage was something I already tried but for some reason Internal Storage is showing as empty in my system (can't even access through MTP, only sdcard...). Even accessing thru root file explorer, /storage/emulated/0/ is empty... But on the settings app, under storage, it shows "Internal shared storage 11.02 GB used of 64.00 GB"... I have no idea why, before installing LineageOS 18.1 I could access internal storage... I already asked on my ROM's thread about this issue but nobody answered...
     

    zgfg

    Senior Member
  • Oct 10, 2016
    5,307
    2,607
    Installing the zip from storage was something I already tried but for some reason Internal Storage is showing as empty in my system (can't even access through MTP, only sdcard...). Even accessing thru root file explorer, /storage/emulated/0/ is empty... But on the settings app, under storage, it shows "Internal shared storage 11.02 GB used of 64.00 GB"... I have no idea why, before installing LineageOS 18.1 I could access internal storage... I already asked on my ROM's thread about this issue but nobody answered...
    Do you properly see Internal storage from TWRP?
    What about using a different file explorer, like MiXplorer (use the version for target SDK 29, NOT for target SDK 30)
     

    op3tguy

    New member
    Apr 11, 2021
    2
    2
    No log files attached!

    You could try extracting original boot.img from ROM package, then flash this from TWRP or PC w/ fastboot commands. Should boot again.

    Then flash new Magisk; If zip (TWRP) install still gives issues, try recommend patch image / fastboot flash method. PW
    Okay, I'll try the boot.img first.
    I'll try attaching the files again.
    Hmmm, I attached and they appeared to upload but perhaps because this is my first post it won't "stick".
     
    • Like
    Reactions: pndwal

    pndwal

    Senior Member
    Jun 23, 2016
    2,401
    1,691
    Sydney
    Xiaomi Redmi Note 7
    I can boot into device normally.
    Did what you mentioned in 2, it didn't update, previously I've ticked recovery mode box.
    ... So, you probably now have Magisk in Recovery ramdisk also (unless Direct Install w/ Recovery mode checked failed to complete). I'm interested if you can boot with root this way:
    Each device has its own key combo to boot into recovery... A quick Google search should easily get you this info of your device. As soon as you press the combo and the device vibrates with a splash screen, release all buttons to boot into Magisk. (If you decide to boot into actual recovery mode, continue to press volume up until you see the recovery screen.)

    Booting any way, can you also Install CPU-Z from PlayStore, check System, Kernel Architecture. Is this 32 or 64 bit? 👍 PW
     
    Last edited:

    pndwal

    Senior Member
    Jun 23, 2016
    2,401
    1,691
    Sydney
    Xiaomi Redmi Note 7

    J.Michael

    Senior Member
    Jan 20, 2018
    701
    492
    Samsung Galaxy Tab A series
    In addition to special patching requirements etc, some Sammy devices are type III, as are devices from other OEMs, and Magisk cannot be installed in boot partition on many (most?) of these since that cannot host a working ramdisk due to OEM's bootloader implementation.

    Magisk must be installed in recovery partition (it has working ramdisk), and Recovery mode is selected to ensure patching recovery.img is done properly (as boot partition ramdisk and recovery partition ramdisk configurations differ significantly).
    https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-84818535

    Incidentally, I think many are confusing Magisk Installed thru custom recovery (which ALWAYS results in Magisk in Boot) with Magisk in Recovery (something entirely different)! 😬 PW
    What I was trying to say was, if you give Magisk an AP.tar file, Magisk knows it's handling a tar file, Magisk extracts the boot, recovery, and vbmeta images, and Magisk modifies those three. The checkbox "Recovery" on the Magisk screen does not seem to apply, because in that case Magisk will always put Magisk in the recovery.img -- it makes changes to the boot.img and vbmeta.img to deal with signature checks, but the "installation" of Magisk is in the recovery.img.
     

    zgfg

    Senior Member
  • Oct 10, 2016
    5,307
    2,607
    @zgfg

    Did you ever get any info on that (Russian?) patched Magisk-R for RN7 from here:
    https://forum.xda-developers.com/t/install-magisk-on-android-11-r-100-functional.4162761/

    It may help user above to know what issue is, but I don't want to recommend it as looks dubious...

    I thought it may be related to R7A issues (apparent it's boot.img is 32 bit with a 'fake' 64 bit Ramdisk (placeholder)), but I doubt this after looking at specs... PW
    No, but there was a similar (albeit different) Magisk zip fluctuating around for my Mi 9T, that turned out to be Magisk 20004 or something.
    It was needed to patch the boot.img first by that (Magisk 20004), and then to re-patch by the latetest Magisk, otherwise it didn't work

    However, it became obsolete when Magisk 21xxx was fixed

    In the thread you mentioned the latest posts are from Dec 2020, hence I would assume that it similarly became obsolete when Magisk was fixed to properly patch boot images (for various Xiaomi phones)

    However I don't know for that particular model and it's special CPU (maybe it's not Qualcomm like in the my Mi 9T but MTK or something - although, AFAIK, Magisk was also fixed for MTK chipsets around the beginning of 2021)

    PS: I just checked on GSMArena, R7A has Qualcomm SDM439 Snapdragon 439 (not MTK)
     
    Last edited:
    • Like
    Reactions: pndwal

    pndwal

    Senior Member
    Jun 23, 2016
    2,401
    1,691
    Sydney
    Xiaomi Redmi Note 7
    No, but there was a similar (albeit different) Magisk zip fluctuating around for my Mi 9T, that turned out to be Magisk 20004 or something.
    It was needed to patch the boot.img first by that (Magisk 20004), and then to re-patch by the latetest Magisk, otherwise it didn't work

    However, it became obsolete when Magisk 21xxx was fixed

    In the thread you mentioned the latest posts are from Dec 2020, hence I would assume that it similarly became obsolete when Magisk was fixed to properly patch boot images (for various Xiaomi phones)

    However I don't know for that particular model and it's special CPU (maybe it's not Qualcomm like in the my Mi 9T but MTK or something - although, AFAIK, Magisk was also fixed for MTK chipsets around the beginning of 2021)

    PS: I just checked on GSMArena, R7A has Qualcomm SDM439 Snapdragon 439 (not MTK)
    Ta. Asked, since you asked about it in RN7 thread. User has RN7:
    https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-84820497
    That's QCom 660. (R7A issue now seems unrelated as I said).

    May be a new issue anyway, since user can't update from 22.0, but seems there's been something peculiar about that model...

    @xAutumn, Suggest you Unroot completely (restore both clean boot / recovery (keep stock) images, uninstall modules and app), then try patching boot.img extracted from ROM using latest Magisk App and flashing this from PC (fastboot mode), and see if this fixes issue. This method is best practice for fresh install. PW
     

    pndwal

    Senior Member
    Jun 23, 2016
    2,401
    1,691
    Sydney
    Xiaomi Redmi Note 7
    ... The checkbox "Recovery" on the Magisk screen does not seem to apply, because in that case Magisk will always put Magisk in the recovery.img -- it makes changes to the boot.img and vbmeta.img to deal with signature checks, but the "installation" of Magisk is in the recovery.img.
    Are you sure? Because instructions in Samsung section are almost identical to general Patching Images section:
    If your device does NOT have boot ramdisk, make sure “Recovery Mode” is checked in options.
    In most cases it should already be automatically checked.
    Ie. App will know to use Boot ramdisk protocol if unchecked (whether patching Magisk to discreet boot image (.img) or to boot image integrated in AP (.tar) firmware package), and Recovery ramdisk protocol if checked (whether patching Magisk to discreet recovery image (.img) or to recovery image integrated in AP (.tar) firmware package).

    As I've mentioned, the two ramdisk types are different, and implemented differently (or only one type may be implemented) in bootloader. 🤠 PW
     
    Last edited:

    J.Michael

    Senior Member
    Jan 20, 2018
    701
    492
    Samsung Galaxy Tab A series
    Are you sure? Because instructions in Samsung section are almost identical to general Patching Images section:

    Ie. App will know to use Boot ramdisk protocol if unchecked (whether patching Magisk to discreet boot image (.img) or to boot image integrated in AP (.tar) firmware package), and Recovery ramdisk protocol if checked (whether patching Magisk to discreet recovery image (.img) or to recovery image integrated in AP (.tar) firmware package).

    As I've mentioned, the two ramdisk types are different, and implemented differently (or only one type may be implemented) in bootloader. 🤠 PW
    I can't be sure of anything -- I haven't looked at Magisk's code. I thought I had tried patching a tar file both with and without checking Recovery, and had seen no difference in the three modified images. I might be misremembering.

    I thought Samsung was the only case of firmware being packaged as a tar file. I thought all Samsungs had to have Magisk installed in recovery. I think the people who got TWRP working on the SM-T290 and SM-T295 have succeeded by patching the boot image.
     

    pndwal

    Senior Member
    Jun 23, 2016
    2,401
    1,691
    Sydney
    Xiaomi Redmi Note 7
    I can't be sure of anything -- I haven't looked at Magisk's code. I thought I had tried patching a tar file both with and without checking Recovery, and had seen no difference in the three modified images. I might be misremembering.

    I thought Samsung was the only case of firmware being packaged as a tar file. I thought all Samsungs had to have Magisk installed in recovery. I think the people who got TWRP working on the SM-T290 and SM-T295 have succeeded by patching the boot image.
    Well, if flash in Custom Recovery is working, this confirms that Magisk in Boot works. It will necessarily work on the same device by patching .tar / flashing with Odin.

    Patching Recovery can never be done from Custom Recovery and is only needed, for type III devices... It will usually work on others too...

    But why would you?

    To boot into System with Magisk root you HAVE to use key combination for Recovery, then, when the device vibrates with a splash screen, release all buttons EVERY TIME you boot device.

    Nb. Unless you boot that way, root (if present) was actually installed as Magisk in Boot. 👍 PW
     

    xAutumn

    New member
    Apr 11, 2021
    4
    1
    ... So, you probably now have Magisk in Recovery ramdisk also (unless Direct Install w/ Recovery mode checked failed to complete). I'm interested if you can boot with root this way:


    Booting any way, can you also Install CPU-Z from PlayStore, check System, Kernel Architecture. Is this 32 or 64 bit? 👍 PW
    I can boot into recovery mode holding power and volume up, no Idea how to boot into Magisk if thats what you mean. My architecture according to cpu-z js armv8l
     
    • Like
    Reactions: pndwal

    xAutumn

    New member
    Apr 11, 2021
    4
    1
    Well, if flash in Custom Recovery is working, this confirms that Magisk in Boot works. It will necessarily work on the same device by patching .tar / flashing with Odin.

    Patching Recovery can never be done from Custom Recovery and is only needed, for type III devices... It will usually work on others too...

    But why would you?

    To boot into System with Magisk root you HAVE to use key combination for Recovery, then, when the device vibrates with a splash screen, release all buttons EVERY TIME you boot device.

    Nb. Unless you boot that way, root (if present) was actually installed as Magisk in Boot. 👍 PW
    My phone boots with root every time with no need to use key combination for recovery, just a simple reboot and root is always enabled.
     

    zputnyq

    Senior Member
    Apr 19, 2013
    590
    270
    I have upgraded from 22002 to 22100. Everything is fine. But in 22.1 I have no possibility to choice canary version. The user based url https://raw.githubusercontent.com/topjohnwu/magisk_files/canary/debug.json doesn't work. Is there a special mm apk for 22.1?
    I'm not sure about .json file since I never switching update from stable to canary or beta, I usually just clean install it if I switch. But if you can't download it from .json file you can grab it directly from github.
     
    • Like
    Reactions: voroxda

    pndwal

    Senior Member
    Jun 23, 2016
    2,401
    1,691
    Sydney
    Xiaomi Redmi Note 7
    My phone boots with root every time with no need to use key combination for recovery, just a simple reboot and root is always enabled.
    Yes, I'm aware you have Magisk in boot ramdisk. I think you did from the beginning of this discussion. But since you said you did direct update with Recovery mode checked, I was curious whether that succeeded.

    If it did, you will have a SECOND iteration of Magisk in recovery ramdisk. Booting to system with root using THAT Installation is done via Recovery booting, ie. recovery combination buttons (since Recovery has been 'hijacked' as a means of booting to System w/ root).

    Whether you get recovery, or system w/ root, depends on when you RELEASE the recovery combination buttons, as noted above, and in John's official Installation Instruction page. PW
     
    Last edited:

    pndwal

    Senior Member
    Jun 23, 2016
    2,401
    1,691
    Sydney
    Xiaomi Redmi Note 7
    I have upgraded from 22002 to 22100. Everything is fine. But in 22.1 I have no possibility to choice canary version. The user based url https://raw.githubusercontent.com/topjohnwu/magisk_files/canary/debug.json doesn't work. Is there a special mm apk for 22.1?
    All later Magisk builds are a Stand Alone (no need for internet connection / json files to downgrade), single package solution, both debug (Canary) builds (from 21402):
    https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-84354959
    and public (Stable/Beta) from 22.0:
    https://topjohnwu.github.io/Magisk/releases/22000.html

    For older stable builds, unless Installing .zip package from custom recovery you'd need hosted address of corresponding raw json file pasted in 'Custom Channel'. Older Canary Jsons won't work this way without editing and re-hosting as they always point to (common) address for LATEST Canary build rather than unique address.

    But you can forget all that! 😆

    All you need to do is click on Magisk Canary, under Downloads on Magisk main page on GitHub, and .apk will download! Just Install it.

    FYI Canary builds, being 'bleeding edge' builds for debug purposes, are not considered Public builds, so Canary Channel won't appear in Magisk App (Settings) from Beta / Stable Public Releases. Debug builds contain all channels. 🤠 PW
     
    Last edited:
    • Like
    Reactions: dcarvil and zputnyq

    Top Liked Posts

    • 4
      Magisk:
      Installed: 21.1 (21100), A/B: Yes, Ramdisk: No, SAR: Yes
      App:
      Newest: 23.0(23000)
      Installed: 23.0 (23000)

      I am using an PH-1 with an Android 11 Rom (Build: RQ1A.201205.010)

      The main 'problem' I had is solved. I have Magisk back and so far everything is working.
      If I get some sparetime I will have a look on patching the boot.img. Until then I will go with the actual setup. So once again thank you for the great support!
      A bit further; - I did a little digging into this because I was surprised to see a report of an A/B device w/ Ramdisk = No.

      I hadn't seen (factory boot) ramdisk status change before, and I'm pretty sure it isn't meant to.

      Clearly, your PH-1 is SAR by Google's definition (legacy SAR by John Wu's.) See this:
      https://topjohnwu.github.io/Magisk/boot.html
      and is a Type II device with a recovery ramdisk in boot partition.

      Devices with any type of ramdisk in boot partition should show Ramdisk = Yes, ie. all types I, II & IV.

      Type III are the ONLY type that have no ramdisk in stock (factory) boot partition! ... And these often (but not always) lack bootloader support even for manually added ramdisk in boot partition. See table here:
      https://topjohnwu.github.io/Magisk/boot.html#piecing-things-together

      So it seems to me there's something peculiar (messed up?) with your device, perhaps related to TWRP which resides in boot partition on Type II devices if you have this and Magisk has patched the already TWRP patched boot image. Or perhaps related to a pre-built modded boot image, Android 11 ROM (seems to be a custom port?), device tree used, etc, etc.

      Anyway, I'm betting that those on stock images (including the recovery part of boot.img) w/ Magisk patched boot.img only, have Ramdisk = Yes in Magisk App...

      Root guide here:
      https://forum.xda-developers.com/t/guide-rooting-your-essential-ph-1.3701976/

      Incidentally, I noticed here that @ipdev has PH-1 also. Perhaps he can help with configuration, Ramdisk status, etc. 😜 PW
      1
      Magisk:
      Installed: 21.1 (21100), A/B: Yes, Ramdisk: No, SAR: Yes
      App:
      Newest: 23.0(23000)
      Installed: 23.0 (23000)

      I am using an PH-1 with an Android 11 Rom (Build: RQ1A.201205.010)

      The main 'problem' I had is solved. I have Magisk back and so far everything is working.
      If I get some sparetime I will have a look on patching the boot.img. Until then I will go with the actual setup. So once again thank you for the great support!
      What ROM are you using?
      Are you porting/bringing up a rom?

      Let me know and I will give it a try. :)

      A bit further; - I did a little digging into this because I was surprised to see a report of an A/B device w/ Ramdisk = No.

      I hadn't seen (factory boot) ramdisk status change before, and I'm pretty sure it isn't meant to.

      Clearly, your PH-1 is SAR by Google's definition (legacy SAR by John Wu's.) See this:
      https://topjohnwu.github.io/Magisk/boot.html
      and is a Type II device with a recovery ramdisk in boot partition.

      Devices with any type of ramdisk in boot partition should show Ramdisk = Yes, ie. all types I, II & IV.

      Type III are the ONLY type that have no ramdisk in stock (factory) boot partition! ... And these often (but not always) lack bootloader support even for manually added ramdisk in boot partition. See table here:
      https://topjohnwu.github.io/Magisk/boot.html#piecing-things-together

      So it seems to me there's something peculiar (messed up?) with your device, perhaps related to TWRP which resides in boot partition on Type II devices if you have this and Magisk has patched the already TWRP patched boot image. Or perhaps related to a pre-built modded boot image, Android 11 ROM (seems to be a custom port?), device tree used, etc, etc.

      Anyway, I'm betting that those on stock images (including the recovery part of boot.img) w/ Magisk patched boot.img only, have Ramdisk = Yes in Magisk App...

      Root guide here:
      https://forum.xda-developers.com/t/guide-rooting-your-essential-ph-1.3701976/

      Incidentally, I noticed here that @ipdev has PH-1 also. Perhaps he can help with configuration, Ramdisk status, etc. 😜 PW

      Essential PH-1 (mata) is basically a sister to Pixel 2/XL.
      Save for PH1's bootloader not having a boot option.
      - You could flash taimen's system image on mata and everything normally worked.


      I haven't fired mine up in a while, normally just use it for testing. ;)

      ---

      Installed the current lineage 18.1 nightly...
      Using lineage's recovery.

      - Patched the boot image with Magisk canary.
      - Flashed the patched image and booted.
      - Direct install worked fine.

      Cheers. :cowboy:

      PS.
      When PH-1 was supported, before Essential closed their doors, all the official builds had a ramdisk in boot.
      It is what I used to pull the monthly fingerprint and security patch date from.

      PPS.
      The l18.1 boot image boots AOSP Android 10 GSI on mata. ;)
      “We don't make mistakes, just happy little accidents.” - Bob Ross.
      1
      What ROM are you using?
      Are you porting/bringing up a rom?

      Let me know and I will give it a try. :)

      Essential PH-1 (mata) is basically a sister to Pixel 2/XL.
      Save for PH1's bootloader not having a boot option.
      This made me think, but guess meant Fastboot option!?
      - You could flash taimen's system image on mata and everything normally worked.

      I haven't fired mine up in a while, normally just use it for testing. ;)
      ---
      Installed the current lineage 18.1 nightly...
      Using lineage's recovery.

      - Patched the boot image with Magisk canary.
      - Flashed the patched image and booted.
      - Direct install worked fine.

      Cheers. :cowboy:

      PS.
      When PH-1 was supported, before Essential closed their doors, all the official builds had a ramdisk in boot.
      It is what I used to pull the monthly fingerprint and security patch date from.

      PPS.
      The l18.1 boot image boots AOSP Android 10 GSI on mata. ;)
      Many thanks for info, especially confirmation A11 (LOS 18.1) works as expected on PH-1. 👌
      “We don't make mistakes, just happy little accidents.” - Bob Ross.
      🤩 PW
      1
      This made me think, but guess meant Fastboot option!?

      Many thanks for info, especially confirmation A11 (LOS 18.1) works as expected on PH-1. 👌

      🤩 PW
      There are a few oddities/drawbacks with Essential PH-1 (mata).

      Not being able to fastboot boot is one of them.
      Broken touch in recovery is another.

      You can not temporarily boot a boot or recovery image.
      Only option is to flash it using fastboot.

      Taught us mata users how to work around some things. ;)

      Cheers. :cowboy:
    • 8
      there is no access via terminal

      i installed my fave module, debloat, but of course cant access it...they were serious about the lite part :)

      As for the install of lite...i installed the apk and patched a boot img, had no errors

      v4a/vanced youtube doesnt work either, now i really want to die :)

      going to bed finally, in disgust
      Installation of modules works in Magisk Lite but with some additional tricks:

      1) When you install a module from Magisk Lite app, it creates its folder in:
      /data/adb/modules_update

      When you reboot, Lite will not read that folder and the module(s) will not really be installed/updated (instead, they would be next time when you boot to Stable/Beta/Canary/Alpha, because they do read from /data/adb/modules_update)

      Hence:
      - Install one or more modules you need
      - Use MiXplorer (or another root explorer), or terminal and mv command, or rename it by TWRP:
      /data/adb/modules_update
      to:
      /data/adb/lite_modules_update
      -Reboot, Magisk Lite will properly finish installation of your modules and you will find them in:
      /data/adb/lite_modules

      2) MHPC: I successfully installed but in terminal it doesn't recognize the props command.
      Something is wrong with the path

      You can still use MHPC by invoking instead:
      /system/xbin/props

      3) Similarly for BusyBox NDK. It was installed to /system/xbin

      Indeed, you can list all its commands by:
      ls /system/xbin

      4) I have successfully installed Vanced YouTube root (latest v16.16.38) as a module:

      No ads, background playing, all ok

      5) Smali patcher - Safe Screenhot Mode (allowing to screenshot from apps otherwise not allowing the screenshots)

      E.g., I can make screenshots from Chrome Incognito window

      6) If your debloater uses terminal and installs to /system/xbin, you should be able to exploit as explained above for MHPC and BB

      However, I use my own Systemless Debloater that does not use command line interface (terminal):

      and I have successfully debloated all the same 32 system apps as I do with Magisk Stable/Canary/Alpha

      7) I have manually copied hosts folder from:
      /data/adb/modules/
      to:
      /data/adb/lite_modules/

      and got the adblocking work.
      However, Adaway does not know for that folder and if you update/change anything in AdAway, it will write to its regular modules/hosts folder (but you can always copy again the same folder or just its etc/hosts file)

      9) I didn't try with Viper4Android (I'm already back to Magisk Beta with 'regular' modules) but I believe the installation should work the same way I always install it to Stable/Canary:

      And Lite should similarly work for other modules


      I have some issues with MixPlorer though in Magisk Lite (although I completely uninstalled and reinstalled MiXplorer):

      9) MiXploree was granted root and it works but AFTERWARDS Magisk Lite app shows that Magisk is not installed and I simply have to reboot to get Lite properly working again

      10) MiXplorer can only see the stock content in /system/xbin, i e. without props and BusyBox commands (btw, ls from terminal works fine)

      Same for all other folders being overlaid by Magisk systemless mounting - MiXplorer always shows their stock content while terminal su commands work with the Magisk overlaid content


      But altogether, it would be possible to live with Magisk Lite - even the modules work


      Edit:
      I have Magisk apps Canary, Alpha and Lite downloaded and renamed like:
      Magisk-Lite-7717f0a6(23001).apk

      I have also my boot.ing patched by Magisk Canary, Alpha and Lite and renamed like:
      boot-Magisk_Alpha_23001-xiaomi.eu_multi_HMK20MI9T_21.5.20_v12-11.img

      When I want to switch, I simply install the right Magisk apk, flash the corresponding img from TWRP (or Fastboot) and reboot

      When going from Stable/Canary to Aplha/Lite (or vice versa), that previous Magisk app must be uninstalled because of different signatures

      When installing the Alpha or Lite apk I was asked by Play Protect to send the report - I ignored and upon rebooting with Magisk and MagiskHide properly back on, Play Protect was always ok
      8
      That is the most wrong statement. If Google didn't has no issues with having root, there would not magsikhide. Just that statement alone conflicts with itself. MagiskHide hides root... Google has a problem with hiding root and not root, then why hide it? Why is there basic attention and cts profile check? Now a hardware check? Root, on Android is what they don't want, or else there would be no need for a modified kernel, we would all have root like on Linux desktop... Any terminal on desktop has root instantly, Android doesn't.. They did pretty damn good job of taking something away they wanted to have all along right? Wow.
      This whole discussion took a bit of a turn, and I'm not gonna get further into that. But, you might want to reread what I said again: "Google has no interest in preventing root". That statement doesn't say anything on how Google think about root in security terms (and I'm talking about the Google security team here, which John now is a part of).

      We're talking about different things, I believe...

      You're talking about the security aspect, which Google cracks down on (since generally, rooting a device compromises the systems security), and I'm talking about just being able to root your device regardless of if SafetyNet triggers or not.

      If they wanted to, Google could make it so much harder (impossible?) to root your Android device... From statements I've seen from Google security team members, that's not on their agenda. But of course, beefing up the security on Android in general might have the unfortunate side effect of accomplishing the same thing.
      8
      From what John has said on Reddit and behind the scenes, recanting on some made statements, he can not touch magisk at all not speak on it anymore.
      Most here are aware of that quote, and as has been pointed out, it was private, he didn't 'say it on Reddit', it was only part of a much longer communication and the 'leak' was not appreciated, but my guess is that many colaborators will be in the loop.
      Since he does own the repositories for magisk so we could see them just disappear. He can't push an update which only he can do, so it's either fork it and go that route, which he knows all the ins and outs of magisk and now works for Google(2+2 says he will spilling the beans on the background to block it), I believe they have him on a gag because conflict of interest with magisk sidestepping their security system.
      I don't think G needs him to spill the beans on 'blocking' Magisk; they're quite aware of how it works. It's source is open, after all...

      But if you meant blocking attestation spoofing / bypassing (MagiskHide, some modules, and other), they already know how to make this foolproof. It does require compliant hardware to implement however, and it seems that when some target percentage of devices have launched with tee, a switch will be flipped, and spoofing attestation, and hence MagiskHide at least outside of userspace (ie bootloader Unlocked / verified boot, will become impossible for practical purposes for most users.

      MagiskHide will still be able to hide root from apps within userspace, but these can still check secure boot status through tee attestation, and will likely report 'root/jailbreak' but actually mean 'insecure boot environment'.

      Expect the pool of those still able to hide bootloader status to be reduced, for practical purposes, to those running custom OSs with inbuilt spoofing or Magisk on devices with launch version < or = to Android 7 (last version without requisite keymaster 3) overnight. (Nb. Hardware-backed Keystore began to be hardened from Android 6)
      https://source.android.com/security/keystore

      Hardware TEE of course, stands for Trusted Execution Environment, and it is not just implemented by Google.

      It actually facilities security in RISC, IBM, AMD, Intel, Apple, as well as Qualcomm, MediaTek, Samsung and Huawei SOCs running various systems. Here's an article focussing on ARM implementation:
      https://embeddedbits.org/introduction-to-trusted-execution-environment-tee-arm-trustzone/

      Interestingly, it states:
      TEE is not the solution to all of our security problems. It is just another layer to make it harder to exploit a vulnerability in the operating system. But nothing is 100% secure.
      You can't work for somewhere and have an ap they completely bypasses their OS without a amjor conflict of interest.
      Well, it doesn't bypass it; it gives superuser access as well as ways to overlay mods on an OS, and both things are certainly allowed by design if bootloader is unlocked.

      There are ways to prevent such unlocking, but Google doesn't do that. That's not to say they don't know how however. That would be laughable; It is their system (both open source Android framework and proprietary apps). They simply leave that to OEMs to implement, and, of course, a number take such measures.
      https://support.google.com/accounts/answer/9211246?hl=en
      Google doesn't even want you using a "modified system" to access your Google account. Google has major issue with root.
      They NEVER said that.

      They have protected their proprietary apps by forbidding bundling GApps with custom ROMs, originally ordering Steve Kondik to 'cease and desist' bundling with CyanogenMod, but offered an olive branch in quick succession when he assumed project was dead, allowing individual users to sideload the same, and sites like OpenGApps to host them.

      They have also expressly stated they DON'T oppose either root or custom ROMs, even recently. Eg from Tech Lead for Android hardware-backed security subsystems:
      Shawn Willden, May 19

      The Platform Security team has never been opposed to modding/rooting (and most of us are firm believers in users' right to own their devices), but remains firmly focused on maximizing security for the 99.99% of users who don't. Root weakens the security model.
      www.twitter.com/shawnwillden/status/1394665579076743175

      In line with the above, they state clearly that if you choose to mod your device, "you lose some of the security protection provided by Google", and they do have recommendations, including "Use a different device for important accounts & sensitive data"
      https://support.google.com/accounts...s-with-modified-rooted-android-versions?hl=en

      Also, rather than prevent their own proprietary apps from running in custom modded systems, they allow these to appear on PlayStore and be used freely. Very few are restricted at all, unless for good (security, corporate partners requirements etc) reason. GPay comes to mind here.

      They could, of course, prevent this (especially when HKA is fully functional), simply by requiring PlayProtect Certified Device, but so far they have PURPOSELY allowed custom modders even with uncertified (Chinese etc) devices to add their devices to their online White List that allows them to run the very GApps (without spoofing) that they were prevented from using w/ stock ROMs.

      This sets an example to others (wish likes of Maccas would wake up), but SafetyNet API and PlayProtect certification are available for apps / code deemed a security risk... Of course, SafetyNet Implementation can be abused, but Google's stance is that the code's author has the right to be informed about the execution environments status and make such decisions.

      Interestingly, it seems not only that Google is unopposed to custom ROMs, but they are not averse to the idea of certifying these / issuing appropriate signing keys so bootloader can be locked to allow full SafetyNet pass (with no spoofing), and GApps can be included legitimately. Of course, this solution evidently precludes root.

      The spiritual successor of CyanogenMod, LineageOS, is in a good position to get such an agreement as they already take pains not to 'subvert Google's security model', never bundling GApps, pre-root, signature spoofing (MicroG would come unstuck here 😉) or any other spoofing mods or techniques. Note this conversation between Shawn and Luca Stefani ('Director for LineageAndroid & Developer'):
      www.twitter.com/shawnwillden/status/1238161446200127488

      That ones been a while (time of initial Google Hardware Key Attestation testing), but I hope we see more on the front. 😛

      In short, Google is against subverting their security model, which includes SafetyNet implementation which ALLOWS code to run in insecure environments (even with superuser privileges) WITHOUT subverting it, by making TEE attestation results available to interested parties. Hardware TEE just ensures that the attestation is accurate... And Google didn't invent it either!

      Here's a bit I posted re. mainstream influence on Google's decision to implement Hardware backed attestation for for verified boot and Trusted Execution Environment:
      https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-83280363

      I don't want to take sides in this; only to give perspective. There's certainly room for many viewpoints. Take what John said on the subject just 4 months ago:
      https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-84398495

      ... I wonder what he's thinking now! 😜 PW
      7
      Is this a bug or a feature?
      Feature, and has been like that since very early in Magisk's history. Magic mounting files and folders to the root of /system, that doesn't previously exist there, can cause all kinds of weird issues.
      7
      FWIW, as there is no news of updated Magisk from John Wu, I'm now running Alpha Magisk and Magisk App from dev @vvb2060 (Nangong Xueshan).

      Seems his App maintains connection to standard Stable / Beta / Canary channels from topjohnwu, but adds his Alpha (Bleeding edge) channel:
      https://github.com/vvb2060/magisk_files/tree/alpha

      Click View code, Download / install app-release.apk 👍

      Screenshot_2021-05-29-17-24-43-651_com.topjohnwu.magisk.jpg


      No problems running this Alpha so far. 👍

      - Nb. Unhide Magisk App if changing to this. Conflict with hidden Apps are still occurring.

      Alpha adds new / experimental commits. Some of these already have pull requests in John's Magisk GitHub.

      Nb. John Wu recently changed his description of debug Canary builds from 'Bleeding Edge' to 'Cutting Edge'...

      WARNING

      If you move to Nangong Xueshan's Alpha, my advice is to consider yourself on the Bleeding Edge again... and to understand what this means!

      Changelog for Alpha, next post. PW
    • 1050
      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