Magisk General Support / Discussion

Search This thread

J.Michael

Recognized Contributor
Jan 20, 2018
1,652
1,830
Samsung Galaxy Tab A series
It's been a long, long time since I've paid attention to how rooting works on a technical level with modern devices.

I have an Android 10 head unit that I'm trying to get a working userspace root solution onto. The bootloader is locked, but I have root via both a wireless ADB shell as well as serial console. I have read/write access to /system. I don't have the ability to unlock the bootloader and flash a patched boot image. Is it possible to get Magisk working?
I'm going to guess "No": If you can't unlock the bootloader, and the bootloader being locked means what I think it means, then you can't possibly patch any of the system.

You could try naming the manufacturer -- somebody might have an idea of how to unlock the bootloader.

Why do you think you need root access?
 
  • Like
Reactions: ipdev

pndwal

Senior Member
The combination of app and on device services (root)could be called Magisk The Gathering. :D:D:D
I always thought it best to try to understand / adapt to a Devs parlance / nomenclature if only to avoid reinventing the wheel, which could be considered a bad omen... If the Dev/creator wanted to reinvent the wheel however, I was happy to let 'em...

But let's throw out convention; I'm with you guys... Let's go with the "Magisk The Gathering" app!... @ipdev's a Dead head and The Gathering has been described as 'coming off like a cheap mix between "The Omen" and "The Dead Zone".... Gotta work for all of us no? 😁 PW
 

Telperion

Senior Member
Feb 20, 2011
686
359
I'm going to guess "No": If you can't unlock the bootloader, and the bootloader being locked means what I think it means, then you can't possibly patch any of the system.

You could try naming the manufacturer -- somebody might have an idea of how to unlock the bootloader.

Why do you think you need root access?
Respectfully, you either didn't read my whole comment or didn't read it clearly. I already have root access via wireless ADB and using a USB-UART bridge I can connect via Putty to a serial console and I have root. I can read, write, modify, etc, the system partition.

I'm wondering whether I can get Magisk running.
 

J.Michael

Recognized Contributor
Jan 20, 2018
1,652
1,830
Samsung Galaxy Tab A series
Respectfully, you either didn't read my whole comment or didn't read it clearly. I already have root access via wireless ADB and using a USB-UART bridge I can connect via Putty to a serial console and I have root. I can read, write, modify, etc, the system partition.

I'm wondering whether I can get Magisk running.
The system partition is not the one that needs to be modified to install Magisk. In fact, Magisk's claim to fame is the virtual modification of the system filesystem -- after Magisk has been installed.

You still have not identified your device.

Magisk used to be installed in the boot partition. Sometimes in the recovery partition. Recently new partitions have been invented and one of them might be where Magisk needs to be installed.

If you have no fear of losing your data, try installing Magisk manager app apk and using it to patch a copy of your boot image. Then try to overwrite your boot partition. See if you can boot.

Do you have any idea whether you will still have ADB root access if you are unable to boot Android?
 
  • Like
Reactions: IronTechmonkey

Telperion

Senior Member
Feb 20, 2011
686
359
Roco K706.

I've already tried using dd to write a patched boot image. UBoot fails when it kicks off the partition verification process and the device doesn't boot any further, so that isn't a viable option.
 

meric57

Senior Member
Oct 2, 2017
290
57
Oeutrange
Samsung Galaxy Tab E
Hello J.Michael, you are talking about firmware and security updates, I redid the modification with magisk as explained by Johnwu with adb pull and odin.
I hid the magisk app, no worries, I'm going to restore it to see, restoration ok.
The problem comes when I install an application or an update see a module on restarting the device I open magisk is I see application still install my magisk and zygisk not available, I would like to know if I can recover more quickly magisk no available either by flash or adb see other recovery mode.

I haven't yet tested uninstalling the magisk app and restarting, I'm waiting for the new smartphone to experiment with the S10 afterwards.
 

meric57

Senior Member
Oct 2, 2017
290
57
Oeutrange
Samsung Galaxy Tab E
Like I said I have been using Manger apps way too long to not refer to them as the Manager. 🙃
Instructions
You can install/update phh's SuperUser in Magisk Manager's Download section​
If you have no root in the first place, please flash the zip in the attachment through custom recovery​
A root solution is part of a proper Magisk installation.​
After phh's SuperUser is installed, please install the SuperUser manager Application through the Play Store​

