Magisk General Support / Discussion

Search This thread

traversone

Senior Member
Feb 18, 2019
172
56
good morning all.

latest 5.0.5519 of Intune Portal (Microsoft) detects root !

On top of common/standard guideline (100& working till yesterday),

a) I hided xposed modules (HMA)
b) XprivacyLUA is set as well (tracking and analytics)

No way to circumvent root detection. I suspect Intune Portal needs to get the list of installed applications as - when I also set this flag in XPrivacy + complete app's data reset - the account cannot be addedd and app loops.....

I also froze (renamed) Magisk app --> no luck

any further suggestion from you?
 

rodken

Senior Member
Jan 11, 2010
905
315
good morning all.

latest 5.0.5519 of Intune Portal (Microsoft) detects root !

On top of common/standard guideline (100& working till yesterday),

a) I hided xposed modules (HMA)
b) XprivacyLUA is set as well (tracking and analytics)

No way to circumvent root detection. I suspect Intune Portal needs to get the list of installed applications as - when I also set this flag in XPrivacy + complete app's data reset - the account cannot be addedd and app loops.....

I also froze (renamed) Magisk app --> no luck

any further suggestion from you?
Just throwing a couple of ideas your way:

  1. Magisk App Freezer
  2. Shamiko
 

pndwal

Senior Member
Latest Official TJW Canary (release) & Debug (debug) Magisk builds:

Magisk (8dfb30fe) (24313)​

  • [App] Fix Debug channel preference not sticking
  • [App] Update the stub dynamic resource loading implementation to use official APIs on API 30+
  • [MagiskSU] Prune unused UIDs as soon as possible to prevent UID reuse attacks
  • [MagiskSU] Verify and enforce the installed Magisk app's certificate to match the distributor's signature
  • [DenyList] Fix DenyList on shared UID apps

Diffs to v24.3​

  • [MagiskInit] Update 2SI implementation, significantly increase device compatibility (e.g. Sony Xperia devices)
  • [MagiskInit] Introduce new sepolicy injection mechanism
  • [MagiskInit] Support Oculus Go
  • [MagiskInit] Support Android 13 GKIs (Pixel 6)
  • [MagiskBoot] Fix vbmeta extraction implementation
  • [App] [MagiskSU] Properly support apps using shared UID
  • [MagiskSU] Fix a possible crash in magiskd
  • [MagiskSU] Prune unused UIDs as soon as possible to prevent UID reuse attacks
  • [MagiskSU] Verify and enforce the installed Magisk app's certificate to match the distributor's signature
  • [Zygisk] Fix function hooking on devices running Android 12 with old kernels
  • [DenyList] Fix DenyList on shared UID apps
  • [BusyBox] Add workaround for devices running old kernels
https://github.com/topjohnwu/magisk-files/blob/e31315f0eadbcfb456ba9677da9248a5d2d8ea48/notes.md

👍 PW
 
Last edited:

gribna

Member
Nov 1, 2017
6
0
Symptom smacks of mismatched kernel... Did you ever install Magisk using Magisk App patch/flash? PW
I've had 21.4 for a long while, then last day I updated it via its app which put the phone into a permanent loop of "Phone is starting" across the desktop. I then installed the same 24.3 via TWRP which removed the loop but also took away mobile data.
 

pndwal

Senior Member
I've had 21.4 for a long while, then last day I updated it via its app which put the phone into a permanent loop of "Phone is starting" across the desktop. I then installed the same 24.3 via TWRP which removed the loop but also took away mobile data.
I meant did you ever use patch in app & then flash separately (eg after an OTA) as this is where many (unwary) get kernel mismatches due to using image from earlier ROM etc... This is different from Direct Install...

If you suspect this may have occurred, you should restore stock images and do a fresh Magisk installation; I'd:
1) simply delete everything in /data/adb folder, especially if you suspect Magisk installation may be corrupted (optional; removes all settings & modules also).
2) flash stock boot.img back, or dirty flash a complete ROM again. (Fastboot ROMs are the most complete.)

You could also try latest Canary if you have further issues as it has many recent fixes, but it's doubtful that these will be needed by older devices like yours. 🙂 PW
 
  • Like
Reactions: gribna

zputnyq

