Language Selection

English French German Italian Portuguese Spanish


Syndicate content Purism
High-quality laptops that protect your freedom and privacy
Updated: 16 hours 31 min ago

Librem 5 June Software Update

Wednesday 19th of June 2019 04:27:26 PM

Hi everyone! The Librem 5 team has been hard at work, and we want to update you all on our software progress.


A couple of blog posts back, we mentioned that our hardware engineer gave a talk at KiCon—and it is available for watching now!

Also, recently Tobias Bernard attended the Libre Graphics Meeting, where he had lots of conversation around the future photo viewing application for the Librem 5 phone.

Applications Libhandy

Libhandy v0.0.10 was released and has a slew of cool new widgets! In summary, the new widgets are:

  • HdyViewSwitcher: a view switcher which can automatically adjust its layout to fit narrow screens
  • HdySqueezer: a widget that allows switching where the view switcher is
  • HdyHeaderBar: an advanced header bar
  • HdyPreferencesWindow: an adaptive preferences window for all applications

A nice aesthetic change is that HdyComboRow handles long labels better now—by ellipsizing them.

Below you can see how HdyViewSwitcher makes the Clocks application adaptive.

Below you can see how the HdyPreferencesWindow is used in GNOME Web to make the preferences window adaptive.

We also improved Libhandy’s test suite.


Work has continued to extend wys to instantiate PulseAudio’s loopback module—which ties the modem’s and codec’s ALSA devices together when a call is activated, and de-instantiates the module when the call is terminated. Since this causes conflicts with hægtesse, a scheme was devised to keep both hægtesse and wys from running at the same time.


A chat history is being implemented via an SQLite database. Thank you, Leland Carlyle, for all of your hard work in this area!

Account verification has been added so that now, when you add a new account, a connection is established to the server and (in case of failure) the user is alerted. Thanks to Benedikt Wildenhain for the patch!


We are very committed to providing encrypted messaging when the phone ships, so we have made an extra effort to implement OMEMO encryption, via the Lurch
. Recent changes in this plugin have led us to ongoing integration and testing with Chatty.

There is a padlock symbol in the message bar now, indicating whether the chat is encrypted or not. You can also view your fingerprint—as well as your conversation partner’s fingerprints (see example below). Thanks, Richard Bayerle, for all of your work on the Lurch plugin!

Web Browsing

GNOME Web will benefit from the new widgets released in Libhandy 0.0.10, as mentioned above. Additionally, since recent testing has identified some bugs in GNOME Web, our development team has been looking into some of these issues. The outcome has been the reporting of many of those issues upstream.

Initial Setup

We plan to deliver GNOME Initial Setup in the first shipment of the phone—because it is very important for setting up your environment. Before any major porting effort was possible, though, some design effort was needed—and now porting work is underway!


So many exciting things are happening at the system level!

After many revisions, the librem5-devkit device-tree has been accepted upstream. To prepare for this, the same device tree name is used both in the kernel and in the flash-kernel as well.

The devkit image went through lots of changes, too. Wlroots v0.6.0 is now available, and contains many of our necessary changes. To make the overall experience look nicer, the shell now prefers the dark theme, and the keyboard auto-hides when the app drawer is opened. Detecting corrupted downloads of images has been made faster by adding a size verification. Thanks to Hugo Grostabussiat for the patch! The devkit image has support for the camera, too–and below you can see the devkit’s first selfie

The New libhandy 0.0.10

Monday 17th of June 2019 12:15:23 PM
Libhandy 0.0.10 just got released, and you can get this new version here. It comes with a few new adaptive widgets for your GTK app we’d like to tell you about: The View Switcher

GNOME applications typically use a GtkStackSwitcher to switch between their views. This design works fine on a desktop, but not so well on really narrow devices like mobile phones, so Tobias Bernard designed a more modern and adaptive replacement – now available in libhandy as the HdyViewSwitcher:

In many ways, the HdyViewSwitcher functions very similarly to a GtkStackSwitcher: you assign it a GtkStack containing your application’s pages, and it will display a row of side-by-side, homogeneously-sized buttons, each one representing a page. It differs in that it can display both the title and the icon of your pages, and that the layout of the buttons automatically adapts to a narrower version, depending on the available width. We have also added a view switcher bar, designed to be used at the bottom of the window: HdyViewSwitcherBar (and we’d like to thank Zander Brown for the prototypes!). The Squeezer

To complete the view switcher design, we needed a way to automatically switch between having a view switcher in the header bar, and a view switcher bar at the bottom of the window.

We added HdySqueezer; give it widgets, and it shows the first one that fits in the available space. A common way to use it would be:

<object class="GtkHeaderBar"> <property name="title">Application</property> <child type="title"> <object class="HdySqueezer"> <property name="transition-type">crossfade</property> <signal name="notify::visible-child" handler="on_child_changed"/> <child> <object class="HdyViewSwitcher" id="view_switcher"> <property name="stack">pages</property> </object> </child> <child> <object class="GtkLabel" id="title_label"> <property name="label">Application</property> <style> <class name="title"/> </style> </object> </child> </object> </child> </object>

In the example above, if there is enough space the view switcher will be visible in the header bar; if not, a widget mimicking the window’s title will be displayed. Additionally, you can reveal or conceal a HdyViewSwitcherBar at the bottom of your window, depending on which widget is presented by the squeezer, and show a single view switcher at a time.

Another Header Bar?

To make the view switcher work as intended, we need to make sure it is always strictly centered; we also need to make sure the view switcher fills all the height of the header bar. Both of these are unfortunately not possible with GtkHeaderBar in GTK 3, so I forked it as HdyHeaderBar to, first, make sure it does not force its title widget to be vertically centered, and hence to allow it to fill all the available height; and second, to allow for choosing between strictly or loosely centering its title widget (similarly to GtkHeaderBar).

The Preferences Window

To simplify writing modern, adaptive and featureful applications, I wrote a generic preferences window you can use to implement your application’s preferences window: HdyPreferencesWindow – and organized it this way:

• the window contains pages implemented via HdyPreferencesPage;

• pages have a title, and contain preferences groups implemented via HdyPreferencesGroup;

• groups can have a title, a description, and preferences implemented via rows (HdyPreferencesRow) or any other widget;

• preferences implemented via HdyPreferencesRow have a name, and can be searched via their page title, group title or name;

• HdyActionRow is a derivative of HdyPreferencesRow, so you can use it (and its derivatives) to easily implement your preferences.

The next expected version of libhandy is libhandy 1.0. It will come with quite a few API fixes, which is why a major version number bump is required. libhandy’s API has been stable for many versions now, and we will guarantee that same stability starting from version 1.0.

The post The New libhandy 0.0.10 appeared first on Purism.

Todd Weaver on Digital Trends Live

Thursday 13th of June 2019 05:55:06 PM
Data privacy and security are important for all of us, no matter if we are talking about a corporation or just somebody who’s on a social network.

I have just had a wonderful conversation with Greg Nibler, from Digital Trends Live, about all kinds of different ways these issues are being tackled. Greg started by asking me to introduce Purism, and why we do what we do.

Well, we started around 2014 as a Social Purpose Company: we advance social good over maximizing profit. We build laptops, a secure token called a Librem Key, and we are also coming out with the Librem 5: a smartphone that doesn’t run on Android nor IOS, but our own operating system PureOS (the same you get on our laptops). These are available today, with the Librem 5 phone (on pre-order now) coming out in Q3 of this year. Our services—chat, email, social media, VPN—are all standardized protocols, decentralized, with no data retention and end-to-end encrypted. We are going to continue to put out more and more hardware, software, and services as we progress.

I’m kind of a hardcore geek, both in the hardware and software side—but I also am a digital rights activist, making Purism my dream come true by combining hardware, software and services together, in one convenient package. What is awesome is that our entire team is excited about the exact same thing: making convenient products that respect people. Hardware is a little bit more security-minded and privacy-focused, it is where the hardcore audience is: it really gets down to a trust and verified model. The same happens with software: it all needs to be released.

It’s just like with organic food – you have to inspect the soil, so regulators can say ‘hey, this is actually organic’. We do that same entire model within the hardware realm: we release everything for verification, and that gives us peace of mind at that low level—all the way up to services.

We also believe services should always be end-to-end encrypted, and they should never track people. We bundle all of our ethical services together into one package, and if we hand you a laptop you don’t have to know that the schematics were released, that the software was all released. What we offer was built by a Social Purpose Company, you can just turn it on and use it.

Kill-switches on a Librem laptop

Greg was curious about the kill-switches we install in our laptops: I told him it’s kind of an old thing, a reboot of the kill-switches on early devices – just like a light switch, it allows you to toggle off the hardware. You can physically sever the circuit of the webcam and microphone, so they don’t have any power to the actual device.

And they are really, really easy to use. We are going to have them on the Librem 5 phone as well, so you can turn the webcam and microphone off, Wi-Fi and Bluetooth, even the cellular connection if you want to. Why don’t Big Tech companies use these any longer? It was easy to do it in software; then it became this trust issue, where you could have your webcam on even though the light didn’t come on… What’s fascinating is we’re actually starting to see Big Tech companies use these, and a few other devices, because of these privacy-invading concerns. Big Tech is going to be pushing this privacy talk as well—even though it’s more a marketing thing than related to any type of credibility.

How do I see these issues evolving? They are clearly going to continue to grow around how much data is being gathered, where things are joining together, and data leakage. Data retention policies are going to start coming out: how long somebody holds the data for, what data is being stored, how all of these little bits of data add up to a giant story about you—and how that story is exploited.

We ended the interview with a clear notion of what Purism is—successfully, ethically—competing against. It was a cool chat, do watch the video and listen to the full version here. And thank you, Greg Nibler and Digital Trends Live!

The post Todd Weaver on Digital Trends Live appeared first on Purism.

“See Your Junk” – Behind the scenes

Wednesday 12th of June 2019 02:28:08 PM

At Purism, we aim to promote privacy and freedom through the use of free software (and we see it as ethical software). When we work, and in order to produce our content–such as what you see in this page–we use free software, too. And so, with a small budget and some basic audio and video gear, along with a few Librem laptops (running free software only, of course), we have made this video the ethical way, using ethical tools from beginning to end.


Pre-production took us the longest, and kept us working for quite some time–we ended up taking over a month to prepare everything. Todd, Purism’s founder and CEO, handed me a really funny script that he had written himself; I read it and started organizing the shoot with the help of Jenny Lavery, who did an amazing job of finding the perfect actors, location and props.

After planning every shot I started drawing a storyboard, using GIMP, my Librem 13, and a simple graphics tablet.


Once everything was planned for, I packed my suitcase and traveled to Austin, Texas, with Therry Cazorla, a fellow French countryman. Therry is the director of photography with whom I have been working for years.

We were so lucky with the weather; the weather is always a big question mark, and a nightmare in what comes to delaying everything, when shooting outside. I had planned on spending two full days shooting the entire video, but everything went so well–and everybody was so professional–that we ended up managing to shoot it in just one day, which was amazing!

Like I said before, we chose to use free software only. That choice led us to shoot with a camera that is compatible with Magic Lantern, a free software add-on that… well, adds features to the camera we used, and that also allowed us to shoot in RAW format–i.e., straight from the sensor and generating an uncompressed file, resulting in the maximum possible raw image quality.

The RAW format is also very useful for it allowed me to process the look of our initial footage as soon as I finished recording; I used a software called MLV-App to do just that, because it lets me analyze my raw footage and apply a flat look to it. This is a personal preference, it’s what I prefer to do regarding color grading technique and results. Everything flowed so well I managed to put together a first, rough edit, the very day we finished shooting.

Post production

Shooting in the USA was fun, but once we finished I had to travel back to France, to my home studio, where I had all the material I needed to start editing.

Video editing

I used Kdenlive to edit the video; it is a very complete, very professional, free software, non-linear video editor.

I now had the perfect opportunity to test the new Librem 15 with a 4k screen… having this video to finish meant I was simultaneously able to test hardware and software in a real project, and help developers improve product experience. And so I made a first cut of the video, and started to edit the audio.

Audio editing

Audio quality plays a big part in the overall quality of the final, resulting video. I would even go a step further and say the quality of the audio is perhaps more important than that of the image, when making a professional-grade video (but feel free to disagree).

In order to professionally edit the audio, I had to export my timeline from the video editor to a proper audio editor—Ardour, in this case. This import/export feature exists neither in Kdenlive nor in Ardour, but I needed it and had to find a solution—and this is one of the great advantages of using free software: that it is public and belongs to its users, making creating a missing feature (and giving it back to the community) something very doable. And that’s exactly what I did: I created a python script that converts the timeline from my video editor into a timeline for my audio editor. If you want it, you can get it in our Gitlab repository.

This allowed me to perfectly edit my audio, using very professional free software tools; it guaranteed a smooth, even sound, where the cuts between different shots are impossible to hear. Afterwards I added some extra ambient noise to ensure continuity and to give a bit more color–which leads us to the subject of our next chapter.

Color grading

The color of each individual take was then worked in order to guarantee its consistency over the whole video. I later applied a global (meaning, to the whole video sequence) color grading, to give it a consistent style and tone. I like to work over very flat footage that is low in saturation and contrast. I then add some contrast with a bleach bypass effect, and do the final tweaks on the curves and levels filters. The graph monitors in Kdelive let me adjust colors and levels with a high degree of precision—and I can be sure that colors are just right, that my eyes are not tricking me.

Motion design

I added some text effects at the end of the video: mostly, over the Librem One logo.

I made all my text animations in Blender, an amazing 3D free software application with very powerful compositing and animation features.

You might have noticed a subtle light effect in the logo animation (just before the rainbow appears)–it’s actually a handmade, traditional animation made with OpenToonz, a free software app that was also used for some of the biggest productions of the Japanese anime industry.

That’s it, and thank you for your time–it was fun

With Purism Products, You Are in Control

Thursday 6th of June 2019 01:53:01 PM

From its beginning, Purism’s focus has been on building products that respect and protect your privacy, security and freedom. I’ve written about how these three concepts are interdependent before. While Purism is somewhat unique in focusing on all three of these concepts at once, it isn’t the only company that builds products aimed at protecting privacy, security or even freedom. In fact, each of these areas are multibillion-dollar industries.

Security is a huge industry today, and it continues to grow, with companies releasing new products all the time–products they claim will protect you. Privacy is also hot topic right now, with many companies making sure they include “privacy” in their marketing. There is also an entire industry around products built on free software–even Microsoft recently pivoted over to supporting software freedom in its products.

Even with all these companies focusing on the same topics, Purism stands apart from the crowd. How? In our approach. Most other companies build products that coincidentally put them, the vendor, in control. From the beginning, Purism has designed all its products to empower the user, not the vendor. All of our products show this approach–and this post will highlight some of our user-empowerment design decisions.

Control Your Hardware

It is more and more difficult to find laptops that are easy to upgrade and repair. Some cases even demand for experts with special tools and quite a bit of effort to do something as simple as a RAM upgrade (if it’s not soldered on), to replace a hard drive, or to replace a battery. Some vendors justify this by pointing at design sensibilities, but it coincidentally also means you are more likely to buy the more expensive versions of their laptops even if you don’t need the extra resources. Some vendors go even further to control who can upgrade or repair the hardware, and use DRM and security chips to make it difficult to use third-party hardware.

Our laptops have visible Philips screws on the bottom. You can remove the bottom case yourself, without any special tools and without Purism’s permission, and get access to the RAM, drive bays and the battery–and replace them yourself. We added simple hardware kill switches so you can control the webcam, microphone and WiFi hardware–no need for special software.

Control Your Software

Vendors love using software to lock customers into their ecosystem. Proprietary software and proprietary operating systems have been doing this for decades and in that world if you want new features and in some cases even security updates, you have to pay the vendor for the privilege. If the vendor removes a feature, changes a default, or even completely changes the program, you don’t have much recourse. As long as you use that vendor for everything, things might work OK, but the moment someone else offers a better alternative, you discover just how little power you have to switch.

