UP | HOME

Using Linux on my phone for 1 month

1. My phone

After breaking my old phone at some point in March, I decided that my next phone should be a better known one.

But after checking back with my bank account, I was left with two options:

  • Buy a used OnePlus 6 from eBay (and hope that [[][caleb]] is able to get pmOS running as soon as possible)
  • or get the Gigaset GS290 (the phone the volla phone is based upon as it supports /e/OS)

I ended up buying the Gigaset phone, as they produce their phones in Germany, which means that I own a phone produced in my home country, kind of cool - I guess?

2. Picking an OS

Obviously, choosing a phone was a harder process than described above, especially because buying the Gigaset phone and then hoping that the Linux distros made for the volla phone would run on it was a risky and morally tricky decision1.

After skimming through a couple of blog posts, I created a list of Linux distros that I would be able to run on my new phone:3

  • VollaOS (android)
  • Stock android
  • /e/OS (privacy focused android distro)
  • Ubuntu Touch
  • Droidian (Mobian Linux for android (debian-based))
  • Manjaro Arm (GSI (arch-based))
  • SailfishOS (linux-based OS with proprietary UI)

As I did not want to use android on it initially, and I wanted Bluetooth and mobile-data support, I was able to narrow down the list to the following contestants:4

  • Ubuntu Touch
  • Droidian
  • Manjaro Arm

And because I really wanted to try all of them, well, I went ahead and tried all of them.

I wanted to give all of them an equal chance, which basically means that I planned on using every OS for one week.

3. Ubuntu Touch

Oh, gosh.

I have to admit I kind of broke my own rule on the first OS I tried, let me explain why:

Foremost, Ubuntu Touch does look amazing and is definitely the most polished OS on this list, I really loved using the gestures, and most of the apps installed from Open Store5 adapted to my system theme seamlessly.

In my opinion, to be able to daily drive a Linux for multiple months/weeks, it needs to have a pretty decent battery live (UT6 probably had the best battery life of all the Linux OS’s I tried). But it also needs app support.

And this is where UT disappointed me a lot.

Whilst UT features libertine, a Linux container manager, it only allowed me to install apps using an outdated Ubuntu version. Additionally, libertine did not really integrate into UT’s window manager, which meant that trying to scroll by moving my finger over the screen in Firefox was impossible and instead of scrolling, it selected the text below my finger.

This meant that I would not be able to run Linux desktop apps on my phone, but in the end, not every application is available as a desktop app anyway, so I decided to try installing android apps.

And to my surprise, the Open Store had a Waydroid7 helper app, which I used to install android apps. Which seemed to work fine, until it didn’t.

Basically, as android does not integrate UT’s gesture navigation, android apps would show the android navigation bar at the bottom of the screen. So I kind of had two ways of navigating my phone now.

I might have been able to get used to that, but after updating UT, waydroid vanished: turns out you have to reinstall waydroid everytime you update your boot partition as it modifies the partition.

And honestly, I don’t have time to do that.

Which left me with no real app support (neither the android version nor the desktop signal version)8 So I decided to switch to a different Linux distro.9

4. Droidian

As far as I can tell, droidian is a GSI/libhybris based way of running Mobian on an android phone.10

When I decided to go with droidian they were working on a new beta version but I opted to use the stable version.

Turns out this was a mistake, as debian-stable versions ship with outdated software and not only was the phosh version old and buggy but the software center was missing a bunch of applications I needed.

Making matters worse is the fact that the volla phone droidian image has some bugs, including the Wi-Fi drivers being somewhat broken thus, the phone takes up to 4 attempts to boot successfully (about 5 minutes).

In case you read the table of contents, you might be wondering why there are two chapters on droidian: That is because I personally prefer arch-based distros and after being unhappy with the droidian stable version I decided to give Manjaro Arm a try.

5. Manjaro Arm

Similar to droidian, Manjaro Arm is GSI based and uses libhybris to get a Manjaro version running on arm devices.

And as the PinePhone ships with ManjaroARM preinstalled I was hoping for a superb experience11.

My hopes were quickly destroyed whilst I was reading through the Manjaro wiki. Apparently neither GPS, nor Bluetooth, were supported.12 But I decided to go with Manjaro either way, as UT and Droidian stable supported Bluetooth and because the latest ManjaroARM image was pretty recent, whereas the wiki page hadn’t been update since Dec, 2021 I was confident that they added Bluetooth support.

Turns out that whilst shipping up-to-date software and the performance(including boot speed) being better than what I experienced with droidian-stable, ManjaroARM did have more problems than lacking Bluetooth support:13

After logging into phosh I was prompted with a white error screen telling me that part of my setup is broken, so I reinstalled ManjaroARM, but the problem persisted. As one does these days, I turned to the internet and tried fixing the problem without success.

You might be wondering how I know that ManjaroARM ships up-to-date software without being able to use phosh. But as it turns out, one can close the error popup as one would do with any kind of window, which allowed me to use the phone normally.

As you probably guessed by now I can’t be bother to set up an OS I’m unable to daily drive so I switched back to drodian after a couple of hours.

6. Switching back to Droidian

Switching back to droidian might sound like a stupid thing to do as my experience was pretty rough. But I was not ready to go back to android so far, I really did enjoy the Linux experience.

After thinking about it for a couple of hours, I decided to go with the droidian edge/beta version hoping that it would solve my boot issues and provide me with up-to-date software.