Senior Member
Apr 19, 2013
617
277
Latest Official TJW debug Canary Magisk:

Magisk (8dfb30fe) (24313)​

  • [App] Fix Debug channel preference not sticking
  • [App] Update the stub dynamic resource loading implementation to use official APIs on API 30+
  • [MagiskSU] Prune unused UIDs as soon as possible to prevent UID reuse attacks
  • [MagiskSU] Verify and enforce the installed Magisk app's certificate to match the distributor's signature
  • [DenyList] Fix DenyList on shared UID apps
I'm still confused with debug & canary version. I saw tjw only release canary version which was written on the github commits, what about the debug version, should it be build by people themselves ?
If someone use canary version does he/she could easily switch to debug version without flashing, I mean only only intalling the apk to debug ?
 

zgfg

Senior Member
Oct 10, 2016
7,366
4,757
I'm still confused with debug & canary version. I saw tjw only release canary version which was written on the github commits, what about the debug version, should it be build by people themselves ?
If someone use canary version does he/she could easily switch to debug version without flashing, I mean only only intalling the apk to debug ?
Why should you build debug for yourself?!

Isn't it more simple to follow the link from Magisk app (no matter which version) to go to the Magisk official GitHub page

Scroll down there to find Downloads - see the screenshot

You can download app-debug.apk (Debug) or app-release.apk (Canary)

To switch, you need to download and install the right APK and then to patch the img and flash (or you can flash the renamed APK to zip from TWRP).
Installation is also described in details on the Magisk GitHub page
 

Attachments

  • IMG_20220524_211206.jpg
    IMG_20220524_211206.jpg
    116.4 KB · Views: 29
  • IMG_20220524_211524.jpg
    IMG_20220524_211524.jpg
    79.9 KB · Views: 28

zputnyq

Senior Member
Apr 19, 2013
617
277
Why should you build debug for yourself?!

Isn't it more simple to follow the link from Magisk app (no matter which version) to go to the Magisk official GitHub page

Scroll down there to find Downloads - see the screenshot

You can download app-debug.apk (Debug) or app-release.apk (Canary)

To switch, you need to download and install the right APK and then to patch the img and flash (or you can flash the renamed APK to zip from TWRP).
Installation is also described in details on the Magisk GitHub page
He didn't mention the debug release on the commit, like stable version or canary.
 

Attachments

  • _20220525_022332.JPG
    _20220525_022332.JPG
    75.5 KB · Views: 30

pndwal

Senior Member
He didn't mention the debug release on the commit, like stable version or canary.
Since Debug and Canary builds are basically functionally identical, they are produced in tandem and appear in https://github.com/topjohnwu/magisk-files/tree/canary (repo/branch).

Debug will produce a performance hit on old devices due to new debug tools integrated, but the difference is otherwise just build type. Canary is now smaller than it was as verbose debug logging is removed and it is built as release. Debug is built as debug. Both are built at the same time from same commit...

John posted this recently:
John Wu, May 15

An update to future Magisk releases: the "Canary" channel will start shipping release builds, and a new "Debug" channel will be shipping debug builds. Both channels will be updated at the same time from the same source code, the only difference is the build flag.

Debug builds should only be used if you are actively developing Magisk, or if you want to submit bug reports. An upcoming change will start enforcing APK signature verifications on release builds to combat fraudulent/modded/hacked Magisk app APKs.

We also plan to start adding symbols (and maybe some sanitizers) and enabling core dumps on debug executables for better debugging and auditing. All these changes can be an issue on older device, and could significant effect performance, which is why it should not be used daily.

John Wu, May 24 (8h)

I just pushed out a new Canary build that enforces Magisk app signature verification directly in the root daemon. I have also updated the README on GitHub with guidance for developers working on Magisk itself and distributing your own builds signed with your own keys.

👀 PW
 
Last edited:

dohanin

Senior Member
good morning all.

latest 5.0.5519 of Intune Portal (Microsoft) detects root !

On top of common/standard guideline (100& working till yesterday),

a) I hided xposed modules (HMA)
b) XprivacyLUA is set as well (tracking and analytics)

No way to circumvent root detection. I suspect Intune Portal needs to get the list of installed applications as - when I also set this flag in XPrivacy + complete app's data reset - the account cannot be addedd and app loops.....

