Hacker News new | past | comments | ask | show | jobs | submit login
Librem 5 design report (puri.sm)
153 points by OberstKrueger on May 10, 2018 | hide | past | favorite | 62 comments



I'm pretty excited about the Librem 5, if it comes out even halfway decent it'll be my next phone. I'm basically banking on my current phone lasting just up until their release day.

When they initially launched their campaign I was a little pessimistic about the whole thing. But since then I've realized a couple of things:

- I really dislike the current trend in phone hardware, and Librem will fix most of those problems (kill switches, replaceable battery, etc...)

- Most of the focus on the latest and greatest phone hardware is wasted on me, especially if I can control the entire software stack. Using Linux a lot has since taught me that high performance is often only necessary because large tech stacks with mandatory upgrades degrade heavily over time. And I don't really do heavy graphical work with my phone, so I just need good enough performance.

- Most of the focus on app compatibility is wasted on me. Android has a ton of apps, and theoretically I could learn Java and develop more of them... but, I don't like Java, and I don't like Android's development experience, and most of the apps I download are trying to hack support between my phone and my desktop anyway. Ironically, I would probably be able to get better integration and more useful software for a phone running Linux.

When their campaign was first announced I know a lot of people (myself kind of included) were thinking "well, it's never going to compete with Android." And at some point, something flipped in my brain and I realized, "I don't care."

It doesn't need market penetration, it just needs to be more useful for me. If they can build an experience of even just decent quality, then that'll be an improvement over my current Android situation.

I've grown more to realize that I really value controlling my own software stack, and that the more I control my own software stack, the less I care about stuff like 3rd-party compatibility, because... well, it feeds into itself. I don't want to run much of that 3rd-party stuff anyway because I can't control it.


> I could learn Java and develop more of them... but, I don't like Java, and I don't like Android's development experience

This is the big selling point for me, android is the most insane platform to build software for I've ever experienced, I want to make apps but there is just too much tooling involved. With this I (hopefully) just need main.c and a makefile to start throwing stuff together.

I also want a half way point between androids complete disregard for user privacy and apples walled garden. Give me a distro with safe vetted apps but let me out of that safe space when I want.


Yep! I’m pretty excited to be able to make my own crappy little apps with Python and GTK.


I'm going to be able to write mobile apps in rust.


That's how I felt ten years ago with Openmoko. Freerunner was my first smartphone. Best decision :)


>> "I don't care."

I realize that many people love their various apps and in some cases depend on them (I imagine any one using square) but all I want is a web browser, sms and if I have to: phone calls.

Though I'm very much in the ~200$/3yr range for phones so I probably can't afford one anytime soon.


Decent, modern web browser and web apps that don't consume all of the device's RAM are the only things that I would need to make my Nokia N900 perfect again.


Calendar, email, signal. And music to play in the car.

I can live without the web browser.


maps and navigation?


I realize that I'm very much not typical here, but I use a dedicated GPS in my car back from before I had a smartphone. I like Garmin maps a lot better than I like Google Maps; their interface is more functional and their routing sends me down fewer side streets.

For walking around, Google Maps works fairly well in a browser, and it will not take long for someone (possibly even me) to build a dedicated app. Worst case scenario, stick Google Maps inside Electron.

Again, not arguing that would be sufficient for everyone. Just that it would be sufficient for me, and that's good enough. I don't need to care about a general solution if I'm buying a device for myself.


These all work fairly well in modern web browsers.


Navigation in a browser? Like, typing a destination and getting proper driving directions - like, a lane info, real-time route updates in case of known road accidents ahead, etc?

I beg your pardon, but I think this is something yet non-existent with webapps - the best you can get is a prepared list of directions, and maybe you can set the tab to auto-update once in a while. And this is something any half-decent navigation app does.


> but, I don't like Java, and I don't like Android's development experience

Android now has Kotlin officially supported. Kotlin is easier to learn than Java IMO.


It’s not the language I personally can’t stand, but the whole tooling and build experience. Horrid. Also Maven/Gradle/JVM package and build management in general frustrates me.


Perhaps Google and Jetbrains will replace Gradle with Bazel in Android Studio sometime soon.


The whole java/kotlin (jvm/dvm experience) is a big turn off. I really wish for go/swift first-class android development experience.