Guess I am turning into the "Old Man".
Next I will be yelling at kids to keep of my lawn. 🤪


Cheers. :cowboy:
Hello ipdev, you are talking about an application like root checker when I open to see phh's SuperUser I come across page not found.
As explained above hidden magisk app no problem or restored, just losing magisk after restarting my S10.
I will restart it after restoring the magisk app I see not available see magisk capture not the magisk app.

a problem or conflict
 

Attachments

  • Screenshot_20230207_094545.jpg
    Screenshot_20230207_094545.jpg
    296.7 KB · Views: 36
  • Screenshot_20230207_094737.jpg
    Screenshot_20230207_094737.jpg
    283.6 KB · Views: 37
  • Like
Reactions: J.Michael

pndwal

Senior Member
  • Like
Reactions: J.Michael
Feb 5, 2023
41
5
magisk ruined my wifi (crDroid custom rom (last) | Redmi 8 - olive)

logs: (may be helpful)
02-07 15:26:31.123 E/AudioSystem-JNI(2886): AudioSystem::listAudioPorts error -19
02-07 15:26:31.123 W/AudioManager(2886): updateAudioPortCache: listAudioPorts failed
02-07 15:26:31.125 W/DPMJ (4352): |SERVICE| DPM received unexpected action: android.intent.action.ANY_DATA_STATE
02-07 15:26:31.126 I/Telephony(2142): isRttCurrentlySupported -- regular acct, hasVoiceAvailability: false
02-07 15:26:31.126 I/Telephony(2142): isRttSupported: false
02-07 15:26:31.126 I/Telephony(2142): alwaysAllowWhileRoaming: false
02-07 15:26:31.126 I/Telephony(2142): isRoaming: false
02-07 15:26:31.126 I/Telephony(2142): isOnWfc: false
02-07 15:26:31.134 I/CarrierServices(7608): [43] faf.handleMessage: RcsEngineImpl[DUAL_REG]:[d8be370e-3c66]>Handler: handleMessage processing message:[NOTIFY_UPTIME_IGNORE_STATE_CHANGED] with [non-null]:RcsEngineImpl reference
02-07 15:26:31.138 I/CarrierServices(7608): [44] egs.c: Connected state: [1], networkType: [MOBILE]
02-07 15:26:31.141 I/TetheringManager(1995): startTethering caller:com.android.systemui
02-07 15:26:31.147 I/CarrierServices(7608): [43] ewq.f: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:918]
02-07 15:26:31.149 I/SystemUpdate(3994): [Execution,ExecutionManager] Action pending executed for 0.05 seconds.
02-07 15:26:31.159 I/Telephony(2142): isRttCurrentlySupported -- regular acct, hasVoiceAvailability: false
02-07 15:26:31.159 I/Telephony(2142): isRttSupported: false
02-07 15:26:31.159 I/Telephony(2142): alwaysAllowWhileRoaming: false
02-07 15:26:31.159 I/Telephony(2142): isRoaming: false
02-07 15:26:31.159 I/Telephony(2142): isOnWfc: false
02-07 15:26:31.161 I/WifiService(1263): startTetheredHotspot uid=1073
 

pndwal

Senior Member
magisk ruined my wifi (crDroid custom rom (last) | Redmi 8 - olive)