I also froze (renamed) Magisk app --> no luck

any further suggestion from you?
my intune company portal is updated to latest version and it is still fine, i.e. root not detected. i only have usnf and shamiko modules

you have to make sure ALL activities under intune are ticked in denylist (default is not)
 

traversone

Senior Member
Feb 18, 2019
172
56
my intune company portal is updated to latest version and it is still fine, i.e. root not detected. i only have usnf and shamiko modules

you have to make sure ALL activities under intune are ticked in denylist (default is not)
ok, many thanks! I will select all the activities as per your suggestion (in last but noe version that was not needed).

But which ANdroid version do you use?
 

dohanin

Senior Member
ok, many thanks! I will select all the activities as per your suggestion (in last but noe version that was not needed).

But which ANdroid version do you use?
Actually, someone in this post also reported the need to check all activities for intune company portal:


I am using Android 12.
 

traversone

Senior Member
Feb 18, 2019
172
56
Actually, someone in this post also reported the need to check all activities for intune company portal:


I am using Android 12.
in Android 11 (it is supposed to deny access to applist) I have also added Outlook in Denylist (standard selection for IntunePortal too, non all activities) and it WORKS !

of course Manager must be repacked with random name,

In android 10 this trick does not work though, or I am not able to make it working
 

lindsaysxda

Member
May 14, 2022
20
3
Xiaomi Mi A1
Can someone please help with my issue?
I'm trying to install Magisk to inactive slot as per this guide but no success.

I uninstalled Magisk (restore images option) successfully, downloaded and installed OTA, went back to install Magisk but there is no "install to inactive slot" anymore (screenshot), only select patch a file. It used to be on older versions when I was on LOS 17 a few months ago. I'm on 18 now. Magisk latest.
Screenshot_20220524-154117_Magisk.png
 

zgfg

Senior Member
Oct 10, 2016
7,366
4,757
Can someone please help with my issue?
I'm trying to install Magisk to inactive slot as per this guide but no success.

I uninstalled Magisk (restore images option) successfully, downloaded and installed OTA, went back to install Magisk but there is no "install to inactive slot" anymore (screenshot), only select patch a file. It used to be on older versions when I was on LOS 17 a few months ago. I'm on 18 now. Magisk latest.
View attachment 5622367
Don't know regarding your ROM, on my Xiaomi, stock ROM the option is present

If you are on 24.3 Stable, have you tried with the latest Canary 24313.
Btw, if you want to report to Magisk GitHub, you will need (Canary) Debug version
 
  • Like
Reactions: ipdev

