Specify Form-Factors in Your Librem 5 Apps

A photo of the Librem 5 showing the icons of several GNOME applications
mobile

While more and more applications are being redesigned to take smartphones like the Librem 5 into account, PureOS still offers lots of desktop applications which are not ready to run on such devices yet.

As a user you want to know which applications are relevant to install, so PureOS Store will by default only present mobile-ready applications, while still letting you opt-into showing all applications to take full advantage of the Librem 5’s convergeant docked mode. As a user you also want to know which applications are relevant to run at a given time, so Phosh will let you run desktop-only applications only when the phone is docked.

This requires the applications to provide some information on which form-factors they can handle, if you are an application developer and you want your applications to work as expected on the Librem 5, please provide the relevant information as shown below.

To make your application appear in PureOS Store, add the following lines to your AppStream metainfo:

<?xml version="1.0" encoding="UTF-8"?>
<component type="desktop"><custom>
    <value key="Purism::form_factor">workstation</value>
    <value key="Purism::form_factor">mobile</value>
  </custom></component>

To make your application appear in Phosh, add the following lines to your desktop entry:

[Desktop Entry]

# Translators: Do NOT translate or transliterate this text (these are enum types)!
X-Purism-FormFactor=Workstation;Mobile;

If you don’t add these, your application will be assumed to only be compatible with the desktop mode.

You may be intrigued by the Purism namespace in these solutions, we came up with these ad-hoc solutions to provide the form-factor compatibility information we need until better fleshed out solutions are ready. You can read more about this issue here: