@bhush9, you suggested that it should be possible to run plasma mobile with software OpenGL. I can't make it work yet, do you have any idea?
What I did:
postmarketos-ui-plasma-mobile on the i9100 (sd card)/etc/profile.d/start_plasma.sh manually, then rebooted:# ck-launch-session kwin_wayland --drm --xwayland -- plasma-phone 2>&1 | logger -t "$(whoami):plasma-mobile"
ck-launch-session kwin_wayland --framebuffer --xwayland -- plasma-phone 2>&1 | logger -t "$(whoami):plasma-mobile"
Upon the boot, postmarktOS stays at the splash screen, and the log says:
localhost:~$ logread | grep plasma
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: kglobalaccel-runtime: Failed to register service org.kde.kglobalaccel
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: Couldn't start kglobalaccel from org.kde.kglobalaccel.service: QDBusError("org.freedesktop.DBus.Error.Disconnected", "Not connected to D-Bus server")
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: Failed to connect to the kglobalaccel daemon QDBusError("org.freedesktop.DBus.Error.Disconnected", "Not connected to D-Bus server")
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: Failed to connect to the kglobalaccel daemon QDBusError("org.freedesktop.DBus.Error.Disconnected", "Not connected to D-Bus server")
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: Failed to connect to the kglobalaccel daemon QDBusError("org.freedesktop.DBus.Error.Disconnected", "Not connected to D-Bus server")
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: kwin_core: Failed to initialize compositing, compositing disabled
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: kwin_core: The used windowing system requires compositing
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: kwin_core: We are going to quit KWin now as it is broken
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: Couldn't start kglobalaccel from org.kde.kglobalaccel.service: QDBusError("org.freedesktop.DBus.Error.Disconnected", "Not connected to D-Bus server")
What I did:
postmarketos-ui-plasma-mobile on the i9100 (sd card)mesa-dri-swrast + dependenciesUpon the boot, postmarktOS stays at the splash screen, and the log says:
localhost:~$ logread | grep plasma
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: kglobalaccel-runtime: Failed to register service org.kde.kglobalaccel
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: Couldn't start kglobalaccel from org.kde.kglobalaccel.service: QDBusError("org.freedesktop.DBus.Error.Disconnected", "Not connected to D-Bus server")
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: Failed to connect to the kglobalaccel daemon QDBusError("org.freedesktop.DBus.Error.Disconnected", "Not connected to D-Bus server")
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: Failed to connect to the kglobalaccel daemon QDBusError("org.freedesktop.DBus.Error.Disconnected", "Not connected to D-Bus server")
Jan 1 01:59:59 localhost user.notice user:plasma-mobile: Failed to connect to the kglobalaccel daemon QDBusError("org.freedesktop.DBus.Error.Disconnected", "Not connected to D-Bus server")
This is basically a tutorial on how to debug kwin wayland issues systematically:
https://blog.martin-graesslin.com/blog/2016/07/why-does-kwin_wayland-not-start/
also bshah wrote this:
ollieparanoid: I just read your github issue.. will comment on it, essentially you are missing debugging rules so debug output you have is not showing actual error
@bhush9: another idea, is there anything preventing us from running plasma mobile with X11 instead of wayland? As workaround for devices where we don't have accelerated GL yet.
The last time I tested Plasma, I followed https://wiki.postmarketos.org/index.php?title=Plasma_Mobile&oldid=478 on the commit https://github.com/postmarketOS/pmbootstrap/commit/81609a3251117c28306e0889d500fc3eb6f49f8c, and it booted to this on my unaccelerated device. (yes, I did actually take photos)
Would following the instructions on the older Wiki page help get kwin running?
Oooh.. which device was this?
@bhush9 Nexus 6P. It wasn't usable at the time (touches are responded to after about 20 seconds!), and it was missing a lot of things, but at least it was displaying. I'm trying to get it back to this state to see what's causing the regression.
I think it confirms the investigation of @NotKit that armhf is broken, and just arm64 works ootb..
@bhush9 On the latest master branch, I'm also getting a blank screen, so I'm not sure if the architecture makes a difference.
@zhuowei do you have output of logread?
@ollieparanoid As a stopgap measure, I got kwin to run inside Weston on my Nexus 6P, since Weston can run with software acceleration.

To do so:
Install weston, weston-shell-desktop, weston-backend-fbdev, mesa-dri-swrast
Get a root shell, setup a XDG_RUNTIME_DIR, Run
weston -S host-weston -B fbdev-backend.so --tty=1 --no-config &
And then setup dbus:
export $(dbus-launch)
Then finally start kwin:
KSCREEN_BACKEND=QScreen QT_QPA_PLATFORM=wayland
KWIN_COMPOSE=Q WAYLAND_DISPLAY=host-weston kwin_wayland --xwayland --width 1440 --height 2048 -- plasma-phone
So in summary, a script like this should work:\
export XDG_RUNTIME_DIR=/tmp/runtime-root
mkdir /tmp/runtime-root
chmod 700 /tmp/runtime-root
weston -S host-weston -B fbdev-backend.so --tty=1 --no-config &
export $(dbus-launch)
sleep 1
WAYLAND_DISPLAY=host-weston kwin_wayland --xwayland --width 1440 --height 2048 -- plasma-phone
Creative method! How is the performance?
@ollieparanoid quite slow - takes a second for the settings app to respond - but faster than when I had it running on fbdev in the older version.
Summary of what we know now:
kwin_weston is based on QtWayland, and its framebuffer driver doesn't work with any OpenGL (LuneOS UI has the same issue)kwin inside X11 should also work (because Hildon works with framebuffer + mesa-dri-swrast, too) (but we prefer Wayland over X11, and we have devices where Weston works, but X11 does not).So to move this forward, we could check if /dev/dri is present, and if it is not, use the "kwin_wayland on weston" approach instead of directly starting kwin_wayland.
It can all be done by modifying postmarketos-ui-plasma-mobile.
We have it working now 馃槂
Most helpful comment
@ollieparanoid As a stopgap measure, I got kwin to run inside Weston on my Nexus 6P, since Weston can run with software acceleration.
To do so:
Install weston, weston-shell-desktop, weston-backend-fbdev, mesa-dri-swrast
Get a root shell, setup a XDG_RUNTIME_DIR, Run
And then setup dbus:
Then finally start kwin:
KSCREEN_BACKEND=QScreen QT_QPA_PLATFORM=wayland KWIN_COMPOSE=Q WAYLAND_DISPLAY=host-weston kwin_wayland --xwayland --width 1440 --height 2048 -- plasma-phoneSo in summary, a script like this should work:\