Plasma/Next/Wayland
List of modules/libs that will need any work to run on Wayland:
kcontrol
Some KCM Modules need porting or at least adding runtime checks to avoid running some code. A KCM which is too X specific can be forced to be only shown on X11 with: X-KDE-OnlyShowOnQtPlatforms=xcb in the desktop file.
krdb
Already has HAVE_X11 so compilation is already optional. It seems that the code is no longer needed with Qt5 since we have our own QPT.
access
Uses krdb, uses XKblib. Currently excluded from listing on non-x11.
colors
Uses krdb
fonts
Uses krdb, already has HAVE_X11 for dpi configurationj
input
Rewrite all this with abstraction so we can support both, X11 and Wayland, some modules are currently excluded from listing on non-X11
cursortheme
Needs abstraction, and implement wl_cursor_* backend for Wayland.
mouse
These settings belong now to the compositor (KWin), so we need to sort things out over there. Currently excluded from listing on non-X11.
keyboard
Needs port to http://xkbcommon.org/ Currently excluded from listing on non-X11.
kfontsinst
Drop Xft support and move to fontconfig only
style
Uses krdb
khotkeys
Needs to be implemented somehow inside KWin, since the compositor is the only one that has access to the mouse.
kinfocenter
Some calls to X api has to be made platform specific, it has a lot of #ifdef Q_WS_X11 already. Maybe also add a module for Wayland information.
klipper
Clipboard is handled by the compositor (KWin), we might need to wait to port klipper to it
krunner
Probably won't need any porting once krunner in plasma2 is released. We might need a way of making sure it is placed centered on the screen since Apps can't decide position on Wayland.
ksmserver
If screenlocker is split, we will only need to implement a new session management api based on dbus.
ksysguard
Make the X11 platform dependent, they do not make sense in Wayland (x11 memory usage)
lib/taskmanager
Needs platform abstraction and then talk to KWin
powerdevil/dpms
Needs port to drm and probably go to KWin
kscreen
Port to drm/kms and probably put it in KWin