|Initial release||September 20, 2018|
0.25.0 / March 2, 2023
Phosh (portmanteau of phone and shell) is a graphical user interface designed for mobile and touch-based devices. It is the default shell used on several mobile Linux operating systems including PureOS, Mobian, and Fedora Mobility. It is also an option on postmarketOS, Manjaro, and openSUSE.
In August 2017, Purism, personal computing hardware vendors and developers of PureOS announced their intention to release a privacy-centric smartphone that ran a mobile-optimized version of their Linux-based operating system. With this announcement, Purism released mockups of Phosh that resembled a modified GNOME Shell. This eventually became known as the Librem 5.
In April 2018, Purism started to publicly release documentation that referenced Phosh with updated mockups, and hired GNOME UI/UX developer Tobias Bernard to directly contribute to the shell.
Despite the Librem 5 phone being delayed, Phosh received its first official release in October 2018, which was primarily focused on developer usage. The first official hardware for direct use with Phosh was shipped several months later in December when Purism shipped hardware devkits. In July 2020, the PinePhone was released with a version of postmarketOS that featured the Phosh interface.
Since August 2021, Phosh's source code repository has been hosted by the GNOME Foundation, but Purism maintains a separate repository for changes prior to being merged into the development branch.
The Phosh Overview screen is the primary method to interact with the shell. It contains the App Grid, which displays user applications that can be launched from icons. The App Grid is split into two sections. The top section is reserved for frequently-used applications, and is known as "Favorites". The bottom section is reserved for all other installed applications.
In addition, a functionality is included that allows users to type search terms to find specific applications. The Overview screen also contains the Activities view, which visualizes the currently-opened applications, and gives a method to dismiss them as well.
When the device's display is toggled from off to on, Phosh displays a Lock Screen with the time and date along with several indicator icons that illustrate the device's status of cellular network service, Wi-Fi, Bluetooth, and battery percentage. Upon sliding up from the bottom of the screen, the Lock Screen requests a predefined passcode to unlock and continue to the Overview screen.
Phosh is based-on the GTK widget toolkit, and descends as a mobile-specific fork from the GNOME Shell. Like GNOME Shell, Phosh relies upon certain GNOME components to provide a fully-featured mobile interface. Primary examples of this are its use of the GNOME Session Manager for session management and the GNOME Settings Daemon for storing application and shell settings. Phosh also makes use of some freedesktop.org system components such as Polkit, UPower, iio-sensor-proxy, NetworkManager and ModemManager.
It is both open source and libre software. Closely-related technologies used in conjunction with Phosh, and also significantly developed by Purism, are Phoc (a Wayland compositor), Squeekboard (an on-screen virtual keyboard), feedbackd (a haptic feedback daemon) and portions of libadwaita in regards to adaptive windowing to allow for otherwise desktop-centric apps to act and feel as true mobile apps.
The table illustrates major releases, and is not an exhaustive list of releases.
|Version||Date||Inclusion with initial OS release|
|0.0.1||September 20, 2018|
|0.1.0||September 30, 2019|
|0.2.0||February 26, 2020|
|0.3.0||May 19, 2020|
|0.4.0||July 1, 2020||Fedora Linux 33|
|0.5.0||October 28, 2020||postmarketOS 20.05|
|0.6.0||November 15, 2020||postmarketOS 21.03|
|0.7.0||December 10, 2020|
|0.8.0||January 19, 2021||Fedora Linux 34|
|0.9.0||March 3, 2021|
|0.10.0||March 31, 2021||PureOS Amber|
|0.11.0||May 31, 2021|
|0.12.0||June 30, 2021|
|0.13.0||August 10, 2021||Fedora Linux 35|
|0.14.0||October 28, 2021||PureOS Byzantium|
|0.15.0||January 25, 2022|
|0.16.0||February 25, 2022|
|0.17.0||March 25, 2022||postmarketOS 22.06|
|0.20.0||August 8, 2022|
|0.21.0||September 1, 2022||postmarketOS 22.06 SP2|
|0.22.0||November 7, 2022|
|0.23.0||December 28, 2022|
|0.24.0||February 2, 2023|
|0.25.0||March 2, 2023|
|0.26.0||April 3, 2023|