[GSI][13] LineageOS 20 TrebleDroid-based

Search This thread


Apr 2, 2016
Hello all..
I have a question that can be related to the previous question..
So I have a working LineageOS 20 on my phone (Poco M4 Pro 4G) which is also rooted with Magisk.

Now I wanted to install Gapps, but it seems the only way to do it is to use a custom recovery (TWRP).
The problem is that TWRP seems to not exist for my device and unofficial TWRP are stated to be only compatible with Android 11 (on my device the latest stock ROM is under Android 12)..

Do I need to rollback to a previous version of Lineage OS under Android 11 (or even using an older stock ROM) in order to have a working TWRP?

Isn't there another way to install a custom recovery?

I guess that in any caseif I succeed to have a working TWRP, I'll need to start over Magisk and Lineage OS installation, right?

Or maybe is there a way to just install the Gapps without using a recovery?
It seems the distribution preferred by LineageOS is MindTheGapps https://www.xda-developers.com/download-google-apps-gapps/


Apr 2, 2016
There's a pre-GAPPS'd variant (*_gN).
I did installed that one: lineage-20.0-20230324-UNOFFICIAL-arm64_bgN.img which I belied should be one with Gapps, eight?
But it seems that all in all, among the Gapps, there's only Google, Play Store and Voice Search.
So I thought that I still needed to install MindTheGapps (or any other gapps distrib) in order to have a little more..


Senior Member
Mar 14, 2009
Someone who hasn't heard of Magisk, what a rare sight these days...
you misunderstood me
I know Magisk, and also DeltaMagisk

You wrote "Root with Magisk. Yes these do support Magisk out of the box, usually no need to do Securize or weird stuff."

I am not sure if you meant to use
which shall include SU, and Magisk-App is only the app which control su (you wrote "S: *Built* with PHH Superuser (app needed)"
if I should use Magisk normally on
and patch boot-partition.

I have tested to patch boot in arm64_bvN-vndklite.img. This seems that this doent work.


Recognized Contributor
Jan 30, 2012
So I thought that I still needed to install MindTheGapps (or any other gapps distrib) in order to have a little more..
The integrated one is already MTG. Download the "heavier" apps straight from Play Store, no reason to further blow up the size of the images (which already prevents some older devices from flashing).
I am not sure if you meant to use...
You want both Magisk and GAPPS, so pair it with a *_gN image.
Unfortunately, if Magisk doesn't want to work with GSIs on your device, then none of us are really in a position to help you (the author is kinda anti-GSI). *_gS is also not an option, since PHH-SU is known to disturb SN.


Senior Member
Mar 14, 2009
Because I was asked in another thread, does your *.img change/modify/add something on boot partition?
Which partitions are affected/changed when flashing your *.img?

@ all
have anybody rooted his device with one of AndyYan's *N-*.img (= Images without integrated PHH Superuser) successfully with Official Magisk or MagiskDelta?
Last edited:


Senior Member
Feb 25, 2015
Because I was asked in another thread, does your *.img change/modify/add something on boot partition?
Which partitions are affected/changed when flashing your *.img?

@ all
have anybody rooted his device with one of AndyYan's *N-*.img (= Images without integrated PHH Superuser) successfully with Official Magisk or MagiskDelta?
Ya, I got Magisk. I'm running lineage-20.0-20230322-UNOFFICIAL-gsi_arm64_gN and just flashed it right after I flashed that using a patch previously generated through it's app.


Recognized Contributor
Jan 30, 2012
Because I was asked in another thread, does your *.img change/modify/add something on boot partition?
Which partitions are affected/changed when flashing your *.img?
Only /system.

I see you're asking around whether other GSIs support Magisk better. This is quite device-specific, and even if people report success with all sorts of other devices, yours might not necessarily do.


Senior Member
Mar 14, 2009
just flashed it right after I flashed that using a patch previously generated through it's app.
Which device do you have?
Did you use the Magsik app to modify a boot-Image-File which you you have flashed then.
Or did you use Recovery to patch installed boot-partition directly?

If using boot-File, where have you taken from the file? From latest stock-rom?
May 17, 2020
Port Harcourt
howfo I fix this color error


Sep 3, 2012
Big thanks @AndyYan . I'm using this GSI as my daily driver on a Lenovo Legion Y70 and it works great. I truly appreciate your contribution to this community.
  • Like
Reactions: sanjibukai


Apr 2, 2016


Nov 29, 2022
Microsoft Lumia 950/950 XL
This is a universally useful and non-intrusive (default OFF) mod, so I added it to TD as well.
LOS has "rooted debugging" in Developer Options. Turn that on then "adb root" for a rooted shell.

I just realized that you've been comparing across devices, i.e. you aren't controlling variables properly...

This might actually happen - I'm starting to observe it on some very recent OPlus (=OPPO+OnePlus+Realme) devices. Unfortunately I don't have a way out, nor am I really interested in checking "why" at the moment. Perhaps use Magisk for /system changes instead?
I have now system rw
1) how to chnge bootanimation? there's no /system/media folder...
2) how to make /vendor rw?
3) how to DisableForcedEncryption?


