GITHUB PAGES IS ONLY FOR SEARCH ENGINES! CLICK HERE TO FIND OUT WHY! IF YOU ARE ON CATWITHCODE.MOE ALREADY, YOU MAY BLOCK JS AND THATS WHY YOU SEE THIS. GOOD FOR YOU :).

Everything about Ubuntu Touch on the Fairphone 5

In this entry I will document everything about using Ubuntu Touch on the Fairphone 5. I independently volunteer as a beta tester.

Many parts can be done on any Ubuntu Touch device!

This entry uses the "Everything about Fairphone 5 Modding" entry as a base and is written in the same structure:

/Blog/2023.11.13_Fairphone-5_Stuff/Fairphone-5_Stuff.html

After almost 10 years, it is nice to see the beautiful UI again. After backing up as much as possible with "Neo Backup" (TWRP still does not allow DATA backups), downloading all the packages (LinageOS, FairphoneOS 13&14 and the UT installer) and making sure the phone was fully charged, I started.

I also have opened a topic on the UBports forum with the help of "Keneda". It's a bit chaotic because I have to merge some wrongly split topics thx to me LOL. I will clone my report over there for the convenience of the devs (But my main place for ALL information will remain here :D).

I linked ALL sources, used guides and manuals and fixes from users (with names).

https://forums.ubports.com/topic/10472/beta-bug-reports-catwithcode

https://gitlab.com/ubports/porting/community-ports/android11/fairphone-5/fairphone-fp5/-/issues

Note: I test drove the Fairphone 5 with UbuntuTouch for around 17 days. Don't worry I hand a second, fully configured phone on hand just in case (And a Android Phone was ready to swap in) ;). I relyed on some Android apps to work but the main once are covered more or less, but especially the Signal installation explained below can be skipped as soon as waydroid works.


What works, what dose not:

A list of stuff I tested with last tested Status and the Tickets if any:

UPDATED: 2024.11.20

SOFTWARE: r91 - 20241109-2283

✅ WORKS | 📈 WORKS, BUT STILL TESTING | ➖ NOT TESTED YET | ⭕ ISSUES | ❌ NOT WORKING






Lessens when working with Ubuntu Touch:






Snap's:

Snaps do work on the Fairphone 5. Compatibility is hit or miss.

Snaps can be enabled with the app "Snapz0r". The only issue I have is that it lets you uninstall things in ways where you don't know what is being done. It is great for installing snap and seeing whats on the phone but I installed and managed snap's with the terminal.

Snap also dose not allow hardware access which makes most apps useless.

Here are the apps I tested:






Installing Signal (Desktop):

This was a lot of work. And believe me when I say: be prepared for a lot of jank.

I got Signal Desktop fully working. Yes its a bit janky to use, but keyboard, UI, Calls, Microphone, Popup-notifications (EVEN WHEN THE SCREEN IS OF FOR A LONG TIME! !BUT! only if you leave Signal, meaning: Open Signal without opening a chat (too safe battery) and then swith to a other App or simmular. Off screen detection in X11 is a little inconsistent) (Not notifications in the Ubuntu Touch notifications center) and File Browser work. Video call dose work but dose not get any feed (Probably a Libertine limitation): https://forums.ubports.com/topic/10431/

History on how I got there:

I tried to use it natively (did not work), Snap (unusable and non of the needed hardware features were accessible), and the with Libertine and Flatpak (dependencies-Hell). The last thing I wanted to try was Libertine native. Signal-Desktop is a self packaged Electron app. Meaning it has (nearly) everything it needs build in. And that guess was right! BUT to get it to work there were two issue. glibc is exactly 0.01v too old... yes that little. The second issue was to get Signal-Desktop for arm64. There is currently no official versions BUT I found a git repository that has the current version forked. They use the latest source and build it with custom build-scripts in the GitHub build pipeline. This as save as its gonna get with this amount of jank.

Signal uses more battery then it should. It uses a little less if you close it and reopen it and don't open any chats.

WARNING: THIS USES UNOFFICIAL SIGNAL FORK! It builds with the Source and just different build setups but still be careful! ALSO: YOU ARE ON YOUR OWN!

The best is to have two terminals open on your PC to be able to push and work inside the container at once.

Replace "focal-2" if your container ID is different.

THIS WILL BREAK AT SOME POINT! DEBUG CAN BE DONE WITH ENTERING THE CONTAINER AND CHECKING LOG WITH: "nano nano /home/phablet/.local/share/libertine-container/user-data/focal-2/.config/Signal/logs/main.log"


Current known Issues:

THIS IMAGE IS EDITED! EVERYTHING WAS WORKING NORMALLY! JUST REMOVED INFORMATION!

ScreenShot of working Signal-Desktop




Installing a usable Browser (FULL FIREFOX):

Installing as usable browser is possible with Libertine.

Open Libertine and create a new Container, open view and show log. Then wait until nothing happens anymore for 2 minutes. Then install the package "Firefox". Make sure to open the container and show the shell log while it is doing its thing. After it is done and Firefox (and VIM...) is in your Homemenu you can install a other app called "pavucontrol". Open it once. After that you can start Firefox. It will be way to small and unusable. You need to do a few modifications to fix that. We will fix the scaling, the UI and a few other things.

When changing the UI connect a mouse to right click or make precise inputs can be helpful. You must configure the UI now because later Firefox will crash when moving UI elements. Make everything as large as possible (density) and remove all elements you don't need. Add resize to the bookmarkbar and set it to always be visible. The enable TitelBar to make the Titelbar go away (LOL). If you need a reference, an image is at the end of this section.

Fixes:

This is how Firefox looks when everything was done right:

ScreenShot of working Firefox




Installation:

I had LinageOS installed, so I flashed the Stock Android 13 Rom (Android 14 was already out but the installer wants Android 13. It is very important to use the right Android Version).

I use Arch (BTW.) and used the official UBports Installer. It did all the udev stuff for me and flashed the phone without any issues.

I use a very good USB 3.2 cable that came with a SanDisk SSD (I think something like "SanDisk Extreme Portable" or along those lines.). It's short, it's annoying, but it's the only USB-C cable I trust with stuff like this. I hate the inconsistency with USB-C cables.

I had so many issues in the past with OEM cables or even good ones that were out of spec. If you ever have problems with low level flashing, it could be the cable. Try different ones until you find a reliable one.

https://devices.ubuntu-touch.io/installer/

Sources: