Gentoo’s road to Wayland in KDE

KWin in KDE SC 4.11 will include experimental support for Wayland, as you can read in the official 4.11 Beta 1 announcement:

KWin and Path to Wayland—Intial experimental support for Wayland was added to KWin. KWin also got many OpenGL improvements including support being added for creating an OpenGL 3.1 core context and robustness from using the new functionality provided by the GL_ARB_robustness extension. Numerous KWin optimizations are aimed at reducing CPU and memory overhead in the OpenGL backend. Some desktop effects have been re-written in JavaScript to ease maintenance.

As the Beta 1 is already available in the gentoo kde overlay you may ask what the current state is. You are right it is time to talk about it. I will try to serve you the facts.

Current state

Wayland is already packaged in portage (dev-libs/wayland), thanks to the x11 herd.

johu@elia ~ $ eix -s wayland
[I] dev-libs/wayland
     Available versions:  (~)0.95.0 (~)1.0.6 (~)1.1.0 {doc static-libs}
     Installed versions:  1.1.0(21:54:08 05.06.2013)(-doc -static-libs)
     Homepage:            http://wayland.freedesktop.org/
     Description:         Wayland protocol libraries

KWin 4.11 Beta 1 + KWin master (4.8.10 + 9999 ) has already a build option (USE flag) for wayland.

johu@elia ~ $ eix -s kwin
[I] kde-base/kwin
     Available versions:  (4) 4.10.3 (~)4.10.4 **4.10.49.9999^m[1] [M](~)4.10.80^m[1] (**)9999^m[1]
       {aqua debug gles opengl wayland}
     Installed versions:  9999(4)^m[1](22:14:15 18.06.2013)(gles opengl wayland -aqua -debug)
     Homepage:            http://www.kde.org/
     Description:         KDE window manager

It builds and links already successfully against it.

johu@elia ~ $ scan kwin
dev-libs/wayland-1.1.0
dev-qt/qtcore-4.8.4-r5
dev-qt/qtdbus-4.8.4
dev-qt/qtdeclarative-4.8.4
dev-qt/qtgui-4.8.4-r1
dev-qt/qtscript-4.8.4
kde-base/kactivities-9999
kde-base/kdelibs-9999
kde-base/kwin-9999
kde-base/libkworkspace-9999
kde-base/liboxygenstyle-9999
media-libs/mesa-9.1.3
sys-devel/gcc-4.7.3
sys-libs/glibc-2.17
x11-libs/libICE-1.0.8-r1
x11-libs/libSM-1.2.1-r1
x11-libs/libX11-1.6.0
x11-libs/libxcb-1.9.1
x11-libs/libXcursor-1.1.13-r1
x11-libs/libXdamage-1.1.4-r1
x11-libs/libXext-1.3.2
x11-libs/libXrandr-1.4.1
x11-libs/libXxf86vm-1.1.3
x11-libs/xcb-util-image-0.3.9
x11-libs/xcb-util-keysyms-0.3.9
x11-libs/xcb-util-wm-0.3.9

The USE flag is globally masked for stable systems. As a side note, i realy like the stable use mask feature in EAPI 5.

Next steps

1) We need to package the Wayland compositor aka Weston in portage tree, to start a full blown Wayland session.  This task is already in progress (bug #445736), an ebuild is available in the gentoo x11 overlay. Will be finished soon hopefully.

2) Add a wayland build option (USE flag) for the KDE start script (kde-base/startkde). The USE flag will allow us to ship a modified version of it, so that we can tell KWin to use weston/wayland when starting.

So I am realy sure you will be able to play around with Wayland in starting August when KDE SC 4.11.0 is released and hit the portage tree by simply enabling a USE flag. Are you excited? You should!

Have fun!

Disabling semantic-desktop at runtime

Today we bumped  KDE SC 4.11 beta 1 (4.10.80) in the gentoo kde overlay. The semantic-desktop use flag is dropped in >=kde-base/4.10.80, as you may already noticed or read in dilfridges blog post. So if your hardware is not powerful enough or you just don’t want to use the feature you can easily disable it at runtime.

1. Go to the “System Settings” and search for “Desktop Search”

System Settings

 

2. Uncheck at least the file and email indexer. You can also disable the “Nepomuk Semantic Desktop”.

Desktop Search Settings

Have fun!

 

Update

If you want to disable Akonadi you can check out this blog post.