Following the previous Magisk 20.3 update, developer topjohnwu has now released Magisk 20.4 Stable version. This latest version focuses primarily on stability and bug fixes, and also adds Busybox Standalone Mode and disables MagiskHide by default in light of the new SafetyNet changes introduced in Android. Through this post, you can download the latest Magisk 20.4 Stable, along with Magisk Manager 7.5.1 APK for your Android device.
Just so if you’re not familiar, Magisk is one of the most popular tools for rooted Android users, developed by John Wu (More commonly known as ‘topjohnwu’ in the online community). Apart from allowing you to root your Android device, it also gives you the ability to apply modifications to the software systemless-ly. You can even use it to hide root from apps that might show abnormal behavior or stop working completely if root is detected.
Now before you head to the download links, let us take a quick look at the changes and new features that this latest Magisk 20.4 update brings.
Table of Contents
What’s new in Magisk 20.4 Stable?
The previous version; Magisk 20.3 brought a new Magisk Module installer format, live SEPolicy patches, updated boot image backup format, and more. With this new and latest Magisk 20.4, the developer has focused majorly on fixing the existing bugs and introducing a few key changes for an overall stable Magisk environment.
Below is the complete changelog as mentioned by topjohnwu in the official release notes.
Magisk v20.4 Changelog
- [MagiskInit] Fix potential bootloop in A-only 2SI devices
- [MagiskInit] Properly support Tegra partition naming
- [General] Load libsqlite.so dynamically, which removes the need to use wrapper scripts on Android 10+
- [General] Detect API level with a fallback method on some devices
- [General] Workaround possible bug in x86 kernel readlinkat system call
- [BusyBox] Enable SELinux features. Add chcon/runcon etc., and ‘-Z’ option to many applets
- [BusyBox] Introduce standalone mode. More details in release notes
- [MagiskHide] Disable MagiskHide by default
- [MagiskHide] Add more potential detectable system properties
- [MagiskHide] Add workaround for Xiaomi devices bootloop when MagiskHide is enabled on cross-region ROMs
- [MagiskBoot] Support patching special Motorolla DTB format
- [MagiskPolicy] Support ‘genfscon’ sepolicy rules
- [Scripts] Support NAND based boot images (character nodes in /dev/block)
- [Scripts] Better addon.d (both v1 and v2) support
- [Scripts] Support Lineage Recovery for Android 10+
According to the provided changelog, the first major change in this latest version is the introduction of BusyBox Standalone Mode. From Magisk 20.4 onwards, all Magisk related scripts will run in the BusyBox shell in standalone mode. This means that all the commands will use their counterparts in Magisk’s BusyBox. According to the developer, this should allow the scripts to provide consistent results regardless of the setup’s environment. That’s because Magisk’s BusyBox is equipped with several patches and SELinux features.
The second important change in Magisk 20.4 is that MagiskHide is now disabled by default. This has been done in light of the new hardware-based key attestation introduced by Google for SafetyNet checks. This means, passing full CTS SafetyNet on your rooted Android devices might not be possible now.
Apart from these two, there are some other changes that have been made as well. For example, bug fixes for bootloops in A-only 2 Stage-Init devices (Like Samsung’s latest Galaxy series) and Xiaomi devices have been implemented. This new update also adds support Lineage Recovery on Android 10 and above.
There’s no Magisk Manager update this time because the newly redesigned application is currently not fully ready. Although if you want to test the new Magisk Manager app, it is available on the Canary release channel. Below is how the new and revamped UI of the Magisk Manager app looks like, compared against the old interface.
One more thing that topjohnwu brought up with this release is that the Magisk threads on the XDA-Developer forums will not be updated any further, in favor of the Github page which will be much clear for everybody. The dev also bestowed his reasons for this. The primary reason being that the XDA website is ‘intolerably’ slow and also that he stopped getting feedback from XDA for years now. According to him, Github gives him more freedom to distribute the download links, changelogs, documentation, and all other related information.
Download Magisk 20.4 Stable (Magisk Manager 7.5.1)
Update: Magisk v21.0 and Magisk Manager v8.0.2 have been released. You can check all the new changes it brings, download links and instructions on this page.
Like any other previous version, this latest stable version is available as a flashable ZIP file that could be installed using a custom recovery like TWRP. The link to download the APK of the latest version of Magisk Manager application has also been provided below, in case you want to use it to root your phone using the patched boot image method.
- Latest Magisk Installer ZIP: Magisk-v20.4.zip
- Latest Magisk Manager APK: MagiskManager-v7.5.1.apk
- Previous version: Magisk-v20.3.zip
If you are looking for a specific version of Magisk, they are all hosted at topjohnwu’s Github.
You’d also find this helpful: How to Uninstall Magisk Modules using TWRP Recovery to Fix Bootloops
How to Install Magisk 20.4 Stable?
There are two different methods/ways to install Magisk on your Android device. The first method is by flashing the provided Magisk ZIP file using TWRP recovery, which is the most direct way. Or, you can use the second method that involves patching the stock boot image using the Magisk Manager app and then flashing the patched boot image to your device via fastboot.
The second method comes in handy if a custom recovery like TWRP is not available for your Android device, or if you don’t want to install and use a custom recovery at all. It is also much easier to install OTA updates on your rooted device using this method. All you will need is the stock boot image of the currently installed software version/build number for your device. You can extract it either from the OEM Factory Image or full 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. This shall prevent any data loss situation should any issue arises after the installation. Also, go through the instructions and familiarize yourself with the procedure before you start performing it.
Both the installation methods have been provided in the guide linked below.
In case you already have the previous version installed, then you can simply update to Magisk 20.4 Stable by using the instructions provided in the next section.
How to Update to Magisk v20.4 Stable?
- First, launch the Magisk Manager application on your Android device.
- Tap on the menu icon on the top-left of the app’s screen and select ‘Settings’.
- Tap ‘Update Channel’ and make sure that ‘Stable’ is selected as Magisk’s update channel.
- Now go back to the app’s main screen and pull to refresh the menu.
- Press the “UPDATE” button next to ‘Magisk Update Available!’.
- Select “Install” and then press “Direct Install” to install the Magisk 20.4 update on your device.
- Once finished, press the “Reboot” button.
When your device boots, it should be rooted with the latest Magisk 20.4, along with Magisk Manager 7.5.1 installed. Although this version disabled MagiskHide by default, it is only for those who are performing a fresh install. If you had it enabled before performing the update, it will stay enabled post the update.
So you were able to download Magisk 20.4 Stable and install/update it on your phone. The developer has surely made some massive improvements and changes in this latest Magisk update. I highly appreciate his hard work and the time he has devoted to the Android modding community. If you have any questions about the latest version or regarding Magisk itself, then please feel free to ask me via the comments.
Source: Magisk on Github