Category:Interface

An interface is the graphical environment that runs on a device. Traditionally, these are called "desktop environments"; however, we prefer to use the term "interfaces" as we ship multiple non-desktop user interfaces as well.
Interfaces are categorized based on what chassis type they are primarily recommended for. (See machine-info for more information)
Clicking on the images in the interface info boxes will take you to the wiki page for the respective interface. |
Graphical Interfaces
These interfaces display a interface using a graphical toolkit. These are your "normal" interfaces.
Handset Interfaces
These are interfaces that adapt well to handsets (phones). This can also include tablets.
Desktop Interfaces
These interfaces are designed to fit on desktop devices, including laptops, convertibles, and servers. Some of these UIs have been adapted to fit on mobile screen-sizes, but the experience may be degraded.
MATE
A fork of GNOME 2. Not as configurable as Xfce4, thus the setup is less touch-friendly.
Wiki page
Console Interfaces
These display an interface using the Linux CLI or TUI. They are meant for power-users or people who want to configure their system from scratch.
Handset Interfaces
These interfaces display a keyboard on the console, allowing for usage on devices without a physical keyboard.
fbkeyboard
A keyboard that runs in the framebuffer. Useful when regular graphical interfaces don't work.
Wiki page
buffyboard
A modern keyboard that runs in the framebuffer. Useful when regular graphical interfaces don't work.
console
Barebone postmarketOS installation; not recommended for phones; mostly used for debugging or headless installations
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.
For new ports, using a simple, light-weight X11 interface such as Xfce4, MATE, LXQt may provide a better experience. Sxmo and i3wm could also be used as options.
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#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.
Installing interfaces
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 init
you 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 commandapk 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
Subcategories
This category has only the following subcategory.
Pages in category "Interface"
The following 21 pages are in this category, out of 21 total.