Commit b3fc1402 authored by Heather Ellsworth's avatar Heather Ellsworth

Adding Plasma Mobile steps

parent 3bea2b78
.. librem5 documentation master file, created by
sphinx-quickstart on Mon Jan 29 14:23:33 2018.
You can adapt this file completely to your liking, but it should at least
contain the root `toctree` directive.
Plasma Mobile on armhf
======================
For this exercise, I used the imx6 dev board, starting from imx6.img built from the d0349a9 commit (image-builder repo). All packages were built on this board to get .debs for the native armhf architecture.
**********************************
Setting up Development Environment
**********************************
On the imx system, install some initial plasma mobile build dependencies::
purism@pureos:~$ sudo apt-get install plasma-workspace-wayland git dpkg-dev cmake debhelper extra-cmake-modules kwayland-dev libkf5declarative-dev libkf5notifications-dev libkf5people-dev libkf5service-dev libsystemd-dev libtelepathy-qt5-dev pkg-kde-tools plasma-framework-dev qt5-default qtdeclarative5-dev fakeroot
***********************
plasma-phone-components
***********************
Get the plasma-phone-components repos::
purism@pureos:~$ git clone https://github.com/KDE/plasma-phone-components.git
purism@pureos:~$ git clone https://github.com/debian-pm/plasma-phone-components-packaging.git
Build plasma-phone-components::
purism@pureos:~$ cd plasma-phone-components
purism@pureos:~/plasma-phone-components$ tar czvf plasma-phone-components_0.7+git20180223.orig.tar.gz .*
purism@pureos:~/plasma-phone-components$ mv plasma-phone-components_0.7+git20180223.orig.tar.gz ..
purism@pureos:~/plasma-phone-components$ cp -r ../plasma-phone-components-packaging/debian .
The build results in ~/plasma-phone-components_0.7+git20180223-1_armhf.deb but before we can install it, we need to build and install a few dependencies::
purism@pureos:~$ sudo apt-get install powerdevil qml-module-org-kde-kio qml-module-qtquick-localstorage fonts-oxygen kde-telepathy-kpeople libkf5contacts-dev
**kpeople-vcard**
This is the only dependency for plasma-phone-compnents that we cannot just install from apt.
Get the kpeople-vcard repos::
purism@pureos:~$ git clone https://cgit.kde.org/kpeoplevcard.git
purism@pureos:~/tmp$ git clone https://github.com/plasma-phone-packaging/kpeoplevcard.git
Note that the second link is the needed debian dir and a small change is needed::
diff --git a/debian/changelog b/debian/changelog
index c2c864f..b2875ee 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,4 +1,4 @@
-kpeoplevcard (0.0+git20150716) vivid; urgency=medium
+kpeoplevcard (0.0+git20150716-1) vivid; urgency=medium
(A `pull request <https://github.com/plasma-phone-packaging/kpeoplevcard/pull/1>`_ was made)
Make the tarball and then just as with the plasma-phone-components, put the debian dir in the kpeoplevcard dir and build::
purism@pureos:~/kpeoplevcard$ tar czvf kpeoplevcard_0.0+git20150716.orig.tar.gz .*
purism@pureos:~/kpeoplevcard$ mv kpeoplevcard_0.0+git20150716.orig.tar.gz ..
purism@pureos:~/kpeoplevcard$ cp -r ~/tmp/kpeoplevcard/debian .
purism@pureos:~/kpeoplevcard$ dpkg-buildpackage -sa -us -uc
The build results in ~/kpeople-vcard_0.0+git20150716-1_armhf.deb
Install both kpeople-vcard and plasma-phone-components::
purism@pureos:~$ sudo dpkg -i kpeople-vcard_0.0+git20150716-1_armhf.deb
purism@pureos:~$ sudo dpkg -i plasma-phone-components_0.7+git20180223-1_armhf.deb
***************
plasma-settings
***************
Get the plasma-settings repos::
purism@pureos:~$ git clone https://anongit.kde.org/plasma-settings.git
purism@pureos:~$ git clone https://github.com/debian-pm/plasma-settings-packaging.git
Make the tarball and put the debian dir in the plasma-settings dir::
purism@pureos:~$ cd plasma-settings
purism@pureos:~/plasma-settings$ tar czvf plasma-settings_0.0.1+git20180223.orig.tar.gz .*
purism@pureos:~/plasma-settings$ mv plasma-settings_0.0.1+git20180223.orig.tar.gz ..
purism@pureos:~/plasma-settings$ cp -r ~/plasma-settings-packaging/debian .
Install needed dependencies::
purism@pureos:~/plasma-settings$ sudo apt-get install libaccounts-glib-dev libaccounts-qt5-dev libgettextpo-dev libkaccounts-dev libkf5archive-dev libkpimgapi-dev libsignon-qt5-dev qtbase5-private-dev kaccounts-providers qml-module-org-kde-kaccounts qml-module-org-kde-activities
Note that plasma-settings currently has a runtime dependency of qml-module-ubuntu-onlineaccounts. I've filed `an issue <https://github.com/debian-pm/plasma-settings-packaging/issues/1>`_.
But to succesfully build plasma-settings, I had to remove this dependency from the control file before building plasma-settings.
Build plasma-settings::
purism@pureos:~/plasma-settings$ dpkg-buildpackage -sa -us -uc
The build results in ~/plasma-settings_0.0.1+git20180223-1_armhf.deb that we can install::
purism@pureos:~$ sudo dpkg -i plasma-settings_0.0.1+git20180223-1_armhf.deb
*********************
Running Plasma Mobile
*********************
First stop weston and open up another tty on the board::
purism@pureos:~$ sudo systemctl stop weston
Run kwin_wayland from another tty::
purism@pureos:~$ /usr/bin/kwin_wayland --xwayland --drm plasma-phone
Note that to capture the plasma-phone boot logs, you can always add "2> kwin.log" to the end of the kwin_wayland command. Additional plasma logs can be found in /tmp/plasmashell_logs.
Also note that I needed to reboot to eventually get something that rendered beyond just some dead pixels at the top and bottom. After the reboot, I can only get a properly rendered dekstop if I use `--xwayland`
Instead of using the `--xwayland` parameter, we will be able to switch to `-platform wayland` once `zwp_linux_dmabuf support <https://phabricator.kde.org/D10750>`_ has been added to Kwin.
At this point plasma mobile should be running on your imx6 board!
.. image:: images/plamo.jpg
:width: 400px
:height: 550px
:align: center
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment