summaryrefslogtreecommitdiff
path: root/x11/kde-workspace-kde4
diff options
context:
space:
mode:
Diffstat (limited to 'x11/kde-workspace-kde4')
-rw-r--r--x11/kde-workspace-kde4/Makefile148
-rw-r--r--x11/kde-workspace-kde4/distinfo3
-rw-r--r--x11/kde-workspace-kde4/files/kde4.desktop7
-rw-r--r--x11/kde-workspace-kde4/files/kdm4.in75
-rw-r--r--x11/kde-workspace-kde4/files/patch-CMakeLists.txt11
-rw-r--r--x11/kde-workspace-kde4/files/patch-ConfigureChecks.cmake20
-rw-r--r--x11/kde-workspace-kde4/files/patch-kdm_backend_client.c35
-rw-r--r--x11/kde-workspace-kde4/files/patch-kdm_kfrontend_CMakeLists.txt12
-rw-r--r--x11/kde-workspace-kde4/files/patch-kinfocenter375
-rw-r--r--x11/kde-workspace-kde4/files/patch-kinfocenter_Modules_pci_kpci.cpp56
-rw-r--r--x11/kde-workspace-kde4/files/patch-ksysguard_gui_SensorDisplayLib_FancyPlotter.cpp306
-rw-r--r--x11/kde-workspace-kde4/files/patch-ksysguard_gui_SensorDisplayLib_FancyPlotter.h29
-rw-r--r--x11/kde-workspace-kde4/files/patch-ksysguard_gui_SystemLoad2.sgrd24
-rw-r--r--x11/kde-workspace-kde4/files/patch-ksysguard_gui_ksysguard.cpp73
-rw-r--r--x11/kde-workspace-kde4/files/patch-ksysguard_gui_ksysguard.h12
-rw-r--r--x11/kde-workspace-kde4/files/patch-kwin_effects_blur_blur.cpp13
-rw-r--r--x11/kde-workspace-kde4/files/patch-kwin_opengltest_CMakeLists.txt15
-rw-r--r--x11/kde-workspace-kde4/files/patch-kwin_scene__xrender.cpp22
-rw-r--r--x11/kde-workspace-kde4/files/patch-plasma_desktop_toolboxes_desktoptoolbox.cpp25
-rw-r--r--x11/kde-workspace-kde4/files/patch-plasma_desktop_toolboxes_desktoptoolbox.h12
-rw-r--r--x11/kde-workspace-kde4/files/patch-plasma_generic_applets_systemtray_CMakeLists.txt16
-rw-r--r--x11/kde-workspace-kde4/files/patch-powerdevil_daemon_backends_upower_xrandrbrightness.cpp21
-rw-r--r--x11/kde-workspace-kde4/files/patch-startkde.cmake12
-rw-r--r--x11/kde-workspace-kde4/files/patch-usbview493
-rw-r--r--x11/kde-workspace-kde4/files/pkg-message.gstreamer5
-rw-r--r--x11/kde-workspace-kde4/files/pkg-message.in8
-rw-r--r--x11/kde-workspace-kde4/pkg-descr5
-rw-r--r--x11/kde-workspace-kde4/pkg-plist2125
28 files changed, 3958 insertions, 0 deletions
diff --git a/x11/kde-workspace-kde4/Makefile b/x11/kde-workspace-kde4/Makefile
new file mode 100644
index 000000000000..a444958239e1
--- /dev/null
+++ b/x11/kde-workspace-kde4/Makefile
@@ -0,0 +1,148 @@
+# $FreeBSD$
+
+PORTNAME= kde-workspace
+PORTVERSION= ${KDE4_WORKSPACE_VERSION}
+PORTREVISION= 15
+CATEGORIES= x11 kde kde-applications
+PKGNAMESUFFIX= -kde4
+
+MAINTAINER= kde@FreeBSD.org
+COMMENT= KDE Plasma Desktop
+
+LIB_DEPENDS= libdbus-1.so:devel/dbus \
+ libck-connector.so:sysutils/consolekit2 \
+ libpci.so:devel/libpci \
+ libhal.so:sysutils/hal \
+ libqjson.so:devel/qjson \
+ libcln.so:math/cln \
+ libqalculate.so:math/libqalculate \
+ libprison.so:graphics/prison \
+ libboost_thread.so:devel/boost-libs \
+ libdbusmenu-qt.so:devel/libdbusmenu-qt \
+ libfontconfig.so:x11-fonts/fontconfig \
+ libfreetype.so:print/freetype2 \
+ libpng.so:graphics/png \
+ libxcb-render-util.so:x11/xcb-util-renderutil \
+ libxcb-image.so:x11/xcb-util-image \
+ libxcb-keysyms.so:x11/xcb-util-keysyms
+BUILD_DEPENDS= xrdb:x11/xrdb
+RUN_DEPENDS= ${KDE_PREFIX}/env/xdg-env.sh:misc/kde4-xdg-env \
+ ${LOCALBASE}/share/icons/hicolor/index.theme:misc/hicolor-icon-theme \
+ xprop:x11/xprop \
+ xsetroot:x11/xsetroot \
+ xmessage:x11/xmessage \
+ xrdb:x11/xrdb \
+ mkfontdir:x11-fonts/mkfontdir \
+ xset:x11/xset \
+ setxkbmap:x11/setxkbmap \
+ ${KDE_PREFIX}/bin/ksysguardd:sysutils/ksysguardd-kde4 \
+ ${KDE_PREFIX}/lib/kde4/libexec/polkit-kde-authentication-agent-1:sysutils/polkit-kde \
+ ${KDE_PREFIX}/lib/kde4/libexec/polkitkde1helper:sysutils/kcm-polkit-kde \
+ ${LOCALBASE}/etc/pam.d/kde:security/pam_kde \
+ ${KDE_PREFIX}/share/apps/ksplash/Themes/Default/Theme.rc:x11-themes/kde-base-artwork-kde4
+
+USES= cmake:outsource,noninja compiler:c++11-lib gettext gmake jpeg kde:4 \
+ pkgconfig shebangfix tar:xz
+USE_GL= gl glu
+USE_GNOME= glib20 libxml2
+USE_KDE= kactivities kdelibs nepomuk-core oxygen-icons5 \
+ pimlibs akonadi automoc4 ontologies qimageblitz soprano strigi
+USE_QT4= corelib dbus declarative designer_build gui network \
+ opengl phonon qtestlib script sql svg webkit xml \
+ moc_build qmake_build rcc_build uic_build
+USE_XORG= ice sm kbproto x11 xau xcb xcomposite xcursor xdamage xdmcp xext xfixes \
+ xft xi xinerama xkbfile xpm xrandr xrender xres xscrnsaver xtst xxf86vm
+SHEBANG_FILES= kwin/clients/oxygen/data/update_oxygen.pl
+USE_LDCONFIG= yes
+
+KDE_APPLICATIONS_VERSION= 15.08.0
+
+# clang 6.0 defaults to -std=gnu++14, but the port fails with too many errors
+# when built in C++11 (or later) mode.
+USE_CXXSTD= gnu++98
+
+CMAKE_ARGS= -DCMAKE_REQUIRED_FLAGS:STRING="-L${LOCALBASE}/lib" \
+ -DBUILD_python:BOOL=OFF \
+ -DBUILD_ruby:BOOL=OFF \
+ -DWITH_Xmms:BOOL=OFF \
+ -DWITH_UDev:BOOL=OFF
+
+SUB_FILES= pkg-message
+USE_RC_SUBR= kdm4
+
+USERS= kdm
+GROUPS= kdm
+
+OPTIONS_DEFINE= GLES GPS KACTIVITY UPOWER WALLPAPERS
+OPTIONS_GROUP= PHONON PLASMA
+OPTIONS_GROUP_PHONON= GSTREAMER VLC
+OPTIONS_GROUP_PLASMA= PYTHON RUBY
+OPTIONS_DEFAULT= GLES GPS KACTIVITY UPOWER VLC WALLPAPERS
+OPTIONS_SUB= yes # GPS GLES
+
+GLES_DESC= OpenGL ES 2.0 support in kwin and kinfocenter
+GLES_USE= GL=egl,glesv2
+GLES_CMAKE_OFF= -DWITH_OpenGLES=off
+
+GPS_DESC= GPS geolocation via gpsd
+GPS_LIB_DEPENDS= libgps.so:astro/gpsd
+GPS_CMAKE_ON= -DWITH_libgps:BOOL=ON
+GPS_CMAKE_OFF= -DWITH_libgps:BOOL=OFF
+
+GSTREAMER_DESC= Multimedia via Phonon-GStreamer
+GSTREAMER_USE= QT4=phonon-gst_run
+
+KACTIVITY_DESC= Activity Manager daemon
+KACTIVITY_RUN_DEPENDS= ${KDE_PREFIX}/bin/kactivitymanagerd:x11/kactivitymanagerd
+
+PYTHON_DESC= Python plasmoids support
+PYTHON_RUN_DEPENDS= ${KDE_PREFIX}/share/apps/plasma_scriptengine_python/plasma_importer.py:x11/plasma-scriptengine-python
+
+RUBY_DESC= Ruby plasmoids support
+RUBY_RUN_DEPENDS= ${KDE_PREFIX}/share/apps/plasma_scriptengine_ruby/applet.rb:x11/plasma-scriptengine-ruby
+
+UPOWER_DESC= Power management via UPower
+UPOWER_RUN_DEPENDS= ${LOCALBASE}/libexec/upowerd:sysutils/upower
+
+VLC_DESC= Multimedia via Phonon-VLC
+VLC_RUN_DEPENDS= ${KDE_PREFIX}/lib/kde4/plugins/phonon_backend/phonon_vlc.so:multimedia/phonon-vlc
+
+WALLPAPERS_DESC= Install official KDE wallpapers
+WALLPAPERS_RUN_DEPENDS= ${KDE_PREFIX}/share/wallpapers/Horos/metadata.desktop:x11-themes/kde-wallpapers-kde4 \
+ ${KDE_PREFIX}/share/wallpapers/stripes-freebsd-blue/metadata.desktop:x11-themes/wallpapers-freebsd-kde4
+
+.if !exists(/usr/lib/libutempter.so)
+LIB_DEPENDS+= libutempter.so:sysutils/libutempter
+.endif
+
+post-patch:
+ @${REINPLACE_CMD} -e 's,/usr/local,${LOCALBASE},g' \
+ ${PATCH_WRKSRC}/startkde.cmake \
+ ${PATCH_WRKSRC}/kcontrol/kfontinst/lib/KfiConstants.h \
+ ${PATCH_WRKSRC}/kcontrol/kfontinst/kio/KioFonts.cpp \
+ ${PATCH_WRKSRC}/kcontrol/keyboard/x11_helper.cpp \
+ ${PATCH_WRKSRC}/kdm/backend/client.c \
+ ${PATCH_WRKSRC}/kdm/kfrontend/genkdmconf.c \
+ ${PATCH_WRKSRC}/CMakeLists.txt
+
+pre-configure:
+ ${REINPLACE_CMD} -e '/ksysguardd/ d' \
+ ${PATCH_WRKSRC}/ksysguard/CMakeLists.txt \
+ ${PATCH_WRKSRC}/ksysguard/example/CMakeLists.txt
+ ${REINPLACE_CMD} -e '/PolicyKit/ d' \
+ ${PATCH_WRKSRC}/doc/CMakeLists.txt
+
+post-install:
+ ${LN} -sf ${PREFIX}/bin/startkde ${STAGEDIR}${PREFIX}/bin/startkde4
+# Install kde4.desktop to launch kde4 via sddm.
+ ${MKDIR} ${STAGEDIR}${PREFIX}/share/xsessions
+ ${INSTALL_DATA} ${FILESDIR}/kde4.desktop ${STAGEDIR}${PREFIX}/share/xsessions
+
+post-install-GSTREAMER-on:
+ @${HEAD} -1 ${PKGMESSAGE} >> ${PKGMESSAGE}
+
+post-install-GSTREAMER-off:
+ @${CAT} ${FILESDIR}/pkg-message.gstreamer >> ${PKGMESSAGE}
+ @${HEAD} -1 ${PKGMESSAGE} >> ${PKGMESSAGE}
+
+.include <bsd.port.mk>
diff --git a/x11/kde-workspace-kde4/distinfo b/x11/kde-workspace-kde4/distinfo
new file mode 100644
index 000000000000..613b6b1fa611
--- /dev/null
+++ b/x11/kde-workspace-kde4/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1490623839
+SHA256 (KDE/applications/15.08.0/kde-workspace-4.11.22.tar.xz) = f035334e843d67ee88551ae9e6c5f64bf7b1edfe311b12501575fe74be0b03b7
+SIZE (KDE/applications/15.08.0/kde-workspace-4.11.22.tar.xz) = 13553668
diff --git a/x11/kde-workspace-kde4/files/kde4.desktop b/x11/kde-workspace-kde4/files/kde4.desktop
new file mode 100644
index 000000000000..9b5bb888248d
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/kde4.desktop
@@ -0,0 +1,7 @@
+[Desktop Entry]
+Encoding=UTF-8
+Type=XSession
+Exec=/usr/local/bin/startkde
+TryExec=/usr/local/bin/startkde
+DesktopNames=KDE
+Name=KDE4
diff --git a/x11/kde-workspace-kde4/files/kdm4.in b/x11/kde-workspace-kde4/files/kdm4.in
new file mode 100644
index 000000000000..278ff6223518
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/kdm4.in
@@ -0,0 +1,75 @@
+#!/bin/sh
+
+# $FreeBSD$
+#
+# PROVIDE: kdm4
+# REQUIRE: LOGIN cleanvar moused syscons dbus hald
+# KEYWORD: shutdown
+#
+# Add the following to /etc/rc.conf to start KDM at boot time:
+#
+# kdm4_enable="YES"
+#
+# # Optional variables
+# kdm4_lang="en_US" # Default language. Note that language settings
+# # in %%PREFIX%%/share/config/kdm/kdmrc has
+# # higher priority.
+
+. /etc/rc.subr
+
+name=kdm4
+rcvar=kdm4_enable
+
+load_rc_config ${name}
+
+: ${kdm4_enable:="NO"}
+: ${kdm4_lang="en_US"} # .UTF-8 suffix will be added later to comply with locale format
+
+GENKDMCONF=%%PREFIX%%/bin/genkdmconf
+KDMCONFDIR=%%PREFIX%%/share/config/kdm
+
+command="%%PREFIX%%/bin/kdm"
+pidfile="/var/run/kdm.pid"
+start_cmd="kdm_start"
+
+kdm_genkdmconf()
+{
+ # Configure KDM if needed.
+ if [ ! -r ${KDMCONFDIR}/kdmrc ]; then
+ echo "Generating KDM configuration."
+ ${GENKDMCONF} --no-old --in ${KDMCONFDIR}
+ else
+ echo "Updating KDM configuration."
+ ${GENKDMCONF} --in ${KDMCONFDIR}
+ fi
+}
+
+kdm_start()
+{
+ kdm_genkdmconf
+
+ local iter
+
+ ( iter=0
+ while ! pgrep -f "^/usr/libexec/getty " > /dev/null 2>&1; do
+ if [ ${iter} -ge 600 ]; then
+ return 1
+ fi
+ sleep 1
+ iter=$((${iter} + 1))
+ done
+ if checkyesno hald_enable; then
+ if [ ! -x %%LOCALBASE%%/sbin/hald ]; then
+ err 1 "%%LOCALBASE%%/sbin/hald is not installed"
+ fi
+ iter=0
+ while [ ${iter} -lt 60 ] &&
+ ! pgrep -f "^%%LOCALBASE%%/sbin/hald" > /dev/null 2>&1; do
+ sleep 1
+ iter=$((${iter} + 1))
+ done
+ fi
+ LANG=${kdm4_lang}.UTF-8 ${command} ${kdm4_flags} ) &
+}
+
+run_rc_command "$1"
diff --git a/x11/kde-workspace-kde4/files/patch-CMakeLists.txt b/x11/kde-workspace-kde4/files/patch-CMakeLists.txt
new file mode 100644
index 000000000000..418ac6c5e40e
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-CMakeLists.txt
@@ -0,0 +1,11 @@
+--- CMakeLists.txt.orig 2015-06-26 03:17:21 UTC
++++ CMakeLists.txt
+@@ -198,7 +198,7 @@ if(NOT WIN32)
+ configure_file(config-unix.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-unix.h )
+ configure_file(config-X11.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-X11.h )
+ if(NOT CMAKE_INSTALL_PREFIX STREQUAL "/usr")
+- set(EXPORT_XCURSOR_PATH "XCURSOR_PATH=${CMAKE_INSTALL_PREFIX}/share/icons:$XCURSOR_PATH\":~/.icons:/usr/share/icons:/usr/share/pixmaps:/usr/X11R6/lib/X11/icons\"; export XCURSOR_PATH")
++ set(EXPORT_XCURSOR_PATH "XCURSOR_PATH=${CMAKE_INSTALL_PREFIX}/share/icons:$XCURSOR_PATH\":~/.icons:/usr/local/share/icons:/usr/local/share/pixmaps:/usr/local/lib/X11/icons\"; export XCURSOR_PATH")
+ endif(NOT CMAKE_INSTALL_PREFIX STREQUAL "/usr")
+ configure_file(startkde.cmake ${CMAKE_CURRENT_BINARY_DIR}/startkde @ONLY)
+ endif(NOT WIN32)
diff --git a/x11/kde-workspace-kde4/files/patch-ConfigureChecks.cmake b/x11/kde-workspace-kde4/files/patch-ConfigureChecks.cmake
new file mode 100644
index 000000000000..ceb47dd93117
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-ConfigureChecks.cmake
@@ -0,0 +1,20 @@
+--- ConfigureChecks.cmake.orig 2015-06-26 03:17:21 UTC
++++ ConfigureChecks.cmake
+@@ -21,16 +21,7 @@ if (PAM_FOUND)
+ endmacro(define_pam_service)
+
+ macro(install_pam_service APP)
+- string(TOUPPER KDE4_${APP}_PAM_SERVICE cvar)
+- install(CODE "
+- set(DESTDIR_VALUE \"\$ENV{DESTDIR}\")
+- if (NOT DESTDIR_VALUE)
+- exec_program(\"${KDEBASE_WORKSPACE_SOURCE_DIR}/mkpamserv\" ARGS ${${cvar}} RETURN_VALUE ret)
+- if (NOT ret)
+- exec_program(\"${KDEBASE_WORKSPACE_SOURCE_DIR}/mkpamserv\" ARGS -P ${${cvar}}-np)
+- endif (NOT ret)
+- endif (NOT DESTDIR_VALUE)
+- ")
++ message("Ignore installing pam service, FreeBSD has it already.")
+ endmacro(install_pam_service)
+
+ define_pam_service(KDM)
diff --git a/x11/kde-workspace-kde4/files/patch-kdm_backend_client.c b/x11/kde-workspace-kde4/files/patch-kdm_backend_client.c
new file mode 100644
index 000000000000..cff83e810c9f
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-kdm_backend_client.c
@@ -0,0 +1,35 @@
+--- kdm/backend/client.c.orig 2015-06-26 03:17:21 UTC
++++ kdm/backend/client.c
+@@ -1322,6 +1322,9 @@ startClient(volatile int *pid)
+ char ckDeviceBuf[20] = "";
+ const char *ckDevice = ckDeviceBuf;
+ dbus_bool_t isLocal;
++# ifdef BSD
++ FILE *proc;
++# endif
+ #endif
+ char *failsafeArgv[2];
+ char *buf, *buf2;
+@@ -1353,6 +1356,13 @@ startClient(volatile int *pid)
+ # ifdef HAVE_VTS
+ if (td->serverVT > 0)
+ sprintf(ckDeviceBuf, "/dev/tty%d", td->serverVT);
++# elif defined(BSD)
++ if ((proc = popen( "/usr/local/libexec/ck-get-x11-display-device", "r" ))) {
++ fscanf( proc, "%s", ckDeviceBuf );
++ pclose(proc);
++ if (strcmp( ckDeviceBuf, "usage" ) == 0 || strcmp( ckDeviceBuf, "ERROR:" ) == 0)
++ ckDeviceBuf[0] = '\0';
++ }
+ # endif
+ isLocal = ((td->displayType & d_location) == dLocal);
+ # ifdef XDMCP
+@@ -1532,7 +1542,7 @@ startClient(volatile int *pid)
+ environ = pam_env;
+ # endif
+ removeCreds = True; /* set it first - i don't trust PAM's rollback */
+- pretc = pam_setcred(pamh, 0);
++ pretc = pam_setcred(pamh, PAM_ESTABLISH_CRED);
+ reInitErrorLog();
+ # ifndef HAVE_PAM_GETENVLIST
+ pam_env = environ;
diff --git a/x11/kde-workspace-kde4/files/patch-kdm_kfrontend_CMakeLists.txt b/x11/kde-workspace-kde4/files/patch-kdm_kfrontend_CMakeLists.txt
new file mode 100644
index 000000000000..40bcb9a68ff4
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-kdm_kfrontend_CMakeLists.txt
@@ -0,0 +1,12 @@
+--- kdm/kfrontend/CMakeLists.txt.orig 2015-06-26 03:17:21 UTC
++++ kdm/kfrontend/CMakeLists.txt
+@@ -111,6 +111,6 @@ install(TARGETS kdmctl ${INSTALL_TARGETS
+
+
+ # use 'GENKDMCONF_FLAGS=... make install' to add flags to the config generation (try genkdmconf -h)
+-install(CODE "
+-exec_program(\"${CMAKE_CURRENT_BINARY_DIR}/genkdmconf\" ARGS --in \\\"\\\$DESTDIR${CONFIG_INSTALL_DIR}/kdm\\\" --no-in-notice --face-src \\\"${CMAKE_CURRENT_SOURCE_DIR}/pics\\\" \\\$GENKDMCONF_FLAGS)
+-")
++#install(CODE "
++#exec_program(\"${CMAKE_CURRENT_BINARY_DIR}/genkdmconf\" ARGS --in \\\"\\\$DESTDIR${CONFIG_INSTALL_DIR}/kdm\\\" --no-in-notice --face-src \\\"${CMAKE_CURRENT_SOURCE_DIR}/pics\\\" \\\$GENKDMCONF_FLAGS)
++#")
diff --git a/x11/kde-workspace-kde4/files/patch-kinfocenter b/x11/kde-workspace-kde4/files/patch-kinfocenter
new file mode 100644
index 000000000000..effd580055ab
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-kinfocenter
@@ -0,0 +1,375 @@
+ Clean up info_fbsd.cpp.
+ Use libpci for pci access if possible - on FreeBSD it requires root
+ privileges (rw access to /dev/pci), therefore leave old method
+ as a fallback.
+ Improve GetInfo_ReadfromPipe function to use Qt types, pass program name
+ and its parameters as separate arguments.
+
+--- cmake/modules/FindBSDDevinfo.cmake.orig 2016-12-13 11:26:31 UTC
++++ cmake/modules/FindBSDDevinfo.cmake
+@@ -0,0 +1,15 @@
++# Find FreeBSD devinfo library
++# Once done this will define
++#
++# BSDDEVINFO_FOUND - system has devinfo
++# BSDDEVINFO_INCLUDE_DIR - devinfo include directory
++# BSDDEVINFO_LIBRARY - devinfo library
++
++find_path(BSDDEVINFO_INCLUDE_DIR devinfo.h)
++
++find_library(BSDDEVINFO_LIBRARY NAMES devinfo)
++
++include(FindPackageHandleStandardArgs)
++find_package_handle_standard_args(BSDDEVINFO DEFAULT_MSG BSDDEVINFO_LIBRARY BSDDEVINFO_INCLUDE_DIR)
++
++mark_as_advanced(BSDDEVINFO_INCLUDE_DIR BSDDEVINFO_LIBRARY)
+--- kinfocenter/Modules/base/CMakeLists.txt.orig 2015-06-26 03:17:21 UTC
++++ kinfocenter/Modules/base/CMakeLists.txt
+@@ -1,6 +1,7 @@
+ # TODO: HAVE_LIBDEVINFO_H (for Solaris 7 and later)
+ # to be set if both -ldevinfo and libdevinfo.h exist
+
+-check_include_files(devinfo.h HAVE_DEVINFO_H) # info_fbsd.cpp
++macro_optional_find_package(BSDDevinfo) # info_fbsd.cpp
++macro_bool_to_01(BSDDEVINFO_FOUND HAVE_DEVINFO_H)
+
+ configure_file (../base/config-infocenter.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-infocenter.h )
+--- kinfocenter/Modules/base/info_fbsd.cpp.orig 2015-06-26 03:17:21 UTC
++++ kinfocenter/Modules/base/info_fbsd.cpp
+@@ -15,8 +15,6 @@
+ */
+
+ #include "config-infocenter.h" // HAVE_DEVINFO_H
+-#include <sys/types.h>
+-#include <sys/sysctl.h>
+
+ #ifdef HAVE_DEVINFO_H
+ extern "C" {
+@@ -24,13 +22,16 @@ extern "C" {
+ }
+ #endif
+
+-#include <string.h>
++#ifdef HAVE_PCIUTILS
++#include "kpci.h"
++#endif
+
+-#include <QMap>
+ #include <QFileInfo>
+-
++#include <QStringList>
+ #include <QTextStream>
+
++#include <KGlobalSettings>
++
+ void ProcessChildren(QString name);
+
+ #ifdef HAVE_DEVINFO_H
+@@ -44,13 +45,12 @@ extern "C" {
+
+ bool GetInfo_IRQ(QTreeWidget* tree) {
+ #ifdef HAVE_DEVINFO_H
+- /* systat lists the interrupts assigned to devices as well as how many were
+- generated. Parsing its output however is about as fun as a sandpaper
+- enema. The best idea would probably be to rip out the guts of systat.
+- Too bad it's not very well commented */
+- /* Oh neat, current now has a neat little utility called devinfo */
+ if (devinfo_init())
+- return false;
++ return false;
++
++ QStringList headers;
++ headers << i18n("IRQ") << i18n("Used By");
++ tree->setHeaderLabels(headers);
+ devinfo_foreach_rman(print_irq, tree);
+ return true;
+ #else
+@@ -60,9 +60,13 @@ bool GetInfo_IRQ(QTreeWidget* tree) {
+
+ bool GetInfo_DMA(QTreeWidget* tree) {
+ #ifdef HAVE_DEVINFO_H
+- /* Oh neat, current now has a neat little utility called devinfo */
+ if (devinfo_init())
+- return false;
++ return false;
++
++ QStringList headers;
++ headers << i18n("DMA-Channel") << i18n("Used By");
++ tree->setHeaderLabels(headers);
++
+ devinfo_foreach_rman(print_dma, tree);
+ return true;
+ #else
+@@ -72,9 +76,12 @@ bool GetInfo_DMA(QTreeWidget* tree) {
+
+ bool GetInfo_IO_Ports(QTreeWidget* tree) {
+ #ifdef HAVE_DEVINFO_H
+- /* Oh neat, current now has a neat little utility called devinfo */
+ if (devinfo_init())
+- return false;
++ return false;
++
++ QStringList headers;
++ headers << i18n("I/O-Range") << i18n("Used By");
++ tree->setHeaderLabels(headers);
+ devinfo_foreach_rman(print_ioports, tree);
+ return true;
+ #else
+@@ -83,50 +90,28 @@ bool GetInfo_IO_Ports(QTreeWidget* tree)
+ }
+
+ bool GetInfo_SCSI(QTreeWidget* tree) {
+- FILE *pipe;
+- QTextStream *t;
+- QString s;
+-
+ if (!QFileInfo(QLatin1String("/sbin/camcontrol")).exists()) {
+- s = i18n("SCSI subsystem could not be queried: /sbin/camcontrol could not be found");
+- QStringList list;
+- list << s;
+- new QTreeWidgetItem(tree, list);
+- } else if ((pipe = popen("/sbin/camcontrol devlist 2>&1", "r")) == NULL) {
+- s = i18n("SCSI subsystem could not be queried: /sbin/camcontrol could not be executed");
+ QStringList list;
+- list << s;
++ list << i18n("SCSI subsystem could not be queried: /sbin/camcontrol could not be found");
+ new QTreeWidgetItem(tree, list);
+- } else {
+-
+- /* This prints out a list of all the scsi devies, perhaps eventually we could
+- parse it as opposed to schlepping it into a listbox */
+-
+- t = new QTextStream(pipe, QIODevice::ReadOnly);
+-
+- while (true) {
+- s = t->readLine();
+- if (s.isEmpty() )
+- break;
+- QStringList list;
+- list << s;
+- new QTreeWidgetItem(tree, list);
+- }
+-
+- delete t;
+- pclose(pipe);
+ }
++ if (GetInfo_ReadfromPipe(tree, "/sbin/camcontrol", QStringList() << "devlist", true))
++ return true;
+
+- if (!tree->topLevelItemCount())
+- return false;
+-
+- return true;
++ return false;
+ }
+
+ bool GetInfo_PCI(QTreeWidget* tree) {
+- FILE *pipe;
+- QString s, cmd;
+- QTreeWidgetItem *olditem= NULL;
++#ifdef HAVE_PCIUTILS
++// libpci exits immediately if /dev/pci can't be open in rw mode
++ QFile pcidev("/dev/pci");
++ if (pcidev.open(QIODevice::ReadWrite)) {
++ pcidev.close();
++ if ( GetInfo_PCIUtils(tree)) {
++ return true;
++ }
++ }
++#endif //HAVE_PCIUTILS
+
+ const QStringList headers(i18nc("@title:column Column name for PCI information", "Information"));
+ tree->setHeaderLabels(headers);
+@@ -136,40 +121,11 @@ bool GetInfo_PCI(QTreeWidget* tree) {
+ list << i18n("Could not find any programs with which to query your system's PCI information");
+ new QTreeWidgetItem(tree, list);
+ return true;
+- } else {
+- cmd = "/usr/sbin/pciconf -l -v 2>&1";
+ }
+-
+- // TODO: GetInfo_ReadfromPipe should be improved so that we could pass the program name and its
+- // arguments to it and remove most of the code below.
+- if ((pipe = popen(cmd.toLatin1(), "r")) == NULL) {
+- QStringList list;
+- list << i18n("PCI subsystem could not be queried: %1 could not be executed", cmd);
+- olditem = new QTreeWidgetItem(olditem, list);
+- } else {
+- /* This prints out a list of all the pci devies, perhaps eventually we could
+- parse it as opposed to schlepping it into a listbox */
+- QTextStream outputStream(pipe, QIODevice::ReadOnly);
+-
+- while (!outputStream.atEnd()) {
+- s = outputStream.readLine();
+- if (s.isEmpty() )
+- break;
+- const QStringList list(s);
+- new QTreeWidgetItem(tree, list);
+- }
+-
+- pclose(pipe);
+- }
+-
+- if (!tree->topLevelItemCount()) {
+- QString str = i18n("The PCI subsystem could not be queried, this may need root privileges.");
+- olditem = new QTreeWidgetItem(tree, olditem);
+- olditem->setText(0, str);
++ if (GetInfo_ReadfromPipe(tree, "/usr/sbin/pciconf", QStringList() << "-l" << "-v", true))
+ return true;
+- }
+
+- return true;
++ return false;
+ }
+
+ bool GetInfo_XServer_and_Video(QTreeWidget* tree) {
+@@ -179,12 +135,7 @@ bool GetInfo_XServer_and_Video(QTreeWidg
+ #ifdef HAVE_DEVINFO_H
+
+ int print_irq(struct devinfo_rman *rman, void *arg) {
+- QTreeWidget* tree = (QTreeWidget *)arg;
+ if (strcmp(rman->dm_desc, "Interrupt request lines")==0) {
+-
+- QStringList list;
+- list << rman->dm_desc;
+- new QTreeWidgetItem(tree, list);
+ devinfo_foreach_rman_resource(rman, print_resource, arg);
+ }
+ return 0;
+@@ -192,11 +143,7 @@ int print_irq(struct devinfo_rman *rman,
+
+ int print_dma(struct devinfo_rman *rman, void *arg)
+ {
+- QTreeWidget* tree = (QTreeWidget *)arg;
+ if (strcmp(rman->dm_desc, "DMA request lines")==0) {
+- QStringList list;
+- list << rman->dm_desc;
+- new QTreeWidgetItem(tree, list);
+ devinfo_foreach_rman_resource(rman, print_resource, arg);
+ }
+ return(0);
+@@ -230,29 +177,25 @@ int print_resource(struct devinfo_res *r
+ int hexmode;
+
+ QTreeWidget* tree = (QTreeWidget*) arg;
++ tree->setFont(KGlobalSettings::fixedFont());
++ QStringList list;
+
+- QString s, tmp;
++ QString s;
++ QTextStream result(&s);
+
+ rman = devinfo_handle_to_rman(res->dr_rman);
+ hexmode = (rman->dm_size > 100) || (rman->dm_size == 0);
+- tmp.sprintf(hexmode ? "0x%lx" : "%lu", res->dr_start);
+- s += tmp;
+- if (res->dr_size > 1) {
+- tmp.sprintf(hexmode ? "-0x%lx" : "-%lu",
+- res->dr_start + res->dr_size - 1);
+- s += tmp;
+- }
++ if (hexmode)
++ result << showbase << hex;
++ result << res->dr_start;
++ if (res->dr_size > 1)
++ result << "-" << res->dr_start + res->dr_size - 1;
++ list << s;
+
+ dev = devinfo_handle_to_device(res->dr_device);
+- if ((dev != NULL) && (dev->dd_name[0] != 0)) {
+- tmp.sprintf(" (%s)", dev->dd_name);
+- } else {
+- tmp.sprintf(" ----");
+- }
+- s += tmp;
++ if ((dev != NULL) && (dev->dd_name[0] != 0))
++ list << QString(dev->dd_name);
+
+- QStringList list;
+- list << s;
+ new QTreeWidgetItem(tree, list);
+
+ return 0;
+--- kinfocenter/Modules/base/info_hpux.cpp.orig 2015-06-26 03:17:21 UTC
++++ kinfocenter/Modules/base/info_hpux.cpp
+@@ -30,6 +30,7 @@ along with this program. If not, see <h
+ #include <stdlib.h>
+ #include <QFile>
+ #include <QFontMetrics>
++#include <QStringList>
+ #include <QTextStream>
+
+ # define INFO_PCI "" // Please, who know it ????
+@@ -178,14 +179,14 @@ bool GetInfo_PCI(QTreeWidget* tree) {
+ }
+
+ bool GetInfo_IO_Ports(QListView *lBox) {
+- if (GetInfo_ReadfromPipe(lBox, INFO_IOPORTS_1, false))
++ if (GetInfo_ReadfromPipe(lBox, INFO_IOPORTS_1, QStringList(), false))
+ return true;
+ else
+- return GetInfo_ReadfromPipe(lBox, INFO_IOPORTS_2, false);
++ return GetInfo_ReadfromPipe(lBox, INFO_IOPORTS_2, QStringList(), false);
+ }
+
+ bool GetInfo_SCSI(QListView *lBox) {
+- return GetInfo_ReadfromPipe(lBox, INFO_DEVICES, false);
++ return GetInfo_ReadfromPipe(lBox, INFO_DEVICES, QStringList(), false);
+ }
+ /* Parts taken from fsusage.c from the Midnight Commander (mc)
+
+--- kinfocenter/Modules/base/info_linux.cpp.orig 2015-06-26 03:17:21 UTC
++++ kinfocenter/Modules/base/info_linux.cpp
+@@ -33,6 +33,7 @@ along with this program. If not, see <h
+ #include <QRegExp>
+ #include <QFile>
+ #include <QHeaderView>
++#include <QStringList>
+
+ #include <klocale.h>
+ #include <kiconloader.h>
+@@ -140,9 +141,12 @@ bool GetInfo_PCI(QTreeWidget* tree) {
+ tree->setSortingEnabled(false);
+
+ /* try to get the output of the lspci package first */
+- if ((num = GetInfo_ReadfromPipe(tree, "lspci -v", true)) || (num = GetInfo_ReadfromPipe(tree, "/sbin/lspci -v", true)) || (num = GetInfo_ReadfromPipe(tree, "/usr/sbin/lspci -v", true)) || (num = GetInfo_ReadfromPipe(tree, "/usr/local/sbin/lspci -v", true)) || (num = GetInfo_ReadfromPipe(tree,
+- "/usr/bin/lspci -v", true)))
+- return num;
++ QStringList lspci;
++ lspci << "lspci" << "/sbin/lspci" << "/usr/sbin/lspci" << "/usr/local/sbin/lspci" << "/usr/bin/lspci";
++ QString p;
++ foreach(p, lspci)
++ if (num = GetInfo_ReadfromPipe(tree, p, QStringList() << "-v", true))
++ return num;
+
+ /* if lspci failed, read the contents of /proc/pci */
+ return GetInfo_ReadfromFile(tree, INFO_PCI, 0);
+--- kinfocenter/Modules/base/os_base.h.orig 2015-06-26 03:17:21 UTC
++++ kinfocenter/Modules/base/os_base.h
+@@ -330,12 +330,12 @@ static bool GetInfo_XServer_Generic(QTre
+ }
+
+ /* Helper-function to read output from an external program */
+-static int GetInfo_ReadfromPipe(QTreeWidget* tree, const char *FileName, bool WithEmptyLines = true) {
++static int GetInfo_ReadfromPipe(QTreeWidget* tree, const QString &program, const QStringList &arguments, bool WithEmptyLines = true) {
+ QProcess proc;
+ QTreeWidgetItem* olditem= NULL;
+ QString s;
+
+- proc.start(FileName, QIODevice::ReadOnly);
++ proc.start(program, arguments, QIODevice::ReadOnly);
+ if (!proc.waitForFinished()) {
+ // Process hanged or did not start
+ return 0;
+--- kinfocenter/Modules/info/CMakeLists.txt.orig 2015-06-26 03:17:21 UTC
++++ kinfocenter/Modules/info/CMakeLists.txt
+@@ -13,6 +13,9 @@ set(kcm_info_PART_SRCS main.cpp info.cpp
+ kde4_add_plugin(kcm_info ${kcm_info_PART_SRCS})
+
+ target_link_libraries(kcm_info ${KDE4_KDEUI_LIBS} ${QT_QTGUI_LIBRARY} ${X11_X11_LIB})
++if(BSDDEVINFO_FOUND)
++ target_link_libraries(kcm_info ${BSDDEVINFO_LIBRARY})
++endif(BSDDEVINFO_FOUND)
+
+ install(TARGETS kcm_info DESTINATION ${PLUGIN_INSTALL_DIR} )
+
diff --git a/x11/kde-workspace-kde4/files/patch-kinfocenter_Modules_pci_kpci.cpp b/x11/kde-workspace-kde4/files/patch-kinfocenter_Modules_pci_kpci.cpp
new file mode 100644
index 000000000000..10b57e9feccf
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-kinfocenter_Modules_pci_kpci.cpp
@@ -0,0 +1,56 @@
+* Obey user's unit preferences when displaying PCI info.
+* Use correct units, someone forgot about terabytes
+*
+--- kinfocenter/Modules/pci/kpci.cpp.orig 2015-06-26 03:17:21 UTC
++++ kinfocenter/Modules/pci/kpci.cpp
+@@ -22,6 +22,8 @@ extern "C" {
+ #include <QTreeWidget>
+ #include <QTreeWidgetItem>
+ #include <QFile>
++#include <kglobal.h>
++#include <klocale.h>
+
+ static const QString& getNameById(const id2name *const table, int id) {
+ for (int i=0;; i++) {
+@@ -238,31 +240,35 @@ static QTreeWidgetItem* addBist(QTreeWid
+ }//addBist
+
+ static QTreeWidgetItem* addSize(QTreeWidgetItem *parent, QTreeWidgetItem *after, pciaddr_t size) {
++ static bool realUnits = (KGlobal::locale()->binaryUnitDialect() == KLocale::JEDECBinaryDialect);
+ if (size<0x400) {
+ after=create(parent, i18n("Size"), QString("%1 B").arg(static_cast<unsigned long>(size)));
+ }//if
+ else if (size<0x100000) {
+- after=create(parent, i18n("Size"), QString("%1 kiB").arg(static_cast<unsigned long>(size/0x400)));
++ after=create(parent, i18n("Size"), QString(realUnits ? "%1 KB" : "%1 KiB").arg(static_cast<unsigned long>(size/0x400)));
+ }//elif
+ else if (size<0x40000000) {
+- after=create(parent, i18n("Size"), QString("%1 MiB").arg(static_cast<unsigned long>(size/0x100000)));
++ after=create(parent, i18n("Size"), QString(realUnits ? "%1 MB" : "%1 MiB").arg(static_cast<unsigned long>(size/0x100000)));
+ }//elif
+
+ #ifdef HAVE_PCIADDR_T64
+
+ else if (size<0x10000000000LL) {
+- after=create(parent, i18n("Size"),QString("%1 GiB").arg(static_cast<unsigned long>(size/0x40000000)));
++ after=create(parent, i18n("Size"),QString(realUnits ? "%1 GB" : "%1 GiB").arg(static_cast<unsigned long>(size/0x40000000)));
+ }//elif
+ else if (size<0x4000000000000LL) {
+- after=create(parent, i18n("Size"),QString("%1 PiB").arg(static_cast<unsigned long>(size/0x10000000000LL)));
++ after=create(parent, i18n("Size"),QString(realUnits ? "%1 TB" : "%1 TiB").arg(static_cast<unsigned long>(size/0x10000000000LL)));
+ }//elif
+ else if (size<0x1000000000000000LL) {
+- after=create(parent, i18n("Size"),QString("%1 EiB").arg(static_cast<unsigned long>(size/0x4000000000000LL)));
++ after=create(parent, i18n("Size"),QString(realUnits ? "%1 PB" : "%1 PiB").arg(static_cast<unsigned long>(size/0x4000000000000LL)));
+ }//elif
++ else {
++ after=create(parent, i18n("Size"),QString(realUnits ? "%1 EB" : "%1 EiB").arg(static_cast<unsigned long>(size/0x1000000000000000LL)));
++ }//else
+
+ #else //HAVE_PCIADDR_T64
+ else {
+- after=create(parent, i18n("Size"), QString("%1 GiB").arg(static_cast<unsigned long>(size/0x40000000)));
++ after=create(parent, i18n("Size"), QString(realUnits ? "%1 GB" : "%1 GiB").arg(static_cast<unsigned long>(size/0x40000000)));
+ }//else
+
+ #endif //HAVE_PCIADDR_T64
diff --git a/x11/kde-workspace-kde4/files/patch-ksysguard_gui_SensorDisplayLib_FancyPlotter.cpp b/x11/kde-workspace-kde4/files/patch-ksysguard_gui_SensorDisplayLib_FancyPlotter.cpp
new file mode 100644
index 000000000000..72d181a797e2
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-ksysguard_gui_SensorDisplayLib_FancyPlotter.cpp
@@ -0,0 +1,306 @@
+* Fix the unit handling in KSysGuard's Plotter to respect user's unit preferences
+*
+* Improve the handling of labels so the display is nicer when horizontally constrained
+*
+* Use reasonable units for the Plotter's tooltip (used to be unscaled)
+*
+* Allow a stored description for sensors to override the label
+*
+--- ksysguard/gui/SensorDisplayLib/FancyPlotter.cpp.orig 2015-06-26 03:17:21 UTC
++++ ksysguard/gui/SensorDisplayLib/FancyPlotter.cpp
+@@ -48,6 +48,7 @@ class SensorToAdd {
+ QRegExp name;
+ QString hostname;
+ QString type;
++ QString description;
+ QList<QColor> colors;
+ QString summationName;
+ };
+@@ -58,13 +59,15 @@ class FancyPlotterLabel : public QLabel
+ setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Preferred);
+ longHeadingWidth = 0;
+ shortHeadingWidth = 0;
++ minHeadingWidth = 0;
+ textMargin = 0;
+ setLayoutDirection(Qt::LeftToRight); //We do this because we organise the strings ourselves.. is this going to muck it up though for RTL languages?
+ }
+ ~FancyPlotterLabel() {
+ }
+ void setLabel(const QString &name, const QColor &color) {
+- labelName = name;
++ labelLongName = name;
++ labelShortName = name.split(QChar(' ')).first();
+
+ if(indicatorSymbol.isNull()) {
+ if(fontMetrics().inFont(QChar(0x25CF)))
+@@ -73,7 +76,6 @@ class FancyPlotterLabel : public QLabel
+ indicatorSymbol = '#';
+ }
+ changeLabel(color);
+-
+ }
+ void setValueText(const QString &value) {
+ //value can have multiple strings, separated with the 0x9c character
+@@ -87,63 +89,72 @@ class FancyPlotterLabel : public QLabel
+ if(valueText.isEmpty()) {
+ if(longHeadingWidth < width())
+ setText(longHeadingText);
+- else
++ else if(shortHeadingWidth < width())
+ setText(shortHeadingText);
++ else
++ setText(minHeadingText);
+ return;
+ }
+- QString value = valueText.first();
+
+- int textWidth = fm.boundingRect(value).width();
+- if(textWidth + longHeadingWidth < width())
+- setBothText(longHeadingText, value);
+- else if(textWidth + shortHeadingWidth < width())
+- setBothText(shortHeadingText, value);
+- else {
+- int valueTextCount = valueText.count();
+- int i;
+- for(i = 1; i < valueTextCount; ++i) {
+- textWidth = fm.boundingRect(valueText.at(i)).width();
+- if(textWidth + shortHeadingWidth <= width()) {
+- break;
+- }
++ int i, textWidth, valueTextCount = valueText.count();
++ for(i = 0; i < valueTextCount; ++i) {
++ textWidth = fm.boundingRect(valueText.at(i)).width();
++ if(textWidth + longHeadingWidth <= width()) {
++ setBothText(longHeadingText, valueText.at(i));
++ return;
+ }
+- if(i < valueTextCount)
++ if(textWidth + shortHeadingWidth <= width()) {
+ setBothText(shortHeadingText, valueText.at(i));
+- else
+- setText(noHeadingText + valueText.last()); //This just sets the color of the text
++ return;
++ }
+ }
++ for(i = 0; i < valueTextCount; ++i) {
++ textWidth = fm.boundingRect(valueText.at(i)).width();
++ if(textWidth + minHeadingWidth <= width()) {
++ setBothText(minHeadingText, valueText.at(i));
++ return;
++ }
++ }
++ setBothText(noHeadingText, valueText.last()); //This just sets the color of the text
+ }
+ void changeLabel(const QColor &_color) {
+ color = _color;
+
+- if ( kapp->layoutDirection() == Qt::RightToLeft )
+- longHeadingText = QString(": ") + labelName + " <font color=\"" + color.name() + "\">" + indicatorSymbol + "</font>";
+- else
+- longHeadingText = QString("<qt><font color=\"") + color.name() + "\">" + indicatorSymbol + "</font> " + labelName + " :";
+- shortHeadingText = QString("<qt><font color=\"") + color.name() + "\">" + indicatorSymbol + "</font>";
++ if ( kapp->layoutDirection() == Qt::RightToLeft ) {
++ longHeadingText = QString(" : ") + labelLongName + " <font color=\"" + color.name() + "\">" + indicatorSymbol + "</font>";
++ shortHeadingText = QString(" :") + labelShortName + " <font color=\"" + color.name() + "\">" + indicatorSymbol + "</font>";
++ } else {
++ longHeadingText = QString("<qt><font color=\"") + color.name() + "\">" + indicatorSymbol + "</font> " + labelLongName + " : ";
++ shortHeadingText = QString("<qt><font color=\"") + color.name() + "\">" + indicatorSymbol + "</font> " + labelShortName + ": ";
++ }
++ minHeadingText = QString("<qt><font color=\"") + color.name() + "\">" + indicatorSymbol + "</font> ";
+ noHeadingText = QString("<qt><font color=\"") + color.name() + "\">";
+
+- textMargin = fontMetrics().width('x') + margin()*2 + frameWidth()*2;
+- longHeadingWidth = fontMetrics().boundingRect(labelName + " :" + indicatorSymbol + " x").width() + textMargin;
+- shortHeadingWidth = fontMetrics().boundingRect(indicatorSymbol).width() + textMargin;
+- setMinimumWidth(shortHeadingWidth);
++ textMargin = margin()*2 + frameWidth()*2;
++ longHeadingWidth = fontMetrics().boundingRect(labelLongName + " : " + indicatorSymbol + " x").width() + textMargin;
++ shortHeadingWidth = fontMetrics().boundingRect(labelShortName + ": " + indicatorSymbol + " x").width() + textMargin;
++ minHeadingWidth = fontMetrics().boundingRect(indicatorSymbol + " x").width() + textMargin;
++ setMinimumWidth(minHeadingWidth);
+ update();
+ }
+ private:
+ void setBothText(const QString &heading, const QString & value) {
+ if(QApplication::layoutDirection() == Qt::LeftToRight)
+- setText(heading + ' ' + value);
++ setText(heading + value);
+ else
+- setText("<qt>" + value + ' ' + heading);
++ setText("<qt>" + value + heading);
+ }
+ int textMargin;
+ QString longHeadingText;
+ QString shortHeadingText;
++ QString minHeadingText;
+ QString noHeadingText;
+ int longHeadingWidth;
+ int shortHeadingWidth;
++ int minHeadingWidth;
+ QList<QString> valueText;
+- QString labelName;
++ QString labelLongName;
++ QString labelShortName;
+ QColor color;
+ static QChar indicatorSymbol;
+ };
+@@ -162,6 +173,7 @@ FancyPlotter::FancyPlotter( QWidget* par
+ mUseManualRange = false;
+ mNumAnswers = 0;
+ mLabelsWidget = NULL;
++ mRealUnits = (KGlobal::locale()->binaryUnitDialect() == KLocale::JEDECBinaryDialect);
+
+ //The unicode character 0x25CF is a big filled in circle. We would prefer to use this in the tooltip.
+ //However it's maybe possible that the font used to draw the tooltip won't have it. So we fall back to a
+@@ -510,10 +522,17 @@ void FancyPlotter::setTooltip()
+
+ if(sensor->isOk()) {
+ lastValue = KGlobal::locale()->formatNumber( sensor->lastValue, (sensor->isInteger)?0:-1 );
+- if (sensor->unit() == "%")
++ if (sensor->unit() == "%") {
+ lastValue = i18nc("units", "%1%", lastValue);
+- else if( !sensor->unit().isEmpty() )
+- lastValue = i18nc("units", QString(QString("%1 ") + sensor->unit()).toUtf8(), lastValue);
++ } else if( !sensor->unit().isEmpty() ) {
++ qreal scale = (mPlotter->scaleDownBy() == 1) ? 1 : (sensor->lastValue / mPlotter->scaleDownBy() < 0.1) ? (mPlotter->scaleDownBy() / 1024) : mPlotter->scaleDownBy();
++ if(scale > 1) {
++ QString unit = (scale == 1024) ? (sensor->unit()).replace("K","M") : (scale == 1024*1024) ? (sensor->unit()).replace("K","G") : (sensor->unit()).replace("K","T");
++ lastValue = i18nc("units", QString(QString("%1 ") + unit).toUtf8(), KGlobal::locale()->formatNumber( sensor->lastValue / scale ));
++ } else {
++ lastValue = i18nc("units", QString(QString("%1 ") + sensor->unit()).toUtf8(), lastValue);
++ }
++ }
+ } else {
+ lastValue = i18n("Error");
+ }
+@@ -615,33 +634,33 @@ void FancyPlotter::plotterAxisScaleChang
+ disconnect(mPlotter, SIGNAL(axisScaleChanged()), this, SLOT(plotterAxisScaleChanged()));
+ KLocalizedString unit;
+ double value = mPlotter->currentMaximumRangeValue();
+- if(mUnit == "KiB") {
+- if(value >= 1024*1024*1024*0.7) { //If it's over 0.7TiB, then set the scale to terabytes
++ if(mUnit == "KB" || mUnit == "KiB") {
++ if(value >= 1024*1024*1024) {
+ mPlotter->setScaleDownBy(1024*1024*1024);
+- unit = ki18nc("units", "%1 TiB"); // the unit - terabytes
+- } else if(value >= 1024*1024*0.7) { //If it's over 0.7GiB, then set the scale to gigabytes
++ unit = ki18nc("units", mRealUnits ? "%1 TB" : "%1 TiB"); // the unit - terabytes
++ } else if(value >= 1024*1024) {
+ mPlotter->setScaleDownBy(1024*1024);
+- unit = ki18nc("units", "%1 GiB"); // the unit - gigabytes
++ unit = ki18nc("units", mRealUnits ? "%1 GB" : "%1 GiB"); // the unit - gigabytes
+ } else if(value > 1024) {
+ mPlotter->setScaleDownBy(1024);
+- unit = ki18nc("units", "%1 MiB"); // the unit - megabytes
++ unit = ki18nc("units", mRealUnits ? "%1 MB" : "%1 MiB"); // the unit - megabytes
+ } else {
+ mPlotter->setScaleDownBy(1);
+- unit = ki18nc("units", "%1 KiB"); // the unit - kilobytes
++ unit = ki18nc("units", mRealUnits ? "%1 KB" : "%1 KiB"); // the unit - kilobytes
+ }
+- } else if(mUnit == "KiB/s") {
+- if(value >= 1024*1024*1024*0.7) { //If it's over 0.7TiB, then set the scale to terabytes
++ } else if(mUnit == "KB/s" || mUnit == "KiB/s") {
++ if(value >= 1024*1024*1024) {
+ mPlotter->setScaleDownBy(1024*1024*1024);
+- unit = ki18nc("units", "%1 TiB/s"); // the unit - terabytes per second
+- } else if(value >= 1024*1024*0.7) { //If it's over 0.7GiB, then set the scale to gigabytes
++ unit = ki18nc("units", mRealUnits ? "%1 TB/s" : "%1 TiB/s"); // the unit - terabytes per second
++ } else if(value >= 1024*1024) {
+ mPlotter->setScaleDownBy(1024*1024);
+- unit = ki18nc("units", "%1 GiB/s"); // the unit - gigabytes per second
++ unit = ki18nc("units", mRealUnits ? "%1 GB/s" : "%1 GiB/s"); // the unit - gigabytes per second
+ } else if(value > 1024) {
+ mPlotter->setScaleDownBy(1024);
+- unit = ki18nc("units", "%1 MiB/s"); // the unit - megabytes per second
++ unit = ki18nc("units", mRealUnits ? "%1 MB/s" : "%1 MiB/s"); // the unit - megabytes per second
+ } else {
+ mPlotter->setScaleDownBy(1);
+- unit = ki18nc("units", "%1 KiB/s"); // the unit - kilobytes per second
++ unit = ki18nc("units", mRealUnits ? "%1 KB/s" : "%1 KiB/s"); // the unit - kilobytes per second
+ }
+ } else if(mUnit == "%") {
+ mPlotter->setScaleDownBy(1);
+@@ -694,9 +713,9 @@ void FancyPlotter::answerReceived( int i
+ KSGRD::SensorFloatInfo info( answer );
+ QString unit = info.unit();
+ if(unit.toUpper() == "KB" || unit.toUpper() == "KIB")
+- unit = "KiB";
++ unit = mRealUnits ? "KB" : "KiB";
+ if(unit.toUpper() == "KB/S" || unit.toUpper() == "KIB/S")
+- unit = "KiB/s";
++ unit = mRealUnits ? "KB/s" : "KiB/s";
+
+ if(id == 100) //if we are the first sensor, just use that sensors units as the global unit
+ mUnit = unit;
+@@ -714,7 +733,8 @@ void FancyPlotter::answerReceived( int i
+ sensor->maxValue = info.max();
+ sensor->minValue = info.min();
+ sensor->setUnit( unit );
+- sensor->setDescription( info.name() );
++ if(sensor->description().isEmpty())
++ sensor->setDescription( info.name() );
+
+ QString summationName = sensor->summationName;
+ int beamId = sensor->beamId;
+@@ -723,7 +743,7 @@ void FancyPlotter::answerReceived( int i
+ Q_ASSERT(beamId < mLabelLayout->count());
+
+ if(summationName.isEmpty())
+- static_cast<FancyPlotterLabel *>((static_cast<QWidgetItem *>(mLabelLayout->itemAt(beamId)))->widget())->setLabel(info.name(), mPlotter->beamColor(beamId));
++ static_cast<FancyPlotterLabel *>((static_cast<QWidgetItem *>(mLabelLayout->itemAt(beamId)))->widget())->setLabel(sensor->description(), mPlotter->beamColor(beamId));
+
+ } else if( id == 200) {
+ /* FIXME This doesn't check the host! */
+@@ -743,8 +763,8 @@ void FancyPlotter::answerReceived( int i
+ else if(KSGRD::Style->numSensorColors() != 0)
+ color = KSGRD::Style->sensorColor( beamId % KSGRD::Style->numSensorColors());
+ addSensor( sensor->hostname, sensorName,
+- (sensor->type.isEmpty()) ? "float" : sensor->type
+- , "", color, sensor->name.pattern(), beamId, sensor->summationName);
++ (sensor->type.isEmpty()) ? "float" : sensor->type,
++ sensor->description, color, sensor->name.pattern(), beamId, sensor->summationName);
+ }
+ }
+ }
+@@ -823,7 +843,7 @@ bool FancyPlotter::restoreSettings( QDom
+ } else
+ addSensor( el.attribute( "hostName" ), el.attribute( "sensorName" ),
+ ( el.attribute( "sensorType" ).isEmpty() ? "float" :
+- el.attribute( "sensorType" ) ), "", restoreColor( el, "color",
++ el.attribute( "sensorType" ) ), el.attribute( "description" ), restoreColor( el, "color",
+ KSGRD::Style->sensorColor( i ) ), QString(), mBeams, el.attribute("summationName") );
+ }
+
+@@ -873,16 +893,18 @@ bool FancyPlotter::saveSettings( QDomDoc
+ } else {
+ QDomElement beam = doc.createElement( "beam" );
+ element.appendChild( beam );
++ beam.setAttribute( "sensorType", sensor->type() );
+ beam.setAttribute( "hostName", sensor->hostName() );
+- if(regExpName.isEmpty())
++ if(regExpName.isEmpty()) {
+ beam.setAttribute( "sensorName", sensor->name() );
+- else {
++ if(sensor->hasDescription)
++ beam.setAttribute( "description", sensor->description() );
++ } else {
+ beam.setAttribute( "regexpSensorName", sensor->regExpName() );
+ hash[regExpName] = beam;
++ if(!sensor->summationName.isEmpty())
++ beam.setAttribute( "summationName", sensor->summationName);
+ }
+- if(!sensor->summationName.isEmpty())
+- beam.setAttribute( "summationName", sensor->summationName);
+- beam.setAttribute( "sensorType", sensor->type() );
+ saveColor( beam, "color", mPlotter->beamColor( beamId ) );
+ }
+ }
+@@ -918,6 +940,7 @@ FPSensorProperties::FPSensorProperties(
+ minValue = 0;
+ lastValue = 0;
+ isInteger = (type == "integer");
++ hasDescription = !description.isEmpty();
+ }
+
+ FPSensorProperties::~FPSensorProperties()
diff --git a/x11/kde-workspace-kde4/files/patch-ksysguard_gui_SensorDisplayLib_FancyPlotter.h b/x11/kde-workspace-kde4/files/patch-ksysguard_gui_SensorDisplayLib_FancyPlotter.h
new file mode 100644
index 000000000000..e81bcb039dc1
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-ksysguard_gui_SensorDisplayLib_FancyPlotter.h
@@ -0,0 +1,29 @@
+* Add a couple variables for the additional functionality in FancyPlotter.cpp
+*
+--- ksysguard/gui/SensorDisplayLib/FancyPlotter.h.orig 2015-06-26 03:17:21 UTC
++++ ksysguard/gui/SensorDisplayLib/FancyPlotter.h
+@@ -52,6 +52,7 @@ class FPSensorProperties : public KSGRD:
+ double minValue;
+ double lastValue;
+ bool isInteger;
++ bool hasDescription;
+
+ private:
+ QColor mColor;
+@@ -104,7 +105,7 @@ class FancyPlotter : public KSGRD::Senso
+ private:
+ void sendDataToPlotter();
+ uint mBeams;
+-
++
+ int mNumAnswers;
+ /** When we talk to the sensor, it tells us a range. Record the max here. equals 0 until we have an answer from it */
+ double mSensorReportedMax;
+@@ -131,6 +132,7 @@ class FancyPlotter : public KSGRD::Senso
+ QLabel *mHeading;
+
+ QString mUnit;
++ bool mRealUnits;
+
+ QList<SensorToAdd *> mSensorsToAdd;
+ QBoxLayout *mLabelLayout;
diff --git a/x11/kde-workspace-kde4/files/patch-ksysguard_gui_SystemLoad2.sgrd b/x11/kde-workspace-kde4/files/patch-ksysguard_gui_SystemLoad2.sgrd
new file mode 100644
index 000000000000..07b0f46205f7
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-ksysguard_gui_SystemLoad2.sgrd
@@ -0,0 +1,24 @@
+* Provide a detailed view of Memory and Swap Used instead of the simplistic and
+* misleading view that showed only application use (kernel use was neglected)
+*
+--- ksysguard/gui/SystemLoad2.sgrd.orig 2015-06-26 03:17:21 UTC
++++ ksysguard/gui/SystemLoad2.sgrd
+@@ -3,11 +3,14 @@
+ <WorkSheet title="System Load" interval="0.5" locked="1" rows="3" columns="1" >
+ <host port="-1" command="ksysguardd" shell="" name="localhost" />
+ <display title="CPU History" svgBackground="widgets/plot-background" autoRange="0" class="FancyPlotter" column="0" row="0" version="1">
+- <beam sensorType="float" hostName="localhost" regexpSensorName="cpu/cpu.*/TotalLoad" color="0xffff8000,0xffe20800" />
++ <beam sensorType="float" hostName="localhost" regexpSensorName="cpu/cpu.*/TotalLoad" />
+ </display>
+- <display title="Memory and Swap History" svgBackground="widgets/plot-background" autoRange="0" class="FancyPlotter" column="0" row="1" version="1" >
+- <beam summationName="Memory" sensorName="mem/physical/application" sensorType="integer" hostName="localhost" color="0xffc000c0" />
+- <beam summationName="Swap" sensorName="mem/swap/used" sensorType="integer" hostName="localhost" color="0xff00c000" />
++ <display title="Memory and Swap History" svgBackground="widgets/plot-background" autoRange="1" class="FancyPlotter" column="0" row="1" version="1" stacked="1">
++ <beam sensorType="integer" hostName="localhost" sensorName="mem/physical/wired" color="0xffc00000" />
++ <beam sensorType="integer" hostName="localhost" sensorName="mem/physical/inactive" color="0xffc0c000" />
++ <beam sensorType="integer" hostName="localhost" sensorName="mem/physical/active" color="0xff0000c0" />
++ <beam sensorType="integer" hostName="localhost" sensorName="mem/physical/free" color="0xff00c000" />
++ <beam sensorType="integer" hostName="localhost" sensorName="mem/swap/used" description="Swap Used" color="0xffc000c0" />
+ </display>
+ <display title="Network History" svgBackground="widgets/plot-background" autoRange="1" class="FancyPlotter" column="0" row="2" version="1" min="0" max="20" manualRange="1">
+ <beam sensorType="float" hostName="localhost" summationName="Receiving" regexpSensorName="network/interfaces/(?!lo|bridge|usbus|bond).*/receiver/data" color="0xB3A52D" />
diff --git a/x11/kde-workspace-kde4/files/patch-ksysguard_gui_ksysguard.cpp b/x11/kde-workspace-kde4/files/patch-ksysguard_gui_ksysguard.cpp
new file mode 100644
index 000000000000..071689cb5fcc
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-ksysguard_gui_ksysguard.cpp
@@ -0,0 +1,73 @@
+* More detailed Memory stats in the KSysGuard's Status Bar
+*
+* Make the the Status Bar elements reasonably proportional in size
+*
+--- ksysguard/gui/ksysguard.cpp.orig 2015-06-26 03:17:21 UTC
++++ ksysguard/gui/ksysguard.cpp
+@@ -93,19 +93,21 @@ TopLevel::TopLevel()
+ /* Create the status bar. It displays some information about the
+ * number of processes and the memory consumption of the local
+ * host. */
+- const int STATUSBAR_STRETCH=1;
+-
+ sbProcessCount = new QLabel();
+- statusBar()->addWidget( sbProcessCount, STATUSBAR_STRETCH );
++ sbProcessCount->setAlignment( Qt::AlignHCenter );
++ statusBar()->addWidget( sbProcessCount, 3 ); // 1 long label + 1 value = 3
+
+ sbCpuStat = new QLabel();
+- statusBar()->addWidget( sbCpuStat, STATUSBAR_STRETCH );
++ sbCpuStat->setAlignment( Qt::AlignHCenter );
++ statusBar()->addWidget( sbCpuStat, 2 ); // 1 short label + 1 value = 2
+
+ sbMemTotal = new QLabel();
+- statusBar()->addWidget( sbMemTotal, STATUSBAR_STRETCH );
++ sbMemTotal->setAlignment( Qt::AlignHCenter );
++ statusBar()->addWidget( sbMemTotal, 5 ); // 1 label + 4 values = 5
+
+ sbSwapTotal = new QLabel();
+- statusBar()->addWidget( sbSwapTotal, STATUSBAR_STRETCH );
++ sbSwapTotal->setAlignment( Qt::AlignHCenter );
++ statusBar()->addWidget( sbSwapTotal, 3 ); // 1 label + 2 values = 3
+
+ statusBar()->hide();
+
+@@ -453,11 +455,7 @@ void TopLevel::answerReceived( int id, c
+
+ case 4:
+ mUsedApplication = answer.toLongLong();
+- //Use a multi-length string
+- s = i18nc( "Arguments are formatted byte sizes (used/total)", "Memory: %1 / %2" "\xc2\x9c" "Mem: %1 / %2" "\xc2\x9c" "Mem: %1" "\xc2\x9c" "%1",
+- KGlobal::locale()->formatByteSize( mUsedApplication*1024),
+- KGlobal::locale()->formatByteSize( (mFree+mUsedTotal)*1024 ) );
+- sbMemTotal->setText( s );
++ setMemInfo( mUsedApplication, mUsedTotal, mFree, unit );
+ break;
+
+ case 5:
+@@ -477,6 +475,17 @@ void TopLevel::answerReceived( int id, c
+ }
+ }
+
++void TopLevel::setMemInfo(qlonglong usedapps, qlonglong usedtotal, qlonglong free, const QString & )
++{
++ QString msg;
++ msg = i18nc( "Arguments are formatted byte sizes (used/total)", "Memory: (K %4 + U %3) %1 / %2" "\xc2\x9c" "Memory: (U %3) %1 / %2" "\xc2\x9c" "Memory: %1 / %2" "\xc2\x9c" "Mem: %1 / %2" "\xc2\x9c" "Mem: %1" "\xc2\x9c" "%1",
++ KGlobal::locale()->formatByteSize( usedtotal*1024 ),
++ KGlobal::locale()->formatByteSize( (free+usedtotal)*1024 ),
++ KGlobal::locale()->formatByteSize( usedapps*1024 ),
++ KGlobal::locale()->formatByteSize( (usedtotal-usedapps)*1024 ) );
++ sbMemTotal->setText( msg );
++}
++
+ void TopLevel::setSwapInfo( qlonglong used, qlonglong free, const QString & )
+ {
+ QString msg;
+@@ -487,7 +496,6 @@ void TopLevel::setSwapInfo( qlonglong us
+ KGlobal::locale()->formatByteSize( used*1024 ),
+ KGlobal::locale()->formatByteSize( (free+used)*1024) );
+ }
+-
+ sbSwapTotal->setText( msg );
+ }
+
diff --git a/x11/kde-workspace-kde4/files/patch-ksysguard_gui_ksysguard.h b/x11/kde-workspace-kde4/files/patch-ksysguard_gui_ksysguard.h
new file mode 100644
index 000000000000..8afa4d9b3225
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-ksysguard_gui_ksysguard.h
@@ -0,0 +1,12 @@
+* Add the detailed setMemInfo used in ksysguard.cpp
+*
+--- ksysguard/gui/ksysguard.h.orig 2015-06-26 03:17:21 UTC
++++ ksysguard/gui/ksysguard.h
+@@ -77,6 +77,7 @@ class TopLevel : public KXmlGuiWindow, p
+ void configureCurrentSheet();
+
+ private:
++ void setMemInfo( qlonglong, qlonglong, qlonglong, const QString& );
+ void setSwapInfo( qlonglong, qlonglong, const QString& );
+ void changeEvent( QEvent * event );
+ void retranslateUi();
diff --git a/x11/kde-workspace-kde4/files/patch-kwin_effects_blur_blur.cpp b/x11/kde-workspace-kde4/files/patch-kwin_effects_blur_blur.cpp
new file mode 100644
index 000000000000..f41d9a184da9
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-kwin_effects_blur_blur.cpp
@@ -0,0 +1,13 @@
+Fix ambiguous call on armv6.
+
+--- kwin/effects/blur/blur.cpp.orig 2017-01-11 16:01:39 UTC
++++ kwin/effects/blur/blur.cpp
+@@ -387,7 +387,7 @@ bool BlurEffect::shouldBlur(const Effect
+ if (w->isDesktop())
+ return false;
+
+- bool scaled = !qFuzzyCompare(data.xScale(), 1.0) && !qFuzzyCompare(data.yScale(), 1.0);
++ bool scaled = !qFuzzyCompare(data.xScale(), qreal(1.0)) && !qFuzzyCompare(data.yScale(), qreal(1.0));
+ bool translated = data.xTranslation() || data.yTranslation();
+
+ if (scaled || ((translated || (mask & PAINT_WINDOW_TRANSFORMED)) && !w->data(WindowForceBlurRole).toBool()))
diff --git a/x11/kde-workspace-kde4/files/patch-kwin_opengltest_CMakeLists.txt b/x11/kde-workspace-kde4/files/patch-kwin_opengltest_CMakeLists.txt
new file mode 100644
index 000000000000..f9d589472c79
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-kwin_opengltest_CMakeLists.txt
@@ -0,0 +1,15 @@
+--- kwin/opengltest/CMakeLists.txt.orig 2015-06-26 03:17:21 UTC
++++ kwin/opengltest/CMakeLists.txt
+@@ -2,9 +2,11 @@
+
+ set(kwin_opengl_test_SRCS opengltest.cpp )
+
++find_package(Threads)
++
+ kde4_add_executable(kwin_opengl_test ${kwin_opengl_test_SRCS})
+
+-target_link_libraries(kwin_opengl_test ${X11_LIBRARIES} ${OPENGL_gl_LIBRARY})
++target_link_libraries(kwin_opengl_test ${X11_LIBRARIES} ${OPENGL_gl_LIBRARY} ${CMAKE_THREAD_LIBS_INIT})
+
+ install(TARGETS kwin_opengl_test DESTINATION ${LIBEXEC_INSTALL_DIR} )
+
diff --git a/x11/kde-workspace-kde4/files/patch-kwin_scene__xrender.cpp b/x11/kde-workspace-kde4/files/patch-kwin_scene__xrender.cpp
new file mode 100644
index 000000000000..6132b4a9e04f
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-kwin_scene__xrender.cpp
@@ -0,0 +1,22 @@
+Fix ambiguous call on armv6.
+
+--- kwin/scene_xrender.cpp.orig 2017-01-11 16:04:04 UTC
++++ kwin/scene_xrender.cpp
+@@ -392,7 +392,7 @@ void SceneXrender::Window::performPaint(
+ {
+ setTransformedShape(QRegion()); // maybe nothing will be painted
+ // check if there is something to paint
+- bool opaque = isOpaque() && qFuzzyCompare(data.opacity(), 1.0);
++ bool opaque = isOpaque() && qFuzzyCompare(data.opacity(), qreal(1.0));
+ /* HACK: It seems this causes painting glitches, disable temporarily
+ if (( mask & PAINT_WINDOW_OPAQUE ) ^ ( mask & PAINT_WINDOW_TRANSLUCENT ))
+ { // We are only painting either opaque OR translucent windows, not both
+@@ -469,7 +469,7 @@ void SceneXrender::Window::performPaint(
+ xscale *= screen_paint.xScale();
+ yscale *= screen_paint.yScale();
+ }
+- if (!qFuzzyCompare(xscale, 1.0) || !qFuzzyCompare(yscale, 1.0)) {
++ if (!qFuzzyCompare(xscale, qreal(1.0)) || !qFuzzyCompare(yscale, qreal(1.0))) {
+ scaled = true;
+ xform.matrix11 = DOUBLE_TO_FIXED(1.0 / xscale);
+ xform.matrix22 = DOUBLE_TO_FIXED(1.0 / yscale);
diff --git a/x11/kde-workspace-kde4/files/patch-plasma_desktop_toolboxes_desktoptoolbox.cpp b/x11/kde-workspace-kde4/files/patch-plasma_desktop_toolboxes_desktoptoolbox.cpp
new file mode 100644
index 000000000000..9c761bd9aff2
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-plasma_desktop_toolboxes_desktoptoolbox.cpp
@@ -0,0 +1,25 @@
+* Hide the desktop toolbox (aka "cashew") when widgets are locked
+*
+--- plasma/desktop/toolboxes/desktoptoolbox.cpp.orig 2015-06-26 03:17:21 UTC
++++ plasma/desktop/toolboxes/desktoptoolbox.cpp
+@@ -177,6 +177,8 @@ void DesktopToolBox::init()
+ connect(Plasma::Theme::defaultTheme(), SIGNAL(themeChanged()),
+ this, SLOT(updateTheming()));
+ Plasma::ToolTipManager::self()->registerWidget(this);
++ QObject::connect(m_containment, SIGNAL(immutabilityChanged(Plasma::ImmutabilityType)),
++ this, SLOT(immutabilityChanged(Plasma::ImmutabilityType)));
+
+ if (KAuthorized::authorizeKAction("logout")) {
+ QAction *action = new QAction(i18n("Leave..."), this);
+@@ -761,6 +763,11 @@ void DesktopToolBox::toggle()
+ setShowing(!isShowing());
+ }
+
++void DesktopToolBox::immutabilityChanged(Plasma::ImmutabilityType immutability)
++{
++ setVisible(immutability == Plasma::Mutable);
++}
++
+ void DesktopToolBox::adjustBackgroundBorders() const
+ {
+ Plasma::FrameSvg *background = const_cast<Plasma::FrameSvg *>(m_background);
diff --git a/x11/kde-workspace-kde4/files/patch-plasma_desktop_toolboxes_desktoptoolbox.h b/x11/kde-workspace-kde4/files/patch-plasma_desktop_toolboxes_desktoptoolbox.h
new file mode 100644
index 000000000000..07e35d50d86d
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-plasma_desktop_toolboxes_desktoptoolbox.h
@@ -0,0 +1,12 @@
+* Add handler for change of mutability of the desktop toolbox
+*
+--- plasma/desktop/toolboxes/desktoptoolbox.h.orig 2015-06-26 03:17:21 UTC
++++ plasma/desktop/toolboxes/desktoptoolbox.h
+@@ -81,6 +81,7 @@ protected Q_SLOTS:
+ * show/hide the toolbox
+ */
+ void toggle();
++ void immutabilityChanged(Plasma::ImmutabilityType immutability);
+
+ // basic desktop controls
+ void startLogout();
diff --git a/x11/kde-workspace-kde4/files/patch-plasma_generic_applets_systemtray_CMakeLists.txt b/x11/kde-workspace-kde4/files/patch-plasma_generic_applets_systemtray_CMakeLists.txt
new file mode 100644
index 000000000000..afb71b25bfe4
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-plasma_generic_applets_systemtray_CMakeLists.txt
@@ -0,0 +1,16 @@
+Link to the full library as detected by CMake, so that the linker is passed
+"/full/path/to/libXss.so" instead of "-lXss", which can fail if -L/full/path/to
+is not passed as well.
+
+Not upstreamed because upstream is no longer releasing kde-workspace.
+--- plasma/generic/applets/systemtray/CMakeLists.txt
++++ plasma/generic/applets/systemtray/CMakeLists.txt
+@@ -43,7 +43,7 @@ include (CheckLibraryExists)
+ check_library_exists (Xss XScreenSaverQueryInfo "" HAVE_LIBXSS)
+ configure_file (${CMAKE_CURRENT_SOURCE_DIR}/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
+ IF (HAVE_LIBXSS)
+- SET (IDLE_DETECTION_LIB "Xss")
++ SET (IDLE_DETECTION_LIB ${X11_Xscreensaver_LIB})
+ ENDIF (HAVE_LIBXSS)
+
+ kde4_add_plugin(plasma_applet_systemtray ${systemtray_SRCS})
diff --git a/x11/kde-workspace-kde4/files/patch-powerdevil_daemon_backends_upower_xrandrbrightness.cpp b/x11/kde-workspace-kde4/files/patch-powerdevil_daemon_backends_upower_xrandrbrightness.cpp
new file mode 100644
index 000000000000..53fa3cbebf8e
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-powerdevil_daemon_backends_upower_xrandrbrightness.cpp
@@ -0,0 +1,21 @@
+--- powerdevil/daemon/backends/upower/xrandrbrightness.cpp.orig 2015-06-26 03:17:21 UTC
++++ powerdevil/daemon/backends/upower/xrandrbrightness.cpp
+@@ -62,6 +62,9 @@ XRandrBrightness::XRandrBrightness()
+ qWarning("No available Randr resources");
+ return;
+ }
++
++ if (brightness() == -1)
++ m_resources = 0;
+ }
+
+ XRandrBrightness::~XRandrBrightness()
+@@ -89,7 +92,7 @@ bool XRandrBrightness::isSupported() con
+
+ float XRandrBrightness::brightness() const
+ {
+- float result = 0;
++ float result = -1;
+
+ if (!m_resources)
+ return result;
diff --git a/x11/kde-workspace-kde4/files/patch-startkde.cmake b/x11/kde-workspace-kde4/files/patch-startkde.cmake
new file mode 100644
index 000000000000..e322d8a68db9
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-startkde.cmake
@@ -0,0 +1,12 @@
+--- startkde.cmake.orig 2015-06-26 03:17:21 UTC
++++ startkde.cmake
+@@ -271,7 +271,8 @@ export XDG_DATA_DIRS
+ # Make sure that D-Bus is running
+ # D-Bus autolaunch is broken
+ if test -z "$DBUS_SESSION_BUS_ADDRESS" ; then
+- eval `dbus-launch --sh-syntax --exit-with-session`
++ uuid="`dbus-uuidgen --get`"
++ eval `dbus-launch --sh-syntax --exit-with-session --autolaunch $uuid`
+ fi
+ if $qdbus >/dev/null 2>/dev/null; then
+ : # ok
diff --git a/x11/kde-workspace-kde4/files/patch-usbview b/x11/kde-workspace-kde4/files/patch-usbview
new file mode 100644
index 000000000000..9c56664bb6ce
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/patch-usbview
@@ -0,0 +1,493 @@
+ Use libusb-1 to query info about usb devices on all platforms, leave old
+ method as a fallback for Linux only.
+ Remove *BSD specific code, it doesn't work on FreeBSD 8.x and greater.
+ Old code probably works on NetBSD, but let it use libusb-1 as well.
+ Use DeviceNotifier instead of polling.
+
+--- cmake/modules/FindLibUSB1.cmake.orig 2016-12-13 11:26:31 UTC
++++ cmake/modules/FindLibUSB1.cmake
+@@ -0,0 +1,21 @@
++# - Try to find libusb v1.0 library
++# Once done this defines
++#
++# LIBUSB1_FOUND - system has libusb
++# LIBUSB1_INCLUDE_DIR - libusb include directory
++# LIBUSB1_LIBRARY - libusb library
++
++find_package(PkgConfig)
++pkg_check_modules(PC_LIBUSB1 QUIET libusb-1.0)
++
++find_path(LIBUSB1_INCLUDE_DIR libusb.h
++ HINTS ${PC_LIBUSB1_INCLUDEDIR} ${PC_LIBUSB1_INCLUDE_DIRS})
++
++# On FreeBSD libusb provides both v0.1 and v1.0 API
++find_library(LIBUSB1_LIBRARY NAMES usb-1.0 usb
++ HINTS ${PC_LIBUSB1_LIBDIR} ${PC_LIBUSB_LIBRARY_DIRS})
++
++include(FindPackageHandleStandardArgs)
++find_package_handle_standard_args(LIBUSB1 DEFAULT_MSG LIBUSB1_LIBRARY LIBUSB1_INCLUDE_DIR)
++
++mark_as_advanced(LIBUSB1_INCLUDE_DIR LIBUSB1_LIBRARY)
+--- kinfocenter/Modules/usbview/CMakeLists.txt.orig 2015-06-26 03:17:21 UTC
++++ kinfocenter/Modules/usbview/CMakeLists.txt
+@@ -1,15 +1,25 @@
++macro_optional_find_package(LibUSB1)
++macro_bool_to_01(LIBUSB1_FOUND HAVE_LIBUSB1)
++macro_log_feature(LIBUSB1_FOUND "libusb-1" "User level access to USB devices" "http://libusb.sourceforge.net/" FALSE "" "Provides usb info support in KControl.")
+
+-
++configure_file (config-kcmusb.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-kcmusb.h )
+
+ ########### next target ###############
+
++if (LIBUSB1_FOUND)
++ include_directories( ${LIBUSB1_INCLUDE_DIR} )
++endif (LIBUSB1_FOUND)
++
+ set(kcm_usb_PART_SRCS kcmusb.cpp usbdevices.cpp usbdb.cpp )
+
+
+ kde4_add_plugin(kcm_usb ${kcm_usb_PART_SRCS})
+
+
+-target_link_libraries(kcm_usb ${KDE4_KDEUI_LIBS} ${QT_QTGUI_LIBRARY})
++target_link_libraries(kcm_usb ${KDE4_KDEUI_LIBS} ${KDE4_SOLID_LIBS} ${QT_QTGUI_LIBRARY})
++if (LIBUSB1_FOUND)
++ target_link_libraries(kcm_usb ${LIBUSB1_LIBRARY})
++endif (LIBUSB1_FOUND)
+
+ install(TARGETS kcm_usb DESTINATION ${PLUGIN_INSTALL_DIR} )
+
+--- kinfocenter/Modules/usbview/config-kcmusb.h.cmake.orig 2016-12-13 11:26:31 UTC
++++ kinfocenter/Modules/usbview/config-kcmusb.h.cmake
+@@ -0,0 +1,2 @@
++/* Defined if you have libusb */
++#cmakedefine HAVE_LIBUSB1 1
+--- kinfocenter/Modules/usbview/kcmusb.cpp.orig 2015-06-26 03:17:21 UTC
++++ kinfocenter/Modules/usbview/kcmusb.cpp
+@@ -12,7 +12,6 @@
+ #include <QLayout>
+ #include <QSplitter>
+ #include <QtGui/QTextEdit>
+-#include <QTimer>
+ #include <QHBoxLayout>
+ #include <QList>
+ #include <QTreeWidget>
+@@ -20,6 +19,7 @@
+
+ #include <kaboutdata.h>
+ #include <kdialog.h>
++#include <solid/devicenotifier.h>
+
+ #include <KPluginFactory>
+ #include <KPluginLoader>
+@@ -63,11 +63,8 @@ USBViewer::USBViewer(QWidget *parent, co
+ _details = new QTextEdit(splitter);
+ _details->setReadOnly(true);
+
+- QTimer *refreshTimer = new QTimer(this);
+- // 1 sec seems to be a good compromise between latency and polling load.
+- refreshTimer->start(1000);
+-
+- connect(refreshTimer, SIGNAL(timeout()), SLOT(refresh()));
++ connect(Solid::DeviceNotifier::instance(),SIGNAL(deviceAdded(QString)), SLOT(refresh()));
++ connect(Solid::DeviceNotifier::instance(),SIGNAL(deviceRemoved(const QString)), SLOT(refresh()));
+ connect(_devices, SIGNAL(currentItemChanged(QTreeWidgetItem*,QTreeWidgetItem*)), this, SLOT(selectionChanged(QTreeWidgetItem*)));
+
+ KAboutData *about = new KAboutData(I18N_NOOP("kcmusb"), 0, ki18n("KDE USB Viewer"),
+@@ -113,8 +110,12 @@ static void delete_recursive(QTreeWidget
+ void USBViewer::refresh() {
+ QMap<int, QTreeWidgetItem*> new_items;
+
++#if defined(HAVE_LIBUSB1)
++ USBDevice::parse();
++#else
+ if (!USBDevice::parse("/proc/bus/usb/devices"))
+ USBDevice::parseSys("/sys/bus/usb/devices");
++#endif
+
+ int level = 0;
+ bool found = true;
+--- kinfocenter/Modules/usbview/usbdevices.cpp.orig 2015-06-26 03:17:21 UTC
++++ kinfocenter/Modules/usbview/usbdevices.cpp
+@@ -27,9 +27,9 @@
+
+ #include <math.h>
+
+-#if defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD)
+-#include <sys/ioctl.h>
+-#include <sys/param.h>
++#include <config-kcmusb.h>
++#if defined(HAVE_LIBUSB1)
++#include <libusb.h>
+ #endif
+
+ QList<USBDevice*> USBDevice::_devices;
+@@ -48,6 +48,7 @@ USBDevice::~USBDevice() {
+
+ }
+
++#if !defined(HAVE_LIBUSB1)
+ static QString catFile(QString fname) {
+ char buffer[256];
+ QString result;
+@@ -129,6 +130,7 @@ void USBDevice::parseLine(const QString&
+ } else if (line.startsWith("P:"))
+ sscanf(line.toLocal8Bit().data(), "P: Vendor=%x ProdID=%x Rev=%x.%x", &_vendorID, &_prodID, &_revMajor, &_revMinor);
+ }
++#endif // !defined(HAVE_LIBUSB1)
+
+ USBDevice* USBDevice::find(int bus, int device) {
+ foreach(USBDevice* usbDevice, _devices) {
+@@ -160,6 +162,10 @@ QString USBDevice::dump() {
+
+ r += "<br/><table>";
+
++ r += i18n("<tr><td><i>Bus number</i></td><td>%1</td></tr>", _bus);
++ r += i18n("<tr><td><i>Device address</i></td><td>%1</td></tr>", _device);
++ r += "<tr><td></td></tr>";
++
+ QString c = QString("<td>%1</td>").arg(_class);
+ QString cname = _db->cls(_class);
+ if (!cname.isEmpty())
+@@ -175,11 +181,9 @@ QString USBDevice::dump() {
+ if (!prname.isEmpty())
+ pr += "<td>(" + prname +")</td>";
+ r += i18n("<tr><td><i>Protocol</i></td>%1</tr>", pr);
+-#if !(defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD))
+ r += ki18n("<tr><td><i>USB Version</i></td><td>%1.%2</td></tr>")
+ .subs(_verMajor,0,16).subs(_verMinor,2,16,QChar::fromLatin1('0'))
+ .toString();
+-#endif
+ r += "<tr><td></td></tr>";
+
+ QString v = QString::number(_vendorID, 16);
+@@ -198,22 +202,15 @@ QString USBDevice::dump() {
+ r += "<tr><td></td></tr>";
+
+ r += i18n("<tr><td><i>Speed</i></td><td>%1 Mbit/s</td></tr>", _speed);
+- r += i18n("<tr><td><i>Channels</i></td><td>%1</td></tr>", _channels);
+-#if (defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD)) && !defined(DISABLE_USBDEVICES_FREEBSD)
+- if ( _power )
++#if defined(HAVE_LIBUSB1)
++ if ( _power != -1 )
+ r += i18n("<tr><td><i>Power Consumption</i></td><td>%1 mA</td></tr>", _power);
+ else
+- r += i18n("<tr><td><i>Power Consumption</i></td><td>self powered</td></tr>");
+- r += i18n("<tr><td><i>Attached Devicenodes</i></td><td>%1</td></tr>", _devnodes.at(0));
+- if ( _devnodes.count() > 1 ) {
+- QStringList::const_iterator it = _devnodes.constBegin();
+- ++it;
+- for (; it != _devnodes.constEnd(); ++it )
+- r += "<tr><td></td><td>" + *it + "</td></tr>";
+- }
+-#else
++ r += i18n("<tr><td><i>Power Consumption</i></td><td>unknown</td></tr>");
++#else // defined(HAVE_LIBUSB1)
++ r += i18n("<tr><td><i>Channels</i></td><td>%1</td></tr>", _channels);
++#endif // defined(HAVE_LIBUSB1)
+ r += i18n("<tr><td><i>Max. Packet Size</i></td><td>%1</td></tr>", _maxPacketSize);
+-#endif
+ r += "<tr><td></td></tr>";
+
+ if (_hasBW) {
+@@ -228,7 +225,82 @@ QString USBDevice::dump() {
+ return r;
+ }
+
+-#if !(defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD))
++#if defined(HAVE_LIBUSB1)
++
++void USBDevice::dump_usbdev_info(libusb_device *dev) {
++
++ _bus = libusb_get_bus_number(dev);
++ _device = libusb_get_device_address(dev);
++
++ switch (libusb_get_device_speed(dev)) {
++ case LIBUSB_SPEED_LOW: _speed = 1.5; break;
++ case LIBUSB_SPEED_FULL: _speed = 12; break;
++ case LIBUSB_SPEED_HIGH: _speed = 480; break;
++ case LIBUSB_SPEED_SUPER: _speed = 5000; break;
++ }
++
++ struct libusb_config_descriptor *conf;
++ if (libusb_get_active_config_descriptor(dev, &conf) == 0) {
++ _power = conf->MaxPower;
++ libusb_free_config_descriptor(conf);
++ } else {
++ _power = -1;
++ }
++
++ struct libusb_device_descriptor desc;
++ if (libusb_get_device_descriptor(dev, &desc) == 0) {
++ _verMajor = desc.bcdUSB >> 8;
++ _verMinor = desc.bcdUSB & 0x00FF;
++ _class = desc.bDeviceClass;
++ _sub = desc.bDeviceSubClass;
++ _prot = desc.bDeviceProtocol;
++ _maxPacketSize = desc.bMaxPacketSize0;
++ _configs = desc.bNumConfigurations;
++ _vendorID = desc.idVendor;
++ _prodID = desc.idProduct;
++ _revMajor = desc.bcdDevice >> 8;
++ _revMinor = desc.bcdDevice & 0x00FF;
++ }
++
++ libusb_device_handle *hdev;
++ uchar buf[256];
++ if (libusb_open(dev, &hdev) == 0) {
++ if (libusb_get_string_descriptor_ascii(hdev, desc.iManufacturer, buf, sizeof(buf)) > 0)
++ _manufacturer = (char*) buf;
++ if (libusb_get_string_descriptor_ascii(hdev, desc.iProduct, buf, sizeof(buf)) > 0)
++ _product = (char*) buf;
++ if (libusb_get_string_descriptor_ascii(hdev, desc.iSerialNumber, buf, sizeof(buf)) > 0)
++ _serial = (char*) buf;
++ libusb_close(hdev);
++ }
++}
++
++bool USBDevice::parse() {
++ _devices.clear();
++
++ int r = libusb_init(NULL);
++ if (r != 0)
++ return false;
++
++ libusb_device **devs;
++ ssize_t cnt = libusb_get_device_list(NULL, &devs);
++ if (cnt < 0)
++ return false;
++
++ libusb_device *dev;
++ int i = 0;
++ while ((dev = devs[i++]) != NULL) {
++ USBDevice* device = new USBDevice();
++ device->dump_usbdev_info(dev);
++ }
++ libusb_free_device_list(devs, 1);
++
++ libusb_exit(NULL);
++ return true;
++}
++
++#else // defined(HAVE_LIBUSB1)
++#if defined(Q_OS_LINUX)
+ bool USBDevice::parse(const QString &fname) {
+ _devices.clear();
+
+@@ -290,146 +362,19 @@ bool USBDevice::parseSys(const QString &
+ return d.count();
+ }
+
+-#else
+-
+-// Unused by *BSD
+-bool USBDevice::parseSys(const QString &fname)
+-{
+- Q_UNUSED(fname)
+-
+- return true;
+-}
+-
+-# if defined(DISABLE_USBDEVICES_FREEBSD)
+-
+-/*
+- * FIXME: The USB subsystem has changed a lot in FreeBSD 8.0
+- * Support for it must be written.
+- */
++#else // defined(Q_OS_LINUX)
+
+-bool USBDevice::parse(const QString &fname)
+-{
++bool USBDevice::parse(const QString &fname) {
+ Q_UNUSED(fname)
+
+ return true;
+ }
+
+-# else
+-
+-/*
+- * FreeBSD support by Markus Brueffer <markus@brueffer.de>
+- *
+- * Basic idea and some code fragments were taken from FreeBSD's usbdevs(8),
+- * originally developed for NetBSD, so this code should work with no or
+- * only little modification on NetBSD.
+- */
+-
+-void USBDevice::collectData( int fd, int level, usb_device_info &di, int parent)
+-{
+- // determine data for this device
+- _level = level;
+- _parent = parent;
+-
+- _bus = di.udi_bus;
+- _device = di.udi_addr;
+- _product = QLatin1String(di.udi_product);
+- if ( _device == 1 )
+- _product += ' ' + QString::number( _bus );
+- _manufacturer = QLatin1String(di.udi_vendor);
+- _prodID = di.udi_productNo;
+- _vendorID = di.udi_vendorNo;
+- _class = di.udi_class;
+- _sub = di.udi_subclass;
+- _prot = di.udi_protocol;
+- _power = di.udi_power;
+- _channels = di.udi_nports;
+-
+- // determine the speed
+-#if defined(__DragonFly__) || (defined(Q_OS_FREEBSD) && __FreeBSD_version > 490102) || defined(Q_OS_NETBSD)
+- switch (di.udi_speed) {
+- case USB_SPEED_LOW: _speed = 1.5; break;
+- case USB_SPEED_FULL: _speed = 12.0; break;
+- case USB_SPEED_HIGH: _speed = 480.0; break;
+- }
+-#else
+- _speed = di.udi_lowspeed ? 1.5 : 12.0;
+-#endif
+-
+- // Get all attached devicenodes
+- for ( int i = 0; i < USB_MAX_DEVNAMES; ++i )
+- if ( di.udi_devnames[i][0] )
+- _devnodes << di.udi_devnames[i];
+-
+- // For compatibility, split the revision number
+- sscanf( di.udi_release, "%x.%x", &_revMajor, &_revMinor );
+-
+- // Cycle through the attached devices if there are any
+- for ( int p = 0; p < di.udi_nports; ++p ) {
+- // Get data for device
+- struct usb_device_info di2;
+-
+- di2.udi_addr = di.udi_ports[p];
+-
+- if ( di2.udi_addr >= USB_MAX_DEVICES )
+- continue;
+-
+- if ( ioctl(fd, USB_DEVICEINFO, &di2) == -1 )
+- continue;
+-
+- // Only add the device if we didn't detect it, yet
+- if (!find( di2.udi_bus, di2.udi_addr ) )
+- {
+- USBDevice *device = new USBDevice();
+- device->collectData( fd, level + 1, di2, di.udi_addr );
+- }
+- }
+-}
+-
+-bool USBDevice::parse(const QString &fname)
+-{
+- Q_UNUSED(fname)
+-
+- static bool showErrorMessage = true;
+- bool error = false;
+- _devices.clear();
+-
+- QFile controller("/dev/usb0");
+- int i = 1;
+- while ( controller.exists() )
+- {
+- // If the devicenode exists, continue with further inspection
+- if ( controller.open(QIODevice::ReadOnly) )
+- {
+- for ( int addr = 1; addr < USB_MAX_DEVICES; ++addr )
+- {
+- struct usb_device_info di;
+-
+- di.udi_addr = addr;
+- if ( ioctl(controller.handle(), USB_DEVICEINFO, &di) != -1 )
+- {
+- if (!find( di.udi_bus, di.udi_addr ) )
+- {
+- USBDevice *device = new USBDevice();
+- device->collectData( controller.handle(), 0, di, 0);
+- }
+- }
+- }
+- controller.close();
+-#ifndef Q_OS_NETBSD
+- } else {
+- error = true;
+-#endif
+- }
+- controller.setFileName( QString::fromLocal8Bit("/dev/usb%1").arg(i++) );
+- }
+-
+- if ( showErrorMessage && error ) {
+- showErrorMessage = false;
+- KMessageBox::error( 0, i18n("Could not open one or more USB controller. Make sure, you have read access to all USB controllers that should be listed here."));
+- }
++bool USBDevice::parseSys(const QString &dname) {
++ Q_UNUSED(dname)
+
+ return true;
+ }
+
+-# endif // defined(DISABLE_USBDEVICES_FREEBSD)
+-#endif // !(defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD))
++#endif // defined(Q_OS_LINUX)
++#endif // defined(HAVE_LIBUSB1)
+--- kinfocenter/Modules/usbview/usbdevices.h.orig 2015-06-26 03:17:21 UTC
++++ kinfocenter/Modules/usbview/usbdevices.h
+@@ -14,18 +14,9 @@
+ #include <QList>
+ #include <QString>
+
+-#if defined(__DragonFly__)
+-#include <bus/usb/usb.h>
+-#include <QStringList>
+-#elif defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD)
+-#include <sys/param.h>
+-# if defined(__FreeBSD_version) && __FreeBSD_version >= 800100
+-# define DISABLE_USBDEVICES_FREEBSD
+-# warning "The USB subsystem has changed in 8.0. Disabling."
+-# else
+-# include <dev/usb/usb.h>
+-# include <QStringList>
+-# endif
++#include <config-kcmusb.h>
++#if defined(HAVE_LIBUSB1)
++#include <libusb.h>
+ #endif
+
+ class USBDB;
+@@ -36,10 +27,12 @@ public:
+ USBDevice();
+
+ ~USBDevice();
+-
++#if defined(HAVE_LIBUSB1)
++ void dump_usbdev_info(libusb_device *dev);
++#else
+ void parseLine(const QString &line);
+ void parseSysDir(int bus, int parent, int level, const QString &line);
+-
++#endif
+ int level() const {
+ return _level;
+ }
+@@ -60,8 +53,12 @@ public:
+ return _devices;
+ }
+ static USBDevice *find(int bus, int device);
++#if defined(HAVE_LIBUSB1)
++ static bool parse();
++#else
+ static bool parse(const QString& fname);
+ static bool parseSys(const QString& fname);
++#endif
+
+ private:
+
+@@ -82,10 +79,6 @@ private:
+
+ unsigned int _vendorID, _prodID, _revMajor, _revMinor;
+
+-#if (defined(Q_OS_FREEBSD) || defined(Q_OS_NETBSD)) && !defined(DISABLE_USBDEVICES_FREEBSD)
+- void collectData( int fd, int level, usb_device_info &di, int parent );
+- QStringList _devnodes;
+-#endif
+ };
+
+ #endif
diff --git a/x11/kde-workspace-kde4/files/pkg-message.gstreamer b/x11/kde-workspace-kde4/files/pkg-message.gstreamer
new file mode 100644
index 000000000000..f6d499b7bb95
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/pkg-message.gstreamer
@@ -0,0 +1,5 @@
+Warning: should you want to use Phonon-GStreamer as your Phonon
+backend, you'll need to install *at least* audio/gstreamer-plugins-ogg
+to avoid finding yourself stuck when logging out of KDE Plasma
+Desktop.
+
diff --git a/x11/kde-workspace-kde4/files/pkg-message.in b/x11/kde-workspace-kde4/files/pkg-message.in
new file mode 100644
index 000000000000..158456987cbb
--- /dev/null
+++ b/x11/kde-workspace-kde4/files/pkg-message.in
@@ -0,0 +1,8 @@
+======================================================================
+
+To enable KDE Display Manager (KDM), add kdm4_enable="YES" to
+rc.conf(5). To get full functionality you also need procfs(5) mounted.
+
+If sysutils/upower is installed, backlight management support requires
+acpi_video(4) to be loaded.
+
diff --git a/x11/kde-workspace-kde4/pkg-descr b/x11/kde-workspace-kde4/pkg-descr
new file mode 100644
index 000000000000..d2a70cd666b3
--- /dev/null
+++ b/x11/kde-workspace-kde4/pkg-descr
@@ -0,0 +1,5 @@
+This package provides the basic applications for the KDE system. Installing
+this package (and its dependencies) will provide you with everything required
+for a minimal, functional KDE desktop.
+
+WWW: http://www.kde.org/
diff --git a/x11/kde-workspace-kde4/pkg-plist b/x11/kde-workspace-kde4/pkg-plist
new file mode 100644
index 000000000000..c7fa75ee303f
--- /dev/null
+++ b/x11/kde-workspace-kde4/pkg-plist
@@ -0,0 +1,2125 @@
+bin/genkdmconf
+bin/kaccess
+bin/kapplymousetheme
+bin/kblankscrn.kss
+bin/kcheckrunning
+bin/kcminit
+bin/kcminit_startup
+bin/kdm
+bin/kdmctl
+bin/kdostartupconfig4
+bin/kfontinst
+bin/kfontview
+bin/kinfocenter
+bin/klipper
+bin/kmenuedit
+bin/krandom.kss
+bin/krandrstartup
+bin/krandrtray
+bin/krdb
+bin/krunner
+bin/ksmserver
+bin/ksplashqml
+bin/ksplashsimple
+bin/ksplashx
+bin/ksplashx_scale
+bin/kstartupconfig4
+bin/ksysguard
+bin/ksystraycmd
+bin/kwin
+%%GLES%%bin/kwin_gles
+bin/oxygen-demo
+bin/oxygen-settings
+bin/oxygen-shadow-demo
+bin/plasma-desktop
+bin/plasma-netbook
+bin/plasma-overlay
+bin/plasma-windowed
+bin/solid-action-desktop-gen
+bin/startkde
+bin/startkde4
+bin/systemsettings
+etc/dbus-1/system.d/org.kde.fontinst.conf
+etc/dbus-1/system.d/org.kde.kcontrol.kcmclock.conf
+etc/dbus-1/system.d/org.kde.kcontrol.kcmkdm.conf
+etc/dbus-1/system.d/org.kde.ksysguard.processlisthelper.conf
+include/kde4/KDE/Plasma/Weather/Ion
+include/kde4/kcommondecoration.h
+include/kde4/kdecoration.h
+include/kde4/kdecorationfactory.h
+include/kde4/kgreeterplugin.h
+include/kde4/kscreensaver.h
+include/kde4/kscreensaver_export.h
+include/kde4/kscreensaver_vroot.h
+include/kde4/ksgrd/SensorAgent.h
+include/kde4/ksgrd/SensorClient.h
+include/kde4/ksgrd/SensorManager.h
+include/kde4/ksgrd/SensorShellAgent.h
+include/kde4/ksgrd/SensorSocketAgent.h
+include/kde4/ksysguard/KTextEditVT.h
+include/kde4/ksysguard/ProcessFilter.h
+include/kde4/ksysguard/ProcessModel.h
+include/kde4/ksysguard/ksignalplotter.h
+include/kde4/ksysguard/ksysguardprocesslist.h
+include/kde4/ksysguard/lsof.h
+include/kde4/ksysguard/process.h
+include/kde4/ksysguard/processes.h
+include/kde4/kwinanimationeffect.h
+include/kde4/kwinconfig.h
+include/kde4/kwineffects.h
+include/kde4/kwinglobals.h
+include/kde4/kwinglplatform.h
+include/kde4/kwingltexture.h
+include/kde4/kwinglutils.h
+include/kde4/kwinglutils_funcs.h
+include/kde4/kwinxrenderutils.h
+include/kde4/kworkspace/kdisplaymanager.h
+include/kde4/kworkspace/kwindowlistmenu.h
+include/kde4/kworkspace/kworkspace.h
+include/kde4/kworkspace/kworkspace_export.h
+include/kde4/plasma/geolocation/geolocation_export.h
+include/kde4/plasma/geolocation/geolocationprovider.h
+include/kde4/plasma/weather/ion.h
+include/kde4/plasma/weather/ion_export.h
+include/kde4/plasmaclock/calendar.h
+include/kde4/plasmaclock/calendartable.h
+include/kde4/plasmaclock/clockapplet.h
+include/kde4/plasmaclock/plasmaclock_export.h
+include/kde4/systemsettingsview/BaseData.h
+include/kde4/systemsettingsview/BaseMode.h
+include/kde4/systemsettingsview/MenuItem.h
+include/kde4/systemsettingsview/MenuModel.h
+include/kde4/systemsettingsview/MenuProxyModel.h
+include/kde4/systemsettingsview/ModuleView.h
+include/kde4/systemsettingsview/systemsettingsview_export.h
+include/kde4/taskmanager/abstractgroupableitem.h
+include/kde4/taskmanager/abstractgroupingstrategy.h
+include/kde4/taskmanager/abstractsortingstrategy.h
+include/kde4/taskmanager/groupmanager.h
+include/kde4/taskmanager/launcheritem.h
+include/kde4/taskmanager/startup.h
+include/kde4/taskmanager/task.h
+include/kde4/taskmanager/taskactions.h
+include/kde4/taskmanager/taskgroup.h
+include/kde4/taskmanager/taskitem.h
+include/kde4/taskmanager/taskmanager.h
+include/kde4/taskmanager/taskmanager_export.h
+lib/cmake/KDE4Workspace/KDE4WorkspaceConfig.cmake
+lib/cmake/KDE4Workspace/KDE4WorkspaceConfigVersion.cmake
+lib/cmake/KDE4Workspace/KDE4WorkspaceLibraryTargets-%%CMAKE_BUILD_TYPE%%.cmake
+lib/cmake/KDE4Workspace/KDE4WorkspaceLibraryTargets.cmake
+lib/kconf_update_bin/force_krunner_lock_shortcut_unreg
+lib/kconf_update_bin/krdb_clearlibrarypath
+lib/kconf_update_bin/kwin_update_default_rules
+lib/kconf_update_bin/kwin_update_settings_410
+lib/kconf_update_bin/kwin_update_settings_411
+lib/kconf_update_bin/kwin_update_settings_49
+lib/kconf_update_bin/kwin_update_tabbox_qml_settings
+lib/kconf_update_bin/kwin_update_tabbox_settings
+lib/kconf_update_bin/notifications-to-orgkdenotifications
+lib/kconf_update_bin/plasma-add-shortcut-to-menu
+lib/kconf_update_bin/plasma-to-plasma-desktop
+lib/kde4/classic_mode.so
+lib/kde4/devinfo.so
+lib/kde4/fontthumbnail.so
+lib/kde4/icon_mode.so
+lib/kde4/imports/org/kde/kwin/decoration/AppMenuButton.qml
+lib/kde4/imports/org/kde/kwin/decoration/ButtonGroup.qml
+lib/kde4/imports/org/kde/kwin/decoration/Decoration.qml
+lib/kde4/imports/org/kde/kwin/decoration/DecorationButton.qml
+lib/kde4/imports/org/kde/kwin/decoration/MenuButton.qml
+lib/kde4/imports/org/kde/kwin/decoration/libdecorationplugin.so
+lib/kde4/imports/org/kde/kwin/decoration/qmldir
+lib/kde4/imports/org/kde/kwin/decorations/plastik/libplastikplugin.so
+lib/kde4/imports/org/kde/kwin/decorations/plastik/qmldir
+lib/kde4/ion_bbcukmet.so
+lib/kde4/ion_debianweather.so
+lib/kde4/ion_envcan.so
+lib/kde4/ion_noaa.so
+lib/kde4/ion_wettercom.so
+lib/kde4/kcm_access.so
+lib/kde4/kcm_autostart.so
+lib/kde4/kcm_bell.so
+lib/kde4/kcm_clock.so
+lib/kde4/kcm_colors.so
+lib/kde4/kcm_cursortheme.so
+lib/kde4/kcm_desktoppaths.so
+lib/kde4/kcm_desktoptheme.so
+lib/kde4/kcm_display.so
+lib/kde4/kcm_fontinst.so
+lib/kde4/kcm_fonts.so
+lib/kde4/kcm_hotkeys.so
+lib/kde4/kcm_info.so
+lib/kde4/kcm_infosummary.so
+lib/kde4/kcm_input.so
+lib/kde4/kcm_kdm.so
+lib/kde4/kcm_keyboard.so
+lib/kde4/kcm_keys.so
+lib/kde4/kcm_krunner_kill.so
+lib/kde4/kcm_ksplashthemes.so
+lib/kde4/kcm_kwin4_effect_builtins.so
+lib/kde4/kcm_kwin4_genericscripted.so
+lib/kde4/kcm_kwin_scripts.so
+lib/kde4/kcm_kwincompositing.so
+lib/kde4/kcm_kwindecoration.so
+lib/kde4/kcm_kwindesktop.so
+lib/kde4/kcm_kwinoptions.so
+lib/kde4/kcm_kwinrules.so
+lib/kde4/kcm_kwinscreenedges.so
+lib/kde4/kcm_kwintabbox.so
+lib/kde4/kcm_launch.so
+lib/kde4/kcm_memory.so
+lib/kde4/kcm_nic.so
+lib/kde4/kcm_opengl.so
+lib/kde4/kcm_pci.so
+lib/kde4/kcm_powerdevilactivitiesconfig.so
+lib/kde4/kcm_powerdevilglobalconfig.so
+lib/kde4/kcm_powerdevilprofilesconfig.so
+lib/kde4/kcm_randr.so
+lib/kde4/kcm_samba.so
+lib/kde4/kcm_screensaver.so
+lib/kde4/kcm_smserver.so
+lib/kde4/kcm_solid_actions.so
+lib/kde4/kcm_standard_actions.so
+lib/kde4/kcm_style.so
+lib/kde4/kcm_usb.so
+lib/kde4/kcm_workspaceoptions.so
+lib/kde4/kded_appmenu.so
+lib/kde4/kded_freespacenotifier.so
+lib/kde4/kded_kephal.so
+lib/kde4/kded_keyboard.so
+lib/kde4/kded_khotkeys.so
+lib/kde4/kded_ktouchpadenabler.so
+lib/kde4/kded_kwrited.so
+lib/kde4/kded_powerdevil.so
+lib/kde4/kded_randrmonitor.so
+lib/kde4/kded_statusnotifierwatcher.so
+lib/kde4/keyboard_layout_widget.so
+lib/kde4/kfontviewpart.so
+lib/kde4/kgreet_classic.so
+lib/kde4/kgreet_generic.so
+lib/kde4/kgreet_winbind.so
+lib/kde4/kio_fonts.so
+lib/kde4/krunner_activities.so
+lib/kde4/krunner_bookmarksrunner.so
+lib/kde4/krunner_calculatorrunner.so
+lib/kde4/krunner_kill.so
+lib/kde4/krunner_locations.so
+lib/kde4/krunner_nepomuksearchrunner.so
+lib/kde4/krunner_placesrunner.so
+lib/kde4/krunner_plasma-desktop.so
+lib/kde4/krunner_powerdevil.so
+lib/kde4/krunner_recentdocuments.so
+lib/kde4/krunner_services.so
+lib/kde4/krunner_sessions.so
+lib/kde4/krunner_shell.so
+lib/kde4/krunner_solid.so
+lib/kde4/krunner_webshortcuts.so
+lib/kde4/krunner_windowedwidgets.so
+lib/kde4/krunner_windows.so
+lib/kde4/kstyle_oxygen_config.so
+lib/kde4/kwin3_aurorae.so
+lib/kde4/kwin3_b2.so
+lib/kde4/kwin3_laptop.so
+lib/kde4/kwin3_oxygen.so
+lib/kde4/kwin4_effect_builtins.so
+%%GLES%%lib/kde4/kwin4_effect_gles_builtins.so
+lib/kde4/kwin_b2_config.so
+lib/kde4/kwin_oxygen_config.so
+lib/kde4/libexec/fontinst
+lib/kde4/libexec/fontinst_helper
+lib/kde4/libexec/fontinst_x11
+@(root,wheel,6755) lib/kde4/libexec/kcheckpass
+lib/kde4/libexec/kcmdatetimehelper
+lib/kde4/libexec/kcmkdmhelper
+lib/kde4/libexec/kdm_config
+lib/kde4/libexec/kdm_greet
+lib/kde4/libexec/kfontprint
+lib/kde4/libexec/krootimage
+lib/kde4/libexec/kscreenlocker_greet
+lib/kde4/libexec/ksysguardprocesslist_helper
+lib/kde4/libexec/kwin_killer_helper
+lib/kde4/libexec/kwin_opengl_test
+lib/kde4/libexec/kwin_rules_dialog
+%%GPS%%lib/kde4/plasma-geolocation-gps.so
+lib/kde4/plasma-geolocation-ip.so
+lib/kde4/plasma_animator_default.so
+lib/kde4/plasma_applet_activitybar.so
+lib/kde4/plasma_applet_calendar.so
+lib/kde4/plasma_applet_clock.so
+lib/kde4/plasma_applet_currentappcontrol.so
+lib/kde4/plasma_applet_dig_clock.so
+lib/kde4/plasma_applet_icon.so
+lib/kde4/plasma_applet_keyboard.so
+lib/kde4/plasma_applet_launcher.so
+lib/kde4/plasma_applet_pager.so
+lib/kde4/plasma_applet_panelspacer_internal.so
+lib/kde4/plasma_applet_quicklaunch.so
+lib/kde4/plasma_applet_searchbox.so
+lib/kde4/plasma_applet_simplelauncher.so
+lib/kde4/plasma_applet_sm_cpu.so
+lib/kde4/plasma_applet_sm_hdd.so
+lib/kde4/plasma_applet_sm_hdd_activity.so
+lib/kde4/plasma_applet_sm_hwinfo.so
+lib/kde4/plasma_applet_sm_net.so
+lib/kde4/plasma_applet_sm_ram.so
+lib/kde4/plasma_applet_sm_temperature.so
+lib/kde4/plasma_applet_system-monitor.so
+lib/kde4/plasma_applet_systemtray.so
+lib/kde4/plasma_applet_tasks.so
+lib/kde4/plasma_applet_trash.so
+lib/kde4/plasma_applet_webbrowser.so
+lib/kde4/plasma_applet_windowlist.so
+lib/kde4/plasma_appletscriptengine_dashboard.so
+lib/kde4/plasma_appletscriptengine_webapplet.so
+lib/kde4/plasma_containment_desktop.so
+lib/kde4/plasma_containment_netpanel.so
+lib/kde4/plasma_containment_panel.so
+lib/kde4/plasma_containment_sal.so
+lib/kde4/plasma_containment_saverdesktop.so
+lib/kde4/plasma_containmentactions_applauncher.so
+lib/kde4/plasma_containmentactions_contextmenu.so
+lib/kde4/plasma_containmentactions_minimalcontextmenu.so
+lib/kde4/plasma_containmentactions_paste.so
+lib/kde4/plasma_containmentactions_switchactivity.so
+lib/kde4/plasma_containmentactions_switchdesktop.so
+lib/kde4/plasma_containmentactions_switchwindow.so
+lib/kde4/plasma_engine_activities.so
+lib/kde4/plasma_engine_akonadi.so
+lib/kde4/plasma_engine_applicationjobs.so
+lib/kde4/plasma_engine_apps.so
+lib/kde4/plasma_engine_calendar.so
+lib/kde4/plasma_engine_devicenotifications.so
+lib/kde4/plasma_engine_dict.so
+lib/kde4/plasma_engine_executable.so
+lib/kde4/plasma_engine_favicons.so
+lib/kde4/plasma_engine_filebrowser.so
+lib/kde4/plasma_engine_geolocation.so
+lib/kde4/plasma_engine_hotplug.so
+lib/kde4/plasma_engine_keystate.so
+lib/kde4/plasma_engine_metadata.so
+lib/kde4/plasma_engine_mouse.so
+lib/kde4/plasma_engine_mpris2.so
+lib/kde4/plasma_engine_notifications.so
+lib/kde4/plasma_engine_nowplaying.so
+lib/kde4/plasma_engine_places.so
+lib/kde4/plasma_engine_powermanagement.so
+lib/kde4/plasma_engine_rss.so
+lib/kde4/plasma_engine_searchlaunch.so
+lib/kde4/plasma_engine_share.so
+lib/kde4/plasma_engine_soliddevice.so
+lib/kde4/plasma_engine_statusnotifieritem.so
+lib/kde4/plasma_engine_systemmonitor.so
+lib/kde4/plasma_engine_tasks.so
+lib/kde4/plasma_engine_time.so
+lib/kde4/plasma_engine_weather.so
+lib/kde4/plasma_packagestructure_dashboard.so
+lib/kde4/plasma_packagestructure_share.so
+lib/kde4/plasma_packagestructure_web.so
+lib/kde4/plasma_toolbox_desktoptoolbox.so
+lib/kde4/plasma_toolbox_nettoolbox.so
+lib/kde4/plasma_toolbox_paneltoolbox.so
+lib/kde4/plasma_wallpaper_color.so
+lib/kde4/plasma_wallpaper_image.so
+lib/kde4/plugins/designer/ksignalplotterwidgets.so
+lib/kde4/plugins/designer/ksysguardlsofwidgets.so
+lib/kde4/plugins/designer/ksysguardwidgets.so
+lib/kde4/plugins/gui_platform/libkde.so
+lib/kde4/plugins/styles/oxygen.so
+lib/kde4/powerdevilbrightnesscontrolaction_config.so
+lib/kde4/powerdevildimdisplayaction_config.so
+lib/kde4/powerdevildpmsaction.so
+lib/kde4/powerdevildpmsaction_config.so
+lib/kde4/powerdevilhandlebuttoneventsaction_config.so
+lib/kde4/powerdevilkeyboardbrightnesscontrolaction_config.so
+lib/kde4/powerdevilrunscriptaction_config.so
+lib/kde4/powerdevilsuspendsessionaction_config.so
+lib/libkdecorations.so
+lib/libkdecorations.so.4
+lib/libkdecorations.so.%%KDE4_KDELIBS_VERSION%%
+lib/libkdeinit4_kaccess.so
+lib/libkdeinit4_kcminit.so
+lib/libkdeinit4_kcminit_startup.so
+lib/libkdeinit4_klipper.so
+lib/libkdeinit4_kmenuedit.so
+lib/libkdeinit4_krunner.so
+lib/libkdeinit4_ksmserver.so
+lib/libkdeinit4_ksysguard.so
+lib/libkdeinit4_kwin.so
+%%GLES%%lib/libkdeinit4_kwin_gles.so
+lib/libkdeinit4_kwin_rules_dialog.so
+lib/libkdeinit4_plasma-desktop.so
+lib/libkdeinit4_plasma-netbook.so
+lib/libkdeinit4_plasma-windowed.so
+lib/libkephal.so
+lib/libkephal.so.4
+lib/libkephal.so.%%KDE4_KDELIBS_VERSION%%
+lib/libkfontinst.so
+lib/libkfontinst.so.4
+lib/libkfontinst.so.%%KDE4_KDELIBS_VERSION%%
+lib/libkfontinstui.so
+lib/libkfontinstui.so.4
+lib/libkfontinstui.so.%%KDE4_KDELIBS_VERSION%%
+lib/libkhotkeysprivate.so.4
+lib/libkhotkeysprivate.so.%%KDE4_KDELIBS_VERSION%%
+lib/libkickoff.so
+lib/libkscreensaver.so
+lib/libkscreensaver.so.5
+lib/libkscreensaver.so.5.0.0
+lib/libksgrd.so
+lib/libksgrd.so.4
+lib/libksgrd.so.%%KDE4_KDELIBS_VERSION%%
+lib/libksignalplotter.so
+lib/libksignalplotter.so.4
+lib/libksignalplotter.so.%%KDE4_KDELIBS_VERSION%%
+lib/libkwineffects.so
+lib/libkwineffects.so.1
+lib/libkwineffects.so.1.0.0
+%%GLES%%lib/libkwinglesutils.so
+%%GLES%%lib/libkwinglesutils.so.1
+%%GLES%%lib/libkwinglesutils.so.1.0.0
+lib/libkwinglutils.so
+lib/libkwinglutils.so.1
+lib/libkwinglutils.so.1.0.0
+lib/libkworkspace.so
+lib/libkworkspace.so.4
+lib/libkworkspace.so.%%KDE4_KDELIBS_VERSION%%
+lib/liblsofui.so
+lib/liblsofui.so.4
+lib/liblsofui.so.%%KDE4_KDELIBS_VERSION%%
+lib/liboxygenstyle.so
+lib/liboxygenstyle.so.4
+lib/liboxygenstyle.so.%%KDE4_KDELIBS_VERSION%%
+lib/liboxygenstyleconfig.so
+lib/liboxygenstyleconfig.so.4
+lib/liboxygenstyleconfig.so.%%KDE4_KDELIBS_VERSION%%
+lib/libplasma-geolocation-interface.so
+lib/libplasma-geolocation-interface.so.4
+lib/libplasma-geolocation-interface.so.%%KDE4_KDELIBS_VERSION%%
+lib/libplasma_applet-system-monitor.so
+lib/libplasma_applet-system-monitor.so.4
+lib/libplasma_applet-system-monitor.so.%%KDE4_KDELIBS_VERSION%%
+lib/libplasmaclock.so
+lib/libplasmaclock.so.4
+lib/libplasmaclock.so.%%KDE4_KDELIBS_VERSION%%
+lib/libplasmagenericshell.so
+lib/libplasmagenericshell.so.4
+lib/libplasmagenericshell.so.%%KDE4_KDELIBS_VERSION%%
+lib/libpowerdevilconfigcommonprivate.so
+lib/libpowerdevilconfigcommonprivate.so.4
+lib/libpowerdevilconfigcommonprivate.so.%%KDE4_KDELIBS_VERSION%%
+lib/libpowerdevilcore.so
+lib/libpowerdevilcore.so.0
+lib/libpowerdevilcore.so.0.1.0
+lib/libpowerdevilui.so
+lib/libpowerdevilui.so.4
+lib/libpowerdevilui.so.%%KDE4_KDELIBS_VERSION%%
+lib/libprocesscore.so
+lib/libprocesscore.so.4
+lib/libprocesscore.so.%%KDE4_KDELIBS_VERSION%%
+lib/libprocessui.so
+lib/libprocessui.so.4
+lib/libprocessui.so.%%KDE4_KDELIBS_VERSION%%
+lib/libsystemsettingsview.so
+lib/libsystemsettingsview.so.2
+lib/libtaskmanager.so
+lib/libtaskmanager.so.4
+lib/libtaskmanager.so.%%KDE4_KDELIBS_VERSION%%
+lib/libweather_ion.so
+lib/libweather_ion.so.6
+lib/libweather_ion.so.6.0.0
+lib/strigi/strigita_font.so
+share/applications/kde4/kdesystemsettings.desktop
+share/applications/kde4/kfontview.desktop
+share/applications/kde4/kinfocenter.desktop
+share/applications/kde4/klipper.desktop
+share/applications/kde4/kmenuedit.desktop
+share/applications/kde4/krandrtray.desktop
+share/applications/kde4/ksysguard.desktop
+share/applications/kde4/systemsettings.desktop
+share/apps/cmake/modules/FindCkConnector.cmake
+share/apps/cmake/modules/FindDBus.cmake
+share/apps/cmake/modules/FindKephal.cmake
+share/apps/cmake/modules/FindLibXKlavier.cmake
+share/apps/cmake/modules/FindOpenGLES.cmake
+share/apps/cmake/modules/FindPAM.cmake
+share/apps/cmake/modules/FindSensors.cmake
+share/apps/cmake/modules/PkgConfigGetVar.cmake
+share/apps/cmake/modules/UnixAuth.cmake
+share/apps/color-schemes/Honeycomb.colors
+share/apps/color-schemes/Norway.colors
+share/apps/color-schemes/ObsidianCoast.colors
+share/apps/color-schemes/Oxygen.colors
+share/apps/color-schemes/OxygenCold.colors
+share/apps/color-schemes/Steel.colors
+share/apps/color-schemes/WontonSoup.colors
+share/apps/color-schemes/Zion.colors
+share/apps/color-schemes/ZionReversed.colors
+share/apps/desktoptheme/air-netbook/colors
+share/apps/desktoptheme/air-netbook/metadata.desktop
+share/apps/desktoptheme/air-netbook/widgets/background.svgz
+share/apps/desktoptheme/air-netbook/widgets/panel-background.svgz
+share/apps/desktoptheme/default/calendar/mini-calendar.svgz
+share/apps/desktoptheme/default/system-monitor/hdd_panel.svgz
+share/apps/desktoptheme/default/widgets/activities.svgz
+share/apps/desktoptheme/default/widgets/battery-oxygen.svgz
+share/apps/doc/kdm/README
+share/apps/doc/kdm/greeter.dtd
+share/apps/freespacenotifier/freespacenotifier.notifyrc
+share/apps/kaccess/kaccess.notifyrc
+share/apps/katepart/syntax/plasma-desktop-js.xml
+share/apps/kcminput/cursor_large_black.pcf.gz
+share/apps/kcminput/cursor_large_white.pcf.gz
+share/apps/kcminput/cursor_small_white.pcf.gz
+share/apps/kcminput/pics/mouse_lh.png
+share/apps/kcminput/pics/mouse_rh.png
+share/apps/kcmkeyboard/pics/epo.png
+share/apps/kcmkeys/kde3.kksrc
+share/apps/kcmkeys/kde4.kksrc
+share/apps/kcmkeys/mac4.kksrc
+share/apps/kcmkeys/unix3.kksrc
+share/apps/kcmkeys/win3.kksrc
+share/apps/kcmkeys/win4.kksrc
+share/apps/kcmkeys/wm3.kksrc
+share/apps/kcmsolidactions/solid-action-template.desktop
+share/apps/kcmstyle/kcmstyle.notifyrc
+share/apps/kcmusb/usb.ids
+share/apps/kconf_update/klipper-kconfigxt.upd
+share/apps/kconf_update/krdb_libpathwipe.upd
+share/apps/kconf_update/kscreenlocker_locksession-shortcut.upd
+share/apps/kconf_update/ksmserver_shortcuts.upd
+share/apps/kconf_update/kwin_fsp_workarounds_1.upd
+share/apps/kconf_update/kwin_remove_delay_focus.sh
+share/apps/kconf_update/kwin_remove_delay_focus.upd
+share/apps/kconf_update/kwin_remove_effects.upd
+share/apps/kconf_update/kwin_translate_activity_rule.sh
+share/apps/kconf_update/kwin_translate_activity_rule.upd
+share/apps/kconf_update/kwin_translate_confrequest_rule.sh
+share/apps/kconf_update/kwin_translate_confrequest_rule.upd
+share/apps/kconf_update/kwin_update_410.upd
+share/apps/kconf_update/kwin_update_411.upd
+share/apps/kconf_update/kwin_update_49.upd
+share/apps/kconf_update/kwin_update_tabbox_qml_settings.upd
+share/apps/kconf_update/kwin_update_tabbox_settings.upd
+share/apps/kconf_update/notifications-to-orgkdenotifications.upd
+share/apps/kconf_update/oxygen.upd
+share/apps/kconf_update/plasma-add-shortcut-to-menu.upd
+share/apps/kconf_update/plasma-to-plasmadesktop-shortcuts.upd
+share/apps/kconf_update/plasmarc-to-plasmadesktoprc.upd
+share/apps/kconf_update/update_oxygen.pl
+share/apps/kcontrol/pics/anchor.png
+share/apps/kcontrol/pics/logo.png
+share/apps/kcontrol/pics/mini-world.png
+share/apps/kcontrol/pics/monitor.png
+share/apps/kdisplay/app-defaults/AAAAAAGeneral.ad
+share/apps/kdisplay/app-defaults/AAAMotif.ad
+share/apps/kdisplay/app-defaults/AAATk.ad
+share/apps/kdisplay/app-defaults/AAAXaw.ad
+share/apps/kdisplay/app-defaults/AcroRead.ad
+share/apps/kdisplay/app-defaults/Editres.ad
+share/apps/kdisplay/app-defaults/Emacs.ad
+share/apps/kdisplay/app-defaults/GV.ad
+share/apps/kdisplay/app-defaults/ML.ad
+share/apps/kdisplay/app-defaults/Nedit.ad
+share/apps/kdisplay/app-defaults/Netscape.ad
+share/apps/kdisplay/app-defaults/RVPlayer.ad
+share/apps/kdisplay/app-defaults/WPerfect.ad
+share/apps/kdisplay/app-defaults/XCalc.ad
+share/apps/kdisplay/app-defaults/XOsview.ad
+share/apps/kdisplay/app-defaults/XTerm.ad
+share/apps/kdisplay/app-defaults/XV.ad
+share/apps/kdisplay/app-defaults/Xawtv.ad
+share/apps/kdisplay/app-defaults/Xdvi.ad
+share/apps/kdisplay/app-defaults/Xpdf.ad
+share/apps/kdm/patterns/fish.desktop
+share/apps/kdm/patterns/fish.png
+share/apps/kdm/patterns/flowers.desktop
+share/apps/kdm/patterns/flowers.png
+share/apps/kdm/patterns/night-rock.desktop
+share/apps/kdm/patterns/night-rock.jpg
+share/apps/kdm/patterns/pavement.desktop
+share/apps/kdm/patterns/pavement.png
+share/apps/kdm/patterns/rattan.desktop
+share/apps/kdm/patterns/rattan.png
+share/apps/kdm/patterns/stonewall2.desktop
+share/apps/kdm/patterns/stonewall2.png
+share/apps/kdm/patterns/triangles.desktop
+share/apps/kdm/patterns/triangles.png
+share/apps/kdm/pics/kdelogo.png
+share/apps/kdm/pics/shutdown.png
+share/apps/kdm/pics/users/default1.png
+share/apps/kdm/pics/users/default2.png
+share/apps/kdm/pics/users/default3.png
+share/apps/kdm/pics/users/root1.png
+share/apps/kdm/programs/xearth.desktop
+share/apps/kdm/programs/xglobe.desktop
+share/apps/kdm/programs/xplanet.desktop
+share/apps/kdm/sessions/9wm.desktop
+share/apps/kdm/sessions/aewm++.desktop
+share/apps/kdm/sessions/aewm.desktop
+share/apps/kdm/sessions/afterstep.desktop
+share/apps/kdm/sessions/amaterus.desktop
+share/apps/kdm/sessions/amiwm.desktop
+share/apps/kdm/sessions/asclassic.desktop
+share/apps/kdm/sessions/blackbox.desktop
+share/apps/kdm/sessions/cde.desktop
+share/apps/kdm/sessions/ctwm.desktop
+share/apps/kdm/sessions/cwwm.desktop
+share/apps/kdm/sessions/e16.desktop
+share/apps/kdm/sessions/enlightenment.desktop
+share/apps/kdm/sessions/evilwm.desktop
+share/apps/kdm/sessions/fluxbox.desktop
+share/apps/kdm/sessions/flwm.desktop
+share/apps/kdm/sessions/fvwm.desktop
+share/apps/kdm/sessions/fvwm95.desktop
+share/apps/kdm/sessions/gnome.desktop
+share/apps/kdm/sessions/golem.desktop
+share/apps/kdm/sessions/icewm.desktop
+share/apps/kdm/sessions/ion.desktop
+share/apps/kdm/sessions/kde-plasma-safe.desktop
+share/apps/kdm/sessions/kde-plasma.desktop
+share/apps/kdm/sessions/larswm.desktop
+share/apps/kdm/sessions/lwm.desktop
+share/apps/kdm/sessions/matchbox.desktop
+share/apps/kdm/sessions/metacity.desktop
+share/apps/kdm/sessions/mwm.desktop
+share/apps/kdm/sessions/olvwm.desktop
+share/apps/kdm/sessions/olwm.desktop
+share/apps/kdm/sessions/openbox.desktop
+share/apps/kdm/sessions/oroborus.desktop
+share/apps/kdm/sessions/phluid.desktop
+share/apps/kdm/sessions/pwm.desktop
+share/apps/kdm/sessions/qvwm.desktop
+share/apps/kdm/sessions/ratpoison.desktop
+share/apps/kdm/sessions/sapphire.desktop
+share/apps/kdm/sessions/sawfish.desktop
+share/apps/kdm/sessions/subtle.desktop
+share/apps/kdm/sessions/twm.desktop
+share/apps/kdm/sessions/ude.desktop
+share/apps/kdm/sessions/vtwm.desktop
+share/apps/kdm/sessions/w9wm.desktop
+share/apps/kdm/sessions/waimea.desktop
+share/apps/kdm/sessions/wm2.desktop
+share/apps/kdm/sessions/wmaker.desktop
+share/apps/kdm/sessions/xfce.desktop
+share/apps/kdm/sessions/xfce4.desktop
+share/apps/kdm/themes/ariya/KdmGreeterTheme.desktop
+share/apps/kdm/themes/ariya/ariya.xml
+share/apps/kdm/themes/ariya/lineedit_active.png
+share/apps/kdm/themes/ariya/lineedit_normal.png
+share/apps/kdm/themes/ariya/lock.png
+share/apps/kdm/themes/ariya/login_active.png
+share/apps/kdm/themes/ariya/login_normal.png
+share/apps/kdm/themes/ariya/pw_icon.png
+share/apps/kdm/themes/ariya/rectangle.png
+share/apps/kdm/themes/ariya/rectangle_overlay.png
+share/apps/kdm/themes/ariya/screenshot.png
+share/apps/kdm/themes/ariya/session_normal.png
+share/apps/kdm/themes/ariya/system_normal.png
+share/apps/kdm/themes/ariya/user_icon.png
+share/apps/kdm/themes/circles/KdmGreeterTheme.desktop
+share/apps/kdm/themes/circles/background.svg
+share/apps/kdm/themes/circles/circles.xml
+share/apps/kdm/themes/circles/flower.png
+share/apps/kdm/themes/circles/help.png
+share/apps/kdm/themes/circles/options.png
+share/apps/kdm/themes/circles/screenshot.png
+share/apps/kdm/themes/elarun/KdmGreeterTheme.desktop
+share/apps/kdm/themes/elarun/elarun.xml
+share/apps/kdm/themes/elarun/lineedit_active.png
+share/apps/kdm/themes/elarun/lineedit_normal.png
+share/apps/kdm/themes/elarun/lock.png
+share/apps/kdm/themes/elarun/login_active.png
+share/apps/kdm/themes/elarun/login_normal.png
+share/apps/kdm/themes/elarun/pw_icon.png
+share/apps/kdm/themes/elarun/rectangle.png
+share/apps/kdm/themes/elarun/rectangle_overlay.png
+share/apps/kdm/themes/elarun/screenshot.png
+share/apps/kdm/themes/elarun/session_normal.png
+share/apps/kdm/themes/elarun/system_normal.png
+share/apps/kdm/themes/elarun/user_icon.png
+share/apps/kdm/themes/horos/KdmGreeterTheme.desktop
+share/apps/kdm/themes/horos/horos.xml
+share/apps/kdm/themes/horos/lineedit_active.png
+share/apps/kdm/themes/horos/lineedit_normal.png
+share/apps/kdm/themes/horos/lock.png
+share/apps/kdm/themes/horos/login_active.png
+share/apps/kdm/themes/horos/login_normal.png
+share/apps/kdm/themes/horos/pw_icon.png
+share/apps/kdm/themes/horos/rectangle.png
+share/apps/kdm/themes/horos/rectangle_overlay.png
+share/apps/kdm/themes/horos/screenshot.png
+share/apps/kdm/themes/horos/session_normal.png
+share/apps/kdm/themes/horos/system_normal.png
+share/apps/kdm/themes/horos/user_icon.png
+share/apps/kdm/themes/oxygen-air/KdmGreeterTheme.desktop
+share/apps/kdm/themes/oxygen-air/caps.png
+share/apps/kdm/themes/oxygen-air/icon-kde.png
+share/apps/kdm/themes/oxygen-air/oxygen-air.xml
+share/apps/kdm/themes/oxygen-air/pw-entry.png
+share/apps/kdm/themes/oxygen-air/screenshot.png
+share/apps/kdm/themes/oxygen-air/session_button-li.png
+share/apps/kdm/themes/oxygen-air/session_button.png
+share/apps/kdm/themes/oxygen-air/system_button-li.png
+share/apps/kdm/themes/oxygen-air/system_button.png
+share/apps/kdm/themes/oxygen-air/user-entry.png
+share/apps/kdm/themes/oxygen-air/win-login.png
+share/apps/kdm/themes/oxygen/KdmGreeterTheme.desktop
+share/apps/kdm/themes/oxygen/background.svg
+share/apps/kdm/themes/oxygen/branding-icon.png
+share/apps/kdm/themes/oxygen/oxygen-box.svg
+share/apps/kdm/themes/oxygen/oxygen.svg
+share/apps/kdm/themes/oxygen/oxygen.xml
+share/apps/kdm/themes/oxygen/screenshot.png
+share/apps/kdm/themes/oxygen/session.png
+share/apps/kdm/themes/oxygen/system.png
+share/apps/kfontinst/icons/oxygen/16x16/actions/addfont.png
+share/apps/kfontinst/icons/oxygen/16x16/actions/disablefont.png
+share/apps/kfontinst/icons/oxygen/16x16/actions/enablefont.png
+share/apps/kfontinst/icons/oxygen/16x16/actions/fontstatus.png
+share/apps/kfontinst/icons/oxygen/22x22/actions/addfont.png
+share/apps/kfontinst/icons/oxygen/22x22/actions/disablefont.png
+share/apps/kfontinst/icons/oxygen/22x22/actions/enablefont.png
+share/apps/kfontinst/icons/oxygen/22x22/actions/fontstatus.png
+share/apps/kfontinst/icons/oxygen/scalable/actions/addfont.svgz
+share/apps/kfontinst/icons/oxygen/scalable/actions/disablefont.svgz
+share/apps/kfontinst/icons/oxygen/scalable/actions/enablefont.svgz
+share/apps/kfontinst/icons/oxygen/scalable/actions/fontstatus.svgz
+share/apps/kfontinst/kfontviewpart.rc
+share/apps/kfontview/kfontviewui.rc
+share/apps/khotkeys/defaults.khotkeys
+share/apps/khotkeys/kde32b1.khotkeys
+share/apps/khotkeys/konqueror_gestures_kde321.khotkeys
+share/apps/khotkeys/printscreen.khotkeys
+share/apps/kinfocenter/kinfocenterui.rc
+share/apps/kmenuedit/icons/hicolor/22x22/actions/menu_new.png
+share/apps/kmenuedit/icons/hicolor/22x22/actions/menu_new_sep.png
+share/apps/kmenuedit/icons/hicolor/32x32/actions/menu_new.png
+share/apps/kmenuedit/icons/hicolor/32x32/actions/menu_new_sep.png
+share/apps/kmenuedit/kmenueditui.rc
+share/apps/konqsidebartng/virtual_folders/services/fonts.desktop
+share/apps/ksmserver/ksmserver.notifyrc
+share/apps/ksmserver/screenlocker/org.kde.passworddialog/contents/ui/AccelButton.qml
+share/apps/ksmserver/screenlocker/org.kde.passworddialog/contents/ui/Greeter.qml
+share/apps/ksmserver/screenlocker/org.kde.passworddialog/contents/ui/SessionSwitching.qml
+share/apps/ksmserver/screenlocker/org.kde.passworddialog/contents/ui/main.qml
+share/apps/ksmserver/screenlocker/org.kde.passworddialog/metadata.desktop
+share/apps/ksmserver/themes/contour/ContourButton.qml
+share/apps/ksmserver/themes/contour/main.qml
+share/apps/ksmserver/themes/contour/metadata.desktop
+share/apps/ksmserver/themes/contour/screenshot.png
+share/apps/ksmserver/themes/default/ContextMenu.qml
+share/apps/ksmserver/themes/default/KSMButton.qml
+share/apps/ksmserver/themes/default/MenuItem.qml
+share/apps/ksmserver/themes/default/helper.js
+share/apps/ksmserver/themes/default/main.qml
+share/apps/ksmserver/themes/default/metadata.desktop
+share/apps/ksmserver/themes/default/screenshot.png
+share/apps/ksplash/Themes/Minimalistic/Preview.png
+share/apps/ksplash/Themes/Minimalistic/Theme.rc
+share/apps/ksplash/Themes/Minimalistic/images/kdegear.png
+share/apps/ksplash/Themes/Minimalistic/images/kdeletter.png
+share/apps/ksplash/Themes/Minimalistic/images/kdelogo-contrast.png
+share/apps/ksplash/Themes/Minimalistic/images/kdelogo.png
+share/apps/ksplash/Themes/Minimalistic/images/kdemask.png
+share/apps/ksplash/Themes/Minimalistic/main.qml
+share/apps/ksplash/Themes/None/Theme.rc
+share/apps/ksplash/Themes/Simple/Preview.png
+share/apps/ksplash/Themes/Simple/Theme.rc
+share/apps/ksplash/Themes/SimpleSmall/Preview.png
+share/apps/ksplash/Themes/SimpleSmall/Theme.rc
+share/apps/kstyle/themes/oxygen.themerc
+share/apps/kstyle/themes/qtcde.themerc
+share/apps/kstyle/themes/qtcleanlooks.themerc
+share/apps/kstyle/themes/qtgtk.themerc
+share/apps/kstyle/themes/qtmotif.themerc
+share/apps/kstyle/themes/qtplastique.themerc
+share/apps/kstyle/themes/qtwindows.themerc
+share/apps/ksysguard/ProcessTable.sgrd
+share/apps/ksysguard/SystemLoad2.sgrd
+share/apps/ksysguard/ksysguard.notifyrc
+share/apps/ksysguard/ksysguardui.rc
+share/apps/ksysguard/scripts/README
+share/apps/ksysguard/scripts/smaps/helper.js
+share/apps/ksysguard/scripts/smaps/index.html
+share/apps/ksysguard/scripts/smaps/main.js
+share/apps/ksysguard/scripts/smaps/smaps.desktop
+share/apps/ksysguard/scripts/smaps/sorttable.js
+share/apps/ksysguard/scripts/smaps/style.css
+share/apps/kthememanager/themes/HighContrastDark-big/HighContrastDark-big.preview.png
+share/apps/kthememanager/themes/HighContrastDark-big/HighContrastDark-big.xml
+share/apps/kthememanager/themes/HighContrastDark/HighContrastDark.preview.png
+share/apps/kthememanager/themes/HighContrastDark/HighContrastDark.xml
+share/apps/kthememanager/themes/HighContrastLight-big/HighContrastLight-big.preview.png
+share/apps/kthememanager/themes/HighContrastLight-big/HighContrastLight-big.xml
+share/apps/kthememanager/themes/HighContrastLight/HighContrastLight.preview.png
+share/apps/kthememanager/themes/HighContrastLight/HighContrastLight.xml
+share/apps/kthememanager/themes/KDE_Classic/KDE_Classic.preview.png
+share/apps/kthememanager/themes/KDE_Classic/KDE_Classic.xml
+share/apps/kthememanager/themes/Keramik/Keramik.preview.png
+share/apps/kthememanager/themes/Keramik/Keramik.xml
+share/apps/kthememanager/themes/Plastik/Plastik.preview.png
+share/apps/kthememanager/themes/Plastik/Plastik.xml
+share/apps/kthememanager/themes/Platinum/Platinum.preview.png
+share/apps/kthememanager/themes/Platinum/Platinum.xml
+share/apps/kthememanager/themes/Redmond/Redmond.preview.png
+share/apps/kthememanager/themes/Redmond/Redmond.xml
+share/apps/kthememanager/themes/Sunshine/Sunshine.preview.png
+share/apps/kthememanager/themes/Sunshine/Sunshine.xml
+share/apps/kthememanager/themes/YellowOnBlue-big/YellowOnBlue-big.preview.png
+share/apps/kthememanager/themes/YellowOnBlue-big/YellowOnBlue-big.xml
+share/apps/kthememanager/themes/YellowOnBlue/YellowOnBlue.preview.png
+share/apps/kthememanager/themes/YellowOnBlue/YellowOnBlue.xml
+share/apps/kwin/aurorae.desktop
+share/apps/kwin/aurorae/AppMenuButton.qml
+share/apps/kwin/aurorae/AuroraeButton.qml
+share/apps/kwin/aurorae/AuroraeButtonGroup.qml
+share/apps/kwin/aurorae/AuroraeMaximizeButton.qml
+share/apps/kwin/aurorae/Decoration.qml
+share/apps/kwin/aurorae/DecorationButton.qml
+share/apps/kwin/aurorae/MenuButton.qml
+share/apps/kwin/aurorae/aurorae.qml
+share/apps/kwin/b2.desktop
+share/apps/kwin/blinking-startup-fragment.glsl
+share/apps/kwin/cubecap.png
+share/apps/kwin/decorations/kwin4_decoration_qml_plastik/contents/config/main.xml
+share/apps/kwin/decorations/kwin4_decoration_qml_plastik/contents/ui/PlastikButton.qml
+share/apps/kwin/decorations/kwin4_decoration_qml_plastik/contents/ui/config.ui
+share/apps/kwin/decorations/kwin4_decoration_qml_plastik/contents/ui/main.qml
+share/apps/kwin/decorations/kwin4_decoration_qml_plastik/metadata.desktop
+share/apps/kwin/default_rules/fsp_workarounds_1.kwinrules
+share/apps/kwin/default_rules/plasma_desktop_containment.kwinrules
+share/apps/kwin/desktoptabbox/informative/contents/ui/ShadowedSvgItem.qml
+share/apps/kwin/desktoptabbox/informative/contents/ui/main.qml
+share/apps/kwin/desktoptabbox/informative/metadata.desktop
+share/apps/kwin/desktoptabbox/previews/contents/ui/ShadowedSvgItem.qml
+share/apps/kwin/desktoptabbox/previews/contents/ui/main.qml
+share/apps/kwin/desktoptabbox/previews/metadata.desktop
+share/apps/kwin/effects/desktopgrid/main.qml
+share/apps/kwin/effects/kwin4_effect_dialogparent/contents/code/main.js
+share/apps/kwin/effects/kwin4_effect_dialogparent/metadata.desktop
+share/apps/kwin/effects/kwin4_effect_fade/contents/code/main.js
+share/apps/kwin/effects/kwin4_effect_fade/contents/config/main.xml
+share/apps/kwin/effects/kwin4_effect_fade/metadata.desktop
+share/apps/kwin/effects/kwin4_effect_fadedesktop/contents/code/main.js
+share/apps/kwin/effects/kwin4_effect_fadedesktop/metadata.desktop
+share/apps/kwin/effects/kwin4_effect_login/contents/code/main.js
+share/apps/kwin/effects/kwin4_effect_login/contents/config/main.xml
+share/apps/kwin/effects/kwin4_effect_login/contents/ui/config.ui
+share/apps/kwin/effects/kwin4_effect_login/metadata.desktop
+share/apps/kwin/effects/kwin4_effect_maximize/contents/code/maximize.js
+share/apps/kwin/effects/kwin4_effect_maximize/metadata.desktop
+share/apps/kwin/effects/kwin4_effect_scalein/contents/code/main.js
+share/apps/kwin/effects/kwin4_effect_scalein/metadata.desktop
+share/apps/kwin/effects/kwin4_effect_translucency/contents/code/main.js
+share/apps/kwin/effects/kwin4_effect_translucency/contents/config/main.xml
+share/apps/kwin/effects/kwin4_effect_translucency/contents/ui/config.ui
+share/apps/kwin/effects/kwin4_effect_translucency/metadata.desktop
+share/apps/kwin/effects/presentwindows/main.qml
+share/apps/kwin/kcm_kwindecoration/AuroraeDecoration.qml
+share/apps/kwin/kcm_kwindecoration/AuroraePreview.qml
+share/apps/kwin/kcm_kwindecoration/DecorationPreview.qml
+share/apps/kwin/kcm_kwindecoration/main.qml
+share/apps/kwin/kcm_kwintabbox/dolphin.png
+share/apps/kwin/kcm_kwintabbox/kmail.png
+share/apps/kwin/kcm_kwintabbox/konqueror.png
+share/apps/kwin/kcm_kwintabbox/main.qml
+share/apps/kwin/kcm_kwintabbox/systemsettings.png
+share/apps/kwin/kwin.notifyrc
+share/apps/kwin/laptop.desktop
+share/apps/kwin/oxygenclient.desktop
+share/apps/kwin/scripts/desktopchangeosd/contents/ui/main.qml
+share/apps/kwin/scripts/desktopchangeosd/contents/ui/osd.qml
+share/apps/kwin/scripts/desktopchangeosd/metadata.desktop
+share/apps/kwin/scripts/synchronizeskipswitcher/contents/code/main.js
+share/apps/kwin/scripts/synchronizeskipswitcher/metadata.desktop
+share/apps/kwin/scripts/videowall/contents/code/main.js
+share/apps/kwin/scripts/videowall/metadata.desktop
+share/apps/kwin/shaders/1.10/coverswitch-reflection.glsl
+share/apps/kwin/shaders/1.10/cube-cap.glsl
+share/apps/kwin/shaders/1.10/cube-reflection.glsl
+share/apps/kwin/shaders/1.10/cylinder.vert
+share/apps/kwin/shaders/1.10/invert.frag
+share/apps/kwin/shaders/1.10/logout-blur.frag
+share/apps/kwin/shaders/1.10/lookingglass.frag
+share/apps/kwin/shaders/1.10/sphere.vert
+share/apps/kwin/shaders/1.10/vignetting.frag
+share/apps/kwin/shaders/1.40/coverswitch-reflection.glsl
+share/apps/kwin/shaders/1.40/cube-cap.glsl
+share/apps/kwin/shaders/1.40/cube-reflection.glsl
+share/apps/kwin/shaders/1.40/cylinder.vert
+share/apps/kwin/shaders/1.40/invert.frag
+share/apps/kwin/shaders/1.40/logout-blur.frag
+share/apps/kwin/shaders/1.40/lookingglass.frag
+share/apps/kwin/shaders/1.40/sphere.vert
+share/apps/kwin/shaders/1.40/vignetting.frag
+share/apps/kwin/stripTitle.js
+share/apps/kwin/tabbox/ShadowedSvgItem.qml
+share/apps/kwin/tabbox/big_icons/contents/ui/IconTabBox.qml
+share/apps/kwin/tabbox/big_icons/contents/ui/ShadowedSvgItem.qml
+share/apps/kwin/tabbox/big_icons/contents/ui/main.qml
+share/apps/kwin/tabbox/big_icons/metadata.desktop
+share/apps/kwin/tabbox/compact/contents/ui/ShadowedSvgItem.qml
+share/apps/kwin/tabbox/compact/contents/ui/main.qml
+share/apps/kwin/tabbox/compact/metadata.desktop
+share/apps/kwin/tabbox/informative/contents/ui/ShadowedSvgItem.qml
+share/apps/kwin/tabbox/informative/contents/ui/main.qml
+share/apps/kwin/tabbox/informative/metadata.desktop
+share/apps/kwin/tabbox/present_windows/contents/ui/ShadowedSvgItem.qml
+share/apps/kwin/tabbox/present_windows/contents/ui/main.qml
+share/apps/kwin/tabbox/present_windows/metadata.desktop
+share/apps/kwin/tabbox/small_icons/contents/ui/IconTabBox.qml
+share/apps/kwin/tabbox/small_icons/contents/ui/ShadowedSvgItem.qml
+share/apps/kwin/tabbox/small_icons/contents/ui/main.qml
+share/apps/kwin/tabbox/small_icons/metadata.desktop
+share/apps/kwin/tabbox/tabbox.qml
+share/apps/kwin/tabbox/text/contents/ui/ShadowedSvgItem.qml
+share/apps/kwin/tabbox/text/contents/ui/main.qml
+share/apps/kwin/tabbox/text/metadata.desktop
+share/apps/kwin/tabbox/thumbnails/contents/ui/ShadowedSvgItem.qml
+share/apps/kwin/tabbox/thumbnails/contents/ui/main.qml
+share/apps/kwin/tabbox/thumbnails/metadata.desktop
+share/apps/kwin/tabbox/window_strip/contents/ui/main.qml
+share/apps/kwin/tabbox/window_strip/metadata.desktop
+share/apps/kwin/tm_inner.png
+share/apps/kwin/tm_outer.png
+share/apps/kwrited/kwrited.notifyrc
+share/apps/plasma-desktop/init/00-defaultLayout.js
+share/apps/plasma-desktop/plasma-desktop.notifyrc
+share/apps/plasma-desktop/updates/addShowActivitiesManagerPlasmoid.js
+share/apps/plasma-desktop/updates/set-hidden-single-vd-pager.js
+share/apps/plasma-desktop/updates/systray-to-notifications-widget.js
+share/apps/plasma-netbook/init/00-defaultLayout.js
+share/apps/plasma/dashboard/AppleClasses/AppleAnimator.js
+share/apps/plasma/dashboard/AppleClasses/AppleButton.js
+share/apps/plasma/dashboard/AppleClasses/AppleInfoButton.js
+share/apps/plasma/dashboard/AppleClasses/AppleScrollArea.js
+share/apps/plasma/dashboard/AppleClasses/AppleScrollbar.js
+share/apps/plasma/dashboard/AppleClasses/AppleSlider.js
+share/apps/plasma/dashboard/button/genericButton.js
+share/apps/plasma/layout-templates/org.kde.plasma-desktop.SaL/contents/layout.js
+share/apps/plasma/layout-templates/org.kde.plasma-desktop.SaL/metadata.desktop
+share/apps/plasma/layout-templates/org.kde.plasma-desktop.defaultPanel/contents/layout.js
+share/apps/plasma/layout-templates/org.kde.plasma-desktop.defaultPanel/metadata.desktop
+share/apps/plasma/layout-templates/org.kde.plasma-desktop.desktopIcons/contents/layout.js
+share/apps/plasma/layout-templates/org.kde.plasma-desktop.desktopIcons/metadata.desktop
+share/apps/plasma/layout-templates/org.kde.plasma-desktop.findWidgets/contents/layout.js
+share/apps/plasma/layout-templates/org.kde.plasma-desktop.findWidgets/metadata.desktop
+share/apps/plasma/layout-templates/org.kde.plasma-desktop.photoActivity/contents/layout.js
+share/apps/plasma/layout-templates/org.kde.plasma-desktop.photoActivity/metadata.desktop
+share/apps/plasma/layout-templates/org.kde.plasma-netbook.defaultPage/contents/layout.js
+share/apps/plasma/layout-templates/org.kde.plasma-netbook.defaultPage/metadata.desktop
+share/apps/plasma/layout-templates/org.kde.plasma-netbook.defaultPanel/contents/layout.js
+share/apps/plasma/layout-templates/org.kde.plasma-netbook.defaultPanel/metadata.desktop
+share/apps/plasma/layout-templates/org.kde.plasma-netbook.defaultSal/contents/layout.js
+share/apps/plasma/layout-templates/org.kde.plasma-netbook.defaultSal/metadata.desktop
+share/apps/plasma/packages/org.kde.desktop.activitymanager/contents/ui/.directory
+share/apps/plasma/packages/org.kde.desktop.activitymanager/contents/ui/ActivityDelegate.qml
+share/apps/plasma/packages/org.kde.desktop.activitymanager/contents/ui/main.qml
+share/apps/plasma/packages/org.kde.desktop.activitymanager/metadata.desktop
+share/apps/plasma/packages/org.kde.desktop.widgetexplorer/contents/ui/AppletDelegate.qml
+share/apps/plasma/packages/org.kde.desktop.widgetexplorer/contents/ui/Tooltip.qml
+share/apps/plasma/packages/org.kde.desktop.widgetexplorer/contents/ui/main.qml
+share/apps/plasma/packages/org.kde.desktop.widgetexplorer/metadata.desktop
+share/apps/plasma/packages/org.kde.pager/contents/ui/main.qml
+share/apps/plasma/packages/org.kde.pager/contents/ui/utils.js
+share/apps/plasma/packages/org.kde.pager/metadata.desktop
+share/apps/plasma/packages/org.kde.plasma.tasks/contents/code/layout.js
+share/apps/plasma/packages/org.kde.plasma.tasks/contents/code/tools.js
+share/apps/plasma/packages/org.kde.plasma.tasks/contents/ui/GroupDialog.qml
+share/apps/plasma/packages/org.kde.plasma.tasks/contents/ui/GroupExpanderOverlay.qml
+share/apps/plasma/packages/org.kde.plasma.tasks/contents/ui/MouseHandler.qml
+share/apps/plasma/packages/org.kde.plasma.tasks/contents/ui/Task.qml
+share/apps/plasma/packages/org.kde.plasma.tasks/contents/ui/TaskList.qml
+share/apps/plasma/packages/org.kde.plasma.tasks/contents/ui/main.qml
+share/apps/plasma/packages/org.kde.plasma.tasks/metadata.desktop
+share/apps/plasma/packages/org.kde.systemtray/contents/code/IconsList.js
+share/apps/plasma/packages/org.kde.systemtray/contents/code/TasksSet.js
+share/apps/plasma/packages/org.kde.systemtray/contents/code/main.js
+share/apps/plasma/packages/org.kde.systemtray/contents/ui/ArrowArea.qml
+share/apps/plasma/packages/org.kde.systemtray/contents/ui/IconsGrid.qml
+share/apps/plasma/packages/org.kde.systemtray/contents/ui/IconsList.qml
+share/apps/plasma/packages/org.kde.systemtray/contents/ui/StatusNotifierItem.qml
+share/apps/plasma/packages/org.kde.systemtray/contents/ui/TrayIcon.qml
+share/apps/plasma/packages/org.kde.systemtray/contents/ui/main.qml
+share/apps/plasma/plasmoids/battery/contents/code/logic.js
+share/apps/plasma/plasmoids/battery/contents/config/main.xml
+share/apps/plasma/plasmoids/battery/contents/ui/BatteryIcon.qml
+share/apps/plasma/plasmoids/battery/contents/ui/BatteryItem.qml
+share/apps/plasma/plasmoids/battery/contents/ui/BrightnessItem.qml
+share/apps/plasma/plasmoids/battery/contents/ui/CompactRepresentation.qml
+share/apps/plasma/plasmoids/battery/contents/ui/PopupDialog.qml
+share/apps/plasma/plasmoids/battery/contents/ui/PowerManagementItem.qml
+share/apps/plasma/plasmoids/battery/contents/ui/ScrollableListView.qml
+share/apps/plasma/plasmoids/battery/contents/ui/batterymonitor.qml
+share/apps/plasma/plasmoids/battery/metadata.desktop
+share/apps/plasma/plasmoids/lockout/contents/config/main.xml
+share/apps/plasma/plasmoids/lockout/contents/ui/config.ui
+share/apps/plasma/plasmoids/lockout/contents/ui/data.js
+share/apps/plasma/plasmoids/lockout/contents/ui/lockout.qml
+share/apps/plasma/plasmoids/lockout/metadata.desktop
+share/apps/plasma/plasmoids/notifier/contents/config/main.xml
+share/apps/plasma/plasmoids/notifier/contents/ui/ActionItem.qml
+share/apps/plasma/plasmoids/notifier/contents/ui/DeviceItem.qml
+share/apps/plasma/plasmoids/notifier/contents/ui/StatusBar.qml
+share/apps/plasma/plasmoids/notifier/contents/ui/config.ui
+share/apps/plasma/plasmoids/notifier/contents/ui/devicenotifier.qml
+share/apps/plasma/plasmoids/notifier/metadata.desktop
+share/apps/plasma/plasmoids/org.kde.notifications/contents/config/main.xml
+share/apps/plasma/plasmoids/org.kde.notifications/contents/ui/JobDelegate.qml
+share/apps/plasma/plasmoids/org.kde.notifications/contents/ui/Jobs.qml
+share/apps/plasma/plasmoids/org.kde.notifications/contents/ui/LastNotificationPopup.qml
+share/apps/plasma/plasmoids/org.kde.notifications/contents/ui/NotificationDelegate/NotificationDelegate.qml
+share/apps/plasma/plasmoids/org.kde.notifications/contents/ui/NotificationDelegate/qmldir
+share/apps/plasma/plasmoids/org.kde.notifications/contents/ui/NotificationIcon.qml
+share/apps/plasma/plasmoids/org.kde.notifications/contents/ui/Notifications.qml
+share/apps/plasma/plasmoids/org.kde.notifications/contents/ui/Title.qml
+share/apps/plasma/plasmoids/org.kde.notifications/contents/ui/config.ui
+share/apps/plasma/plasmoids/org.kde.notifications/contents/ui/main.qml
+share/apps/plasma/plasmoids/org.kde.notifications/contents/ui/uiproperties.js
+share/apps/plasma/plasmoids/org.kde.notifications/metadata.desktop
+share/apps/plasma/plasmoids/org.kde.notifications/platformcontents/touch/ui/NotificationDelegate/NotificationDelegate.qml
+share/apps/plasma/plasmoids/org.kde.notifications/platformcontents/touch/ui/NotificationDelegate/qmldir
+share/apps/plasma/plasmoids/org.kde.notifications/platformcontents/touch/ui/uiproperties.js
+share/apps/plasma/plasmoids/org.kde.showActivityManager/contents/ui/main.qml
+share/apps/plasma/plasmoids/org.kde.showActivityManager/metadata.desktop
+share/apps/plasma/services/activities.operations
+share/apps/plasma/services/applicationjobs.operations
+share/apps/plasma/services/apps.operations
+share/apps/plasma/services/hotplug.operations
+share/apps/plasma/services/modifierkeystate.operations
+share/apps/plasma/services/mpris2.operations
+share/apps/plasma/services/notifications.operations
+share/apps/plasma/services/nowplaying.operations
+share/apps/plasma/services/org.kde.places.operations
+share/apps/plasma/services/powermanagementservice.operations
+share/apps/plasma/services/searchlaunch.operations
+share/apps/plasma/services/share.operations
+share/apps/plasma/services/soliddevice.operations
+share/apps/plasma/services/statusnotifieritem.operations
+share/apps/plasma/services/tasks.operations
+share/apps/plasma/shareprovider/im9/contents/code/main.js
+share/apps/plasma/shareprovider/im9/metadata.desktop
+share/apps/plasma/shareprovider/imgsusepasteorg/contents/code/main.js
+share/apps/plasma/shareprovider/imgsusepasteorg/metadata.desktop
+share/apps/plasma/shareprovider/imgur/contents/code/main.js
+share/apps/plasma/shareprovider/imgur/metadata.desktop
+share/apps/plasma/shareprovider/kde/contents/code/main.js
+share/apps/plasma/shareprovider/kde/metadata.desktop
+share/apps/plasma/shareprovider/pastebincom/contents/code/main.js
+share/apps/plasma/shareprovider/pastebincom/metadata.desktop
+share/apps/plasma/shareprovider/pasteopensuseorg/contents/code/main.js
+share/apps/plasma/shareprovider/pasteopensuseorg/metadata.desktop
+share/apps/plasma/shareprovider/pasteubuntucom/contents/code/main.js
+share/apps/plasma/shareprovider/pasteubuntucom/metadata.desktop
+share/apps/plasma/shareprovider/privatepastecom/contents/code/main.js
+share/apps/plasma/shareprovider/privatepastecom/metadata.desktop
+share/apps/plasma/shareprovider/simplestimagehosting/contents/code/main.js
+share/apps/plasma/shareprovider/simplestimagehosting/metadata.desktop
+share/apps/plasma/shareprovider/wklej/contents/code/main.js
+share/apps/plasma/shareprovider/wklej/metadata.desktop
+share/apps/plasma/shareprovider/wstaw/contents/code/main.js
+share/apps/plasma/shareprovider/wstaw/metadata.desktop
+share/apps/powerdevil/powerdevil.notifyrc
+share/apps/solid/actions/test-predicate-openinwindow.desktop
+share/apps/solid/devices/solid-device-AcAdapter.desktop
+share/apps/solid/devices/solid-device-AudioInterface.desktop
+share/apps/solid/devices/solid-device-Battery.desktop
+share/apps/solid/devices/solid-device-Block.desktop
+share/apps/solid/devices/solid-device-Button.desktop
+share/apps/solid/devices/solid-device-Camera.desktop
+share/apps/solid/devices/solid-device-DvbInterface.desktop
+share/apps/solid/devices/solid-device-NetworkInterface.desktop
+share/apps/solid/devices/solid-device-OpticalDisc.desktop
+share/apps/solid/devices/solid-device-OpticalDrive.desktop
+share/apps/solid/devices/solid-device-PortableMediaPlayer.desktop
+share/apps/solid/devices/solid-device-Processor.desktop
+share/apps/solid/devices/solid-device-SerialInterface.desktop
+share/apps/solid/devices/solid-device-SmartCardReader.desktop
+share/apps/solid/devices/solid-device-StorageAccess.desktop
+share/apps/solid/devices/solid-device-StorageDrive.desktop
+share/apps/solid/devices/solid-device-StorageVolume.desktop
+share/apps/solid/devices/solid-device-Video.desktop
+share/apps/systemsettings/classic/main.html
+share/apps/systemsettings/classic/systemsettings-classic.css
+share/apps/systemsettings/systemsettings.kcfg
+share/apps/systemsettings/systemsettingsui.rc
+share/autostart/klipper.desktop
+share/autostart/krunner.desktop
+share/autostart/plasma-desktop.desktop
+share/autostart/plasma.desktop
+share/config.kcfg/freespacenotifier.kcfg
+share/config.kcfg/klaunch.kcfg
+share/config.kcfg/kwin.kcfg
+share/config.kcfg/plasma-shell-desktop.kcfg
+share/config/activities.knsrc
+share/config/aurorae.knsrc
+share/config/background.knsrc
+share/config/colorschemes.knsrc
+share/config/kdm.knsrc
+share/config/kfontinst.knsrc
+share/config/ksplash.knsrc
+share/config/ksysguard.knsrc
+share/config/kwineffect.knsrc
+share/config/kwinscripts.knsrc
+share/config/kwinswitcher.knsrc
+share/config/plasma-overlayrc
+share/config/plasma-themes.knsrc
+share/config/wallpaper.knsrc
+share/config/xcursor.knsrc
+share/dbus-1/interfaces/com.canonical.AppMenu.Registrar.xml
+share/dbus-1/interfaces/org.kde.KSMServerInterface.xml
+share/dbus-1/interfaces/org.kde.KWin.xml
+share/dbus-1/interfaces/org.kde.kded.appmenu.xml
+share/dbus-1/interfaces/org.kde.khotkeys.xml
+share/dbus-1/interfaces/org.kde.krunner.App.xml
+share/dbus-1/services/org.kde.fontinst.service
+share/dbus-1/services/org.kde.krunner.service
+share/dbus-1/system-services/org.kde.fontinst.service
+share/dbus-1/system-services/org.kde.kcontrol.kcmclock.service
+share/dbus-1/system-services/org.kde.kcontrol.kcmkdm.service
+share/dbus-1/system-services/org.kde.ksysguard.processlisthelper.service
+share/doc/HTML/en/kcontrol/autostart/common
+share/doc/HTML/en/kcontrol/autostart/index.cache.bz2
+share/doc/HTML/en/kcontrol/autostart/index.docbook
+share/doc/HTML/en/kcontrol/bell/common
+share/doc/HTML/en/kcontrol/bell/index.cache.bz2
+share/doc/HTML/en/kcontrol/bell/index.docbook
+share/doc/HTML/en/kcontrol/clock/common
+share/doc/HTML/en/kcontrol/clock/index.cache.bz2
+share/doc/HTML/en/kcontrol/clock/index.docbook
+share/doc/HTML/en/kcontrol/colors/common
+share/doc/HTML/en/kcontrol/colors/index.cache.bz2
+share/doc/HTML/en/kcontrol/colors/index.docbook
+share/doc/HTML/en/kcontrol/cursortheme/common
+share/doc/HTML/en/kcontrol/cursortheme/index.cache.bz2
+share/doc/HTML/en/kcontrol/cursortheme/index.docbook
+share/doc/HTML/en/kcontrol/desktop/common
+share/doc/HTML/en/kcontrol/desktop/index.cache.bz2
+share/doc/HTML/en/kcontrol/desktop/index.docbook
+share/doc/HTML/en/kcontrol/desktopthemedetails/clicking-apply.png
+share/doc/HTML/en/kcontrol/desktopthemedetails/common
+share/doc/HTML/en/kcontrol/desktopthemedetails/customizing.png
+share/doc/HTML/en/kcontrol/desktopthemedetails/index.cache.bz2
+share/doc/HTML/en/kcontrol/desktopthemedetails/index.docbook
+share/doc/HTML/en/kcontrol/fontinst/common
+share/doc/HTML/en/kcontrol/fontinst/index.cache.bz2
+share/doc/HTML/en/kcontrol/fontinst/index.docbook
+share/doc/HTML/en/kcontrol/fonts/adjust-all.png
+share/doc/HTML/en/kcontrol/fonts/anti-aliasing.png
+share/doc/HTML/en/kcontrol/fonts/common
+share/doc/HTML/en/kcontrol/fonts/index.cache.bz2
+share/doc/HTML/en/kcontrol/fonts/index.docbook
+share/doc/HTML/en/kcontrol/fonts/main.png
+share/doc/HTML/en/kcontrol/joystick/common
+share/doc/HTML/en/kcontrol/joystick/index.cache.bz2
+share/doc/HTML/en/kcontrol/joystick/index.docbook
+share/doc/HTML/en/kcontrol/joystick/joystick-calibration.png
+share/doc/HTML/en/kcontrol/joystick/joystick-main.png
+share/doc/HTML/en/kcontrol/kcmaccess/common
+share/doc/HTML/en/kcontrol/kcmaccess/index.cache.bz2
+share/doc/HTML/en/kcontrol/kcmaccess/index.docbook
+share/doc/HTML/en/kcontrol/kcmsmserver/common
+share/doc/HTML/en/kcontrol/kcmsmserver/index.cache.bz2
+share/doc/HTML/en/kcontrol/kcmsmserver/index.docbook
+share/doc/HTML/en/kcontrol/kcmstyle/common
+share/doc/HTML/en/kcontrol/kcmstyle/index.cache.bz2
+share/doc/HTML/en/kcontrol/kcmstyle/index.docbook
+share/doc/HTML/en/kcontrol/keyboard/common
+share/doc/HTML/en/kcontrol/keyboard/index.cache.bz2
+share/doc/HTML/en/kcontrol/keyboard/index.docbook
+share/doc/HTML/en/kcontrol/keys/common
+share/doc/HTML/en/kcontrol/keys/index.cache.bz2
+share/doc/HTML/en/kcontrol/keys/index.docbook
+share/doc/HTML/en/kcontrol/khotkeys/common
+share/doc/HTML/en/kcontrol/khotkeys/groups-comment.png
+share/doc/HTML/en/kcontrol/khotkeys/index.cache.bz2
+share/doc/HTML/en/kcontrol/khotkeys/index.docbook
+share/doc/HTML/en/kcontrol/khotkeys/manage-export.png
+share/doc/HTML/en/kcontrol/khotkeys/oxygen-22x22-edit-clear-locationbar-rtl.png
+share/doc/HTML/en/kcontrol/khotkeys/settings.png
+share/doc/HTML/en/kcontrol/khotkeys/shortcuts-action-command.png
+share/doc/HTML/en/kcontrol/khotkeys/shortcuts-action-keyboard.png
+share/doc/HTML/en/kcontrol/khotkeys/shortcuts-trigger-keyboard.png
+share/doc/HTML/en/kcontrol/khotkeys/shortcuts-trigger-mouse.png
+share/doc/HTML/en/kcontrol/kwincompositing/common
+share/doc/HTML/en/kcontrol/kwincompositing/index.cache.bz2
+share/doc/HTML/en/kcontrol/kwincompositing/index.docbook
+share/doc/HTML/en/kcontrol/kwindecoration/buttons.png
+share/doc/HTML/en/kcontrol/kwindecoration/common
+share/doc/HTML/en/kcontrol/kwindecoration/decoration.png
+share/doc/HTML/en/kcontrol/kwindecoration/index.cache.bz2
+share/doc/HTML/en/kcontrol/kwindecoration/index.docbook
+share/doc/HTML/en/kcontrol/kwindecoration/main.png
+share/doc/HTML/en/kcontrol/kwinscreenedges/common
+share/doc/HTML/en/kcontrol/kwinscreenedges/index.cache.bz2
+share/doc/HTML/en/kcontrol/kwinscreenedges/index.docbook
+share/doc/HTML/en/kcontrol/kwintabbox/common
+share/doc/HTML/en/kcontrol/kwintabbox/index.cache.bz2
+share/doc/HTML/en/kcontrol/kwintabbox/index.docbook
+share/doc/HTML/en/kcontrol/mouse/common
+share/doc/HTML/en/kcontrol/mouse/index.cache.bz2
+share/doc/HTML/en/kcontrol/mouse/index.docbook
+share/doc/HTML/en/kcontrol/paths/common
+share/doc/HTML/en/kcontrol/paths/index.cache.bz2
+share/doc/HTML/en/kcontrol/paths/index.docbook
+share/doc/HTML/en/kcontrol/paths/paths.png
+share/doc/HTML/en/kcontrol/powerdevil/activity.png
+share/doc/HTML/en/kcontrol/powerdevil/advanced.png
+share/doc/HTML/en/kcontrol/powerdevil/common
+share/doc/HTML/en/kcontrol/powerdevil/energy.png
+share/doc/HTML/en/kcontrol/powerdevil/index.cache.bz2
+share/doc/HTML/en/kcontrol/powerdevil/index.docbook
+share/doc/HTML/en/kcontrol/screensaver/common
+share/doc/HTML/en/kcontrol/screensaver/index.cache.bz2
+share/doc/HTML/en/kcontrol/screensaver/index.docbook
+share/doc/HTML/en/kcontrol/solid-actions/add-action.png
+share/doc/HTML/en/kcontrol/solid-actions/common
+share/doc/HTML/en/kcontrol/solid-actions/edit-action.png
+share/doc/HTML/en/kcontrol/solid-actions/index.cache.bz2
+share/doc/HTML/en/kcontrol/solid-actions/index.docbook
+share/doc/HTML/en/kcontrol/solid-actions/main.png
+share/doc/HTML/en/kcontrol/splashscreen/common
+share/doc/HTML/en/kcontrol/splashscreen/get-new-theme.png
+share/doc/HTML/en/kcontrol/splashscreen/index.cache.bz2
+share/doc/HTML/en/kcontrol/splashscreen/index.docbook
+share/doc/HTML/en/kcontrol/splashscreen/splash-main.png
+share/doc/HTML/en/kcontrol/windowbehaviour/common
+share/doc/HTML/en/kcontrol/windowbehaviour/index.cache.bz2
+share/doc/HTML/en/kcontrol/windowbehaviour/index.docbook
+share/doc/HTML/en/kcontrol/windowspecific/Face-smile.png
+share/doc/HTML/en/kcontrol/windowspecific/akgregator-info.png
+share/doc/HTML/en/kcontrol/windowspecific/akregator-attributes.png
+share/doc/HTML/en/kcontrol/windowspecific/akregator-fav.png
+share/doc/HTML/en/kcontrol/windowspecific/common
+share/doc/HTML/en/kcontrol/windowspecific/config-win-behavior.png
+share/doc/HTML/en/kcontrol/windowspecific/emacs-attribute.png
+share/doc/HTML/en/kcontrol/windowspecific/emacs-info.png
+share/doc/HTML/en/kcontrol/windowspecific/focus-stealing-pop2top-attribute.png
+share/doc/HTML/en/kcontrol/windowspecific/index.cache.bz2
+share/doc/HTML/en/kcontrol/windowspecific/index.docbook
+share/doc/HTML/en/kcontrol/windowspecific/knotes-attribute.png
+share/doc/HTML/en/kcontrol/windowspecific/knotes-info.png
+share/doc/HTML/en/kcontrol/windowspecific/kopete-attribute-2.png
+share/doc/HTML/en/kcontrol/windowspecific/kopete-chat-attribute.png
+share/doc/HTML/en/kcontrol/windowspecific/kopete-chat-info.png
+share/doc/HTML/en/kcontrol/windowspecific/kopete-info.png
+share/doc/HTML/en/kcontrol/windowspecific/kwin-detect-window.png
+share/doc/HTML/en/kcontrol/windowspecific/kwin-kopete-rules.png
+share/doc/HTML/en/kcontrol/windowspecific/kwin-rule-editor.png
+share/doc/HTML/en/kcontrol/windowspecific/kwin-rules-main-n-akregator.png
+share/doc/HTML/en/kcontrol/windowspecific/kwin-rules-main.png
+share/doc/HTML/en/kcontrol/windowspecific/kwin-rules-ordering.png
+share/doc/HTML/en/kcontrol/windowspecific/kwin-window-attributes.png
+share/doc/HTML/en/kcontrol/windowspecific/kwin-window-matching.png
+share/doc/HTML/en/kcontrol/windowspecific/pager-4-desktops.png
+share/doc/HTML/en/kcontrol/windowspecific/tbird-compose-attribute.png
+share/doc/HTML/en/kcontrol/windowspecific/tbird-compose-info.png
+share/doc/HTML/en/kcontrol/windowspecific/tbird-main-attribute.png
+share/doc/HTML/en/kcontrol/windowspecific/tbird-main-info.png
+share/doc/HTML/en/kcontrol/windowspecific/tbird-reminder-attribute-2.png
+share/doc/HTML/en/kcontrol/windowspecific/tbird-reminder-info.png
+share/doc/HTML/en/kcontrol/windowspecific/window-matching-emacs.png
+share/doc/HTML/en/kcontrol/windowspecific/window-matching-init.png
+share/doc/HTML/en/kcontrol/windowspecific/window-matching-knotes.png
+share/doc/HTML/en/kcontrol/windowspecific/window-matching-kopete-chat.png
+share/doc/HTML/en/kcontrol/windowspecific/window-matching-kopete.png
+share/doc/HTML/en/kcontrol/windowspecific/window-matching-ready-akregator.png
+share/doc/HTML/en/kcontrol/windowspecific/window-matching-tbird-compose.png
+share/doc/HTML/en/kcontrol/windowspecific/window-matching-tbird-main.png
+share/doc/HTML/en/kcontrol/windowspecific/window-matching-tbird-reminder.png
+share/doc/HTML/en/kcontrol/workspaceoptions/common
+share/doc/HTML/en/kcontrol/workspaceoptions/index.cache.bz2
+share/doc/HTML/en/kcontrol/workspaceoptions/index.docbook
+share/doc/HTML/en/kdm/common
+share/doc/HTML/en/kdm/index.cache.bz2
+share/doc/HTML/en/kdm/index.docbook
+share/doc/HTML/en/kdm/kdmrc-ref.docbook
+share/doc/HTML/en/kdm/theme-ref.docbook
+share/doc/HTML/en/kfontview/common
+share/doc/HTML/en/kfontview/index.cache.bz2
+share/doc/HTML/en/kfontview/index.docbook
+share/doc/HTML/en/kfontview/kfontview.png
+share/doc/HTML/en/kinfocenter/common
+share/doc/HTML/en/kinfocenter/index.cache.bz2
+share/doc/HTML/en/kinfocenter/index.docbook
+share/doc/HTML/en/kinfocenter/kinfocenter.png
+share/doc/HTML/en/kinfocenter/os_block.png
+share/doc/HTML/en/kinfocenter/pro_block.png
+share/doc/HTML/en/kinfocenter/sto_block.png
+share/doc/HTML/en/klipper/common
+share/doc/HTML/en/klipper/index.cache.bz2
+share/doc/HTML/en/klipper/index.docbook
+share/doc/HTML/en/klipper/screenshot.png
+share/doc/HTML/en/kmenuedit/common
+share/doc/HTML/en/kmenuedit/done.png
+share/doc/HTML/en/kmenuedit/index.cache.bz2
+share/doc/HTML/en/kmenuedit/index.docbook
+share/doc/HTML/en/kmenuedit/itemname.png
+share/doc/HTML/en/kmenuedit/new.png
+share/doc/HTML/en/kmenuedit/reset.png
+share/doc/HTML/en/kmenuedit/selecticon.png
+share/doc/HTML/en/kmenuedit/selectinternet.png
+share/doc/HTML/en/ksysguard/common
+share/doc/HTML/en/ksysguard/index.cache.bz2
+share/doc/HTML/en/ksysguard/index.docbook
+share/doc/HTML/en/plasma-desktop/add-widgets.png
+share/doc/HTML/en/plasma-desktop/common
+share/doc/HTML/en/plasma-desktop/desktop-settings.png
+share/doc/HTML/en/plasma-desktop/device_notifier_widget.png
+share/doc/HTML/en/plasma-desktop/device_notifier_widget_actions.png
+share/doc/HTML/en/plasma-desktop/index.cache.bz2
+share/doc/HTML/en/plasma-desktop/index.docbook
+share/doc/HTML/en/plasma-desktop/panel-settings.png
+share/doc/HTML/en/plasma-desktop/plasma-desktop-annotated.png
+share/doc/HTML/en/plasma-desktop/system-tray-settings.png
+share/doc/HTML/en/plasma-desktop/system-tray-up-arrow.png
+share/doc/HTML/en/plasma-desktop/taskbar-settings.png
+share/doc/HTML/en/systemsettings/common
+share/doc/HTML/en/systemsettings/index.cache.bz2
+share/doc/HTML/en/systemsettings/index.docbook
+share/icons/KDE_Classic/cursors/00000000000000020006000e7e9ffc3f
+share/icons/KDE_Classic/cursors/00008160000006810000408080010102
+share/icons/KDE_Classic/cursors/08e8e1c95fe2fc01f976f1e063a24ccd
+share/icons/KDE_Classic/cursors/3ecb610c1bf2410f44200f48c40d3599
+share/icons/KDE_Classic/cursors/4498f0e0c1937ffe01fd06f973665830
+share/icons/KDE_Classic/cursors/5c6cd98b3f3ebcb1f9c7f1c204630408
+share/icons/KDE_Classic/cursors/9081237383d90e509aa00f00170e968f
+share/icons/KDE_Classic/cursors/9d800788f1b08800ae810202380a0822
+share/icons/KDE_Classic/cursors/X_cursor
+share/icons/KDE_Classic/cursors/all-scroll
+share/icons/KDE_Classic/cursors/bottom_left_corner
+share/icons/KDE_Classic/cursors/bottom_right_corner
+share/icons/KDE_Classic/cursors/bottom_side
+share/icons/KDE_Classic/cursors/center_ptr
+share/icons/KDE_Classic/cursors/closedhand
+share/icons/KDE_Classic/cursors/col-resize
+share/icons/KDE_Classic/cursors/cross
+share/icons/KDE_Classic/cursors/crossed_circle
+share/icons/KDE_Classic/cursors/crosshair
+share/icons/KDE_Classic/cursors/d9ce0ab605698f320427677b458ad60b
+share/icons/KDE_Classic/cursors/dnd-move
+share/icons/KDE_Classic/cursors/dnd-no-drop
+share/icons/KDE_Classic/cursors/dnd-none
+share/icons/KDE_Classic/cursors/e-resize
+share/icons/KDE_Classic/cursors/e29285e634086352946a0e7090d73106
+share/icons/KDE_Classic/cursors/fcf21c00b30f7e3f83fe0dfd12e71cff
+share/icons/KDE_Classic/cursors/fleur
+share/icons/KDE_Classic/cursors/forbidden
+share/icons/KDE_Classic/cursors/half-busy
+share/icons/KDE_Classic/cursors/hand1
+share/icons/KDE_Classic/cursors/hand2
+share/icons/KDE_Classic/cursors/help
+share/icons/KDE_Classic/cursors/ibeam
+share/icons/KDE_Classic/cursors/left_ptr
+share/icons/KDE_Classic/cursors/left_ptr_watch
+share/icons/KDE_Classic/cursors/left_side
+share/icons/KDE_Classic/cursors/move
+share/icons/KDE_Classic/cursors/n-resize
+share/icons/KDE_Classic/cursors/not-allowed
+share/icons/KDE_Classic/cursors/openhand
+share/icons/KDE_Classic/cursors/pirate
+share/icons/KDE_Classic/cursors/pointer
+share/icons/KDE_Classic/cursors/pointing_hand
+share/icons/KDE_Classic/cursors/progress
+share/icons/KDE_Classic/cursors/question_arrow
+share/icons/KDE_Classic/cursors/right_ptr
+share/icons/KDE_Classic/cursors/right_side
+share/icons/KDE_Classic/cursors/row-resize
+share/icons/KDE_Classic/cursors/s-resize
+share/icons/KDE_Classic/cursors/sb_h_double_arrow
+share/icons/KDE_Classic/cursors/sb_v_double_arrow
+share/icons/KDE_Classic/cursors/size_all
+share/icons/KDE_Classic/cursors/size_bdiag
+share/icons/KDE_Classic/cursors/size_fdiag
+share/icons/KDE_Classic/cursors/size_hor
+share/icons/KDE_Classic/cursors/size_ver
+share/icons/KDE_Classic/cursors/split_h
+share/icons/KDE_Classic/cursors/split_v
+share/icons/KDE_Classic/cursors/text
+share/icons/KDE_Classic/cursors/top_left_corner
+share/icons/KDE_Classic/cursors/top_right_corner
+share/icons/KDE_Classic/cursors/top_side
+share/icons/KDE_Classic/cursors/up_arrow
+share/icons/KDE_Classic/cursors/v_double_arrow
+share/icons/KDE_Classic/cursors/w-resize
+share/icons/KDE_Classic/cursors/wait
+share/icons/KDE_Classic/cursors/watch
+share/icons/KDE_Classic/cursors/whats_this
+share/icons/KDE_Classic/cursors/xcursorconfig
+share/icons/KDE_Classic/cursors/xterm
+share/icons/KDE_Classic/index.theme
+share/icons/Oxygen_Black/cursors/00000000000000020006000e7e9ffc3f
+share/icons/Oxygen_Black/cursors/00008160000006810000408080010102
+share/icons/Oxygen_Black/cursors/03b6e0fcb3499374a867c041f52298f0
+share/icons/Oxygen_Black/cursors/08e8e1c95fe2fc01f976f1e063a24ccd
+share/icons/Oxygen_Black/cursors/1081e37283d90000800003c07f3ef6bf
+share/icons/Oxygen_Black/cursors/3085a0e285430894940527032f8b26df
+share/icons/Oxygen_Black/cursors/3ecb610c1bf2410f44200f48c40d3599
+share/icons/Oxygen_Black/cursors/4498f0e0c1937ffe01fd06f973665830
+share/icons/Oxygen_Black/cursors/5c6cd98b3f3ebcb1f9c7f1c204630408
+share/icons/Oxygen_Black/cursors/6407b0e94181790501fd1e167b474872
+share/icons/Oxygen_Black/cursors/640fb0e74195791501fd1ed57b41487f
+share/icons/Oxygen_Black/cursors/9081237383d90e509aa00f00170e968f
+share/icons/Oxygen_Black/cursors/9d800788f1b08800ae810202380a0822
+share/icons/Oxygen_Black/cursors/X_cursor
+share/icons/Oxygen_Black/cursors/a2a266d0498c3104214a47bd64ab0fc8
+share/icons/Oxygen_Black/cursors/alias
+share/icons/Oxygen_Black/cursors/all-scroll
+share/icons/Oxygen_Black/cursors/b66166c04f8c3109214a4fbd64a50fc8
+share/icons/Oxygen_Black/cursors/circle
+share/icons/Oxygen_Black/cursors/closedhand
+share/icons/Oxygen_Black/cursors/col-resize
+share/icons/Oxygen_Black/cursors/color-picker
+share/icons/Oxygen_Black/cursors/copy
+share/icons/Oxygen_Black/cursors/cross
+share/icons/Oxygen_Black/cursors/crossed_circle
+share/icons/Oxygen_Black/cursors/d9ce0ab605698f320427677b458ad60b
+share/icons/Oxygen_Black/cursors/dnd-copy
+share/icons/Oxygen_Black/cursors/dnd-link
+share/icons/Oxygen_Black/cursors/dnd-move
+share/icons/Oxygen_Black/cursors/dnd-no-drop
+share/icons/Oxygen_Black/cursors/dnd-none
+share/icons/Oxygen_Black/cursors/e-resize
+share/icons/Oxygen_Black/cursors/e29285e634086352946a0e7090d73106
+share/icons/Oxygen_Black/cursors/fcf21c00b30f7e3f83fe0dfd12e71cff
+share/icons/Oxygen_Black/cursors/fleur
+share/icons/Oxygen_Black/cursors/forbidden
+share/icons/Oxygen_Black/cursors/half-busy
+share/icons/Oxygen_Black/cursors/hand1
+share/icons/Oxygen_Black/cursors/hand2
+share/icons/Oxygen_Black/cursors/help
+share/icons/Oxygen_Black/cursors/ibeam
+share/icons/Oxygen_Black/cursors/left_ptr
+share/icons/Oxygen_Black/cursors/left_ptr_watch
+share/icons/Oxygen_Black/cursors/link
+share/icons/Oxygen_Black/cursors/move
+share/icons/Oxygen_Black/cursors/n-resize
+share/icons/Oxygen_Black/cursors/not-allowed
+share/icons/Oxygen_Black/cursors/openhand
+share/icons/Oxygen_Black/cursors/pencil
+share/icons/Oxygen_Black/cursors/pirate
+share/icons/Oxygen_Black/cursors/plus
+share/icons/Oxygen_Black/cursors/pointer
+share/icons/Oxygen_Black/cursors/pointing_hand
+share/icons/Oxygen_Black/cursors/progress
+share/icons/Oxygen_Black/cursors/question_arrow
+share/icons/Oxygen_Black/cursors/row-resize
+share/icons/Oxygen_Black/cursors/s-resize
+share/icons/Oxygen_Black/cursors/sb_h_double_arrow
+share/icons/Oxygen_Black/cursors/sb_v_double_arrow
+share/icons/Oxygen_Black/cursors/size_all
+share/icons/Oxygen_Black/cursors/size_bdiag
+share/icons/Oxygen_Black/cursors/size_fdiag
+share/icons/Oxygen_Black/cursors/size_hor
+share/icons/Oxygen_Black/cursors/size_ver
+share/icons/Oxygen_Black/cursors/split_h
+share/icons/Oxygen_Black/cursors/split_v
+share/icons/Oxygen_Black/cursors/text
+share/icons/Oxygen_Black/cursors/up_arrow
+share/icons/Oxygen_Black/cursors/v_double_arrow
+share/icons/Oxygen_Black/cursors/w-resize
+share/icons/Oxygen_Black/cursors/wait
+share/icons/Oxygen_Black/cursors/watch
+share/icons/Oxygen_Black/cursors/whats_this
+share/icons/Oxygen_Black/cursors/xterm
+share/icons/Oxygen_Black/index.theme
+share/icons/Oxygen_Blue/cursors/00000000000000020006000e7e9ffc3f
+share/icons/Oxygen_Blue/cursors/00008160000006810000408080010102
+share/icons/Oxygen_Blue/cursors/03b6e0fcb3499374a867c041f52298f0
+share/icons/Oxygen_Blue/cursors/08e8e1c95fe2fc01f976f1e063a24ccd
+share/icons/Oxygen_Blue/cursors/1081e37283d90000800003c07f3ef6bf
+share/icons/Oxygen_Blue/cursors/3085a0e285430894940527032f8b26df
+share/icons/Oxygen_Blue/cursors/3ecb610c1bf2410f44200f48c40d3599
+share/icons/Oxygen_Blue/cursors/4498f0e0c1937ffe01fd06f973665830
+share/icons/Oxygen_Blue/cursors/5c6cd98b3f3ebcb1f9c7f1c204630408
+share/icons/Oxygen_Blue/cursors/6407b0e94181790501fd1e167b474872
+share/icons/Oxygen_Blue/cursors/640fb0e74195791501fd1ed57b41487f
+share/icons/Oxygen_Blue/cursors/9081237383d90e509aa00f00170e968f
+share/icons/Oxygen_Blue/cursors/9d800788f1b08800ae810202380a0822
+share/icons/Oxygen_Blue/cursors/X_cursor
+share/icons/Oxygen_Blue/cursors/a2a266d0498c3104214a47bd64ab0fc8
+share/icons/Oxygen_Blue/cursors/alias
+share/icons/Oxygen_Blue/cursors/all-scroll
+share/icons/Oxygen_Blue/cursors/b66166c04f8c3109214a4fbd64a50fc8
+share/icons/Oxygen_Blue/cursors/circle
+share/icons/Oxygen_Blue/cursors/closedhand
+share/icons/Oxygen_Blue/cursors/col-resize
+share/icons/Oxygen_Blue/cursors/color-picker
+share/icons/Oxygen_Blue/cursors/copy
+share/icons/Oxygen_Blue/cursors/cross
+share/icons/Oxygen_Blue/cursors/crossed_circle
+share/icons/Oxygen_Blue/cursors/d9ce0ab605698f320427677b458ad60b
+share/icons/Oxygen_Blue/cursors/dnd-copy
+share/icons/Oxygen_Blue/cursors/dnd-link
+share/icons/Oxygen_Blue/cursors/dnd-move
+share/icons/Oxygen_Blue/cursors/dnd-no-drop
+share/icons/Oxygen_Blue/cursors/dnd-none
+share/icons/Oxygen_Blue/cursors/e-resize
+share/icons/Oxygen_Blue/cursors/e29285e634086352946a0e7090d73106
+share/icons/Oxygen_Blue/cursors/fcf21c00b30f7e3f83fe0dfd12e71cff
+share/icons/Oxygen_Blue/cursors/fleur
+share/icons/Oxygen_Blue/cursors/forbidden
+share/icons/Oxygen_Blue/cursors/half-busy
+share/icons/Oxygen_Blue/cursors/hand1
+share/icons/Oxygen_Blue/cursors/hand2
+share/icons/Oxygen_Blue/cursors/help
+share/icons/Oxygen_Blue/cursors/ibeam
+share/icons/Oxygen_Blue/cursors/left_ptr
+share/icons/Oxygen_Blue/cursors/left_ptr_watch
+share/icons/Oxygen_Blue/cursors/link
+share/icons/Oxygen_Blue/cursors/move
+share/icons/Oxygen_Blue/cursors/n-resize
+share/icons/Oxygen_Blue/cursors/not-allowed
+share/icons/Oxygen_Blue/cursors/openhand
+share/icons/Oxygen_Blue/cursors/pencil
+share/icons/Oxygen_Blue/cursors/pirate
+share/icons/Oxygen_Blue/cursors/plus
+share/icons/Oxygen_Blue/cursors/pointer
+share/icons/Oxygen_Blue/cursors/pointing_hand
+share/icons/Oxygen_Blue/cursors/progress
+share/icons/Oxygen_Blue/cursors/question_arrow
+share/icons/Oxygen_Blue/cursors/row-resize
+share/icons/Oxygen_Blue/cursors/s-resize
+share/icons/Oxygen_Blue/cursors/sb_h_double_arrow
+share/icons/Oxygen_Blue/cursors/sb_v_double_arrow
+share/icons/Oxygen_Blue/cursors/size_all
+share/icons/Oxygen_Blue/cursors/size_bdiag
+share/icons/Oxygen_Blue/cursors/size_fdiag
+share/icons/Oxygen_Blue/cursors/size_hor
+share/icons/Oxygen_Blue/cursors/size_ver
+share/icons/Oxygen_Blue/cursors/split_h
+share/icons/Oxygen_Blue/cursors/split_v
+share/icons/Oxygen_Blue/cursors/text
+share/icons/Oxygen_Blue/cursors/up_arrow
+share/icons/Oxygen_Blue/cursors/v_double_arrow
+share/icons/Oxygen_Blue/cursors/w-resize
+share/icons/Oxygen_Blue/cursors/wait
+share/icons/Oxygen_Blue/cursors/watch
+share/icons/Oxygen_Blue/cursors/whats_this
+share/icons/Oxygen_Blue/cursors/xterm
+share/icons/Oxygen_Blue/index.theme
+share/icons/Oxygen_White/cursors/00000000000000020006000e7e9ffc3f
+share/icons/Oxygen_White/cursors/00008160000006810000408080010102
+share/icons/Oxygen_White/cursors/03b6e0fcb3499374a867c041f52298f0
+share/icons/Oxygen_White/cursors/08e8e1c95fe2fc01f976f1e063a24ccd
+share/icons/Oxygen_White/cursors/1081e37283d90000800003c07f3ef6bf
+share/icons/Oxygen_White/cursors/3085a0e285430894940527032f8b26df
+share/icons/Oxygen_White/cursors/3ecb610c1bf2410f44200f48c40d3599
+share/icons/Oxygen_White/cursors/4498f0e0c1937ffe01fd06f973665830
+share/icons/Oxygen_White/cursors/5c6cd98b3f3ebcb1f9c7f1c204630408
+share/icons/Oxygen_White/cursors/6407b0e94181790501fd1e167b474872
+share/icons/Oxygen_White/cursors/640fb0e74195791501fd1ed57b41487f
+share/icons/Oxygen_White/cursors/9081237383d90e509aa00f00170e968f
+share/icons/Oxygen_White/cursors/9d800788f1b08800ae810202380a0822
+share/icons/Oxygen_White/cursors/X_cursor
+share/icons/Oxygen_White/cursors/a2a266d0498c3104214a47bd64ab0fc8
+share/icons/Oxygen_White/cursors/alias
+share/icons/Oxygen_White/cursors/all-scroll
+share/icons/Oxygen_White/cursors/b66166c04f8c3109214a4fbd64a50fc8
+share/icons/Oxygen_White/cursors/circle
+share/icons/Oxygen_White/cursors/closedhand
+share/icons/Oxygen_White/cursors/col-resize
+share/icons/Oxygen_White/cursors/color-picker
+share/icons/Oxygen_White/cursors/copy
+share/icons/Oxygen_White/cursors/cross
+share/icons/Oxygen_White/cursors/crossed_circle
+share/icons/Oxygen_White/cursors/d9ce0ab605698f320427677b458ad60b
+share/icons/Oxygen_White/cursors/dnd-copy
+share/icons/Oxygen_White/cursors/dnd-link
+share/icons/Oxygen_White/cursors/dnd-move
+share/icons/Oxygen_White/cursors/dnd-no-drop
+share/icons/Oxygen_White/cursors/dnd-none
+share/icons/Oxygen_White/cursors/e-resize
+share/icons/Oxygen_White/cursors/e29285e634086352946a0e7090d73106
+share/icons/Oxygen_White/cursors/fcf21c00b30f7e3f83fe0dfd12e71cff
+share/icons/Oxygen_White/cursors/fleur
+share/icons/Oxygen_White/cursors/forbidden
+share/icons/Oxygen_White/cursors/half-busy
+share/icons/Oxygen_White/cursors/hand1
+share/icons/Oxygen_White/cursors/hand2
+share/icons/Oxygen_White/cursors/help
+share/icons/Oxygen_White/cursors/ibeam
+share/icons/Oxygen_White/cursors/left_ptr
+share/icons/Oxygen_White/cursors/left_ptr_watch
+share/icons/Oxygen_White/cursors/link
+share/icons/Oxygen_White/cursors/move
+share/icons/Oxygen_White/cursors/n-resize
+share/icons/Oxygen_White/cursors/not-allowed
+share/icons/Oxygen_White/cursors/openhand
+share/icons/Oxygen_White/cursors/pencil
+share/icons/Oxygen_White/cursors/pirate
+share/icons/Oxygen_White/cursors/plus
+share/icons/Oxygen_White/cursors/pointer
+share/icons/Oxygen_White/cursors/pointing_hand
+share/icons/Oxygen_White/cursors/progress
+share/icons/Oxygen_White/cursors/question_arrow
+share/icons/Oxygen_White/cursors/row-resize
+share/icons/Oxygen_White/cursors/s-resize
+share/icons/Oxygen_White/cursors/sb_h_double_arrow
+share/icons/Oxygen_White/cursors/sb_v_double_arrow
+share/icons/Oxygen_White/cursors/size_all
+share/icons/Oxygen_White/cursors/size_bdiag
+share/icons/Oxygen_White/cursors/size_fdiag
+share/icons/Oxygen_White/cursors/size_hor
+share/icons/Oxygen_White/cursors/size_ver
+share/icons/Oxygen_White/cursors/split_h
+share/icons/Oxygen_White/cursors/split_v
+share/icons/Oxygen_White/cursors/text
+share/icons/Oxygen_White/cursors/up_arrow
+share/icons/Oxygen_White/cursors/v_double_arrow
+share/icons/Oxygen_White/cursors/w-resize
+share/icons/Oxygen_White/cursors/wait
+share/icons/Oxygen_White/cursors/watch
+share/icons/Oxygen_White/cursors/whats_this
+share/icons/Oxygen_White/cursors/xterm
+share/icons/Oxygen_White/index.theme
+share/icons/Oxygen_Yellow/cursors/00000000000000020006000e7e9ffc3f
+share/icons/Oxygen_Yellow/cursors/00008160000006810000408080010102
+share/icons/Oxygen_Yellow/cursors/03b6e0fcb3499374a867c041f52298f0
+share/icons/Oxygen_Yellow/cursors/08e8e1c95fe2fc01f976f1e063a24ccd
+share/icons/Oxygen_Yellow/cursors/1081e37283d90000800003c07f3ef6bf
+share/icons/Oxygen_Yellow/cursors/3085a0e285430894940527032f8b26df
+share/icons/Oxygen_Yellow/cursors/3ecb610c1bf2410f44200f48c40d3599
+share/icons/Oxygen_Yellow/cursors/4498f0e0c1937ffe01fd06f973665830
+share/icons/Oxygen_Yellow/cursors/5c6cd98b3f3ebcb1f9c7f1c204630408
+share/icons/Oxygen_Yellow/cursors/6407b0e94181790501fd1e167b474872
+share/icons/Oxygen_Yellow/cursors/640fb0e74195791501fd1ed57b41487f
+share/icons/Oxygen_Yellow/cursors/9081237383d90e509aa00f00170e968f
+share/icons/Oxygen_Yellow/cursors/9d800788f1b08800ae810202380a0822
+share/icons/Oxygen_Yellow/cursors/X_cursor
+share/icons/Oxygen_Yellow/cursors/a2a266d0498c3104214a47bd64ab0fc8
+share/icons/Oxygen_Yellow/cursors/alias
+share/icons/Oxygen_Yellow/cursors/all-scroll
+share/icons/Oxygen_Yellow/cursors/b66166c04f8c3109214a4fbd64a50fc8
+share/icons/Oxygen_Yellow/cursors/circle
+share/icons/Oxygen_Yellow/cursors/closedhand
+share/icons/Oxygen_Yellow/cursors/col-resize
+share/icons/Oxygen_Yellow/cursors/color-picker
+share/icons/Oxygen_Yellow/cursors/copy
+share/icons/Oxygen_Yellow/cursors/cross
+share/icons/Oxygen_Yellow/cursors/crossed_circle
+share/icons/Oxygen_Yellow/cursors/d9ce0ab605698f320427677b458ad60b
+share/icons/Oxygen_Yellow/cursors/dnd-copy
+share/icons/Oxygen_Yellow/cursors/dnd-link
+share/icons/Oxygen_Yellow/cursors/dnd-move
+share/icons/Oxygen_Yellow/cursors/dnd-no-drop
+share/icons/Oxygen_Yellow/cursors/dnd-none
+share/icons/Oxygen_Yellow/cursors/e-resize
+share/icons/Oxygen_Yellow/cursors/e29285e634086352946a0e7090d73106
+share/icons/Oxygen_Yellow/cursors/fcf21c00b30f7e3f83fe0dfd12e71cff
+share/icons/Oxygen_Yellow/cursors/fleur
+share/icons/Oxygen_Yellow/cursors/forbidden
+share/icons/Oxygen_Yellow/cursors/half-busy
+share/icons/Oxygen_Yellow/cursors/hand1
+share/icons/Oxygen_Yellow/cursors/hand2
+share/icons/Oxygen_Yellow/cursors/help
+share/icons/Oxygen_Yellow/cursors/ibeam
+share/icons/Oxygen_Yellow/cursors/left_ptr
+share/icons/Oxygen_Yellow/cursors/left_ptr_watch
+share/icons/Oxygen_Yellow/cursors/link
+share/icons/Oxygen_Yellow/cursors/move
+share/icons/Oxygen_Yellow/cursors/n-resize
+share/icons/Oxygen_Yellow/cursors/not-allowed
+share/icons/Oxygen_Yellow/cursors/openhand
+share/icons/Oxygen_Yellow/cursors/pencil
+share/icons/Oxygen_Yellow/cursors/pirate
+share/icons/Oxygen_Yellow/cursors/plus
+share/icons/Oxygen_Yellow/cursors/pointer
+share/icons/Oxygen_Yellow/cursors/pointing_hand
+share/icons/Oxygen_Yellow/cursors/progress
+share/icons/Oxygen_Yellow/cursors/question_arrow
+share/icons/Oxygen_Yellow/cursors/row-resize
+share/icons/Oxygen_Yellow/cursors/s-resize
+share/icons/Oxygen_Yellow/cursors/sb_h_double_arrow
+share/icons/Oxygen_Yellow/cursors/sb_v_double_arrow
+share/icons/Oxygen_Yellow/cursors/size_all
+share/icons/Oxygen_Yellow/cursors/size_bdiag
+share/icons/Oxygen_Yellow/cursors/size_fdiag
+share/icons/Oxygen_Yellow/cursors/size_hor
+share/icons/Oxygen_Yellow/cursors/size_ver
+share/icons/Oxygen_Yellow/cursors/split_h
+share/icons/Oxygen_Yellow/cursors/split_v
+share/icons/Oxygen_Yellow/cursors/text
+share/icons/Oxygen_Yellow/cursors/up_arrow
+share/icons/Oxygen_Yellow/cursors/v_double_arrow
+share/icons/Oxygen_Yellow/cursors/w-resize
+share/icons/Oxygen_Yellow/cursors/wait
+share/icons/Oxygen_Yellow/cursors/watch
+share/icons/Oxygen_Yellow/cursors/whats_this
+share/icons/Oxygen_Yellow/cursors/xterm
+share/icons/Oxygen_Yellow/index.theme
+share/icons/Oxygen_Zion/cursors/00000000000000020006000e7e9ffc3f
+share/icons/Oxygen_Zion/cursors/00008160000006810000408080010102
+share/icons/Oxygen_Zion/cursors/03b6e0fcb3499374a867c041f52298f0
+share/icons/Oxygen_Zion/cursors/08e8e1c95fe2fc01f976f1e063a24ccd
+share/icons/Oxygen_Zion/cursors/1081e37283d90000800003c07f3ef6bf
+share/icons/Oxygen_Zion/cursors/3085a0e285430894940527032f8b26df
+share/icons/Oxygen_Zion/cursors/3ecb610c1bf2410f44200f48c40d3599
+share/icons/Oxygen_Zion/cursors/4498f0e0c1937ffe01fd06f973665830
+share/icons/Oxygen_Zion/cursors/5c6cd98b3f3ebcb1f9c7f1c204630408
+share/icons/Oxygen_Zion/cursors/6407b0e94181790501fd1e167b474872
+share/icons/Oxygen_Zion/cursors/640fb0e74195791501fd1ed57b41487f
+share/icons/Oxygen_Zion/cursors/9081237383d90e509aa00f00170e968f
+share/icons/Oxygen_Zion/cursors/9d800788f1b08800ae810202380a0822
+share/icons/Oxygen_Zion/cursors/X_cursor
+share/icons/Oxygen_Zion/cursors/a2a266d0498c3104214a47bd64ab0fc8
+share/icons/Oxygen_Zion/cursors/alias
+share/icons/Oxygen_Zion/cursors/all-scroll
+share/icons/Oxygen_Zion/cursors/b66166c04f8c3109214a4fbd64a50fc8
+share/icons/Oxygen_Zion/cursors/circle
+share/icons/Oxygen_Zion/cursors/closedhand
+share/icons/Oxygen_Zion/cursors/col-resize
+share/icons/Oxygen_Zion/cursors/color-picker
+share/icons/Oxygen_Zion/cursors/copy
+share/icons/Oxygen_Zion/cursors/cross
+share/icons/Oxygen_Zion/cursors/crossed_circle
+share/icons/Oxygen_Zion/cursors/d9ce0ab605698f320427677b458ad60b
+share/icons/Oxygen_Zion/cursors/dnd-copy
+share/icons/Oxygen_Zion/cursors/dnd-link
+share/icons/Oxygen_Zion/cursors/dnd-move
+share/icons/Oxygen_Zion/cursors/dnd-no-drop
+share/icons/Oxygen_Zion/cursors/dnd-none
+share/icons/Oxygen_Zion/cursors/e-resize
+share/icons/Oxygen_Zion/cursors/e29285e634086352946a0e7090d73106
+share/icons/Oxygen_Zion/cursors/fcf21c00b30f7e3f83fe0dfd12e71cff
+share/icons/Oxygen_Zion/cursors/fleur
+share/icons/Oxygen_Zion/cursors/forbidden
+share/icons/Oxygen_Zion/cursors/half-busy
+share/icons/Oxygen_Zion/cursors/hand1
+share/icons/Oxygen_Zion/cursors/hand2
+share/icons/Oxygen_Zion/cursors/help
+share/icons/Oxygen_Zion/cursors/ibeam
+share/icons/Oxygen_Zion/cursors/left_ptr
+share/icons/Oxygen_Zion/cursors/left_ptr_watch
+share/icons/Oxygen_Zion/cursors/link
+share/icons/Oxygen_Zion/cursors/move
+share/icons/Oxygen_Zion/cursors/n-resize
+share/icons/Oxygen_Zion/cursors/not-allowed
+share/icons/Oxygen_Zion/cursors/openhand
+share/icons/Oxygen_Zion/cursors/pencil
+share/icons/Oxygen_Zion/cursors/pirate
+share/icons/Oxygen_Zion/cursors/plus
+share/icons/Oxygen_Zion/cursors/pointer
+share/icons/Oxygen_Zion/cursors/pointing_hand
+share/icons/Oxygen_Zion/cursors/progress
+share/icons/Oxygen_Zion/cursors/question_arrow
+share/icons/Oxygen_Zion/cursors/row-resize
+share/icons/Oxygen_Zion/cursors/s-resize
+share/icons/Oxygen_Zion/cursors/sb_h_double_arrow
+share/icons/Oxygen_Zion/cursors/sb_v_double_arrow
+share/icons/Oxygen_Zion/cursors/size_all
+share/icons/Oxygen_Zion/cursors/size_bdiag
+share/icons/Oxygen_Zion/cursors/size_fdiag
+share/icons/Oxygen_Zion/cursors/size_hor
+share/icons/Oxygen_Zion/cursors/size_ver
+share/icons/Oxygen_Zion/cursors/split_h
+share/icons/Oxygen_Zion/cursors/split_v
+share/icons/Oxygen_Zion/cursors/text
+share/icons/Oxygen_Zion/cursors/up_arrow
+share/icons/Oxygen_Zion/cursors/v_double_arrow
+share/icons/Oxygen_Zion/cursors/w-resize
+share/icons/Oxygen_Zion/cursors/wait
+share/icons/Oxygen_Zion/cursors/watch
+share/icons/Oxygen_Zion/cursors/whats_this
+share/icons/Oxygen_Zion/cursors/xterm
+share/icons/Oxygen_Zion/index.theme
+share/icons/hicolor/128x128/apps/ksplash.png
+share/icons/hicolor/16x16/apps/kmenuedit.png
+share/icons/hicolor/16x16/apps/ksplash.png
+share/icons/hicolor/22x22/apps/kmenuedit.png
+share/icons/hicolor/22x22/apps/ksplash.png
+share/icons/hicolor/32x32/apps/kmenuedit.png
+share/icons/hicolor/32x32/apps/ksplash.png
+share/icons/hicolor/48x48/apps/kmenuedit.png
+share/icons/hicolor/48x48/apps/ksplash.png
+share/icons/hicolor/64x64/apps/ksplash.png
+share/icons/oxygen/128x128/apps/kcmkwm.png
+share/icons/oxygen/128x128/mimetypes/fonts-package.png
+share/icons/oxygen/16x16/apps/computer.png
+share/icons/oxygen/16x16/apps/daemon.png
+share/icons/oxygen/16x16/apps/kcmkwm.png
+share/icons/oxygen/16x16/apps/kdeapp.png
+share/icons/oxygen/16x16/apps/kernel.png
+share/icons/oxygen/16x16/apps/kfontview.png
+share/icons/oxygen/16x16/apps/ksysguardd.png
+share/icons/oxygen/16x16/apps/kwin.png
+share/icons/oxygen/16x16/apps/running.png
+share/icons/oxygen/16x16/apps/shell.png
+share/icons/oxygen/16x16/apps/unknownapp.png
+share/icons/oxygen/16x16/apps/waiting.png
+share/icons/oxygen/16x16/mimetypes/fonts-package.png
+share/icons/oxygen/22x22/apps/kcmkwm.png
+share/icons/oxygen/22x22/apps/kfontview.png
+share/icons/oxygen/22x22/mimetypes/fonts-package.png
+share/icons/oxygen/32x32/apps/kcmkwm.png
+share/icons/oxygen/32x32/apps/kfontview.png
+share/icons/oxygen/32x32/apps/kwin.png
+share/icons/oxygen/32x32/mimetypes/fonts-package.png
+share/icons/oxygen/48x48/apps/kcmkwm.png
+share/icons/oxygen/48x48/apps/kfontview.png
+share/icons/oxygen/48x48/apps/kwin.png
+share/icons/oxygen/48x48/mimetypes/fonts-package.png
+share/icons/oxygen/64x64/apps/kcmkwm.png
+share/icons/oxygen/64x64/apps/kfontview.png
+share/icons/oxygen/64x64/mimetypes/fonts-package.png
+share/icons/oxygen/scalable/apps/kcmkwm.svgz
+share/icons/oxygen/scalable/apps/kfontview.svgz
+share/icons/oxygen/scalable/apps/kwin.svgz
+share/icons/oxygen/scalable/apps/preferences-desktop-font-installer.svgz
+share/icons/oxygen/scalable/mimetypes/fonts-package.svgz
+share/kde4/services/ScreenSavers/kblank.desktop
+share/kde4/services/ScreenSavers/krandom.desktop
+share/kde4/services/ServiceMenus/installfont.desktop
+share/kde4/services/autostart.desktop
+share/kde4/services/bell.desktop
+share/kde4/services/clock.desktop
+share/kde4/services/colors.desktop
+share/kde4/services/cursortheme.desktop
+share/kde4/services/desktop.desktop
+share/kde4/services/desktoppath.desktop
+share/kde4/services/desktoptheme.desktop
+share/kde4/services/deviceinfocategory.desktop
+share/kde4/services/devinfo.desktop
+share/kde4/services/display.desktop
+share/kde4/services/dma.desktop
+share/kde4/services/fontinst.desktop
+share/kde4/services/fonts.desktop
+share/kde4/services/fonts.protocol
+share/kde4/services/fontthumbnail.desktop
+share/kde4/services/graphicalinfocategory.desktop
+share/kde4/services/interrupts.desktop
+share/kde4/services/ion-bbcukmet.desktop
+share/kde4/services/ion-debianweather.desktop
+share/kde4/services/ion-envcan.desktop
+share/kde4/services/ion-noaa.desktop
+share/kde4/services/ion-wettercom.desktop
+share/kde4/services/ioports.desktop
+share/kde4/services/kaccess.desktop
+share/kde4/services/kcm_infosummary.desktop
+share/kde4/services/kcm_keyboard.desktop
+share/kde4/services/kcm_memory.desktop
+share/kde4/services/kcm_pci.desktop
+share/kde4/services/kcmaccess.desktop
+share/kde4/services/kcmlaunch.desktop
+share/kde4/services/kcmsmserver.desktop
+share/kde4/services/kcmusb.desktop
+share/kde4/services/kded/appmenu.desktop
+share/kde4/services/kded/freespacenotifier.desktop
+share/kde4/services/kded/kephal.desktop
+share/kde4/services/kded/keyboard.desktop
+share/kde4/services/kded/khotkeys.desktop
+share/kde4/services/kded/ktouchpadenabler.desktop
+share/kde4/services/kded/kwrited.desktop
+share/kde4/services/kded/powerdevil.desktop
+share/kde4/services/kded/randrmonitor.desktop
+share/kde4/services/kded/statusnotifierwatcher.desktop
+share/kde4/services/kdm.desktop
+share/kde4/services/keys.desktop
+share/kde4/services/kfontviewpart.desktop
+share/kde4/services/khotkeys.desktop
+share/kde4/services/ksplashthememgr.desktop
+share/kde4/services/kwin-script-desktopchangeosd.desktop
+share/kde4/services/kwin-script-synchronizeskipswitcher.desktop
+share/kde4/services/kwin-script-videowall.desktop
+share/kde4/services/kwin/blur.desktop
+share/kde4/services/kwin/blur_config.desktop
+share/kde4/services/kwin/coverswitch.desktop
+share/kde4/services/kwin/coverswitch_config.desktop
+share/kde4/services/kwin/cube.desktop
+share/kde4/services/kwin/cube_config.desktop
+share/kde4/services/kwin/cubeslide.desktop
+share/kde4/services/kwin/cubeslide_config.desktop
+share/kde4/services/kwin/dashboard.desktop
+share/kde4/services/kwin/dashboard_config.desktop
+share/kde4/services/kwin/desktopgrid.desktop
+share/kde4/services/kwin/desktopgrid_config.desktop
+share/kde4/services/kwin/diminactive.desktop
+share/kde4/services/kwin/diminactive_config.desktop
+share/kde4/services/kwin/dimscreen.desktop
+share/kde4/services/kwin/fallapart.desktop
+share/kde4/services/kwin/flipswitch.desktop
+share/kde4/services/kwin/flipswitch_config.desktop
+share/kde4/services/kwin/glide.desktop
+share/kde4/services/kwin/glide_config.desktop
+share/kde4/services/kwin/highlightwindow.desktop
+share/kde4/services/kwin/invert.desktop
+share/kde4/services/kwin/invert_config.desktop
+share/kde4/services/kwin/kscreen.desktop
+share/kde4/services/kwin/kwin4_decoration_qml_plastik.desktop
+share/kde4/services/kwin/kwin4_desktop_switcher_informative.desktop
+share/kde4/services/kwin/kwin4_desktop_switcher_previews.desktop
+share/kde4/services/kwin/kwin4_effect_dialogparent.desktop
+share/kde4/services/kwin/kwin4_effect_fade.desktop
+share/kde4/services/kwin/kwin4_effect_fadedesktop.desktop
+share/kde4/services/kwin/kwin4_effect_login.desktop
+share/kde4/services/kwin/kwin4_effect_maximize.desktop
+share/kde4/services/kwin/kwin4_effect_scalein.desktop
+share/kde4/services/kwin/kwin4_effect_translucency.desktop
+share/kde4/services/kwin/kwin4_window_switcher_big_icons.desktop
+share/kde4/services/kwin/kwin4_window_switcher_compact.desktop
+share/kde4/services/kwin/kwin4_window_switcher_informative.desktop
+share/kde4/services/kwin/kwin4_window_switcher_present_windows.desktop
+share/kde4/services/kwin/kwin4_window_switcher_small_icons.desktop
+share/kde4/services/kwin/kwin4_window_switcher_text.desktop
+share/kde4/services/kwin/kwin4_window_switcher_thumbnails.desktop
+share/kde4/services/kwin/kwin4_window_switcher_window_strip.desktop
+share/kde4/services/kwin/logout.desktop
+share/kde4/services/kwin/lookingglass.desktop
+share/kde4/services/kwin/lookingglass_config.desktop
+share/kde4/services/kwin/magiclamp.desktop
+share/kde4/services/kwin/magiclamp_config.desktop
+share/kde4/services/kwin/magnifier.desktop
+share/kde4/services/kwin/magnifier_config.desktop
+share/kde4/services/kwin/minimizeanimation.desktop
+share/kde4/services/kwin/mouseclick.desktop
+share/kde4/services/kwin/mouseclick_config.desktop
+share/kde4/services/kwin/mousemark.desktop
+share/kde4/services/kwin/mousemark_config.desktop
+share/kde4/services/kwin/presentwindows.desktop
+share/kde4/services/kwin/presentwindows_config.desktop
+share/kde4/services/kwin/resize.desktop
+share/kde4/services/kwin/resize_config.desktop
+share/kde4/services/kwin/screenedgeeffect.desktop
+share/kde4/services/kwin/screenshot.desktop
+share/kde4/services/kwin/sheet.desktop
+share/kde4/services/kwin/showfps.desktop
+share/kde4/services/kwin/showfps_config.desktop
+share/kde4/services/kwin/showpaint.desktop
+share/kde4/services/kwin/slide.desktop
+share/kde4/services/kwin/slideback.desktop
+share/kde4/services/kwin/slidingpopups.desktop
+share/kde4/services/kwin/snaphelper.desktop
+share/kde4/services/kwin/startupfeedback.desktop
+share/kde4/services/kwin/taskbarthumbnail.desktop
+share/kde4/services/kwin/thumbnailaside.desktop
+share/kde4/services/kwin/thumbnailaside_config.desktop
+share/kde4/services/kwin/trackmouse.desktop
+share/kde4/services/kwin/trackmouse_config.desktop
+share/kde4/services/kwin/windowgeometry.desktop
+share/kde4/services/kwin/windowgeometry_config.desktop
+share/kde4/services/kwin/wobblywindows.desktop
+share/kde4/services/kwin/wobblywindows_config.desktop
+share/kde4/services/kwin/zoom.desktop
+share/kde4/services/kwin/zoom_config.desktop
+share/kde4/services/kwinactions.desktop
+share/kde4/services/kwinadvanced.desktop
+share/kde4/services/kwincompositing.desktop
+share/kde4/services/kwindecoration.desktop
+share/kde4/services/kwinfocus.desktop
+share/kde4/services/kwinmoving.desktop
+share/kde4/services/kwinoptions.desktop
+share/kde4/services/kwinrules.desktop
+share/kde4/services/kwinscreenedges.desktop
+share/kde4/services/kwinscripts.desktop
+share/kde4/services/kwintabbox.desktop
+share/kde4/services/lostfoundcategory.desktop
+share/kde4/services/mouse.desktop
+share/kde4/services/networkinfocategory.desktop
+share/kde4/services/nic.desktop
+share/kde4/services/opengl.desktop
+share/kde4/services/plasma-animator-default.desktop
+share/kde4/services/plasma-applet-activitybar.desktop
+share/kde4/services/plasma-applet-analogclock.desktop
+share/kde4/services/plasma-applet-batterymonitor.desktop
+share/kde4/services/plasma-applet-calendar.desktop
+share/kde4/services/plasma-applet-currentappcontrol.desktop
+share/kde4/services/plasma-applet-devicenotifier.desktop
+share/kde4/services/plasma-applet-digitalclock.desktop
+share/kde4/services/plasma-applet-icon.desktop
+share/kde4/services/plasma-applet-launcher.desktop
+share/kde4/services/plasma-applet-lockout.desktop
+share/kde4/services/plasma-applet-org.kde.notifications.desktop
+share/kde4/services/plasma-applet-org.kde.showActivityManager.desktop
+share/kde4/services/plasma-applet-panelspacer-internal.desktop
+share/kde4/services/plasma-applet-quicklaunch.desktop
+share/kde4/services/plasma-applet-searchbox.desktop
+share/kde4/services/plasma-applet-simplelauncher.desktop
+share/kde4/services/plasma-applet-sm_cpu.desktop
+share/kde4/services/plasma-applet-sm_hdd.desktop
+share/kde4/services/plasma-applet-sm_hdd_activity.desktop
+share/kde4/services/plasma-applet-sm_hwinfo.desktop
+share/kde4/services/plasma-applet-sm_net.desktop
+share/kde4/services/plasma-applet-sm_ram.desktop
+share/kde4/services/plasma-applet-sm_temperature.desktop
+share/kde4/services/plasma-applet-system-monitor.desktop
+share/kde4/services/plasma-applet-systemtray.desktop
+share/kde4/services/plasma-applet-trash.desktop
+share/kde4/services/plasma-applet-webbrowser.desktop
+share/kde4/services/plasma-applet-windowlist.desktop
+share/kde4/services/plasma-containment-desktop.desktop
+share/kde4/services/plasma-containment-desktopdashboard.desktop
+share/kde4/services/plasma-containment-netpanel.desktop
+share/kde4/services/plasma-containment-panel.desktop
+share/kde4/services/plasma-containment-sal.desktop
+share/kde4/services/plasma-containment-saverdesktop.desktop
+share/kde4/services/plasma-containmentactions-applauncher.desktop
+share/kde4/services/plasma-containmentactions-contextmenu.desktop
+share/kde4/services/plasma-containmentactions-minimalcontextmenu.desktop
+share/kde4/services/plasma-containmentactions-paste.desktop
+share/kde4/services/plasma-containmentactions-switchactivity.desktop
+share/kde4/services/plasma-containmentactions-switchdesktop.desktop
+share/kde4/services/plasma-containmentactions-switchwindow.desktop
+share/kde4/services/plasma-dataengine-applicationjobs.desktop
+share/kde4/services/plasma-dataengine-apps.desktop
+share/kde4/services/plasma-dataengine-calendar.desktop
+share/kde4/services/plasma-dataengine-devicenotifications.desktop
+share/kde4/services/plasma-dataengine-dict.desktop
+share/kde4/services/plasma-dataengine-executable.desktop
+share/kde4/services/plasma-dataengine-favicons.desktop
+share/kde4/services/plasma-dataengine-filebrowser.desktop
+share/kde4/services/plasma-dataengine-geolocation.desktop
+share/kde4/services/plasma-dataengine-hotplug.desktop
+share/kde4/services/plasma-dataengine-keystate.desktop
+share/kde4/services/plasma-dataengine-mouse.desktop
+share/kde4/services/plasma-dataengine-mpris2.desktop
+share/kde4/services/plasma-dataengine-notifications.desktop
+share/kde4/services/plasma-dataengine-nowplaying.desktop
+share/kde4/services/plasma-dataengine-places.desktop
+share/kde4/services/plasma-dataengine-powermanagement.desktop
+share/kde4/services/plasma-dataengine-rss.desktop
+share/kde4/services/plasma-dataengine-share-addon-im9.desktop
+share/kde4/services/plasma-dataengine-share-addon-imgsusepasteorg.desktop
+share/kde4/services/plasma-dataengine-share-addon-imgur.desktop
+share/kde4/services/plasma-dataengine-share-addon-kde.desktop
+share/kde4/services/plasma-dataengine-share-addon-pastebincom.desktop
+share/kde4/services/plasma-dataengine-share-addon-pasteopensuseorg.desktop
+share/kde4/services/plasma-dataengine-share-addon-pasteubuntucom.desktop
+share/kde4/services/plasma-dataengine-share-addon-privatepastecom.desktop
+share/kde4/services/plasma-dataengine-share-addon-simplestimagehosting.desktop
+share/kde4/services/plasma-dataengine-share-addon-wklej.desktop
+share/kde4/services/plasma-dataengine-share-addon-wstaw.desktop
+share/kde4/services/plasma-dataengine-share.desktop
+share/kde4/services/plasma-dataengine-soliddevice.desktop
+share/kde4/services/plasma-dataengine-systemmonitor.desktop
+share/kde4/services/plasma-dataengine-tasks.desktop
+share/kde4/services/plasma-dataengine-time.desktop
+share/kde4/services/plasma-dataengine-weather.desktop
+share/kde4/services/plasma-engine-activities.desktop
+share/kde4/services/plasma-engine-akonadi.desktop
+share/kde4/services/plasma-engine-metadata.desktop
+share/kde4/services/plasma-engine-searchlaunch.desktop
+%%GPS%%share/kde4/services/plasma-geolocation-gps.desktop
+share/kde4/services/plasma-geolocation-ip.desktop
+share/kde4/services/plasma-layout-org.kde.plasma-desktop.SaL.desktop
+share/kde4/services/plasma-layout-org.kde.plasma-desktop.defaultPanel.desktop
+share/kde4/services/plasma-layout-org.kde.plasma-desktop.desktopIcons.desktop
+share/kde4/services/plasma-layout-org.kde.plasma-desktop.findWidgets.desktop
+share/kde4/services/plasma-layout-org.kde.plasma-desktop.photoActivity.desktop
+share/kde4/services/plasma-layout-org.kde.plasma-netbook.defaultPage.desktop
+share/kde4/services/plasma-layout-org.kde.plasma-netbook.defaultPanel.desktop
+share/kde4/services/plasma-layout-org.kde.plasma-netbook.defaultSal.desktop
+share/kde4/services/plasma-packagestructure-dashboard.desktop
+share/kde4/services/plasma-packagestructure-share.desktop
+share/kde4/services/plasma-packagestructure-web.desktop
+share/kde4/services/plasma-pager-default.desktop
+share/kde4/services/plasma-runner-activityrunner.desktop
+share/kde4/services/plasma-runner-bookmarks.desktop
+share/kde4/services/plasma-runner-calculator.desktop
+share/kde4/services/plasma-runner-kill.desktop
+share/kde4/services/plasma-runner-kill_config.desktop
+share/kde4/services/plasma-runner-locations.desktop
+share/kde4/services/plasma-runner-nepomuksearch.desktop
+share/kde4/services/plasma-runner-places.desktop
+share/kde4/services/plasma-runner-plasma-desktop.desktop
+share/kde4/services/plasma-runner-powerdevil.desktop
+share/kde4/services/plasma-runner-services.desktop
+share/kde4/services/plasma-runner-sessions.desktop
+share/kde4/services/plasma-runner-shell.desktop
+share/kde4/services/plasma-runner-solid.desktop
+share/kde4/services/plasma-runner-webshortcuts.desktop
+share/kde4/services/plasma-runner-windowedwidgets.desktop
+share/kde4/services/plasma-runner-windows.desktop
+share/kde4/services/plasma-sal-bookmarks.desktop
+share/kde4/services/plasma-sal-contacts.desktop
+share/kde4/services/plasma-sal-development.desktop
+share/kde4/services/plasma-sal-education.desktop
+share/kde4/services/plasma-sal-games.desktop
+share/kde4/services/plasma-sal-graphics.desktop
+share/kde4/services/plasma-sal-internet.desktop
+share/kde4/services/plasma-sal-multimedia.desktop
+share/kde4/services/plasma-sal-office.desktop
+share/kde4/services/plasma-sal-system.desktop
+share/kde4/services/plasma-sal-utility.desktop
+share/kde4/services/plasma-scriptengine-applet-dashboard.desktop
+share/kde4/services/plasma-scriptengine-applet-web.desktop
+share/kde4/services/plasma-tasks-default.desktop
+share/kde4/services/plasma-toolbox-desktoptoolbox.desktop
+share/kde4/services/plasma-toolbox-nettoolbox.desktop
+share/kde4/services/plasma-toolbox-paneltoolbox.desktop
+share/kde4/services/plasma-wallpaper-color.desktop
+share/kde4/services/plasma-wallpaper-image.desktop
+share/kde4/services/plasma_applet_keyboard.desktop
+share/kde4/services/plasma_engine_statusnotifieritem.desktop
+share/kde4/services/powerdevilactivitiesconfig.desktop
+share/kde4/services/powerdevilbrightnesscontrolaction.desktop
+share/kde4/services/powerdevildimdisplayaction.desktop
+share/kde4/services/powerdevildpmsaction.desktop
+share/kde4/services/powerdevilglobalconfig.desktop
+share/kde4/services/powerdevilhandlebuttoneventsaction.desktop
+share/kde4/services/powerdevilkeyboardbrightnesscontrolaction.desktop
+share/kde4/services/powerdevilprofilesconfig.desktop
+share/kde4/services/powerdevilrunscriptaction.desktop
+share/kde4/services/powerdevilsuspendsessionaction.desktop
+share/kde4/services/randr.desktop
+share/kde4/services/recentdocuments.desktop
+share/kde4/services/screensaver.desktop
+share/kde4/services/scsi.desktop
+share/kde4/services/settings-accessibility.desktop
+share/kde4/services/settings-account-details.desktop
+share/kde4/services/settings-application-and-system-notifications.desktop
+share/kde4/services/settings-application-appearance-and-behavior.desktop
+share/kde4/services/settings-application-appearance.desktop
+share/kde4/services/settings-audio-and-video.desktop
+share/kde4/services/settings-bluetooth.desktop
+share/kde4/services/settings-classic-view.desktop
+share/kde4/services/settings-desktop-appearance.desktop
+share/kde4/services/settings-display.desktop
+share/kde4/services/settings-hardware.desktop
+share/kde4/services/settings-icon-view.desktop
+share/kde4/services/settings-input-devices.desktop
+share/kde4/services/settings-locale.desktop
+share/kde4/services/settings-lost-and-found.desktop
+share/kde4/services/settings-network-and-connectivity.desktop
+share/kde4/services/settings-network-settings.desktop
+share/kde4/services/settings-permissions.desktop
+share/kde4/services/settings-personal-information.desktop
+share/kde4/services/settings-power-management.desktop
+share/kde4/services/settings-removable-devices.desktop
+share/kde4/services/settings-sharing.desktop
+share/kde4/services/settings-shortcuts-and-gestures.desktop
+share/kde4/services/settings-startup-and-shutdown.desktop
+share/kde4/services/settings-system-administration.desktop
+share/kde4/services/settings-window-behaviour.desktop
+share/kde4/services/settings-workspace-appearance-and-behavior.desktop
+share/kde4/services/settings-workspace-behavior.desktop
+share/kde4/services/smbstatus.desktop
+share/kde4/services/solid-actions.desktop
+share/kde4/services/standard_actions.desktop
+share/kde4/services/style.desktop
+share/kde4/services/workspaceoptions.desktop
+share/kde4/services/xserver.desktop
+share/kde4/servicetypes/kinfocentercategory.desktop
+share/kde4/servicetypes/kwindecoration.desktop
+share/kde4/servicetypes/kwindesktopswitcher.desktop
+share/kde4/servicetypes/kwineffect.desktop
+share/kde4/servicetypes/kwinscript.desktop
+share/kde4/servicetypes/kwinwindowswitcher.desktop
+share/kde4/servicetypes/plasma-geolocationprovider.desktop
+share/kde4/servicetypes/plasma-layout-template.desktop
+share/kde4/servicetypes/plasma-sal-menu.desktop
+share/kde4/servicetypes/plasma_shareprovider.desktop
+share/kde4/servicetypes/powerdevilaction.desktop
+share/kde4/servicetypes/screensaver.desktop
+share/kde4/servicetypes/solid-device-type.desktop
+share/kde4/servicetypes/systemsettingscategory.desktop
+share/kde4/servicetypes/systemsettingsexternalapp.desktop
+share/kde4/servicetypes/systemsettingsview.desktop
+share/polkit-1/actions/org.kde.fontinst.policy
+share/polkit-1/actions/org.kde.kcontrol.kcmclock.policy
+share/polkit-1/actions/org.kde.kcontrol.kcmkdm.policy
+share/polkit-1/actions/org.kde.ksysguard.processlisthelper.policy
+share/sounds/pop.wav
+share/wallpapers/stripes.png
+share/wallpapers/stripes.png.desktop
+share/xsessions/kde4.desktop