Purism ships its hardware with free software, starting with coreboot boot firmware all the way to the 100% free software PureOS operating system. By using free software, we put you in full control over all of the software on your system. You have the freedom to change any piece of software you like, you can install any OS you wish–and upgrades are free. By controlling the software, you also control the hardware. If you have to root software, you don’t really own it; with Purism hardware you don’t have to root anything.

Control Your Security

When you ask vendors to build a secure system, they end up designing something that keeps full trust and control in their hands, or else has no security at all. Vendors hold the keys to your security, not only because they don’t trust you to manage it, but also because it conveniently locks you into them. If you ask a vendor to secure the boot process, they design a system where every OS must get their approval (signature) before it can boot. If you ask them to secure your communications, their solution is to replace your current system with proprietary software and protocols they control.

We believe you should hold the keys to your security. We have designed each of our security measures so that you are in control, not us. This is why we chose our PureBoot solution over existing signature-based approaches that might lock you into us. With PureBoot you control all of the keys that protect your boot process and can easily change them at any time. You can boot any OS you wish without having to get Purism’s approval or disable boot security. This is also why our Librem Key uses open hardware, firmware and an industry-standard OpenPGP smart card to store your keys securely without any proprietary software. When we secure communications with Librem Chat and Librem Mail, we do it with end-to-end encryption. You hold all of the keys–so no one else, Purism included, can snoop on your communication.

Control Your Phone

The phone ecosystem takes even more control away from the user. Phones are harder to repair and upgrade than laptop hardware, and some require a hardware signature handshake so the vendor must approve any hardware peripherals (like headphones) you might attach. You can only install software the vendor has approved of ahead of time, and upgrade the OS if the vendor says you are allowed, unless you are willing to disable all security protections in the OS and root your phone.

Apple recently demonstrated the level of control it has over phone software when it removed Facebook’s internal iPhone apps; Google demonstrated the control it holds over its own ecosystem when it revoked Huawei’s access to OS updates as part of a larger trade war. With these controls in place, how much of your phone do you actually own?

The Librem 5 phone has been designed to put you back in control. By running free software, starting at the boot firmware and ending with PureOS, there’s nothing to root–you control the full stack. You also can remove the back and have access to the battery, a removable OpenPGP smart card, a removable cellular modem, and a microSD card so you can expand your storage later on. It also includes three hardware kill switches to give you control over the cameras and microphone, WiFi/Bluetooth and cellular modem–and you can combine all of them to disable the rest of the sensors, in what we are calling “Lockdown Mode” for even more control.

Control Your Services

Internet services are a major area where tech companies take control from their users. Ask any of these companies to create a network service, and they’ll invent one where all traffic coincidentally flows through them only, with proprietary clients, servers and protocols they control. You have multiple messaging apps on your phone not because of technical limitations, but because each of the big tech companies wants to lock you into their own proprietary network, and leverage network effects to keep you there. After locking you in to the platform, these companies then capture as much data as they can about you so they can sell access to it (and to you) to third parties. You end up with no control over your own data–or to how it is being used.

We designed Librem One to put you back in control of both your privacy, and your data. By creating a suite of decentralized and open-protocol services using free software servers and clients, and hosting it all under a central brand with a single username, you get all of the convenience of big tech services, but you actually control your data and the service itself. Since we fund Librem One on a standard subscription model, we don’t collect your data, track you, or show you ads.

Each Librem One service lets you communicate with any of the other networks on the Internet that speak the same open protocols (it’s just like being able to email friends regardless of what email provider they use). You can pick our branded Librem One apps for ease-of-use, or any of the excellent free software projects we based them on. If you don’t need the convenience of Purism managing your services, you can even host your own versions of every service we run—we even plan on sharing how we set each of these services up, just to make it easier for you to host them yourself in the future.

Control Social Media

Social media is another area where tech companies have exercised control–not just over its users, but ultimately over speech on the Internet as a whole. Since they fund social media from ads (therefore, from your data and preferences), social media applications are focused on taking control over what information you see. That is why it is so difficult to get a social media application to sort by date–it’s more important for them to train their relevance algorithms, so they know which promoted posts to put in your feed. Everyone has become so used to giving up control over the rest of their lives, they are now asking those same companies to decide not just what they see in their feeds, but what speech is allowed on the Internet at all.

It turns out that, while Big Tech companies are good at building technology, they are not human rights or censorship policy experts, and putting them in control of speech on the Internet has led to a lot of problems–including the silencing of disaffected groups–while not making anyone happy with their centralized moderation decisions. Centralized moderation also has a heavy human cost: it outsources the ugly task of sifting through the worst that the Internet has to offer to low-wage workers, often resulting in emotional and mental trauma.

Some have advocated moving to a decentralized network like Mastodon in response. While the network is decentralized, the way the technology is built still puts control over what you see into the hands of the sysadmin who happens to be moderating your instance. Like in Big Tech companies, sysadmin are not human rights, or censorship, experts; since they are often doing this as a side hobby, their approach to moderation (however sincere their efforts) tends to err on the side of whatever is easiest, which tends to be censoring a post, or blocking a user or a network. This has led to a chilling effect on political speech in certain instances, harming some of the same minority groups the moderation policies aim to protect. If a moderator happens to share your values, you’re in luck; if not, your only recourse is looking for another instance.

At Purism, we have taken a completely different approach, with Librem Social aimed at putting you back into control of your social media. We recognize that we aren’t human rights or censorship policy experts, so we’ve deferred to the real experts in the space to help us define an approach to moderation; one that expands the anti-discrimination clause in our Social Purpose charter:

The Corporation will not discriminate against individuals, groups or fields of endeavor.

The Corporation will allow any person, or any group of persons, in any field of endeavor to use its systems for whatever purpose.

You shouldn’t have to outsource your trust to a vendor to be secure, you shouldn’t have to outsource your control to see only the content you want to see. We have added a policy against harassment and illegal activities so you can stay safe, while modifying the existing Mastodon software Librem Social uses so you only see content you opt into.

This is a (great) start, and immediately solves a lot of problems for Librem Social users–but it still leaves some issues for the rest of the Mastodon instances without our opt-in approach. We have big plans to add features to Mastodon at large, features that give moderation control back to the users, not only of Librem Social, but the entire Mastodon network. You should be in full control of the content you see, never having to rely on a central authority (even one you might trust, like Purism) to curate it for you. Whether you want to filter out adult content or politics, or to opt in to them, we aim to build tools that give you, not us, that power.

User Empowerment

All of Purism’s products are aimed at removing control from tech vendors (including ourselves) and giving freedom back to users. This is true in the free software we use throughout our hardware, the open standards (again, and free software) we use for our services, and in our approach to moderation for Mail, Chat and Social. You shouldn’t have to outsource all of your trust to a vendor to be secure, have privacy, or only see the content you want to see in social media. With Purism products, you are in control.

The post With Purism Products, You Are in Control appeared first on Purism.

Librem 5 vs Android — Which boots faster?

Wednesday 5th of June 2019 06:00:10 PM

A simple question: What boots faster — a run-of-the-mill Android phone or a Librem 5 smartphone running PureOS?

We put the Librem 5 dev kit next to an HTC One, both powered completely off, then pushed the power buttons at the same time.

The result… it wasn’t even close.  I almost feel bad for Android.  Almost.

(You can also watch this over on YouTube.)

I mean, sure.  “Boot speed” certainly isn’t the end-all, be-all of performance.  In fact, it may not even be in a “Top 10 Important Performance Metrics.”  But it gives a good indicator of what’s possible with the system — and what to expect.  Add to it, the fact that this was done without any boot speed optimizations at all?  Downright exciting.

The Librem 5 smartphone is schedule to begin shipping in Q3 of 2019.  Stay tuned to this blog — or follow Purism on Librem One or Twitter — for updates and details.

Also worth noting: You can pre-order the Librem 5 now for $649.  That price goes up at the end of July.  So if you want the lower price, now’s the time.

The post Librem 5 vs Android — Which boots faster? appeared first on Purism.

Control, Freedom and Harm

Tuesday 4th of June 2019 03:34:09 PM
Control is the best measurement of both freedom and harm. If freedom can be summarized as not being under the control of another, harm can be summarized as being under the control of another.

The darker side of “control vs. freedom” or “control + harm” casts a shadow on every facet of technology—and it is a digital civil rights issue, where control over you by corporations is causing you harm, all the time, on all your devices.

The answer is rather simple: Don’t. Control. People. Don’t track people

It would be simple to create the exact same technology companies that exist today, without the creepy crossing into personal privacy invasion. Social Media can absolutely exist (and even sell ads) without being invasive; search tools can return valid results (and still sell ads) without recording everything on you (forever); ride sharing services can drive you places without tracking your every location when you’re not using them; ordering history from stores certainly does not need all your personal data after you receive what you ordered.

Don’t retain useless data

There is no reason to retain everything a person has ever done digitally. A simple policy of “once data is no longer needed, it is deleted.” fits perfectly here. Does the police need to hold your GPS location, date and time permanently, after scanning your car’s license plate? Does a social media service need to backchannel your purchase receipts to match who you follow and interact with, against credit card receipts, forever? Not really.

Use free software

Use software where it passes the simple freedom test: Can you run that program as you wish? Can you study the source code? Can you share it alike? If you can, you have complete control over the program, and you can avoid harm.

Don’t Control People. If hardware, software, and services would follow this simple rule of not controlling people, the results would become quickly apparent.

Hardware should not have a corporate controlled lock, so people can own devices, not rent them. Software should be under the full control of the person using it, and source code released. Services should be decentralized, so no single entity can control them and their users. Once all three (hardware, software, services) are in the hands of the people, then they will truly be digitally free.

Big Tech strips Freedom and causes Harm

Let’s take a look at some of big-tech’s big issues below:


Looking at Apple (the censorship and personal control masters), we see they block applications from their platform, censor applications and content to their own liking, disallow them on their platform entirely, invade privacy with excruciating level of detail, are anti-competitive with an unlawful monopoly with its App Store, among many other examples of their control over you. We quickly recognize that people are just renting a device from Apple, that Apple is in complete Orwellian control of it, that all our personal data is also under Apple’s control.

Facebook, Instagram, and Twitter

Welcome to the manipulation and censorship private clubs of social media: these companies control their user-base through haphazard policies to ban posts and manipulate everything you see, trying to influence your opinion. It has been a long upheld legal stance that you may disagree with what a person may legally say, but you must respect their right to say it. The reason? Centuries of jurisprudence showcasing the issues of censorship causing harm. We may want to pay attention to the EFF, FSF, ACLU, California Constitution, and the US Supreme Court, when they all agree that censorship is a terrible idea.


This data hoarder has incomprehensibly large amounts of data on everything you do, from every device every millisecond of every day, and is invading your privacy, controlling your devices, censoring voices, and spying on you. The executives at Google pen opinion pieces on how much they care about privacy while undermining it with lawmakers: their actions are the exact opposite of their words, while they are committing some of the worst digital atrocities of all time.

Uber, Lyft, Spotify, and the rest

These and others all fall into the same Silicon Valley funding process: to write software, services, and applications designed around grabbing as many users and personal data as possible—oftentimes doing an end-run around regulation in the name of innovation (does anybody actually think Uber or Lyft aren’t just non-yellow taxis booked through a mobile app? So why shouldn’t they comply with the same rules and regulations that taxis do? Oh… right, because of ‘innovation‘). All these companies share the same bad habits of writing software that controls the person using it, of exploiting people for profit—be that through tracking your every location detail, your mood, profiling you, leaving you unable to verify the source code and inserting malware into it—continuing abuses of your digital civil rights.

The Solution

Is quite simple: support products and companies that protect your freedoms, put you in complete control, and work to eliminate harm. The interesting side effect is you will also be building a more tolerant, empowering, diverse, and inclusive society.


Get Librem One

Pre-Order Librem 5

The post Control, Freedom and Harm appeared first on Purism.

Introducing Librem Social

Friday 31st of May 2019 08:10:21 AM
Hello there! Let’s talk about Librem Social.

Librem Social is a social network. Think Twitter… if Twitter respected your privacy and didn’t advertise to you.

Librem Social is part of Librem One, the suite of privacy-protecting, no-tracking apps and services created by our team at Purism. Librem One currently includes Librem Mail, Librem Chat, Librem Tunnel, and Librem Social.

Over 2,000,000+ people. Ready to follow.

Librem Social is part of a network of social network servers already boasting over 2,000,000 users!

Two Million!

Follow friends. Make new ones. Share stories, pictures, and videos with them. Librem One is ready and growing. Fast.

Librem Social Opt-In, No Ads, No Tracking

One of Librem Social’s most important features is that, unlike all other social hosts, it is entirely opt-in. You only see posts from people you want to follow.

This means you are not force-fed an unrelenting stream of manipulated content specifically targeting you. No way, no how. Not on Librem One. On Librem One you see the posts from the people you want to see posts from – your friends, family, news sites and favorite celebrities. And that’s it. If you want, you can search for posts from across the Fediverse (more on that later).

We also do not advertise to you. Not at all.

Which means we have no reason to track you. Simple, right?

Available Wherever You Are

Librem One is accessible via:

What Technology Does Librem Social Use?

Librem Social is proudly built on Mastodon, part of what is known as “The Fediverse”, as well as many other Free Software projects that we actively work with and contribute to.

The Fediverse is the decentralized replacement to MySpace, Orkut, Friendster, Google+, Twitter and Facebook (can you spot the trend?). The Fediverse already exists, and it is growing. What makes the Fediverse different to its forebears is that it has no central domain – not even a central service. It’s composed of lots of services, all of them speaking (mostly) the same protocol, known as ActivityPub.

Fediverse developers are currently working on replacements for things we know (shout out to PixelFed!) and other things we can only dream of (shout out to Spritely!). When they do arrive, we can yell out a stretch goal, apply some elbow grease… and once we’re done you can start following them, breaking the cycle of needing a new account to join your friends on whatever’s hot right now.

Public service announcement:

As well as a purely opt-in workflow, we have another very distinguishing feature – that everything on Librem Social is public. Everything. Who you follow, who follows you, your announcements and your replies.

Why? Well, for two major reasons:

Because valuing your privacy doesn’t mean staying indoors with the curtains closed all day. Sometimes you want to go out, socialize, catch up on news – and share your own.

At the same time, you don’t want to blurt out something personal just because there’s a lull in the conversation (it happens). That’s what private chat is for. Librem Social is designed in the context of a service bundle, so you know what tool to use for the right job, with no oopsies – and, more importantly, with none of your personal details on our server.

What if… I don’t like what I see?

We don’t control the content of search results. If you are concerned, please read our quick guide to staying safe online. If you see something illegal, please report it to the relevant authorities, as they are best equipped to handle illegal content. If you are being harassed, or witness online harassment, block and flag the offending user and a moderator will take action. We do not tolerate harassment. This is an area of well-established rights, Librem Social is built on and with the expert policies of ACLU, FSF, and EFF, while avoiding the pitfalls of ham-fisted censorship we all dislike from Big Tech.

We are very pleased to see so many people socializing already. If you want to follow us, or ping us with your thoughts, our Librem Social / Fediverse address is – and you are always welcome!


Purism offers high-quality privacy, security, and freedom-focused computers, phones, and software. Our platform is meant to empower everyone. We believe people should have secure devices and services that protect them rather than exploit them, and we provide everything you need in a convenient product bundle.

We like to give back. Librem Chat is built with free software, created by security and privacy experts. Learn more about how Purism contributes to its community.

The post Introducing Librem Social appeared first on Purism.

Librem 5 – End of May Progress

Tuesday 28th of May 2019 01:37:03 PM
Hi everyone! The Librem 5 team has been hard at work again, and we want to update you all on our software progress. Calls

We have been diligently working to finish the phone call audio quality for production. While the USB audio works just fine (with some tweaks), the PCM audio coming out of the dev kit was noisy and distorted, due to the most-significant bit in the PCM stream – from the i.MX8 to the modem – being incorrect.

In the meantime, we have started work on a daemon, Wys, that loads and unloads PulseAudio loopback modules according to the state of ModemManager voice calls; and investigating and testing a different modem, in order to evaluate its potential alongside the Gemalto PLS8 one.

All of this effort brings us closer and closer to having phone calls that work wonderfully.


The SMS plugin of Chatty has been reworked to use libmm-glib, simplifying the handling of the ModemManager interface, and making the adding of further SMS functionality less cumbersome.

The new Lurch plugin changes (used for E2EE in XMPP) needed to be tested, since the upstream maintainer has done a lot of recent work on the plugin (specifically for integration with Chatty) – and this support gets us even closer to delivering good E2EE XMPP functionality!

We are happy to say we found, and promptly fixed, a couple of issues related to Chatty: crashes due to multi-instances or when loading the Matrix plugin, and Chatty not recognizing outgoing messages after a restart. It’s all working fine now.

Oh, and the message bubble width was reduced to no more than 70% of the conversation view, and it looks so much better now. Thanks to Leland Carlye for the improvement!

Web Browsing

A new adaptive view switcher widget (HdyViewSwitcher) has been added to libhandy, which is needed by Web’s preferences dialog in order for it to be adaptive and to, well, look nice on the phone; we will use it in other apps such as Software, Clocks, and Photos. It was such a big effort, and it’s so wonderful to see it completed – and a success! To make sure that HdyViewSwitcher looks just perfect, we have added a best fit container (HdySqueezer).

We also want to make the header bars more flexible to matching the display needs of the phone, and we are working on adding a HdyHeaderBar. Doing it led us to discover, and fix, a memory leak in GTK+3 and GTK+4.

See below for a preview of the HdyHeaderBar:

We are almost done adding a HdyPreferencesWindow, so we can make it easy for apps to have a featureful preferences window that is also adaptive.

Below, a preview of the HdyPreferencesWindow: Email

We have made some excellent improvements on the design of Geary! The outcome can be seen in several mockups that design how the conversation actions, conversations list, composer and selection mode should all look. Some of these mockups may require further changes upstream, but they get us ever closer to having a nicely complete mail client design.


The dev kit image is getting closer to using a 5.2 kernel instead of the 4.18 kernel – which means our team has been tireless in their effort of upstreaming the librem5-devkit device tree, flash-kernel changes, and sending various other patches upstream. Be sure to check out a nice post on Purism’s upstream kernel contributions.

We are also continuing to work on a compositor replacement for rootston, and getting closer to be able to switch from rootston to phoc (replacement compositor) independently.

Another awesome change in the image is that the WiFi status is now displayed in the panel and lock screen!

We are trying to separate the bootloader from the OS, and to get us closer to this goal, a uuu script that flashes the full-boot-image has been added to the librem5-devkit-tools package. There is also support for generating an additional boot image alongside the main one, needed to flash U-boot and the M4 firmware into one of the eMMC boot hwparts. Thanks to Hugo Grostabussiat for the contributions!

We are continuing to work on the graphics stack; recently, v11 of the Mixel MIPI DPHY driver was submitted upstream.

Our awesome community has pointed out some issues over time… and we have fixed them: fix screen blank -> unblank cycle, improve GPU performance by using the correct clock parents, and unbreak clock enable/disable in our NWL driver, so we can turn off clocks when blanking the display.

Some other changes to the system include us taking a look at using mainline atf to control power saving and suspend/resume; improving phosh to make the output locking more dynamic, and adjusting the VINDPM of the charge controller.


We have added a new guide on working with UI files, and have a cool weather example coming to the documentation soon, to help all the GTK+ app developers out there.

See below for a preview of the weather app:

Some helpful How-To guides on the inertial module and proximity and light sensors were also added.

We have improved the Matrix room mentions for readability, the API documentation with better linking to external APIs and resources. The dev kit setup instructions are being improved as well, to be more of a step-by-step guide, and a page on troubleshooting dev kit power issues is coming soon.

That’s all for now, folks – stay tuned for more exciting updates to come!

A big “Thanks!” to everyone that has helped review and merge changes into upstream projects; you are awesome, and your time and contribution are much appreciated!

The post Librem 5 – End of May Progress appeared first on Purism.

Happy Towel Day 2019

Saturday 25th of May 2019 02:37:56 PM
As you know for sure, a towel has immense psychological value.

You are also well aware that, for some reason, if non-hitchhikers discover you have your towel with you, they also assume you carry your own toothbrush, soap, space suit, etc; that they will happily lend you anything you need and might – accidentally – have lost. Above all, they will think that anyone who travels along the galaxy and still knows where their towel is, is clearly a nice, careful, reasonable person. And so, you’re very likely carrying a towel with you today.

The team at Purism wishes you a nice #towelday, and a really amazingly together weekend. We know our readers are cool froods who always know where their towels are.


Purism offers high-quality privacy, security, and freedom-focused computers, phones, and software. Our platform is meant to empower everyone. We believe people should have secure devices and services that protect them rather than exploit them, and we provide everything you need in a convenient product bundle.

We like to give back. Librem Chat is built with free software, created by security and privacy experts. Learn more about how Purism contributes to its community.

The post Happy Towel Day 2019 appeared first on Purism.

Introducing the Librem Tunnel

Thursday 23rd of May 2019 03:27:56 PM
Hello, it’s so nice to have you back. What will you be having today? Since you’re here, let us tell you about the new Librem Tunnel, the encrypted tunnel based on industry-grade technology.

You probably know by now that the Librem Tunnel is part of Librem One, a suite of privacy-protecting, no-tracking apps and services created by our team at Purism, which also includes Librem Mail, Librem Chat and Librem Social.

Librem Tunnel offers an encrypted, no-logging, virtual private network tunnel, making sure all your network traffic is secure and your privacy fully protected. This means you can safely and conveniently use any public hotspot and not have to worry about how private your connection really is, using standards-based OpenVPN with any compatible client. You are not the product in Librem Tunnel: you will not be tracked, we do not sell your data, and we don’t advertise.

Imagine you’re at a coffee shop, at a work seminar or on campus. Or maybe you work remotely, or you’re traveling, or your kids want to go to the park and the nice little cafe you’re having ice cream at happens to, conveniently, have free WiFi. You know you need to use HTTPS to get the little green lock, but you can’t be expected to review the network security of every WiFi access point you use. Do you really want the cafe owner to know the names of the web sites you visit, what IP addresses you interact with, what protocols you use? Why not use a secure tunnel you can trust?

You may be wondering why we are more trustworthy than an arbitrary access point. Well, we guarantee that we don’t ever monitor or log your connection. We also recommend HTTPS Everywhere to make sure you’re using HTTPS whenever possible. And for even more, extra safety, use Tor Browser.

You’re probably thinking: well, why not just use Tor Browser, without the tunnel? The answer is, because it would only secure your web connection, and your device makes other connections too. Additionally, if you make an unencrypted connection over Tor, you are again relying on an arbitrary endpoint. Trust us instead.

Want to stop your coffee shop recognizing your device every time you come in? We’ll cover that in a separate guide soon.

And here are a couple of bonus tips for PureOS users interested in defense-in-depth at the connection layer:

These tips are broadly applicable to other systems too, we hope they help. That’s all for now, we’ll be back soon with a short introduction to Librem Social, so stay tuned!


Purism offers high-quality privacy, security, and freedom-focused computers, phones, and software. Our platform is meant to empower everyone. We believe people should have secure devices and services that protect them rather than exploit them, and we provide everything you need in a convenient product bundle.

We like to give back. Librem Tunnel is built with free software, created by security and privacy experts. Learn more about how Purism contributes to its community.

The post Introducing the Librem Tunnel appeared first on Purism.

Avoiding Big Tech to Protect Your Privacy

Wednesday 22nd of May 2019 02:20:39 PM
In a recent opinion piece by Jennifer Senior, titled If We Care So Much About What Google Knows, Why Do We Keep Telling it Everything?, she properly describes the privacy paradox as what happens when a person consistently acts in ways that are contradictory to the privacy values professed by that same person.

The reasons behind the privacy paradox have been highlighted numerous times by our team at Purism: it all boils down to a simple word, convenience. It is convenient to give up your digital rights, it is simple to just click past a privacy wall, and easy to sign up for a service you know exploits you. It is inconvenient to learn about the best practices for privacy protection, from software to browser plugins and applications – let alone to find what service to use that isn’t entirely designed to spy on everything you do.

The solution to the privacy paradox has also been answered many times by our team at Purism. It all boils down to the same simple word, convenience. People want convenient products that respect them by default, that they can trust will not exploit them, that allow them to participate in digital society with peace of mind, knowing they are in complete control.

Creating an ethical, convenient alternative to Big Tech is what everything is about at Purism. As a Social Purpose Corporation, we design security-focused hardware combined with freedom-respecting software, and we have recently launched Librem One — our bundle of privacy-protecting applications, currently available on iOS and Android.

Librem One offers the gateway to the complete control of your digital life; it means you can sign up today and create a single account on Librem Chat, Librem Mail, Librem Social, and Librem Tunnel – that all are backed by proven protocols that do not track you, have no advertising, are decentralized and offer personal freedom with neither centralized control nor censorship. Social and chat are offered for free, while adding encrypted email and VPN are offered under a subscription – and more services are to be added in the future.

Combining Librem One with the other Purism line of products, such as a Librem laptop or Librem 5 phone, means you can relax in the knowing you are in total control of your hardware, software, and all your services. In other words: you can participate in digital society and be quite the trendsetter avoiding Big Tech, rather than sitting around (inside a privacy paradox – a strange place to find yourself in) shoveling your data to tech giants, for their profits only.

Avoid the privacy paradox: sign up for Librem One, and buy Purism products from your friendly Social Purpose Company.

The post Avoiding Big Tech to Protect Your Privacy appeared first on Purism.

Security Advisory: Kernel and Firmware Updates for Intel MDS Vulnerability

Monday 20th of May 2019 10:31:05 PM

Last week Intel announced a new group of speculative execution vulnerabilities in its processors related to the well-known Spectre and Meltdown vulnerabilities from over a year ago. These new attacks have been labeled as the MDS (Microarchitectural Data Sampling) vulnerabilities by Intel, but in the age of branded vulnerabilities they also have been given more exciting names like Zombieload. An attacker who is able to successfully exploit these vulnerabilities has the potential to extract sensitive information including encryption keys from the target machine.

Because this is a vulnerability in the Intel CPU hardware itself, like with Spectre and Meltdown, the patch for these vulnerabilities comes in two forms:

  • Linux kernel patch for PureOS users
  • CPU microcode updates for Librem laptop owners
PureOS Users

PureOS users are advised to update their system packages using their normal software update process, which will pull down the latest 4.19.37-3 kernel package.

Librem Laptop Owners

Purism includes CPU microcode updates as part of our coreboot firmware, so laptops shipping out starting this week will already be patched for these vulnerabilities. For existing laptop users, you will need to update your coreboot firmware to the latest version. Just follow our documentation on using our coreboot update script. Microcode updates have been added to the default coreboot SeaBIOS firmware starting with version 4.9-Purism-1 and in our beta PureBoot firmware starting with version heads-beta-6. In addition to using our update script, you can access the changelog for our pre-built binary firmware images directly at our firmware releases project page.

The post Security Advisory: Kernel and Firmware Updates for Intel MDS Vulnerability appeared first on Purism.

Purism and the Linux Kernel

Monday 20th of May 2019 06:27:00 PM
Purism contributes to several free software projects such as GNOME, wlroots and Debian.

We’re especially proud of our kernel contributions – where 13 patches have made it into 5.1. Since this is our first installment, it also includes the changes that went into 5.0 and 4.20. Bellow is a list of our most recent contributions.

Let’s start with support for the Librem5 dev kit’s charge controller:

SDMA fix for i.MX8mq [needed for SAI (audio)]:

Support for the Librem5 dev kit’s touch screen:

Finally, here are some miscellaneous i.MX8-related fixes and device tree additions:

We also contributed Tested-by and Reviewed-by to five patches.

There’s more to come for the 5.2 kernel, as there are 14 patches staged in linux-next already, and we have gotten some friendly reviews for other parts. Stay tuned for more details getting us closer to make the Librem5 dev kit bootable with a mainline kernel, and many thanks to all the reviewers!

The post Purism and the Linux Kernel appeared first on Purism.

Introducing The New Librem Chat

Friday 17th of May 2019 05:00:40 AM
How do you do again? Let us tell you about the new Librem Chat: the no worries, free end-to-end encrypted chat, VoIP and video-calling service.

Social good, freedom personal privacy and security are things you take seriously (and probably think everyone else should, too). And maybe you already know that the Librem Chat is part of Librem One, a suite of privacy-protecting, no-tracking apps and services which aim to make the world a better place.

Librem Chat is:

Decentralized – join chatrooms at,, or any other Matrix domain
Private – create end-to-end encrypted chatrooms that only participants can see
Text, voice and video – communicate any way you want to
Mix and match – use either the official app or a compatible app; use our app on a compatible service
Convenient – connect from any device with a compatible app
No ads – we don’t sell ad space, we don’t track you
Free – we don’t think there’s much need to explain this one

What else can we say? It is a total, privacy-respecting replacement for all those intrusive chat services. One you can either use to have a friendly, one-on-one conversation with your best friend, or to call large groups of people. It is a real-time communication app, making real-time communication work seamlessly between different service providers. And since Librem Chat is based on the universal Matrix chat protocol, you can be sure you’ll be able to chat with all your relevant people, either inside or outside the domain, because we do not lock-in to one technology company. Just remember that trust is per device – so only install Librem Chat on devices you own and trust, and be sure to remove any devices that you no longer use.

Talk with friends and family, share photos – anything you’d like. We hope you enjoy, and stay tuned for more news on the Librem One services!


Purism offers high-quality privacy, security, and freedom-focused computers, phones, and software. Our platform is meant to empower everyone. We believe people should have secure devices and services that protect them rather than exploit them, and we provide everything you need in a convenient product bundle.

We like to give back. Librem Chat is built with free software, created by security and privacy experts. Learn more about how Purism contributes to its community.

The post Introducing The New Librem Chat appeared first on Purism.

Purism’s Librem One Suite of Privacy Protecting, No-track Apps and Services Surges Past Initial Crowdfunding Goal After Two Weeks

Thursday 16th of May 2019 02:30:41 PM
Early traction of Librem One demonstrates demand for ethical alternatives to Big Tech as data privacy snafus continue to plague users on a weekly basis

SAN FRANCISCO, Calif., May 16, 2019 — Purism, the social purpose corporation which designs and produces popular secure hardware, software, and services, has seen its Librem One suite of privacy protecting apps and services surpass its initial crowdfunding goal of 5,000 backers in just two weeks.

Librem One is growing in popularity as users grow distrustful of how large tech companies are using their personal information.

In the past week, tech giants have been under fire over repeated bad faith efforts to protect users, paying lip service to data privacy while their actions demonstrate otherwise:
• Days after Google‘s CEO wrote an OpEd in the New York Times on the importance of protecting user data, the company announced new data-dependent advertising products.
• Facebook declared that “the future is private“ at its developer conference last week, even while the company is facing billions of dollars in fines for data privacy violations.

The Librem One suite of apps and services are designed to provide users with convenient alternatives to Big Tech products so they can use everyday tools without being tracked or having their data harvested for advertisers.

“Librem One is just what I was looking for: a simple-to-use, all-in-one bundle that gave me everything I needed to finally leave Big Tech. I purchased the family pack and even got my wife and kids to leave Facebook and WhatsApp and make the switch to Librem One. We are all as happy as can be with the experience.” – James Jackson

Librem One includes end-to-end encrypted chat, end-to-end encrypted mail, and end-to-end encrypted VPN, as well as an open public social network. More services, such as end-to-end encrypted cloud storage, payments, and phone service, will be built in the future and added to the bundle. All current and future services in Librem One have no ads, do not track users, do not look at, sell, or share anything people create or send, and are available on popular platforms like Android and iOS.

“Librem One reaching backer goals within such a short period of time underscores the public demand for secure, ethical online services,” said Todd Weaver, founder and CEO of Purism. “No advertisements. No tracking. No selling of user data. This is the way online services should be, and we have baked that into the very core of Librem One.”

Additional Information

Librem One FAQ
Librem One Policies
Librem One Moderation and Code of Conduct

About Purism

Purism is a Social Purpose Corporation devoted to bringing security, privacy, software freedom, and digital independence to everyone’s personal computing experience. With operations based in San Francisco (California) and around the world, Purism manufactures premium-quality laptops and phones, creating beautiful and powerful devices meant to protect users’ digital lives without requiring a compromise on ease of use. Purism designs and assembles its hardware by carefully selecting internationally sourced components to be privacy-respecting and fully Free-Software-compliant. Security and privacy-centric features come built-in with every product Purism makes, making security and privacy the simpler, logical choice for individuals and businesses.

Media Contact

Marie Williams, Coderella / Purism +1 415-689-4029 See also the Purism press room for additional tools and announcements.

The post Purism’s Librem One Suite of Privacy Protecting, No-track Apps and Services Surges Past Initial Crowdfunding Goal After Two Weeks appeared first on Purism.

5000 Happy Librem One Users!

Thursday 16th of May 2019 12:54:28 PM

The post 5000 Happy Librem One Users! appeared first on Purism.

Librem 5 App Design Tutorial – Part II

Monday 13th of May 2019 03:50:19 PM
Hello and welcome to the second of my series of blog posts on how to design your own, brand new app for the Librem 5.

In my last post we went over the philosophy and process, goals and relevant art of building a read-it-later app; today we’ll be covering the basics of navigation, layout, and adaptive design, for both mobile and desktop.

Sketches and Mockups

Now that we have a pretty clear idea of the structure of our app, we can finally dive into designing the UI. Personally, I like starting off with sketches on paper and only then move to Inkscape for more detailed mockups, but you may use any tool you’re familiar with. There’s no need to be good at drawing, or good at a particular application, for this; you should just find a way to visualize your ideas – any way that works for you is good.

If you are using Inkscape for mockups, you might want to check out the GNOME mockup template for some common layouts and patterns to use in your designs. If you are looking for GNOME-style symbolic icons for your mockups, you can find them here, here, and here.


When it comes to the layout of an interface, it’s a good thing to have in mind what navigation structure would make the most sense for the type of content you have. The most common navigation patterns for GNOME apps are the Stack, the View Switcher and the Sidebar List.

Example of Stack navigation in GNOME Photos

The Stack pattern is meant for when the views are completely separate, the UI is not shared and there is a back button that enables you to go back to the overview. This is, for example, how Photos allows you to navigate between a stream of photos and the detailed view of an individual photo. This means there is a bit more friction to switch between views than with other patterns – but it’s also more focused. It’s a great pattern when you don’t have to switch between views a lot.

View switcher in GNOME Clocks

The View Switcher is better for cases in which a small number of views are either equally important or need to be easily accessible. It’s used in GNOME apps such as Clocks, Music and Software as the primary form of navigation. On the desktop this switcher is always in the header bar, but a new adaptive version of it, which moves to the bottom of the screen for mobile, is being developed. It’s not quite ready yet, but it will soon hit a version of Libhandy near you.

Sidebar List in Fractal

The Sidebar List is used when not only you have a lot of views, but you also often need to switch between them. It’s used in Fractal’s room list for example, because it gives a quick overview of all rooms and allows for quick context switching. On mobile, where there’s obviously not enough space for a content pane and a sidebar, you can use a Libhandy widget called Leaflet which transforms a Sidebar List on desktop into a Stack on mobile.

Experimental branch of GNOME Settings using HdyLeaflet to switch between Sidebar List and Stack navigation Sidebar List and Stack navigation

For our own read-it-later app, we will need navigation to switch between the different lists (Unread, Archive, Favorites) and between lists and article views.

The former is a small set of views that we want easily accessible, so a view switcher is a good fit. Since we can’t use the shiny new adaptive view switcher widget yet, we can use a plain old view switcher in the header bar (though we can, and should, design the UI with the beautiful new switcher in mind).

For the latter we could either use a stack or a sidebar list (along with the Leaflet widget so it works on mobile). Since we want this app to allow for a focused reading experience, and switching back and forth quickly between articles is not going to happen very often, a Stack is probably the best solution.

This means our main screens will look something like:

Quick pencil sketch of the layout for the list and article screens Article List Screens

Now that we have a basic navigation structure, we can design each individual screen in more detail. These three article list screens are basically the same lists, but with different content.

The main purpose of these screens is to provide a nice, legible list of saved articles that entices people to catch up with their reading (list). In order to do this we’re going to go for a comfortable layout – which should include the article’s title, a preview, and some information about each article.

To help users catch up with their saved articles we should also try to make the content as interesting as possible. A plain, reverse-chronological list of saved items can be quite boring, and I’ve noticed I myself often scroll down the list randomly, looking for older articles. A potential way to build this feature into the core experience would be to show the reading list in a randomized order, while also showing the most recently saved articles at the top, as a separate category (see the mockups below).

Mockups of Unread, Archive and Favorites screens

In terms of actions, we need to expose Search and Selection modes (for operations on multiple elements) as well as the application’s primary menu. The primary menu contains global app-level categories such as Help, Preferences, and About.

In the selection mode we need to have the ability to move articles to Favorites and Archive and delete them from our reading list. Since this is not an essential functionality though, we won’t be doing designs for it yet (but if you want to learn more, have a look at the selection mode page in the GNOME HIG – and the same goes for search, in the relevant HIG page).

Article Screen

An article screen’s job is pretty straightforward: it’s meant to provide a great reading experience for the saved articles. Since many websites kind of suck in this regard, a reader mode (like the ones Epiphany and Firefox have) should be the default view whenever possible. There is however no guarantee that a given article will end up perfectly rendered, and we do need a way to show the website in its native styling, if and whenever necessary.

We also need to move articles into Favorites and Archive, and be able to delete and share them. The most important actions are usually shown directly in the header bar; the remaining ones (or simply the result of not having enough space) will call for a secondary menu.

Mockup of the Article screen Desktop

We should by now have a more or less clear idea of what our app looks like on mobile; but what will it look like on desktop? Similar to responsive web design, if we design our app for a mobile environment first, it’s usually pretty easy to make it work well on larger screens as well.

As our app has no sidebars or other complicated layout elements, the main change is that the content column width will have to grow with the window until it reaches a maximum width which is comfortable for reading. This can be implemented by wrapping the content area in a HdyColumn. The view switcher will also move up to the header bar, and there will be a close button on the right side.

Desktop mockups

We now have the basic structure and most important screens for the application – but that’ far from being everything we need. We need to design login and account settings, empty states, first run experience, errors, search and a number of other things that are beyond the scope of the series… It’s worth noting that mockups tend not to be final, that interfaces almost always change during implementation – as you learn more about use cases, underlying technology and other constraints. Ideally, you’ll also do some informal user-testing with real people, in order to get feedback about what you designed.

If you enjoyed the second part of this tutorial, stay tuned: I’ll be back soon with the third (and final) part. In the meantime, feel free to play with the mockups I made for this tutorial.

The post Librem 5 App Design Tutorial – Part II appeared first on Purism.

May Progress Update – Librem 5

Wednesday 8th of May 2019 01:38:43 PM
Hi again, here’s your Librem 5 hardware update report for the first half of the month of May: Conferences

At JDLL, Adrien gave a talk on “GNOME on phones” and helped out at the GNOME booth, where he answered lots of questions about Purism’s products and animated a first contribution to GNOME workshop along with community member Alexandre Franke.


The current design effort is around the Geary email client, where adaptive designs have begun; some of the symbolic icons in Geary have been improved.

Software Work Images

There are always improvements and fixes making their way into the image creation; for example, the librem5-base package needed a fix in order to unbreak rendering. To make testing easier, debs built by gitlab-ci are now saved as artifacts. Flashing a devkit is a little easier now that the tool used to flash a new image, uuu, has been updated to make it buildable for PureOS. Also, with a recent change to the scripts used in flashing the devkit, we avoid re-downloading the image if one already exists.


Since graphics are quite important for a phone, we continue to invest in the mesa graphics library. A lod level dump issue and a symlink issue were fixed. A second version of the GALLIUM_DDEBUG fix was submitted and merged upstream (thanks to Lucas Stach for the review!).

Compositor + Shell

We continued experimenting with our own forked compositor by implementing wlr-output-manager: however, until it is ready for prime time, there is a parallel effort to keep on improving rootston. The main phosh improvement was that the adwaita-dark theme was applied to the shell by default.


We all know how important it is for a phone to place phone calls, so there is a continuing effort investigating audio over the modem. There are issues with DMA transfers on the SAI interface; digging into the issues included testing various kernel changes. Stay tuned for more to come on this effort.


We’re getting closer to bumping the API version of LibHandy to 1! Some new widgets are in the works: HdySqueezer is a cool new widget that is needed for HdyViewSwitcher, which is needed by many apps and HdyPreferencesWindow, which in turn is needed by Web and other apps.


The SMS plugin is being reworked, and an issue happening when more than one instance of Chatty was opened that has been resolved.

Linux 5.X Kernel

Hooray, the devkit’s LCD panel driver has been accepted upstream; thanks to Thierry Reding for applying these, and thanks to the reviewers Fabio Estevam and Sam Ravnborg, too! We are working on getting the librem5-devkit devicetree upstream. There is also an ongoing investigation into why USB stopped working with the 5.1 kernel, and last but not least, an SDMA fix was accepted upstream.

Hardware Work

We continue to work on the Librem 5 board schematic, and are getting ever closer to getting the hardware into production!

Community Outreach

The troubleshooting guides on the developer documentation have been split out to be a little more readable.


A big “Thanks!” to all the external teams that have helped review and merge changes into upstream projects; your time and contribution are much appreciated.

That’s all for now, folks – stay tuned for more exciting updates to come!

The post May Progress Update – Librem 5 appeared first on Purism.

What’s In a (User)Name

Tuesday 7th of May 2019 02:02:23 PM
One account for all things – the power of the Librem One username.

At Librem One you have One account to rule them all. One account to remember, One account to share with all; and no privacy to surrender.

One of the fundamental design goals for Librem One, outside of privacy, was linking all of our services under a single convenient login. This means that no matter how you want to connect with me, you have everything you need on this personal card:

Whether you want to follow me on Librem Social; email me on Librem Mail; or message me with text, voice or video on Librem Chat, you can do it all using

Discovering Others in the Community

Using your email address as the discovery tool across platforms makes it simple and convenient to find and communicate with people. As a remarkable side-benefit, it becomes very simple for people to determine the protocol-specific usernames—be those for social, for chat, or for email.

As an example of how this works in practice, let’s say you have joined a room in Librem Chat—a room about a topic that interests you. You meet other interesting people and make some friends; it’s now easy to find and follow them on Librem Social, since the usernames are the same on both platforms.

A single login also makes things easy for Librem 5 users: when you first get your phone, if you have a Librem One account you will be able to enter a single login and have all of these services light up, ready to use.

Hasn’t This Already Been Done?

It has, but for (unfortunately) very different reasons. Many tech giants also offer a unified login that gets you access to a bundle of services—but convenience is only one of the motives, and often the most innocent one. You see, they also find a lot of value in being able to link your accounts across platforms, in order to be able to collect and correlate more data about you—as well as lock you into their complete proprietary product suite.

Our approach is different from your traditional unified login, because by using standards and open protocols—Mastodon, Matrix, Email, OpenVPN—that allow people to communicate outside private clubs (and be free from centralized authoritarian control), we can offer a service that has a built-in and thriving community of millions of people. We can also offer a service that allows people to move freely, to change providers, to have control over their digital lives.

By using free software like Tusky, Mastodon, Matrix, RIOT, K9, Dovecot, PureOS, etc., we participate in a strong ecosystem of millions of developers – who release authored code for others to use, as long as they follow the same licensing of share-alike. By bundling all these standards and protocols into a single account, we are making it safer and more convenient for people than the rights-stripping proprietary services from big tech.

Proprietary Services Make Logins Complicated

Even though big tech firms offer unified login, their commitment to lock-in, proprietary protocols means you instantly sacrifice convenience once you leave their club. Currently, you may be a member of countless private clubs, designed to exploit and control you, and not even know it. If I ask you what are all the ways I can contact you, you will probably answer with a list containing a username on Facetime, Facebook Messenger, Instagram, Skype, Whatsapp, WeChat, LinkedIn, Twitter, Pinterest… and a phone number and email, of course. All of these ways to communicate have their own logins and (mostly proprietary) protocols that don’t work with each other. The last one, the email, stands out as it was created as a standard, to allow interoperability across the world, regardless of what client or service you use; the same design choices of advancing standards made it into Librem One.

So instead of a laundry list of accounts, you can have one single, simple account that offers you all the same convenience of posting, chatting, messaging and sharing. You will be able to do all those things from different applications, but the only account you have to remember is your Librem One account.

Enjoy freedom, sign up now for Librem One!

The post What’s In a (User)Name appeared first on Purism.

More in Tux Machines

Drawpile 2.1.11 release

Version 2.1.11 is now out. In addition to bug fixes, this release adds one long awaited feature: the ability to detach the chat box into a separate window. Another important change is to the server. IP bans now only apply to guest users. When a user with a registered account is banned, the ban is applied to the account only. This is to combat false positives caused by many unrelated people sharing the same IP address because of NAT. Read more Also: Drawpile 2.1.11 Released! Allow to Detach Chat Box into Separate

Audiocasts/Shows: Going Linux, Linux Action News, TechSNAP, GNU World Order, Linux in the Ham Shack, Python Podcast

  • Going Linux #371 · Listener Feedback

    Bill continues his distro hopping. We discuss the history of Linux and a wall-mountable timeline. Troy gives feedback on Grub. Grubb give feedback on finding the right distribution. Highlander talks communication security and hidden files. Ro's Alienware computer won't boot. David provides liks to articles.

  • Linux Action News 111

    Ubuntu sets the Internet on fire, new Linux and FreeBSD vulnerabilities raise concern, while Mattermost raises $50M to compete with Slack. Plus we react to Facebook’s Libra confirmation and the end of Google tablets.
  • SACK Attack | TechSNAP 406

    A new vulnerability may be the next ‘Ping of Death’; we explore the details of SACK Panic and break down what you need to know. Plus Firefox zero days targeting Coinbase, the latest update on Rowhammer, and a few more reasons it’s a great time to be a ZFS user.

  • GNU World Order 13x26
  • LHS Episode #289: Linux Deep Dive

    Hello and welcome to Episode #289 of Linux in the Ham Shack. In this episode, LHS gets a visit from Jon "maddog" Hall, a legend in the open source and Linux communities. He discusses--well--Linux. Everything you ever wanted to know about Linux from its early macro computing roots all the way up to the present. If there's something you didn't know about Linux, you're going to find it here. Make sure to listen to the outtake after the outro for 30 more minutes on Linux you problem didn't know anything about. Thanks to Jon for an illuminating and fascinating episode.

  • Podcast.__init__: Behind The Scenes At The Python Software Foundation

    One of the secrets of the success of Python the language is the tireless efforts of the people who work with and for the Python Software Foundation. They have made it their mission to ensure the continued growth and success of the language and its community. In this episode Ewa Jodlowska, the executive director of the PSF, discusses the history of the foundation, the services and support that they provide to the community and language, and how you can help them succeed in their mission.

today's howtos

Linux Package Managers Compared – AppImage vs Snap vs Flatpak

Package managers provide a way of packaging, distributing, installing, and maintaining apps in an operating system. With modern desktop, server and IoT applications of the Linux operating system and the hundreds of different distros that exist, it becomes necessary to move away from platform specific packaging methods to platform agnostic ones. This post explores 3 such tools, namely AppImage, Snap and Flatpak, that each aim to be the future of software deployment and management in Linux. At the end we summarize a few key findings. Read more