An interface is the graphical shell that runs on a device. Traditionally, these are called "desktop environments"; however, we prefer to use the name "interfaces" as we ship multiple mobile-first user interfaces as well.
As of writing, there are 17 user interfaces readily available in postmarketOS. These range from regular desktop environments to mobile-centric interfaces.
Commonly used interfaces
|Clicking on the images in the interface info boxes will take you to the wiki page for the respective interface.|
These are recommended for devices running a (close to) mainline kernel.
Phosh is a mobile interface developed by Purism. It is based on the GNOME stack.
Plasma Mobile is the mobile version of KDE Plasma. It is based on the KDE stack.
Sxmo (Simple X Mobile) is based on a tiling WM, and uses hardware buttons as controls. For advanced users.
Xfce4 is a lightweight desktop environment. It might be the best choice for new ports (non-DRM).
MATE is a fork of GNOME 2. It's not as configurable as Xfce4 and thus the setup in postmarketOS is less touch-friendly.
fbkeyboard is a keyboard that runs in the framebuffer. Useful when regular graphical interfaces don't work.
none literally is a minimal environment with none of UIs. console also has some extra packages such as NetworkManager included.
Weston is the reference implementation of a Wayland compositor. It can be used as a demo for DRM support.
Gnome-Shell either with or without the experimental mobile patches.
Other than these few, we package other user interfaces, ranging from various desktop environments to 10-foot UIs like Kodi or Plasma Bigscreen, as well as experimental UIs like Shelli. If you'd like to learn more, you can find more links to wiki pages of various interfaces at the bottom of this page.
Which interfaces work where (and which interface should I use?)
For devices running a (close to) mainline kernel (they typically have working GPU acceleration), Phosh, Plasma Mobile and Sxmo are recommended. There are also some alternative mobile interfaces like Lomiri, but support for them is still work-in-progress.
Phosh and Weston currently don't work on devices running downstream kernels due to lack of DRM support (only supported in mainline kernel). It also does not work on mainline devices without working hardware acceleration; however, some progress towards fixing this was made - see pmaports issue #948. Plasma Mobile can be launched in software rendering mode, but performs poorly.
Additionally, Phosh, Plasma Mobile and other 'modern' UIs may be too heavy for resource constrained devices (e.g. those with little RAM or less powerful CPU/GPU)
For minimal usage like an SBC or a Raspberry Pi, use console or none.
For devices in the main or community category, you can download official postmarketOS images with pre-installed interfaces.
If you'd like to install a different interface, you have multiple options:
- Install postmarketOS with pmbootstrap. During
pmbootstrap inityou will be asked to select an user interface.
- If you'd like to install a different UI on a device running postmarketOS, install the UI package for it with
apk add postmarketos-ui-<UI name>. You can get a list of available UIs by using the command
apk search postmarketos-ui-.
For none/console UI, you can run these commands according to your demand:
# rc-service tinydm stop # Stop current DM. Replace tinydm with the DM that you are using # rc-update del tinydm # Don't start DM by default # apk del postmarketos-ui-* # Delete UI metapackages if you don't need them anymore # apk add postmarketos-ui-console # Install console UI metapackage
This category has only the following subcategory.