Which

Phone

to get to run

Mobile Linux

on?

Outline

  • Introduction
  • What is this about?
  • What is this not about? 
  • Devices
  • Let's discuss!

Who am I?

Who's here?

Raise your hand if 

  1. This is my first exposure to running desktop-ish Linux on a handheld device
  2. I have been to this dev-room in the years before (or attended similar things before and feel somewhat familiar with the topic)
  3. I have ported a device to $OS and it's going great
  4. I am building my own hardware, suckers!

(if new people)

Common Problems

  1. Be warned: Reliable audio is a challenge, still
  2. some Bluetooth profiles (e.g., the one for in car-use, HFP) are often not properly supported
  3. VoLTE (Voice over LTE/5G) depends on your carrier, so just because VoLTE works with $device on $other_carrier, that does not mean it will work for you
  4. No RCS (Rich Communication Services, SMS/MMS sucessor) support on any #MobileLinux OS so far
  5. While GPS works on many devices, without AGPS (and similar tricks) you'll wait a few minutes to get a fix and  see that dot on the map

What is this session about?

  • Discussing hardware options
  • Sharing knowledge
  • Finding the right device for you (hopefully)
  • If new: Knowing what you are getting into (maybe)

What is this session about?

  • Discussing hardware options
  • Sharing knowledge
  • Finding the right device for you (hopefully)
  • If new: Knowing what you are getting into (maybe)

What this (IMHO) should not be about

  1. Placing blame on people who did the hard work to port a device
  2. Finding the 100% libre, blob-free unicorn device (it does not exist and sadly does not seem too feasible)

Devices

Intro

In 2020/2021 the answer was easy: Get a PinePhone, or if you have pre-ordered it or are made of money, get a Librem5.

Since then, it's gotten more difficult.

And then a little less difficult.

Maybe.

 

1. Devices sold with Linux

a) "Close to Mainline" Devices

Purism Librem 5

  • Late 2017 Crowdfunder, Modular, NXP i.MX 8M Quad, 3GB RAM, 32 GB eMMC

  • massive delays, software/hardware enablement initially behind a certain popular device we will talk about next

  • USA-made variants for patriots or people who want 4GB of RAM (SoC maximum) and 128 GB eMMC

  • development paused after "PureOS Byzantium" (≈ Debian Bullseye) was considered ready - or due to financial issues?

  • lately there's a small (but steady) investment in software dev again, seemingly stuck

  • you can join a subscription to fund software development if you want to, follow https://social.librem.one/@dos for progress (including awesome camera improvements)

PINE64 PinePhone

  • https://pine64.org/documentation/PinePhone/_full/
  • Widely delivered since 2020
  • GPU: Mali 400 / OpenGLES 2.0 only
  • Ships with outdated, unmaintained distribution pre-installed
  • The web has not become lighter since 2020, and as everything else becomes so much

  • Declining developer interest

  • Likely be sold for another two years

  • No longer recommended (fight me)

The PINE64 Model ...

  1. PineStore Ltd: Comes up with and sells devices
  2. pine64.org Community: Enthusiasts and Developers that try to make these devices work

 

This did not always go well:

These two parts are not entirely disconnected, before PineStore goes public with a new device, select Community Members know about/have devices and start working on them.

PINE64 PinePhone Pro

  • Introduced in late 2021, started shipping in 2022.

  • poor battery life (and keyboard dock (had issues) no longer on sale)

  • thermal throttling

  • probably never ready

  • get it if you won't listen

b) Halium Devices

  • Various devices by Volla sold with Ubuntu Touch preinstalled (Mediatek chipsets, select devices have VoLTE support!)
  • FuriLabs FLX1 (Good reviews, but not available since ~February, "sister device in planning")
  • Jolla C2 (Unisoc)

if new people: What does Halium/libhybris mean?

Why? What's the difference?

Problem

  • Chipset vendors do provide drivers for Android
  • These are usually not ready to be integrated in the proper kernel.org kernel: Userspace blobs, code style, ...

Solution

  • There are two ways to fix this:
    • Re-implement drivers so they get accepted into Linux
    • Or go another route

Halium
architecture

 

Source:
https://halium.org/

Watch List

 

  • RK3588s
    • Liberux Nexx (failed crowdfunder, but still going)
    • Dawndrums Divine D

2. Devices sold with some other OS (usually Android)

Software projects have device support lists, e.g., for mainline distros:

and for distributions that (usually) make the vendor kernel work with a Linux stack

Highlights (close to mainline)

  • Pixel 3a (XL)
  • OnePlus 6 (T), XIAOMI Poco F1, Shift 6mq 
  • Fairphones 4, 5

Halium/libhybris? You tell me!

And with that, let's discuss

Thank you!

Notes

from the discussion afterwards:

  • I tried to explain why running Linux on ARM is harder than x86_64
  • Guido mentioned that there may be a nlnet-funded RCS project soon
  • Healthcare issues: Hearing implants, Insulin pumps, all devices that need Bluetooth connections and companion apps to work. Waydroid pass through would be really important for this
    • alternatively: Re-implement apps with Bluetooth LE support natively; may be less hard than assumed as BLE protocols are not too complicated and similar across devices
  • There was also talk about Android-based options, and VMs on Android

Which Phone to get to run Mobile Linux on?

By linmob

Which Phone to get to run Mobile Linux on?

  • 111