GNOME

The default software stack for the Librem 5 is based on many of the technologies from the GNOME desktop environment. The applications supplied with the phone are also built using components from GNOME, such as the GTK toolkit. It can be useful to install the latest development packages in order to get access to features which can help with building mobile applications.

GNOME Builder

We suggest that developers use the GNOME Builder Integrated Development Environment (IDE) to develop applications. The latest documentation for Builder describes the preferred installation method for the IDE. This can be used to ensure that you have the latest version.

Meson and Ninja

Many applications will use the Meson and Ninja build tools to configure and build applications. The versions of these available in modern GNU/Linux distributions should be sufficient. Debian-based distributions, such as PureOS, provide packages called meson and ninja-build.

PyGObject

Developers using the Python 3 programming language should install the PyGObject bindings for GObject-based libraries. Debian-based distributions provide these in a package called python3-gi. Installation on other platforms is described in the PyGObject documentation.

gitg

This GNOME git client can be useful for visualizing git repositories. This is particularly helpful if you are considering porting an application with an extensive development history.

Versions of this tool provided with modern GNU/Linux distributions should be sufficient. Debian-based distributions provide a package called gitg.