• Introducing XDA Computing: Discussion zones for Hardware, Software, and more!    Check it out!

Magisk General Support / Discussion

Search This thread

J.Michael

Recognized Contributor
Jan 20, 2018
971
891
Samsung Galaxy Tab A series
“E:[libfs_mgr]Error updating for slotselect”

Maybe this recovery mode warning is the cause. Any ideas?
Does the Magisk Manager say yours is an A/B device?
I have never seen a reference to selecting a slot with Odin.

Have you checked the forums for the A51 5G?
Or, do you know enough about both devices to know that A51 is nothing like A52?
 

AndrzejDwo

Senior Member
May 26, 2018
1,063
747
Samsung Galaxy S8
Samsung Galaxy S10+
Been looking around but have only found Rooting guides for Android 12 on Pixel Threads.

Is there a Specific guide to root Samsung's Android 12? (Specifically the S21 Ultra)
Or are they roughly the same.
The only difference while rooting S21Ultra running Android 12 is that you need to use Magisk Canary instead of Stable version. All the rest is the same, you can even use A11 vbmeta. Take a look in s21ultra twrp/root guide and join tg group for latest twrp.

Cheers
 
  • Like
Reactions: pndwal

Fishballs

Member
Apr 27, 2017
13
4
Samsung Galaxy S21 Ultra
The only difference while rooting S21Ultra running Android 12 is that you need to use Magisk Canary instead of Stable version. All the rest is the same, you can even use A11 vbmeta. Take a look in s21ultra twrp/root guide and join tg group for latest twrp.

Cheers
Wait-
So no more Patching of AP for A12?

I didn't use TWRP to root for A11, and all this vbmeta thing confuses me.
 

AndrzejDwo

Senior Member
May 26, 2018
1,063
747
Samsung Galaxy S8
Samsung Galaxy S10+
Wait-
So no more Patching of AP for A12?

I didn't use TWRP to root for A11, and all this vbmeta thing confuses me.
I think you can still use patched AP method (but with canary release), vbmeta gets patched during this process as well, it's nothing to get confused about. I never used patched AP method tho, rooting with custom recovery is much easier/faster imo. And I feel more confident with TWRP instead of stock recovery.
Here you have the guide:
Thread '[RECOVERY][UNOFFICIAL] TWRP for Galaxy S21 Ultra (Exynos)' https://forum.xda-developers.com/t/recovery-unofficial-twrp-for-galaxy-s21-ultra-exynos.4240993/

Cheers
 

pndwal

Senior Member
i just uninstalled magisk from the app, and my phone is just restarting and not turnin on!
Seems you have more or less fixed this in your HELP thread, but still have issues... Of course you need to provide at least some information to get help here; you basically told us "it didn't work 😫 "

From other thread I see you have Samsung phone.

FWIW, seems you missed some of the official Installation Instruction notes for Sammy:

Important Notes​

  • Never, ever try to restore either boot or recovery partitions back to stock! You can brick your device by doing so, and the only way to recover from this is to do a full Odin restore with data wipe.
  • To upgrade your device with a new firmware, NEVER directly use the stock AP tar file with reasons mentioned above. Always patch AP in the Magisk app and use that instead.
  • Never just flash only AP, or else Odin may shrink your /data filesystem size. Flash AP + BL + CP + HOME_CSC when upgrading.
The first point is your problem; either uninstall method in Magisk App restores boot image (either stock boot or recovery partition), and this doesn't work for newer Samsung devices. Seems you now need to follow the advice on recovering properly...

Please read official Installation Instruction page, especially Samsung section as Sammy procedures are quite different from standard & fraught. Hope it helps. PW
 
Last edited:
  • Like
Reactions: J.Michael

sahil_bhandari

Senior Member
Aug 14, 2021
86
6
18
Bombay
www.youtube.com
Erro when bild magisk

I defined the vars env and is using the lastest Android Sdk, but always getting erros
My system: Ubuntu 20.04.3 LTS in a Virtual box machine
my env:
ANDROID_SDK_ROOT=/root/Android/Sdk
PATH=/media/android-studio/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

He is the log:

./build.py ndk && ./build.py all

  • Downloading android-ndk-r21e-linux-x86_64.zip
  • Extracting NDK zip
  • Patching static libs
  • Building the stub app
Note: Some input files use or override a deprecated API.
Note: Recompile with -Xlint:deprecation for details.
Note: /media/Magisk/stub/src/main/java/com/topjohnwu/magisk/DelegateComponentFactory.java uses unchecked or unsafe operations.
Note: Recompile with -Xlint:unchecked for details.
No issues found.

Output: out/stub-release.apk

  • Building binaries: magisk magiskinit magiskboot busybox
make: Warning: File 'obj/local/armeabi-v7a' has modification time 1,4 s in the future
make: *** Deleting file 'libs/armeabi-v7a/magisk'
/root/Android/Sdk/ndk/magisk/toolchains/llvm/prebuilt/linux-x86_64/bin/arm-linux-androideabi-strip:./libs/armeabi-v7a/magisk: File format not recognized
make: *** [/root/Android/Sdk/ndk/magisk/build/core/build-binary.mk:774: libs/armeabi-v7a/magisk] Error 1
make: *** Waiting for unfinished jobs....

Build binary failed!
did you managed to solve that issue please help me too
 

pndwal

Senior Member
Bit further FWIW:
Pixel testers wanted.
Confirmed by @RikkaW it can somehow be fixed by correcting vbmeta's flags. She's having Pixel 5 Android 12 rooted permanently by Magisk without cleaning userdata. We need more people to help test now...
See here:
https://github.com/topjohnwu/Magisk/issues/4343#issuecomment-981104538
and here:
https://github.com/topjohnwu/Magisk/issues/4941#issuecomment-981104664
Also, re MIUI:
https://github.com/topjohnwu/Magisk/issues/4447

Nb. PR referenced is WIP / draft ATM. PW
 
  • Like
Reactions: ipdev

Fishballs

Member
Apr 27, 2017
13
4
Samsung Galaxy S21 Ultra
I think you can still use patched AP method (but with canary release), vbmeta gets patched during this process as well, it's nothing to get confused about. I never used patched AP method tho, rooting with custom recovery is much easier/faster imo. And I feel more confident with TWRP instead of stock recovery.
Here you have the guide:
Thread '[RECOVERY][UNOFFICIAL] TWRP for Galaxy S21 Ultra (Exynos)' https://forum.xda-developers.com/t/recovery-unofficial-twrp-for-galaxy-s21-ultra-exynos.4240993/

Cheers
Thanks for the help, really appreciated.
It works, got BUKG rooted (≧▽≦)
 
  • Like
Reactions: AndrzejDwo

moocow1452

Senior Member
Nov 16, 2011
342
108
Livonia
On the latest Canary, my Oculus Go spit out a console-ramoops that was a little garbled after the Magisk installation where a previous one was much more legible. Is there a reason for that or a method to get cleaner data?
 

ipdev

Recognized Contributor
Feb 14, 2016
1,667
1
2,352
Google Nexus 10
Nexus 7 (2013)
I got little sleep last night and about to go to bed tonight.

Had a bit of a hard time following the Magisk issues linked.
I will go though them again tomorrow after more than three hours sleep.

So a one-off Magisk build including PR 4975 to test on Pixels to find out if it:
  • Allows Pixel 4a (5G) [bramble] and newer to use Magisk without disabling verity and verification on Android 12.
    No need to wipe data initially.​
  • Non-Pixel devices that share the same issue.
  • Make sure it does not break Magisk on Pixel 4a [sunfish] and older.
    Along with other devices that do not have the issue and may still be on Android 11 or below.​

Sound about correct. 🙃

Cheers. :cowboy:
 

pndwal

Senior Member
I got little sleep last night and about to go to bed tonight.

Had a bit of a hard time following the Magisk issues linked.
I will go though them again tomorrow after more than three hours sleep.

So a one-off Magisk build including PR 4975 to test on Pixels to find out if it:
  • Allows Pixel 4a (5G) [bramble] and newer to use Magisk without disabling verity and verification on Android 12.
    No need to wipe data initially.​
  • Non-Pixel devices that share the same issue.
  • Make sure it does not break Magisk on Pixel 4a [sunfish] and older.
    Along with other devices that do not have the issue and may still be on Android 11 or below.​

Sound about correct. 🙃

Cheers. :cowboy:
Good on ya doc! I was hoping some maverick Pixel user would lose some sleep to help fix this one!

Sounds like on right track, but I only took cursory glances at Pixel issues recently as I'm a Xiaomi user currently... not sure of anything, but I'm sure you're the right guy to help...

I noted that MIUI w/ related issue are all late MTK devices. 👏👍 PW
 

