Plasma Mobile
![]() Plasma Mobile running in qemu | |
Name | Plasma Mobile |
---|---|
Graphics stack | KWin on Wayland or Xorg |
Toolkit | QT5 |
In postmarketOS | |
Package | postmarketos-ui-plasma-mobile |
Status | Available |
Overview
The basic shell has been ported to postmarketOS, and can now be tested.
Currently, Plasma Mobile is not available from the master
branch, to use it you will need to check out the postmarketos-ui-plasma-mobile
branch from the git repository. Once it is considered stable it will be merged with the master
branch (see #378 for more info and progress).
To install it on your device run ./pmbootstrap.py init
and choose plasma-mobile
in the interface section.
Because compiling the entirety of KDE and Plasma may take a long time, a Git repository has been setup where pre-built packages can be downloaded for both x86_64 and armhf.
Clone https://github.com/puretryout/pmos-plasma-mobile
and copy the armhf
and x86_64
folders to ~/.local/var/pmbootstrap/packages/
, and copy the config_apk_keys
folder to ~/.local/var/pmbootstrap/
. Afterwards run ./pmbootstrap.py index
from the root of your pmbootstrap installation.
For the official KDE instructions on running Plasma Mobile you can use their website: https://community.kde.org/Plasma/Mobile/RunningApps
Packaging efforts have been documented here.
Running
For now Plasma requires a device with (basic) OpenGL support.
After installation, the shell will automatically launch upon boot. If it doesn't, have a look at /etc/profile.d/start_plasma.sh
and /bin/startkwin.sh
.
Debugging
By default Plasma and kwin don't log anything significant or useful for this project. To tell them to, create ~/.config/QtProject/qtlogging.ini
with the following content:
[Rules] org.kde.kwindowsystem.info=true org.kde.kwindowsystem.warning=true org.kde.kwindowsystem.critical=true org.kde.kwindowsystem.debug=true kwin_core.info=true kwin_core.warning=true kwin_core.critical=true kwin_core.debug=true kwineffects.info=true kwineffects.warning=true kwineffects.critical=true kwineffects.debug=true libkwineffects.info=true libkwineffects.warning=true libkwineffects.critical=true libkwineffects.debug=true libkwinglutils.info=true libkwinglutils.warning=true libkwinglutils.critical=true libkwinglutils.debug=true libkwinxrenderutils.info=true libkwinxrenderutils.warning=true libkwinxrenderutils.critical=true libkwinxrenderutils.debug=true kwin_wayland_drm.info=true kwin_wayland_drm.warning=true kwin_wayland_drm.critical=true kwin_wayland_drm.debug=true kwin_wayland_framebuffer.info=true kwin_wayland_framebuffer.warning=true kwin_wayland_framebuffer.critical=true kwin_wayland_framebuffer.debug=true kwin_wayland_hwcomposer.debug=true kwin_wayland_backend.info=true kwin_wayland_backend.warning=true kwin_wayland_backend.critical=true kwin_wayland_backend.debug=true kwin_wayland_x11windowed.info=true kwin_wayland_x11windowed.warning=true kwin_wayland_x11windowed.critical=true kwin_wayland_x11windowed.debug=true kwin_platform_x11_standalone.info=true kwin_platform_x11_standalone.warning=true kwin_platform_x11_standalone.critical=true kwin_platform_x11_standalone.debug=true kwin_libinput.info=true kwin_libinput.warning=true kwin_libinput.critical=true kwin_libinput.debug=true kwin_tabbox.info=true kwin_tabbox.warning=true kwin_tabbox.critical=true kwin_tabbox.debug=true kwin_decorations.info=true kwin_decorations.warning=true kwin_decorations.critical=true kwin_decorations.debug=true kwin_scripting.info=true kwin_scripting.warning=true kwin_scripting.critical=true kwin_scripting.debug=true kwin_xkbcommon.info=true kwin_xkbcommon.warning=true kwin_xkbcommon.critical=true kwin_xkbcommon.debug=true kwin_qpa_plugin.info=true kwin_qpa_plugin.warning=true kwin_qpa_plugin.critical=true kwin_qpa_plugin.debug=true
You can read the log output with logread -f
. Anything related to Plasma and KDE will have a username:plasma-mobile
prefix.