THIS IS A MIRROR OR ARCHIVE. CLICK HERE TO GET TO THE OFFICIAL CATWITHCODE.MOE PAGE! IF YOU ARE ALREADY ON CATWITHCODE.MOE, IGNORE THIS. BLOCKING JAVASCRIPT IS COOL.

PostmarkedOS daily driver experiments


About me an using Linux on phones:

This is my third try with Linux on a phone, but I know this time will be better, buggier and more fun then last time. In the past I daily-drove Ubuntu Touch and came to dislike it somewhat. Don't get me wrong, I like, no love, the project BUT it's use of Halium as a stop-gap solution to get Linux running without all drivers ported makes it hard to use for me. Why? It makes it so, that, to some extend, you can not use normal Desktops and to some extend Apps. This can probably be overcome overtime, they did somewhat with (soon (TM) Wayland) Libertine and Snap. But to it is also NOT the project goal, the goal is a "User Friendly" OS like Android and not jank. This makes it so the keyboard is not usable without engaging the pipeline that only Libertine and Store apps can use/trigger by design.

At the end it is a me-issue. I want everything usable and I am ready for a lot of Jank and to code/script stuff myself, but this is not its goal of Ubuntu Touch and this is fine! BUT NOT SO WITH POSTMARKED OS! It is pure Linux, thanks to a porting of everything into the Kernel and/or system, this makes it far less usable because hardware functions are missing for long time for many device or will never work, code can not use access some thing in the hardware because of missing documentation and more. But some devices, soon the FP5 as well, are very well supported and are near fully functional when it comes to daily usability.

In this entry I will once again documentation everything I did to make it usable for myself. As last time I ALWAYS had a second fully functional, ready and online device on hand for emergency or PostmarkedOS has issues. THIS IS IMPORTANT! THE LAST THING YOU WANT IS FOR SOMETHING TO HAPPEN AND YOU CAN NOT CALL SOMEONE!




I will write this entry chronological. This, as usual is NOT meant to be a guide! More a documentation of what I did when and how to help others and document it for myself! Meaning: If you want to follow, read from the beginning and follow my """Adventure""" through the chaos that is true Linux on a Phone. They will build on top of each other, repeat things or mention if something changed. This also means this is NOT representing of the current state! If you want just resources this can help too, or you can just check out the "Sources" section for MANY links to useful things I found on the way.




First Test-Run - Written: 2026.02.03

I did a first test-run(s) with the pre-build builds using the "UBports installer". I first flashed Stock Android 13 and then installed PostmarkedOS. The installation went through no issue.

I tried Plasma Mobile and Gnome Mobile. Plasma was buggy but nearly everything I threw at it just was forced to work no matter how janky. GNOME Mobile just sucked. It looked neat but worked only half the time and were Plasma was buggy but forced things to work, GNOME Mobile did either barley work or was just outright broken. PHOSH is a modified version of GNOME Mobile and works a little better but has the same issues as GNOME Mobile. Funny enough PHOSH was the only Desktop where Rotation just worked automatically. There is also Sxmo (Sway) but who thinks a custom config of Sway is a good idea on a phone should not be reading this because they KNOW what they are doing xD.

The Stock Password was "147147". The first thing I needed to do was "sudo apk update && sudo apk upgrade -U". Then after a reboot the System was ready. Then I did "sudo apk add waydroid mrhlpr mrtest". This allows Android App's to run and the use of a really cool tool that can pull "artifacts" from GitLab and lets you run merge-request change build(s) live on the System before they are merged, build and in the repository! SO COOL! THIS IS WHAT LINUX ON THE CUTTING EDGE IS ABOUT! FORCE IT TO WORK NO MATTER WHAT!

The first issue I encountered was I wanted to run the merge-request 7880 aka. the "Microphone on FP5"-FIX. Issue: It is build with "openRC" and NOT systemD. Meaning, if you are not building your own image with "pmbootstrap" and change the init system you will not be able to test some/many merge-request.

That would not have helped much at this point anyway because "audio-modem" integration is still broken and you would not be able to hear nor be heard in a call anyway, but stuff like a Signal-Call or SIP should work. Using the phone network also required disabling mobile data to switch of 4G/5G and into 2G/3G. VoLTE is not supported on the FP5 but is worked on while I'm writing this LOL. Since they got Audio working the progress is extremely fast..

I still had other issues besides that. Mainly USB! I use a USB-C Clicks Keyboard from an “iPhone 16 Pro Max” on my FP5 and it uses an internal USB-Hub to connect and disconnect. Meaning as soon as I charge the phone with the case on it stops working beyond the ROOT-HUB. That is not isolated to the case any hub causes this issue EVEN MY USB MOUSE! It is a mouse with programmable button's that CAN be mapped to keyboard keys so it is also shown as a keyboard to some extend.

That brings up an other small thing: Plasma Mobile worked well with external peripherals, interacting with the Touch brings up the OSK but else I can use my external peripherals and the OSK can also easily be disabled. On GNOME it freaks out as soon as the input method is changed and same with PHOSH..

The USB-Issue is a deal-breaker for me currently. I can not charge the phone without losing Keyboard functionality/USB-Data until I rebooting. Even the charger is recognized as a USB-Hub and it is ONLY a charger! Potential for a plugin and unplug and overseeing the Bug and then having a empty phone is to high.