Senior Member
Feb 13, 2023
One thing, though: Whenever I try to register my fingerprint, systemui immediately crashes. Maybe the attached log helps to find the cause? Thanks!

Edit: The issue is fixed in latest Treble Droid release: https://github.com/TrebleDroid/plat...mmit/2f67d9f7b996f4143a1fcc7dc1a64819ab3b5429.
Does it already work for you? I tried it on my Samsung Galaxy A50 on the March bvN variant and it shows the exact same behavior!
EDIT: this is the logcat

Edit: @AndyYan is there a way to know if the mentioned fix is included in the current version of LOS? The Samsung A50 shows the exact same behavior as described in the quoted post!


  • logcat_fingerprint_a50.txt
    773.5 KB · Views: 7
Last edited:

Top Liked Posts

  • 1
    No flashing instructions will be offered. If you're here in this forum, you should know what you're doing."

    Keep jealously guarding your secrets and let the rest of the world die stupid, you lousy rats!
  • 3
    Updated all variants with May security patches and in sync with TD 20230429. [Insert obligatory backup-and-test warning here]
    Lecture you? Dude, by installing just one Google app after your MicroG exhbition all that you said above failed down deep in the water so better revise your thinking from ground up :D
    Unfortunately, Play Store is a necessary addition to MicroG. And it's otherwise the only not open source Google app i include. It's pretty much the only way to buy apps or make in-app purchases. And some apps check their licenses to make sure they're not pirated. Without PS, this isn't possible, not without resorting to other apps/methods that coincidentally are forbidden for discussion by XDA rules.

    If "revise your thinking" means "switch back to GApps" or "buy an iPhone"....no thanks. If I'm just going to play by the accepted rules that Google and the manufacturers push, then this means that I should only run stock ROMs, always keep bootloader locked, etc. No to that too.

    On this, we can agree to disagree, and that's the end of this line of conversation, I'm drawing the line by deciding it's not worth discussing with you anymore. It all started because you asked "Why not just flash G variant than?" I interpreted this as you not being aware of MicroG, or why some would choose it over GApps.
    It's strange really, flashed week ago or so and still no stats. We'll keep on looking but at least I know it's me and not for rest of you guys, ✌️
    Oh, gotta say I debloated a ton of apps from it so I may exaggerated a bit lol
    You probably debloated too much. There's not much of a point in doing so, LOS is very clean, even the GApps builds. If you want a gsi that doesn't need debloating, go for Phh's AOSP vanilla builds. No fluff, just raw Android. And its' bugs will be 99% the same as this LOS. For GApps, use vndklite and flash MindTheGApps on top, if you have TWRP.
    @syneoa: I suggest reflashing the gsi, then using this to debloat:

    It doesn't really delete anything, so if you debloat too much, just edit your config file and reflash the mod zip. Anything you've "deleted" will be back.

    You can also do real deletion without a module, but then it will be harder to put something back if you make a mistake.

    For deleting mobile data stuff, I guess you missed the "remove telephony subsystem" option in Phh Treble Settings, Misc menu.
    So, how I see it, you're using unofficial, spoofing method to interact with Google services and putting yourself at risk of being more vulnerable security wise and potentially being banned with your Google account indefinitely.
    Why not just abandon Google ecosystem and move to Microsoft or Apple or use any of so called dumb phones?
    Although I respect open source projects I dislike the methods used.
    It's either I use official Play Services and give them more data, more battery usage, etc, or I use an open source solution that respects my privacy. Both sides have negatives/positives.

    With the way Treble gsis have implemented signature spoofing, it's not so much of a security risk. Spoofing only gets granted to privileged system apps, not user apps. Which means MicroG must be installed in the system partition, or else it won't be granted the spoofing permission. And I'm not aware of anything else besides MicroG that actually make use of this spoofing. Or exploits/vulnerabilities that use it.

    And because I have to manually install MicroG on LOS, due to it not being bundled, there is an implicit acceptance on my part of any risks involved.

    I don't care if Google bans my account, I would only lose access to Gmail and a handful of paid apps. The risk of being banned is very low, I challenge anyone here to point out even 1 proven instance of someone being banned due to using MicroG.

    There's no possibility that I would ever consider Apple's mobile products, I absolutely despise how their stuff is totally locked down. With Android, at least the OS is open source, even if the Google components aren't. Can't say the same for Windows or iOS.

    Sometimes it is necessary to use not widely accepted methods to accomplish a goal. Let the end suit the means. I pride myself on being willing to be adaptable and flexible, oftentimes opting for maverick approaches to solving a problem. Think outside the box, as they say.

    And speaking of security, don't even try to lecture me. By running this gsi or any other, you have already accepted that you must at least unlock your bootloader. And if you listen to the powers that be, that's a bad thing too, a security risk. Both you and I have accepted this risk. By their very nature, gsis are unofficial. Since we have both accepted this risk, then I deem it no less OK for me to accept any risks of going against the grain by using MicroG instead of Play Services.
  • 25

    LineageOS is a free, community built, aftermarket firmware distribution of Android, which is designed to increase performance and reliability over stock Android for your device.
    LineageOS is based on the Android Open Source Project with extra contributions from many people within the Android community. It can be used without any need to have any Google application installed. LineageOS does still include various hardware-specific code, which is also slowly being open-sourced anyway.
    All the source code for LineageOS is available in the LineageOS GitHub repo. And if you would like to contribute to LineageOS, please visit Gerrit Code Review.

    MUST-READ BACKGROUND - Android 13 and the two approaches:
    As some of you already know, due to various reasons, @phhusson , who kickstarted the GSI trend and committed to it over the years, is backing out from future development
    - there won't be any AOSP 13+ builds or patches directly from him. He did most of the heavylifting for fixing bugs and implementing features, and selflessly supported more than his AOSP GSIs and more than devices he own. For the situation of GSIs today, we owe him a big thank-you.
    Earlier, inspired by @PeterCxy , I took the "light" approach, which starts over from AOSP's generic gsi_* target and adds the minimum amount of fixes needed for my own devices, intentionally leaving many legacy devices behind. For more details about it, visit its own thread.
    Meanwhile, a number of existing builders incl. myself have formed the TrebleDroid organization, with PHH himself helping us in technical issues. TD will forward-port PHH's final patches (v415) onto Android 13 and attempt to fix new issues. This is still a new and ongoing process, but if done right, will have compatibility and feature-completion on par with past PHH-based GSIs. This thread contains LOS builds based on TrebleDroid's collective work, which supposedly suits legacy devices, Samsung, etc. better than "light".

    No flashing instructions will be offered. If you're here in this forum, you should know what you're doing.
    No guarantees that everything would work. This is a GSI, bugs are bound to happen.

    MUST-READ - reporting bugs:
    If you want to report a bug, then you MUST try reproducing on an AOSP reference build of around the same date from TrebleDroid, and ONLY proceed to report here when it's specific to this GSI. This filters out bugs common to all TD-based GSIs, which you should still let me know, but it might not be mine to fix. I might silently ignore your report if you skip this.

    Scroll down for the naming rules of variants.
    Compressed as .xz archives - extract first.

    Stuff on GitHub (builders-only):
    Most things should be self-explanatory. Not the cleanest code, but should help if you need some clues.
    Thanks to:
    • The LineageOS team
    • @phhusson - shaped the treble community, and still takes care of TrebleDroid at a higher level
    • @PeterCxy - coded critical fixes such as sysbta
    • The TrebleDroid builders
    • ...and more
    Updated all variants with April security patches and in sync with TD 20230417. [Insert obligatory backup-and-test warning here]

    All modern Xiaomi/Redmi devices should be able to see high refresh rates now (if supported), without having to spoof properties globally.
    • I now have a rather taxing day job, and can't devote nearly as much time/effort into this as I did as a student, or even a year ago.
    • I now daily-drive "light", so I can't test TD-based builds as extensively as before. For the same reason, I likely won't build/upload any TD-based "personal" build either.
    • While most >=A13 GSIs out there are going to be TD-based, some perform better than others - some devs have their own patches that haven't been merged into TD yet. I myself will stay close to TD's raw patchset as much as possible, without picking patches from others left and right. If you find another GSI working better, don't just complain - try to narrow down which ones, and the intersection of them might be an unmerged patch that, if approved, would be merged into TD and benefit all.
    • GAPPS builds are offered as-is without guarantees. As a Chinese I can't/won't help with GAPPS/SN issues - please help each other out.
    • ADB is intentionally insecure, even on first boot (turned on by default and no authentication needed). GSIs are more fragile compared to device-specific custom ROMs, both on first boot (no-boot issues) and on subsequent boots (after tuning certain Treble settings), and I insist that no-auth ADB is a must-have for debugging and general fail-safe.
    • Signature spoofing (MicroG) is supported, but only for priv-apps. This is a security consideration from PHH.
    • On *S variants, install PHH-SU and you'll get basic root for apps, good for devices that don't play well with Magisk or when you don't need modules.
    • Refer to this post for explanation/workaround of an MediaTek-specific kernel bug that causes no internet.
    Updated all variants with Android 13 QPR2 and March security patches. [Insert obligatory backup-and-test warning here]

    As usual with "feature drops", things can change or break majorly.

    Fixed in-call audio on Snapdragon 8 Gen 2 (SM8550), tested on OnePlus 11, should pave the way for future QCOM SoCs as well. Users of other SM8550 devices like Xiaomi 13 and RedMagic 8 Pro/+ might want to try this out too. Also pushed to TD upstream, so in case you don't like LOS, it's still coming to your favorite TD/-based GSI later.

    Imported some SN fixes from HentaiOS - GAPPS users should now get CTS profile match as well.

    Fixed videos sometimes getting stuck after pausing and resuming, thanks @Cozzmy13 for working it.

    Fixed two-pane layout in Settings for tablets - set an appropriate density then force stop Settings for it to take effect.

    And finally for builders, starting this month LOS has moved to Git LFS for hosting their Chromium webviews. Please re-init the repo with "--git-lfs" flag BEFORE syncing again or you will hit errors. If you already have a bad sync, clear the residue and re-init:
    rm -rf external/chromium-webview/prebuilt/*
    rm -rf .repo/projects/external/chromium-webview/prebuilt/*
    rm -rf .repo/project-objects/LineageOS/android_external_chromium-webview_prebuilt_*
    Updated all variants with January security patches and in sync with TD 20230104. [Insert obligatory backup-and-test warning here]

    During my CoV downtime, A13 QPR1 happened and TD-based had a lot of changes as well, which accumulated to this month and I had to update more patches than expected (way more than "Light" - lower maintenance is why I made that in the first place). I might've made oopsies along the way, so I don't feel quite confident about this batch, and you should exercise extra caution.

    Some users have reported that securize bootloops their device, and the current "integrally securize" approach means they can't boot up even once. This month I've changed it yet again to "securize on-demand", which is similar to how you securize on PHH/TD-based (a toggle in Treble Settings), but reversible and doesn't require SU.
    For new users who are unsure about whether securize might bootloop your device, please turn on USB Debugging and Rooted Debugging below it, and if/when you do hit a bootloop on the next boot, you'll have a rooted ADB shell available to you, from where you can toggle off manually:
    adb root
    adb shell setprop persist.sys.phh.securize false
    adb reboot
    For users who are already on a gN build, be sure to toggle it on and reboot right after you update!

    Properly fixed exfat for Samsung/Sony, tested on the one Sammy I still own.