2023 04 27 librem5 and mobile linux

It's been somewhere around a year with my Librem 5, and something like 3-4 daily driving a linux phone, so I figure it's time to do a quick recap of where things stand. My experience has been almost exclusively through Phosh (Mobian and then PureOS), so it's worth noting that UBPorts, Plasma Mobile, or SXMO might offer a better experience. There's also a new Gnome Mobile on the horizon, but that seems to share a lot with Phosh. Additionally, I've heard that the OnePlus 6 (which appears to have solid PostmarketOS support) may address some of the hardware limitations I currently face.

The Big Picture

Compared to where the ecosystem was when I got my original Pinephone, there's been a mountain of progress. Progress continues, with major announcements every month or two. My current configuration has reached a point where I'm entirely happy with my phone. That said, I definitely would not recommend my setup to a non-technical person, and would still be concerned that it would be too many papercuts even for someone who knows what they're doing. Still, things are headed in the right direction.

Day-To-Day Usage

Calls

My PPP still has issues with audio (calls or otherwise), but the Librem5 has been solid in this respect. Phone calls, speakerphone, all work well. It even seems to generally do the right thing when the phone is docked, picking the dock speakers over the internals for speakerphone. There's no built-in spam detection, which is a drawback, but I gather there are some external tools that provide it as an add-in. In short, it works as a phone.

Visual voicemail is also an option, but does require additional work on the user's part to install vvmd, and look up your carrier-specific visual voicemail settings. There's also an ongoing issue with T-Mobile, where the IMAP servers (yep, that IMAP) that host their VVM data are misconfigured. A fix is currently making its way downstream.

Text Chat

Chatty is a decent SMS app, with support for MMS. There are a few client-side lag spikes here and there, usually when trying to load a chat with a large number of pictures, but overall it's usable.

My other major chat protocol is Matrix. Element, in principle runs, but doesn't offer an electron build for arm64. In principle Chatty supports it, but support is buggy. FluffyChat and Fractal-Next are both available, but the latter is still in development, and the former has an ongoing bug involving GPU access, Flatpak, and Flutter. That all being said, I recently revisited Nheko, and have so far been really happy with it. The UI is a bit quirky, but it works.

Web Browsing

Firefox has been usable since the beginning, with solid Arm64 support. Gnome Web is getting better, but still ends up being jittery on pages that FF loads without difficulty. My one gripe with Firefox is that, although there's a mobile-friendly stylesheet applied to the interface, it's still a bit buggy. Extension menus, for example, are unusable. Still, I haven't had any difficulty browsing web pages.

Alarm Clocks

My Librem has been waking me up reliably since September. There were some hiccups early on with my Pinephone [Pro], where Gnome Clocks wouldn't wake the phone from suspend. This was fixed a few kernel revisions ago, and now I'd trust both platforms to wake me up.

Music

There are a ton of Phosh-friendly music players. I used Lollypop for a while, and was pretty happy with it. Recently, Cantata has taken over (since I can also use it as a remote for my home stereo). Amberol is also quite nice (but leaves it up to you to organize your music).

Data Sync

SyncThing keeps most of my stuff synced between computers. No question about it, SyncThing is awesome. It fills the void left for me when Dropbox and I went our own separate ways. Most of the time, I don't even realize that it's running... it just works.

A few things (notably stuff I want to share) gets stored in a NextCloud instance. PureOS and Mobian both benefit from solid Nextcloud integration into the Gnome ecosystem here. Nextclout syncs Contacts, Calendars, Todos, and gives me quick access to my shared files.

Also a quick shout out for Valent. This is an implementation of the KDEConnect protocol that works with Gnome and Phosh. It integrates a lot of capabilities between devices. For example, with it running on two linked devices, media keys on one device will control a player on the other device. Similarly, if you open a web page or sms:/tel: link on one device, you can relay the link to the other device.

Tickets / Club Cards

Quick shoutout to an excellent plugin for phosh that lets you make a bunch of PDF files accessible from the lock screen. I use this for a few frequent shopper cards, as well as tickets with QR codes. Bonus: I can keep the directory synced with SyncThing.


Mostly There

Mobile Connectivity

LTE connectivity has improved massively since I started. Both the PP[P] and Librem5 used to have issues where the modem would spontaneously disconnect. With a recent kernel update, the Librem5 no longer has this issue at all.

Battery Life