I document my dmesg output here:

After this log, it dose still show a USB2.0 and USB3.0 ROOT-HUB if ANYTHING is connected with USB-C but NOTHING else! And I'm also relatively sure charging in that state broke to!

Waydroid is also beyond broken! It works, but PLASMA-Integration and the Launcher itself are not willing to cooperate and ALL tricks to fix "No Network in Waydroid" fail! The issue is broader: Waydroid has no access to any hardware! Mic, Camera, Sensors, GPS (Did not test "geobridge" because I never got this far but I assume it's broken). I need Waydroid, not even for apps or anything, I would use mostly native Linux apps and websites, but I need a few App's to log-in into stuff and that is not possible if Waydroid can not even access the Network or Camera.

Getting a good Firefox Setup going (Similar to Ubuntu Touch): Open "about:config" and set "perpx" to a custom value of "1.9". This fixes Firefox's vertical scaling. In settings set vertical tabs and make them as small and as empty as possible, enable bookmarks and set the default zoom to 80. Remove everything from the toolbar that is not absolutely needed, add zoom to the bookmark bar and don't forget to install an ad-blocker like uBlock Origin. Removing the "Extensions" icon is also a good idea but this is a little annoying to get working with "customChrome" (Did not get far enough to force it to work).

For now PostmarkedOS is in great place, no joke, only a few Issues remain (Microphone, Call-Audio, USB issues and Waydroid hardware access (Ubuntu Touch got it working BUT they work with Android driver and near fp5 android mainline kernel, some functions may never be able to be working like this on actual Linux drivers)) but after that, it is a very usable, if buggy and janky, experience. I would daily it instantly! It has everything I want from my phone and Linux on top of that, a few small bugs here and there don't bother me. And having an old KaiOS Nokia phone (Anything with 4G) on hand in emergency is default by something like this for me anyways. I will keep a close eye on the Port and will most likely, very very soon, look into it again! (If only switching would not always be so bothersome with downgrading, flashing, using, restoring, re-flashing, and then reinstalling everything. I know there is dual-booting but it is !EXTREMELY! risky AND UNSTABLE and maintenance intensive on Android phones!).

Here also some random facts I noticed while using, just so they are documented:


Second round - Written: From 2026.02.06 to 2026.02.09

After the first round I was very exited and as soon as I saw (about one week later) that the Microphone patch was merged I decided I give it an other try (even thought I will have to wait a little longer until it is in the repository), this time with a few days of daily driving. Let me tell you, once Linux, and I mean full Linux, on a phone, that is so cool and open you actually don't want to go back to Android, because no matter the issue or feature you want, it is Linux, just do it. You could even install STEAM if you want with FEX. I quickly tried and yes it works LOL.

First of all: What setup did I do this time? I went adventuring even more! I tried pmbootstrap and build my own image! I tried KDE-Mobile and GNOME-Mobile, both keep having heavy flaws and Issues making them unusable, Sxmo is cool but VERY buggy and not really fun to use. Then I came up with an Idea, Gnome always wants to be the all-rounder motherf*cker, so f*ck it I try raw GNOME. And holy f*it is the best of them all (With one BIG, FOR SOME DEAL-BREAKING, issue discussed later in this entry)!

I used pmbootstrap (git version). I installed it on my system with the pkg manager to make sure all dependency's are installed, then removed it again and got the py git version and used it instead. I used always the "new" tech, except for pulseaudio (pipewire has stall issues), and for the desktop I used GNOME. TLDR. I made a very custom build with nearly only new stuff and until now it is the most stable (if I ignore the journal a little LOL). It has only one very big issue... the OSK (GNOME-Keyboard) causes GDM crashes, not just GNOME-SHELL, the hole GDM crashes on random inputs from the OSK. I can get around it with my case but others need a new keyboard if possible. I hate GNOME like any other reasonable person but here it is sadly the best option.

My pmbootstrap setup:

After that I installed the build, flashed it and its kernel, booted it and enabled/started sshd and updated.

I installed "gnome-calls" for calling, "chatty" for SMS and Firefox (and removed firefox-esr) for browsing. Besides that I applied all the fixes listed below and changes I made last time too (like the Firefox mods). It is always safe to amuse, if I use the same software like in the logs before, I apply the same changes.

A list of Issues and fixes I found:

This was it so far for this test run. I don't have much time to toy around much with stuff like this but I got GNOME stable and usable enough that I will stay with this setup for a little while. How long IDK. The Microphone merge will arrive soon and the modem audio integration from what I read is also not far from being create/routed and merged, but until that is here and I figured out the last few quirks of f*cking GNOME, it depends on my patience. Else I would just daily this no questions asked, this is how well it works (Also thanks to my modded Clicks keyboard, a physical keyboard is a must on Linux if you ask me, and well the crash Bug with OSK force you to it anyway LOL) :D!

Also: A way around the modem-audio, for now, could be a VPN home and using SIP over the landline phone (or directly over your provider or an online platform) or SIGNAL. But this dose not fix the emergency numbers and that is why the KaiOS helper phone must stay for now (Small Update: GNOME sucks so bad (You can not even change Alarm Sounds) and the display-driver is still too unreliable, so can not recommend it still)!


Sources: