Magisk General Support / Discussion

Search This thread

Philnicolls89

Senior Member
Jun 28, 2019
591
241
32
A.C.T
I have a Samsung Tab S2 that I previously had Lineage OS 16 and recently installed an unofficial Lineage OS 17.1 rom. I got everything working but Netflix and Disney Plus are not showing up in the Google Play Store. So I installed Magisk and MagiskHide Props Config. After a reboot I now pass a Safety Net check.

Two questions:

1. The previously mentioned apps still don't show in the Google Play Store.

2. I read something about keeping your device certified by installing a configuration file. It says to do it before setting up your device but I already have everything setup. Can I still do it or will I have to clean install and start over?

With stock LOS I didn't have this issue but with this custom rom I am.
Go to Google play store settings, right down the bottom it will say device certified or not. If it's not certified that's your problem.
Go to phone settings > apps > google play store and delete cache and data
Wait a few minutes then open play store and it should say certified, and the apps should be available for download
 

zputnyq

Senior Member
Apr 19, 2013
584
257
Hello,
Sorry if this question have been asked before.
I searched here but I still don't understand.
I need magisk canary before v 21.0.
May I know how to get it ?
 

Didgeridoohan

Forum Moderator / Developer Relations
Staff member
May 31, 2012
11,423
11,632
Gothenburg
Google Nexus 4
Nexus 6
Hello,
Sorry if this question have been asked before.
I searched here but I still don't understand.
I need magisk canary before v 21.0.
May I know how to get it ?

If you want a Canary release from before v21.0 you're kind of out of luck. Those are not officially available anywhere. Someone could of course have them stored for themselves, or you could look for an old fork of the magisk_files repo and grab the zip from the Github history of that fork. Or you could build yourself, from the corresponding commit, or simply download a stable release from Github and use that.
 

zputnyq

Senior Member
Apr 19, 2013
584
257
If you want a Canary release from before v21.0 you're kind of out of luck. Those are not officially available anywhere. Someone could of course have them stored for themselves, or you could look for an old fork of the magisk_files repo and grab the zip from the Github history of that fork. Or you could build yourself, from the corresponding commit, or simply download a stable release from Github and use that.
Ok, thank you I really appreciate it
 

DiamondJohn

Recognized Contributor
Aug 31, 2013
4,975
4,256
Sydney
If you want a Canary release from before v21.0 you're kind of out of luck. Those are not officially available anywhere. Someone could of course have them stored for themselves, or you could look for an old fork of the magisk_files repo and grab the zip from the Github history of that fork. Or you could build yourself, from the corresponding commit, or simply download a stable release from Github and use that.
Left field thought, to some extent, would previous versions of stable be like snapshots of a selected/working of a canary build?
 

RealYoti

Senior Member
Oct 1, 2010
100
137
Redmi Note 8, Android 10, MIUI 12
Magisk app says No about ramdisk. But I got boot.img from my firmware, patched it with app and flashed into boot partition via TWRP. It's really a magic - root access works)
 
  • Like
Reactions: J.Michael

pndwal

Senior Member
Jun 23, 2016
2,085
1,266
Sydney
Xiaomi Redmi Note 7
Hello,
Sorry if this question have been asked before.
I searched here but I still don't understand.
I need magisk canary before v 21.0.
May I know how to get it ?
Left field thought, to some extent, would previous versions of stable be like snapshots of a selected/working of a canary build?
Yes, exactly. Public releases are pretty much debug (canary) builds released at intervals after some testing.

If an earlier build is needed due to some later incompatibility etc, a stable build will almost always do, these are archived back to version 7 (May 2017) and Patch a File or Direct Install methods can fairly easily be used by means of Custom Channel in Manager/App.

It appears that John Wu pretty much considers debug (Canary) builds obsolete as soon as the next one is pushed because he is only interested in debugging / fixing the latest builds, and debugging (testing) is really the sole reason for their existence. Also, json files cannot be used as-is for Custom Channel as with public releases, making Patch a File or Direct Install methods difficult (json files needs editing and re-hosting to be of any use w/ legacy Canary builds as those hosted on GitHub all point only to latest build for the same reason). PW
 
Last edited:

pndwal

Senior Member
Jun 23, 2016
2,085
1,266
Sydney
Xiaomi Redmi Note 7
Redmi Note 8, Android 10, MIUI 12
Magisk app says No about ramdisk. But I got boot.img from my firmware, patched it with app and flashed into boot partition via TWRP. It's really a magic - root access works)
Yup, it's often worth trying...

Here's why you can have working ramdisk in boot image despite ramdisk (in FACTORY boot image) = no:
https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-84560765
Bit more:
https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-84567583 PW
 
Last edited:
  • Like
Reactions: RealYoti

Didgeridoohan

Forum Moderator / Developer Relations
Staff member
May 31, 2012
11,423
11,632
Gothenburg
Google Nexus 4
Nexus 6
Also, json files cannot be used as-is for Custom Channel as with public releases, making Patch a File or Direct Install methods difficult (json files needs editing and re-hosting to be of any use w/ legacy Canary builds as those hosted on GitHub all point only to latest build for the same reason). PW

With the new merged setup that's no longer an issue though... As long as you can get your hands on an apk of whatever version you need (after build 21406 when the merge happened, of course) you can install that version either through patching a boot image or direct install, irrespective of update channel.

Took me a while to wrap my head around update channels with the merged setup, but the key is that if you want to change channels you need to first install the app (from inside the app) before installing the internal binaries. Installing the Magisk internals will always use the provided binaries in the apk and does not care about the update channel. So if you're on Canary and want to change to the stable release, you need to change the channel and then install the app before installing the internals.
 

justjeepin

Member
Mar 15, 2019
11
1
Go to Google play store settings, right down the bottom it will say device certified or not. If it's not certified that's your problem.
Go to phone settings > apps > google play store and delete cache and data
Wait a few minutes then open play store and it should say certified, and the apps should be available for download
It says it's certified but Netflix and Disney Plus are not showing up in the store. But after deleting cache, data, and a restart for good measure it's working.

Thank you Philnicolls89!
 

Mat G

New member
Nov 18, 2016
1
0
Hi guys. Any chance of getting XCP-NG or some other opensource type 1 hypervisor included into magisk or if it is possible to do it yourself any tutorial or link to one?
 

pndwal

Senior Member
Jun 23, 2016
2,085
1,266
Sydney
Xiaomi Redmi Note 7
With the new merged setup that's no longer an issue though... As long as you can get your hands on an apk of whatever version you need (after build 21406 when the merge happened, of course) you can install that version either through patching a boot image or direct install, irrespective of update channel.
Yes, true! ... but this doesn't help the enquirer, who was asking "I need magisk canary before v 21.0. May I know how to get it?", and I was expanding on the valid point that public builds will most likely suffice in the absence of pre 21000 debug builds.

I think the stand-alone releases are debug 21402 / public 22.0 and later.
https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-84578687
Took me a while to wrap my head around update channels with the merged setup, but the key is that if you want to change channels you need to first install the app (from inside the app) before installing the internal binaries. Installing the Magisk internals will always use the provided binaries in the apk and does not care about the update channel. So if you're on Canary and want to change to the stable release, you need to change the channel and then install the app before installing the internals.
Yeah, it's interesting to see how this works going forward!

I found much the same thing.

Bit more info FWIW:

* Seems Channel simply determines App to install now, and this will be shown as Latest (for App).

Inserting address for raw public OLDER json file (magisk_files repo, master branch)
in custom channel of new app results in downloading the associated legacy zip AS AN APK, and an error parsing file (obviously) occurs, so older Manager must be manually downloaded (magisk repo) and used with older json system it seems.

With newer public json (22.0), this works as expected: the APK shows as 'Latest', is downloaded to download folder, and instead of parsing error, simple 'app not installed' message appears on my device if APK is older than current (installs fine after uninstalling current). If newer, this should install fine.

I tested this with Canary on several builds past 21402, and, while APK associated with json correctly shows as 'Latest', I always get 'error downloading file', even with latest json (22001) set, so seems canary json files exist only as a template and need proper file links entered to work at all.

* App will use version showing as 'Installed' (for App) to patch, even if channel (and 'Latest') is set to another. PW
 
Last edited:

DiamondJohn

Recognized Contributor
Aug 31, 2013
4,975
4,256
Sydney
I am trying to work out the logic of the order Magisk runs the post-fs-data.d boot scripts?

I have checked the log, and they do not run in alphabetical order (post-fs-data.d), nor do they run in last modified order. It appears like Magisk has some kind of record somewhere of the order they were first instanced?

Anyone know something about the above? or how I could change the order?
 

pndwal

Senior Member
Jun 23, 2016
2,085
1,266
Sydney
Xiaomi Redmi Note 7
This must be in the installation manual. E.g. with title "for advanced users".
Sadly not, but if you click the link for "P.S.2 If you are interested in how Android boots and how it affects Magisk, check out this document", in Installation Instruction, Getting Started, it will take you to
for developers, where you will find the information (right at the end). Actually, this and the other 4 documents "For Developers" give invaluable insight for anyone wanting knowledge of Magisk internal workings. (You don't need to be a mechanic to benefit from a workshop manual!)

Otherwise, it is assumed you need Magisk in Recovery as this will work for sure, but working Magisk in Boot is uncertain without factory ramdisk in Boot also. PW
 

pndwal

Senior Member
Jun 23, 2016
2,085
1,266
Sydney
Xiaomi Redmi Note 7
I am trying to work out the logic of the order Magisk runs the post-fs-data.d boot scripts?

I have checked the log, and they do not run in alphabetical order (post-fs-data.d), nor do they run in last modified order. It appears like Magisk has some kind of record somewhere of the order they were first instanced?

Anyone know something about the above? or how I could change the order?
There's information on that here:
Also here:

... but you may know this. PW
 
  • Like
Reactions: J.Michael

JohnE2

New member
Mar 6, 2021
3
0
I'm a newbi here, so I hope you will be gentle...

New also to custom roms, having only recently flashed Lineange 17.1 to my 1st Gen Pixel 5". Now I am trying to install Magisk as a route to then installing MicroG.

I have got stuck with completing the initilal Magisk setup however, as described here: https://topjohnwu.github.io/Magisk/install.html

The guidance suggests that I look for assistance in this forum; my device has boot ramdisk, and what I need is "a copy of the boot.img", although I don't know where to look for that. I'm a bit unsure about the patching process too, which I would rather do dirrectly in the app if possible without a custom recovery.

Not sure in particular about the steps that start with "Copy the patched image to your PC with ADB: "

Hoping that one of you kind gentle people can help me...

John
 

Top Liked Posts

  • 2
    I have a OnePlus 7t pro McLaren (T-Mobile HD1925). I am using newest magisk app 22.1 to patch my boot.img pulled using dd. I am having a hard time finding the usual checkbox for preserve dm-verity. Can someone tell me if this feature has been removed or is for some reason not available on my device.
    Should still show on supported legacy devices:
    John Wu, Aug 24, 2020

    Magisk Manager will no longer show confusing/useless installation options to the user in the following cases:

    • Keep forceencrypt on FBE: does not work
    • Keep verity on SAR: dangerous/does not work
    • Recovery mode on devices with ramdisk: not needed

    Disabling force encryption and dm-verity is only relevant in the time of past. In the spirit of backwards compatibility, these options are still there on supported legacy devices. Devices with ramdisk installing with recovery mode enabled will simply go straight to bootloops 😂

    In case removing the option to disable AVB 2.0 (for direct partition rw) on SAR is controversial: on legacy SAR, system is always rw-able, other partitions require patching DTB that could cause bootloops on some devices; for logical partitions it's ... well, "complicated".

    The tools for stripping AVB flags in various places (fstab in ramdisk, DT in boot, DTB/DTBO partitions) are still there in magiskboot, so for advanced users/devs, all power to you! I just no longer want to allow normal root users to break their devices with options in the app.
    www.twitter.com/topjohnwu/status/1297833910320021504

    Commit: https://github.com/topjohnwu/Magisk/commit/e437ffdbae065b5a08456412a8e036c191a3903e

    I really want to be able to just modify my device as much as i want without a "soft brick" into fastboot mode. There is no working TWRP for the device. Is it possible to make a magisk module that overlays an entire "systemless" system image that i can run and edit at free will without tripping some sort of verity that causes a Boot loop?
    Interestingly, John HAS overlayed a stock system with an entire custom ROM as Proof of Concept for a projected Universal MultiROM (Magisk powered custom ROM)!

    Unfortunately, this ambitious project ground to a halt due to lack of time. 🙁

    The details (and potential) are very interesting however:
    MultiROM - POC

    I spend some time playing with the possibility of Universal MultiROM by only using Magisk.
    Surprisingly, it is not that difficult at all! Here is a small POC video demonstrating my HTC 10 dual booting stock rom and CM 13.

    No other dependency is required (e.g. modified TWRP recovery, kext kernel patch etc.). You only need Magisk injected into the boot image, and along with proper settings, by swapping out the boot image, you can load any rom systemless-ly.
    What this means is that all Magisk supported device can enjoy MultiROM features! What a great news for flashaholics LOL.

    NOTE! The process showed in this video in far from what it will be eventually. I will make the process nice and smooth 🙂
    https://forum.xda-developers.com/t/magisk-the-magic-mask-for-android.3473445/post-69226527
    Multirom? Updates?
    I've spend my extremely limited free time to fix current Magisk issues, and so far (the latest commit on Github) it has improved a lot compared with the current v9 release.
    I haven't really spend much time in the multirom feature, however I found an interesting open source project: DualBootPatcher.
    It exists for quite a while, and it is very impressive just like the Multirom Tasssadar created. I haven't looked into how DualBootPatcher works, so I'm not sure if it is using similar tactics method that I switch between systems in a super simple way through Magisk.
    https://forum.xda-developers.com/t/magisk-the-magic-mask-for-android.3473445/post-70155585
    Magic Mount With No Limits
    I'm glad to announce that starting from this update, Magic Mount can do ANYTHING! Thanks to the new mirror implementation and some workarounds in the algorithm, it can now handle adding files to /system root (and /vendor root if separate partition). Also thanks to the new MagiskHide, all mounting combinations can pass SafetyNet!

    Magisk Powered Custom ROM: One Click to Custom ROM, Another Click You're Back to Stock
    I am a member of an HTC custom ROM developer team - Team Venom, and without too much effort, The world's first Magisk Powered Custom ROM http://venomroms.com/worlds-first-100-percent-magisk-rom/ was born!
    The advantage over traditional full packaged custom rom is that we ROM developers no longer need to port carrier features (Wi-Fi calling, VOLTE etc.) to our ROMs. Users can install Magisk on their stock devices, load the Custom ROM module, reboot and BOOM all done, along with 100% fully working carrier features. Also, it is just cool to load a custom ROM fully systemless, isn't it!
    https://forum.xda-developers.com/t/magisk-the-magic-mask-for-android.3473445/post-70363391
    And yes, that means I will postpone the long planned but never worked on Multi-ROM feature (I barely spent time on it after the POC video)
    https://forum.xda-developers.com/t/magisk-the-magic-mask-for-android.3473445/post-70897029

    just to clarify... Device is fully rooted with magisk. Issue is.. I cant hardly do anything with root! Everything that i used to do in older versions of Android , if you do those cool types of tricks and mods now you get a bootloop! Everything has to be done as a magisk module. How do i make my device less secure lol.
    Systemless Solutions

    Magic Mount is the way to do this systemlessly using Magisk. It's essentially what Magisk modules do to load:
    https://topjohnwu.github.io/Magisk/details.html#magic-mount

    Root Directory Overlay System:
    https://topjohnwu.github.io/Magisk/guides.html#root-directory-overlay-system

    Nb. Systemless options have advantages over solutions that alter system. Eg:

    1) Ease of recovering from systemless mod failure causing boot issues. There are several methods to prevent these 'system overlays' from being applied, hence allowing system to boot normally.

    2) Only Boot and/or Recovery partitions need restoring to take OTA updates (because actual system partition is unaltered). Also, as modules / Magisk settings are stored in /data partition, after flashing Magisk patched images again the mods / settings are restored.

    Shared Blocks and other Difficulties with System read write

    www.twitter.com/topjohnwu/status/1259039809361739776

    Universally Mount System read write

    Are you adventurous / maverick / a Power User? - If answer is 'no' to any of the above, I recommend you ignore the following, which may be fraught...

    ONLY if 'yes', here you go:

    Since most stock ROMs are locked to read only due to new Shared Blocks (incl. Super partition devices) implementation, it may be of interest to many 'Power Users' here that a mod has been developed that can 'Universally Mount System read write for Android 10+ ROM w/ SUPER or NO_SUPER'!

    It does this by dumping existing super OR system / product / vendor partitions, extracting embedded read-only partitions, then flashing images back to device as read-write partition(s).

    Description:
    A script for all Android power users that wish to make their read-only Android 10+ system read-write-able again to remove bloatware and make more thorough customizations to their device.
    https://forum.xda-developers.com/t/...unt-system-read-write-super-no_super.4247311/

    See also John Wu's initial comments on EXT4_FEATURE_RO_COMPAT_SHARED_BLOCKS, ext4 dedup filesystems:
    John Wu, Sep 6, 2019

    Just confirmed that the inability to remount system (the directory "/" in system-as-root) to rw is something new in Android Q, NOT an issue with the new system-as-root approach Magisk is using in the canary builds. Will have to investigate further to find out how to deal with it.

    John Wu, Sep 8, 2019

    I found out that Android 10's system images are formatted with EXT4_FEATURE_RO_COMPAT_SHARED_BLOCKS. It will deduplicate blocks in the filesystem to reduce the image size. On my Pixel XL, the partition is physically not large enough to successfully run 'e2fsck -E unshare_blocks'.

    As clearly stated in the name of the feature, that EXT4 shared blocks feature is RO (read-only). The inability to disable this feature due to lack of free space in the partition (at least on my Pixel XL) makes it literally impossible to ever mount the system partition as rw.

    I guess Google's justification to format partitions with this feature enabled is the introduction of overlayfs to "simulate" a writable partition

    RIP to any mods or root apps that modify system. On Android 10 it seems system is either formatted as RO or using logical partitions
    www.twitter.com/topjohnwu/status/1170404631865778177 😏 PW
    2
    Hello!
    How to revert back from canary version to the stable one? I just can't install stable version again: it says "app not installed" after I try to install the release version.
    Yup, most systems will refuse to load an app's apk package if a newer one is already installed.

    Since latest stable Magisk App is actually a version DOWNGRADE, you'll likely simply need to uninstall newer (Canary) App first.

    The Magisk-22.1(22100).apk package will be in your Download path (Magisk Settings), probably [storage]/Download Folder, from your first attempt. Tip: sorting by Modification time will bring it to the top of the list.

    Nb. Settings / modules will survive this, as they are stored in /data/adb, but do check MagiskHide remains toggled on in settings before and after doing Direct Install Magisk downgrade.

    Nb.2. Update Channel may be set to Beta by default in public release App.

    In short, just uninstalling Canary App before installing Stable App should work. 🤠 PW
    2
    Hello!
    How to revert back from canary version to the stable one? I just can't install stable version again: it says "app not installed" after I try to install the release version.
    Uninstall Canary Magisk app, and install Stable.
    Be aware, Safety Net will fail you in Stable with API error

    This way you will only downgrade from Canary Magisk app 22103 to Stable 22100.
    If you also want to downgrade Magisk, you will need to patch your stock boot/recovery img from the Stable Magisk app once you downgrade the Magisk app
    1
    Just to be clear (as mentioned already), seems while you have flashed Magisk 22103, you haven't updated Magisk App.
    Thanks for this info.
    I have uninstalled the old app and reflashed Magisk 22103 again and the safety net API has now passed.
    Screenshot_20210418-065052.jpg


    Screenshot_20210418-065044.jpg

    Thanks again for the help given...
    1
    I have a OnePlus 7t pro McLaren (T-Mobile HD1925). I am using newest magisk app 22.1 to patch my boot.img pulled using dd. I am having a hard time finding the usual checkbox for preserve dm-verity. Can someone tell me if this feature has been removed or is for some reason not available on my device. I really want to be able to just modify my device as much as i want without a "soft brick" into fastboot mode. There is no working TWRP for the device. Is it possible to make a magisk module that overlays an entire "systemless" system image that i can run and edit at free will without tripping some sort of verity that causes a Boot loop?


    just to clarify... Device is fully rooted with magisk. Issue is.. I cant hardly do anything with root! Everything that i used to do in older versions of Android , if you do those cool types of tricks and mods now you get a bootloop! Everything has to be done as a magisk module. How do i make my device less secure lol.
    Maybe it's time to bite the bullet and learn about Magisk modules and make your own - it's not that difficult. See https://topjohnwu.github.io/Magisk/guides.html
  • 12

    Latest Public (Stable / Beta)

    Release Notes and Changelog:


    2021.4.9 Magisk v22.1​

    This release is focused on fixing regressions and bugs. Check the v22.0 release notes if coming from older releases.

    Note: Magisk v22 is the last major version to support Jellybean and Kitkat. Magisk v23 will only support Android 5.0 and higher.

    Bug Fixes​

    • [App] Prevent multiple installation sessions running in parallel
    • [App] Prevent OutOfMemory crashes when checking boot signature on PXA boot images
    • [General] Proper cgroup migration implementation
    • [General] Rewrite log writer from scratch, should resolve any crashes and deadlocks
    • [General] Many scripts updates fixing regressions
    • [MagiskHide] Prevent possible deadlock when signal arrives
    • [MagiskHide] Partial match process names if necessary
    • [MagiskBoot] Preserve and patch AVB 2.0 structures/headers in boot images
    • [MagiskBoot] Properly strip out data encryption flags
    • [MagiskBoot] Prevent possible integer overflow
    • [MagiskInit] Fix sepolicy.rule mounting strategy
    • [resetprop] Always delete existing ro. props before updating. This will fix bootloops that could be caused by modifying device fingerprint properties.
    🎉 👍 PW
    10
    Latest Debug (Canary)
    Changelog and Release Notes
    https://github.com/topjohnwu/magisk-files/blob/ea57c9b33b3a6ce2e0e65ce4c33dfb1c01552fcb/notes.md :

    Magisk (f49966d8) (22103)​

    • [App] Update snet extension. This fixes SafetyNet API errors.
    • [App] Fix a bug in the stub app that causes APK installation to fail
    • [General] Fix a C++ bug that causes undefined behavior
    • [MagiskHide] Update package and process name validation logic

    Diffs to v22.1​

    • [General] Remove all pre Android 5.0 support
    • [MagiskPolicy] Remove unnecessary sepolicy rules
    • [App] Update snet extension. This fixes SafetyNet API errors.
    • [App] Fix a bug in the stub app that causes APK installation to fail
    • [General] Fix a C++ bug that causes undefined behavior
    • [MagiskHide] Update package and process name validation logic
    👍 ...And things are all Rosy 'n Safe in the Custom Mod. world once again... but ironically, only on the bleeding edge... (Confirmed on my RN8T. 🙂 )

    News for those not wanting to get cut (Public Stable / Beta users) below. 😜

    Thanks John... And other collaborators for additional fixes! PW
    8
    @osm0sis
    Thank you for having an eye on that.
    Did the "ls" twice, first from a TWRP-terminal in recovery, second from a terminal while phone is "up and running".
    Looks like you have /dev/bootimg as your real partition location and it is still higher in the list in util_functions.sh like how I fixed it in the linked commit, so this is definitely a regression from some other recent change to Magisk.. sigh, I'll look into it. 🤔😕
    8
    Update snet.jar extension
    The existing API key was revoked for some reason.
    Release an updated extension jar with a new API key.

    In addition, add some offline signature verification and change how
    results are parsed to workaround some dumbass Xposed module "faking"
    success results, since many users really don't know better.

    @topjohnwu

    topjohnwu committed 19 minutes ago
    6

    Latest Canary Changelog, including Release Notes:​


    Magisk (9c0e1897) (22007)​

    • [General] Fix logic to copy sepolicy.rule during module installation
    • [resetprop] Always delete existing ro. props before updating. This will fix bootloops that could be caused by modifying device fingerprint properties.

    Diffs to v22.0​

    • [App] Prevent multiple installation sessions running in parallel
    • [App] Prevent OutOfMemory crashes when checking boot signature on PXA boot images
    • [General] Proper cgroup migration implementation
    • [General] Rewrite log writer from scratch, should resolve any crashes and deadlock
    • [General] Many scripts updates fixing regressions
    • [MagiskHide] Prevent possible deadlock when signal arrives
    • [MagiskHide] Partial match process names if necessary
    • [MagiskBoot] Preserve and patch AVB 2.0 structures/headers in boot images
    • [MagiskBoot] Properly strip out data encryption flags
    • [MagiskBoot] Prevent possible integer overflow
    • [MagiskInit] Fix sepolicy.rule mounting strategy
    • [resetprop] Always delete existing ro. props before updating. This will fix bootloops that could be caused by modifying device fingerprint properties.
    👍 PW
  • 1046
    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
    155
    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!!
    119
    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.
    74
    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
Our Apps
Get our official app!
The best way to access XDA on your phone
Nav Gestures
Add swipe gestures to any Android
One Handed Mode
Eases uses one hand with your phone