That would never happen.

Go team's efforts for NDK deployment were always on their own without any major support from Android team.

Unless you are targeting pre-5.0 devices Dalvik is history, ART is the new runtime system for JVM based languages.

Which even if they would drop them, it is quite clear they would either be replaced by the Web stack (PWA/WebAssembly) or be based on their Flutter ongoing experiments with Dart.


I need to have slack and a few other apps when I'm on call... well, i dont REALLY. all the on call apps we use have SMS/phone fallbacks, but having some native tools for handling these things is definitely a lot more convenient.

But other than that, using matrix as the default messaging app sounds great. Maybe I can pull some people off of hangouts. And I can't imagine a world where a phone like this doesnt have an OTP generator.

Web browser, chat client, OTP... I really don't use my phone for much.

Pretty sure this will also be my next phone assuming it turns out even half decent (i had backed the Ubuntu Edge back in the day, but I haven't backed this, I've given up on kickstarting/indie-go-go'ing things)


Unfortunately, my primary use case for my phone is pleco and wechat. Pleco might be persuaded to release something for linux. It seems pretty clear that wechat won't (though there is a web interface to it...).

The other nasty implication to wechat being the primary use case is that a phone without notifications is essentially worthless to me.

I'll get the Librem 5 anyway assuming it's halfway decent; if they can make this work at all, the project needs support.


I, for one, don't understand the push for Gnome here. I am a backer of librem, and I really don't get it.

KDE Plasma Mobile is something that actually cares about mobile, is developed by an actual community and still needs a lot of work. Developing another Mobile Shell, on Gnome (that don't seem to care about anything else than Linux desktop) feels like NIH and a waste of time and resources...

Doing a Mobile Shell (+toolkits +all basic applications) that works reliably is a lot of work and doing it twice is a bit sad.


The impression that I get, with no basis in data whatsoever, is that these days, people that explicitly like KDE use KDE, a few people with strong opinions or definite resource restrictions use other environments like XFCE, LXDE or a tiling window manager, and pretty much everyone else is using GNOME, and so the momentum is behind GNOME, with even Ubuntu recently switching back to GNOME.

I think that this is targeting the sorts of people that are more likely to be familiar with and like GNOME than KDE, so there is advantage in using the same software, and producing software that will be able to, as depicted, run on a laptop as well as a phone without feeling out of place anywhere.

Note also that they’re working with both GNOME and KDE, so that both will have first-class support: https://puri.sm/posts/librem5-gnome-and-kde-collaboration/, https://puri.sm/posts/gnome-and-kde-in-pureos-diversity-acro... (that latter link includes content very similar in meaning to my remarks above).


There's a fair bit of people who use GNOME because it's the default (in their distro), and if I made an unsubstantiated assertion that those people outnumber those who are discretionary, deliberate users of GNOME, I don't think I'd be wrong.

But Purism's project is heavily focused on relatability and advancing the community's current state-of-the-art [1], which is different from the more common model we've seen from other players, where they start fresh, get it working, dump the code in a public repo where it sits largely unused because it's so divergent and specific to their custom setup, and although the code is technically open, much more effort is required on part of volunteers to apply that anywhere else.

Purism seems intent on actually architecting their software such that all of it can be upstreamed. GNOME, which doesn't have a strong answer to a touch-first UI metaphor, can greatly benefit from this. KDE has already done a lot of this hard work, so in a post like this, there would be fewer custom things to show off.

[1] https://puri.sm/posts/librem5-gnome-and-kde-collaboration/


But isn't the whole mobile story so far telling us, that it's more important to build something which just works good (enough) for the people, instead of building something which they are already familiar?


Nokia already tried this with Maemo/MeeGo, and they eventually bought Trolltech (and hence Qt) and went that route. Ubuntu Touch (although not a community project) also used Qt5. Sailfish OS (successor of Maemo/MeeGo/Moblin) also uses Qt. And both use libphys by Carsten Munk et al for the Android emulation layer (you are going to need backwards compatibility for your users). Why not follow the footsteps of giants instead of trying to reinvent your own path? Why not base your OS on either of these?


The funny part is that Purism was originally going to be based on KDE, then they switched and said it would support both KDE and an in-house environment based on Gnome. Now they seem to be saying it will be based on the Gnome boondoggle.

Can't say this gives me much faith in them. Totally agree about the wastefulness of coding your own UI from scratch.


This comes up in a recorded Q&A with the CEO, here: https://m.youtube.com/watch?v=XVw0EhYccu4

It’s been a while since I watched it, but IIRC it comes down to control, and being able to decide which parts to focus on before the thing ships. IIRC it sounded like Purism’s efforts are the GNOME roadmap, and they’re hiring GNOME developers. That makes sense if you have to ruthlessly prioritize to ship on a deadline.

I wouldn’t be surprised if Plasma Mobile ends up being the superior shell in the fullness of time, but I’d be happy to give GNOME a go.

It would be kinda annoying to reskin an app from GTK to Qt, but it probably won’t be necessary a lot of the time, and if it is, it seems like a pretty minor annoyance in the grand scheme of mobile development.


As someone who is using Linux (on/off Desktop, continously on servers) since root.tgz times:

Frameworks and window managers did their share to splinter and prevent Linux Desktop, why shouldn't we try again to prevent Linux mobile becoming a thing?

But if this is a phone for Linux enthusiasts, why not?


I think it's pretty simple: Gnome has the momentum and seems relatively a stable-ish (well, stable for Linux) choice that to a business probably seems like a safe bet.

As someone who's been reluctantly using Gnome 3.x as a primary DE for years now, I think you're completely off-base and that Gnome seems to care about anything but the desktop (see swipe up to login on a desktop, for an obvious example) It would be great to see something better, and more community oriented, displace Gnome but I don't see it happening any time soon. A combination of lack of resources and inability of the alternatives to get their acts together seems to all but guarantee Gnome's dominance for the foreseeable future. Seriously, they need to pool resources, come up with a coherent plan and execute. How many desktop environment forks exist now fighting for the same 5-10% of users? Sure, choice is good but if they lack stability, features, polish, etc for years on end... well, Gnome wins by default.


Yeah, it feels very Openmoko-like, in a bad way... The only difference is that Openmoko's NIH syndrome affected also work done earlier by Openmoko itself ;D


Prisum's phone is the only smart device I have actually looked forward to. Finally having a vanilla solution the community can work with and improve, distro independent.


I tried to fight off the urge to get excited about this phone but I can't anymore (been disappointed many times by linux-based phone plans). Librem, you now officially have a place in my hopes and dreams. I'm really excited.

> As the implementation of the Librem 5 goes on, we are quite aware that time is limited given our January 2019 target, and we are therefore focusing on robustness and efficiency for the first version of the mobile UI shell (“phosh”), which we wish to push upstream to become the GNOME mobile shell.

Terrific! I love Gnome shell and use it every day, and I'd love to have it on my phone. Those mocks looks great!


Happy to hear they're going with a decent size battery over the thinnest possible form factor.


I am a bit sceptical. What kind of quantities are they shipping? I can’t imagine it will be hundreds of thousands. Even at quantities like 50.000 it seems to me it would be very difficult to source a custom designed screen/touch at a reasonable price. At 50.000 it would probably even be difficult to find someone even considering delivering the order


Why would they need a specially designed screen? I would guess that they're looking at what's on offer from various vendors and comparing them to see what works, right?


Most of the time the touch and display is delivered as one module (similar to the iPhone where the whole front is one module) The front would probably need to be customized so it fits their design and they would probably need a flex designed also so it fits with their board design... maybe they are designing their board around an off the shelf display module? It’s usually a puzzle - not easy


Based on the preorders here: https://puri.sm/shop/librem-5/

... looks like less than 5000 units have been ordered.


I'm interested in what work they're doing on UI, rather than hardware design. Devices like these often lack polish, so I'm curious what solutions they've come up with.


Very excited for this, but 5.7" is monstrously large. Still can't wait.


5.2" is the maximum for me because if it's bigger I can't reach the top of the screen with my thumb holding the phone normally.

Still wish them to succeed and I'd like to buy a "mini" librem phone in a few years


Same to me, but I'm a backer. I already think about overriding screen resolution to pin down a screen.

edited: typo


>We are now aiming for a 5.5″ to 5.7″ screen with a 18:9 ratio

A 2:1 ratio?


Yeah, that’s a bit of an odd way to write it. I guess it’s intended to be easy to compare to 16:9, 21:9, etc.


2:1 phones already exist. If you're set on an unreasonably large diagonal, the extreme ratio helps, by making the phone thinner (left to right) than it would be with a normal ratio and the same size diagonal.

It'd be even nicer if they'd do reasonably sized phones, though.


I love the contacts integration. I wish there was also some way to send SMSes directly from your computer to your device without sending to a 3rd party (outside of your service provider and receiver).


Considering the Librem5 is essentially Just Another Linux System, this would be fairly straight forward to implement... The most basic implementation would be something like a script that you run on your computer, that connects over SSH to the phone, and uses ofono's dbus interface to send a SMS.

I haven't been as excited for a device as I am now since the N900.


> Considering the Librem5 is essentially Just Another Linux System, this would be fairly straight forward to implement

This. The moment I started getting really excited for the Librem 5 was when I thought, "half of the problems I'm trying to solve for my phone right now are trivial to solve on this Raspberry Pi sitting next to me. Why isn't my phone running the same OS as the Pi then?"


I know, right? Developing anything on Android, for example, requires Java or Kotlin, tens of GB of SDK stuff and emulator images (if you don't have a device with the specific Android API you want to target), and using Android Studio or fighting with gradle manually. Or you could 'root' your device and fight with Android to run your arbitrary scripts in a severely reduced shell.

I'm sure some Android dev is going to say "but what about blah blah new API new tools whatever?" in response to this.. but my workflow is autotools or meson (and for the Librem5 a crosscompiler) + vim. Or I could write shell scripts using a plethora of cmdline tools and not install anything extra to develop useful, powerful stuff for this device.


I am excited for this phone, for one reason: that I may some day be able to VNC to it from my desktop and use it that way .. or, even better, set it up as a target for Synergy, and simple integrate it into my existing computer fleet as a first class citizen.


Question: is the included monitor in some packages advertising the fact that it can be used as a 'desktop' machine as well?


https://puri.sm/shop/librem-5/

> Enabling the path for a true convergence device, capable to work as a phone, making video and audio calls, encrypted messaging, email, web browser, that can also become a full desktop computer with an option for a compatible keyboard, mouse, and monitor. It can be a desktop computer and phone all-in-one.


In theory it's already there on Linux by using some overlay network (like ZeroNet[1] or ntop's n2n [2]) and KDE Connect (it has "Send SMS from desktop" feature) which works between desktops running K too.

[1]https://github.com/zerotier/ZeroTierOne

[2]https://github.com/ntop/n2n


In the Days Of Yore, before 3G, every cellular network operated an SMSC into which you could dial, with a standard modem, and send whatever texts you wanted to whoever you wanted.

I assume this stopped being open because they figured out that they could charge to send an SMS.


Something like KDE Connect.


Does anyone have more info about the Librem 5's baseband? I know they say it will be separate from the app CPU and have hardware kill switches for all of the components/sensors, but I'd love to hear more about the firmware running on it.


I don't know anything at all about it to be honest, but I can assure you it won't be open. It'll almost certainly be the firmware provided by the chip manufacturer. If you're lucky, they'll have some (but likely very limited) ability to slightly modify/tweak it.

That is the killer feature I'm waiting for in a mobile phone. Someday, I hope. (Hey, a guy can dream, right!?)


AFAIK modems with open source firmware are banned in 100+ countries including US (I lost the source where I read about the global situation, in US there are FCC restrictions).


Well, at best it could be "open" in a tivoized sense, but nothing more than that.


> Not android

For what reason?


Differentiating themselves within the market isn't too far from the list of reasons, I'd suspect. Who would be reading about this if it were just another Android mobile phone?

This is targeting a small market of Linux enthusiasts with a different kind of operating system. If this were running Android, why wouldn't those enthusiasts just buy one of the market-leading phones and use a well-supported ROM?


I think that they are aiming at using a mainline Linux kernel to make it resistant to the prevailing Android problem of lackluster updates.


Running mainline Linux is way harder as it requires decent support most android devices do not have.

Linux almost implies Android will also work. It'll surely be an option.


Because then it would be a yet another completely unremarkable and uninteresting device with no reason to buy it, like other Android or iOS phones.




Join us for AI Startup School this June 16-17 in San Francisco!

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: