Creating a real GNU/Linux phone os

I just want Linux on my phone. I love Android, it has a decent app ecosystem. I like the idea of Ubuntu Touch but I absolutely don't like the design guidelines. The problem is that both operating systems are missing the things from Linux I like. Technically they both run on a version of the Linux kernel but what I want is the GNU userland, Xorg/Wayland, the Filesystem Hierarchy Standard, and my own choice of desktop environment or window manager. 

I know quite a lot programming languages enough to make some applications, I dont want to learn 3 new ones for 3 mobile platforms. I don't want to write my app in javascript, java or swift.

My ideal phone operating system

  • A normal Linux distribution with one of the existing package managers and repositories. My preference is apt with the Debian arm repositories.
  • My own choice of DE/WM. A phone specific window manager would likely be the best choice but if I want to run i3 with a custom mobile bar and a daemon that converts touchscreen gestures to i3 command then that should be just a apt-get away.
  • LightDM or GDM, So i can mess with one WM and be able to switch to another one if I mess it up.
  • Don't restrict apps to a store, programming language or toolkit. The Ubuntu Touch community is already creating apps that are "responsive" in qt5. Maemo on the N900 runs GTK2 and qt apps just fine (with a heavily patched GTK2)
  • Themes! I personally don't like default Ubuntu theme, especially the launcher button (what is it? a square? a circle?) and now they build a complete theme around that ugly button. This wouldn't be a problem if I could switch to Adwaita on Ubuntu phone... or another color at least.
  • Have a separate workspace for portrait and landscape orientation so I can switch between apps by rotating the phone (But copy the holding mechanic from Maemo. If you rotate the phone while "holding" the screen with your finger it won't rotate)

I have used various mobile operating systems. So far my favorite is Maemo but it's quite outdated and only runs on very old hardware. The most important thing: it works fine. The thing runs a sysv like daemon manager. It runs Xorg. It has a very usable DE (harmattan) that supports multiple windows and also the old app indicators. The closest to this experience currently is SailfishOS.


It's mentioned in every smartphone operating system release: more productivity, better integration with x cloud. Now running two apps at the same time! 

I've never been more productive on a phone than the N900. I had a terminal open and created a maemo app in Python / GTK2 with vim. A browser window open with a few tutorials. Libreoffice open to make some notes. This works because it's a desktop operating system with real multitasking and quick switching between applications (not because of some split screen support gimmick). The applications have a normal life cycle (not suspended when you unfocus them for too long) and very quickly switchable with the physical keyboard. If I want to debug a weird wifi problem: just start wireshark. Forgot a password? just run aircrack. This thing does everything.

Then I'm downloading a few gigabytes of java, tools and libraries just to create a hello world app for my android phone. Which for some reason has problems running more than a few things because it only has 2G of RAM. 

What am I waiting for?

That device that runs on a fully mainstream Linux kernel. That runs a fully open bootloader. For development maybe support booting from SD cards. Once that layer works then it would be possible to just flash an SD card with Debian mobile or Archlinux Arm and install the de / applications I need with the package manager.

Wouldn't that be nice.