After months since the last stable release, developer John Wu has now announced the Magisk v21.0 update. This new and latest version of Magisk brings full Android 11 support, safe mode detection for fixing boot loops caused by modules, new SELinux policy for devices running Android 8.0+, a completely redesigned UI of the Magisk Manager app, and a lot more. You can now download Magisk v21.0 with Magisk Manager v8.0.2 and install it on your Android device. Users running a previous version of Magisk can easily update to the latest Magisk v21.0 by following the instructions provided on this page.
Update #3: Just a day after the previous release, John Wu has now released Magisk Manager v8.0.2. This fixes permission requesting on devices running Android 10 and below. It also moves more files to the new CDN for faster and more reliable downloads.
Update #2: Magisk Manager v8.0.1 has been released. This new version fixes
vbmeta.img patching for Samsung
AP.tar files. This fixes boot loops on Samsung Galaxy devices after flashing updated AP firmware files.
Update #1: According to developer John Wu, recent reports indicate that Magisk 21.0 does not work on MediaTek Android devices.
Table of Contents
What’s new in Magisk v21.0?
To recap, the previous release (Magisk 20.4) disabled Magisk Hide by default in light of the new hardware-backed SafetyNet attestation, BusyBox standalone mode, and introduced several other minor changes. Before you head over to the download links or instructions, let us take a look at some of the key changes that Magisk v21.0 brings.
1. Android 11 Support
Let’s begin with the first major change. As you’d know, after months of testing, Google finally announced the stable Android 11 update. Several device manufacturers are already begun publishing Android 11 beta builds for their devices, like the OnePlus 8 series. This certainly means that a lot of users are running Android 11 on their phones. For rooting enthusiasts, Magisk has already supported Android 11 on the Canary channel. With v21.0, Magisk now fully supports Android 11 on the stable channel. The developer has worked pretty hard to re-write a lot of Magisk code from the scratch.
Further, Magisk generally mounts and use the
/tmpfs directory to store temporary data. According to the developer, the
/sbin sub-directory may no longer be available in Android 11. So, on devices running Android 11, Magisk will automatically create a random folder inside
/dev and use it as PATH. Developers could find everything about this change in the official documentation here.
2. Redesigned Magisk Manager UI
Earlier in January, developer John Wu showcased a preview of a completely new design of the Magisk Manager application, courtesy of Viktor De Pasquale (@diareuse). For months, users running Magisk Canary have had the privilege to enjoy this new UI. With Magisk Manager v8.0.2, the newly redesigned UI is now available for users on the stable channel as well.
Starting with the design itself, the old hamburger-based slide-out menu has been completely removed. It has been replaced with a minimal navigation bar towards the bottom end of the app. Items throughout the app’s interface are now showed in form of cards.
Individual sections of the app have been rearranged for quicker access. For example, Magisk Hide (when enabled) is now shown under the ‘Superuser’ section instead of having its own dedicated section. Also in the old UI, downloading and managing modules were done from their own individual sections. With the new UI in Magisk Manager v8.0.2, you now have a unified ‘Modules’ section that allows you to manage (install, uninstall, and disable) and download Magisk modules from the same screen.
The new Magisk Manager also incorporates eight different color accent schemes and the ability to force light or dark theme modes.
Personally, we are not a huge fan of the card-based design in general, but Magisk Manager adapts it so well that we have no other choice but to adore it. Overall, this new user interface takes quite a huge leap over the previous one, in terms of both the design as well as usability.
3. Safe Mode Detection
One common issue that a lot of users face is boot loops caused by modules due to incompatibility. Up until now, users could either use TWRP or ADB to remove the rogue Magisk module(s) to fix the problem.
Developer John Wu was surely well aware of the issue and has brought us a simple solution. From Magisk 21.0 onwards, you could simply boot your Android device into Safe Mode. Magisk will detect Safe Mode and automatically disable all the Magisk modules. After this, you could just reboot into the normal OS mode and the boot loop will be fixed.
4. New SELinux Policy Setup on Android 8.0+
For devices running Android 8.0 and above, the SELinux security has been hardened with a completely new policy setup. This new policy now keeps the Android Sandbox less compromised, separates the Magisk policy rules from original rules, thus providing better security on devices rooted with Magisk.
So these were the major changes in Magisk 20.1 update. For end-users, not a lot has changed except for the first two, i.e. Android 11 support and redesigned Magisk Manager. For developers, there are some key changes made on how Magisk works. You would like to refer to the new changes in the official documentation here.
Magisk v21.0 Changelog
Below is the complete changelog for Magisk v21.0 as published by the developer on Github.
- [General] Support Android 11
- [General] Add Safe Mode detection. Disable all modules when the device is booting into Safe Mode.
- [General] Increase
post-fs-datamode timeout from 10 seconds to 40 seconds
- [MagiskInit] Rewritten 2SI support from scratch
- [MagiskInit] Support when no
/sbinfolder exists (Android 11)
- [MagiskInit] Dump fstab from device-tree to rootfs and force
initto use it for 2SI devices
- [MagiskInit] Strip out AVB for 2SI as it may cause boot loop
- [Modules] Rewritten module mounting logic from scratch
- [MagiskSU] For Android 8.0+, a completely new policy setup is used. This reduces compromises in Android’s sandbox, providing more policy isolation and better security for root users.
- [MagiskSU] Isolated mount namespace will now first inherit from the parent process, then isolate itself from the world
- [MagiskSU] Update communication protocol with Magisk Manager to work with the hardened SELinux setup
- [MagiskPolicy] Optimize match all rules. This will significantly reduce policy binary size and save memory and improve general kernel performance.
- [MagiskPolicy] Support declaring new types and attributes
- [MagiskPolicy] Make policy statement closer to stock
*.teformat. Please check the updated documentation or
magiskpolicy --helpfor more details.
- [MagiskBoot] Support compressed
- [MagiskBoot] Pad boot images to original size with zeros
- [MagiskHide] Manipulate additional vendor properties
Magisk Manager v8.0.2 Changelog
Below is the complete changelog for Magisk Manager v8.0.2 as published by the developer on Github. The changelog for V8.0.0 and V8.0.1 have been combined into this.
- Fix an issue with requesting permission on devices older than Android 10
- Make more files download through CDN
vbmeta.imgpatching for Samsung
AP.tarfiles. This fixes boot loops on devices like Galaxy S10 after flashing updated AP files.
- Properly truncate existing files before writing to prevent corrupted files
- Prevent a possible UI loop when the device ran into very low memory
- Switch to use JSDelivr CDN for several files100% full app rewrite! Will highlight functional changes below.
- Add detailed device info in home screen to assist user installation
- Support Magisk v21.0 communication protocol
- Support patching modern Samsung
Download Magisk v21.0 & Magisk Manager v8.0.2 from Github
Like any previous release, Magisk v21.0 is available for download as a flashable ZIP file for those who want to install it via a custom recovery. Users who wish to install Magisk by patching the boot image can download the latest Magisk Manager v8.0.2 APK from below.
- Magisk v21.0 Flashable ZIP file:
- Magisk Manager v8.0.2 APK: MagiskManager-v8.0.2.apk
If you are looking for a specific version of Magisk, check out the official Github release page for Magisk.
How to Install Magisk v21.0
You can install the latest version of Magisk on your Android device:
- By flashing the Magisk installer ZIP file using a custom recovery, such TWRP recovery.
- Or, by patching the boot/recovery image in Magisk Manager and then flashing the resultant patched boot image to your phone.
The first method is generally more straightforward and it’s what you should use if you have a custom recovery installed. On the other hand, if a custom recovery like TWRP is not available for your device, or if you don’t want to install a custom recovery at all, then simply follow the second method.
The second method also makes it much easier to install OTA updates device after rooting. All you will need is the stock boot/recovery image for the Android software version/build number currently installed on your device. You can extract these images from the OEM Factory Image or OTA update package (instructions here), try downloading it from firmware.mobi, or look up for your device’s rooting guide on our website.
Before you install, it is strongly recommended to take a full backup of all your data before you begin installing Magisk. This shall prevent your data from being completely lost if an issue arises during the installation.
Instructions for both methods could be found in the following tutorial. We suggest you go through the instructions and familiarize yourself with the procedure before you start performing it.
How to Update to Magisk v21.0 Stable
If you have a previous version of Magisk installed on your device, then there’s no need to re-install at all. You could simply update to Magisk v21.0 stable version by using Magisk Manager. To do this:
- First, download the Magisk Manager v8.0.2 APK file and install it on your device.
- Now launch the Magisk Manager application on your device.
- Press the cogwheel icon on the top-right to access the “Settings” menu.
- Tap on “Update channel” and select “Stable”.
- Go back to the Magisk Manager home screen and wait for it to check for the latest version.
- Select “Update” and choose “Direct Install” as the installation method.
- Finally, select “LET’S GO” to confirm and install the Magisk v21.0 update on your device.
- Press the “Reboot” button after the installation finishes.
That’s it! So you were able to download Magisk 21.0 Stable and install/update it on your phone. Don’t forget to browse through the redesigned Magisk Manager app to familiarize yourself with the new UI.
The developer has surely made some major improvements in this latest Magisk update, making it more secure for end-users, and easier for module/kernel developers out there. We highly appreciate his hard work and the time he has devoted to the Android community. If you have any questions about Magisk or its installation, feel free to let us know.
Source: Magisk on Github