There are quite a few people out there who want the same Linux on both their smartphone and their PC. Perhaps the best known of them is Canonical's Mark Shuttleworth. He tried for years to ignite a market for Ubuntu Linux running on tablets, smartphones, and PCs. It didn't work. After years of effort, Canonical gave up on its one operating system for all platforms plans. Dreams don't die. Now, Purism, the open-source laptop and smartphone vendor, is bringing the idea back to life with future releases of its PureOS Linux distribution.
Jeremiah Foster, the PureOS director, announced: "Purism's PureOS is convergent, and has laid the foundation for all future applications to run on both the Librem 5 phone and Librem laptops, from the same PureOS release."
Convergent? Foster explained it means the operating system and its applications will have a "consistent look and feel, as well as the exact same functionality for apps that run on your phone and your computer."
That's easier said than done.
"It turns out that this is really hard to do unless you have complete control of software source code and access to hardware itself. Even then, there is a catch; you need to compile software for both the phone's CPU and the laptop CPU which are usually different architectures. This is a complex process that often reveals assumptions made in software development but it shows that to build a truly convergent device you need to design for convergence from the beginning," Foster said.
Since Purism builds both its own hardware and software, it's in a good position to tackle these inherent problems. Purism started in 2015 as a free-software, crowd-sourced laptop manufacturer. It's hardware is designed to be as free as possible of any proprietary firmware or binary code, popularly known as blobs. PureOS, itself, is a Debian Linux-based operating system. On it, PureOS supports the GNOME and KDE Plasma Mobile interfaces.
Put it all together and Purism has more control of the complete device stack from the chips on up to the interface than any of its competition except for Apple. But, even Apple, which has macOS for its computers and iOS for its tablets and iPhones, doesn't try to run one operating system on both hardware platforms.
With Debian as its foundation, Purism claims PureOS can run on both laptops' power-hungry and fast CPUs and smartphones' power-aware and battery-saving CPUs. It also means, Foster claimed, that "there is a large set of packaged software that 'just works' on many different types of CPUs."
Of course, just because a single application can run on different architectures without re-engineering only gets you so far. For example, an application that looks great on a laptop's 15-inch display won't be so pretty on a smartphone's 5-inch display with its very different aspect ratio.
Purism knows this. To meet the problem, Purism is using "adaptive design." Foster explained, "Purism is hard at work on creating adaptive GNOME apps -- and the community is joining this effort as well -- apps that look great, and work great, both on a phone and on a laptop. Combining the work of the free software ecosystem with Purism's contributions means we can target convergence for all our Librem hardware line: both the 13- and 15-inch laptops and the 5-inch phone."
Developers will also be able to customize their applications for PureOS by using the open-source libhandy. This is a GTK+ and GNOME mobile and adaptive presentation library. It's packaged in PureOS and Debian. Programmers can also use it in flatpaks, simply by including it in your Builder flatpak manifest.
Will it work? It looks promising. But I've ridden in the one operating system for many platforms rodeo before. It's not an easy ride. That said, there's long been a demand for a mobile Linux-based operating system that's not Android, so there are customers out there. Purism has beaten the odds before. I won't bet that they can't win again.