Top Liked Posts

  • 11
    Show will begin, I tried to put some short help for probably the posts/questions soon to expect

    ===

    Please carefully read Changelog

    Study the Magisk documentation available from the official Magisk Github page - particularly about installing Magisk (if you are not familiar with patching the image in Magisk app and flashing the patched img from Fastboot- i.e, not the old school about Magisk zip through TWRP)

    Everything bellow has already been discussed in this thread since Canary 2301x started to roll out - hence more details can be found in the older posts in this thread

    a) No more MagiskHide. New technology instead (for the same - to help hiding root): Zygisk+DenyList

    b) No more built in SafetyNet checker. Install from PlayStore e g: YASNAC

    c) Modules window does no more connect to the (now frozen) old Modules repository.
    You must download module zip files manually and "Install from local storage".
    Or search for and install Fox Magisk Module Manager (Fox Mmm) app - it will connect to the new, alternative repository

    ---

    1) Make sure that both Magisk app and Magisk are installed and updated to the new version. Inspect version numbers on the main Magisk window/page

    2) Make sure to uninstall all Riru modules (not compatible with Zygisk)

    3) Settings, Enable Zygisk and reboot.
    Then check on the main window does it show Zygisk Yes

    4) Settings, enable Enforce DenyList.
    Configure DenyList, enable filters to Show OS and System apps
    Find Google Play Services and check-in only the two processes ending with gms and gms.unstable.
    You will have to check in all your banking apps and so as you used with MagiskHide.
    Always reboot upon reconfiguring DenyList

    5) If SafetyNet does not pass, install USNF 2.2.1 and test again.
    Always reboot upon installing a module, also if/when you enable Systemless Hosts

    ---

    Intentionally, I didn't want to complicate with Shamiko for the new Magisk 24 users 👍

    PS: See the new thread:
    6
    Guess I can advertise @ipdev's new WIP

    [Discussion] Magisk - The Age of Zygisk​

    thread now that public 24.0 release is out:

    First 5 posts have a good summation of new Magisk changes / direction / tips. 👍 PW
    5

    v24.0​

    • [General] MagiskHide is removed from Magisk
    • [General] Support 64-bit only systems
    • [General] Support Android 12
    • [General] Update BusyBox to 1.34.1
    • [Zygisk] Introduce new feature: Zygisk
    • [Zygisk] Introduce DenyList feature to revert Magisk features in user selected processes
    • [MagiskBoot] Support patching 32-bit kernel zImages
    • [MagiskBoot] Support boot image header v4
    • [MagiskBoot] Support patching out skip_initramfs from dtb bootargs
    • [MagiskBoot] Add new env variable PATCHVBMETAFLAG to configure whether vbmeta flags should be patched
    • [MagiskInit] Support loading fstab from /system/etc (required for Pixel 6)
    • [MagiskInit] Support /proc/bootconfig for loading boot configurations
    • [MagiskInit] Better support for some Meizu devices
    • [MagiskInit] Better support for some OnePlus/Oppo/Realme devices
    • [MagiskInit] Support init.real on some Sony devices
    • [MagiskInit] Skip loading Magisk when detecting DSU
    • [MagiskPolicy] Load *_compat_cil_file from system_ext
    • [MagiskSU] Use isolated devpts if the kernel supports it
    • [MagiskSU] Fix root shell if isolated mount namespace is set
    • [resetprop] Deleted properties are now wiped from memory instead of just unlinking
    • [App] Build a single APK for all ABIs
    • [App] Switch to use standard bottom navigation bar
    • [App] Downloading modules from the centralized Magisk-Modules-Repo is removed
    • [App] Support user configuration of boot image vbmeta patching
    • [App] Restore the ability to install Magisk on the other slot on some A/B devices
    • [App] Allow modules to specify an update URL for in-app update + install
    https://topjohnwu.github.io/Magisk/changes.html#v240

    👀 PW
    It's out now: https://github.com/topjohnwu/Magisk/releases/tag/v24.0
    3
    Latest Unofficial vvb2060 Alpha Magisk
    (Chinese Translated):

    # alpha changelog

    ## Magisk (54ee63a4-alpha)
    - [App] Support SharedUserId
    - [App] Delete backup file after restoring boot image
    - [App] Built-in current version update log
    - [General] no longer automatically unlock device blocks
    - [General] Use MagiskHide to hide when Zygisk is closed
    - [App] Compatible with Android 12L
    - [MagiskInit] Refactor the processing method of two-step startup
    - [General] Update to NDK 23
    - [App] Added crash statistics

    ### how to install?
    Install and uninstall Magisk through the Magisk application. Generally, it should be done directly in the application. In special cases such as the first installation, you should use the fastboot/odin tool to flash it after patching the image.
    By customizing Recovery is not a supported way.

    # Upstream changelog

    It has been a while since the last public release, long time no see! A personal update for those unaware: I am now working at Google on the Android Platform Security team. Without further ado, let's jump right into it!

    ### MagiskHide Removal

    I have lost interest in fighting this battle for quite a while; plus, the existing MagiskHide implementation is flawed in so many ways. Decoupling Magisk from root hiding is, in my opinion, beneficial to the community. Ever since my announcement on Twitter months ago , highly effective "root hiding" modules (much **MUCH** better than MagiskHide) has been flourishing, which again shows that people are way more capable than I am on this subject. So why not give those determined their time to shine, and let me focus on improving Magisk instead of drowning in the everlasting cat-and-mouse game 😉.

    ### Sunset Magisk-Modules-Repo

    Due to lack of time and maintenance, the centralized Magisk-Modules-Repo was frozen, and the functionality to download modules from the repo is removed in v24.0. As a supplement, module developers can now specify an `updateJson` URL in their modules. The Magisk app will use that to check, download, and install module updates.

    ### Introducing Zygisk

    Zygisk is **Magisk in Zygote**, the next big thing for Magisk! When this feature is enabled, a part of Magisk will run in the `Zygote` daemon process, allowing module developers to run code directly in every Android apps' processes . If you've heard of [Riru](https://github.com/RikkaApps/Riru), then Zygisk is inspired by that project and is functionally similar, though the implementation is quite different internally. I cannot wait to see what module developers can achieve using Zygisk!

    ### Documentation

    For developers, details about `updateJson` and building Zygisk modules can all be found in the updated [documentation](https://topjohnwu.github.io/Magisk/guides.html#magisk-modules).

    ### v24.0 Full Changelog

    - [General] MagiskHide is removed from Magisk
    - [General] Support 64-bit only systems
    - [General] Support Android 12
    - [General] Update BusyBox to 1.34.1
    - [Zygisk] Introduce new feature: Zygisk
    - [Zygisk] Introduce DenyList feature to revert Magisk features in user selected processes
    - [MagiskBoot] Support patching 32-bit kernel zImages
    - [MagiskBoot] Support boot image header v4
    - [MagiskBoot] Support patching out `skip_initramfs` from dtb bootargs
    - [MagiskBoot] Add new env variable `PATCHVBMETAFLAG` to configure whether vbmeta flags should be patched
    - [MagiskInit] Support loading fstab from `/system/etc` (required for Pixel 6)
    - [MagiskInit] Support `/proc/bootconfig` for loading boot configurations
    - [MagiskInit] Better support for some Meizu devices
    - [MagiskInit] Better support for some OnePlus/Oppo/Realme devices
    - [MagiskInit] Support `init.real` on some Sony devices
    - [MagiskInit] Skip loading Magisk when detecting DSU
    - [MagiskPolicy] Load `*_compat_cil_file` from system_ext
    - [MagiskSU] Use isolated devpts if the kernel supports it
    - [MagiskSU] Fix root shell if isolated mount namespace is set
    - [resetprop] Deleted properties are now wiped from memory instead of just unlinking
    - [App] Build a single APK for all ABIs
    - [App] Switch to use standard bottom navigation bar
    - [App] Downloading modules from the centralized Magisk-Modules-Repo is removed
    - [App] Support user configuration of boot image vbmeta patching
    - [App] Restore the ability to install Magisk on the other slot on some A/B devices
    - [App] Allow modules to specify an update URL for in-app update + install

    👍 PW
    1
    Hi all,
    I'm on TJW's canary 23019.
    Does anyone know/could explain what is/are the difference(s) with enforce denylist activated and not activated ?
    As per Changelog and endless discussion in the thread, DenyList essentially replaces the old MagiskHide. However you have to open Configure DenyList and configure for Google Play Services yourself

    1. Enable Zygisk and reboot
    2. DenyList and reboot
  • 11
    Show will begin, I tried to put some short help for probably the posts/questions soon to expect

    ===

    Please carefully read Changelog

    Study the Magisk documentation available from the official Magisk Github page - particularly about installing Magisk (if you are not familiar with patching the image in Magisk app and flashing the patched img from Fastboot- i.e, not the old school about Magisk zip through TWRP)

    Everything bellow has already been discussed in this thread since Canary 2301x started to roll out - hence more details can be found in the older posts in this thread

    a) No more MagiskHide. New technology instead (for the same - to help hiding root): Zygisk+DenyList

    b) No more built in SafetyNet checker. Install from PlayStore e g: YASNAC

    c) Modules window does no more connect to the (now frozen) old Modules repository.
    You must download module zip files manually and "Install from local storage".
    Or search for and install Fox Magisk Module Manager (Fox Mmm) app - it will connect to the new, alternative repository

    ---

    1) Make sure that both Magisk app and Magisk are installed and updated to the new version. Inspect version numbers on the main Magisk window/page

    2) Make sure to uninstall all Riru modules (not compatible with Zygisk)

    3) Settings, Enable Zygisk and reboot.
    Then check on the main window does it show Zygisk Yes

    4) Settings, enable Enforce DenyList.
    Configure DenyList, enable filters to Show OS and System apps
    Find Google Play Services and check-in only the two processes ending with gms and gms.unstable.
    You will have to check in all your banking apps and so as you used with MagiskHide.
    Always reboot upon reconfiguring DenyList

    5) If SafetyNet does not pass, install USNF 2.2.1 and test again.
    Always reboot upon installing a module, also if/when you enable Systemless Hosts

    ---

    Intentionally, I didn't want to complicate with Shamiko for the new Magisk 24 users 👍

    PS: See the new thread:
    11
    Can you confirm that all apps checked in the deny list are hidden to the system, pleeeaaase ???
    Few things to note: You really need to read release notes before using any Magisk build, official or otherwise. 🙃

    The build @Johnson_Ran posted is his own build of latest unofficial Alpha Magisk + LoveSys fix for OnePlus 7 / 7 Pro (and possibly other devices) w/ ramdisk detection issue; I posted re. a test build based on canary, now he posted his personal Alpha Magisk with fix for OnePlus... Nb. The fix has NOT been merged in Magisk master, Canary or even latest vvb2060 Alpha yet.

    Well this concept of deny list is confusing so I tried to treat it as a MagiskHide list and all apps I checked are not working as they did with v23... ^^
    Do you mean Are root-related execution environment changes hidden from the app? If so, that depends...

    MagiskHide is dead and gone in TJW builds going forward; denylist is quite different - it 'reverts Magisk features in use for selected processes', ie w/ denylist "Magisk denies further modifications and reverts all changes it had done. Magisk will not spoof/alter/manipulate any non-Magisk related signals or traces to circumvent any device state detection." So denylist is actually made more powerful for hiding TEE mods because of Zygisk, but won't perform the spoofing / alterations / manipulations of non-Magisk related signals or traces formerly done by MagiskHide.

    Even more powerful hiding methods are now available however, thanks to John's strengthened Magisk framework; he just won't do it himself:
    www.twitter.com/topjohnwu/status/1445598597521633285

    Universal SafetyNet Fix and Shamiko are examples where Zygisk is used for advanced hiding by 3rd party modules. Nb. Denylist is not even needed if Devs choose to "do everything themselves"!
    www.twitter.com/topjohnwu/status/1445598601372069890

    As I indicated, the biggest favour users can do themselves is read release notes before using any Magisk build, official or otherwise. For TJW Canary start with this one:
    https://github.com/topjohnwu/magisk-files/blob/9537c5d8cedfc09ca723ae0392b1219e75d9b636/notes.md
    ... read the blog John links there (for good reason) also... and scroll down and read the 2020 one also for more understanding of the general Magisk roadmap / direction...

    ONLY after understanding these major changes, if you want to try HIGHLY EXPERIMENTAL bleeding edge vvb2060 Alpha builds, read IT'S Changelog (translate Chinese)... Latest here:
    https://forum.xda-developers.com/t/magisk-general-support-discussion.3432382/post-86215689

    Coming back to your statement
    I tried to treat it as a MagiskHide list and all apps I checked are not working as they did with v23... ^^
    Note a major difference between TJW denylist and Alpha denylist:
    • [General] Use MagiskHide to hide when Zygisk is closed
    So denylist in Alpha works like MagiskHide / hidelist only after Zygisk is closed; Nb. you NEED TO REBOOT to disable Zygisk.

    After this Riru modules will also work (it's a choice; Riru or Zygisk, not both), and if you needed 2.x series Universal SafetyNet Fix for your device, you'll need to swap to a USNF-Riru build if you had USNF-Zygisk. Note: There is no option to do this in TJW Canary as current USNF-Riru builds require MagiskHide to function.*

    Nb.1. In TJW builds denylist WON'T be used as hidelist or with MagiskHide. Alpha restores MagiskHide... This is peculiar to custom Magisk forks...

    Nb. 2. There are differences with MagiskHide in Alpha. Importantly, toggling MagiskHide off then on again does NOT add Google Play Services safetynet process to denylist (whether in denylist or hybrid alpha hidelist mode). You need to do this manually to pass SafetyNet as follows:

    Add Google Play Services process(es) to denylist unless a solution for hiding root associated modifications from GPS SafetyNet process(es) is incorporated in an active module. For devices where Magisk resides in /sbin (many pre. Android 11), only deny SafetyNet process, com.google.android.gms.unstable. For Android 11+ etc (non /sbin), deny Main process, com.google.android.gms also.

    Happy reading / playing, and hope this helps! 😀 PW

    Edit:

    *FWIW, this makes Alpha attractive for anyone wanting to use Riru and pass SafetyNet on late devices (w/ TEE Attestation in hardware affected by September Google server end changes) with post 23001 Magisk builds... This may only be useful in the interim until general Zygisk module conversion / take-up and Riru is dropped...

    However if (and only if) Riru does get continued support / remains popular / doesn't die post Magisk 24000 (ie. Zygisk in Stable Magisk), and @kdrag0n reconsiders this:
    https://github.com/kdrag0n/safetynet-fix/issues/120#issuecomment-971831719
    we may see working USNF-Riru for official TJW post Zygisk Magisk...

    I suspect though that predictions of Riru's imminent demise will be realised, so don't hold your breath.

    Thanks for all the fun RikkaW and team; You did it (allowed modules to run code in apps w/ zygote injection / Xhook) first! 👏 PW
    9
    ...snip...
    Just meant nandroid restore should be usable to roll back since you seemed concerned you'd 'lose ability to use nandroid backup' & would need to restore beloved A10 setup / mods piece by piece!...
    ...snip...
    A LOT of config is stored in the settings. For example:
    PHP:
    settings put global "window_animation_scale" "0.5";
    Because I use to build ROMs from source and therefore clean flash my devices a lot, I built a method to extract and reinstate all my config, to be used selectively and in combination with normal back-up apps, to reinstate my device as close to its previous state without manually hunting and seeking all the settings, after a clean flash.

    I automated this task as a method within the app TeMeFI and can be found under Current State>Settings>Generate Set All
    8

    v24.0​

    • [General] MagiskHide is removed from Magisk
    • [General] Support 64-bit only systems
    • [General] Support Android 12
    • [General] Update BusyBox to 1.34.1
    • [Zygisk] Introduce new feature: Zygisk
    • [Zygisk] Introduce DenyList feature to revert Magisk features in user selected processes
    • [MagiskBoot] Support patching 32-bit kernel zImages
    • [MagiskBoot] Support boot image header v4
    • [MagiskBoot] Support patching out skip_initramfs from dtb bootargs
    • [MagiskBoot] Add new env variable PATCHVBMETAFLAG to configure whether vbmeta flags should be patched
    • [MagiskInit] Support loading fstab from /system/etc (required for Pixel 6)
    • [MagiskInit] Support /proc/bootconfig for loading boot configurations
    • [MagiskInit] Better support for some Meizu devices
    • [MagiskInit] Better support for some OnePlus/Oppo/Realme devices
    • [MagiskInit] Support init.real on some Sony devices
    • [MagiskInit] Skip loading Magisk when detecting DSU
    • [MagiskPolicy] Load *_compat_cil_file from system_ext
    • [MagiskSU] Use isolated devpts if the kernel supports it
    • [MagiskSU] Fix root shell if isolated mount namespace is set
    • [resetprop] Deleted properties are now wiped from memory instead of just unlinking
    • [App] Build a single APK for all ABIs
    • [App] Switch to use standard bottom navigation bar
    • [App] Downloading modules from the centralized Magisk-Modules-Repo is removed
    • [App] Support user configuration of boot image vbmeta patching
    • [App] Restore the ability to install Magisk on the other slot on some A/B devices
    • [App] Allow modules to specify an update URL for in-app update + install
    https://topjohnwu.github.io/Magisk/changes.html#v240

    👀 PW
    8
    Guys (especially @zgfg and @pndwal), big thumb up 👍🏻 for your patience in explaining everything gazillion times over and over 😂
  • 1072
    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