logs: (may be helpful)
02-07 15:26:31.123 E/AudioSystem-JNI(2886): AudioSystem::listAudioPorts error -19
02-07 15:26:31.123 W/AudioManager(2886): updateAudioPortCache: listAudioPorts failed
02-07 15:26:31.125 W/DPMJ (4352): |SERVICE| DPM received unexpected action: android.intent.action.ANY_DATA_STATE
02-07 15:26:31.126 I/Telephony(2142): isRttCurrentlySupported -- regular acct, hasVoiceAvailability: false
02-07 15:26:31.126 I/Telephony(2142): isRttSupported: false
02-07 15:26:31.126 I/Telephony(2142): alwaysAllowWhileRoaming: false
02-07 15:26:31.126 I/Telephony(2142): isRoaming: false
02-07 15:26:31.126 I/Telephony(2142): isOnWfc: false
02-07 15:26:31.134 I/CarrierServices(7608): [43] faf.handleMessage: RcsEngineImpl[DUAL_REG]:[d8be370e-3c66]>Handler: handleMessage processing message:[NOTIFY_UPTIME_IGNORE_STATE_CHANGED] with [non-null]:RcsEngineImpl reference
02-07 15:26:31.138 I/CarrierServices(7608): [44] egs.c: Connected state: [1], networkType: [MOBILE]
02-07 15:26:31.141 I/TetheringManager(1995): startTethering caller:com.android.systemui
02-07 15:26:31.147 I/CarrierServices(7608): [43] ewq.f: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:918]
02-07 15:26:31.149 I/SystemUpdate(3994): [Execution,ExecutionManager] Action pending executed for 0.05 seconds.
02-07 15:26:31.159 I/Telephony(2142): isRttCurrentlySupported -- regular acct, hasVoiceAvailability: false
02-07 15:26:31.159 I/Telephony(2142): isRttSupported: false
02-07 15:26:31.159 I/Telephony(2142): alwaysAllowWhileRoaming: false
02-07 15:26:31.159 I/Telephony(2142): isRoaming: false
02-07 15:26:31.159 I/Telephony(2142): isOnWfc: false
02-07 15:26:31.161 I/WifiService(1263): startTetheredHotspot uid=1073
Are you patching boot.img or recovery.img?... How did you obtain boot image to patch?... PW
 
Last edited:
  • Like
Reactions: J.Michael
Feb 5, 2023
41
5
Are you patching boot.img or recovery.img?... How did you obtain boot image to patch?... PW
i'm having no ramdisk, i'm having root via recovery.img and boot.img patched with root, i have the recovery.img from the unofficial forum TWRP in latest version, it is patched via magisk manager with turned on recovery mode opnion
 

martyfender

Senior Member
Mar 9, 2017
3,351
1,826
Indianapolis, IN
magisk ruined my wifi (crDroid custom rom (last) | Redmi 8 - olive)

logs: (may be helpful)
02-07 15:26:31.123 E/AudioSystem-JNI(2886): AudioSystem::listAudioPorts error -19
02-07 15:26:31.123 W/AudioManager(2886): updateAudioPortCache: listAudioPorts failed
02-07 15:26:31.125 W/DPMJ (4352): |SERVICE| DPM received unexpected action: android.intent.action.ANY_DATA_STATE
02-07 15:26:31.126 I/Telephony(2142): isRttCurrentlySupported -- regular acct, hasVoiceAvailability: false
02-07 15:26:31.126 I/Telephony(2142): isRttSupported: false
02-07 15:26:31.126 I/Telephony(2142): alwaysAllowWhileRoaming: false
02-07 15:26:31.126 I/Telephony(2142): isRoaming: false
02-07 15:26:31.126 I/Telephony(2142): isOnWfc: false
02-07 15:26:31.134 I/CarrierServices(7608): [43] faf.handleMessage: RcsEngineImpl[DUAL_REG]:[d8be370e-3c66]>Handler: handleMessage processing message:[NOTIFY_UPTIME_IGNORE_STATE_CHANGED] with [non-null]:RcsEngineImpl reference
02-07 15:26:31.138 I/CarrierServices(7608): [44] egs.c: Connected state: [1], networkType: [MOBILE]
02-07 15:26:31.141 I/TetheringManager(1995): startTethering caller:com.android.systemui
02-07 15:26:31.147 I/CarrierServices(7608): [43] ewq.f: No RCS Configuration was found in Bugle for simID: redacted-pii:sim_id[chars:20,last3:918]
02-07 15:26:31.149 I/SystemUpdate(3994): [Execution,ExecutionManager] Action pending executed for 0.05 seconds.
02-07 15:26:31.159 I/Telephony(2142): isRttCurrentlySupported -- regular acct, hasVoiceAvailability: false
02-07 15:26:31.159 I/Telephony(2142): isRttSupported: false
02-07 15:26:31.159 I/Telephony(2142): alwaysAllowWhileRoaming: false
02-07 15:26:31.159 I/Telephony(2142): isRoaming: false
02-07 15:26:31.159 I/Telephony(2142): isOnWfc: false
02-07 15:26:31.161 I/WifiService(1263): startTetheredHotspot uid=1073
From my experience having to wifi or other devices may mean you didn't patch the boot image from the new rom. Did you by chance use an older boot.img from a previous rom. the rom and kernel versions must match.
 
  • Like
Reactions: J.Michael

pndwal

Senior Member
i'm having no ramdisk, i'm having root via recovery.img and boot.img patched with root, i have the recovery.img from the unofficial forum TWRP in latest version, it is patched via magisk manager with turned on recovery mode opnion
Bit confusing what you did... You extract and patch one boot image only; either boot.img (WITHOUT selecting Recovery mode) or recovery.img with Recovery mode set, NOT both! ... To access rooted system in recovery mode you will always need to boot via recovery with recovery key combo but release all buttons at splash screen to bypass recovery and boot to system with root...

Nb. Recovery mode means Magisk in recovery ramdisk... It has nothing to do with flashing via custom recovery (TWRP etc), and can't be flashed that way in any case...

In your case you can simply ignore Ramdisk = No! This is because Xiaomi bootloaders are (inexplicably) compatible with ramdisk in boot partition despite the OEM not installing one in A-Only legacy SAR devices, and Magisk always installs basic ramdisk where OEM Randisk is missing... (Magisk continues to display Ramdisk = No to indicate No OEM Ramdisk in boot.)

This means you extract and patch your boot.img (Ensure Recovery mode is NOT selected) and flash the resulting image to boot partition.

To fix you device, simply fastboot flash both unpatched boot.img and recovery.img then check device boots/operates normally again.

Next, ensure you have ROM package corresponding exactly to current running OS version and extract boot.img to patch/flash as above... Alternatively, you can install TWRP and make a backup of boot partition, obtain that from Backups and use this image. You may not even need to rename .win extension as .img, but can if you wish...

Please read John's Installation Instruction page carefully also because all necessary information is actually treated there...

Hope this helps... Please report results. 🙂 PW
 

