KWin/Frameworks

< KWin
Revision as of 13:18, 5 November 2013 by Mgraesslin (talk | contribs)
Jump to: navigation, search

Compiling

In order to build KWin against KDE Frameworks 5, one needs to have a working frameworks setup. For this follow the steps outlined in Frameworks/Building.

Once frameworks is set up, kde-workspace can be compiled. At the time of this writing the development happens in branch frameworks-scratch of the kde-workspace git repository.

To get KWin working properly on Frameworks there are many tasks to be solved. These tasks can be found in the KWin/Frameworks Trello board. If you want to work on a task please contact Martin Gräßlin (mgraesslin on IRC, email mgraesslin at kde dot org) to be added to the board and assign a task to yourself.

Please see KWin/Hacking for further information about the structure of KWin.

Running

Xephyr

It is recommended to not replace the window manager which is running your session by KWin 5 at the current time. Instead best use a nested X-Server like Xephyr. Unfortunately this means that some features are not available. For example OpenGL based compositing is not availabe, though XRender based compositing is available. If you use Xephyr for testing specify environment variable KWIN_COMPOSE=X to enforce XRender compositing (see known limitations).

To start Xephyr:

Xephyr :99

To run an application on the nested X-Server just use the DISPLAY variable:

DISPLAY=:99 xterm

Starting

Follow the runtime instructions in Frameworks/Building - especially ensure that you started D-Bus. Otherwise KWin 5 and a running KWin 4 might conflict on the DBus. Apart from that there is nothing special to consider. KWin 5 can be started just like KWin 4. If a window manager is already running, use:

kwin --replace &

Known Limitations

  • Aurorae window decoration is not working

Configuring

Configuration is fully supported, though desktop effects kcm is not available. Please use new kwincompositing module instead.


Content is available under Creative Commons License SA 4.0 unless otherwise noted.