LineageOS is dropping its own superuser implementation, making Magisk the de facto solution
LineageOS is one of the most popular custom ROMs available for Android devices, if not the most popular custom ROM out there. This custom ROM takes Android as found on the Android Open Source Project (AOSP) and adds its own flavor on top of it. A lot of custom ROMs tend to then adopt LineageOS as their own base, so any major change that LineageOS undertakes for itself tends to propagate throughout the custom ROM community. The developers behind LineageOS are aware of this repercussion and make informed decisions accordingly. The upcoming release of LineageOS is significantly changing how root access is handled, as the ROM is dropping support for its own addonsu binary in favor of Magisk.
The next major release for LineageOS will be called LineageOS 17, without any surprises here. The custom ROM is in the process of being re-based on top of Android 10. Despite being a custom ROM, and thus having significantly more flexibility than an OEM UX skin, LineageOS chooses to not ship with a pre-installed root binary — meaning that there is no way for apps to obtain superuser access on a fresh installation of just the ROM. In order for apps to request superuser access, the user must consciously install a superuser binary and a superuser manager. Most users have been defaulting to installing Magisk and Magisk Manager, mainly because of the workaround that Magisk offers against SafetyNet detection, as well as the easy-to-use framework for Magisk Modules.
Despite being the popular choice, LineageOS does not officially recommend Magisk as the preferred rooting solution. Some ignorant users end up installing incompatible Magisk Modules on their devices and then flood the ROM maintainers with bug reports for broken behavior — which is a definite headache for maintainers to deal with. The ROM instead relied on its own addonsu package to provide the superuser binary and a simple superuser manager.
This addonsu was offered with LineageOS 15.1 and LineageOS 16 releases, but with official LineageOS 17, this will no longer be offered. For this release, root access over ADB will be the officially supported way for users to mess with important files on their devices. If the user wants to grant apps superuser access, then they will have to install Magisk and Magisk Manager. While LineageOS still isn’t officially supporting Magisk by incorporating it into official builds, this demotion for addonsu essentially elevates Magisk to being the de facto supported solution.
But why is LineageOS dropping addonsu in the first place? That is because PrivacyGuard, a LineageOS feature that addonsu leveraged, is also being removed in LineageOS 17. PrivacyGuard offered users advanced permission management controls over what was possible on stock Android. The LineageOS team was unable to port the PrivacyGuard framework to the new Android 10 base, and instead, the team is utilizing Google’s own Permissions Hub feature in Android 10. This Permissions Hub feature is the same permission controls that we saw in our early leaked Android Q builds, but one that was absent in public releases. Google did not release the feature in Android 10, but the code for it still exists in AOSP. LineageOS has forked it and will offer it as the alternative to PrivacyGuard.