Top Liked Posts

  • 6
    Hello. Can someone help me downloading latest Momo please? https://t.me/magiskalpha/517
    I am on computer and i dont want to make a Telegram account :/.

    Thanks.
    3
    Ohhh really?? Yes that's what I did I formatted my data using TWRP but I didn't noticed there is an option to check do not encrypt

    About every device ive used requires a zip file flash to disable dm verity. forced encryption.....

    For my S20+, after the bootloaderin unlocked, and TWRP is flashed via ODIN, i have to format /data, and then flash an encryption disabler zip

    I would check your devices forums for similar to see if similar is needed
    3
    About every device ive used requires a zip file flash to disable dm verity. forced encryption.....
    some devices have modded twrp available that has an option to 'disable forced encryption' and many other 'features'. i think it's the equivalent of using the relevant zip/script(s).

    btw, it has been reported by several users that that twrp for poco x3 (surya/karna) can decrypt /data on A12.1.
    3
    For me (recently I learnt it's 2SI device - whatever it means😁
    Well here's the 'why' anyway; thought I'd provide a summary -

    For anyone interested in both Android and Magisk evolution to modern 2SI boot protocol...

    SAR


    The first major departure from (Legacy) Ramdisk Android boot type was (Legacy) SAR.

    This was introduced largely to accommodate A/B partitioning & seamless updates while conserving / reallocating memory resources, and changed Legacy Ramdisk's initial rootdir from rootfs to system.

    A/B SAR eliminates recovery and cache partitions and halves the size needed for system by shipping factory preopted system app .odex files, which formerly took up ½ /system partition, on inactive /system_b partition and moving them to /data on first boot... An updated .odex file would have been installed to /data in any case after first Google Play update for each system app which means original .odex files in system are soon rendered redundant and actually remain unused for most of the life of the device...

    In practice all this means that the same effective capacity for all active partitions, even with Bootloader, Boot, Radio, Vendor & System duplicated in a & b, is achieved with an increase of just under 1%, or 320 MiB on a 32GiB device, making A/B SAR a very cost effective proposition...

    2SI

    Since initial rootdir was changed from rootfs to system w/ introduction of Legacy SAR, a problem was created for prospective new Dynamic Partitioning scheme(s) for Android 10+. This is because the Linux kernel can't understand this new partition format and is unable to directly mount system as rootdir. In other words, a solution was required to support logical partitions as the kernel cannot mount the super blocks directly without userspace support.

    2SI was/is the new solution designed to overcome this obstacle by having the kernel boot to initramfs as (initial) rootdir and execute /init in rootfs, just like Legacy ramdisk devices did.

    The difference is that instead of initramfs booting Android, init in rootfs mounts the system partition and uses it as a new (Final) rootdir (in SAR, /system is Initial rootdir), allowing userspace to handle the rest of booting including deciding whether to boot into Android by executing a second-stage init (/system/bin/init), or into recovery. (In A/B w/o recovery partitions, method is officially called USES_RECOVERY_AS_BOOT; Some A/B devices have recovery_a/_b partitions (OnePlus 8T?) and only use the boot ramdisk to boot into Android as do A-only 2SI devices).
    -------​
    So basically boot to initramfs was replaced with System As Root w/ SAR in Android 9 (7.1 in the case of first Pixel), booting directly to /system... Then boot to initramfs was restored w/ 2SI in Android 10!... This explains why Google doesn't consider 2SI true SAR...

    John Wu Android boot refs:
    - Android Booting Shenanigans
    -"2SI is a NIGHTMARE to work with, so yeah...."

    - ok, 2 Stage Init), nothing changed
    FWIW, the issue where previously patched boot image becomes incompatible and Direct Install breaks seems only to affect certain devices, notably OnePlus...

    Perhaps the issue is reverting either AVB stripped flags, the modded fstab (file location in the ramdisk, fstab copy in /vendor/etc., the way OEM's like OnePlus implement the Device Tree Blobs / Device Tree Blob Overlays containing fstab etc may cause problems) or some other variable...
    https://source.android.com/devices/architecture/kernel/mounting-partitions-early
    Latest Momo with latest Shamiko (latest USNF, DenyList disabled) on latest Canary still detects su, Magisk and Zygisk
    Could be some module or mod?
    As TJW named, mast..tion device👍
    Never saw that... PW
    2
    I don't know if we are having a language barrier or if we are going round and round because we are just saying the same things. Let me try to make it clearer.

    • I have downloaded the latest canary from TWJ Github
    • Intune does not allow me to install any unknown sources to my personal profile, nor my work profile
    • I cannot use the magisk manager app to update since it is from "unknown source"
    • I have attempted to go around this by installing the latest canary from TWJ Github using "adb install"
    • After doing this it STILL states that I am not on the latest Magisk Manager
    Is this normal is the question? Is there any other way to update with the limitations that I state above without removing Intune doing the upgrade and then reinstalling Intune?

    Last question is if I uninstall Magisk, then use the "adb install" to reinstall if that works, would I be able to hide Magisk Manager again or would that be blocked due to "unknown sources?"
    I asked you about downloading to make sure that you are really downloading the Canary 25101.
    My APK is 10.71 MB and see my screenshot with hashes to double check do you have the same/correct 25101 apk

    Second, I asked does your adb installation ends with an error or not?
    (If it ends with an error, maybe bcs of Intune, then obviously you would not have the new 25101 installed after your 'update')

    Third, I asked you to unhide or even delete your old 25001 APK before installing the 25101apk

    All those questions were to help to see why after your adb installation of the new 25101 you still open 25001 aok

    If you don't understand these questions or you don't want to do so (deleting your old 25001 APK WILL NOT uninstall Magisk itself, your Magisk modules, end so on) then sorry, I can not Help you better

    You asked me "is that normal". How do I know is it 'normal' - it could be that Intune does not allow you even to install via adb - that's wh I asked you does adb report an error

    Many users have 'problems' installing the new Magisk app (normal way, nobody installs by adb - I didn't see any post from another user with Intune doing that way) IF THEY DIDN'T NOT unhide or uninstall the previous hidden version of Magisk app.
    We have had tens and tens of such cases here (without Intune, maybe you didn't follow and read discussions here, it's not specific to 25101, it's repeating through months:
    Without unhiding or deleting, after updating they have both apps, old hidden and new.
    Maybe you also have both, but you don't 'see' the new 25101 APK and you are opening that old hidden 25001

    That's why I asked you to unhide (or even delete) your old 25001 APK.

    But I cannot answer you would you be able to hide again. How do I know for sure if I don't have Intune and cannot test myself?!?!?!?!?!

    Maybe somebody else with Intune can tell you about hiding the Magisk app with Intune.
    Btw, if you were able to hide 25001, then you should be also able to hide 25101 as well

    ---

    EDIT:

    To avoid the case that after your adb installation of AP 25101 you still open the old/hidden/repackaged 25001, test as on my second screenshot (I used terminal app but you can do through adb with adb shell)

    Ie, your old hidden 25001 is repackaged and has a different package name (random)

    Test do you have installed the package: com.tophognwu.magisk

    If it shows that package is installed, it means that you have in parallel the old hidden (random pkg name) 25001 and New not-hidden 25101 (com.topjohnwu.nagisk) - common problem for users who do not unhide before updating the Magisk APK
  • 9
    Latest Official TJW Beta (release) Magisk build:

    Magisk

    2022.6.7 Magisk v25.0​

    Another major release! A lot of the changes aren’t visible at the surface, but v25 is actually a really substantial upgrade!

    MagiskInit Rewrite​

    A significant portion of magiskinit (the critical software that runs before your device boots up) is completely rewritten from scratch. Ever since Android introduced Project Treble in Android 8.0, Magisk has been constantly fighting against the increasingly complex partitioning and early mount setups of all kinds of devices, sometimes with weird OEM specific implementations. It got to a point that magiskinit had become so complicated that few people (including myself!) were aware of every detail, and maintaining this piece of software like this was clearly not sustainable. After many months of planning (yes, this whole re-architecture has been in my head for a long time) and some help from external contributors, a whole new sepolicy injection mechanism is introduced into Magisk, solving the “SELinux Problem” once and for all.

    Since this is a full paradigm shift on how Magisk hot-patch the device at boot, several behaviors that many developers implicitly relied on might not exist. For example, Magisk no longer patches fstabs in most scenarios, which means AVB will remain intact; some custom kernels rely on AVB being stripped out for them by Magisk.

    MagiskSU Security Enhancements​

    The superuser functionality of Magisk has not seen much changes ever since its introduction. v25 focuses on making root permission management more accurate and secure:

    • Add a whole new package tracking system to ensure malicious UID reuse attack cannot be performed
    • Properly support and implement the UX in the Magisk app for packages using sharedUserId
    • Enforce root manager APK signature verification to combat the rampant unofficial Magisk app “mods”
    Many might not realize, but using a trusted, unmodified Magisk app is really important. Magisk’s root daemon treats the Magisk app differently and gives it blanket root access without any restrictions. A modded Magisk app can potentially backdoor your device.

    And in case some of you are about to put on your tin foil hats, this is not designed to “vendor lock-in”; the goal is to make sure your root management app comes from the same developer of the underlying root implementation. Magisk’s build system allows custom distributors to use its own signing keys, and in addition, I am also providing official debug builds which skips any signature verification for development.

    Full Changelog: here

    Magisk Changelog​

    v25.0​

    • [MagiskInit] Update 2SI implementation, significantly increase device compatibility (e.g. Sony Xperia devices)
    • [MagiskInit] Introduce new sepolicy injection mechanism
    • [MagiskInit] Support Oculus Go
    • [MagiskInit] Support Android 13 GKIs (Pixel 6)
    • [MagiskBoot] Fix vbmeta extraction implementation
    • [App] Fix stub app on older Android versions
    • [App] [MagiskSU] Properly support apps using sharedUserId
    • [MagiskSU] Fix a possible crash in magiskd
    • [MagiskSU] Prune unused UIDs as soon as system_server restarts to prevent UID reuse attacks
    • [MagiskSU] Verify and enforce the installed Magisk app’s certificate to match the distributor’s signature
    • [MagiskSU] [Zygisk] Proper package management and detection
    • [Zygisk] Fix function hooking on devices running Android 12 with old kernels
    • [Zygisk] Fix Zygisk’s self code unloading implementation
    • [DenyList] Fix DenyList on shared UID apps
    • [BusyBox] Add workaround for devices running old kernels
    https://topjohnwu.github.io/Magisk/releases/25000.html

    🎉🎉 👍 PW
    7
    Latest Official TJW public Stable (release) Magisk build:

    Magisk

    Magisk Changelog​

    v25.1​

    • [MagiskBoot] Fix ramdisk backup being incorrectly skipped
    • [MagiskBoot] Add new feature to detect unsupported dtb and abort during installation
    • [Zygisk] Change binary hijack paths
    • [App] Fix incorrect recovery mode detection and installation
    • [MagiskInit] Fix config not properly exported in legacy SAR devices
    • [General] Enforce the Magisk app to always match or be newer than magiskd

    Release Notes:
    https://topjohnwu.github.io/Magisk/releases/25100.html

    For remaining diffs to public Stable 24.3, see Changelog for public Beta 25.0:
    https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-86993241

    🎉🎉 👍 PW
    6
    I've bought a Motorola Moto G71 5G. Unfortunately i cannot find a single thread about it on XDA. If i find it's stock ROM, what's the next steps to install magisk? How can i know that patching boot.img with magisk would work and not result in bootloop?
    You could opt for temporary root and check if it works or not. For that, boot your device via the Magisk patched boot file using the command-
    Code:
    fastboot boot magisk-patched-boot.img
    If everything's well and good, then open the Magisk app and select Direct Install. It will permanently root your device.
    However, if your device doesn't boot up, then retry with a force restart, it will be booted to the standard non-rooted OS.
    If you are still unable to boot to the OS, then flash the stock boot.img via
    Code:
    fastboot flash boot boot.img
    6
    Latest Official TJW Canary (release) & Debug (debug) Magisk builds:

    Magisk (34b2f525) (24316)​

    • [App] Fix stub app on older Android versions

    Diffs to v24.3​

    • [MagiskInit] Update 2SI implementation, significantly increase device compatibility (e.g. Sony Xperia devices)
    • [MagiskInit] Introduce new sepolicy injection mechanism
    • [MagiskInit] Support Oculus Go
    • [MagiskInit] Support Android 13 GKIs (Pixel 6)
    • [MagiskBoot] Fix vbmeta extraction implementation
    • [App] [MagiskSU] Properly support apps using shared UID
    • [App] Fix stub app on older Android versions
    • [MagiskSU] Fix a possible crash in magiskd
    • [MagiskSU] Prune unused UIDs as soon as possible to prevent UID reuse attacks
    • [MagiskSU] Verify and enforce the installed Magisk app's certificate to match the distributor's signature
    • [MagiskSU] Handle system_server restarts to prevent UID reuse abuse
    • [MagiskSU] [Zygisk] Proper package management and detection
    • [Zygisk] Fix function hooking on devices running Android 12 with old kernels
    • [Zygisk] Fix Zygisk's self code unloading implementation
    • [DenyList] Fix DenyList on shared UID apps
    • [BusyBox] Add workaround for devices running old kernels
    https://github.com/topjohnwu/magisk-files/blob/b4869a2d900721c508c974e5288edf29aee25e01/notes.md

    👍 PW
    6
    Thank you @zgfg and @ipdev . I have a fully working and automated script to both update my phone and patch & flash the magisk boot.img file. The only thing thats missing is the autoreboot after sideload but i guess TWRP has to implement this feature.

    The script can both be used as standalone or class to modify it for custom stuff. Ill continue to work on the repo and make everything neat, as well as working on windows and linux binarys & a gui for people that have no idea how to use scripts.

    Thank you guys for your help, this will save so much time for me and maybe even other people (at least i hope it will be used). :)

    Here it is on github
  • 1080
    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