User-Interfaces: Difference between revisions
No edit summary |
add informations to the page: add the requirements of most interfaces, add a paragraph on Phosh and explain how to switch UI once one is installed. |
||
Line 9: | Line 9: | ||
=== Weston === | === Weston === | ||
'''[[Weston]]''' is the default, minimal, interface based on XWayland. It allows developers to do "simple" things like running firefox and opening a terminal, plus testing the touchscreen and other peripherals. | '''[[Weston]]''' is the default, minimal, interface based on XWayland. It allows developers to do "simple" things like running firefox and opening a terminal, plus testing the touchscreen and other peripherals. Alone, it isn't really usable for touchscreen-only devices. | ||
* [http://i.imgur.com/5XtSNzp.jpg Running Youtube in Weston] | * [http://i.imgur.com/5XtSNzp.jpg Running Youtube in Weston] | ||
Line 18: | Line 18: | ||
'''[[Plasma Mobile]]''' is a mobile variant of the KDE Plasma user interface, optimized for touchscreen. | '''[[Plasma Mobile]]''' is a mobile variant of the KDE Plasma user interface, optimized for touchscreen. | ||
It only has decent performance on a kernel that features [[DRM]], and is disabled by default on devices that don't have it. | |||
Work in Progress. | Work in Progress. | ||
Line 33: | Line 34: | ||
For more information, see PR [https://github.com/postmarketOS/pmbootstrap/pull/461 #461]. | For more information, see PR [https://github.com/postmarketOS/pmbootstrap/pull/461 #461]. | ||
===MATE=== | === Phosh === | ||
'''[[Phosh]]''', the '''pho'''ne '''sh'''ell, is a graphical interface for mobile phones created by Purism for the Librem5. It is one of the most polished mobile interface interface and works best with GNOME 3 applications. Phosh, like Sway, require [[DRM]] and simply won't work if it is not supported by the kernel. | |||
=== MATE === | |||
'''[[MATE]]''' is a full GTK-based desktop environment forked from the code base of GNOME 2. | '''[[MATE]]''' is a full GTK-based desktop environment forked from the code base of GNOME 2. | ||
It works well even on devices that only have a framebuffer for display, which makes it a good choice for devices that do not have [[DRM]] support. | |||
===Xfce4=== | === Xfce4 === | ||
'''[[XFCE4|Xfce4]]''' is another full GTK-based desktop environment, aiming to be fast and lightweight. | '''[[XFCE4|Xfce4]]''' is another full GTK-based desktop environment, aiming to be fast and lightweight. | ||
It also works well on framebuffer-only devices. | |||
---- | |||
=== Others === | === Others === | ||
Line 56: | Line 64: | ||
*''[https://wiki.alpinelinux.org/wiki/Category:Desktop Other graphical interfaces supported by Alpine]'' should work to some extent on pmOS. These include [[GNOME 3]]. | *''[https://wiki.alpinelinux.org/wiki/Category:Desktop Other graphical interfaces supported by Alpine]'' should work to some extent on pmOS. These include [[GNOME 3]]. | ||
== How to choose | == How to choose an UI == | ||
=== With pmbootstrap === | |||
You have to configure <code>pmbootstrap</code> before generating the system image either by <code>pmbootstrap init</code> or <code>pmbootstrap config</code>: | You have to configure <code>pmbootstrap</code> before generating the system image either by <code>pmbootstrap init</code> or <code>pmbootstrap config</code>: | ||
Line 73: | Line 83: | ||
[09:22:56] * xfce4: (X11) Lightweight GTK+2 desktop (stylus recommended)</pre> | [09:22:56] * xfce4: (X11) Lightweight GTK+2 desktop (stylus recommended)</pre> | ||
<pre>$ ./pmbootstrap config ui weston</pre> | <pre>$ ./pmbootstrap config ui weston</pre> | ||
=== Once installed === | |||
Once you have postmarketOS on your phone or tablet, you can still change user interface without reflashing so long you have an internet connection: you need to remove your current UI and install another one. Example: | |||
# apk del postmarketos-ui-mate | |||
# apk add postmarketos-ui-plasma-mobile | |||
== See also == | == See also == |
Revision as of 22:44, 10 December 2019
At the moment Weston is the default UI for postmarketOS. It is simple and helps us to keep researching and developing the base of pmOS but in the future we will also support other more sophisticated and fancy User Interfaces.
Here is a list showing examples and the on-going work on this topic.
This index page could use some help, see wiki#23.
User Interfaces
Weston
Weston is the default, minimal, interface based on XWayland. It allows developers to do "simple" things like running firefox and opening a terminal, plus testing the touchscreen and other peripherals. Alone, it isn't really usable for touchscreen-only devices.
Project page: https://github.com/wayland-project/weston
Plasma Mobile
Plasma Mobile is a mobile variant of the KDE Plasma user interface, optimized for touchscreen. It only has decent performance on a kernel that features DRM, and is disabled by default on devices that don't have it.
Work in Progress.
For more information, see issues #161, and #378.
Project page: https://plasma-mobile.org/
Hildon
Hildon is an application framework originally developed for mobile devices (PDAs, mobile phones, etc.) running the Linux operating system as well as the Symbian operating system. It was developed by Nokia for the Maemo operating system and is now a part of GNOME. It focuses on providing a finger-friendly interface. It is primarily a set of GTK+ extensions that provide mobile-device–oriented functionality, but also provides a desktop environment that includes a task navigator for opening and switching between programs, a control panel for user settings, and status bar, task bar and home applets. It is standard on the Maemo platform used by the Nokia Internet Tablets and the Nokia N900 smartphone.
Hildon is based on GTK2 and there is a work in progress port to GTK3.
For more information, see PR #461.
Phosh
Phosh, the phone shell, is a graphical interface for mobile phones created by Purism for the Librem5. It is one of the most polished mobile interface interface and works best with GNOME 3 applications. Phosh, like Sway, require DRM and simply won't work if it is not supported by the kernel.
MATE
MATE is a full GTK-based desktop environment forked from the code base of GNOME 2. It works well even on devices that only have a framebuffer for display, which makes it a good choice for devices that do not have DRM support.
Xfce4
Xfce4 is another full GTK-based desktop environment, aiming to be fast and lightweight. It also works well on framebuffer-only devices.
Others
See issue #62 for more information on other UIs that could be ported to postmarketOS. Some of these are:
- ubports (Fork of the discontinued Ubuntu Phone project)
- mer/SailfishOS related:
- sway
- LuneOS (link) (UI from continuation of webOS, HP's discontinued and open sourced mobile operating system with Wayland and QT5)
- PDA interfaces, may be desirable, as they are suited to devices capable of stylus input, such as the Nokia N900 and Galaxy Note devices, as well as devices with constrained system resources. There is some work into porting components from these to PMOS.
- Other graphical interfaces supported by Alpine should work to some extent on pmOS. These include GNOME 3.
How to choose an UI
With pmbootstrap
You have to configure pmbootstrap
before generating the system image either by pmbootstrap init
or pmbootstrap config
:
$ ./pmbootstrap init [09:22:39] Target device (either an existing one, or a new one for porting). [09:22:39] Available (49): amazon-thor, asus-flo, asus-grouper, asus-tf101, fairphone-fp2, google-glass, htc-ace, htc-bravo, huawei-angler, huawei-y530, leeco-s2, lenovo-karate, lg-d285, lg-d855, lg-dory, lg-h815, lg-hammerhead, lg-lenok, lg-mako, motorola-osprey, motorola-shamu, motorola-titan, nokia-rx51, oneplus-bacon, oneplus-onyx, qemu-aarch64, qemu-amd64, qemu-vexpress, samsung-espresso10, samsung-i747m, samsung-i9003, samsung-i9070, samsung-i9100, samsung-i9195, samsung-i9305, samsung-i9505, samsung-maguro, samsung-n7100, samsung-s6500d, semc-anzu, sony-amami, sony-aries, sony-castor-windy, sony-honami, sony-yuga, t2m-flame, teclast-x80pro, wiko-lenny3, xiaomi-ido [09:22:39] Device [qemu-amd64]: [09:22:56] Available user interfaces (6): [09:22:56] * none: No graphical environment [09:22:56] * hildon: (X11) Lightweight GTK+2 UI (optimized for single-touch touchscreens) [09:22:56] * luna: (Wayland) webOS UI, ported from the LuneOS project (Not working yet) [09:22:56] * mate: (X11) MATE Desktop Environment, fork of GNOME2 (stylus recommended) [09:22:56] * plasma-mobile: (Wayland) Mobile variant of KDE Plasma, optimized for touchscreen [09:22:56] * weston: (Wayland) Reference compositor (demo, not a phone interface) [09:22:56] * xfce4: (X11) Lightweight GTK+2 desktop (stylus recommended)
$ ./pmbootstrap config ui weston
Once installed
Once you have postmarketOS on your phone or tablet, you can still change user interface without reflashing so long you have an internet connection: you need to remove your current UI and install another one. Example:
# apk del postmarketos-ui-mate # apk add postmarketos-ui-plasma-mobile