Lineage GSI for Kompakt

I have been using lineage on my phone for 9 months now. RCS works fine for me.

2 Likes

When I flip the Offline+ switch my cell signal indicator shows a ā€˜!’ symbol. Wifi and bluetooth still work fine. If I am listening to an audiobook or music the sound is affected for about 20 seconds. This happened to me when I used the stock OS as well.

2 Likes

Hey everyone,
I’m looking for some help. I’m really happy with the mudita as a device to fight my tech addiction. The friction of the slower processor, limited refresh e-ink, etc are working well. Like others I have some mandatory apps that require Android 13 or higher for corporate security approval and would ideally like full gapps for things like Google Voice which has been a primary contact number for me for nearly two decades. I wouldalso like to have functional RCS if possible.

I am trying to install LineageOS 20 GSI on a Mudita Kompakt by following the instructions in the original post. I have an unlocked Kompakt with a working bootloader and can reliably restore it to a clean MuditaOS K 1.1.1 installation, but every GSI attempt returns to Fastboot instead of booting Android. I’ve been attacking this directly with hands on keys and also with multiple AI coding assistants trying to stab at possible solutions.

For reference I am in North America, so I assume if there’s a different regional version that’s what the company sent when I ordered.

Stock 1.1.1 verification

I restored the device using only the official Proton Drive 1.1.1 files:

• 1.1.1_partitions.zip
• 1.1.1_ota.zip
• Stock boot.bin
• Stock dtbo.bin
• Stock vendor_boot.bin
• Stock vbmeta.bin

I flashed the stock boot-related partitions to both slots, sideloaded 1.1.1_ota.zip , performed a factory reset, and confirmed that the phone booted normally to the MuditaOS K 1.1.1 setup screen. I also repeated this restoration after the GSI tests, and the phone again returned successfully to the 1.1.1 setup screen.

The bootloader reports:

product: Kompakt
unlocked: yes
secure: no
slot-count: 2

GSI images tested

I tested the following images independently, wiping data between attempts:

lineage-20.0-20251021-UNOFFICIAL-arm64_bgN-signed.img
lineage-20.0-20251021-UNOFFICIAL-arm64_bvN.img
lineage-19.1-20250606-UNOFFICIAL-arm64_bgN-signed.img
lineage-20.0-20251021-UNOFFICIAL-arm64_bvS.img

The last image was the exact arm64_bvS image mentioned by another user in post 28 as working:

lineage-20.0-20251021-UNOFFICIAL-arm64_bvS.img.gz

The images were flashed successfully to the logical system_a partition from Fastbootd. Each attempt ended with the device returning to the regular Fastboot screen rather than booting LineageOS.

The Android 12 Lineage 19.1 test also failed, so the problem does not appear to be limited to Android 13 compatibility.

AVB and vbmeta testing

The original instructions use an empty vbmeta image, but the device showed AVB-related behavior not described in the original post. One test produced a dm-verity corruption error before returning to Fastboot.

I tested:

fastboot flash vbmeta vbmeta.img

I also flashed the empty vbmeta image explicitly to both slots:

fastboot flash vbmeta_a vbmeta.img
fastboot flash vbmeta_b vbmeta.img

I additionally tested empty vbmeta_system and vbmeta_vendor images.

Because the stock 1.1.1 boot ramdisk contains this first-stage fstab restriction:

avb_keys=/avb/q-gsi.avbpubkey:/avb/r-gsi.avbpubkey:/avb/s-gsi.avbpubkey

I created a correctly rebuilt 1.1.1 boot image with that GSI key whitelist removed from the first-stage and recovery fstab. The image retained the complete ramdisk and valid boot image footer. Flashing that patched boot image also failed and returned to Fastboot.

I then restored the completely stock 1.1.1 boot, dtbo, and vendor_boot images before further tests.

Reproducing the later forum method

After finding the later post reporting success with arm64_bvS , I also reproduced the newer procedure described by another successful user:

fastboot --disable-verity --disable-verification flash vbmeta --slot=all vbmeta.img
fastboot reboot fastboot
fastboot flash system lineage-20.0-20251021-UNOFFICIAL-arm64_bvS.img

For this attempt I deliberately did not run fastboot erase system .

I entered recovery and performed the factory reset.

After selecting Reboot system now, the phone again returned to Fastboot.

Current state

The phone is currently restored and booting clean MuditaOS K 1.1.1. I can repeat the stock restoration reliably. No Lineage image has booted successfully.

At this point I am wondering whether:

• This is related to global vs NA hardware revisions.
• A required partition other than boot , dtbo , vendor_boot , vbmeta , and system differs between working and non-working devices.
• A modem, para , metadata, boot-control, or other partition must be restored or modified.
• The working users had a different original firmware version or partition layout.

Has anyone with a Kompakt that initially failed with an infinite Fastboot loop identified the missing step? If someone has a working Lineage installation, a comparison of the relevant partition layout, original firmware version, hardware/region variant, or exact complete flashing sequence would be extremely helpful.

2 Likes

Try asking the LineageOS forum on XDA they might have a solution

1 Like


I wasn’t happy with any LineageOS build that worked on this device, mostly due to all of them having 0 eink optimizations and some of the Kompakt features not working, so I started building a custom one specifically for Kompakt.

It will be based on LineageOS 23.2 (Android 16) with security updates from August 2026.
There will be a Vanilla version and a Gapps version (Gapps as in google play services).

And most importantly, this will not require any partition downgrading. I’ve managed to patch SEpolicy for this to work :slight_smile:

However I still recommend people to learn how to install and use local ADB (not webadb). Also MTKclient.

When time comes I’ll make a new topic.

P.s Unlocking of some cool features (like the one in the video) will require flashing my boot/vendor in addition to system.img

15 Likes

O.M.G.

@gezimos → Saviour of Humanity :wink:

Now THAT is huge! I bet the next thing you publish will defy gravity :wink:

2 Likes

Oh wow this looks great!

The only ā€˜essential’ app I haven’t found a workaround/community app for is the app that pairs to my Beeline cycling navigation device as it requires Google Play Services, hopefully this means I can use it!

Thanks so much for putting this together

2 Likes

Love this, looks amazing! Glad you were able to work around the SELinux issue

2 Likes

Thank you!

It might work even with Vanilla+MicroG, I haven’t tested microg though. But I just downloaded Beeline and it works with the Gapps version I’m running.

Thank you my friend. I’ve already reported this a few times in the forum, even to the Founder of the company.

But they haven’t acknowledged it.

1 Like

Very exciting, I’d be happy to contribute to the source when you open it up!

Also happy to retire this post or at least update the description to direct to this build, if it’s generic enough as a vanilla Lineage OS build. There are piece that appear custom and more like a ROM than Lineage - which is maybe what you’re going for. Fingerprint swipes is a clever idea, I had used it almost exclusively on the Pixel line where the back fingerprint sensor could be swiped in any direction to map to system gestures!

I’m curious how much of the system UI and UX you’ve interacted with? Did you replace the notification drawer? I suppose I ask because it’s likely fiddling around and theming/swapping the Android system tools might break things elsewhere (just thinking of the endless compatibility consequences).

3 Likes

Amazing Kudos to you, this is quite an accomplishment…. You should be very proud of this work.
Thank you for putting in the hours and sharing.

4 Likes

Of course, this will be open-sourced as it is based on many open-source projects :slight_smile:

Going for mostly stock LineageOS E-ink edition.

On top of that patches specifically for the Kompakt:

  • Offline Mode Overlay
  • E-sim
  • E-ink modes per app
  • Invert mode per app
  • Functional Always On Display
  • Editable Sleep Screen image
  • LED Notification working
  • Fingerprint scroll/dpad mode (+ long pres and double tap)
  • FM Radio working (even without headphones, utilizing short antena)
  • Front Camera not crashing apps (cloned back camera, so users can photo verify in some apps).

Used to love that feature on an Android One phone I had (xiaomi mi A1 I think). It died with on-screen fingerprint sensors. It is working quite well but as it is very thin with no texture is not as good or flexible as the round ones.

Pretty much all settings/systemui, scrolling, colors, and all AOSP & default Lineage apps to be black and white only. (might have missed a few dialogs/popups here and there, but majority have been edited).

Oh absolutely it was a nightmare to remove material theme-ing and replace them with black and white. Android themes have no logic, AOSP has dark apps in light mode (like clock) WTF!

But I’ve been able to theme both light/dark so they’re in very good state at this point.

Thank you my friend! This was a lot of hours but hopefully it will be worth it for those users that want LineageOS now or for those in the future that will have a newer Android when Apps stop being supported for Android 12.

6 Likes

Are you running InkOS inside Lineage GSI here on the video? Or will this be how Lineage GSI look on your fork?
Regardless, looks very nice, I can’t wait to see your demonstration video on this. Unlike a launcher this is a bigger commitment for most people.

1 Like

The home screen yes, that is inkOS. The recent apps, settings, notifcations those are the Android UI that have been customized. So they’re not as limited.

A video might take a while, i’m very busy at the moment. But the written guide/documentation might be coming quite soon. I already have a group of testers and some of them are daily driving this.

A big issue was fixed yesterday related to NA devices.

Correct, but also the benefits are much larger with this.

1 Like

Super work. Could be tempted to try and install.

2 Likes

Yes, I’m looking forward for the ā€œFunctional AODā€, it is unnecessary, but when it is there, it is very useful for me.
With the regular muditaOS, if you expect something while working or on a meeting, you have to check the phone to see if it arrived. (Like an important email, there is no visual cue, and for me it is disrespectful to check your phone even if it’s work related, during work)
Rather than checking the phone during the meeting, an AOD function helps a lot to not lose focus, as it is visible.

As we talked before, the current Katapult solution is a workaround and drains the battery. So if this one is an improvement (and easy to toggle!), I will give it a go as well.

that is even better!

1 Like

Thanks! The part of installation should be the easy after unlocking the bootloader.

I’d recommend the people to learn to use adb and mtkclient before hand just to get familiar. (mtk client is for backups).

AOD was tricky to fix, because the Doze Suspend was disabled in Kernel. But I managed to build my own kernel based on Mudita’s source and that opened the door to Fix AOD and a few more features.

But I think we’ll have something even better than AOD (because android’s aod is quite limited).

A few tests overnight have cost me 3-4% battery life with AOD on. So it’s definitely better.

5 Likes

Hey Gezimos,
Message me if you’ve got room for another NA tester. I’m no grand ROM hacker, but I’ve been an android user since the very early years, have flashed my fair share of ROMs, am reasonably comfortable with adb and mtkclient, and really need to get my kompakt functioning correctly with a newer AOSP base.

2 Likes

This is all super exciting. Does your build enable RCS?

1 Like


Yes,it is working. (with Google Messsages of course).

There’s always the possibility of Google targeting the build as uncertified and stopping it.
There are some work around to this that would require root.

1 Like