The PureOS team has been hard at work on stretching the Librem's battery life. I can get a realistic 6 hours out of it now, which is enough that I don't feel like I need to keep the phone charging at all times. The PPP has 10+ hours of standby by comparison; it drains faster when in-use, but suspend is still an "in-development" feature on the Librem 5. The iMX8m also has a few anti-features that make power-management more difficult (e.g., it doesn't seem to have support for low power core idling). Still, once suspend lands, I expect this to stop being a concern.

Navigation

PureMaps is great. Navigation, directions, the whole bag. GPS on the other hand, is still a work in progress on the Librem5. There seem to be a few minor glitches in how the modem communicates GPS data back to the phone, so whether the phone gets a GPS lock on a given boot is a bit of a coin filp. I haven't tried it in a while, but the Pinephone Pro with Mobian seems to be better about GPS.

Camera

The camera app (Millipixels/Megapixels) is nice, and getting better. The PureOS folks just landed a self-tuning feature to the camera itself. The only reason I have 'camera' in the Mostly There column is because the camera hardware isn't exposed to userspace as a camera device. Millipixels can talk to the raw camera interface, but most other apps (e.g., video conferencing apps, web browsers, etc...) don't see a camera yet. Still, this is something their folks are hard at work on.

Calendaring

Gnome Calendar has some issues around time zone support. It's also not fully mobile-friendly yet. That said, there's an excellent Phosh plugin that puts a list of upcoming events on the lock screen.

Email

Geary is a reasonable email client. However, my org disables IMAP in Office365. That limits me to Evolution or Thunderbird, neither of which have mobile-friendly interfaces. I could get by with personal email, but thanks to a spate of spearphishing scams that my org gets regularly, signatures (which Geary doesn't support) are also a must.

Not There Yet

Convergence

One of the biggest selling points of linux phones is the fact that they can be plugged into an external display/keyboard/mouse and run desktop linux apps. The biggest win here is that you, in principle, only need one computing device. Better still, you get continuity of state between interaction modalities: You can just grab your phone out of the dock and continue editing or reading while e.g., riding the bus. You can load a movie on your phone and then just connect to a projector.

SyncThing and Valent subsume a lot of these needs by allowing you to migrate state between devices dedicated to a specific interaction modality (files, and browser state, respectively). Valent in particular offers an interesting (if limited) form of convergence, by exporting device-specific capabilities (SMS, Calls, notifications, browser tabs, etc...) so that they can be accessed from a different device when the two are nearby. Still, it would be nice to reach a point where I can just start typing a text and then plug in a big screen and keyboard.

That all being said, I have occasionally tried to use my phone as a desktop replacement, and it has not stuck. I know several people who are successfully convergencing, but all of them have workflows built around the terminal. I can see that working. Unfortunately, the phone's 3GB of ram and internal GPU struggle to keep up with the workflows I've gotten used to on the desktop. e.g., Editing a LaTeX doc in SublimeText and compiling it is not unpleasant, but not as smooth as it is on my existing laptop or desktop. I likely would not use the phone for anything more significant. I gather from folks with a OnePlus 6 that the convergence experience is much better. While I expect a motherboard upgrade will be required first, I fully expect that we'll get to this form of convergence eventually.

What I'm less sure about is the Laptop/Tablet convergence story. The NexDock2 is a wonderful piece of hardware, but has some critical ergonomic limitations. First and foremost, the NexDock requires actual thought to set up. I have to pull it out, open the display, swing out the phone mount arm, attach the phone, dig out the USB-C cable, plug it in, boot up the dock, and then power on the phone. By comparison, with a regular laptop, I just pull it out. Second, mounting the phone on the dock destabilizes it. The Librem5's weight on the display destabilizes the friction-based hinges, making it difficult to use on a lap or in a moving vehicle. The device is decent in tablet mode, if a bit top-heavy due to the phone's weight. Honestly, these would all be reasonable trade-offs... but the big issue is that the NexDock is not lighter than a normal laptop. In fact, it's heavier than the Librem14, and about the same weight as my Framework. There really isn't a compelling reason for me to cart the NexDock around at the moment.

Most of the weight is in the battery and display, so I doubt there's a lot of room for weight savings. Rather, I think what needs to happen is someone figuring out the ergonomics of setting up and putting away the "laptop." Even just getting rid of the cable would be huge. One thought: Back in the mid 10s, Asus had a line of convergent phones called the Transformer. Here, you would put the phone into a slot in the back of the screen. You lose the phone's screen, but there's no faffing about looking for a display-compatible USB cable in your bag.


This page last updated 2024-05-01 13:27:59 -0400