And as it turns out my assumption was correct - well, kind of.

Whilst phosh was using the most recent version now and the software center was working properly allowing me to install the dependencies for a signal-desktop aarch64 build I found on GitLab, not everything was working as smoothly as it should.

For a couple of days, my boot problems were gone until… I ran apt update and the problem came back. Oddly enough, this turned into a cycle, where I would update my phone, and it would solve the boot issue, but that would introduce a different issue. Then the next update would solve that issue but the boot loop would be introduced again.

So I tried not updating my phone as often (only when I noticed a bug)14 and that is how I was able to daily drive droidian for about one month.

Which sounds like a success, but I actually never planned on switching back to android, but besides the boot problem, I had a couple of different problems, including Flatpak’s not integrating into the system properly15.

7. Your experience sound horrible, why would anybody want to use Linux on their phone?

Well, I guess it is hard to explain why I prefer using Linux over android, especially because I set up my android-phone in a weird way, which I did not do on Linux.

So one could almost assume that android is an OS better suited for me, but honestly, I don’t think so. I hate the fact that one is forced in doing stuff the android way and without rooting one’s phone, there is nearly nothing one can do to really customize his phone.16

Furthermore, I think that mobile browsers are literally useless (from a software developer’s point of view) as they are missing a dev console. From the perspective of a privacy enthusiast, they are also missing a lot of the plugins I love to use, so using Firefox desktop on my phone allowed me to set up a lot of redirects, e.g. youtube->invidious, reddit->teddit and so on and so forth.

Additionally, android is filled to the top with trackers, and Linux gave me a system, using which I could use my phone to its fullest potential, without limiting me through some permissions.

8. /e/OS a solution?

I personally think that solution might be the wrong word here, because, as I mention on my android-blog home page, one is not able to compare android, iOS and linux-mobile as we normally do.

Whilst all of them run on a mobile phone, the features they provide and the market they serve is heavily dependent on these features.

And whilst Google is trying hard to make android the next iOS, luckily, they haven’t reached that goal - yet. Because once they do, there won’t be a solution, except for running Linux on your phone.

I ran into googles attempt to transform android into iOS whilst switching to /e/OS, to be able to properly use my phone17. Well, as it turns out, google is slowly disabling rw access to /system and all the other partitions, that meant that even though I rooted /e/OS, which by the way was really easy, I’m still missing system permission.

Ok, now on to the things I like about /e/OS:

Foremost, they released a new stable version a couple of days/weeks ago which includes system-wide tracker blocking and the apps /e/OS ships with by default are open-source.

For those in need of apps from the Google Play Store, /e/OS ships microG which should allow most apps requiring Google Play Services to work properly.

Unfortunately, they do not ship F-droid by default but instead, install their own app store, which integrates F-droid, Aurora and a PWA store. It is just that I would have personally preferred to use F-droid.

Another thing I noticed is that they heavily promote their own account/email service and the account manager in the settings even shows a Sign in with Google-button, which to me appears kind of hilarious, given that I’m using /e/OS to get rid of google in my life.

One thing I do like about /e/OS is that they don’t require you to accept terms of services or anything like that when setting up your phone, so you’re not signing off your phone to a different company when setting it up.

9. Conclusion

As you probably realized by now, /e/OS is only my OS of choice, until I find a different OS, I’m able to move to without issues.

So, what do I think about Linux on phones?

I hope that openSUSE is going to see some heavy development over the next couple of months/weeks. And whilst I have never actually used openSUSE, I really want to move away from android again.

But till more people can comfortably daily drive android, it will probably take a lot of time and effort, especially when it comes to app support.

To end this post, I wanted to highlight a somewhat funny /e/OS bug, the fact that I’m unable to toggle my flashlight. I already skimmed through all devices in /dev, but I fail to find the flashlight. Which means that droidian was able to beat android in one category: turning on and off the flashlight.

Footnotes:

1

Obviously HalloWeltSysteme (the company behind the volla phone) invested money and effort into vollaOS and Ubuntu Touch (but as mentioned above, I’m unable to spend >€300 on a phone2)

2

I’m currently a student without income

3

The openSUSE GSI announcement was only made later this year

4

Also the OS had to be free (for obvious reasons) and allow me to install desktop apps

5

Ubuntu Touch’s own app store

6

I’ll be referring to Ubuntu Touch as UT from here on

7

Similar to Anbox, this runs on Wayland and somehow allows you to install android apps in Linux

8

the axolotl signal client is missing some basic features and my profile-picture would not be visible to my contacts

9

UT feels more like it is trying to build its own ecosystem similar to android

10

Mobian is basically a Debian based Linux mobile distro

11

My experience with debian-stable wasn’t as bad as I made it sound like, I’ll get to that later on

12

Droidian also had no GPS or auto-rotate support

13

I don’t care about auto-rotate or GPS, but Bluetooth is a must

14

I was using the edge repo, so updated would be released every other day

15

Scrolling did not work properly, and they did not adhere to the system theme

16

As of android 10, even rooting the phone is not enough - I might end up doing a second blog post about this topic

17

I used the Gentoo prefix on my old phone as a home screen, to be able to access as many Linux CLI features as quickly as possible

Author: Jakob Meier (comcloudway@ccw.icu)

Date: 2022-06-18 Sat 10:00

All content is licensed under CC BY-SA 4.0