summary refs log tree commit diff
path: root/pkgs/desktops/kde-5
diff options
context:
space:
mode:
authorRobin Gloster <mail@glob.in>2016-07-31 20:51:34 +0000
committerRobin Gloster <mail@glob.in>2016-07-31 20:51:34 +0000
commit63c7b4f9a7844f0bc84d008b810375eb0fba6b2f (patch)
treee351ecd702d87ab1c4fd03246383162ec19d6de2 /pkgs/desktops/kde-5
parent43ba8d295f414ab985bd3fc5d5125421bd8bd0ad (diff)
parenta629cd3f02c2ad071e58d5898c5f48fb0336a705 (diff)
downloadnixlib-63c7b4f9a7844f0bc84d008b810375eb0fba6b2f.tar
nixlib-63c7b4f9a7844f0bc84d008b810375eb0fba6b2f.tar.gz
nixlib-63c7b4f9a7844f0bc84d008b810375eb0fba6b2f.tar.bz2
nixlib-63c7b4f9a7844f0bc84d008b810375eb0fba6b2f.tar.lz
nixlib-63c7b4f9a7844f0bc84d008b810375eb0fba6b2f.tar.xz
nixlib-63c7b4f9a7844f0bc84d008b810375eb0fba6b2f.tar.zst
nixlib-63c7b4f9a7844f0bc84d008b810375eb0fba6b2f.zip
Merge remote-tracking branch 'upstream/master' into hardened-stdenv
Diffstat (limited to 'pkgs/desktops/kde-5')
-rw-r--r--pkgs/desktops/kde-5/applications/ark/default.nix53
-rw-r--r--pkgs/desktops/kde-5/applications/baloo-widgets.nix22
-rw-r--r--pkgs/desktops/kde-5/applications/default.nix8
-rw-r--r--pkgs/desktops/kde-5/applications/dolphin-plugins.nix20
-rw-r--r--pkgs/desktops/kde-5/applications/dolphin.nix75
-rw-r--r--pkgs/desktops/kde-5/applications/ffmpegthumbs.nix18
-rw-r--r--pkgs/desktops/kde-5/applications/filelight.nix47
-rw-r--r--pkgs/desktops/kde-5/applications/gpgmepp.nix17
-rw-r--r--pkgs/desktops/kde-5/applications/gwenview.nix53
-rw-r--r--pkgs/desktops/kde-5/applications/kate.nix45
-rw-r--r--pkgs/desktops/kde-5/applications/kcalc.nix48
-rw-r--r--pkgs/desktops/kde-5/applications/kcolorchooser.nix28
-rw-r--r--pkgs/desktops/kde-5/applications/kde-app.nix6
-rw-r--r--pkgs/desktops/kde-5/applications/kde-locale-5.nix4
-rw-r--r--pkgs/desktops/kde-5/applications/kdegraphics-thumbnailers.nix17
-rw-r--r--pkgs/desktops/kde-5/applications/kdelibs/default.nix20
-rw-r--r--pkgs/desktops/kde-5/applications/kdenetwork-filesharing.nix22
-rw-r--r--pkgs/desktops/kde-5/applications/kgpg.nix31
-rw-r--r--pkgs/desktops/kde-5/applications/khelpcenter.nix35
-rw-r--r--pkgs/desktops/kde-5/applications/kio-extras.nix34
-rw-r--r--pkgs/desktops/kde-5/applications/kompare.nix48
-rw-r--r--pkgs/desktops/kde-5/applications/konsole.nix69
-rw-r--r--pkgs/desktops/kde-5/applications/libkdcraw.nix14
-rw-r--r--pkgs/desktops/kde-5/applications/libkexiv2.nix14
-rw-r--r--pkgs/desktops/kde-5/applications/libkipi.nix17
-rw-r--r--pkgs/desktops/kde-5/applications/libkomparediff2.nix22
-rw-r--r--pkgs/desktops/kde-5/applications/okular.nix40
-rw-r--r--pkgs/desktops/kde-5/applications/print-manager.nix26
-rw-r--r--pkgs/desktops/kde-5/applications/spectacle.nix51
-rw-r--r--pkgs/desktops/kde-5/frameworks/attica.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/baloo.nix16
-rw-r--r--pkgs/desktops/kde-5/frameworks/bluez-qt.nix17
-rw-r--r--pkgs/desktops/kde-5/frameworks/breeze-icons.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/default.nix119
-rw-r--r--pkgs/desktops/kde-5/frameworks/extra-cmake-modules/default.nix20
-rw-r--r--pkgs/desktops/kde-5/frameworks/extra-cmake-modules/nix-lib-path.patch37
-rw-r--r--pkgs/desktops/kde-5/frameworks/extra-cmake-modules/series1
-rw-r--r--pkgs/desktops/kde-5/frameworks/extra-cmake-modules/setup-hook.sh99
-rw-r--r--pkgs/desktops/kde-5/frameworks/frameworkintegration.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/kactivities-stats.nix9
-rw-r--r--pkgs/desktops/kde-5/frameworks/kactivities.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/kapidox.nix10
-rw-r--r--pkgs/desktops/kde-5/frameworks/karchive.nix9
-rw-r--r--pkgs/desktops/kde-5/frameworks/kauth/cmake-install-paths.patch17
-rw-r--r--pkgs/desktops/kde-5/frameworks/kauth/default.nix13
-rw-r--r--pkgs/desktops/kde-5/frameworks/kauth/series1
-rw-r--r--pkgs/desktops/kde-5/frameworks/kbookmarks.nix18
-rw-r--r--pkgs/desktops/kde-5/frameworks/kcmutils/0001-qdiriterator-follow-symlinks.patch25
-rw-r--r--pkgs/desktops/kde-5/frameworks/kcmutils/default.nix15
-rw-r--r--pkgs/desktops/kde-5/frameworks/kcodecs.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/kcompletion.nix12
-rw-r--r--pkgs/desktops/kde-5/frameworks/kconfig.nix9
-rw-r--r--pkgs/desktops/kde-5/frameworks/kconfigwidgets/0001-qdiriterator-follow-symlinks.patch25
-rw-r--r--pkgs/desktops/kde-5/frameworks/kconfigwidgets/default.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/kcoreaddons.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/kcrash.nix13
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdbusaddons.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdeclarative.nix15
-rw-r--r--pkgs/desktops/kde-5/frameworks/kded.nix17
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdelibs4support/default.nix31
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdelibs4support/nix-kde-include-dir.patch13
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdelibs4support/series1
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdelibs4support/setup-hook.sh1
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdesignerplugin.nix26
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdesu.nix10
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdnssd.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdoctools/default.nix16
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdoctools/kdoctools-no-find-docbook-xml.patch12
-rw-r--r--pkgs/desktops/kde-5/frameworks/kdoctools/setup-hook.sh5
-rw-r--r--pkgs/desktops/kde-5/frameworks/kemoticons.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/kfilemetadata/cmake-install-paths.patch13
-rw-r--r--pkgs/desktops/kde-5/frameworks/kfilemetadata/default.nix13
-rw-r--r--pkgs/desktops/kde-5/frameworks/kfilemetadata/series1
-rw-r--r--pkgs/desktops/kde-5/frameworks/kglobalaccel.nix18
-rw-r--r--pkgs/desktops/kde-5/frameworks/kguiaddons.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/khtml.nix16
-rw-r--r--pkgs/desktops/kde-5/frameworks/ki18n.nix15
-rw-r--r--pkgs/desktops/kde-5/frameworks/kiconthemes/default-theme-breeze.patch13
-rw-r--r--pkgs/desktops/kde-5/frameworks/kiconthemes/default.nix12
-rw-r--r--pkgs/desktops/kde-5/frameworks/kiconthemes/series1
-rw-r--r--pkgs/desktops/kde-5/frameworks/kidletime.nix12
-rw-r--r--pkgs/desktops/kde-5/frameworks/kimageformats.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/kinit/default.nix15
-rw-r--r--pkgs/desktops/kde-5/frameworks/kinit/kinit-libpath.patch34
-rw-r--r--pkgs/desktops/kde-5/frameworks/kinit/series2
-rw-r--r--pkgs/desktops/kde-5/frameworks/kinit/start_kdeinit-path.patch13
-rw-r--r--pkgs/desktops/kde-5/frameworks/kio/default.nix21
-rw-r--r--pkgs/desktops/kde-5/frameworks/kio/samba-search-path.patch28
-rw-r--r--pkgs/desktops/kde-5/frameworks/kio/series1
-rw-r--r--pkgs/desktops/kde-5/frameworks/kitemmodels.nix9
-rw-r--r--pkgs/desktops/kde-5/frameworks/kitemviews.nix9
-rw-r--r--pkgs/desktops/kde-5/frameworks/kjobwidgets.nix13
-rw-r--r--pkgs/desktops/kde-5/frameworks/kjs.nix10
-rw-r--r--pkgs/desktops/kde-5/frameworks/kjsembed.nix10
-rw-r--r--pkgs/desktops/kde-5/frameworks/kmediaplayer.nix12
-rw-r--r--pkgs/desktops/kde-5/frameworks/knewstuff.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/knotifications.nix16
-rw-r--r--pkgs/desktops/kde-5/frameworks/knotifyconfig.nix10
-rw-r--r--pkgs/desktops/kde-5/frameworks/kpackage/allow-external-paths.patch13
-rw-r--r--pkgs/desktops/kde-5/frameworks/kpackage/default.nix16
-rw-r--r--pkgs/desktops/kde-5/frameworks/kpackage/qdiriterator-follow-symlinks.patch26
-rw-r--r--pkgs/desktops/kde-5/frameworks/kpackage/series2
-rw-r--r--pkgs/desktops/kde-5/frameworks/kparts.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/kpeople.nix12
-rw-r--r--pkgs/desktops/kde-5/frameworks/kplotting.nix9
-rw-r--r--pkgs/desktops/kde-5/frameworks/kpty.nix8
-rw-r--r--pkgs/desktops/kde-5/frameworks/kross.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/krunner.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/kservice/default.nix12
-rw-r--r--pkgs/desktops/kde-5/frameworks/kservice/no-canonicalize-path.patch13
-rw-r--r--pkgs/desktops/kde-5/frameworks/kservice/qdiriterator-follow-symlinks.patch13
-rw-r--r--pkgs/desktops/kde-5/frameworks/kservice/series2
-rw-r--r--pkgs/desktops/kde-5/frameworks/ktexteditor/default.nix18
-rw-r--r--pkgs/desktops/kde-5/frameworks/ktexteditor/no-qcoreapplication.patch36
-rw-r--r--pkgs/desktops/kde-5/frameworks/ktexteditor/series1
-rw-r--r--pkgs/desktops/kde-5/frameworks/ktextwidgets.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/kunitconversion.nix8
-rw-r--r--pkgs/desktops/kde-5/frameworks/kwallet.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/kwayland.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/kwidgetsaddons.nix9
-rw-r--r--pkgs/desktops/kde-5/frameworks/kwindowsystem.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/kxmlgui.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/kxmlrpcclient.nix8
-rw-r--r--pkgs/desktops/kde-5/frameworks/modemmanager-qt.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/networkmanager-qt.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/oxygen-icons5.nix14
-rw-r--r--pkgs/desktops/kde-5/frameworks/plasma-framework.nix17
-rw-r--r--pkgs/desktops/kde-5/frameworks/solid.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/sonnet.nix11
-rw-r--r--pkgs/desktops/kde-5/frameworks/srcs.nix581
-rw-r--r--pkgs/desktops/kde-5/frameworks/threadweaver.nix9
-rw-r--r--pkgs/desktops/kde-5/plasma/bluedevil.nix16
-rw-r--r--pkgs/desktops/kde-5/plasma/breeze-gtk.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/breeze-qt4.nix39
-rw-r--r--pkgs/desktops/kde-5/plasma/breeze-qt5.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/default.nix15
-rw-r--r--pkgs/desktops/kde-5/plasma/kactivitymanagerd.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/kde-cli-tools.nix25
-rw-r--r--pkgs/desktops/kde-5/plasma/kde-gtk-config/default.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/kdecoration.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/kdeplasma-addons.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/kgamma5.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/khotkeys.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/kinfocenter.nix13
-rw-r--r--pkgs/desktops/kde-5/plasma/kmenuedit.nix13
-rw-r--r--pkgs/desktops/kde-5/plasma/kscreen.nix12
-rw-r--r--pkgs/desktops/kde-5/plasma/kscreenlocker.nix7
-rw-r--r--pkgs/desktops/kde-5/plasma/ksshaskpass.nix9
-rw-r--r--pkgs/desktops/kde-5/plasma/ksysguard.nix13
-rw-r--r--pkgs/desktops/kde-5/plasma/kwayland-integration.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/kwin/default.nix9
-rw-r--r--pkgs/desktops/kde-5/plasma/kwrited.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/libkscreen.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/libksysguard/default.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/milou.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/oxygen.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/plasma-desktop/default.nix20
-rw-r--r--pkgs/desktops/kde-5/plasma/plasma-integration.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/plasma-mediacenter.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/plasma-nm/default.nix13
-rw-r--r--pkgs/desktops/kde-5/plasma/plasma-pa.nix4
-rw-r--r--pkgs/desktops/kde-5/plasma/plasma-workspace-wallpapers.nix5
-rw-r--r--pkgs/desktops/kde-5/plasma/plasma-workspace/default.nix6
-rw-r--r--pkgs/desktops/kde-5/plasma/polkit-kde-agent.nix20
-rw-r--r--pkgs/desktops/kde-5/plasma/powerdevil.nix7
-rw-r--r--pkgs/desktops/kde-5/plasma/srcs.nix320
-rw-r--r--pkgs/desktops/kde-5/plasma/systemsettings.nix22
167 files changed, 601 insertions, 3042 deletions
diff --git a/pkgs/desktops/kde-5/applications/ark/default.nix b/pkgs/desktops/kde-5/applications/ark/default.nix
index 0af13b645e15..249027570663 100644
--- a/pkgs/desktops/kde-5/applications/ark/default.nix
+++ b/pkgs/desktops/kde-5/applications/ark/default.nix
@@ -1,7 +1,7 @@
 {
-  kdeApp, lib,
+  kdeApp, lib, kdeWrapper,
 
-  extra-cmake-modules, kdoctools, makeQtWrapper,
+  ecm, kdoctools, makeWrapper,
 
   karchive, kconfig, kcrash, kdbusaddons, ki18n, kiconthemes, khtml, kio,
   kservice, kpty, kwidgetsaddons, libarchive,
@@ -10,26 +10,33 @@
   p7zip, unrar, unzipNLS, zip
 }:
 
-kdeApp {
-  name = "ark";
-  nativeBuildInputs = [
-    extra-cmake-modules kdoctools makeQtWrapper
-  ];
-  propagatedBuildInputs = [
-    khtml ki18n kio karchive kconfig kcrash kdbusaddons kiconthemes kservice
-    kpty kwidgetsaddons libarchive
-  ];
-  postInstall =
-    let
-      PATH = lib.makeBinPath [
-        p7zip unrar unzipNLS zip
+let
+  unwrapped =
+    kdeApp {
+      name = "ark";
+      nativeBuildInputs = [
+        ecm kdoctools makeWrapper
       ];
-    in ''
-      wrapQtProgram "$out/bin/ark" \
-          --prefix PATH : "${PATH}"
-    '';
-  meta = {
-    license = with lib.licenses; [ gpl2 lgpl3 ];
-    maintainers = [ lib.maintainers.ttuegel ];
-  };
+      propagatedBuildInputs = [
+        khtml ki18n kio karchive kconfig kcrash kdbusaddons kiconthemes kservice
+        kpty kwidgetsaddons libarchive
+      ];
+      postInstall =
+        let
+          PATH = lib.makeBinPath [
+            p7zip unrar unzipNLS zip
+          ];
+        in ''
+          wrapProgram "$out/bin/ark" \
+              --prefix PATH : "${PATH}"
+        '';
+      meta = {
+        license = with lib.licenses; [ gpl2 lgpl3 ];
+        maintainers = [ lib.maintainers.ttuegel ];
+      };
+    };
+in
+kdeWrapper unwrapped
+{
+  targets = [ "bin/ark" ];
 }
diff --git a/pkgs/desktops/kde-5/applications/baloo-widgets.nix b/pkgs/desktops/kde-5/applications/baloo-widgets.nix
index fc91c92dbe6d..f6f3a7ce14ea 100644
--- a/pkgs/desktops/kde-5/applications/baloo-widgets.nix
+++ b/pkgs/desktops/kde-5/applications/baloo-widgets.nix
@@ -1,14 +1,7 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, kdoctools
-, kconfig
-, kio
-, ki18n
-, kservice
-, kfilemetadata
-, baloo
-, kdelibs4support
+{
+  kdeApp, lib,
+  ecm, kdoctools,
+  baloo, kconfig, kdelibs4support, kfilemetadata, ki18n, kio, kservice
 }:
 
 kdeApp {
@@ -17,11 +10,8 @@ kdeApp {
     license = [ lib.licenses.lgpl21 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-  ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [
-    baloo kconfig kservice kdelibs4support kfilemetadata ki18n kio
+    baloo kconfig kdelibs4support kfilemetadata ki18n kio kservice
   ];
 }
diff --git a/pkgs/desktops/kde-5/applications/default.nix b/pkgs/desktops/kde-5/applications/default.nix
index d3dc48b52823..609901048eee 100644
--- a/pkgs/desktops/kde-5/applications/default.nix
+++ b/pkgs/desktops/kde-5/applications/default.nix
@@ -21,11 +21,15 @@ let
   packages = self: with self; {
 
     kdeApp = import ./kde-app.nix {
-      inherit stdenv lib;
+      inherit lib;
       inherit debug srcs;
+      inherit kdeDerivation;
     };
 
-    kdelibs = callPackage ./kdelibs { inherit (pkgs) attica phonon; };
+    kdelibs = callPackage ./kdelibs {
+      inherit (srcs.kdelibs) src version;
+      inherit (pkgs) attica phonon;
+    };
 
     ark = callPackage ./ark/default.nix {};
     baloo-widgets = callPackage ./baloo-widgets.nix {};
diff --git a/pkgs/desktops/kde-5/applications/dolphin-plugins.nix b/pkgs/desktops/kde-5/applications/dolphin-plugins.nix
index 962dd2ba7205..e9932adc5dca 100644
--- a/pkgs/desktops/kde-5/applications/dolphin-plugins.nix
+++ b/pkgs/desktops/kde-5/applications/dolphin-plugins.nix
@@ -1,12 +1,7 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, kdoctools
-, kxmlgui
-, ki18n
-, kio
-, kdelibs4support
-, dolphin
+{
+  kdeApp, lib,
+  ecm, kdoctools,
+  dolphin, kdelibs4support, ki18n, kio, kxmlgui
 }:
 
 kdeApp {
@@ -15,11 +10,8 @@ kdeApp {
     license = [ lib.licenses.gpl2 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-  ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [
-    kdelibs4support ki18n kio kxmlgui dolphin
+    dolphin.unwrapped kdelibs4support ki18n kio kxmlgui
   ];
 }
diff --git a/pkgs/desktops/kde-5/applications/dolphin.nix b/pkgs/desktops/kde-5/applications/dolphin.nix
index 168854383faf..27e4a38741e7 100644
--- a/pkgs/desktops/kde-5/applications/dolphin.nix
+++ b/pkgs/desktops/kde-5/applications/dolphin.nix
@@ -1,50 +1,31 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, kdoctools
-, makeQtWrapper
-, kinit
-, kcmutils
-, kcoreaddons
-, knewstuff
-, ki18n
-, kdbusaddons
-, kbookmarks
-, kconfig
-, kio
-, kparts
-, solid
-, kiconthemes
-, kcompletion
-, ktexteditor
-, kwindowsystem
-, knotifications
-, kactivities
-, phonon
-, baloo
-, baloo-widgets
-, kfilemetadata
-, kdelibs4support
+{
+  kdeApp, lib, kdeWrapper,
+  ecm, kdoctools, makeQtWrapper,
+  baloo, baloo-widgets, dolphin-plugins, kactivities, kbookmarks, kcmutils,
+  kcompletion, kconfig, kcoreaddons, kdelibs4support, kdbusaddons,
+  kfilemetadata, ki18n, kiconthemes, kinit, kio, knewstuff, knotifications,
+  kparts, ktexteditor, kwindowsystem, phonon, solid
 }:
 
-kdeApp {
-  name = "dolphin";
-  meta = {
-    license = with lib.licenses; [ gpl2 fdl12 ];
-    maintainers = [ lib.maintainers.ttuegel ];
-  };
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-    makeQtWrapper
-  ];
-  propagatedBuildInputs = [
-    kinit kcmutils kcoreaddons knewstuff kdbusaddons kbookmarks kconfig kparts
-    solid kiconthemes kcompletion knotifications phonon baloo-widgets baloo
-    kactivities kdelibs4support kfilemetadata ki18n kio ktexteditor
-    kwindowsystem
-  ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/dolphin"
-  '';
+let
+  unwrapped =
+    kdeApp {
+      name = "dolphin";
+      meta = {
+        license = with lib.licenses; [ gpl2 fdl12 ];
+        maintainers = [ lib.maintainers.ttuegel ];
+      };
+      nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
+      propagatedBuildInputs = [
+        baloo baloo-widgets kactivities kbookmarks kcmutils kcompletion kconfig
+        kcoreaddons kdelibs4support kdbusaddons kfilemetadata ki18n kiconthemes
+        kinit kio knewstuff knotifications kparts ktexteditor kwindowsystem
+        phonon solid
+      ];
+    };
+in
+kdeWrapper unwrapped
+{
+  targets = [ "bin/dolphin" ];
+  paths = [ dolphin-plugins ];
 }
diff --git a/pkgs/desktops/kde-5/applications/ffmpegthumbs.nix b/pkgs/desktops/kde-5/applications/ffmpegthumbs.nix
index feacf7e437e7..c063b1e6035b 100644
--- a/pkgs/desktops/kde-5/applications/ffmpegthumbs.nix
+++ b/pkgs/desktops/kde-5/applications/ffmpegthumbs.nix
@@ -1,8 +1,7 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, ffmpeg
-, kio
+{
+  kdeApp, lib,
+  ecm,
+  ffmpeg, kio
 }:
 
 kdeApp {
@@ -11,11 +10,6 @@ kdeApp {
     license = with lib.licenses; [ gpl2 bsd3 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
-  nativeBuildInputs = [
-    extra-cmake-modules
-  ];
-  propagatedBuildInputs = [
-    ffmpeg
-    kio
-  ];
+  nativeBuildInputs = [ ecm ];
+  propagatedBuildInputs = [ ffmpeg kio ];
 }
diff --git a/pkgs/desktops/kde-5/applications/filelight.nix b/pkgs/desktops/kde-5/applications/filelight.nix
index 5ac101fa5018..acc5808b4a34 100644
--- a/pkgs/desktops/kde-5/applications/filelight.nix
+++ b/pkgs/desktops/kde-5/applications/filelight.nix
@@ -1,30 +1,21 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, kdoctools
-, makeQtWrapper
-, qtscript
-, kio
-, solid
-, kxmlgui
-, kparts
+{
+  kdeApp, lib, kdeWrapper,
+  ecm, kdoctools,
+  kio, kparts, kxmlgui, qtscript, solid
 }:
 
-kdeApp {
-  name = "filelight";
-  meta = {
-    license = with lib.licenses; [ gpl2 ];
-    maintainers = with lib.maintainers; [ fridh vcunat ];
-  };
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-    makeQtWrapper
-  ];
-  propagatedBuildInputs = [
-    kio kparts qtscript solid kxmlgui
-  ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/filelight"
-  '';
-}
+let
+  unwrapped =
+    kdeApp {
+      name = "filelight";
+      meta = {
+        license = with lib.licenses; [ gpl2 ];
+        maintainers = with lib.maintainers; [ fridh vcunat ];
+      };
+      nativeBuildInputs = [ ecm kdoctools ];
+      propagatedBuildInputs = [
+        kio kparts kxmlgui qtscript solid
+      ];
+    };
+in
+kdeWrapper unwrapped { targets = [ "bin/filelight" ]; }
diff --git a/pkgs/desktops/kde-5/applications/gpgmepp.nix b/pkgs/desktops/kde-5/applications/gpgmepp.nix
index 8d6f11879d3b..0e5cb15029c3 100644
--- a/pkgs/desktops/kde-5/applications/gpgmepp.nix
+++ b/pkgs/desktops/kde-5/applications/gpgmepp.nix
@@ -1,8 +1,7 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, boost
-, gpgme
+{
+  kdeApp, lib,
+  ecm,
+  boost, gpgme
 }:
 
 kdeApp {
@@ -11,10 +10,6 @@ kdeApp {
     license = with lib.licenses; [ lgpl21 bsd3 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
-  nativeBuildInputs = [
-    extra-cmake-modules
-  ];
-  propagatedBuildInputs = [
-    boost gpgme
-  ];
+  nativeBuildInputs = [ ecm ];
+  propagatedBuildInputs = [ boost gpgme ];
 }
diff --git a/pkgs/desktops/kde-5/applications/gwenview.nix b/pkgs/desktops/kde-5/applications/gwenview.nix
index 20fc554d01a3..66df17f2e447 100644
--- a/pkgs/desktops/kde-5/applications/gwenview.nix
+++ b/pkgs/desktops/kde-5/applications/gwenview.nix
@@ -1,34 +1,23 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, kdoctools
-, makeQtWrapper
-, baloo
-, exiv2
-, kactivities
-, kdelibs4support
-, kio
-, lcms2
-, phonon
-, qtsvg
-, qtx11extras
+{
+  kdeApp, lib, kdeWrapper,
+  ecm, kdoctools,
+  baloo, exiv2, kactivities, kdelibs4support, kio, lcms2, phonon,
+  qtsvg, qtx11extras
 }:
 
-kdeApp {
-  name = "gwenview";
-  meta = {
-    license = with lib.licenses; [ gpl2 fdl12 ];
-    maintainers = [ lib.maintainers.ttuegel ];
-  };
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-    makeQtWrapper
-  ];
-  propagatedBuildInputs = [
-    baloo kactivities kdelibs4support kio qtx11extras exiv2 lcms2 phonon qtsvg
-  ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/gwenview"
-  '';
-}
+let
+  unwrapped =
+    kdeApp {
+      name = "gwenview";
+      meta = {
+        license = with lib.licenses; [ gpl2 fdl12 ];
+        maintainers = [ lib.maintainers.ttuegel ];
+      };
+      nativeBuildInputs = [ ecm kdoctools ];
+      propagatedBuildInputs = [
+        baloo kactivities kdelibs4support kio qtx11extras exiv2 lcms2 phonon
+        qtsvg
+      ];
+    };
+in
+kdeWrapper unwrapped { targets = [ "bin/gwenview" ]; }
diff --git a/pkgs/desktops/kde-5/applications/kate.nix b/pkgs/desktops/kde-5/applications/kate.nix
index 94faa0655925..738266e8df7e 100644
--- a/pkgs/desktops/kde-5/applications/kate.nix
+++ b/pkgs/desktops/kde-5/applications/kate.nix
@@ -1,28 +1,27 @@
 {
-  kdeApp, lib, makeQtWrapper, extra-cmake-modules, kdoctools,
+  kdeApp, lib, kdeWrapper,
+  ecm, kdoctools,
   kactivities, kconfig, kcrash, kguiaddons, kiconthemes, ki18n, kinit,
   kjobwidgets, kio, kparts, ktexteditor, kwindowsystem, kxmlgui, kdbusaddons,
-  kwallet, plasma-framework, kitemmodels, knotifications, qtscript, threadweaver,
-  knewstuff, libgit2
+  kwallet, plasma-framework, kitemmodels, knotifications, qtscript,
+  threadweaver, knewstuff, libgit2
 }:
 
-kdeApp {
-  name = "kate";
-  meta = {
-    license = with lib.licenses; [ gpl3 lgpl3 lgpl2 ];
-    maintainers = [ lib.maintainers.ttuegel ];
-  };
-  nativeBuildInputs = [
-    extra-cmake-modules kdoctools makeQtWrapper
-  ];
-  propagatedBuildInputs = [
-    kactivities ki18n kio ktexteditor kwindowsystem plasma-framework qtscript
-    kconfig kcrash kguiaddons kiconthemes kinit kjobwidgets kparts kxmlgui
-    kdbusaddons kwallet kitemmodels knotifications threadweaver knewstuff
-    libgit2
-  ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/kate"
-    wrapQtProgram "$out/bin/kwrite"
-  '';
-}
+let
+  unwrapped =
+    kdeApp {
+      name = "kate";
+      meta = {
+        license = with lib.licenses; [ gpl3 lgpl3 lgpl2 ];
+        maintainers = [ lib.maintainers.ttuegel ];
+      };
+      nativeBuildInputs = [ ecm kdoctools ];
+      propagatedBuildInputs = [
+        kactivities ki18n kio ktexteditor kwindowsystem plasma-framework
+        qtscript kconfig kcrash kguiaddons kiconthemes kinit kjobwidgets kparts
+        kxmlgui kdbusaddons kwallet kitemmodels knotifications threadweaver
+        knewstuff libgit2
+      ];
+    };
+in
+kdeWrapper unwrapped { targets = [ "bin/kate" "bin/kwrite" ]; }
diff --git a/pkgs/desktops/kde-5/applications/kcalc.nix b/pkgs/desktops/kde-5/applications/kcalc.nix
index dae2b994577c..f6d87e3e6e97 100644
--- a/pkgs/desktops/kde-5/applications/kcalc.nix
+++ b/pkgs/desktops/kde-5/applications/kcalc.nix
@@ -1,31 +1,21 @@
-{ kdeApp
-, lib
-, makeQtWrapper
-, extra-cmake-modules
-, gmp
-, kdoctools
-, kconfig
-, kconfigwidgets
-, kguiaddons
-, kinit
-, knotifications
+{
+  kdeApp, lib, kdeWrapper,
+  ecm, kdoctools,
+  kconfig, kconfigwidgets, kguiaddons, kinit, knotifications, gmp
 }:
 
-kdeApp {
-  name = "kcalc";
-  meta = {
-    license = with lib.licenses; [ gpl2 ];
-    maintainers = [ lib.maintainers.fridh ];
-  };
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-    makeQtWrapper
-  ];
-  propagatedBuildInputs = [
-    gmp kconfig kconfigwidgets kguiaddons kinit knotifications
-  ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/kcalc"
-  '';
-}
+let
+  unwrapped =
+    kdeApp {
+      name = "kcalc";
+      meta = {
+        license = with lib.licenses; [ gpl2 ];
+        maintainers = [ lib.maintainers.fridh ];
+      };
+      nativeBuildInputs = [ ecm kdoctools ];
+      propagatedBuildInputs = [
+        gmp kconfig kconfigwidgets kguiaddons kinit knotifications
+      ];
+    };
+in
+kdeWrapper unwrapped { targets = [ "bin/kcalc" ]; }
diff --git a/pkgs/desktops/kde-5/applications/kcolorchooser.nix b/pkgs/desktops/kde-5/applications/kcolorchooser.nix
index 8726f6870ca3..45a72a0bbc1b 100644
--- a/pkgs/desktops/kde-5/applications/kcolorchooser.nix
+++ b/pkgs/desktops/kde-5/applications/kcolorchooser.nix
@@ -1,14 +1,18 @@
-{ kdeApp, lib
-, extra-cmake-modules
-, ki18n, kwidgetsaddons, kxmlgui
+{
+  kdeApp, lib, kdeWrapper,
+  ecm, ki18n, kwidgetsaddons, kxmlgui
 }:
 
-kdeApp {
-  name = "kcolorchooser";
-  meta = {
-    license = with lib.licenses; [ mit ];
-    maintainers = [ lib.maintainers.ttuegel ];
-  };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ ki18n kwidgetsaddons kxmlgui ];
-}
+let
+  unwrapped =
+    kdeApp {
+      name = "kcolorchooser";
+      meta = {
+        license = with lib.licenses; [ mit ];
+        maintainers = [ lib.maintainers.ttuegel ];
+      };
+      nativeBuildInputs = [ ecm ];
+      propagatedBuildInputs = [ ki18n kwidgetsaddons kxmlgui ];
+    };
+in
+kdeWrapper unwrapped { targets = [ "bin/kcolorchooser" ]; }
diff --git a/pkgs/desktops/kde-5/applications/kde-app.nix b/pkgs/desktops/kde-5/applications/kde-app.nix
index 2f1fdc1d643c..92fdb439330d 100644
--- a/pkgs/desktops/kde-5/applications/kde-app.nix
+++ b/pkgs/desktops/kde-5/applications/kde-app.nix
@@ -1,4 +1,4 @@
-{ stdenv, lib, debug, srcs }:
+{ kdeDerivation, lib, debug, srcs }:
 
 args:
 
@@ -7,12 +7,10 @@ let
   sname = args.sname or name;
   inherit (srcs."${sname}") src version;
 in
-stdenv.mkDerivation (args // {
+kdeDerivation (args // {
   name = "${name}-${version}";
   inherit src;
 
-  outputs = args.outputs or [ "dev" "out" ];
-
   cmakeFlags =
     (args.cmakeFlags or [])
     ++ [ "-DBUILD_TESTING=OFF" ]
diff --git a/pkgs/desktops/kde-5/applications/kde-locale-5.nix b/pkgs/desktops/kde-5/applications/kde-locale-5.nix
index 772ebe37e44f..2b9cc0e35eb0 100644
--- a/pkgs/desktops/kde-5/applications/kde-locale-5.nix
+++ b/pkgs/desktops/kde-5/applications/kde-locale-5.nix
@@ -1,6 +1,6 @@
 name: args:
 
-{ kdeApp, cmake, extra-cmake-modules, gettext, kdoctools }:
+{ kdeApp, cmake, ecm, gettext, kdoctools }:
 
 kdeApp (args // {
   sname = "kde-l10n-${name}";
@@ -9,7 +9,7 @@ kdeApp (args // {
   outputs = [ "out" ];
 
   nativeBuildInputs =
-    [ cmake extra-cmake-modules gettext kdoctools ]
+    [ cmake ecm gettext kdoctools ]
     ++ (args.nativeBuildInputs or []);
 
   preConfigure = ''
diff --git a/pkgs/desktops/kde-5/applications/kdegraphics-thumbnailers.nix b/pkgs/desktops/kde-5/applications/kdegraphics-thumbnailers.nix
index cddf064e47b7..c3947226690f 100644
--- a/pkgs/desktops/kde-5/applications/kdegraphics-thumbnailers.nix
+++ b/pkgs/desktops/kde-5/applications/kdegraphics-thumbnailers.nix
@@ -1,9 +1,6 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, kio
-, libkexiv2
-, libkdcraw
+{
+  kdeApp, lib,
+  ecm, kio, libkexiv2, libkdcraw
 }:
 
 kdeApp {
@@ -12,10 +9,6 @@ kdeApp {
     license = [ lib.licenses.lgpl21 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
-  nativeBuildInputs = [
-    extra-cmake-modules
-  ];
-  propagatedBuildInputs = [
-    kio libkexiv2 libkdcraw
-  ];
+  nativeBuildInputs = [ ecm ];
+  propagatedBuildInputs = [ kio libkexiv2 libkdcraw ];
 }
diff --git a/pkgs/desktops/kde-5/applications/kdelibs/default.nix b/pkgs/desktops/kde-5/applications/kdelibs/default.nix
index 389362deecc6..4ddc25ba6443 100644
--- a/pkgs/desktops/kde-5/applications/kdelibs/default.nix
+++ b/pkgs/desktops/kde-5/applications/kdelibs/default.nix
@@ -1,9 +1,9 @@
-{ kdeApp, attica, attr, automoc4, avahi, bison, cmake
-, docbook_xml_dtd_42, docbook_xsl, flex, giflib, ilmbase
-, libdbusmenu_qt, libjpeg, libxml2, libxslt, perl, phonon, pkgconfig
-, polkit_qt4, qca2, qt4, shared_desktop_ontologies, shared_mime_info
-, soprano, strigi, udev, xz, pcre
-, lib
+{
+  kdeApp, lib, src, version,
+  automoc4, bison, cmake, flex, libxslt, perl, pkgconfig, shared_mime_info,
+  attica, attr, avahi, docbook_xml_dtd_42, docbook_xsl, giflib, ilmbase,
+  libdbusmenu_qt, libjpeg, libxml2, phonon, polkit_qt4, qca2, qt4,
+  shared_desktop_ontologies, soprano, strigi, udev, xz, pcre
 }:
 
 kdeApp {
@@ -11,14 +11,14 @@ kdeApp {
 
   outputs = [ "out" ];
 
+  nativeBuildInputs = [
+    automoc4 bison cmake flex libxslt perl pkgconfig shared_mime_info
+  ];
   buildInputs = [
     attica attr avahi giflib libdbusmenu_qt libjpeg libxml2
     polkit_qt4 qca2 shared_desktop_ontologies udev xz pcre
   ];
   propagatedBuildInputs = [ qt4 soprano phonon strigi ];
-  nativeBuildInputs = [
-    automoc4 bison cmake flex libxslt perl pkgconfig shared_mime_info
-  ];
 
   patches = [
     ./0001-old-kde4-cmake-policies.patch
@@ -39,6 +39,8 @@ kdeApp {
   setupHook = ./setup-hook.sh;
 
   meta = {
+    platforms = lib.platforms.linux;
+    homepage = "http://www.kde.org";
     licenses = with lib.licenses; [ gpl2 fdl12 lgpl21 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
diff --git a/pkgs/desktops/kde-5/applications/kdenetwork-filesharing.nix b/pkgs/desktops/kde-5/applications/kdenetwork-filesharing.nix
index 2190ab8ea644..4aa119675285 100644
--- a/pkgs/desktops/kde-5/applications/kdenetwork-filesharing.nix
+++ b/pkgs/desktops/kde-5/applications/kdenetwork-filesharing.nix
@@ -1,12 +1,7 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, kdoctools
-, kcoreaddons
-, ki18n
-, kio
-, kwidgetsaddons
-, samba
+{
+  kdeApp, lib,
+  ecm, kdoctools,
+  kcoreaddons, ki18n, kio, kwidgetsaddons, samba
 }:
 
 kdeApp {
@@ -15,11 +10,6 @@ kdeApp {
     license = [ lib.licenses.gpl2 lib.licenses.lgpl21 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-  ];
-  propagatedBuildInputs = [
-    kcoreaddons ki18n kio kwidgetsaddons samba
-  ];
+  nativeBuildInputs = [ ecm kdoctools ];
+  propagatedBuildInputs = [ kcoreaddons ki18n kio kwidgetsaddons samba ];
 }
diff --git a/pkgs/desktops/kde-5/applications/kgpg.nix b/pkgs/desktops/kde-5/applications/kgpg.nix
index 3ee925197189..6717dc1511dc 100644
--- a/pkgs/desktops/kde-5/applications/kgpg.nix
+++ b/pkgs/desktops/kde-5/applications/kgpg.nix
@@ -1,32 +1,13 @@
-{ kdeApp
-, lib
-, automoc4
-, cmake
-, makeWrapper
-, perl
-, pkgconfig
-, boost
-, gpgme
-, kdelibs
-, kdepimlibs
-, gnupg
+{
+  kdeApp, lib,
+  automoc4, cmake, makeWrapper, perl, pkgconfig,
+  boost, gpgme, kdelibs, kdepimlibs, gnupg
 }:
 
 kdeApp {
   name = "kgpg";
-  nativeBuildInputs = [
-    automoc4
-    cmake
-    makeWrapper
-    perl
-    pkgconfig
-  ];
-  buildInputs = [
-    boost
-    gpgme
-    kdelibs
-    kdepimlibs
-  ];
+  nativeBuildInputs = [ automoc4 cmake makeWrapper perl pkgconfig ];
+  buildInputs = [ boost gpgme kdelibs kdepimlibs ];
   postInstall = ''
     wrapProgram "$out/bin/kgpg" \
         --prefix PATH : "${gnupg}/bin"
diff --git a/pkgs/desktops/kde-5/applications/khelpcenter.nix b/pkgs/desktops/kde-5/applications/khelpcenter.nix
index 3cdcf22cf754..934f13425e8a 100644
--- a/pkgs/desktops/kde-5/applications/khelpcenter.nix
+++ b/pkgs/desktops/kde-5/applications/khelpcenter.nix
@@ -1,20 +1,19 @@
-{ kdeApp, extra-cmake-modules, kdoctools, makeQtWrapper
-, grantlee, kconfig, kcoreaddons, kdbusaddons, ki18n, kinit, kcmutils
-, kdelibs4support, khtml, kservice
-, xapian
+{
+  kdeApp, kdeWrapper,
+  ecm, kdoctools,
+  grantlee, kconfig, kcoreaddons, kdbusaddons, ki18n, kinit, kcmutils,
+  kdelibs4support, khtml, kservice, xapian
 }:
 
-kdeApp {
-  name = "khelpcenter";
-  nativeBuildInputs = [
-    extra-cmake-modules kdoctools makeQtWrapper
-  ];
-  buildInputs = [
-    grantlee kdelibs4support khtml ki18n kconfig kcoreaddons kdbusaddons kinit
-    kcmutils kservice
-    xapian
-  ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/khelpcenter"
-  '';
-}
+let
+  unwrapped =
+    kdeApp {
+      name = "khelpcenter";
+      nativeBuildInputs = [ ecm kdoctools ];
+      buildInputs = [
+        grantlee kdelibs4support khtml ki18n kconfig kcoreaddons kdbusaddons
+        kinit kcmutils kservice xapian
+      ];
+    };
+in
+kdeWrapper unwrapped { targets = [ "bin/khelpcenter" ]; }
diff --git a/pkgs/desktops/kde-5/applications/kio-extras.nix b/pkgs/desktops/kde-5/applications/kio-extras.nix
index 9d28066cae92..d9fe6a61ac34 100644
--- a/pkgs/desktops/kde-5/applications/kio-extras.nix
+++ b/pkgs/desktops/kde-5/applications/kio-extras.nix
@@ -1,26 +1,9 @@
-{ kdeApp, lib
-, extra-cmake-modules, kdoctools
-, shared_mime_info
-, exiv2
-, kactivities, karchive
-, kbookmarks
-, kconfig, kconfigwidgets
-, kcoreaddons, kdbusaddons, kguiaddons
-, kdnssd
-, kiconthemes
-, ki18n
-, kio
-, khtml
-, kdelibs4support
-, kpty
-, libmtp
-, libssh
-, openexr, ilmbase
-, openslp
-, phonon
-, qtsvg
-, samba
-, solid
+{
+  kdeApp, lib, ecm, kdoctools, shared_mime_info,
+  exiv2, kactivities, karchive, kbookmarks, kconfig, kconfigwidgets,
+  kcoreaddons, kdbusaddons, kguiaddons, kdnssd, kiconthemes, ki18n, kio, khtml,
+  kdelibs4support, kpty, libmtp, libssh, openexr, ilmbase, openslp, phonon,
+  qtsvg, samba, solid
 }:
 
 kdeApp {
@@ -29,10 +12,7 @@ kdeApp {
     license = with lib.licenses; [ gpl2 lgpl21 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
-  nativeBuildInputs = [
-    extra-cmake-modules kdoctools
-    shared_mime_info
-  ];
+  nativeBuildInputs = [ ecm kdoctools shared_mime_info ];
   propagatedBuildInputs = [
     exiv2 kactivities karchive kbookmarks kconfig kconfigwidgets kcoreaddons
     kdbusaddons kguiaddons kdnssd kiconthemes ki18n kio khtml kdelibs4support
diff --git a/pkgs/desktops/kde-5/applications/kompare.nix b/pkgs/desktops/kde-5/applications/kompare.nix
index 55bbfc448606..3b2143af615c 100644
--- a/pkgs/desktops/kde-5/applications/kompare.nix
+++ b/pkgs/desktops/kde-5/applications/kompare.nix
@@ -1,34 +1,18 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, kdoctools
-, makeQtWrapper
-, kparts
-, ktexteditor
-, kwidgetsaddons
-, libkomparediff2
+{
+  kdeApp, lib, kdeWrapper,
+  ecm, kdoctools,
+  kparts, ktexteditor, kwidgetsaddons, libkomparediff2
 }:
 
-kdeApp {
-  name = "kompare";
-  meta = {
-    license = with lib.licenses; [ gpl2 ];
-  };
-
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-    makeQtWrapper
-  ];
-
-  propagatedBuildInputs = [
-    kparts
-    ktexteditor
-    kwidgetsaddons
-    libkomparediff2
-  ];
-
-  postInstall = ''
-    wrapQtProgram "$out/bin/kompare"
-  '';
-}
+let
+  unwrapped =
+    kdeApp {
+      name = "kompare";
+      meta = { license = with lib.licenses; [ gpl2 ]; };
+      nativeBuildInputs = [ ecm kdoctools ];
+      propagatedBuildInputs = [
+        kparts ktexteditor kwidgetsaddons libkomparediff2
+      ];
+    };
+in
+kdeWrapper unwrapped { targets = [ "bin/kompare" ]; }
diff --git a/pkgs/desktops/kde-5/applications/konsole.nix b/pkgs/desktops/kde-5/applications/konsole.nix
index 2042611f61b2..bf3a497fefaa 100644
--- a/pkgs/desktops/kde-5/applications/konsole.nix
+++ b/pkgs/desktops/kde-5/applications/konsole.nix
@@ -1,46 +1,27 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, kdoctools
-, makeQtWrapper
-, qtscript
-, kbookmarks
-, kcompletion
-, kconfig
-, kconfigwidgets
-, kcoreaddons
-, kguiaddons
-, ki18n
-, kiconthemes
-, kinit
-, kdelibs4support
-, kio
-, knotifications
-, knotifyconfig
-, kparts
-, kpty
-, kservice
-, ktextwidgets
-, kwidgetsaddons
-, kwindowsystem
-, kxmlgui
+{
+  kdeApp, lib, kdeWrapper,
+  ecm, kdoctools,
+  kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons, kguiaddons,
+  ki18n, kiconthemes, kinit, kdelibs4support, kio, knotifications,
+  knotifyconfig, kparts, kpty, kservice, ktextwidgets, kwidgetsaddons,
+  kwindowsystem, kxmlgui, qtscript
 }:
 
-kdeApp {
-  name = "konsole";
-  meta = {
-    license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
-    maintainers = [ lib.maintainers.ttuegel ];
-  };
-  nativeBuildInputs = [
-    extra-cmake-modules kdoctools makeQtWrapper
-  ];
-  propagatedBuildInputs = [
-    kdelibs4support ki18n kwindowsystem qtscript kbookmarks kcompletion kconfig
-    kconfigwidgets kcoreaddons kguiaddons kiconthemes kinit kio knotifications
-    knotifyconfig kparts kpty kservice ktextwidgets kwidgetsaddons kxmlgui
-  ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/konsole"
-  '';
-}
+let
+  unwrapped =
+    kdeApp {
+      name = "konsole";
+      meta = {
+        license = with lib.licenses; [ gpl2 lgpl21 fdl12 ];
+        maintainers = [ lib.maintainers.ttuegel ];
+      };
+      nativeBuildInputs = [ ecm kdoctools ];
+      propagatedBuildInputs = [
+        kdelibs4support ki18n kwindowsystem qtscript kbookmarks kcompletion
+        kconfig kconfigwidgets kcoreaddons kguiaddons kiconthemes kinit kio
+        knotifications knotifyconfig kparts kpty kservice ktextwidgets
+        kwidgetsaddons kxmlgui
+      ];
+    };
+in
+kdeWrapper unwrapped { targets = [ "bin/konsole" ]; }
diff --git a/pkgs/desktops/kde-5/applications/libkdcraw.nix b/pkgs/desktops/kde-5/applications/libkdcraw.nix
index 1c1ef7dc9968..421f7dbb4cfe 100644
--- a/pkgs/desktops/kde-5/applications/libkdcraw.nix
+++ b/pkgs/desktops/kde-5/applications/libkdcraw.nix
@@ -1,8 +1,4 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, libraw
-}:
+{ kdeApp, lib, ecm, libraw }:
 
 kdeApp {
   name = "libkdcraw";
@@ -10,10 +6,6 @@ kdeApp {
     license = with lib.licenses; [ gpl2 lgpl21 bsd3 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
-  nativeBuildInputs = [
-    extra-cmake-modules
-  ];
-  propagatedBuildInputs = [
-    libraw
-  ];
+  nativeBuildInputs = [ ecm ];
+  propagatedBuildInputs = [ libraw ];
 }
diff --git a/pkgs/desktops/kde-5/applications/libkexiv2.nix b/pkgs/desktops/kde-5/applications/libkexiv2.nix
index 5a46912a109e..0fac0759ab6b 100644
--- a/pkgs/desktops/kde-5/applications/libkexiv2.nix
+++ b/pkgs/desktops/kde-5/applications/libkexiv2.nix
@@ -1,8 +1,4 @@
-{ kdeApp
-, lib
-, exiv2
-, extra-cmake-modules
-}:
+{ kdeApp, lib, exiv2, ecm }:
 
 kdeApp {
   name = "libkexiv2";
@@ -10,10 +6,6 @@ kdeApp {
     license = with lib.licenses; [ gpl2 lgpl21 bsd3 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
-  nativeBuildInputs = [
-    extra-cmake-modules
-  ];
-  propagatedBuildInputs = [
-    exiv2
-  ];
+  nativeBuildInputs = [ ecm ];
+  propagatedBuildInputs = [ exiv2 ];
 }
diff --git a/pkgs/desktops/kde-5/applications/libkipi.nix b/pkgs/desktops/kde-5/applications/libkipi.nix
index 33903463714a..fa9dcc8323d1 100644
--- a/pkgs/desktops/kde-5/applications/libkipi.nix
+++ b/pkgs/desktops/kde-5/applications/libkipi.nix
@@ -1,11 +1,4 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, kconfig
-, ki18n
-, kservice
-, kxmlgui
-}:
+{ kdeApp, lib, ecm, kconfig, ki18n, kservice, kxmlgui }:
 
 kdeApp {
   name = "libkipi";
@@ -13,10 +6,6 @@ kdeApp {
     license = with lib.licenses; [ gpl2 lgpl21 bsd3 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
-  nativeBuildInputs = [
-    extra-cmake-modules
-  ];
-  propagatedBuildInputs = [
-    kconfig ki18n kservice kxmlgui
-  ];
+  nativeBuildInputs = [ ecm ];
+  propagatedBuildInputs = [ kconfig ki18n kservice kxmlgui ];
 }
diff --git a/pkgs/desktops/kde-5/applications/libkomparediff2.nix b/pkgs/desktops/kde-5/applications/libkomparediff2.nix
index d6a4878ffbdd..91b469fed3c7 100644
--- a/pkgs/desktops/kde-5/applications/libkomparediff2.nix
+++ b/pkgs/desktops/kde-5/applications/libkomparediff2.nix
@@ -1,23 +1,7 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, ki18n
-, kxmlgui
-, kcodecs
-, kio
-}:
+{ kdeApp, lib, ecm, ki18n, kxmlgui, kcodecs, kio }:
 
 kdeApp {
   name = "libkomparediff2";
-
-  nativeBuildInputs = [
-    extra-cmake-modules
-  ];
-
-  propagatedBuildInputs = [
-    kcodecs
-    ki18n
-    kxmlgui
-    kio
-  ];
+  nativeBuildInputs = [ ecm ];
+  propagatedBuildInputs = [ kcodecs ki18n kxmlgui kio ];
 }
diff --git a/pkgs/desktops/kde-5/applications/okular.nix b/pkgs/desktops/kde-5/applications/okular.nix
index 0691325d7a52..6e6f1407c558 100644
--- a/pkgs/desktops/kde-5/applications/okular.nix
+++ b/pkgs/desktops/kde-5/applications/okular.nix
@@ -1,40 +1,20 @@
-{ kdeApp
-, lib
-, automoc4
-, cmake
-, perl
-, pkgconfig
-, kdelibs
-, qimageblitz
-, poppler_qt4
-, libspectre
-, libkexiv2
-, djvulibre
-, libtiff
-, freetype
-, ebook_tools
+{
+  kdeApp, lib,
+  automoc4, cmake, perl, pkgconfig, kdelibs, qimageblitz,
+  poppler_qt4, libspectre, libkexiv2, djvulibre, libtiff, freetype,
+  ebook_tools
 }:
 
 kdeApp {
   name = "okular";
-  nativeBuildInputs = [
-    automoc4
-    cmake
-    perl
-    pkgconfig
-  ];
+  nativeBuildInputs = [ automoc4 cmake perl pkgconfig ];
   buildInputs = [
-    kdelibs
-    qimageblitz
-    poppler_qt4
-    libspectre
-    libkexiv2
-    djvulibre
-    libtiff
-    freetype
-    ebook_tools
+    kdelibs qimageblitz poppler_qt4 libspectre libkexiv2 djvulibre libtiff
+    freetype ebook_tools
   ];
   meta = {
+    platforms = lib.platforms.linux;
+    homepage = "http://www.kde.org";
     license = with lib.licenses; [ gpl2 lgpl21 fdl12 bsd3 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
diff --git a/pkgs/desktops/kde-5/applications/print-manager.nix b/pkgs/desktops/kde-5/applications/print-manager.nix
index cf0703b7d2c3..c4a82780b448 100644
--- a/pkgs/desktops/kde-5/applications/print-manager.nix
+++ b/pkgs/desktops/kde-5/applications/print-manager.nix
@@ -1,20 +1,8 @@
-{ kdeApp
-, lib
-, extra-cmake-modules
-, qtdeclarative
-, cups
-, kconfig
-, kconfigwidgets
-, kdbusaddons
-, kiconthemes
-, ki18n
-, kcmutils
-, kio
-, knotifications
-, plasma-framework
-, kwidgetsaddons
-, kwindowsystem
-, kitemviews
+{
+  kdeApp, lib, ecm,
+  cups, kconfig, kconfigwidgets, kdbusaddons, kiconthemes, ki18n, kcmutils, kio,
+  knotifications, kwidgetsaddons, kwindowsystem, kitemviews, plasma-framework,
+  qtdeclarative
 }:
 
 kdeApp {
@@ -23,9 +11,7 @@ kdeApp {
     license = [ lib.licenses.gpl2 ];
     maintainers = [ lib.maintainers.ttuegel ];
   };
-  nativeBuildInputs = [
-    extra-cmake-modules
-  ];
+  nativeBuildInputs = [ ecm ];
   propagatedBuildInputs = [
     cups kconfig kconfigwidgets kdbusaddons kiconthemes kcmutils knotifications
     kwidgetsaddons kitemviews ki18n kio kwindowsystem plasma-framework
diff --git a/pkgs/desktops/kde-5/applications/spectacle.nix b/pkgs/desktops/kde-5/applications/spectacle.nix
index 867c0b53b1e7..26faea2678a9 100644
--- a/pkgs/desktops/kde-5/applications/spectacle.nix
+++ b/pkgs/desktops/kde-5/applications/spectacle.nix
@@ -1,35 +1,20 @@
-{ kdeApp, lib
-, extra-cmake-modules
-, kdoctools
-, makeQtWrapper
-, kconfig
-, kcoreaddons
-, kdbusaddons
-, kdeclarative
-, ki18n
-, kio
-, knotifications
-, kscreen
-, kwidgetsaddons
-, kwindowsystem
-, kxmlgui
-, libkipi
-, xcb-util-cursor
+{
+  kdeApp, lib, kdeWrapper,
+  ecm, kdoctools,
+  kconfig, kcoreaddons, kdbusaddons, kdeclarative, ki18n, kio, knotifications,
+  kscreen, kwidgetsaddons, kwindowsystem, kxmlgui, libkipi, xcb-util-cursor
 }:
 
-kdeApp {
-  name = "spectacle";
-  meta = with lib; {
-    maintainers = with maintainers; [ ttuegel ];
-  };
-  nativeBuildInputs = [
-    extra-cmake-modules kdoctools makeQtWrapper
-  ];
-  propagatedBuildInputs = [
-    kconfig kcoreaddons kdbusaddons kdeclarative ki18n kio knotifications
-    kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi xcb-util-cursor
-  ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/spectacle"
-  '';
-}
+let
+  unwrapped =
+    kdeApp {
+      name = "spectacle";
+      meta = with lib; { maintainers = with maintainers; [ ttuegel ]; };
+      nativeBuildInputs = [ ecm kdoctools ];
+      propagatedBuildInputs = [
+        kconfig kcoreaddons kdbusaddons kdeclarative ki18n kio knotifications
+        kscreen kwidgetsaddons kwindowsystem kxmlgui libkipi xcb-util-cursor
+      ];
+    };
+in
+kdeWrapper unwrapped { targets = [ "bin/spectacle" ]; }
diff --git a/pkgs/desktops/kde-5/frameworks/attica.nix b/pkgs/desktops/kde-5/frameworks/attica.nix
deleted file mode 100644
index 98721876c120..000000000000
--- a/pkgs/desktops/kde-5/frameworks/attica.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-}:
-
-kdeFramework {
-  name = "attica";
-  nativeBuildInputs = [ extra-cmake-modules ];
-  meta = {
-    maintainers = [ lib.maintainers.ttuegel ];
-  };
-}
diff --git a/pkgs/desktops/kde-5/frameworks/baloo.nix b/pkgs/desktops/kde-5/frameworks/baloo.nix
deleted file mode 100644
index 825a125c8a79..000000000000
--- a/pkgs/desktops/kde-5/frameworks/baloo.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kauth, kconfig
-, kcoreaddons, kcrash, kdbusaddons, kfilemetadata, ki18n, kidletime
-, kio, lmdb, qtbase, solid
-}:
-
-kdeFramework {
-  name = "baloo";
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    kauth kconfig kcoreaddons kcrash kdbusaddons kfilemetadata ki18n kio
-    kidletime lmdb qtbase solid
-  ];
-  meta = {
-    maintainers = [ lib.maintainers.ttuegel ];
-  };
-}
diff --git a/pkgs/desktops/kde-5/frameworks/bluez-qt.nix b/pkgs/desktops/kde-5/frameworks/bluez-qt.nix
deleted file mode 100644
index 26490167dbdb..000000000000
--- a/pkgs/desktops/kde-5/frameworks/bluez-qt.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, qtdeclarative
-}:
-
-kdeFramework {
-  name = "bluez-qt";
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ qtdeclarative ];
-  preConfigure = ''
-    substituteInPlace CMakeLists.txt \
-      --replace /lib/udev/rules.d "$out/lib/udev/rules.d"
-  '';
-  meta = {
-    maintainers = [ lib.maintainers.ttuegel ];
-  };
-}
diff --git a/pkgs/desktops/kde-5/frameworks/breeze-icons.nix b/pkgs/desktops/kde-5/frameworks/breeze-icons.nix
deleted file mode 100644
index 773261638c98..000000000000
--- a/pkgs/desktops/kde-5/frameworks/breeze-icons.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework
-, extra-cmake-modules
-, qtsvg
-}:
-
-kdeFramework {
-  name = "breeze-icons";
-  outputs = [ "out" ];
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ qtsvg ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/default.nix b/pkgs/desktops/kde-5/frameworks/default.nix
deleted file mode 100644
index bff2b394038b..000000000000
--- a/pkgs/desktops/kde-5/frameworks/default.nix
+++ /dev/null
@@ -1,119 +0,0 @@
-/*
-
-# Updates
-
-1. Update the URL in `maintainers/scripts/generate-kde-frameworks.sh` and
-   run that script from the top of the Nixpkgs tree.
-2. Check that the new packages build correctly.
-3. Commit the changes and open a pull request.
-
-*/
-
-{ pkgs, debug ? false }:
-
-let
-
-  inherit (pkgs) lib makeSetupHook stdenv;
-
-  mirror = "mirror://kde";
-  srcs = import ./srcs.nix { inherit (pkgs) fetchurl; inherit mirror; };
-
-  packages = self: with self; {
-    kdeFramework = args:
-      let
-        inherit (args) name;
-        inherit (srcs."${name}") src version;
-      in stdenv.mkDerivation (args // {
-        name = "${name}-${version}";
-        inherit src;
-
-        outputs = args.outputs or [ "dev" "out" ];
-
-        cmakeFlags =
-          (args.cmakeFlags or [])
-          ++ [ "-DBUILD_TESTING=OFF" ]
-          ++ lib.optional debug "-DCMAKE_BUILD_TYPE=Debug";
-
-        meta = {
-          license = with lib.licenses; [
-            lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12
-          ];
-          platforms = lib.platforms.linux;
-          homepage = "http://www.kde.org";
-        } // (args.meta or {});
-      });
-
-    attica = callPackage ./attica.nix {};
-    baloo = callPackage ./baloo.nix {};
-    bluez-qt = callPackage ./bluez-qt.nix {};
-    breeze-icons = callPackage ./breeze-icons.nix {};
-    extra-cmake-modules = callPackage ./extra-cmake-modules {};
-    frameworkintegration = callPackage ./frameworkintegration.nix {};
-    kactivities = callPackage ./kactivities.nix {};
-    kactivities-stats = callPackage ./kactivities-stats.nix {};
-    kapidox = callPackage ./kapidox.nix {};
-    karchive = callPackage ./karchive.nix {};
-    kauth = callPackage ./kauth {};
-    kbookmarks = callPackage ./kbookmarks.nix {};
-    kcmutils = callPackage ./kcmutils {};
-    kcodecs = callPackage ./kcodecs.nix {};
-    kcompletion = callPackage ./kcompletion.nix {};
-    kconfig = callPackage ./kconfig.nix {};
-    kconfigwidgets = callPackage ./kconfigwidgets {};
-    kcoreaddons = callPackage ./kcoreaddons.nix {};
-    kcrash = callPackage ./kcrash.nix {};
-    kdbusaddons = callPackage ./kdbusaddons.nix {};
-    kdeclarative = callPackage ./kdeclarative.nix {};
-    kded = callPackage ./kded.nix {};
-    kdelibs4support = callPackage ./kdelibs4support {};
-    kdesignerplugin = callPackage ./kdesignerplugin.nix {};
-    kdesu = callPackage ./kdesu.nix {};
-    kdnssd = callPackage ./kdnssd.nix {};
-    kdoctools = callPackage ./kdoctools {};
-    kemoticons = callPackage ./kemoticons.nix {};
-    kfilemetadata = callPackage ./kfilemetadata {};
-    kglobalaccel = callPackage ./kglobalaccel.nix {};
-    kguiaddons = callPackage ./kguiaddons.nix {};
-    khtml = callPackage ./khtml.nix {};
-    ki18n = callPackage ./ki18n.nix {};
-    kiconthemes = callPackage ./kiconthemes {};
-    kidletime = callPackage ./kidletime.nix {};
-    kimageformats = callPackage ./kimageformats.nix {};
-    kinit = callPackage ./kinit {};
-    kio = callPackage ./kio {};
-    kitemmodels = callPackage ./kitemmodels.nix {};
-    kitemviews = callPackage ./kitemviews.nix {};
-    kjobwidgets = callPackage ./kjobwidgets.nix {};
-    kjs = callPackage ./kjs.nix {};
-    kjsembed = callPackage ./kjsembed.nix {};
-    kmediaplayer = callPackage ./kmediaplayer.nix {};
-    knewstuff = callPackage ./knewstuff.nix {};
-    knotifications = callPackage ./knotifications.nix {};
-    knotifyconfig = callPackage ./knotifyconfig.nix {};
-    kpackage = callPackage ./kpackage {};
-    kparts = callPackage ./kparts.nix {};
-    kpeople = callPackage ./kpeople.nix {};
-    kplotting = callPackage ./kplotting.nix {};
-    kpty = callPackage ./kpty.nix {};
-    kross = callPackage ./kross.nix {};
-    krunner = callPackage ./krunner.nix {};
-    kservice = callPackage ./kservice {};
-    ktexteditor = callPackage ./ktexteditor {};
-    ktextwidgets = callPackage ./ktextwidgets.nix {};
-    kunitconversion = callPackage ./kunitconversion.nix {};
-    kwallet = callPackage ./kwallet.nix {};
-    kwayland = callPackage ./kwayland.nix {};
-    kwidgetsaddons = callPackage ./kwidgetsaddons.nix {};
-    kwindowsystem = callPackage ./kwindowsystem.nix {};
-    kxmlgui = callPackage ./kxmlgui.nix {};
-    kxmlrpcclient = callPackage ./kxmlrpcclient.nix {};
-    modemmanager-qt = callPackage ./modemmanager-qt.nix {};
-    networkmanager-qt = callPackage ./networkmanager-qt.nix {};
-    oxygen-icons5 = callPackage ./oxygen-icons5.nix {};
-    plasma-framework = callPackage ./plasma-framework.nix {};
-    solid = callPackage ./solid.nix {};
-    sonnet = callPackage ./sonnet.nix {};
-    threadweaver = callPackage ./threadweaver.nix {};
-  };
-
-in packages
diff --git a/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/default.nix b/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/default.nix
deleted file mode 100644
index 1c2ea70442d3..000000000000
--- a/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ kdeFramework, lib, copyPathsToStore, cmake, pkgconfig, qttools }:
-
-kdeFramework {
-  name = "extra-cmake-modules";
-
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
-
-  outputs = [ "out" ];  # this package has no runtime components
-  setupHook = ./setup-hook.sh;
-
-  # It is OK to propagate these inputs as long as
-  # extra-cmake-modules is never a propagated input
-  # of some other derivation.
-  propagatedNativeBuildInputs = [ cmake pkgconfig qttools ];
-
-  meta = with lib; {
-    license = licenses.bsd2;
-    maintainers = [ maintainers.ttuegel ];
-  };
-}
diff --git a/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/nix-lib-path.patch b/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/nix-lib-path.patch
deleted file mode 100644
index a74340a6dc96..000000000000
--- a/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/nix-lib-path.patch
+++ /dev/null
@@ -1,37 +0,0 @@
-Index: extra-cmake-modules-5.18.0/kde-modules/KDEInstallDirs.cmake
-===================================================================
---- extra-cmake-modules-5.18.0.orig/kde-modules/KDEInstallDirs.cmake
-+++ extra-cmake-modules-5.18.0/kde-modules/KDEInstallDirs.cmake
-@@ -200,32 +200,6 @@
- # GNUInstallDirs code deals with re-configuring, but that is dealt with
- # by the _define_* macros in this module).
- set(_LIBDIR_DEFAULT "lib")
--# Override this default 'lib' with 'lib64' iff:
--#  - we are on a Linux, kFreeBSD or Hurd system but NOT cross-compiling
--#  - we are NOT on debian
--#  - we are on a 64 bits system
--# reason is: amd64 ABI: http://www.x86-64.org/documentation/abi.pdf
--# For Debian with multiarch, use 'lib/${CMAKE_LIBRARY_ARCHITECTURE}' if
--# CMAKE_LIBRARY_ARCHITECTURE is set (which contains e.g. "i386-linux-gnu"
--# See http://wiki.debian.org/Multiarch
--if((CMAKE_SYSTEM_NAME MATCHES "Linux|kFreeBSD" OR CMAKE_SYSTEM_NAME STREQUAL "GNU")
--   AND NOT CMAKE_CROSSCOMPILING)
--  if (EXISTS "/etc/debian_version") # is this a debian system ?
--    if(CMAKE_LIBRARY_ARCHITECTURE)
--      set(_LIBDIR_DEFAULT "lib/${CMAKE_LIBRARY_ARCHITECTURE}")
--    endif()
--  else() # not debian, rely on CMAKE_SIZEOF_VOID_P:
--    if(NOT DEFINED CMAKE_SIZEOF_VOID_P)
--      message(AUTHOR_WARNING
--        "Unable to determine default LIB_INSTALL_LIBDIR directory because no target architecture is known. "
--        "Please enable at least one language before including KDEInstallDirs.")
--    else()
--      if("${CMAKE_SIZEOF_VOID_P}" EQUAL "8")
--        set(_LIBDIR_DEFAULT "lib64")
--      endif()
--    endif()
--  endif()
--endif()
- 
- set(_gnu_install_dirs_vars
-     BINDIR
diff --git a/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/series b/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/series
deleted file mode 100644
index b4569e50a5f7..000000000000
--- a/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/series
+++ /dev/null
@@ -1 +0,0 @@
-nix-lib-path.patch
diff --git a/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/setup-hook.sh b/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/setup-hook.sh
deleted file mode 100644
index 5363f4e30fdc..000000000000
--- a/pkgs/desktops/kde-5/frameworks/extra-cmake-modules/setup-hook.sh
+++ /dev/null
@@ -1,99 +0,0 @@
-_ecmSetXdgDirs() {
-    addToSearchPathOnce XDG_DATA_DIRS "$1/share"
-    addToSearchPathOnce XDG_CONFIG_DIRS "$1/etc/xdg"
-    addToSearchPathOnce RUNTIME_XDG_CONFIG_DIRS "$1/etc/xdg"
-}
-
-_ecmSharePaths=( \
-    "appdata" \
-    "applications" \
-    "config.cfg" \
-    "dbus-1" \
-    "desktop-directories" \
-    "doc" \
-    "icons" \
-    "kconf_update" \
-    "kservices5" \
-    "kservicetypes5" \
-    "knotifications5" \
-    "kxmlgui5" \
-    "locale" \
-    "mime" \
-    "polkit-1" \
-    "sounds" \
-    "templates" \
-    "wallpapers" \
-    )
-
-_ecmPropagateNative() {
-    for dir in ${_ecmSharePaths[@]}; do
-        if [ -d "$1/share/$dir" ]; then
-            propagateOnce propagatedNativeBuildInputs "$1"
-            if [ -z "$crossConfig" ]; then
-                propagateOnce propagatedUserEnvPkgs "$1"
-                addToSearchPathOnce RUNTIME_XDG_DATA_DIRS "$1/share"
-            fi
-            break
-        fi
-    done
-}
-
-envHooks+=(_ecmSetXdgDirs _ecmPropagate)
-
-_ecmPropagate() {
-    for dir in ${_ecmSharePaths[@]}; do
-        if [ -d "$1/share/$dir" ]; then
-            propagateOnce propagatedBuildInputs "$1"
-            propagateOnce propagatedUserEnvPkgs "$1"
-            addToSearchPathOnce RUNTIME_XDG_DATA_DIRS "$1/share"
-            break
-        fi
-    done
-}
-
-crossEnvHooks+=(_ecmPropagate)
-
-_ecmConfig() {
-    # Because we need to use absolute paths here, we must set *all* the paths.
-    cmakeFlags+=" -DKDE_INSTALL_EXECROOTDIR=${!outputBin}"
-    cmakeFlags+=" -DKDE_INSTALL_BINDIR=${!outputBin}/bin"
-    cmakeFlags+=" -DKDE_INSTALL_SBINDIR=${!outputBin}/sbin"
-    cmakeFlags+=" -DKDE_INSTALL_LIBDIR=${!outputLib}/lib"
-    cmakeFlags+=" -DKDE_INSTALL_LIBEXECDIR=${!outputLib}/lib/libexec"
-    cmakeFlags+=" -DKDE_INSTALL_CMAKEPACKAGEDIR=${!outputDev}/lib/cmake"
-    cmakeFlags+=" -DKDE_INSTALL_QTPLUGINDIR=${!outputLib}/lib/qt5/plugins"
-    cmakeFlags+=" -DKDE_INSTALL_PLUGINDIR=${!outputLib}/lib/qt5/plugins"
-    cmakeFlags+=" -DKDE_INSTALL_QTQUICKIMPORTSDIR=${!outputLib}/lib/qt5/imports"
-    cmakeFlags+=" -DKDE_INSTALL_QMLDIR=${!outputLib}/lib/qt5/qml"
-    cmakeFlags+=" -DKDE_INSTALL_INCLUDEDIR=${!outputInclude}/include"
-    cmakeFlags+=" -DKDE_INSTALL_LOCALSTATEDIR=/var"
-    cmakeFlags+=" -DKDE_INSTALL_DATAROOTDIR=${!outputLib}/share"
-    cmakeFlags+=" -DKDE_INSTALL_DATADIR=${!outputLib}/share"
-    cmakeFlags+=" -DKDE_INSTALL_DOCBUNDLEDIR=${!outputLib}/share/doc/HTML"
-    cmakeFlags+=" -DKDE_INSTALL_KCFGDIR=${!outputLib}/share/config.kcfg"
-    cmakeFlags+=" -DKDE_INSTALL_KCONFUPDATEDIR=${!outputLib}/share/kconf_update"
-    cmakeFlags+=" -DKDE_INSTALL_KSERVICES5DIR=${!outputLib}/share/kservices5"
-    cmakeFlags+=" -DKDE_INSTALL_KSERVICETYPES5DIR=${!outputLib}/share/kservicetypes5"
-    cmakeFlags+=" -DKDE_INSTALL_KXMLGUI5DIR=${!outputLib}/share/kxmlgui5"
-    cmakeFlags+=" -DKDE_INSTALL_KNOTIFY5RCDIR=${!outputLib}/share/knotifications5"
-    cmakeFlags+=" -DKDE_INSTALL_ICONDIR=${!outputLib}/share/icons"
-    cmakeFlags+=" -DKDE_INSTALL_LOCALEDIR=${!outputLib}/share/locale"
-    cmakeFlags+=" -DKDE_INSTALL_SOUNDDIR=${!outputLib}/share/sounds"
-    cmakeFlags+=" -DKDE_INSTALL_TEMPLATEDIR=${!outputLib}/share/templates"
-    cmakeFlags+=" -DKDE_INSTALL_WALLPAPERDIR=${!outputLib}/share/wallpapers"
-    cmakeFlags+=" -DKDE_INSTALL_APPDIR=${!outputLib}/share/applications"
-    cmakeFlags+=" -DKDE_INSTALL_DESKTOPDIR=${!outputLib}/share/desktop-directories"
-    cmakeFlags+=" -DKDE_INSTALL_MIMEDIR=${!outputLib}/share/mime/packages"
-    cmakeFlags+=" -DKDE_INSTALL_METAINFODIR=${!outputLib}/share/appdata"
-    cmakeFlags+=" -DKDE_INSTALL_MANDIR=${!outputLib}/share/man"
-    cmakeFlags+=" -DKDE_INSTALL_INFODIR=${!outputLib}/share/info"
-    cmakeFlags+=" -DKDE_INSTALL_DBUSDIR=${!outputLib}/share/dbus-1"
-    cmakeFlags+=" -DKDE_INSTALL_DBUSINTERFACEDIR=${!outputLib}/share/dbus-1/interfaces"
-    cmakeFlags+=" -DKDE_INSTALL_DBUSSERVICEDIR=${!outputLib}/share/dbus-1/services"
-    cmakeFlags+=" -DKDE_INSTALL_DBUSSYSTEMSERVICEDIR=${!outputLib}/share/dbus-1/system-services"
-    cmakeFlags+=" -DKDE_INSTALL_SYSCONFDIR=${!outputLib}/etc"
-    cmakeFlags+=" -DKDE_INSTALL_CONFDIR=${!outputLib}/etc/xdg"
-    cmakeFlags+=" -DKDE_INSTALL_AUTOSTARTDIR=${!outputLib}/etc/xdg/autostart"
-}
-
-preConfigureHooks+=(_ecmConfig)
diff --git a/pkgs/desktops/kde-5/frameworks/frameworkintegration.nix b/pkgs/desktops/kde-5/frameworks/frameworkintegration.nix
deleted file mode 100644
index ee1b188d4073..000000000000
--- a/pkgs/desktops/kde-5/frameworks/frameworkintegration.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kbookmarks, kcompletion
-, kconfig, kconfigwidgets, ki18n, kiconthemes, kio, knotifications
-, kwidgetsaddons, libXcursor, qtx11extras
-}:
-
-kdeFramework {
-  name = "frameworkintegration";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    kbookmarks kcompletion kconfig kconfigwidgets knotifications ki18n kio
-    kiconthemes kwidgetsaddons libXcursor qtx11extras
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kactivities-stats.nix b/pkgs/desktops/kde-5/frameworks/kactivities-stats.nix
deleted file mode 100644
index 0080c5c31649..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kactivities-stats.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules
-, boost, kactivities, kconfig }:
-
-kdeFramework {
-  name = "kactivities-stats";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ boost kactivities kconfig ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kactivities.nix b/pkgs/desktops/kde-5/frameworks/kactivities.nix
deleted file mode 100644
index 167c3f15bbda..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kactivities.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, boost, kcmutils, kconfig
-, kcoreaddons, kdbusaddons, kdeclarative, kglobalaccel, ki18n
-, kio, kservice, kwindowsystem, kxmlgui, qtdeclarative
-}:
-
-kdeFramework {
-  name = "kactivities";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    boost kcmutils kconfig kcoreaddons kdbusaddons kdeclarative kglobalaccel
-    ki18n kio kservice kwindowsystem kxmlgui qtdeclarative
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kapidox.nix b/pkgs/desktops/kde-5/frameworks/kapidox.nix
deleted file mode 100644
index f78a5ea08a49..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kapidox.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, python
-}:
-
-kdeFramework {
-  name = "kapidox";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules python ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/karchive.nix b/pkgs/desktops/kde-5/frameworks/karchive.nix
deleted file mode 100644
index bec44a6d6874..000000000000
--- a/pkgs/desktops/kde-5/frameworks/karchive.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-}:
-
-kdeFramework {
-  name = "karchive";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kauth/cmake-install-paths.patch b/pkgs/desktops/kde-5/frameworks/kauth/cmake-install-paths.patch
deleted file mode 100644
index c66f5ecd008f..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kauth/cmake-install-paths.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-Index: kauth-5.18.0/KF5AuthConfig.cmake.in
-===================================================================
---- kauth-5.18.0.orig/KF5AuthConfig.cmake.in
-+++ kauth-5.18.0/KF5AuthConfig.cmake.in
-@@ -4,9 +4,9 @@ set(KAUTH_STUB_FILES_DIR "@PACKAGE_KDE_I
- 
- set(KAUTH_BACKEND_NAME "@KAUTH_BACKEND_NAME@")
- set(KAUTH_HELPER_BACKEND_NAME "@KAUTH_HELPER_BACKEND_NAME@")
--set(KAUTH_POLICY_FILES_INSTALL_DIR "@KAUTH_POLICY_FILES_INSTALL_DIR@")
--set(KAUTH_HELPER_INSTALL_DIR "@KAUTH_HELPER_INSTALL_DIR@")
--set(KAUTH_HELPER_INSTALL_ABSOLUTE_DIR "@KAUTH_HELPER_INSTALL_ABSOLUTE_DIR@")
-+set(KAUTH_POLICY_FILES_INSTALL_DIR "${KDE_INSTALL_DATADIR}/polkit-1/actions")
-+set(KAUTH_HELPER_INSTALL_DIR "${KDE_INSTALL_LIBEXECDIR}")
-+set(KAUTH_HELPER_INSTALL_ABSOLUTE_DIR "${KDE_INSTALL_LIBEXECDIR}")
- 
- find_dependency(KF5CoreAddons "@KF5_DEP_VERSION@")
- 
diff --git a/pkgs/desktops/kde-5/frameworks/kauth/default.nix b/pkgs/desktops/kde-5/frameworks/kauth/default.nix
deleted file mode 100644
index 4bdba88bc3bb..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kauth/default.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ kdeFramework, lib, copyPathsToStore
-, extra-cmake-modules
-, kcoreaddons
-, polkit-qt
-}:
-
-kdeFramework {
-  name = "kauth";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ kcoreaddons polkit-qt ];
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kauth/series b/pkgs/desktops/kde-5/frameworks/kauth/series
deleted file mode 100644
index d2689425c387..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kauth/series
+++ /dev/null
@@ -1 +0,0 @@
-cmake-install-paths.patch
diff --git a/pkgs/desktops/kde-5/frameworks/kbookmarks.nix b/pkgs/desktops/kde-5/frameworks/kbookmarks.nix
deleted file mode 100644
index 7348e591d9cb..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kbookmarks.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, kcodecs
-, kconfig
-, kconfigwidgets
-, kcoreaddons
-, kiconthemes
-, kxmlgui
-}:
-
-kdeFramework {
-  name = "kbookmarks";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    kcodecs kconfig kconfigwidgets kcoreaddons kiconthemes kxmlgui
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kcmutils/0001-qdiriterator-follow-symlinks.patch b/pkgs/desktops/kde-5/frameworks/kcmutils/0001-qdiriterator-follow-symlinks.patch
deleted file mode 100644
index 0d861fa95012..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kcmutils/0001-qdiriterator-follow-symlinks.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From f14d2a275323a47104b33eb61c5b6910ae1a9f59 Mon Sep 17 00:00:00 2001
-From: Thomas Tuegel <ttuegel@gmail.com>
-Date: Wed, 14 Oct 2015 06:43:53 -0500
-Subject: [PATCH] qdiriterator follow symlinks
-
----
- src/kpluginselector.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/kpluginselector.cpp b/src/kpluginselector.cpp
-index 9c3431d..d6b1ee2 100644
---- a/src/kpluginselector.cpp
-+++ b/src/kpluginselector.cpp
-@@ -305,7 +305,7 @@ void KPluginSelector::addPlugins(const QString &componentName,
-     QStringList desktopFileNames;
-     const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, componentName + QStringLiteral("/kpartplugins"), QStandardPaths::LocateDirectory);
-     Q_FOREACH (const QString &dir, dirs) {
--        QDirIterator it(dir, QStringList() << QStringLiteral("*.desktop"), QDir::NoFilter, QDirIterator::Subdirectories);
-+      QDirIterator it(dir, QStringList() << QStringLiteral("*.desktop"), QDir::NoFilter, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
-         while (it.hasNext()) {
-             desktopFileNames.append(it.next());
-         }
--- 
-2.5.2
-
diff --git a/pkgs/desktops/kde-5/frameworks/kcmutils/default.nix b/pkgs/desktops/kde-5/frameworks/kcmutils/default.nix
deleted file mode 100644
index fdf55174548e..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kcmutils/default.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kconfigwidgets
-, kcoreaddons, kdeclarative, ki18n, kiconthemes, kitemviews
-, kpackage, kservice, kxmlgui
-}:
-
-kdeFramework {
-  name = "kcmutils";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    kconfigwidgets kcoreaddons kdeclarative ki18n kiconthemes kitemviews
-    kpackage kservice kxmlgui
-  ];
-  patches = [ ./0001-qdiriterator-follow-symlinks.patch ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kcodecs.nix b/pkgs/desktops/kde-5/frameworks/kcodecs.nix
deleted file mode 100644
index 53a69a69b69c..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kcodecs.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-}:
-
-kdeFramework {
-  name = "kcodecs";
-  nativeBuildInputs = [ extra-cmake-modules ];
-  meta = {
-    maintainers = [ lib.maintainers.ttuegel ];
-  };
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kcompletion.nix b/pkgs/desktops/kde-5/frameworks/kcompletion.nix
deleted file mode 100644
index 8c45bed25856..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kcompletion.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, kconfig
-, kwidgetsaddons
-}:
-
-kdeFramework {
-  name = "kcompletion";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ kconfig kwidgetsaddons ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kconfig.nix b/pkgs/desktops/kde-5/frameworks/kconfig.nix
deleted file mode 100644
index 154329d0e98e..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kconfig.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-}:
-
-kdeFramework {
-  name = "kconfig";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kconfigwidgets/0001-qdiriterator-follow-symlinks.patch b/pkgs/desktops/kde-5/frameworks/kconfigwidgets/0001-qdiriterator-follow-symlinks.patch
deleted file mode 100644
index 7a6c0ee90534..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kconfigwidgets/0001-qdiriterator-follow-symlinks.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 4f84780893d505b2d62a14633dd983baa8ec6e28 Mon Sep 17 00:00:00 2001
-From: Thomas Tuegel <ttuegel@gmail.com>
-Date: Wed, 14 Oct 2015 06:47:01 -0500
-Subject: [PATCH] qdiriterator follow symlinks
-
----
- src/khelpclient.cpp | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/src/khelpclient.cpp b/src/khelpclient.cpp
-index 53a331e..80fbb01 100644
---- a/src/khelpclient.cpp
-+++ b/src/khelpclient.cpp
-@@ -48,7 +48,7 @@ void KHelpClient::invokeHelp(const QString &anchor, const QString &_appname)
-     QString docPath;
-     const QStringList desktopDirs = QStandardPaths::standardLocations(QStandardPaths::ApplicationsLocation);
-     Q_FOREACH (const QString &dir, desktopDirs) {
--        QDirIterator it(dir, QStringList() << appname + QLatin1String(".desktop"), QDir::NoFilter, QDirIterator::Subdirectories);
-+        QDirIterator it(dir, QStringList() << appname + QLatin1String(".desktop"), QDir::NoFilter, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
-         while (it.hasNext()) {
-             const QString desktopPath(it.next());
-             KDesktopFile desktopFile(desktopPath);
--- 
-2.5.2
-
diff --git a/pkgs/desktops/kde-5/frameworks/kconfigwidgets/default.nix b/pkgs/desktops/kde-5/frameworks/kconfigwidgets/default.nix
deleted file mode 100644
index f507abe29916..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kconfigwidgets/default.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kauth, kcodecs, kconfig
-, kdoctools, kguiaddons, ki18n, kwidgetsaddons
-}:
-
-kdeFramework {
-  name = "kconfigwidgets";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  propagatedBuildInputs = [ kauth kconfig kcodecs kguiaddons ki18n kwidgetsaddons ];
-  patches = [ ./0001-qdiriterator-follow-symlinks.patch ];
-  postInstall = ''
-    moveToOutput "bin/preparetips5" "$dev"
-  '';
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kcoreaddons.nix b/pkgs/desktops/kde-5/frameworks/kcoreaddons.nix
deleted file mode 100644
index 94b4136df3da..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kcoreaddons.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, shared_mime_info
-}:
-
-kdeFramework {
-  name = "kcoreaddons";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ shared_mime_info ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kcrash.nix b/pkgs/desktops/kde-5/frameworks/kcrash.nix
deleted file mode 100644
index 133a81c60c18..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kcrash.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, kcoreaddons
-, kwindowsystem
-, qtx11extras
-}:
-
-kdeFramework {
-  name = "kcrash";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ kcoreaddons kwindowsystem qtx11extras ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kdbusaddons.nix b/pkgs/desktops/kde-5/frameworks/kdbusaddons.nix
deleted file mode 100644
index eadd645fb99a..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdbusaddons.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, qtx11extras
-}:
-
-kdeFramework {
-  name = "kdbusaddons";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ qtx11extras ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kdeclarative.nix b/pkgs/desktops/kde-5/frameworks/kdeclarative.nix
deleted file mode 100644
index 8db1b73c91a7..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdeclarative.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, epoxy, kconfig
-, kglobalaccel, kguiaddons, ki18n, kiconthemes, kio, kpackage
-, kwidgetsaddons, kwindowsystem, pkgconfig
-, qtdeclarative
-}:
-
-kdeFramework {
-  name = "kdeclarative";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    epoxy kconfig kglobalaccel kguiaddons ki18n kiconthemes kio kpackage
-    kwidgetsaddons kwindowsystem qtdeclarative
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kded.nix b/pkgs/desktops/kde-5/frameworks/kded.nix
deleted file mode 100644
index fd286accb9ff..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kded.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, kconfig
-, kcoreaddons
-, kcrash
-, kdbusaddons
-, kdoctools
-, kinit
-, kservice
-}:
-
-kdeFramework {
-  name = "kded";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  propagatedBuildInputs = [ kconfig kcoreaddons kcrash kdbusaddons kinit kservice ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kdelibs4support/default.nix b/pkgs/desktops/kde-5/frameworks/kdelibs4support/default.nix
deleted file mode 100644
index 1765ffa9a39f..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdelibs4support/default.nix
+++ /dev/null
@@ -1,31 +0,0 @@
-{ kdeFramework, lib, copyPathsToStore
-, extra-cmake-modules, docbook_xml_dtd_45, kauth
-, karchive, kcompletion, kconfig, kconfigwidgets, kcoreaddons
-, kcrash, kdbusaddons, kded, kdesignerplugin, kdoctools, kemoticons
-, kglobalaccel, kguiaddons, ki18n, kiconthemes, kio, kitemmodels
-, kinit, knotifications, kparts, kservice, ktextwidgets
-, kunitconversion, kwidgetsaddons, kwindowsystem, kxmlgui
-, networkmanager, qtsvg, qtx11extras, xlibs
-}:
-
-# TODO: debug docbook detection
-
-kdeFramework {
-  name = "kdelibs4support";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  outputs = [ "dev" "out" ];
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
-  setupHook = ./setup-hook.sh;
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  propagatedBuildInputs = [
-    kauth karchive kcompletion kconfig kconfigwidgets kcoreaddons kcrash
-    kdbusaddons kded kdesignerplugin kemoticons kglobalaccel kguiaddons ki18n
-    kio kiconthemes kitemmodels kinit knotifications kparts kservice
-    ktextwidgets kunitconversion kwidgetsaddons kwindowsystem kxmlgui
-    networkmanager qtsvg qtx11extras xlibs.libSM
-  ];
-  cmakeFlags = [
-    "-DDocBookXML4_DTD_DIR=${docbook_xml_dtd_45}/xml/dtd/docbook"
-    "-DDocBookXML4_DTD_VERSION=4.5"
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kdelibs4support/nix-kde-include-dir.patch b/pkgs/desktops/kde-5/frameworks/kdelibs4support/nix-kde-include-dir.patch
deleted file mode 100644
index eabb70254483..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdelibs4support/nix-kde-include-dir.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: kdelibs4support-5.18.0/src/kdecore/kstandarddirs.cpp
-===================================================================
---- kdelibs4support-5.18.0.orig/src/kdecore/kstandarddirs.cpp
-+++ kdelibs4support-5.18.0/src/kdecore/kstandarddirs.cpp
-@@ -292,7 +292,7 @@ static QString relativeInstallPath(const
-             return QFile::decodeName(ICON_INSTALL_DIR "/");
-         }
-         if (strcmp("include", type) == 0) {
--            return QFile::decodeName(INCLUDE_INSTALL_DIR "/");
-+            return QFile::decodeName(qgetenv("NIX_KDE_INCLUDE_DIR"));
-         }
-         break;
-     case 'l':
diff --git a/pkgs/desktops/kde-5/frameworks/kdelibs4support/series b/pkgs/desktops/kde-5/frameworks/kdelibs4support/series
deleted file mode 100644
index 9b08ab208774..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdelibs4support/series
+++ /dev/null
@@ -1 +0,0 @@
-nix-kde-include-dir.patch
diff --git a/pkgs/desktops/kde-5/frameworks/kdelibs4support/setup-hook.sh b/pkgs/desktops/kde-5/frameworks/kdelibs4support/setup-hook.sh
deleted file mode 100644
index 21ac2e83b5da..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdelibs4support/setup-hook.sh
+++ /dev/null
@@ -1 +0,0 @@
-export NIX_KDE_INCLUDE_DIR="@dev@/include/"  # trailing slash is required!
diff --git a/pkgs/desktops/kde-5/frameworks/kdesignerplugin.nix b/pkgs/desktops/kde-5/frameworks/kdesignerplugin.nix
deleted file mode 100644
index 8e17a1a60c8d..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdesignerplugin.nix
+++ /dev/null
@@ -1,26 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, kcompletion
-, kconfig
-, kconfigwidgets
-, kcoreaddons
-, kdoctools
-, kiconthemes
-, kio
-, kitemviews
-, kplotting
-, ktextwidgets
-, kwidgetsaddons
-, kxmlgui
-, sonnet
-}:
-
-kdeFramework {
-  name = "kdesignerplugin";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  propagatedBuildInputs = [
-    kcompletion kconfig kconfigwidgets kcoreaddons kiconthemes kio
-    kitemviews kplotting ktextwidgets kwidgetsaddons kxmlgui sonnet
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kdesu.nix b/pkgs/desktops/kde-5/frameworks/kdesu.nix
deleted file mode 100644
index fcccea9161f1..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdesu.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kcoreaddons, ki18n, kpty
-, kservice
-}:
-
-kdeFramework {
-  name = "kdesu";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ kcoreaddons ki18n kpty kservice ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kdnssd.nix b/pkgs/desktops/kde-5/frameworks/kdnssd.nix
deleted file mode 100644
index 8fda4e63e3a6..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdnssd.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, avahi
-}:
-
-kdeFramework {
-  name = "kdnssd";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ avahi ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kdoctools/default.nix b/pkgs/desktops/kde-5/frameworks/kdoctools/default.nix
deleted file mode 100644
index 99fc4c7d023c..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdoctools/default.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, docbook_xml_dtd_45
-, docbook5_xsl, karchive, ki18n, perl, perlPackages
-}:
-
-kdeFramework {
-  name = "kdoctools";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ karchive ki18n ];
-  propagatedNativeBuildInputs = [ perl perlPackages.URI ];
-  cmakeFlags = [
-    "-DDocBookXML4_DTD_DIR=${docbook_xml_dtd_45}/xml/dtd/docbook"
-    "-DDocBookXSL_DIR=${docbook5_xsl}/xml/xsl/docbook"
-  ];
-  patches = [ ./kdoctools-no-find-docbook-xml.patch ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kdoctools/kdoctools-no-find-docbook-xml.patch b/pkgs/desktops/kde-5/frameworks/kdoctools/kdoctools-no-find-docbook-xml.patch
deleted file mode 100644
index 4e3a33efab32..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdoctools/kdoctools-no-find-docbook-xml.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff --git a/CMakeLists.txt b/CMakeLists.txt
-index 5c4863c..f731775 100644
---- a/CMakeLists.txt
-+++ b/CMakeLists.txt
-@@ -46,7 +46,6 @@ set_package_properties(LibXml2 PROPERTIES
-                       )
- 
- 
--find_package(DocBookXML4 "4.5")
- 
- set_package_properties(DocBookXML4 PROPERTIES
-                        TYPE REQUIRED
diff --git a/pkgs/desktops/kde-5/frameworks/kdoctools/setup-hook.sh b/pkgs/desktops/kde-5/frameworks/kdoctools/setup-hook.sh
deleted file mode 100644
index 5cfffbd622d1..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kdoctools/setup-hook.sh
+++ /dev/null
@@ -1,5 +0,0 @@
-addXdgData() {
-    addToSearchPath XDG_DATA_DIRS "$1/share"
-}
-
-envHooks+=(addXdgData)
diff --git a/pkgs/desktops/kde-5/frameworks/kemoticons.nix b/pkgs/desktops/kde-5/frameworks/kemoticons.nix
deleted file mode 100644
index 1e31277172d7..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kemoticons.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, karchive
-, kconfig
-, kcoreaddons
-, kservice
-}:
-
-kdeFramework {
-  name = "kemoticons";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ karchive kconfig kcoreaddons kservice ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kfilemetadata/cmake-install-paths.patch b/pkgs/desktops/kde-5/frameworks/kfilemetadata/cmake-install-paths.patch
deleted file mode 100644
index 732f7b69c828..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kfilemetadata/cmake-install-paths.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: kfilemetadata-5.18.0/src/CMakeLists.txt
-===================================================================
---- kfilemetadata-5.18.0.orig/src/CMakeLists.txt
-+++ kfilemetadata-5.18.0/src/CMakeLists.txt
-@@ -49,7 +49,7 @@ install(TARGETS KF5FileMetaData EXPORT K
- 
- install(EXPORT KF5FileMetaDataTargets
-         NAMESPACE KF5::
--        DESTINATION ${LIB_INSTALL_DIR}/cmake/KF5FileMetaData
-+        DESTINATION ${KDE_INSTALL_FULL_CMAKEPACKAGEDIR}/KF5FileMetaData
-         FILE KF5FileMetaDataTargets.cmake)
- 
- install(FILES
diff --git a/pkgs/desktops/kde-5/frameworks/kfilemetadata/default.nix b/pkgs/desktops/kde-5/frameworks/kfilemetadata/default.nix
deleted file mode 100644
index bc7349e7453f..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kfilemetadata/default.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ kdeFramework, lib, copyPathsToStore, extra-cmake-modules
-, attr, ebook_tools, exiv2, ffmpeg, karchive, ki18n, poppler, qtbase, taglib
-}:
-
-kdeFramework {
-  name = "kfilemetadata";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    attr ebook_tools exiv2 ffmpeg karchive ki18n poppler qtbase taglib
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kfilemetadata/series b/pkgs/desktops/kde-5/frameworks/kfilemetadata/series
deleted file mode 100644
index d2689425c387..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kfilemetadata/series
+++ /dev/null
@@ -1 +0,0 @@
-cmake-install-paths.patch
diff --git a/pkgs/desktops/kde-5/frameworks/kglobalaccel.nix b/pkgs/desktops/kde-5/frameworks/kglobalaccel.nix
deleted file mode 100644
index 4743d0b8f1b0..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kglobalaccel.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, kconfig
-, kcoreaddons
-, kcrash
-, kdbusaddons
-, kwindowsystem
-, qtx11extras
-}:
-
-kdeFramework {
-  name = "kglobalaccel";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    kconfig kcoreaddons kcrash kdbusaddons kwindowsystem qtx11extras
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kguiaddons.nix b/pkgs/desktops/kde-5/frameworks/kguiaddons.nix
deleted file mode 100644
index 6ebfd1104f70..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kguiaddons.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, qtx11extras
-}:
-
-kdeFramework {
-  name = "kguiaddons";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ qtx11extras ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/khtml.nix b/pkgs/desktops/kde-5/frameworks/khtml.nix
deleted file mode 100644
index 99f6fe31e0d7..000000000000
--- a/pkgs/desktops/kde-5/frameworks/khtml.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, giflib, karchive
-, kcodecs, kglobalaccel, ki18n, kiconthemes, kio, kjs
-, knotifications, kparts, ktextwidgets, kwallet, kwidgetsaddons
-, kwindowsystem, kxmlgui, perl, phonon, qtx11extras, sonnet
-}:
-
-kdeFramework {
-  name = "khtml";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules perl ];
-  propagatedBuildInputs = [
-    giflib karchive kcodecs kglobalaccel ki18n kiconthemes kio kjs
-    knotifications kparts ktextwidgets kwallet kwidgetsaddons kwindowsystem
-    kxmlgui phonon qtx11extras sonnet
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/ki18n.nix b/pkgs/desktops/kde-5/frameworks/ki18n.nix
deleted file mode 100644
index 2698a97fd33f..000000000000
--- a/pkgs/desktops/kde-5/frameworks/ki18n.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, gettext
-, python
-, qtdeclarative
-, qtscript
-}:
-
-kdeFramework {
-  name = "ki18n";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ qtdeclarative qtscript ];
-  propagatedNativeBuildInputs = [ gettext python ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kiconthemes/default-theme-breeze.patch b/pkgs/desktops/kde-5/frameworks/kiconthemes/default-theme-breeze.patch
deleted file mode 100644
index f7cb0ea3aacc..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kiconthemes/default-theme-breeze.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: kiconthemes-5.17.0/src/kicontheme.cpp
-===================================================================
---- kiconthemes-5.17.0.orig/src/kicontheme.cpp
-+++ kiconthemes-5.17.0/src/kicontheme.cpp
-@@ -557,7 +557,7 @@ void KIconTheme::reconfigure()
- // static
- QString KIconTheme::defaultThemeName()
- {
--    return QStringLiteral("hicolor");
-+    return QStringLiteral("breeze");
- }
- 
- void KIconTheme::assignIconsToContextMenu(ContextMenus type,
diff --git a/pkgs/desktops/kde-5/frameworks/kiconthemes/default.nix b/pkgs/desktops/kde-5/frameworks/kiconthemes/default.nix
deleted file mode 100644
index 6102bb0d4b56..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kiconthemes/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ kdeFramework, lib, copyPathsToStore
-, extra-cmake-modules
-, karchive, kconfigwidgets, ki18n, breeze-icons, kitemviews, qtsvg
-}:
-
-kdeFramework {
-  name = "kiconthemes";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ breeze-icons kconfigwidgets karchive ki18n kitemviews qtsvg ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kiconthemes/series b/pkgs/desktops/kde-5/frameworks/kiconthemes/series
deleted file mode 100644
index ab5cc8a3edb2..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kiconthemes/series
+++ /dev/null
@@ -1 +0,0 @@
-default-theme-breeze.patch
diff --git a/pkgs/desktops/kde-5/frameworks/kidletime.nix b/pkgs/desktops/kde-5/frameworks/kidletime.nix
deleted file mode 100644
index 758260517e7d..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kidletime.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, qtbase
-, qtx11extras
-}:
-
-kdeFramework {
-  name = "kidletime";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ qtbase qtx11extras ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kimageformats.nix b/pkgs/desktops/kde-5/frameworks/kimageformats.nix
deleted file mode 100644
index fbc8d092f865..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kimageformats.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, ilmbase
-}:
-
-kdeFramework {
-  name = "kimageformats";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  NIX_CFLAGS_COMPILE = "-I${ilmbase}/include/OpenEXR";
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kinit/default.nix b/pkgs/desktops/kde-5/frameworks/kinit/default.nix
deleted file mode 100644
index b965f761e922..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kinit/default.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{
-  kdeFramework, lib, copyPathsToStore,
-  extra-cmake-modules, kdoctools,
-  kconfig, kcrash, ki18n, kio, kservice, kwindowsystem
-}:
-
-kdeFramework {
-  name = "kinit";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  propagatedBuildInputs = [
-    kconfig kcrash ki18n kio kservice kwindowsystem
-  ];
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kinit/kinit-libpath.patch b/pkgs/desktops/kde-5/frameworks/kinit/kinit-libpath.patch
deleted file mode 100644
index a5c76fca2481..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kinit/kinit-libpath.patch
+++ /dev/null
@@ -1,34 +0,0 @@
-Index: kinit-5.24.0/src/kdeinit/kinit.cpp
-===================================================================
---- kinit-5.24.0.orig/src/kdeinit/kinit.cpp
-+++ kinit-5.24.0/src/kdeinit/kinit.cpp
-@@ -672,19 +672,16 @@ static pid_t launch(int argc, const char
- 
-         if (!libpath.isEmpty()) {
-             if (libpath_relative) {
--                // NB: Because Qt makes the actual dlopen() call, the
--                //     RUNPATH of kdeinit is *not* respected - see
--                //     https://sourceware.org/bugzilla/show_bug.cgi?id=13945
--                //     - so we try hacking it in ourselves
--                QString install_lib_dir = QFile::decodeName(
--                        CMAKE_INSTALL_PREFIX "/" LIB_INSTALL_DIR "/");
--                QString orig_libpath = libpath;
--                libpath = install_lib_dir + libpath;
--                l.setFileName(libpath);
--                if (!l.load()) {
--                    libpath = orig_libpath;
--                    l.setFileName(libpath);
--                    l.load();
-+                // Try to load the library relative to the active profiles.
-+                QByteArrayList profiles = qgetenv("NIX_PROFILES").split(' ');
-+                // Reverse the profile list.
-+                std::reverse(profiles.begin(), profiles.end());
-+                const QString libdir = QString::fromLatin1("/lib/");
-+                Q_FOREACH (const QByteArray &profile, profiles) {
-+                    if (!profile.isEmpty()) {
-+                        l.setFileName(QFile::decodeName(profile) + libdir + libpath);
-+                        if (l.load()) break;
-+                    }
-                 }
-             } else {
-                 l.load();
diff --git a/pkgs/desktops/kde-5/frameworks/kinit/series b/pkgs/desktops/kde-5/frameworks/kinit/series
deleted file mode 100644
index 576b8a935bf1..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kinit/series
+++ /dev/null
@@ -1,2 +0,0 @@
-kinit-libpath.patch
-start_kdeinit-path.patch
diff --git a/pkgs/desktops/kde-5/frameworks/kinit/start_kdeinit-path.patch b/pkgs/desktops/kde-5/frameworks/kinit/start_kdeinit-path.patch
deleted file mode 100644
index fbecf9433f69..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kinit/start_kdeinit-path.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: kinit-5.24.0/src/start_kdeinit/start_kdeinit_wrapper.c
-===================================================================
---- kinit-5.24.0.orig/src/start_kdeinit/start_kdeinit_wrapper.c
-+++ kinit-5.24.0/src/start_kdeinit/start_kdeinit_wrapper.c
-@@ -23,7 +23,7 @@
- #include <string.h>
- #include <unistd.h>
- 
--#define EXECUTE CMAKE_INSTALL_FULL_LIBEXECDIR_KF5 "/start_kdeinit"
-+#define EXECUTE "/var/setuid-wrappers/start_kdeinit"
- 
- #if KDEINIT_OOM_PROTECT
- 
diff --git a/pkgs/desktops/kde-5/frameworks/kio/default.nix b/pkgs/desktops/kde-5/frameworks/kio/default.nix
deleted file mode 100644
index cb67c8459034..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kio/default.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ kdeFramework, lib, copyPathsToStore
-, extra-cmake-modules, acl, karchive
-, kbookmarks, kcompletion, kconfig, kconfigwidgets, kcoreaddons
-, kdbusaddons, kdoctools, ki18n, kiconthemes, kitemviews
-, kjobwidgets, knotifications, kservice, ktextwidgets, kwallet
-, kwidgetsaddons, kwindowsystem, kxmlgui
-, qtscript, qtx11extras, solid
-}:
-
-kdeFramework {
-  name = "kio";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  propagatedBuildInputs = [
-    acl karchive kbookmarks kcompletion kconfig kconfigwidgets kcoreaddons
-    kdbusaddons ki18n kiconthemes kitemviews kjobwidgets knotifications kservice
-    ktextwidgets kwallet kwidgetsaddons kwindowsystem kxmlgui solid qtscript
-    qtx11extras
-  ];
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kio/samba-search-path.patch b/pkgs/desktops/kde-5/frameworks/kio/samba-search-path.patch
deleted file mode 100644
index c9ad46b41bb7..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kio/samba-search-path.patch
+++ /dev/null
@@ -1,28 +0,0 @@
-Index: kio-5.17.0/src/core/ksambashare.cpp
-===================================================================
---- kio-5.17.0.orig/src/core/ksambashare.cpp
-+++ kio-5.17.0/src/core/ksambashare.cpp
-@@ -67,13 +67,18 @@ KSambaSharePrivate::~KSambaSharePrivate(
- 
- bool KSambaSharePrivate::isSambaInstalled()
- {
--    if (QFile::exists(QStringLiteral("/usr/sbin/smbd"))
--            || QFile::exists(QStringLiteral("/usr/local/sbin/smbd"))) {
--        return true;
-+    const QByteArray pathEnv = qgetenv("PATH");
-+    if (!pathEnv.isEmpty()) {
-+        QLatin1Char pathSep(':');
-+        QStringList paths = QFile::decodeName(pathEnv).split(pathSep, QString::SkipEmptyParts);
-+        for (QStringList::iterator it = paths.begin(); it != paths.end(); ++it) {
-+            it->append("/smbd");
-+            if (QFile::exists(*it)) {
-+                return true;
-+            }
-+        }
-     }
- 
--    //qDebug() << "Samba is not installed!";
--
-     return false;
- }
- 
diff --git a/pkgs/desktops/kde-5/frameworks/kio/series b/pkgs/desktops/kde-5/frameworks/kio/series
deleted file mode 100644
index 77ca15450047..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kio/series
+++ /dev/null
@@ -1 +0,0 @@
-samba-search-path.patch
diff --git a/pkgs/desktops/kde-5/frameworks/kitemmodels.nix b/pkgs/desktops/kde-5/frameworks/kitemmodels.nix
deleted file mode 100644
index 7dff10b7fe06..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kitemmodels.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-}:
-
-kdeFramework {
-  name = "kitemmodels";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kitemviews.nix b/pkgs/desktops/kde-5/frameworks/kitemviews.nix
deleted file mode 100644
index 77f4b6621604..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kitemviews.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-}:
-
-kdeFramework {
-  name = "kitemviews";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kjobwidgets.nix b/pkgs/desktops/kde-5/frameworks/kjobwidgets.nix
deleted file mode 100644
index 2692458b8be7..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kjobwidgets.nix
+++ /dev/null
@@ -1,13 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, kcoreaddons
-, kwidgetsaddons
-, qtx11extras
-}:
-
-kdeFramework {
-  name = "kjobwidgets";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ kcoreaddons kwidgetsaddons qtx11extras ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kjs.nix b/pkgs/desktops/kde-5/frameworks/kjs.nix
deleted file mode 100644
index abdc15ce8df6..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kjs.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, kdoctools
-}:
-
-kdeFramework {
-  name = "kjs";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kjsembed.nix b/pkgs/desktops/kde-5/frameworks/kjsembed.nix
deleted file mode 100644
index 95bc02422f1b..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kjsembed.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kdoctools, ki18n, kjs
-, qtsvg
-}:
-
-kdeFramework {
-  name = "kjsembed";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  propagatedBuildInputs = [ ki18n kjs qtsvg ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kmediaplayer.nix b/pkgs/desktops/kde-5/frameworks/kmediaplayer.nix
deleted file mode 100644
index 93a6b450f762..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kmediaplayer.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, kparts
-, kxmlgui
-}:
-
-kdeFramework {
-  name = "kmediaplayer";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ kparts kxmlgui ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/knewstuff.nix b/pkgs/desktops/kde-5/frameworks/knewstuff.nix
deleted file mode 100644
index 002418c65ad0..000000000000
--- a/pkgs/desktops/kde-5/frameworks/knewstuff.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, attica, karchive
-, kcompletion, kconfig, kcoreaddons, ki18n, kiconthemes, kio
-, kitemviews, kservice, ktextwidgets, kwidgetsaddons, kxmlgui
-}:
-
-kdeFramework {
-  name = "knewstuff";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    attica karchive kcompletion kconfig kcoreaddons ki18n kiconthemes kio
-    kitemviews kservice ktextwidgets kwidgetsaddons kxmlgui
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/knotifications.nix b/pkgs/desktops/kde-5/frameworks/knotifications.nix
deleted file mode 100644
index 7196832495f3..000000000000
--- a/pkgs/desktops/kde-5/frameworks/knotifications.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, kcodecs, kconfig, kcoreaddons, kwindowsystem
-, libdbusmenu
-, phonon
-, qtx11extras
-}:
-
-kdeFramework {
-  name = "knotifications";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    kcodecs kconfig kcoreaddons kwindowsystem libdbusmenu phonon qtx11extras
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/knotifyconfig.nix b/pkgs/desktops/kde-5/frameworks/knotifyconfig.nix
deleted file mode 100644
index 0e357aecb999..000000000000
--- a/pkgs/desktops/kde-5/frameworks/knotifyconfig.nix
+++ /dev/null
@@ -1,10 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kcompletion, kconfig
-, ki18n, kio, phonon
-}:
-
-kdeFramework {
-  name = "knotifyconfig";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ kcompletion kconfig ki18n kio phonon ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kpackage/allow-external-paths.patch b/pkgs/desktops/kde-5/frameworks/kpackage/allow-external-paths.patch
deleted file mode 100644
index e9d744448148..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kpackage/allow-external-paths.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: kpackage-5.18.0/src/kpackage/package.cpp
-===================================================================
---- kpackage-5.18.0.orig/src/kpackage/package.cpp
-+++ kpackage-5.18.0/src/kpackage/package.cpp
-@@ -808,7 +808,7 @@ PackagePrivate::PackagePrivate()
-     : QSharedData(),
-       fallbackPackage(0),
-       metadata(0),
--      externalPaths(false),
-+      externalPaths(true),
-       valid(false),
-       checkedValid(false)
- {
diff --git a/pkgs/desktops/kde-5/frameworks/kpackage/default.nix b/pkgs/desktops/kde-5/frameworks/kpackage/default.nix
deleted file mode 100644
index a39a672574bb..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kpackage/default.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kdeFramework, lib, copyPathsToStore
-, extra-cmake-modules
-, karchive
-, kconfig
-, kcoreaddons
-, kdoctools
-, ki18n
-}:
-
-kdeFramework {
-  name = "kpackage";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  propagatedBuildInputs = [ karchive kconfig kcoreaddons ki18n ];
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kpackage/qdiriterator-follow-symlinks.patch b/pkgs/desktops/kde-5/frameworks/kpackage/qdiriterator-follow-symlinks.patch
deleted file mode 100644
index ddbf17d00064..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kpackage/qdiriterator-follow-symlinks.patch
+++ /dev/null
@@ -1,26 +0,0 @@
-Index: kpackage-5.18.0/src/kpackage/packageloader.cpp
-===================================================================
---- kpackage-5.18.0.orig/src/kpackage/packageloader.cpp
-+++ kpackage-5.18.0/src/kpackage/packageloader.cpp
-@@ -241,7 +241,7 @@ QList<KPluginMetaData> PackageLoader::li
-         } else {
-             //qDebug() << "Not cached";
-             // If there's no cache file, fall back to listing the directory
--            const QDirIterator::IteratorFlags flags = QDirIterator::Subdirectories;
-+            const QDirIterator::IteratorFlags flags = QDirIterator::Subdirectories | QDirIterator::FollowSymlinks;
-             const QStringList nameFilters = QStringList(QStringLiteral("metadata.desktop")) << QStringLiteral("metadata.json");
- 
-             QDirIterator it(plugindir, nameFilters, QDir::Files, flags);
-Index: kpackage-5.18.0/src/kpackage/private/packagejobthread.cpp
-===================================================================
---- kpackage-5.18.0.orig/src/kpackage/private/packagejobthread.cpp
-+++ kpackage-5.18.0/src/kpackage/private/packagejobthread.cpp
-@@ -146,7 +146,7 @@ bool indexDirectory(const QString& dir,
- 
-     QJsonArray plugins;
- 
--    QDirIterator it(dir, *metaDataFiles, QDir::Files, QDirIterator::Subdirectories);
-+    QDirIterator it(dir, *metaDataFiles, QDir::Files, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
-     while (it.hasNext()) {
-         it.next();
-         const QString path = it.fileInfo().absoluteFilePath();
diff --git a/pkgs/desktops/kde-5/frameworks/kpackage/series b/pkgs/desktops/kde-5/frameworks/kpackage/series
deleted file mode 100644
index 9b7f076efc70..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kpackage/series
+++ /dev/null
@@ -1,2 +0,0 @@
-allow-external-paths.patch
-qdiriterator-follow-symlinks.patch
diff --git a/pkgs/desktops/kde-5/frameworks/kparts.nix b/pkgs/desktops/kde-5/frameworks/kparts.nix
deleted file mode 100644
index ad6ea2dbc305..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kparts.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kconfig, kcoreaddons
-, ki18n, kiconthemes, kio, kjobwidgets, knotifications, kservice
-, ktextwidgets, kwidgetsaddons, kxmlgui
-}:
-
-kdeFramework {
-  name = "kparts";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    kconfig kcoreaddons ki18n kiconthemes kio kjobwidgets knotifications
-    kservice ktextwidgets kwidgetsaddons kxmlgui
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kpeople.nix b/pkgs/desktops/kde-5/frameworks/kpeople.nix
deleted file mode 100644
index 6acb5e2eed51..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kpeople.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kcoreaddons, ki18n
-, kitemviews, kservice, kwidgetsaddons, qtdeclarative
-}:
-
-kdeFramework {
-  name = "kpeople";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    kcoreaddons ki18n kitemviews kservice kwidgetsaddons qtdeclarative
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kplotting.nix b/pkgs/desktops/kde-5/frameworks/kplotting.nix
deleted file mode 100644
index 601f1778db7d..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kplotting.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-}:
-
-kdeFramework {
-  name = "kplotting";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kpty.nix b/pkgs/desktops/kde-5/frameworks/kpty.nix
deleted file mode 100644
index 8bdaacb85f82..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kpty.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kcoreaddons, ki18n }:
-
-kdeFramework {
-  name = "kpty";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ kcoreaddons ki18n ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kross.nix b/pkgs/desktops/kde-5/frameworks/kross.nix
deleted file mode 100644
index 0e66d95b5cce..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kross.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kcompletion, kcoreaddons
-, kdoctools, ki18n, kiconthemes, kio, kparts, kwidgetsaddons
-, kxmlgui, qtscript
-}:
-
-kdeFramework {
-  name = "kross";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  propagatedBuildInputs = [
-    kcompletion kcoreaddons ki18n kiconthemes kio kparts kwidgetsaddons kxmlgui
-    qtscript
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/krunner.nix b/pkgs/desktops/kde-5/frameworks/krunner.nix
deleted file mode 100644
index ec9ab7abe9f9..000000000000
--- a/pkgs/desktops/kde-5/frameworks/krunner.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kconfig, kcoreaddons
-, ki18n, kio, kservice, plasma-framework, solid
-, threadweaver
-}:
-
-kdeFramework {
-  name = "krunner";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    kconfig kcoreaddons ki18n kio kservice plasma-framework solid
-    threadweaver
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kservice/default.nix b/pkgs/desktops/kde-5/frameworks/kservice/default.nix
deleted file mode 100644
index 484be4087943..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kservice/default.nix
+++ /dev/null
@@ -1,12 +0,0 @@
-{ kdeFramework, lib, copyPathsToStore, extra-cmake-modules, kconfig, kcoreaddons
-, kcrash, kdbusaddons, kdoctools, ki18n, kwindowsystem
-}:
-
-kdeFramework {
-  name = "kservice";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  propagatedNativeBuildInputs = [ extra-cmake-modules ];
-  nativeBuildInputs = [ kdoctools ];
-  propagatedBuildInputs = [ kconfig kcoreaddons kcrash kdbusaddons ki18n kwindowsystem ];
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kservice/no-canonicalize-path.patch b/pkgs/desktops/kde-5/frameworks/kservice/no-canonicalize-path.patch
deleted file mode 100644
index cf98ffb9067f..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kservice/no-canonicalize-path.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: kservice-5.21.0/src/sycoca/vfolder_menu.cpp
-===================================================================
---- kservice-5.21.0.orig/src/sycoca/vfolder_menu.cpp
-+++ kservice-5.21.0/src/sycoca/vfolder_menu.cpp
-@@ -415,7 +415,7 @@ VFolderMenu::absoluteDir(const QString &
-     }
- 
-     if (!relative) {
--        QString resolved = QDir(dir).canonicalPath();
-+      QString resolved = QDir::cleanPath(dir);
-         if (!resolved.isEmpty()) {
-             dir = resolved;
-         }
diff --git a/pkgs/desktops/kde-5/frameworks/kservice/qdiriterator-follow-symlinks.patch b/pkgs/desktops/kde-5/frameworks/kservice/qdiriterator-follow-symlinks.patch
deleted file mode 100644
index cbe13b709508..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kservice/qdiriterator-follow-symlinks.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-Index: kservice-5.21.0/src/sycoca/kbuildsycoca.cpp
-===================================================================
---- kservice-5.21.0.orig/src/sycoca/kbuildsycoca.cpp
-+++ kservice-5.21.0/src/sycoca/kbuildsycoca.cpp
-@@ -203,7 +203,7 @@ bool KBuildSycoca::build()
-         QSet<QString> relFiles;
-         const QStringList dirs = QStandardPaths::locateAll(QStandardPaths::GenericDataLocation, m_resourceSubdir, QStandardPaths::LocateDirectory);
-         Q_FOREACH (const QString &dir, dirs) {
--            QDirIterator it(dir, QDirIterator::Subdirectories);
-+            QDirIterator it(dir, QDirIterator::Subdirectories | QDirIterator::FollowSymlinks);
-             while (it.hasNext()) {
-                 const QString filePath = it.next();
-                 Q_ASSERT(filePath.startsWith(dir)); // due to the line below...
diff --git a/pkgs/desktops/kde-5/frameworks/kservice/series b/pkgs/desktops/kde-5/frameworks/kservice/series
deleted file mode 100644
index 3ce22dbd35a0..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kservice/series
+++ /dev/null
@@ -1,2 +0,0 @@
-qdiriterator-follow-symlinks.patch
-no-canonicalize-path.patch
\ No newline at end of file
diff --git a/pkgs/desktops/kde-5/frameworks/ktexteditor/default.nix b/pkgs/desktops/kde-5/frameworks/ktexteditor/default.nix
deleted file mode 100644
index a35af2e7fbfd..000000000000
--- a/pkgs/desktops/kde-5/frameworks/ktexteditor/default.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ kdeFramework, lib, copyPathsToStore
-, extra-cmake-modules, perl
-, karchive, kconfig, kguiaddons, kiconthemes, kparts
-, libgit2
-, qtscript, qtxmlpatterns
-, ki18n, kio, sonnet
-}:
-
-kdeFramework {
-  name = "ktexteditor";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules perl ];
-  propagatedBuildInputs = [
-    karchive kconfig kguiaddons ki18n kiconthemes kio kparts libgit2 qtscript
-    qtxmlpatterns sonnet
-  ];
-  patches = copyPathsToStore (lib.readPathsFromFile ./. ./series);
-}
diff --git a/pkgs/desktops/kde-5/frameworks/ktexteditor/no-qcoreapplication.patch b/pkgs/desktops/kde-5/frameworks/ktexteditor/no-qcoreapplication.patch
deleted file mode 100644
index 19ab1e1e5513..000000000000
--- a/pkgs/desktops/kde-5/frameworks/ktexteditor/no-qcoreapplication.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-Index: ktexteditor-5.18.0/src/syntax/data/katehighlightingindexer.cpp
-===================================================================
---- ktexteditor-5.18.0.orig/src/syntax/data/katehighlightingindexer.cpp
-+++ ktexteditor-5.18.0/src/syntax/data/katehighlightingindexer.cpp
-@@ -55,19 +55,16 @@ QStringList readListing(const QString &f
- 
- int main(int argc, char *argv[])
- {
--    // get app instance
--    QCoreApplication app(argc, argv);
--
-     // ensure enough arguments are passed
--    if (app.arguments().size() < 3)
-+    if (argc < 3)
-         return 1;
- 
-     // open schema
-     QXmlSchema schema;
--    if (!schema.load(QUrl::fromLocalFile(app.arguments().at(2))))
-+    if (!schema.load(QUrl::fromLocalFile(QString::fromLocal8Bit(argv[2]))))
-         return 2;
- 
--    const QString hlFilenamesListing = app.arguments().value(3);
-+    const QString hlFilenamesListing = QString::fromLocal8Bit(argv[3]);
-     if (hlFilenamesListing.isEmpty()) {
-         return 1;
-     }
-@@ -152,7 +149,7 @@ int main(int argc, char *argv[])
-         return anyError;
- 
-     // create outfile, after all has worked!
--    QFile outFile(app.arguments().at(1));
-+    QFile outFile(QString::fromLocal8Bit(argv[1]));
-     if (!outFile.open(QIODevice::WriteOnly | QIODevice::Truncate))
-         return 7;
- 
diff --git a/pkgs/desktops/kde-5/frameworks/ktexteditor/series b/pkgs/desktops/kde-5/frameworks/ktexteditor/series
deleted file mode 100644
index 46cd23829a2f..000000000000
--- a/pkgs/desktops/kde-5/frameworks/ktexteditor/series
+++ /dev/null
@@ -1 +0,0 @@
-no-qcoreapplication.patch
diff --git a/pkgs/desktops/kde-5/frameworks/ktextwidgets.nix b/pkgs/desktops/kde-5/frameworks/ktextwidgets.nix
deleted file mode 100644
index 25954c603971..000000000000
--- a/pkgs/desktops/kde-5/frameworks/ktextwidgets.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kcompletion, kconfig
-, kconfigwidgets, ki18n, kiconthemes, kservice, kwindowsystem
-, sonnet
-}:
-
-kdeFramework {
-  name = "ktextwidgets";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    kcompletion kconfig kconfigwidgets ki18n kiconthemes kservice kwindowsystem
-    sonnet
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kunitconversion.nix b/pkgs/desktops/kde-5/frameworks/kunitconversion.nix
deleted file mode 100644
index c04ded722aa4..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kunitconversion.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, ki18n }:
-
-kdeFramework {
-  name = "kunitconversion";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ ki18n ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kwallet.nix b/pkgs/desktops/kde-5/frameworks/kwallet.nix
deleted file mode 100644
index f02c6138df77..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kwallet.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kconfig, kconfigwidgets
-, kcoreaddons , kdbusaddons, kdoctools, ki18n, kiconthemes
-, knotifications , kservice, kwidgetsaddons, kwindowsystem, libgcrypt
-}:
-
-kdeFramework {
-  name = "kwallet";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  propagatedBuildInputs = [
-    kconfig kconfigwidgets kcoreaddons kdbusaddons ki18n kiconthemes
-    knotifications kservice kwidgetsaddons kwindowsystem libgcrypt
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kwayland.nix b/pkgs/desktops/kde-5/frameworks/kwayland.nix
deleted file mode 100644
index db3328413082..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kwayland.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework
-, extra-cmake-modules
-, wayland
-}:
-
-kdeFramework {
-  name = "kwayland";
-  nativeBuildInputs = [
-    extra-cmake-modules
-  ];
-  propagatedBuildInputs = [
-    wayland
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kwidgetsaddons.nix b/pkgs/desktops/kde-5/frameworks/kwidgetsaddons.nix
deleted file mode 100644
index 7f2b35d8f7b5..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kwidgetsaddons.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-}:
-
-kdeFramework {
-  name = "kwidgetsaddons";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kwindowsystem.nix b/pkgs/desktops/kde-5/frameworks/kwindowsystem.nix
deleted file mode 100644
index 6acab52d1353..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kwindowsystem.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, qtx11extras
-}:
-
-kdeFramework {
-  name = "kwindowsystem";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ qtx11extras ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kxmlgui.nix b/pkgs/desktops/kde-5/frameworks/kxmlgui.nix
deleted file mode 100644
index ea800bf58ae0..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kxmlgui.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, attica, kconfig
-, kconfigwidgets, kglobalaccel, ki18n, kiconthemes, kitemviews
-, ktextwidgets, kwindowsystem, sonnet
-}:
-
-kdeFramework {
-  name = "kxmlgui";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [
-    attica kconfig kconfigwidgets kglobalaccel ki18n kiconthemes kitemviews
-    ktextwidgets kwindowsystem sonnet
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/kxmlrpcclient.nix b/pkgs/desktops/kde-5/frameworks/kxmlrpcclient.nix
deleted file mode 100644
index f20f4a223945..000000000000
--- a/pkgs/desktops/kde-5/frameworks/kxmlrpcclient.nix
+++ /dev/null
@@ -1,8 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, ki18n, kio }:
-
-kdeFramework {
-  name = "kxmlrpcclient";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ ki18n kio ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/modemmanager-qt.nix b/pkgs/desktops/kde-5/frameworks/modemmanager-qt.nix
deleted file mode 100644
index e03254a71edd..000000000000
--- a/pkgs/desktops/kde-5/frameworks/modemmanager-qt.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, modemmanager
-}:
-
-kdeFramework {
-  name = "modemmanager-qt";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ modemmanager ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/networkmanager-qt.nix b/pkgs/desktops/kde-5/frameworks/networkmanager-qt.nix
deleted file mode 100644
index 0515509a77c5..000000000000
--- a/pkgs/desktops/kde-5/frameworks/networkmanager-qt.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, networkmanager
-}:
-
-kdeFramework {
-  name = "networkmanager-qt";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ networkmanager ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/oxygen-icons5.nix b/pkgs/desktops/kde-5/frameworks/oxygen-icons5.nix
deleted file mode 100644
index 0b5c75b960d3..000000000000
--- a/pkgs/desktops/kde-5/frameworks/oxygen-icons5.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kdeFramework
-, lib
-, extra-cmake-modules
-}:
-
-kdeFramework {
-  name = "oxygen-icons5";
-  meta = {
-    license = lib.licenses.lgpl3Plus;
-    maintainers = [ lib.maintainers.ttuegel ];
-  };
-  outputs = [ "out" ];
-  nativeBuildInputs = [ extra-cmake-modules ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/plasma-framework.nix b/pkgs/desktops/kde-5/frameworks/plasma-framework.nix
deleted file mode 100644
index a41381486538..000000000000
--- a/pkgs/desktops/kde-5/frameworks/plasma-framework.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kdeFramework, lib, extra-cmake-modules, kactivities, karchive
-, kconfig, kconfigwidgets, kcoreaddons, kdbusaddons, kdeclarative
-, kdoctools, kglobalaccel, kguiaddons, ki18n, kiconthemes, kio
-, knotifications, kpackage, kservice, kwindowsystem, kxmlgui
-, qtscript, qtx11extras
-}:
-
-kdeFramework {
-  name = "plasma-framework";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
-  propagatedBuildInputs = [
-    kactivities karchive kconfig kconfigwidgets kcoreaddons kdbusaddons
-    kdeclarative kglobalaccel kguiaddons ki18n kiconthemes kio knotifications
-    kpackage kservice kwindowsystem kxmlgui qtscript qtx11extras
-  ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/solid.nix b/pkgs/desktops/kde-5/frameworks/solid.nix
deleted file mode 100644
index c4f580fe1c2d..000000000000
--- a/pkgs/desktops/kde-5/frameworks/solid.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, qtdeclarative
-}:
-
-kdeFramework {
-  name = "solid";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  propagatedBuildInputs = [ qtdeclarative ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/sonnet.nix b/pkgs/desktops/kde-5/frameworks/sonnet.nix
deleted file mode 100644
index 28c24302abc4..000000000000
--- a/pkgs/desktops/kde-5/frameworks/sonnet.nix
+++ /dev/null
@@ -1,11 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-, hunspell
-}:
-
-kdeFramework {
-  name = "sonnet";
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-  nativeBuildInputs = [ extra-cmake-modules ];
-  buildInputs = [ hunspell ];
-}
diff --git a/pkgs/desktops/kde-5/frameworks/srcs.nix b/pkgs/desktops/kde-5/frameworks/srcs.nix
deleted file mode 100644
index 5c48ece1e99e..000000000000
--- a/pkgs/desktops/kde-5/frameworks/srcs.nix
+++ /dev/null
@@ -1,581 +0,0 @@
-# DO NOT EDIT! This file is generated automatically by fetchsrcs.sh
-{ fetchurl, mirror }:
-
-{
-  attica = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/attica-5.24.0.tar.xz";
-      sha256 = "0d368gmds7m7k5pnn625wqsij38cvxk1gkm4zv24phnk9f67v7cw";
-      name = "attica-5.24.0.tar.xz";
-    };
-  };
-  baloo = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/baloo-5.24.0.tar.xz";
-      sha256 = "1ayfdg6j9lvas17ryjdv4a0kaj6vw3bxfy2x9nadl0gkc9pak4nh";
-      name = "baloo-5.24.0.tar.xz";
-    };
-  };
-  bluez-qt = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/bluez-qt-5.24.0.tar.xz";
-      sha256 = "0gy0m7lcwwklf021l5i3v7j0cl7qz7cgvzrwpj87ix3kyw5xs80z";
-      name = "bluez-qt-5.24.0.tar.xz";
-    };
-  };
-  breeze-icons = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/breeze-icons-5.24.0.tar.xz";
-      sha256 = "1dh7bijx99sdb3vn6394wmm5cq0fvvmz8h17sx4hakmbga849cx2";
-      name = "breeze-icons-5.24.0.tar.xz";
-    };
-  };
-  extra-cmake-modules = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/extra-cmake-modules-5.24.0.tar.xz";
-      sha256 = "01m12ml529pwr2sal951r5z6yb1rwbpid1y4k14nlk3xqgmdakwa";
-      name = "extra-cmake-modules-5.24.0.tar.xz";
-    };
-  };
-  frameworkintegration = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/frameworkintegration-5.24.0.tar.xz";
-      sha256 = "0brqgq05m06d98qqvyh30727f5z7hlzxgqysfhfvqzcf3x7f6yzj";
-      name = "frameworkintegration-5.24.0.tar.xz";
-    };
-  };
-  kactivities = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kactivities-5.24.0.tar.xz";
-      sha256 = "0s8g43zk6h35bq1am1nnhj0qvmhd6kz42gs8l7ybga0367jghzhf";
-      name = "kactivities-5.24.0.tar.xz";
-    };
-  };
-  kactivities-stats = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kactivities-stats-5.24.0.tar.xz";
-      sha256 = "1z3xvpifxbd05b2xaxxyiypcpid7jgjb1qpwiyjj1gnfp4rjmzpc";
-      name = "kactivities-stats-5.24.0.tar.xz";
-    };
-  };
-  kapidox = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kapidox-5.24.0.tar.xz";
-      sha256 = "19a7alvn71nxflsyi7y3hghx1iw04qqc77qy54mcxcpkiyvpsggf";
-      name = "kapidox-5.24.0.tar.xz";
-    };
-  };
-  karchive = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/karchive-5.24.0.tar.xz";
-      sha256 = "1n5nfhrfvqnrdjgjjy7arqik4fya5bp3dvxa16mlhqr19azkavzq";
-      name = "karchive-5.24.0.tar.xz";
-    };
-  };
-  kauth = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kauth-5.24.0.tar.xz";
-      sha256 = "14sjjfgl3arqyqcr77w9qhpnd8mrnh53r5rfss6bvlk26bmihs49";
-      name = "kauth-5.24.0.tar.xz";
-    };
-  };
-  kbookmarks = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kbookmarks-5.24.0.tar.xz";
-      sha256 = "10d8dnhvbrwp0dbmz93cqfdff6ir8iy3yiwaf9ihj6ma124qlyjn";
-      name = "kbookmarks-5.24.0.tar.xz";
-    };
-  };
-  kcmutils = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kcmutils-5.24.0.tar.xz";
-      sha256 = "0aws1c76s6wbp0xpr6qv6cfwq8dw82v00pkf9gy84sbxknwjnizk";
-      name = "kcmutils-5.24.0.tar.xz";
-    };
-  };
-  kcodecs = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kcodecs-5.24.0.tar.xz";
-      sha256 = "1qpzjh3qc2zz80j2bmlinipbispms14k9bmqw8v61zhi6in9z14c";
-      name = "kcodecs-5.24.0.tar.xz";
-    };
-  };
-  kcompletion = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kcompletion-5.24.0.tar.xz";
-      sha256 = "1qln0v31gn86kzwhnkijr1ydf129n32jmiybbckrp4w6hyx6xfxv";
-      name = "kcompletion-5.24.0.tar.xz";
-    };
-  };
-  kconfig = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kconfig-5.24.0.tar.xz";
-      sha256 = "1dc2i6icyigw1j6qxgdza6j2g8afh390qmxsa2a54mwl84fkfmxv";
-      name = "kconfig-5.24.0.tar.xz";
-    };
-  };
-  kconfigwidgets = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kconfigwidgets-5.24.0.tar.xz";
-      sha256 = "0v25r50gh5i984lzlv0rradghglcfqf0gsfmnkn23h87b86fm9l2";
-      name = "kconfigwidgets-5.24.0.tar.xz";
-    };
-  };
-  kcoreaddons = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kcoreaddons-5.24.0.tar.xz";
-      sha256 = "06sx7by3nvaridnavj5p0bxv4nh47n708jlacfw8ydaikmd9i03h";
-      name = "kcoreaddons-5.24.0.tar.xz";
-    };
-  };
-  kcrash = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kcrash-5.24.0.tar.xz";
-      sha256 = "1lahgfwlp9b5rsl244kzp7rsl4ybv1q4qlvpv0xxz5ygssk48l0w";
-      name = "kcrash-5.24.0.tar.xz";
-    };
-  };
-  kdbusaddons = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kdbusaddons-5.24.0.tar.xz";
-      sha256 = "183nxqrhz4qk4qfp1w4an0scp2dvfqcaqbpg4cgbgk0z590q0pkk";
-      name = "kdbusaddons-5.24.0.tar.xz";
-    };
-  };
-  kdeclarative = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kdeclarative-5.24.0.tar.xz";
-      sha256 = "00ik9q1r6y6g5rkdq96yczgrxmcg85x00lipyljvc3x6xw6bixbz";
-      name = "kdeclarative-5.24.0.tar.xz";
-    };
-  };
-  kded = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kded-5.24.0.tar.xz";
-      sha256 = "0ngpxdxb596myn5r4kjxahx195bwklq33yvgjvcbxi2clg2wccaj";
-      name = "kded-5.24.0.tar.xz";
-    };
-  };
-  kdelibs4support = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/portingAids/kdelibs4support-5.24.0.tar.xz";
-      sha256 = "12sis63mq6i372bhx64x8y0pw6czrv64hdhjscx27cx65a4ir451";
-      name = "kdelibs4support-5.24.0.tar.xz";
-    };
-  };
-  kdesignerplugin = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kdesignerplugin-5.24.0.tar.xz";
-      sha256 = "0i0s8pwwhwh5hyyvkv0cnj0yyv0g5bnm5xw18knv2yagiy4bvb2j";
-      name = "kdesignerplugin-5.24.0.tar.xz";
-    };
-  };
-  kdesu = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kdesu-5.24.0.tar.xz";
-      sha256 = "1ivcnhgvq75xvl0w9g7m45qzallz42ijaq0n1ap09lpdfmjbnrxk";
-      name = "kdesu-5.24.0.tar.xz";
-    };
-  };
-  kdewebkit = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kdewebkit-5.24.0.tar.xz";
-      sha256 = "1xq36zv7vnllhqbisl6kcna8z6qzlvy29a47g0hbzgl8rc93qskf";
-      name = "kdewebkit-5.24.0.tar.xz";
-    };
-  };
-  kdnssd = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kdnssd-5.24.0.tar.xz";
-      sha256 = "01b650g031apxc3vd2m91g2fxqk9l8ap67z6rafniphfwy8i0d5m";
-      name = "kdnssd-5.24.0.tar.xz";
-    };
-  };
-  kdoctools = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kdoctools-5.24.0.tar.xz";
-      sha256 = "1r129kpq0d11b9l87cqbal6fm5ycwhsps1g3r1a7jsxz70scz4ri";
-      name = "kdoctools-5.24.0.tar.xz";
-    };
-  };
-  kemoticons = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kemoticons-5.24.0.tar.xz";
-      sha256 = "0gmc52k5jb553jvzxwsq79v5y87kgav8i5qqv4bqc9yl7p866zhn";
-      name = "kemoticons-5.24.0.tar.xz";
-    };
-  };
-  kfilemetadata = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kfilemetadata-5.24.0.tar.xz";
-      sha256 = "02n9qhpr0jlwdgdbid0k34abhs3bzhlsa56ybl5dq1aib6izk1sy";
-      name = "kfilemetadata-5.24.0.tar.xz";
-    };
-  };
-  kglobalaccel = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kglobalaccel-5.24.0.tar.xz";
-      sha256 = "123v0ld1q88hbm3d0mqgq6lcivfkqh7pbz4hb4n76ab5v43qc15c";
-      name = "kglobalaccel-5.24.0.tar.xz";
-    };
-  };
-  kguiaddons = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kguiaddons-5.24.0.tar.xz";
-      sha256 = "0ig96ah20ybg5rwpswj9va2klvkh2q4amwxmgy3z4niwfsm2g3ic";
-      name = "kguiaddons-5.24.0.tar.xz";
-    };
-  };
-  khtml = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/portingAids/khtml-5.24.0.tar.xz";
-      sha256 = "0f19m8ycaa41p61i0j43gafn364abral8dbiqhr0qcj33nsa4134";
-      name = "khtml-5.24.0.tar.xz";
-    };
-  };
-  ki18n = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/ki18n-5.24.0.tar.xz";
-      sha256 = "0cw24spmwsqa3ppkw03cm6yjd3sfll0dbbk2ya76fd4nw9hb00dv";
-      name = "ki18n-5.24.0.tar.xz";
-    };
-  };
-  kiconthemes = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kiconthemes-5.24.0.tar.xz";
-      sha256 = "1k5zig2n6wzfyv6pc8dpas2862mxjyxxza00m31myrfw5i1a1h6m";
-      name = "kiconthemes-5.24.0.tar.xz";
-    };
-  };
-  kidletime = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kidletime-5.24.0.tar.xz";
-      sha256 = "09jsj0pj27h93nr8v46savs6b93h8frydinfr7wlijkvpsl02jb4";
-      name = "kidletime-5.24.0.tar.xz";
-    };
-  };
-  kimageformats = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kimageformats-5.24.0.tar.xz";
-      sha256 = "12mhgckmhnvcnm8k7mk15mipxrnm7i9ip7ykbjh8nxjiwyk1pmwc";
-      name = "kimageformats-5.24.0.tar.xz";
-    };
-  };
-  kinit = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kinit-5.24.0.tar.xz";
-      sha256 = "1i7l6gid5hrrfglw1c461gpjg51dwz7cl4lx7ll8vz2ha8mz4d3n";
-      name = "kinit-5.24.0.tar.xz";
-    };
-  };
-  kio = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kio-5.24.0.tar.xz";
-      sha256 = "0zncj9yf8zaylazlwvirylpk9vki3j889b1x2s0aav54vvj7vdi5";
-      name = "kio-5.24.0.tar.xz";
-    };
-  };
-  kitemmodels = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kitemmodels-5.24.0.tar.xz";
-      sha256 = "1s1p4nw1pqdzbdwvjnka17p9avf00wadr437p4f96md1lvh3sh69";
-      name = "kitemmodels-5.24.0.tar.xz";
-    };
-  };
-  kitemviews = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kitemviews-5.24.0.tar.xz";
-      sha256 = "0y3fx9hk1x27arrmwfzq783a44cs7p8dpmhxrwzh0di4mwa8jafw";
-      name = "kitemviews-5.24.0.tar.xz";
-    };
-  };
-  kjobwidgets = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kjobwidgets-5.24.0.tar.xz";
-      sha256 = "1mcvrz66xcqjgbp08zpqsf943cm462wbqm5gh719p9s25hx8hwrc";
-      name = "kjobwidgets-5.24.0.tar.xz";
-    };
-  };
-  kjs = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/portingAids/kjs-5.24.0.tar.xz";
-      sha256 = "1qd5sdfrdg7id0g5mwf3ijwlfvh3g36kwnckw6kwns1nf4q6gwlz";
-      name = "kjs-5.24.0.tar.xz";
-    };
-  };
-  kjsembed = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/portingAids/kjsembed-5.24.0.tar.xz";
-      sha256 = "1nx8ch8mzd1jyx8pd46364ij0bsbsclbipbgr6jm9aak3n13b0nw";
-      name = "kjsembed-5.24.0.tar.xz";
-    };
-  };
-  kmediaplayer = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/portingAids/kmediaplayer-5.24.0.tar.xz";
-      sha256 = "147xrffkvkyv3h8ighc1vlwksysfrqc0g55k8zrd72l6r0kjjh0p";
-      name = "kmediaplayer-5.24.0.tar.xz";
-    };
-  };
-  knewstuff = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/knewstuff-5.24.0.tar.xz";
-      sha256 = "0xdv3wh3100vzsx8p2zihy1dvh0wzfmrjkjq71v8igwz5d291zsj";
-      name = "knewstuff-5.24.0.tar.xz";
-    };
-  };
-  knotifications = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/knotifications-5.24.0.tar.xz";
-      sha256 = "0qryp41phnpx4r9wa6rfhmnzy7nxl0ijnyrafadf2n2xb53ipkpa";
-      name = "knotifications-5.24.0.tar.xz";
-    };
-  };
-  knotifyconfig = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/knotifyconfig-5.24.0.tar.xz";
-      sha256 = "1dij841fnqia4p44x2wnpdvl8cn3nkj833y0fah50fmipjc8r70b";
-      name = "knotifyconfig-5.24.0.tar.xz";
-    };
-  };
-  kpackage = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kpackage-5.24.0.tar.xz";
-      sha256 = "03aqzkpqz3c1v4qgwfbs3ncdbapiyg7psrkhxqv3z48rklavk1ri";
-      name = "kpackage-5.24.0.tar.xz";
-    };
-  };
-  kparts = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kparts-5.24.0.tar.xz";
-      sha256 = "0z7qr93aq02i7g7cxgypx2rzlnsvbsx9cjblb0ijmad1nb8w3mix";
-      name = "kparts-5.24.0.tar.xz";
-    };
-  };
-  kpeople = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kpeople-5.24.0.tar.xz";
-      sha256 = "0iknzkj23y927xh24kw5sjxyirhy6pkmfcmmgwzd78rba8a54qp2";
-      name = "kpeople-5.24.0.tar.xz";
-    };
-  };
-  kplotting = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kplotting-5.24.0.tar.xz";
-      sha256 = "0gpypq9kh4b5s6dc7py3m117k3nbxczsfkxgxd9zxvr35kig7ya2";
-      name = "kplotting-5.24.0.tar.xz";
-    };
-  };
-  kpty = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kpty-5.24.0.tar.xz";
-      sha256 = "1ybvdzqpa53kkki9p5da0ff9x3c63rmksk7865wqwlgy8apzi2fs";
-      name = "kpty-5.24.0.tar.xz";
-    };
-  };
-  kross = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/portingAids/kross-5.24.0.tar.xz";
-      sha256 = "0f29dpmfcj173vqnmrbpvdmfmzzbfsds1lbl546qfx9a5acdpf2p";
-      name = "kross-5.24.0.tar.xz";
-    };
-  };
-  krunner = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/krunner-5.24.0.tar.xz";
-      sha256 = "0ff87ijjd47jxf6zw2ggqgngnbyx1rj59wdfgy5wbi3acws6bafl";
-      name = "krunner-5.24.0.tar.xz";
-    };
-  };
-  kservice = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kservice-5.24.0.tar.xz";
-      sha256 = "0w0nsg64d6xhgijr2vh0j5p544qi0q55jpqa9v9mv956zrrdssdk";
-      name = "kservice-5.24.0.tar.xz";
-    };
-  };
-  ktexteditor = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/ktexteditor-5.24.0.tar.xz";
-      sha256 = "1ykj1kvm7k1vxb1w235d5hp2swwdqjyp2y4c3pxbvkn999h9x5q5";
-      name = "ktexteditor-5.24.0.tar.xz";
-    };
-  };
-  ktextwidgets = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/ktextwidgets-5.24.0.tar.xz";
-      sha256 = "1q10xav2gkii6s3m31c9xvxf1988l7k2lpib6pyhgsidflmwjm02";
-      name = "ktextwidgets-5.24.0.tar.xz";
-    };
-  };
-  kunitconversion = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kunitconversion-5.24.0.tar.xz";
-      sha256 = "03dfjn4lm6sl2zcdrvw0b9irzvkyc2w2j5xixag5j8nw373742h8";
-      name = "kunitconversion-5.24.0.tar.xz";
-    };
-  };
-  kwallet = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kwallet-5.24.0.tar.xz";
-      sha256 = "0zad5h4vsvcl2xv3vxsjwh42b71xbp6x6rj8cvmw8szr2rzz9gsx";
-      name = "kwallet-5.24.0.tar.xz";
-    };
-  };
-  kwayland = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kwayland-5.24.0.tar.xz";
-      sha256 = "1h5anbqrxcl1s8kx1l53vcsfr8ifamcjqd47dk8a7lwr1ga6myq2";
-      name = "kwayland-5.24.0.tar.xz";
-    };
-  };
-  kwidgetsaddons = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kwidgetsaddons-5.24.0.tar.xz";
-      sha256 = "1kppx0ppfhnb6q6sijs2dffyar86wkkx8miqavsjsgw1l2wiymcx";
-      name = "kwidgetsaddons-5.24.0.tar.xz";
-    };
-  };
-  kwindowsystem = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kwindowsystem-5.24.0.tar.xz";
-      sha256 = "0w5ym8msl80v3q65253pdpj9f1fmb658rnndlbkrgpmm1rv1n6dz";
-      name = "kwindowsystem-5.24.0.tar.xz";
-    };
-  };
-  kxmlgui = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kxmlgui-5.24.0.tar.xz";
-      sha256 = "1qhixldhhcbklmrpjh67440h1rrzqy70h57hw6ialjdsr3pl6ihp";
-      name = "kxmlgui-5.24.0.tar.xz";
-    };
-  };
-  kxmlrpcclient = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/kxmlrpcclient-5.24.0.tar.xz";
-      sha256 = "06ap6ipzqimz1rfrcr7z8zc7idy7sg4a97dws7h52i34ms7jqnc8";
-      name = "kxmlrpcclient-5.24.0.tar.xz";
-    };
-  };
-  modemmanager-qt = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/modemmanager-qt-5.24.0.tar.xz";
-      sha256 = "0khz5bf84xxa8aqpzwb6x839xx6dbiadwqhyj7cvgha65fh2xinh";
-      name = "modemmanager-qt-5.24.0.tar.xz";
-    };
-  };
-  networkmanager-qt = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/networkmanager-qt-5.24.0.tar.xz";
-      sha256 = "11wy0ds0hqbba900ggkcxjfqc9n65xlzc3h1zv9433nn5d75v6fy";
-      name = "networkmanager-qt-5.24.0.tar.xz";
-    };
-  };
-  oxygen-icons5 = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/oxygen-icons5-5.24.0.tar.xz";
-      sha256 = "1c7spjbzk04725vv0ly7vmyvwa96mfa5ki2pm146ld4888a896wm";
-      name = "oxygen-icons5-5.24.0.tar.xz";
-    };
-  };
-  plasma-framework = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/plasma-framework-5.24.0.tar.xz";
-      sha256 = "0981vm00541dzihlr1fsax05biwp2ddpwjrmvnfysx5jagdc65cb";
-      name = "plasma-framework-5.24.0.tar.xz";
-    };
-  };
-  solid = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/solid-5.24.0.tar.xz";
-      sha256 = "00wvsxcnvhdx7ijzpcz5wny2ypkxr1drdpr4yvawgpwa678l1107";
-      name = "solid-5.24.0.tar.xz";
-    };
-  };
-  sonnet = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/sonnet-5.24.0.tar.xz";
-      sha256 = "152xz7fb1iwhb5w1n4xqvc648iaxi0inrl4kavxcsir61das1xyl";
-      name = "sonnet-5.24.0.tar.xz";
-    };
-  };
-  threadweaver = {
-    version = "5.24.0";
-    src = fetchurl {
-      url = "${mirror}/stable/frameworks/5.24/threadweaver-5.24.0.tar.xz";
-      sha256 = "02g60zr9cc4bg1p90giich4n0qvqaiakz0y94qrnyj9f7fg0yksl";
-      name = "threadweaver-5.24.0.tar.xz";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-5/frameworks/threadweaver.nix b/pkgs/desktops/kde-5/frameworks/threadweaver.nix
deleted file mode 100644
index b8f2939e8b59..000000000000
--- a/pkgs/desktops/kde-5/frameworks/threadweaver.nix
+++ /dev/null
@@ -1,9 +0,0 @@
-{ kdeFramework, lib
-, extra-cmake-modules
-}:
-
-kdeFramework {
-  name = "threadweaver";
-  nativeBuildInputs = [ extra-cmake-modules ];
-  meta = { maintainers = [ lib.maintainers.ttuegel ]; };
-}
diff --git a/pkgs/desktops/kde-5/plasma/bluedevil.nix b/pkgs/desktops/kde-5/plasma/bluedevil.nix
index 3bfac828084d..1deef241a62f 100644
--- a/pkgs/desktops/kde-5/plasma/bluedevil.nix
+++ b/pkgs/desktops/kde-5/plasma/bluedevil.nix
@@ -1,22 +1,18 @@
-{ plasmaPackage, extra-cmake-modules, bluez-qt, kcoreaddons
-, kdbusaddons, kded, ki18n, kiconthemes, kio, knotifications
-, kwidgetsaddons, kwindowsystem, makeQtWrapper, plasma-framework
-, qtdeclarative, shared_mime_info
+{
+  plasmaPackage, ecm, shared_mime_info,
+  bluez-qt, kcoreaddons, kdbusaddons, kded, ki18n, kiconthemes, kio,
+  knotifications, kwidgetsaddons, kwindowsystem, plasma-framework, qtdeclarative
 }:
 
 plasmaPackage {
   name = "bluedevil";
-  nativeBuildInputs = [
-    extra-cmake-modules makeQtWrapper shared_mime_info
-  ];
+  nativeBuildInputs = [ ecm shared_mime_info ];
   propagatedBuildInputs = [
     bluez-qt ki18n kio kwindowsystem plasma-framework qtdeclarative kcoreaddons
     kdbusaddons kded kiconthemes knotifications kwidgetsaddons
   ];
-  propagatedUserEnvPkgs = [ bluez-qt ];
+  propagatedUserEnvPkgs = [ bluez-qt.out ];
   postInstall = ''
-    wrapQtProgram "$out/bin/bluedevil-wizard"
-    wrapQtProgram "$out/bin/bluedevil-sendfile"
     # Fix the location of logic.js for the plasmoid
     ln -s $out/share/plasma/plasmoids/org.kde.plasma.bluetooth/contents/code/logic.js $out/share/plasma/plasmoids/org.kde.plasma.bluetooth/contents/ui/logic.js
   '';
diff --git a/pkgs/desktops/kde-5/plasma/breeze-gtk.nix b/pkgs/desktops/kde-5/plasma/breeze-gtk.nix
index 179f15dc8763..664387de1707 100644
--- a/pkgs/desktops/kde-5/plasma/breeze-gtk.nix
+++ b/pkgs/desktops/kde-5/plasma/breeze-gtk.nix
@@ -1,8 +1,8 @@
 { plasmaPackage
-, extra-cmake-modules
+, ecm
 }:
 
 plasmaPackage {
   name = "breeze-gtk";
-  nativeBuildInputs = [ extra-cmake-modules ];
+  nativeBuildInputs = [ ecm ];
 }
diff --git a/pkgs/desktops/kde-5/plasma/breeze-qt4.nix b/pkgs/desktops/kde-5/plasma/breeze-qt4.nix
index f8092bc9d376..ad98a41e81dd 100644
--- a/pkgs/desktops/kde-5/plasma/breeze-qt4.nix
+++ b/pkgs/desktops/kde-5/plasma/breeze-qt4.nix
@@ -1,27 +1,22 @@
-{ plasmaPackage
-, automoc4
-, cmake
-, perl
-, pkgconfig
-, kdelibs
-, qt4
-, xproto
+{
+  stdenv, lib, src, version,
+  automoc4, cmake, perl, pkgconfig,
+  kdelibs, qt4, xproto
 }:
 
-plasmaPackage {
-  name = "breeze-qt4";
-  sname = "breeze";
-  buildInputs = [
-    kdelibs
-    qt4
-    xproto
-  ];
-  nativeBuildInputs = [
-    automoc4
-    cmake
-    perl
-    pkgconfig
-  ];
+stdenv.mkDerivation {
+  name = "breeze-qt4-${version}";
+  meta = {
+    license = with lib.licenses; [
+      lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12
+    ];
+    platforms = lib.platforms.linux;
+    maintainers = with lib.maintainers; [ ttuegel ];
+    homepage = "http://www.kde.org";
+  };
+  inherit src;
+  buildInputs = [ kdelibs qt4 xproto ];
+  nativeBuildInputs = [ automoc4 cmake perl pkgconfig ];
   cmakeFlags = [
     "-DUSE_KDE4=ON"
     "-DQT_QMAKE_EXECUTABLE=${qt4}/bin/qmake"
diff --git a/pkgs/desktops/kde-5/plasma/breeze-qt5.nix b/pkgs/desktops/kde-5/plasma/breeze-qt5.nix
index f641b48c82bc..a909e5067f42 100644
--- a/pkgs/desktops/kde-5/plasma/breeze-qt5.nix
+++ b/pkgs/desktops/kde-5/plasma/breeze-qt5.nix
@@ -1,4 +1,4 @@
-{ plasmaPackage, extra-cmake-modules, frameworkintegration
+{ plasmaPackage, ecm, frameworkintegration
 , kcmutils, kconfigwidgets, kcoreaddons, kdecoration, kguiaddons
 , ki18n, kwindowsystem, makeQtWrapper, plasma-framework, qtx11extras
 }:
@@ -7,7 +7,7 @@ plasmaPackage {
   name = "breeze-qt5";
   sname = "breeze";
   nativeBuildInputs = [
-    extra-cmake-modules
+    ecm
     makeQtWrapper
   ];
   propagatedBuildInputs = [
diff --git a/pkgs/desktops/kde-5/plasma/default.nix b/pkgs/desktops/kde-5/plasma/default.nix
index f6bbd5c3f51e..7aff229b4c12 100644
--- a/pkgs/desktops/kde-5/plasma/default.nix
+++ b/pkgs/desktops/kde-5/plasma/default.nix
@@ -13,7 +13,7 @@
 
 let
 
-  inherit (pkgs) lib stdenv symlinkJoin;
+  inherit (pkgs) lib makeSetupHook stdenv symlinkJoin;
 
   mirror = "mirror://kde";
   srcs = import ./srcs.nix { inherit (pkgs) fetchurl; inherit mirror; };
@@ -24,17 +24,10 @@ let
         inherit (args) name;
         sname = args.sname or name;
         inherit (srcs."${sname}") src version;
-      in stdenv.mkDerivation (args // {
+      in kdeDerivation (args // {
         name = "${name}-${version}";
         inherit src;
 
-        outputs = args.outputs or [ "dev" "out" ];
-
-        cmakeFlags =
-          (args.cmakeFlags or [])
-          ++ [ "-DBUILD_TESTING=OFF" ]
-          ++ lib.optional debug "-DCMAKE_BUILD_TYPE=Debug";
-
         meta = {
           license = with lib.licenses; [
             lgpl21Plus lgpl3Plus bsd2 mit gpl2Plus gpl3Plus fdl12
@@ -47,7 +40,9 @@ let
 
     bluedevil = callPackage ./bluedevil.nix {};
     breeze-gtk = callPackage ./breeze-gtk.nix {};
-    breeze-qt4 = callPackage ./breeze-qt4.nix {};
+    breeze-qt4 = callPackage ./breeze-qt4.nix {
+      inherit (srcs.breeze) src version;
+    };
     breeze-qt5 = callPackage ./breeze-qt5.nix {};
     breeze =
       let
diff --git a/pkgs/desktops/kde-5/plasma/kactivitymanagerd.nix b/pkgs/desktops/kde-5/plasma/kactivitymanagerd.nix
index 282e58ecf9e6..bb90fd6d3ab0 100644
--- a/pkgs/desktops/kde-5/plasma/kactivitymanagerd.nix
+++ b/pkgs/desktops/kde-5/plasma/kactivitymanagerd.nix
@@ -1,12 +1,12 @@
 { plasmaPackage
-, extra-cmake-modules
+, ecm
 , boost, kconfig, kcoreaddons, kdbusaddons, ki18n, kio, kglobalaccel
 , kwindowsystem, kxmlgui
 }:
 
 plasmaPackage {
   name = "kactivitymanagerd";
-  nativeBuildInputs = [ extra-cmake-modules ];
+  nativeBuildInputs = [ ecm ];
   propagatedBuildInputs = [
     boost kconfig kcoreaddons kdbusaddons kglobalaccel ki18n kio kwindowsystem
     kxmlgui
diff --git a/pkgs/desktops/kde-5/plasma/kde-cli-tools.nix b/pkgs/desktops/kde-5/plasma/kde-cli-tools.nix
index d95db120dec4..33a7340cb85f 100644
--- a/pkgs/desktops/kde-5/plasma/kde-cli-tools.nix
+++ b/pkgs/desktops/kde-5/plasma/kde-cli-tools.nix
@@ -1,25 +1,14 @@
-{ plasmaPackage, extra-cmake-modules, kcmutils, kconfig
-, kdelibs4support, kdesu, kdoctools, ki18n, kiconthemes
-, kwindowsystem, makeQtWrapper, qtsvg, qtx11extras
+{
+  plasmaPackage, ecm,
+  kcmutils, kconfig, kdelibs4support, kdesu, kdoctools, ki18n, kiconthemes,
+  kwindowsystem, qtsvg, qtx11extras
 }:
 
 plasmaPackage {
   name = "kde-cli-tools";
-  nativeBuildInputs = [ extra-cmake-modules kdoctools makeQtWrapper ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [
-    kdelibs4support ki18n kwindowsystem qtsvg qtx11extras kcmutils kconfig kdesu
-    kiconthemes
+    kcmutils kconfig kdesu kdelibs4support ki18n kiconthemes kwindowsystem qtsvg
+    qtx11extras
   ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/kmimetypefinder5"
-    wrapQtProgram "$out/bin/ksvgtopng5"
-    wrapQtProgram "$out/bin/ktraderclient5"
-    wrapQtProgram "$out/bin/kioclient5"
-    wrapQtProgram "$out/bin/kdecp5"
-    wrapQtProgram "$out/bin/keditfiletype5"
-    wrapQtProgram "$out/bin/kcmshell5"
-    wrapQtProgram "$out/bin/kdemv5"
-    wrapQtProgram "$out/bin/kstart5"
-    wrapQtProgram "$out/bin/kde-open5"
-  '';
 }
diff --git a/pkgs/desktops/kde-5/plasma/kde-gtk-config/default.nix b/pkgs/desktops/kde-5/plasma/kde-gtk-config/default.nix
index f482f2a6a3f3..10e55f0d6980 100644
--- a/pkgs/desktops/kde-5/plasma/kde-gtk-config/default.nix
+++ b/pkgs/desktops/kde-5/plasma/kde-gtk-config/default.nix
@@ -1,5 +1,5 @@
 { plasmaPackage
-, extra-cmake-modules
+, ecm
 , glib
 , gtk2
 , gtk3
@@ -15,7 +15,7 @@
 plasmaPackage {
   name = "kde-gtk-config";
   patches = [ ./0001-follow-symlinks.patch ];
-  nativeBuildInputs = [ extra-cmake-modules ];
+  nativeBuildInputs = [ ecm ];
   propagatedBuildInputs = [
     ki18n kio glib gtk2 gtk3 karchive kcmutils kconfigwidgets kiconthemes
     knewstuff
diff --git a/pkgs/desktops/kde-5/plasma/kdecoration.nix b/pkgs/desktops/kde-5/plasma/kdecoration.nix
index eb65f7f90afb..a0f9d93e60b0 100644
--- a/pkgs/desktops/kde-5/plasma/kdecoration.nix
+++ b/pkgs/desktops/kde-5/plasma/kdecoration.nix
@@ -1,6 +1,6 @@
-{ plasmaPackage, extra-cmake-modules }:
+{ plasmaPackage, ecm }:
 
 plasmaPackage {
   name = "kdecoration";
-  nativeBuildInputs = [ extra-cmake-modules ];
+  nativeBuildInputs = [ ecm ];
 }
diff --git a/pkgs/desktops/kde-5/plasma/kdeplasma-addons.nix b/pkgs/desktops/kde-5/plasma/kdeplasma-addons.nix
index 3371e17beaf8..a2805f5d804b 100644
--- a/pkgs/desktops/kde-5/plasma/kdeplasma-addons.nix
+++ b/pkgs/desktops/kde-5/plasma/kdeplasma-addons.nix
@@ -1,4 +1,4 @@
-{ plasmaPackage, extra-cmake-modules, kdoctools
+{ plasmaPackage, ecm, kdoctools
 , kconfig, kconfigwidgets, kcoreaddons, kcmutils, kdelibs4support, ki18n
 , kio, knewstuff, kross, krunner, kservice, ksysguard, kunitconversion
 , plasma-framework, plasma-workspace, qtdeclarative, qtx11extras
@@ -8,7 +8,7 @@
 plasmaPackage {
   name = "kdeplasma-addons";
   nativeBuildInputs = [
-    extra-cmake-modules
+    ecm
     kdoctools
   ];
   propagatedBuildInputs = [
diff --git a/pkgs/desktops/kde-5/plasma/kgamma5.nix b/pkgs/desktops/kde-5/plasma/kgamma5.nix
index 965c33e6eef8..70d7cc17a1ca 100644
--- a/pkgs/desktops/kde-5/plasma/kgamma5.nix
+++ b/pkgs/desktops/kde-5/plasma/kgamma5.nix
@@ -1,9 +1,9 @@
-{ plasmaPackage, extra-cmake-modules, kdoctools, kdelibs4support
+{ plasmaPackage, ecm, kdoctools, kdelibs4support
 , qtx11extras
 }:
 
 plasmaPackage {
   name = "kgamma5";
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [ kdelibs4support qtx11extras ];
 }
diff --git a/pkgs/desktops/kde-5/plasma/khotkeys.nix b/pkgs/desktops/kde-5/plasma/khotkeys.nix
index 1666692c928b..760a2a4ee375 100644
--- a/pkgs/desktops/kde-5/plasma/khotkeys.nix
+++ b/pkgs/desktops/kde-5/plasma/khotkeys.nix
@@ -1,11 +1,11 @@
-{ plasmaPackage, extra-cmake-modules, kdoctools, kcmutils
+{ plasmaPackage, ecm, kdoctools, kcmutils
 , kdbusaddons, kdelibs4support, kglobalaccel, ki18n, kio, kxmlgui
 , plasma-framework, plasma-workspace, qtx11extras
 }:
 
 plasmaPackage {
   name = "khotkeys";
-  nativeBuildInputs = [ extra-cmake-modules kdoctools ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [
     kdelibs4support kglobalaccel ki18n kio plasma-framework plasma-workspace
     qtx11extras kcmutils kdbusaddons kxmlgui
diff --git a/pkgs/desktops/kde-5/plasma/kinfocenter.nix b/pkgs/desktops/kde-5/plasma/kinfocenter.nix
index c6a86fc05f63..dd9bdbd31bdf 100644
--- a/pkgs/desktops/kde-5/plasma/kinfocenter.nix
+++ b/pkgs/desktops/kde-5/plasma/kinfocenter.nix
@@ -1,23 +1,16 @@
-{ plasmaPackage, extra-cmake-modules, kdoctools, kcmutils
+{ plasmaPackage, ecm, kdoctools, kcmutils
 , kcompletion, kconfig, kconfigwidgets, kcoreaddons, kdbusaddons
 , kdeclarative, kdelibs4support, ki18n, kiconthemes, kio, kpackage
-, kservice, kwidgetsaddons, kxmlgui, libraw1394, makeQtWrapper
+, kservice, kwidgetsaddons, kxmlgui, libraw1394
 , pciutils, solid
 }:
 
 plasmaPackage {
   name = "kinfocenter";
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-    makeQtWrapper
-  ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [
     kdeclarative kdelibs4support ki18n kio kcmutils kcompletion kconfig
     kconfigwidgets kcoreaddons kdbusaddons kiconthemes kpackage kservice
     kwidgetsaddons kxmlgui libraw1394 pciutils solid
   ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/kinfocenter"
-  '';
 }
diff --git a/pkgs/desktops/kde-5/plasma/kmenuedit.nix b/pkgs/desktops/kde-5/plasma/kmenuedit.nix
index 09224a487167..3adb77a00517 100644
--- a/pkgs/desktops/kde-5/plasma/kmenuedit.nix
+++ b/pkgs/desktops/kde-5/plasma/kmenuedit.nix
@@ -1,18 +1,11 @@
-{ plasmaPackage, extra-cmake-modules, kdoctools, ki18n, kxmlgui
-, kdbusaddons, kiconthemes, kio, sonnet, kdelibs4support, makeQtWrapper
+{ plasmaPackage, ecm, kdoctools, ki18n, kxmlgui
+, kdbusaddons, kiconthemes, kio, sonnet, kdelibs4support
 }:
 
 plasmaPackage {
   name = "kmenuedit";
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-    makeQtWrapper
-  ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [
     kdelibs4support ki18n kio sonnet kxmlgui kdbusaddons kiconthemes
   ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/kmenuedit"
-  '';
 }
diff --git a/pkgs/desktops/kde-5/plasma/kscreen.nix b/pkgs/desktops/kde-5/plasma/kscreen.nix
index 117a39c3be32..ecbd88c2146d 100644
--- a/pkgs/desktops/kde-5/plasma/kscreen.nix
+++ b/pkgs/desktops/kde-5/plasma/kscreen.nix
@@ -1,19 +1,13 @@
-{ plasmaPackage, extra-cmake-modules, kconfig, kconfigwidgets
+{ plasmaPackage, ecm, kconfig, kconfigwidgets
 , kdbusaddons, kglobalaccel, ki18n, kwidgetsaddons, kxmlgui
-, libkscreen, makeQtWrapper, qtdeclarative, qtgraphicaleffects
+, libkscreen, qtdeclarative, qtgraphicaleffects
 }:
 
 plasmaPackage {
   name = "kscreen";
-  nativeBuildInputs = [
-    extra-cmake-modules
-    makeQtWrapper
-  ];
+  nativeBuildInputs = [ ecm ];
   propagatedBuildInputs = [
     kglobalaccel ki18n libkscreen qtdeclarative qtgraphicaleffects kconfig
     kconfigwidgets kdbusaddons kwidgetsaddons kxmlgui
   ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/kscreen-console"
-  '';
 }
diff --git a/pkgs/desktops/kde-5/plasma/kscreenlocker.nix b/pkgs/desktops/kde-5/plasma/kscreenlocker.nix
index 2cb3aac0f559..8fb5d9e708bc 100644
--- a/pkgs/desktops/kde-5/plasma/kscreenlocker.nix
+++ b/pkgs/desktops/kde-5/plasma/kscreenlocker.nix
@@ -1,14 +1,11 @@
-{ plasmaPackage, extra-cmake-modules, kcmutils, kcrash, kdeclarative
+{ plasmaPackage, ecm, kcmutils, kcrash, kdeclarative
 , kdelibs4support, kdoctools, kglobalaccel, kidletime, kwayland
 , libXcursor, pam, plasma-framework, qtdeclarative, wayland
 }:
 
 plasmaPackage {
   name = "kscreenlocker";
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-  ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [
     kdeclarative plasma-framework qtdeclarative kcmutils kcrash kdelibs4support
     kglobalaccel kidletime kwayland libXcursor pam wayland
diff --git a/pkgs/desktops/kde-5/plasma/ksshaskpass.nix b/pkgs/desktops/kde-5/plasma/ksshaskpass.nix
index 8fe7cecd5a80..80b529a66685 100644
--- a/pkgs/desktops/kde-5/plasma/ksshaskpass.nix
+++ b/pkgs/desktops/kde-5/plasma/ksshaskpass.nix
@@ -1,12 +1,9 @@
-{ plasmaPackage, extra-cmake-modules, kdoctools, kcoreaddons
-, ki18n, kwallet, kwidgetsaddons, makeQtWrapper
+{ plasmaPackage, ecm, kdoctools, kcoreaddons
+, ki18n, kwallet, kwidgetsaddons
 }:
 
 plasmaPackage {
   name = "ksshaskpass";
-  nativeBuildInputs = [ extra-cmake-modules kdoctools makeQtWrapper ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [ kcoreaddons ki18n kwallet kwidgetsaddons ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/ksshaskpass"
-  '';
 }
diff --git a/pkgs/desktops/kde-5/plasma/ksysguard.nix b/pkgs/desktops/kde-5/plasma/ksysguard.nix
index 637d539189d5..b0e94c6a5958 100644
--- a/pkgs/desktops/kde-5/plasma/ksysguard.nix
+++ b/pkgs/desktops/kde-5/plasma/ksysguard.nix
@@ -1,20 +1,13 @@
-{ plasmaPackage, extra-cmake-modules, kdoctools, kconfig
+{ plasmaPackage, ecm, kdoctools, kconfig
 , kcoreaddons, kdelibs4support, ki18n, kitemviews, knewstuff
-, kiconthemes, libksysguard, makeQtWrapper
+, kiconthemes, libksysguard
 }:
 
 plasmaPackage {
   name = "ksysguard";
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-    makeQtWrapper
-  ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [
     kconfig kcoreaddons kitemviews knewstuff kiconthemes libksysguard
     kdelibs4support ki18n
   ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/ksysguardd"
-  '';
 }
diff --git a/pkgs/desktops/kde-5/plasma/kwayland-integration.nix b/pkgs/desktops/kde-5/plasma/kwayland-integration.nix
index 9045227a51a9..376e8ed7cbda 100644
--- a/pkgs/desktops/kde-5/plasma/kwayland-integration.nix
+++ b/pkgs/desktops/kde-5/plasma/kwayland-integration.nix
@@ -1,5 +1,5 @@
 { plasmaPackage
-, extra-cmake-modules
+, ecm
 , kidletime
 , kwayland
 , kwindowsystem
@@ -8,7 +8,7 @@
 plasmaPackage {
   name = "kwayland-integration";
   nativeBuildInputs = [
-    extra-cmake-modules
+    ecm
   ];
   propagatedBuildInputs = [
     kidletime kwindowsystem kwayland
diff --git a/pkgs/desktops/kde-5/plasma/kwin/default.nix b/pkgs/desktops/kde-5/plasma/kwin/default.nix
index 8c85981de7e8..d121ba84dd00 100644
--- a/pkgs/desktops/kde-5/plasma/kwin/default.nix
+++ b/pkgs/desktops/kde-5/plasma/kwin/default.nix
@@ -1,4 +1,4 @@
-{ plasmaPackage, extra-cmake-modules, kdoctools, epoxy
+{ plasmaPackage, ecm, kdoctools, epoxy
 , kactivities, kcompletion, kcmutils, kconfig, kconfigwidgets
 , kcoreaddons, kcrash, kdeclarative, kdecoration, kglobalaccel
 , ki18n, kiconthemes, kidletime, kinit, kio, knewstuff, knotifications
@@ -11,9 +11,8 @@
 plasmaPackage {
   name = "kwin";
   nativeBuildInputs = [
-    extra-cmake-modules
+    ecm
     kdoctools
-    makeQtWrapper
   ];
   propagatedBuildInputs = [
     kactivities kdeclarative kglobalaccel ki18n kio kscreenlocker kwindowsystem
@@ -25,8 +24,4 @@ plasmaPackage {
   ];
   patches = [ ./0001-qdiriterator-follow-symlinks.patch ];
   cmakeFlags = [ "-DCMAKE_SKIP_BUILD_RPATH=OFF" ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/kwin_x11"
-    wrapQtProgram "$out/bin/kwin_wayland"
-  '';
 }
diff --git a/pkgs/desktops/kde-5/plasma/kwrited.nix b/pkgs/desktops/kde-5/plasma/kwrited.nix
index 29498e93404d..8dd814f783d0 100644
--- a/pkgs/desktops/kde-5/plasma/kwrited.nix
+++ b/pkgs/desktops/kde-5/plasma/kwrited.nix
@@ -1,9 +1,9 @@
-{ plasmaPackage, extra-cmake-modules, kcoreaddons, ki18n, kpty
+{ plasmaPackage, ecm, kcoreaddons, ki18n, kpty
 , knotifications, kdbusaddons
 }:
 
 plasmaPackage {
   name = "kwrited";
-  nativeBuildInputs = [ extra-cmake-modules ];
+  nativeBuildInputs = [ ecm ];
   propagatedBuildInputs = [ kcoreaddons ki18n kpty knotifications kdbusaddons ];
 }
diff --git a/pkgs/desktops/kde-5/plasma/libkscreen.nix b/pkgs/desktops/kde-5/plasma/libkscreen.nix
index 4e04fd5ed1d9..838ab6ef0e5c 100644
--- a/pkgs/desktops/kde-5/plasma/libkscreen.nix
+++ b/pkgs/desktops/kde-5/plasma/libkscreen.nix
@@ -1,5 +1,5 @@
 { plasmaPackage
-, extra-cmake-modules
+, ecm
 , kwayland, libXrandr
 , qtx11extras
 }:
@@ -7,7 +7,7 @@
 plasmaPackage {
   name = "libkscreen";
   nativeBuildInputs = [
-    extra-cmake-modules
+    ecm
   ];
   propagatedBuildInputs = [
     kwayland libXrandr qtx11extras
diff --git a/pkgs/desktops/kde-5/plasma/libksysguard/default.nix b/pkgs/desktops/kde-5/plasma/libksysguard/default.nix
index 2a92d6e0af0b..b6ca3dfa26d6 100644
--- a/pkgs/desktops/kde-5/plasma/libksysguard/default.nix
+++ b/pkgs/desktops/kde-5/plasma/libksysguard/default.nix
@@ -1,4 +1,4 @@
-{ fetchpatch, plasmaPackage, extra-cmake-modules, kauth, kcompletion
+{ fetchpatch, plasmaPackage, ecm, kauth, kcompletion
 , kconfigwidgets, kcoreaddons, kservice, kwidgetsaddons
 , kwindowsystem, plasma-framework, qtscript, qtx11extras
 , kconfig, ki18n, kiconthemes
@@ -10,7 +10,7 @@ plasmaPackage {
     ./0001-qdiriterator-follow-symlinks.patch
   ];
   nativeBuildInputs = [
-    extra-cmake-modules
+    ecm
   ];
   propagatedBuildInputs = [
     kauth kconfig ki18n kiconthemes kwindowsystem plasma-framework qtx11extras
diff --git a/pkgs/desktops/kde-5/plasma/milou.nix b/pkgs/desktops/kde-5/plasma/milou.nix
index 43f78d9e2a97..dbf9d0b9e537 100644
--- a/pkgs/desktops/kde-5/plasma/milou.nix
+++ b/pkgs/desktops/kde-5/plasma/milou.nix
@@ -1,4 +1,4 @@
-{ plasmaPackage, extra-cmake-modules, qtscript, qtdeclarative
+{ plasmaPackage, ecm, qtscript, qtdeclarative
 , kcoreaddons, ki18n, kdeclarative, kservice, plasma-framework
 , krunner
 }:
@@ -6,7 +6,7 @@
 plasmaPackage {
   name = "milou";
   nativeBuildInputs = [
-    extra-cmake-modules
+    ecm
   ];
   propagatedBuildInputs = [
     kdeclarative ki18n krunner plasma-framework qtdeclarative qtscript
diff --git a/pkgs/desktops/kde-5/plasma/oxygen.nix b/pkgs/desktops/kde-5/plasma/oxygen.nix
index 5a783ca65027..3c54055a6336 100644
--- a/pkgs/desktops/kde-5/plasma/oxygen.nix
+++ b/pkgs/desktops/kde-5/plasma/oxygen.nix
@@ -1,4 +1,4 @@
-{ plasmaPackage, extra-cmake-modules, ki18n, kcmutils, kconfig
+{ plasmaPackage, ecm, ki18n, kcmutils, kconfig
 , kdecoration, kguiaddons, kwidgetsaddons, kservice, kcompletion
 , frameworkintegration, kwindowsystem, makeQtWrapper, qtx11extras
 }:
@@ -6,7 +6,7 @@
 plasmaPackage {
   name = "oxygen";
   nativeBuildInputs = [
-    extra-cmake-modules makeQtWrapper
+    ecm makeQtWrapper
   ];
   propagatedBuildInputs = [
     kcmutils kconfig kdecoration kguiaddons kwidgetsaddons kservice kcompletion
diff --git a/pkgs/desktops/kde-5/plasma/plasma-desktop/default.nix b/pkgs/desktops/kde-5/plasma/plasma-desktop/default.nix
index 3a61651644f4..dc4e81ef4eaa 100644
--- a/pkgs/desktops/kde-5/plasma/plasma-desktop/default.nix
+++ b/pkgs/desktops/kde-5/plasma/plasma-desktop/default.nix
@@ -1,4 +1,4 @@
-{ plasmaPackage, substituteAll, extra-cmake-modules, kdoctools
+{ plasmaPackage, substituteAll, ecm, kdoctools
 , attica, baloo, boost, fontconfig, kactivities, kactivities-stats
 , kauth, kcmutils, kdbusaddons, kdeclarative, kded, kdelibs4support, kemoticons
 , kglobalaccel, ki18n, kitemmodels, knewstuff, knotifications
@@ -6,17 +6,13 @@
 , plasma-framework, plasma-workspace, qtdeclarative, qtx11extras
 , qtsvg, libXcursor, libXft, libxkbfile, xf86inputevdev
 , xf86inputsynaptics, xinput, xkeyboard_config, xorgserver
-, libcanberra_kde, libpulseaudio, makeQtWrapper, utillinux
+, libcanberra_kde, libpulseaudio, utillinux
 , qtquickcontrols, ksysguard
 }:
 
 plasmaPackage rec {
   name = "plasma-desktop";
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-    makeQtWrapper
-  ];
+  nativeBuildInputs = [ ecm kdoctools ];
   buildInputs = [
     attica boost fontconfig kcmutils kdbusaddons kded kitemmodels knewstuff
     knotifications knotifyconfig kwallet libcanberra_kde libXcursor
@@ -42,14 +38,4 @@ plasmaPackage rec {
     "-DEvdev_INCLUDE_DIRS=${xf86inputevdev.dev}/include/xorg"
     "-DSynaptics_INCLUDE_DIRS=${xf86inputsynaptics}/include/xorg"
   ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/kaccess"
-    wrapQtProgram "$out/bin/solid-action-desktop-gen"
-    wrapQtProgram "$out/bin/knetattach"
-    wrapQtProgram "$out/bin/krdb"
-    wrapQtProgram "$out/bin/kapplymousetheme"
-    wrapQtProgram "$out/bin/kfontinst"
-    wrapQtProgram "$out/bin/kcm-touchpad-list-devices"
-    wrapQtProgram "$out/bin/kfontview"
-  '';
 }
diff --git a/pkgs/desktops/kde-5/plasma/plasma-integration.nix b/pkgs/desktops/kde-5/plasma/plasma-integration.nix
index 97d30dcd7732..e8680fea930a 100644
--- a/pkgs/desktops/kde-5/plasma/plasma-integration.nix
+++ b/pkgs/desktops/kde-5/plasma/plasma-integration.nix
@@ -1,4 +1,4 @@
-{ plasmaPackage, extra-cmake-modules
+{ plasmaPackage, ecm
 , breeze-qt5, kconfig, kconfigwidgets, kiconthemes, kio, kwayland
 , libXcursor
 }:
@@ -8,7 +8,7 @@
 plasmaPackage {
   name = "plasma-integration";
   nativeBuildInputs = [
-    extra-cmake-modules
+    ecm
   ];
   buildInputs = [
     breeze-qt5 kconfig kconfigwidgets kiconthemes kio kwayland
diff --git a/pkgs/desktops/kde-5/plasma/plasma-mediacenter.nix b/pkgs/desktops/kde-5/plasma/plasma-mediacenter.nix
index a1e1cf8a127e..1967a0b8a4e0 100644
--- a/pkgs/desktops/kde-5/plasma/plasma-mediacenter.nix
+++ b/pkgs/desktops/kde-5/plasma/plasma-mediacenter.nix
@@ -1,4 +1,4 @@
-{ plasmaPackage, extra-cmake-modules, baloo, kactivities, kconfig
+{ plasmaPackage, ecm, baloo, kactivities, kconfig
 , kcoreaddons, kdeclarative, kguiaddons, ki18n, kio, kservice
 , kfilemetadata, plasma-framework, qtdeclarative, qtmultimedia
 , taglib
@@ -7,7 +7,7 @@
 plasmaPackage rec {
   name = "plasma-mediacenter";
   nativeBuildInputs = [
-    extra-cmake-modules
+    ecm
   ];
   propagatedBuildInputs = [
     baloo kactivities kdeclarative kfilemetadata ki18n kio plasma-framework
diff --git a/pkgs/desktops/kde-5/plasma/plasma-nm/default.nix b/pkgs/desktops/kde-5/plasma/plasma-nm/default.nix
index 0ea2ab49f557..b6d18dbf91d9 100644
--- a/pkgs/desktops/kde-5/plasma/plasma-nm/default.nix
+++ b/pkgs/desktops/kde-5/plasma/plasma-nm/default.nix
@@ -1,8 +1,8 @@
-{ plasmaPackage, substituteAll, extra-cmake-modules, kdoctools
+{ plasmaPackage, substituteAll, ecm, kdoctools
 , kcompletion, kconfigwidgets, kcoreaddons, kdbusaddons, kdeclarative
 , kdelibs4support, ki18n, kiconthemes, kinit, kio, kitemviews
 , knotifications, kservice, kwallet, kwidgetsaddons, kwindowsystem
-, kxmlgui, makeQtWrapper, mobile_broadband_provider_info
+, kxmlgui, mobile_broadband_provider_info
 , modemmanager-qt, networkmanager-qt, openconnect, plasma-framework
 , qca-qt5, qtdeclarative, solid
 }:
@@ -15,11 +15,7 @@ plasmaPackage {
       inherit mobile_broadband_provider_info;
     })
   ];
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-    makeQtWrapper
-  ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [
     kdeclarative kdelibs4support ki18n kio kwindowsystem plasma-framework
     qtdeclarative kcompletion kconfigwidgets kcoreaddons kdbusaddons kiconthemes
@@ -27,7 +23,4 @@ plasmaPackage {
     mobile_broadband_provider_info modemmanager-qt networkmanager-qt openconnect
     qca-qt5 solid
   ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/kde5-nm-connection-editor"
-  '';
 }
diff --git a/pkgs/desktops/kde-5/plasma/plasma-pa.nix b/pkgs/desktops/kde-5/plasma/plasma-pa.nix
index 1712dab773db..b0ad9ac69ffe 100644
--- a/pkgs/desktops/kde-5/plasma/plasma-pa.nix
+++ b/pkgs/desktops/kde-5/plasma/plasma-pa.nix
@@ -1,4 +1,4 @@
-{ plasmaPackage, extra-cmake-modules, glib, kdoctools, kconfigwidgets
+{ plasmaPackage, ecm, glib, kdoctools, kconfigwidgets
 , kcoreaddons, kdeclarative, kglobalaccel, ki18n, libpulseaudio
 , plasma-framework
 }:
@@ -6,7 +6,7 @@
 plasmaPackage {
   name = "plasma-pa";
   nativeBuildInputs = [
-    extra-cmake-modules
+    ecm
     kdoctools
   ];
   propagatedBuildInputs = [
diff --git a/pkgs/desktops/kde-5/plasma/plasma-workspace-wallpapers.nix b/pkgs/desktops/kde-5/plasma/plasma-workspace-wallpapers.nix
index bc87abcad153..6ffdb17cbeab 100644
--- a/pkgs/desktops/kde-5/plasma/plasma-workspace-wallpapers.nix
+++ b/pkgs/desktops/kde-5/plasma/plasma-workspace-wallpapers.nix
@@ -1,10 +1,11 @@
 { plasmaPackage
-, extra-cmake-modules
+, ecm
 }:
 
 plasmaPackage {
   name = "plasma-workspace-wallpapers";
+  outputs = [ "out" ];
   nativeBuildInputs = [
-    extra-cmake-modules
+    ecm
   ];
 }
diff --git a/pkgs/desktops/kde-5/plasma/plasma-workspace/default.nix b/pkgs/desktops/kde-5/plasma/plasma-workspace/default.nix
index 190003ca5c78..09bba4a709f7 100644
--- a/pkgs/desktops/kde-5/plasma/plasma-workspace/default.nix
+++ b/pkgs/desktops/kde-5/plasma/plasma-workspace/default.nix
@@ -1,7 +1,7 @@
 {
   plasmaPackage, lib, copyPathsToStore,
 
-  extra-cmake-modules, kdoctools,
+  ecm, kdoctools,
 
   baloo, kactivities, kcmutils, kconfig, kcrash, kdbusaddons, kdeclarative,
   kdelibs4support, kdesu, kglobalaccel, kidletime, kjsembed, knewstuff,
@@ -14,9 +14,7 @@
 plasmaPackage {
   name = "plasma-workspace";
 
-  nativeBuildInputs = [
-    extra-cmake-modules kdoctools
-  ];
+  nativeBuildInputs = [ ecm kdoctools ];
   buildInputs = [
     baloo kactivities kcmutils kconfig kcrash kdbusaddons kdeclarative
     kdelibs4support kdesu kglobalaccel kidletime kjsembed knewstuff
diff --git a/pkgs/desktops/kde-5/plasma/polkit-kde-agent.nix b/pkgs/desktops/kde-5/plasma/polkit-kde-agent.nix
index 68bb3a9ef3dc..002c2bb10ff3 100644
--- a/pkgs/desktops/kde-5/plasma/polkit-kde-agent.nix
+++ b/pkgs/desktops/kde-5/plasma/polkit-kde-agent.nix
@@ -1,22 +1,12 @@
-{ plasmaPackage
-, extra-cmake-modules
-, ki18n
-, kwindowsystem
-, kdbusaddons
-, kwidgetsaddons
-, kcoreaddons
-, kcrash
-, kconfig
-, kiconthemes
-, knotifications
-, polkit-qt
+{
+  plasmaPackage, ecm,
+  kcoreaddons, kconfig, kcrash, kdbusaddons, ki18n, kiconthemes, knotifications,
+  kwidgetsaddons, kwindowsystem, polkit-qt
 }:
 
 plasmaPackage {
   name = "polkit-kde-agent";
-  nativeBuildInputs = [
-    extra-cmake-modules
-  ];
+  nativeBuildInputs = [ ecm ];
   propagatedBuildInputs = [
     kdbusaddons kwidgetsaddons kcoreaddons kcrash kconfig ki18n kiconthemes
     knotifications kwindowsystem polkit-qt
diff --git a/pkgs/desktops/kde-5/plasma/powerdevil.nix b/pkgs/desktops/kde-5/plasma/powerdevil.nix
index cbb2b9b019fc..c0c18a6eae6c 100644
--- a/pkgs/desktops/kde-5/plasma/powerdevil.nix
+++ b/pkgs/desktops/kde-5/plasma/powerdevil.nix
@@ -1,4 +1,4 @@
-{ plasmaPackage, extra-cmake-modules, kdoctools, bluez-qt, kactivities
+{ plasmaPackage, ecm, kdoctools, bluez-qt, kactivities
 , kauth, kconfig, kdbusaddons, kdelibs4support, kglobalaccel, ki18n
 , kidletime, kio, knotifyconfig, kwayland, libkscreen, networkmanager-qt
 , plasma-workspace, qtx11extras, solid, udev
@@ -6,10 +6,7 @@
 
 plasmaPackage {
   name = "powerdevil";
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-  ];
+  nativeBuildInputs = [ ecm kdoctools ];
   propagatedBuildInputs = [
     kconfig kdbusaddons knotifyconfig solid udev bluez-qt kactivities kauth
     kdelibs4support kglobalaccel ki18n kio kidletime kwayland libkscreen
diff --git a/pkgs/desktops/kde-5/plasma/srcs.nix b/pkgs/desktops/kde-5/plasma/srcs.nix
index 2dbfb6dd04ac..15048dc9da26 100644
--- a/pkgs/desktops/kde-5/plasma/srcs.nix
+++ b/pkgs/desktops/kde-5/plasma/srcs.nix
@@ -3,323 +3,323 @@
 
 {
   bluedevil = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/bluedevil-5.7.1.tar.xz";
-      sha256 = "1sz84r27bc4qavb22haqswr1qjv9m47b8j3knvlpzdln4wpxnb81";
-      name = "bluedevil-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/bluedevil-5.7.2.tar.xz";
+      sha256 = "0lw7yf38vdxl5q8fyqp7xnhppv0r6ayr7wd3m73f1w7fqpkjd9v6";
+      name = "bluedevil-5.7.2.tar.xz";
     };
   };
   breeze = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/breeze-5.7.1.tar.xz";
-      sha256 = "1sparlwykzr6mjqzv3ghzl59j0xi3yxf0m93sx7d3js92k77rqpk";
-      name = "breeze-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/breeze-5.7.2.tar.xz";
+      sha256 = "150lpy6jd2asbx8s5mznyagja31q5xwhhqqisrlnxapln2qj6xay";
+      name = "breeze-5.7.2.tar.xz";
     };
   };
   breeze-grub = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/breeze-grub-5.7.1.tar.xz";
-      sha256 = "0ahpsq429f8cdk2w91h9ji9fiqc7g8m9zlg447pz7r6lxnj9aw3x";
-      name = "breeze-grub-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/breeze-grub-5.7.2.tar.xz";
+      sha256 = "1qhgqb3wa8mciddwa0v4kw3vs17annib0qy2jpy5qdfjc4yblq5q";
+      name = "breeze-grub-5.7.2.tar.xz";
     };
   };
   breeze-gtk = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/breeze-gtk-5.7.1.tar.xz";
-      sha256 = "1xcznd9m6kxrv8c4j66m4qqgq02h32714dkjwr754k9qfiava2qg";
-      name = "breeze-gtk-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/breeze-gtk-5.7.2.tar.xz";
+      sha256 = "08jfvxfmzbnk4jjzljlp9wr37b7rmxcwnmi866x5v01x9iqfbcgw";
+      name = "breeze-gtk-5.7.2.tar.xz";
     };
   };
   breeze-plymouth = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/breeze-plymouth-5.7.1.tar.xz";
-      sha256 = "16wx7k18yxf2jhxl2wwxy1dzdrrlfr9qkxbw72m5c21spx734wwb";
-      name = "breeze-plymouth-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/breeze-plymouth-5.7.2.tar.xz";
+      sha256 = "16dwqiq26xxpff0fni7aiq919k7jfmi35sj8xvvafb30wm4y3jix";
+      name = "breeze-plymouth-5.7.2.tar.xz";
     };
   };
   discover = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/discover-5.7.1.tar.xz";
-      sha256 = "1r4g4ajyp6ap1nq2n9ngvsgzifypivrkkzfk14c06mmc4fbqblpd";
-      name = "discover-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/discover-5.7.2.tar.xz";
+      sha256 = "0kp3d7d21zxc8ag6f075r8mvfqd5mmk258aix5pyqc1njzb6rgg0";
+      name = "discover-5.7.2.tar.xz";
     };
   };
   kactivitymanagerd = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kactivitymanagerd-5.7.1.tar.xz";
-      sha256 = "1mc4dxxkvjyrq4khlg1gjhxdhn87xsghwlznp4gnfx4cjgvxi8bq";
-      name = "kactivitymanagerd-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kactivitymanagerd-5.7.2.tar.xz";
+      sha256 = "0asp3jzl1vaqxs0nvkfxx5d8hnnsvcygbjgc4i63l7fjs64a789r";
+      name = "kactivitymanagerd-5.7.2.tar.xz";
     };
   };
   kde-cli-tools = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kde-cli-tools-5.7.1.tar.xz";
-      sha256 = "0q3j6kd7yfrp10pbld5pdis8w234442va3h460q9j3bp7n7xp8h9";
-      name = "kde-cli-tools-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kde-cli-tools-5.7.2.tar.xz";
+      sha256 = "0y2pwshsiqgcxvj3yc6vyyhg8fkb5ddslnf1f86r92sy66gbjw0s";
+      name = "kde-cli-tools-5.7.2.tar.xz";
     };
   };
   kdecoration = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kdecoration-5.7.1.tar.xz";
-      sha256 = "181vay4alcckv93cralbj980c4zxbmca710dh9qrmy4nfk2y0pq7";
-      name = "kdecoration-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kdecoration-5.7.2.tar.xz";
+      sha256 = "1wpb1kivy570ggrd7ip8n3zllyslzk6qlqc02i8g4rbavw0fxscx";
+      name = "kdecoration-5.7.2.tar.xz";
     };
   };
   kde-gtk-config = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kde-gtk-config-5.7.1.tar.xz";
-      sha256 = "18xm51j1604gg9sf9cmchqzgfrchwf2may4qhl2glns3c7xnps94";
-      name = "kde-gtk-config-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kde-gtk-config-5.7.2.tar.xz";
+      sha256 = "08giv5w4055rd70nb28lwapdcfnywx2whgzpc1gdvsbgl6ap742n";
+      name = "kde-gtk-config-5.7.2.tar.xz";
     };
   };
   kdeplasma-addons = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kdeplasma-addons-5.7.1.tar.xz";
-      sha256 = "13mg01ll9np8av55ilns1dc0k3rv5cix901gp459dl9r05hzhxgp";
-      name = "kdeplasma-addons-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kdeplasma-addons-5.7.2.tar.xz";
+      sha256 = "1qlr3fgp7gqyjyncn1qjajhbvb45sdbp9aqhz6ccnv3smwm74mp7";
+      name = "kdeplasma-addons-5.7.2.tar.xz";
     };
   };
   kgamma5 = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kgamma5-5.7.1.tar.xz";
-      sha256 = "1myxjj99jmp2n58f4jbarphr12jh9rqpjmvk2dpcijb94sxaimsl";
-      name = "kgamma5-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kgamma5-5.7.2.tar.xz";
+      sha256 = "0jkk0lz4qaxsmgii3i698anpp0a9q0nakpb5h0kxffx5j01s5s25";
+      name = "kgamma5-5.7.2.tar.xz";
     };
   };
   khotkeys = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/khotkeys-5.7.1.tar.xz";
-      sha256 = "0djnfax9ba1zm3lkxm2hfa4ai399g1p1n0zfpchjfif8639pf6fk";
-      name = "khotkeys-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/khotkeys-5.7.2.tar.xz";
+      sha256 = "02v0q8j65fbc39krc2gcs42yyx3g056w156zg6d59j6srwci5ksm";
+      name = "khotkeys-5.7.2.tar.xz";
     };
   };
   kinfocenter = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kinfocenter-5.7.1.tar.xz";
-      sha256 = "0ynm1lb5f2ggc470k805acxrgxbjw00b780psg60m64bh12jn5ws";
-      name = "kinfocenter-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kinfocenter-5.7.2.tar.xz";
+      sha256 = "1xpyi05y9qxv51j8gazk0qlhy2yscz8lgzgh3lw7lp21jv1frxg4";
+      name = "kinfocenter-5.7.2.tar.xz";
     };
   };
   kmenuedit = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kmenuedit-5.7.1.tar.xz";
-      sha256 = "19188hwidv6vak1qas60jzc7bd6fx1slaqkiwljyx8r6w7l1lx4h";
-      name = "kmenuedit-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kmenuedit-5.7.2.tar.xz";
+      sha256 = "0bavsxh3lsnk5h70l81317vqgmms5r0lr7ph2vdlcfrb708xp0xp";
+      name = "kmenuedit-5.7.2.tar.xz";
     };
   };
   kscreen = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kscreen-5.7.1.tar.xz";
-      sha256 = "0f2zniavlh18ipkn3k6kpzd5nqhlj0pg723dqb3p5zdmxfwddqal";
-      name = "kscreen-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kscreen-5.7.2.tar.xz";
+      sha256 = "1d23i6mw1di01386icdq5p64a3gmq6n6cg73v6wfw3vvgl0lls6w";
+      name = "kscreen-5.7.2.tar.xz";
     };
   };
   kscreenlocker = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kscreenlocker-5.7.1.tar.xz";
-      sha256 = "0dpx1cwvjzsnf9aryavqajlw10iqfmg3vjry50wkg03nb8z1rd49";
-      name = "kscreenlocker-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kscreenlocker-5.7.2.tar.xz";
+      sha256 = "1c4afc7s5b2q5yc53xpp8q2k0w8lxmvg8rrqb6qnrqz1xrxil3ld";
+      name = "kscreenlocker-5.7.2.tar.xz";
     };
   };
   ksshaskpass = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/ksshaskpass-5.7.1.tar.xz";
-      sha256 = "0blmwnm512lld8r3gj2fi7z0cj2nhcngn6xw3568p54ijb5da6c2";
-      name = "ksshaskpass-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/ksshaskpass-5.7.2.tar.xz";
+      sha256 = "07annxlr46h7x6dq5vfs6rzgm11x8bv1n1icgji2wabdj3zsy2pa";
+      name = "ksshaskpass-5.7.2.tar.xz";
     };
   };
   ksysguard = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/ksysguard-5.7.1.tar.xz";
-      sha256 = "14b9wspfls4q3zl1rxpr6h5kxx9q6dv10x8lbzmxml1fdkid3i5j";
-      name = "ksysguard-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/ksysguard-5.7.2.tar.xz";
+      sha256 = "08y9vsdzsq18hgfrk52hk3hmv23x6xv4j73dji97g38z26slvbp6";
+      name = "ksysguard-5.7.2.tar.xz";
     };
   };
   kwallet-pam = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kwallet-pam-5.7.1.tar.xz";
-      sha256 = "04jxi4a75km9c5gy30aaikqzsd2z2algvh7w6phfqaqq66h5qx8d";
-      name = "kwallet-pam-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kwallet-pam-5.7.2.tar.xz";
+      sha256 = "1701abpwp90vsi5v4n675848gnp17psiagd5hv9yypc2a7g82sf2";
+      name = "kwallet-pam-5.7.2.tar.xz";
     };
   };
   kwayland-integration = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kwayland-integration-5.7.1.tar.xz";
-      sha256 = "0ix30304ggh12xgqnnb9zrniqhklg3a8rkjnp3fad7sr3wa9346s";
-      name = "kwayland-integration-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kwayland-integration-5.7.2.tar.xz";
+      sha256 = "0jd9cv8ivn71h90xjr53nanx02z95ylsn5pkwx03wjvx4bdwwvpv";
+      name = "kwayland-integration-5.7.2.tar.xz";
     };
   };
   kwin = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kwin-5.7.1.tar.xz";
-      sha256 = "0mkvfbsv1ivzs02fphm28km55cn258w6sram9zbqldklk2js7is0";
-      name = "kwin-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kwin-5.7.2.tar.xz";
+      sha256 = "00f9chy1qg24r6rqpqfhc4jjx6j1nw18gxzpd1m16shkqf5il15h";
+      name = "kwin-5.7.2.tar.xz";
     };
   };
   kwrited = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/kwrited-5.7.1.tar.xz";
-      sha256 = "0mmb4hmwpcmxc03nzqhybwxk5nlyqamdswmr0vf8jcbvcqdmp473";
-      name = "kwrited-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/kwrited-5.7.2.tar.xz";
+      sha256 = "06j18395pkyiph9mzvmfjjdm623ggijgkalggsz4a7kllk1v964q";
+      name = "kwrited-5.7.2.tar.xz";
     };
   };
   libkscreen = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/libkscreen-5.7.1.tar.xz";
-      sha256 = "1my8k7r7i2qh59g46l79xdyci1km3ykxms1314vwzqf7fyadwjnp";
-      name = "libkscreen-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/libkscreen-5.7.2.tar.xz";
+      sha256 = "0ympads0iylpsv0idmbgwc8gzc3xskqcgv1bn4mbpfrp360ibmia";
+      name = "libkscreen-5.7.2.tar.xz";
     };
   };
   libksysguard = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/libksysguard-5.7.1.tar.xz";
-      sha256 = "0249cxgfy6yb9dcc9z2ckxwy7khkbzk0922479v900avaf87l4hj";
-      name = "libksysguard-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/libksysguard-5.7.2.tar.xz";
+      sha256 = "0qk14ca9hfbm4ba840yjrar1kqh3dsl2hywqf45lrv42r47k19ak";
+      name = "libksysguard-5.7.2.tar.xz";
     };
   };
   milou = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/milou-5.7.1.tar.xz";
-      sha256 = "0fcrf8q0sxsgjbi9j2h9qcl4g40mvia1zkb98crzir5qb1z6ji1f";
-      name = "milou-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/milou-5.7.2.tar.xz";
+      sha256 = "13w9fn1icxaxslk04a3gb41yb6hw705xj0xkmv5wy198m8f9m84a";
+      name = "milou-5.7.2.tar.xz";
     };
   };
   oxygen = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/oxygen-5.7.1.tar.xz";
-      sha256 = "1pjygznb3fjyyvm84dxxj6smm6hpi5mr0c5077rc1xm2p20g7xn0";
-      name = "oxygen-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/oxygen-5.7.2.tar.xz";
+      sha256 = "0156v7b9capc1j5kv099fy00dzcqiygvmvs9nsy6m3ly7v9av428";
+      name = "oxygen-5.7.2.tar.xz";
     };
   };
   plasma-desktop = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/plasma-desktop-5.7.1.tar.xz";
-      sha256 = "1civd76q2lkas8x5pzm57dfjyplmgb91w34avn75lcdkl2p0zq44";
-      name = "plasma-desktop-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/plasma-desktop-5.7.2.tar.xz";
+      sha256 = "0kkw4h1vn32qdpzd16334s2m38wcckc06bx1bs99jj6hpmgh6597";
+      name = "plasma-desktop-5.7.2.tar.xz";
     };
   };
   plasma-integration = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/plasma-integration-5.7.1.tar.xz";
-      sha256 = "12cjays5y3zr4za7j49p8yrzk6fxmsgvw4n8i8aida390lbnw5c6";
-      name = "plasma-integration-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/plasma-integration-5.7.2.tar.xz";
+      sha256 = "1j8a0c0dxdl7kyj6hm1r5lq7ykg9xhn51s90gyhr6rqs0hla7n6g";
+      name = "plasma-integration-5.7.2.tar.xz";
     };
   };
   plasma-mediacenter = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/plasma-mediacenter-5.7.1.tar.xz";
-      sha256 = "135c7vgps9nsna4x5b28p8p2lir7wx2ad6p5m4sg7irf2wr6mivd";
-      name = "plasma-mediacenter-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/plasma-mediacenter-5.7.2.tar.xz";
+      sha256 = "1vgb7mlqqlh338p0mqfc613qcdz1c3kwgg9m7yb5fk8kzh9v1fwn";
+      name = "plasma-mediacenter-5.7.2.tar.xz";
     };
   };
   plasma-nm = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/plasma-nm-5.7.1.tar.xz";
-      sha256 = "0siq0na8cqqp0lqp963miwimsr7w9papj6cpf9k0frw40arqk26h";
-      name = "plasma-nm-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/plasma-nm-5.7.2.tar.xz";
+      sha256 = "1aqf2jzljzc1wwswxq9gn74p0169sqq9yrm7ngz1ns11b0q8m1bm";
+      name = "plasma-nm-5.7.2.tar.xz";
     };
   };
   plasma-pa = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/plasma-pa-5.7.1.tar.xz";
-      sha256 = "0g4rgsf39imknxbccl77d7j7404gfyv0nh6r0dmli19alhhiczay";
-      name = "plasma-pa-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/plasma-pa-5.7.2.tar.xz";
+      sha256 = "0w201rrxjds5i1hc6mn4mpqn6kvpz175r0id9rxqfdzyrqcgknpv";
+      name = "plasma-pa-5.7.2.tar.xz";
     };
   };
   plasma-sdk = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/plasma-sdk-5.7.1.tar.xz";
-      sha256 = "1mn54zwq9bcrazv6zh832xyagrd4k1xjdwhdqxqbvq1d139v8shj";
-      name = "plasma-sdk-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/plasma-sdk-5.7.2.tar.xz";
+      sha256 = "0zsbrlmv5kgaa53a906ky071vj38i58kz0wqrr2dy2b47pnx77pl";
+      name = "plasma-sdk-5.7.2.tar.xz";
     };
   };
   plasma-workspace = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/plasma-workspace-5.7.1.tar.xz";
-      sha256 = "0x4ghm385kkj2ax91vy10p4f481c6ikpk0azmhnk2d685r7x03yn";
-      name = "plasma-workspace-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/plasma-workspace-5.7.2.tar.xz";
+      sha256 = "1k03g6scbgrsrk1dmfaw6s5sahlck81rka7kpzx60rdas6vfw60y";
+      name = "plasma-workspace-5.7.2.tar.xz";
     };
   };
   plasma-workspace-wallpapers = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/plasma-workspace-wallpapers-5.7.1.tar.xz";
-      sha256 = "0nl3bjb57djzgvx81knrjkbdix9y3j5ggxpd1a6lj80nixicg8h7";
-      name = "plasma-workspace-wallpapers-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/plasma-workspace-wallpapers-5.7.2.tar.xz";
+      sha256 = "1wzhrix2nafzlszanh05fbcs746c391wp27i24fvh3rhpg5j57zx";
+      name = "plasma-workspace-wallpapers-5.7.2.tar.xz";
     };
   };
   polkit-kde-agent = {
-    version = "1-5.7.1";
+    version = "1-5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/polkit-kde-agent-1-5.7.1.tar.xz";
-      sha256 = "1pcmdplxq0fsa3bdxyl73vpndvhlmsmjbqfc35aa1ds2wkj7ql2q";
-      name = "polkit-kde-agent-1-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/polkit-kde-agent-1-5.7.2.tar.xz";
+      sha256 = "0kx021xjgsp1gpv2s9kigxf1srabkly2l61hf5wpj0hml79dwrc5";
+      name = "polkit-kde-agent-1-5.7.2.tar.xz";
     };
   };
   powerdevil = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/powerdevil-5.7.1.tar.xz";
-      sha256 = "0vdrpfgdw2c2gp6cwmrwyrwgfgxfslypa5ls79cf9wqgkrlh3phy";
-      name = "powerdevil-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/powerdevil-5.7.2.tar.xz";
+      sha256 = "132k18dqm487f8v2irxlxhs1ljvcyyig9lkb36isajsw7k6949vb";
+      name = "powerdevil-5.7.2.tar.xz";
     };
   };
   sddm-kcm = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/sddm-kcm-5.7.1.tar.xz";
-      sha256 = "0bnfy0ndg5040za73sj41ajskwx7bvfa4x92wrfzv27gda3c7fdg";
-      name = "sddm-kcm-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/sddm-kcm-5.7.2.tar.xz";
+      sha256 = "19bxbpz80pr66gd9mycwfcw8sagkpzbffm98bzikpdjcll6a6ysh";
+      name = "sddm-kcm-5.7.2.tar.xz";
     };
   };
   systemsettings = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/systemsettings-5.7.1.tar.xz";
-      sha256 = "0arcvhqvcsm59l3fm6brqqcv1084qm8wawj9dj6w5wb194ys41hw";
-      name = "systemsettings-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/systemsettings-5.7.2.tar.xz";
+      sha256 = "0f2q0mfhmn0nf4mx76hp3lxciwiivsqq3ayv15s1hzxpi24vsini";
+      name = "systemsettings-5.7.2.tar.xz";
     };
   };
   user-manager = {
-    version = "5.7.1";
+    version = "5.7.2";
     src = fetchurl {
-      url = "${mirror}/stable/plasma/5.7.1/user-manager-5.7.1.tar.xz";
-      sha256 = "1jzwwzixwbb6f92zi09i3jfs4dqsg3kcjis60w1bh2pkm96gq35y";
-      name = "user-manager-5.7.1.tar.xz";
+      url = "${mirror}/stable/plasma/5.7.2/user-manager-5.7.2.tar.xz";
+      sha256 = "0faf4wnbkcx6wlg92cd8mskp1xhqm0crj886y22ycjiaqhbnc43p";
+      name = "user-manager-5.7.2.tar.xz";
     };
   };
 }
diff --git a/pkgs/desktops/kde-5/plasma/systemsettings.nix b/pkgs/desktops/kde-5/plasma/systemsettings.nix
index 47264cf38fd7..407d0e916264 100644
--- a/pkgs/desktops/kde-5/plasma/systemsettings.nix
+++ b/pkgs/desktops/kde-5/plasma/systemsettings.nix
@@ -1,22 +1,14 @@
-{ plasmaPackage, extra-cmake-modules, kdoctools, kitemviews
-, kcmutils, ki18n, kio, kservice, kiconthemes, kwindowsystem
-, kxmlgui, kdbusaddons, kconfig, khtml, makeQtWrapper
+{
+  plasmaPackage, ecm, kdoctools, makeQtWrapper,
+  kcmutils, kconfig, kdbusaddons, khtml, ki18n, kiconthemes, kio, kitemviews,
+  kservice, kwindowsystem, kxmlgui, qtquickcontrols
 }:
 
 plasmaPackage {
   name = "systemsettings";
-  nativeBuildInputs = [
-    extra-cmake-modules
-    kdoctools
-    makeQtWrapper
-  ];
-  buildInputs = [
-  ];
+  nativeBuildInputs = [ ecm kdoctools makeQtWrapper ];
   propagatedBuildInputs = [
-    khtml ki18n kio kwindowsystem kitemviews kcmutils kservice kiconthemes
-    kxmlgui kdbusaddons kconfig
+    kcmutils kconfig kdbusaddons khtml ki18n kiconthemes kio kitemviews kservice
+    kwindowsystem kxmlgui qtquickcontrols
   ];
-  postInstall = ''
-    wrapQtProgram "$out/bin/systemsettings5"
-  '';
 }