Top Liked Posts

  • 4
    Not completely broken as I explained here. More like hit or miss.
    Ah yes... It's the Alzheimer's you see...

    I've edited my posts above... Thanks!

    Pinging @ephemunch...

    Alzheimers Magisk modders chant:
    "What do we want? Better Magisk hiding!.... When do we want it........
    Wait... when do we want what?..."


    😃 PW
    3
    Nb. Install to Inactive Slot preservation method is broken for late Pixel 6 series updates and for Pixel 7 series (and likely other devices by now) due to new update engine partition digest checks marking installation w/ Magisk as corrupted before it will boot...

    👀 PW
    Not completely broken as I explained here. More like hit or miss.
    3
    Thanks. So like the XDA-Instruction page said I need reflash bootloader
    Not sure what you mean here... If you mean unlock, then no... That's a one time thing unless you/your flashing software relocks it...
    and reroot Magisk/ Pixel 6A after every OTA of LineageOS 20
    Late LOS should preserve Magisk when updating from booted system as it supports addon.d v2 survival script.. Nb. this is a different Magisk preservation feature, maintained in Magisk by @osm0sis, only for custom ROMs...
    You could try OTA preserve Magisk method if you're game (some still have success) but this no longer works consistently as mentioned above...

    Most find they need to return images to stock, take OTA and reboot to new slot, then do initial root again as root was lost...

    🤠 PW
    1
    MemoryDetector is the app ?
    sus.apk, download from TG channel as on the screenshot in my quoted post #55033

    Actually, the same apk on GitHub:
    1
    I use Magisk to hide the rooted status for an app, on my samsung a21s, after the process my sim card shows emergency calls only
    Is there any way to test whether it can really make an emergency call without actually making an emergency call?

    Did you add the name of the app to a list, like Hide List, Deny List,...? Are you using HMA? Did you add the app to HMA's list?

    What I am really working towards is, did you maybe add other, especially system, apps to a list? You probably shouldn't.
    To me, "the process" is not clear... I assumed this meant installing Magisk to hide the rooted status, and you hiding the rooted status itself... Some clarification from the member would certainly help... PW
  • 12
    . . . found a YT video that explains you can download the APK, rename to .zip, and install it as a module. Hopefully that works 😯
    Not only does it work, but if you take a few extra steps, you can make a 100% clean install of ANY Magisk version or fork without PC or TWRP.
    Here's how I do it :-

    - Download Magisk version/fork you want to try
    - Add .zip to the end of the Magisk apk eg: Magisk.apk becomes Magisk.apk.zip
    - Unhide the Magisk app if you have hidden/renamed it
    - Turn on aeroplane mode
    - Delete /data/adb/Magisk folder and /data/adb/magisk.db file
    - In Magisk app, perform Uninstall Magisk - RESTORE IMAGES so you are back on stock boot image
    - Install the new Magisk.apk.zip as a module
    - Change Magisk.apk.zip back to Magisk.apk
    - Uninstall the Magisk app (the apk only NOT Magisk itself)
    - Reboot
    - Install the new Magisk.apk
    - Open it up and check settings and modules and customise to your needs eg: zygisk may need to be re-enabled and deny list reconfigured
    - Reboot again and turn off aeroplane mode

    You will now be on a new clean install of whatever Magisk you are trying. No loss of root or modules and no need to clear data from play services to re-enable wallet (assuming it worked before and you set everything up properly)
    Only thing left to do is grant root to whatever apps need it.
    11
    how/where do you get prior canary builds if you're on the latest?
    Magisk canary builds are available on GitHub.
    You just have to look at the history. 🙃

    Canary builds are hosted in the magisk-files repo.
    magisk-files (Canary commit history) - [GitHub] - Link
    Select the build commit you are looking for.
    Select the apk file and "View File".
    You can then Download or "View raw".
    Since it can not show you the raw file, it will start the download of the file.
    mcanary1.png
    mcanary2.png
    mcanary3.png
    mcanary4.png

    Cheers. :cowboy:
    10
    Thread lightly cleaned!

    @S8rooted&tooted and @pndwal

    Greetings to you both. As you have both noticed, I have cleaned this thread of some of your recent comments. I will politely ask you both to please refrain from
    further OT and argumentative comments, and to please conduct yourselves in accordance with XDA Rule #2.3 for member conduct:

    2.3 Flaming / Lack of respect: XDA is about sharing and this does not involve virtual yelling (flaming) or rudeness. Flaming or posting with a lack of respect is unacceptable. Treat new members in the manner in which you would like to have been treated when you were a new member. When dealing with any member, provide them with guidance, advice and instructions when you can, showing them respect and courtesy. Never post in a demanding, argumentative, disrespectful or self-righteous manner.

    If you wish to argue further, then please do so via PM's, or another platform since XDA is not the place for these types of discussions on the public forums. Please be advised, posts which continue to violate the forum rules will be removed with immediate effect, and posiible sanctions applied to your account should things get too far out of hand, which we certainly do not want.
    So please let this be the end of this here and now.

    Thank you for your cooperation, and hope you have a pleasant day.

    Best regards: Badger50
    10
    Latest Canary (+Debug) Magisk:

    Magisk (e5641d5b) (25208)​

    • Fix release builds

    Diffs to v25.2​

    • [General] New magic mount backend. It supports loading modules into system with overlayfs files injected
    • [MagiskPolicy] Fix minor bug in command line argument parsing
    • [Zygisk] Prevent crashing daemon in error
    • [Zygisk] Rewrite zygote code injection with new loader library approach
    • [Zygisk] Release new API version 4
    • [App] Make stub patching 100% offline
    • [App] Support patching init_boot.img for Samsung ODIN firmware
    • [MagiskInit] Support replacing existing *.rc files in overlay.d
    • [MagiskInit] Rewrite sepolicy.rules mounting and loading implementation
    https://github.com/topjohnwu/magisk-files/blob/0e63c640c4b8799609d6cf3bdd4f88b2e8df4c08/notes.md

    👍 PW
    8
    View attachment 5853939
    @osm0sis now they are going to remove custom recovery support 😂

    It is because Magisk can't work properly on some broken custom recoveries, which mount partitions with wrong devices...
    Found no way to workaround it other than detecting and warning user to reinstall Magisk manually...
  • 1091
    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