2019.10.11 Magisk v20.0

The following release notes are mostly the same as v19.4. Compared to v19.4 beta, the most notable change is adding tons of support for more devices on Android 10, along with several bug fixes.

New System-as-root Implementation

Magisk has supported system-as-root devices for a long time since the first Pixel came out. The goal is always to revert things back to the good old initramfs based root dir. However, this not only creates tons of issues on many devices, not easily hide-able with MagiskHide, but most importantly not even possible on Android 10. Magisk will now start to follow how Google has designed system-as-root: mounting system actually to / (root).

This implies several MASSIVE consequences for system-as-root devices:

Android 10 Support

Android 10 is now fully supported with MagiskHide working as expected. Android 10’s biggest challenge is the new “2-Stage-Init” system-as-root implementation, which requires modding early mount fstab in a specific way, and in many devices’ cases involves patching DTBs in the boot image.

(For those interested in “2-Stage-Init” and other details of system-as-root, check this Twitter thread I tweeted)

Product Partition Support

Magisk Module developers can now finally properly modify files in /product! This partition is now an essential part in Android 10, and many files are moved from system to product. Please check documentations for more details.

A-Only System-as-root

A huge number of new devices have A-only system-as-root setups (Android 9.0). These unfortunate devices will have to install Magisk into the recovery partition. Please check the fully updated Installation Guide for more details.

Full Changelog: here