This will also go via their feedback e-mail, but I will leave this here for the benefit of the community. I will cover hardware, software and Purism PR. The Librem 5 has been my daily driver for a couple of months now and I’ve been to different countries with it. I am an awful programmer, but a very experienced sysadmin. I’ve spent 6 months reading everything about the Librem 5 (including every single blog post by Purism and all I could find on the Internet).
I am referring here to the evergreen batch.
I love my Librem 5 and I haven’t been this excited about technology since the days of Windows CE handhelds. It’s amazing to finally OWN a pocket computer that will just run WHATEVER I want to run in it, to be able to prototype small applications to help my life in a few minutes and to actually be able to know what is running in it at all times.
The hardware is discreet, yet effective. Linux is a known old (but difficult) friend. The phone is fine and the user experience is fine, and I love it for that. It won’t have all the sensors of an iPhone, or a 3D camera with a 600Hz screen, or a 7 day battery life but I need none of these things. I have a real camera to take pictures. I prefer to game on a PC.
As a communications and productivity device, the Librem 5 nails it. I can easily work remotely using VPN and a Terminal, edit documents anywhere using an external screen. Calling via Signal and Skype works fine under Waydroid. My contacts are synced via DAV. I can send and receive messages fine. Connecting it to an external screen gives me GIMP, GNOME Builder, a desktop-class web browser and I don’t need to carry my laptop anymore when I know the place I am going to has a monitor available.
The Web browsing experience is also fine. GNOME Web has a more pleasant interface, but it’s way slower than Firefox. Firefox, however, wastes more screen real estate. Right-clicking and using menu options sometimes results in flickering and misclicks. Tweaking Firefox settings is a must for a good experience, but you must know what you are doing and what you are looking for.
The Librem 5 it’s not yet on a level I could recommend it to the non-tech-savvy. Some of my friends got really interested in it but just don’t have the skills to go around the issues (the same reason why they haven’t yet left Windows behind on their computers). Purism is nearly there, though. For the tech-savvy, privacy-oriented, or someone wary of planned obsolescence, the Librem 5 is the best phone out there.
- The hardware is honestly great. I love the fact that we are not running everything out of a SoC, despite the power inefficiency. I am coming from a Cosmo Communicator, and I bought the phone without properly researching, and got burn by the fact that you are basically completely dependent on the SoC vendor to provide newer drivers.
- I like that the phone is thicker, although perhaps it could have been a bit thinner. Ultra-thin phones make me afraid that I will drop them. I’m never afraid I will drop my Librem 5.
- The CPU is fast enough. I don’t expect my phone to be able to do real-time raytracing. More on that later. The problem is the software.
- The hardware switches!!!
- The headphone jack!!!
- Replaceable modem and wifi!!!
- Replaceable battery!!!
- The back cover could have been of the “slide and pop-out” kind. The first time I opened the back of the Librem 5 I was afraid I would break it.
- I’d have loved a second USB port, for the times where you find a random USB-C monitor or docking station that fail to provide power. I loved the fact that the Cosmo Communicator had 2 USB-C ports.
- An extra GB of RAM and double the storage (not Purism’s fault, though - more in software)
- I really wish we could get better open graphics drivers to unlock the full potential of the GPU…
- The battery life is fine for my use. I understand that it is not enough for the social-media-content-consumption-addict would suffer but I can easily be out for 8 hours and receive and make calls and browse the Internet when required.
- The screen is fine. I’d love to have an OLED option with a dark theme for the bit extra of battery life.
All right, now to software. Good things and bad things in no particular order, with suggestions for improvement.
Monitoring the phone software health
I had two incidents that got me “smart” about the phone:
- When connecting a Lenovo USB-C charger, the phone would get super hot.
- Sometimes the phone would stay too hot for no good reason (sitting idle) or the battery would just die in one hour.
We discussed the USB-C charger problem in the forums and concluded that the problem is the charger. Fine. However, I can go through logs and help troubleshoot. A normal user would probably have contacted support an perhaps even triggered a RMA process.
The second problem is more challenging. One of the big risks for Purism in maintaining a phone is, at the same time, its strength: it does not have control over the software stack unlike Apple and it is not just packing Android like other vendors. This is really a Linux computer that can make phone calls.
An application that gives me problems often is Feeds (gfeeds). Sometimes it opens to a gray screen and, if I close it, the GUI element is gone but there’s a gfeeds process eating 100% CPU and I must kill it using the terminal. Another application that sometimes hangs for hours (I’ve waited) eating 400% CPU is PureOS Store (gnome-software). PureOS store sometimes just refuses to close. You slide it up, it bounces back down but you have no mechanism via GUI (that I know of) to kill it.
My suggestion to fix the problems are the following (and one of them I will try to implement myself):
- A quick diagnostics GUI application. If the user notices the phone lagging or too warm, even if no application is open, it can sit for a few seconds and quickly go through recent log events and CPU usage, suggesting a fix:
“Charging issues, please try reconnecting the charger or try a different USB-C cable or charger.”
“Application X seems stuck in the background. Do you want to kill it?”
- A daemon that would every 5/10 minutes (perhaps cron?) go through the processes and kill any process that is stuck using 100% CPU if it stays in such way after a determined number of iterations. I will probably write something like this on the weekend and try.
Modern software practices
A few weeks ago, my boss wanted me to find a way to dump the emails generated by our application. He suggested python and a bunch of libraries but I ended up putting together in 300 lines of C a quick fake SMTP server that stores the messages as HTML files. The binary has 4K and it eats almost no RAM or CPU when it is running (input is sanitized and there are no memory leaks).
The Librem 5 runs applications that are, often, not optimized for mobile use or just bloated. Video playback performance is much better in NewPipe under Waydroid (better fps, seems to use less battery) compared to direct playback. Programs eat too much RAM and CPU overall. There’s no reason the Librem 5 not to be a speed daemon,when you think about how limited the first modern smartphones (think iPhone) were in terms of CPU and RAM and yet how snappy the user experience was.
Storage and RAM
32GB is just too little. I’ve never used flatpaks before but, after installing just a bunch of applications and having no pictures, documents or movies, I have only 10GB of storage free. A quick tour of PureOS Store shows me different versions of the same libraries (each eating 500MB+) and I think this is due to Flatpaks. I seriously hate modern software. Throw RAM and CPU at the problem and now we have web pages that load 10MB of assets for 500KB of content and plain text editors that eat 300MB of RAM.
Which brings me to RAM… 3GB is fine if you don’t need Waydroid but the Librem 5 is only a viable daily driver because of it. I need Android for my bank MFA and for the city public transportation application and I also run Signal in there (I can’t configure it otherwise, because I can’t take a photo of the QR code displayed in the Librem 5 with my Librem 5). I wish I had an extra GB of RAM not to have to start and stop Waydroid a couple of times per day.
Webpages are monsters these days, so that extra GB of RAM would have come handy for that as well.
Calls, SMS, roaming, Wifi
Calls work 100% of the time for me, including when suspended.
SMS also works 100% of the time. Sometimes the phone doesn´t wake up from suspended, but I don’t care too much about this.
Roaming: I have an European modem and when I went to Brazil, I had to force 3G otherwise I’d get no signal. A non-tech-savvy user would not have figured it out. Data, SMS and calls worked.
Wifi: it has multiple small problems and data connection is not kept when suspended, but nothing that is not resolved by turning it off and on. Since I have a data plan it doesn’t bother me so much but people who depend on Wifi must keep note.
MMS: I never put too much effort in configuring MMS. I tried and gave up, but I didn´t try hard enough.
Sometimes the phone struggles to recover from low signal situations (such as when I went to my father’s farm) and it stays stuck without signal even after I went back downtown. Turning the modem off and on resolves the problem. In all fairness, my Cosmo also had issues in such situation so I don’t think it is a problem as long as a quick flick of the modem power gets the signal back.
UI use and performance
It is usually smooth. In my experience, the screen animations only stutter when there’s some background application eating CPU. Kill it and problem solved.
I miss the ability to kill an application via GUI. Sometimes you flick an application out and it comes back and there’s no recourse (that I know of) besides going to the terminal.
The keyboard works but it doesn’t help you (prediction/suggestions, auto correct, etc).
Edge detection is poor/nonexistent. Sometimes I am holding the phone with one hand and tapping it with the finger of the other hand and my hand accidentally touches the edges.
PureOS Store (GNOME Software)
The worst software in PureOS. Often it doesn’t load the pages. Sluggish. Often you don’t know what it is doing. Sometimes you try to uninstall software and it says the package doesn’t exist. Error messages grow out of the screen and you can’t dismiss them or read them completely to understand what the problem is.
I won’t get into details because the thought irritates me. Using this application is pure pain.
Geary (e-mail client)
Geary works ok but sometimes touches get intercepted by invisible elements behind the screen. For example, you had an email opened but then you are browsing the folders. You tap a folder but you actually activated the SEND button from the message you had in the foreground before.
So I grew accustomed to using it only to read emails and I only answer from my desk.
Maps, GPS and navigation
I had no problems in getting a GPS fix. GNOME Maps is a very limited application. Pure Maps works, but I struggled a bit to figure out how to build routes and the maps were outdated or unavailable for the region I was at (or didn’t load, I don´t know). I didn’t test turn to turn navigation.
If I had to rely on navigation, I’d probably have problems carrying only the Librem 5.
99% of the problems of the Librem 5 are software related. Almost none of them is grave - I’d probably be able to help with some, but I suck as programmer.
As it is now, it is already the best phone I’ve ever had, just because there’s nothing I can’t do. My Cosmo Communicator frustrated me for being stuck in kernel 4.4/unpatched Android 9. iPhones became bizarrely expensive toys, and I hate the process for loading my own code in them and the whole “phone home every time BS”.
If you are looking for a phone/communication device, the Librem 5 is excellent. If you are looking for a mobile video game, media consumption or if you can’t spend 3 minutes without checking your phone to refresh your social media feeds, then it is definitely not the device for you.
I understand the Librem 5v2 will bring improvements.
Reviews: All the good reviews (from popular sources) are very old and others were made by people who have no idea what they are talking about (No Instagram app OMG!). Time allowing, I will publish my own review but it would be great if Purism could also publish a new walkthrough of the unboxing process, software setup and usage, to show all the improvements.
All the bad blood between the community and Purism: it broke my heart to read some of the blog posts and the stories, and how toxic reddit became. I have no idea how to tackle this but being called a scam is not great. Purism should put some effort in making amends with the frustrated/angry/unreasonable members of the community, as you get much more information about “how the company sucks” than about the phone when you look for information. How much Purism sucks? I don’t know, I can´t tell. I got my phone on ebay and I’ve never needed support.
Product positioning: phones are like cars. In the 60-70s, every driver knew how to change a fuse, check oil levels, etc… These days, cars are big ipads on wheels and people expect their phones to be appliances, not computers. The average user today has no clue about loading drivers in the high memory to run a game, or SET BLASTER 220 5 1. Positioning the Librem 5 as a “Linux pocket computer that can also replace your phone” instead of a “Linux smartphone” would help reset expectations. You are getting a computer, you must have a clue. The Librem 5 does not offer an “iphone-like experience” and probably never will (purism doesn’t control the software stack). The Librem 5 will not “protect my children”. Kids addicted to instant gratification would probably throw the Librem 5 out of the window, if you consider that they find the first level of Super Mario Land too difficult and frustrating.
Blog: too much PR, too little useful information. I had to dig deep to get the real juicy information that helped me make an informed decision about my purchase.
Bad copy paste.