summary refs log tree commit diff
path: root/pkgs/applications/kde-apps-15.04
diff options
context:
space:
mode:
authorThomas Tuegel <ttuegel@gmail.com>2015-06-18 14:25:51 -0500
committerThomas Tuegel <ttuegel@gmail.com>2015-06-25 09:03:40 -0500
commit8862d8d9c98cf4d8ee66f8bf94f51294af74090d (patch)
tree8f746e374fae79f9db6c358aa63ea0c95aa0b2c1 /pkgs/applications/kde-apps-15.04
parent0aa8e649673d802f8c315b88254812bf826ec672 (diff)
downloadnixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar
nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar.gz
nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar.bz2
nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar.lz
nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar.xz
nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar.zst
nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.zip
autonix: JSON manifest format
Diffstat (limited to 'pkgs/applications/kde-apps-15.04')
-rw-r--r--pkgs/applications/kde-apps-15.04/default.nix510
-rw-r--r--pkgs/applications/kde-apps-15.04/setup-hook.sh11
2 files changed, 328 insertions, 193 deletions
diff --git a/pkgs/applications/kde-apps-15.04/default.nix b/pkgs/applications/kde-apps-15.04/default.nix
index e325c5ccfc22..7910046d774e 100644
--- a/pkgs/applications/kde-apps-15.04/default.nix
+++ b/pkgs/applications/kde-apps-15.04/default.nix
@@ -12,23 +12,23 @@
 #  make a copy of this directory first. After copying, be sure to delete ./tmp
 #  if it exists. Then follow the minor update instructions.
 
-{ autonix, symlinkJoin, kde4, kf5, pkgs, qt4, qt5, stdenv, newScope, debug ? false }:
+{ pkgs, newScope, kf5 ? null, plasma5 ? null, qt5 ? null, debug ? false }:
 
-with autonix;
+let inherit (pkgs) autonix kde4 stdenv symlinkJoin; in
 
-let inherit (stdenv) lib; in
-
-let kf5Orig = kf5; in
+with autonix; let inherit (stdenv) lib; in
 
 let
+  kf5_ = if kf5 != null then kf5 else pkgs.kf510;
+  plasma5_ = if plasma5 != null then plasma5 else pkgs.plasma53;
+  qt5_ = if qt5 != null then qt5 else pkgs.qt54;
+in
 
-  kf5 = kf5Orig.override { inherit debug qt5; };
+let
 
-  kdePackage = pkg:
-    (kf5.kdePackage pkg).override {
-      inherit (stdenv) mkDerivation;
-      inherit scope;
-    };
+  kf5 = kf5_.override { inherit debug qt5; };
+  plasma5 = plasma5_.override { inherit debug kf5 qt5; };
+  qt5 = qt5_;
 
   kdeOrL10nPackage = name: pkg:
     assert (builtins.isAttrs pkg);
@@ -124,53 +124,58 @@ let
       (lib.mapAttrs mirrorUrl)
     ];
 
-  overrideDerivation = pkg: f:
-    let mkDerivation = super: drv: super.mkDerivation (drv // f drv);
-    in pkg.override (super: super // { mkDerivation = mkDerivation super; });
+  kde4Package = pkg: overrideScope pkg (with kde4; {
+    inherit akonadi baloo kactivities libkdegames libkmahjongg;
+    kde4 = self.kdelibs;
+  });
 
   scope =
+    # KDE Frameworks 5
+    kf5 //
     # packages in this collection
     self //
     {
+      kf5baloo = plasma5.baloo;
+      kf5kdcraw = self.libkdcraw;
       kf5kdegames = self.libkdegames;
+      kf5kipi = self.libkipi;
       libkonq = self.kde-baseapps;
     } //
-    # packages from KDE Frameworks 5
-    kf5.scope //
     # packages requiring same Qt 5
     (with pkgs; {
       accountsqt5 = accounts-qt.override { inherit qt5; };
       dbusmenuqt = libdbusmenu_qt;
       grantlee5 = grantlee5.override { inherit qt5; };
       mlt = pkgs.mlt-qt5.override { inherit qt5; };
+      phonon4qt5 = pkgs.phonon_qt5.override { inherit qt5; };
       qca-qt5 = qca-qt5.override { inherit qt5; };
+      qt5script = qt5.script;
+      qt5x11extras = qt5.x11extras;
       signonqt5 = signon.override { inherit qt5; };
       telepathyqt5 = telepathy_qt5.override { inherit qt5; };
     }) //
-    # packages from KDE 4
-    (with kde4; {
-      inherit akonadi baloo kactivities libkdegames libkmahjongg;
-      kde4 = self.kdelibs;
-    }) //
     # packages from nixpkgs
     (with pkgs; {
-      inherit acl attr automoc4 avahi bison cdparanoia cfitsio cups
+      inherit acl attr automoc4 avahi bison cdparanoia cfitsio cmake cups
               djvulibre docbook_xml_dtd_42 docbook_xsl enchant eigen2
               exiv2 fam ffmpeg flac flex freetype gmp gettext gpgme
               grantlee gsl hunspell ilmbase intltool jasper lcms2
-              libgcrypt libraw libssh libspectre libvncserver libical
-              networkmanager openal opencv openexr phonon pkgconfig
-              polkit_qt4 prison python qca2 qimageblitz qjson qt4
-              samba saneBackends soprano
-              speechd strigi taglib udev xplanet xscreensaver xz;
+              libaccounts-glib libgcrypt libotr libraw libssh libspectre
+              libvncserver libical networkmanager openal opencv
+              openexr perl phonon pkgconfig polkit_qt4 prison python qca2
+              qimageblitz qjson qt4 samba saneBackends soprano speechd
+              strigi taglib udev xlibs xplanet xscreensaver xz;
       alsa = alsaLib;
       assuan = libassuan;
       boost = boost156;
       canberra = libcanberra;
+      eigen3 = eigen;
       epub = ebook_tools;
+      gif = giflib;
       gphoto2 = libgphoto2;
       hupnp = herqq;
       indi = indilib;
+      jpeg = libjpeg;
       ldap = openldap;
       libattica = attica;
       musicbrainz3 = libmusicbrainz;
@@ -180,6 +185,7 @@ let
       qalculate = libqalculate;
       sasl2 = cyrus_sasl;
       shareddesktopontologies = shared_desktop_ontologies;
+      sharedmimeinfo = shared_mime_info;
       sndfile = libsndfile;
       tiff = libtiff;
       telepathyqt4 = telepathy_qt;
@@ -189,212 +195,330 @@ let
     });
 
   self =
-    (builtins.removeAttrs super [ "artikulate" # build failure; wrong boost?
+    (builtins.removeAttrs super [
+      "artikulate" # build failure; wrong boost?
       "kde-dev-scripts" "kde-dev-utils" # docbook errors
       "kdewebdev" # unknown build failure
+      "kde-l10n-sr" # missing CMake command
     ]) // {
-      inherit kdePackage qt5 scope;
+      audiocd-kio = kde4Package super.audiocd-kio;
 
-      ark = overrideDerivation super.ark (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ pkgs.makeWrapper ];
+      amor = kde4Package super.amor;
+
+      ark = extendDerivation (kde4Package super.ark) {
+        buildInputs = [ pkgs.makeWrapper ];
         # runtime dependency
-        postInstall = (drv.postInstall or "") + ''
+        postInstall = ''
           wrapProgram $out/bin/ark --prefix PATH : "${pkgs.unzipNLS}/bin"
         '';
-      });
+      };
+
+      cervisia = kde4Package super.cervisia;
+
+      dolphin-plugins = kde4Package super.dolphin-plugins;
 
-      ffmpegthumbs = overrideDerivation super.ffmpegthumbs (drv: {
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ];
-      });
+      dragon = kde4Package super.dragon;
 
-      kaccounts-providers = overrideDerivation super.kaccounts-providers (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ pkgs.libaccounts-glib ];
+      ffmpegthumbs = extendDerivation (kde4Package super.ffmpegthumbs) {
+        nativeBuildInputs = [ scope.pkgconfig ];
+      };
+
+      juk = kde4Package super.juk;
+
+      jovie = kde4Package super.jovie;
+
+      kaccessible = kde4Package super.kaccessible;
+
+      kaccounts-providers = extendDerivation super.kaccounts-providers {
+        buildInputs = [ pkgs.libaccounts-glib ];
         # hard-coded install path
-        preConfigure = (drv.preConfigure or "") + ''
+        preConfigure = ''
           substituteInPlace webkit-options/CMakeLists.txt \
             --replace "/etc/signon-ui/webkit-options.d/" \
                       "$out/etc/signon-ui/webkit-options.d/"
         '';
-      });
-
-      kalzium = overrideDerivation super.kalzium (drv: {
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ];
-      });
-
-      kate = overrideDerivation super.kate (drv: {
-        buildInputs =
-          (drv.buildInputs or [])
-          ++ (with kf5; [ kconfig kguiaddons kiconthemes ki18n kinit kjobwidgets
-                          kio kparts ktexteditor kwindowsystem kxmlgui ]);
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ ([ kf5.kdoctools ]);
-      });
-
-      /*
-      kde-baseapps = overrideDerivation super.kde-baseapps (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ scope.qt4 ];
-      });
-      */
-
-      kde-runtime = overrideDerivation super.kde-runtime (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ scope.canberra ];
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ];
+      };
+
+      kajongg = kde4Package super.kajongg;
+
+      kalzium = extendDerivation (kde4Package super.kalzium) {
+        nativeBuildInputs = [ scope.pkgconfig ];
+      };
+
+      kamera = kde4Package super.kamera;
+
+      kate = extendDerivation super.kate {
+        buildInputs = with scope; [
+          kconfig kguiaddons kiconthemes ki18n kinit kjobwidgets kio
+          kparts ktexteditor kwindowsystem kxmlgui
+        ];
+        nativeBuildInputs = [ scope.kdoctools ];
+      };
+
+      kcachegrind = kde4Package super.kcachegrind;
+
+      kcolorchooser = kde4Package super.kcolorchooser;
+
+      kde-base-artwork = kde4Package super.kde-base-artwork;
+
+      kde-baseapps = kde4Package super.kde-baseapps;
+
+      kde-runtime = extendDerivation (kde4Package super.kde-runtime) {
+        buildInputs = [ scope.canberra ];
+        nativeBuildInputs = [ scope.pkgconfig ];
         # cmake does not detect path to `ilmbase`
-        NIX_CFLAGS_COMPILE =
-          (drv.NIX_CFLAGS_COMPILE or "") + " -I${scope.ilmbase}/include/OpenEXR";
+        NIX_CFLAGS_COMPILE = "-I${scope.ilmbase}/include/OpenEXR";
         # some components of this package have been replaced in other packages
         meta = { priority = 10; };
-      });
+      };
+
+      kde-wallpapers = kde4Package super.kde-wallpapers;
 
-      kde-workspace = overrideDerivation super.kde-workspace (drv: {
-        buildInputs =
-          (drv.buildInputs or []) ++
-          (with pkgs.xlibs; [
+      kde-workspace = extendDerivation (kde4Package super.kde-workspace) {
+        buildInputs = with scope.xlibs; [
             libxkbfile libXcomposite xcbutilimage xcbutilkeysyms xcbutilrenderutil
-          ]);
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ];
+        ];
+        nativeBuildInputs = [ scope.pkgconfig ];
         # some components of this package have been replaced in other packages
         meta = { priority = 10; };
-      });
+      };
 
-      kdelibs = overrideDerivation super.kdelibs (drv: {
-        buildInputs =
-          (drv.buildInputs or []) ++ (with scope; [ attr polkit_qt4 xsltproc xz ]);
+      kdeartwork = kde4Package super.kdeartwork;
 
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ];
+      kdegraphics-mobipocket = kde4Package super.kdegraphics-mobipocket;
 
-        # cmake does not detect path to `ilmbase`
-        NIX_CFLAGS_COMPILE =
-          (drv.NIX_CFLAGS_COMPILE or "") + " -I${scope.ilmbase}/include/OpenEXR";
+      kdegraphics-strigi-analyzer = kde4Package super.kdegraphics-strigi-analyzer;
+
+      kdegraphics-thumbnailers = kde4Package super.kdegraphics-thumbnailers;
 
-        propagatedBuildInputs =
-          (drv.propagatedBuildInputs or [])
-          ++ (with scope; [ qt4 soprano phonon strigi ]);
+      kdelibs = extendDerivation super.kdelibs {
+        buildInputs = with scope; [ attr polkit_qt4 xsltproc xz ];
+        propagatedBuildInputs = with scope; [ qt4 soprano phonon strigi ];
+        nativeBuildInputs = [ scope.pkgconfig ];
+        propagatedNativeBuildInputs = with scope; [
+          automoc4 cmake perl sharedmimeinfo
+        ];
 
-        propagatedNativeBuildInputs =
-          (drv.propagatedNativeBuildInputs or [])
-          ++ (with scope; [ automoc4 cmake perl sharedmimeinfo ]);
+        patches = [ ./kdelibs/polkit-install.patch ];
 
-        patches = (drv.patches or []) ++ [ ./kdelibs/polkit-install.patch ];
+        # cmake does not detect path to `ilmbase`
+        NIX_CFLAGS_COMPILE = "-I${scope.ilmbase}/include/OpenEXR";
 
-        cmakeFlags = (drv.cmakeFlags or []) ++ [
+        cmakeFlags = [
           "-DDOCBOOKXML_CURRENTDTD_DIR=${scope.docbook_xml_dtd_42}/xml/dtd/docbook"
           "-DDOCBOOKXSL_DIR=${scope.docbook_xsl}/xml/xsl/docbook"
           "-DHUPNP_ENABLED=ON"
           "-DWITH_SOLID_UDISKS2=ON"
           "-DKDE_DEFAULT_HOME=.kde"
         ];
-      });
-
-      kdenlive = overrideDerivation super.kdenlive (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ scope.mlt ];
-      });
-
-      kdepim = overrideDerivation super.kdepim (drv: {
-        buildInputs = (drv.buildInputs or []) ++ (with scope; [ gpgme assuan ]);
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ];
-      });
-
-      kdepimlibs = overrideDerivation super.kdepimlibs (drv: {
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ];
-      });
-
-      kdesdk-thumbnailers = overrideDerivation super.kdesdk-thumbnailers (drv: {
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.gettext ];
-      });
-
-      kgpg = overrideDerivation super.kgpg (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ scope.boost ];
-      });
-
-      khangman = overrideDerivation super.khangman (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ kf5.kio ];
-      });
-
-      kmix = overrideDerivation super.kmix (drv: {
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ];
-        cmakeFlags = (drv.cmakeFlags or []) ++ [ "-DKMIX_KF5_BUILD=ON" ];
-      });
-
-      kmousetool = overrideDerivation super.kmousetool (drv: {
-        buildInputs = (drv.buildInputs or []) ++ (with pkgs.xlibs; [ libXtst libXt ]);
-      });
-
-      kremotecontrol = overrideDerivation super.kremotecontrol (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ pkgs.xlibs.libXtst ];
-      });
-
-      krfb = overrideDerivation super.krfb (drv: {
-        buildInputs =
-          (drv.buildInputs or [])
-          ++ [ pkgs.xlibs.libXtst scope.ktp-common-internals ];
-      });
-
-      kstars = overrideDerivation super.kstars (drv: {
-        buildInputs = (drv.buildInputs or []) ++ (with scope; [ kparts cfitsio ]);
-      });
-
-      ktp-accounts-kcm = overrideDerivation super.ktp-accounts-kcm (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ pkgs.libaccounts-glib ];
-      });
-
-      ktp-common-internals = overrideDerivation super.ktp-common-internals (drv: {
-        buildInputs =
-          (drv.buildInputs or [])
-          ++ (with scope; [ kdelibs4support kparts ])
-          ++ [ pkgs.libotr ]; # needed for ktp-text-ui
-      });
-
-      ktp-text-ui = overrideDerivation super.ktp-text-ui (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ scope.kdbusaddons ];
-      });
-
-      lokalize = overrideDerivation super.lokalize (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ scope.kdbusaddons ];
-      });
-
-      libkdcraw = overrideDerivation super.libkdcraw (drv: {
-        buildInputs = (drv.buildInputs or []) ++ (with scope; [ kdelibs libraw ]);
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ];
-      });
-
-      libkexiv2 = overrideDerivation super.libkexiv2 (drv: {
-        buildInputs = (drv.buildInputs or []) ++ (with scope; [ exiv2 kdelibs ]);
-      });
-
-      libkface = overrideDerivation super.libkface (drv: {
-        buildInputs = (drv.buildInputs or []) ++ (with scope; [ kdelibs opencv ]);
-      });
-
-      libkgeomap = overrideDerivation super.libkgeomap (drv: {
+      };
+
+      kdenetwork-filesharing = kde4Package super.kdenetwork-filesharing;
+
+      kdenetwork-strigi-analyzers = kde4Package super.kdenetwork-strigi-analyzers;
+
+      kdenlive = extendDerivation super.kdenlive { buildInputs = [ scope.mlt ]; };
+
+      kdepim = extendDerivation (kde4Package super.kdepim) {
+        buildInputs = with scope; [ gpgme assuan ];
+        nativeBuildInputs = [ scope.pkgconfig ];
+      };
+
+      kdepim-runtime = kde4Package super.kdepim-runtime;
+
+      kdepimlibs = extendDerivation (kde4Package super.kdepimlibs) {
+        nativeBuildInputs = [ scope.pkgconfig ];
+      };
+
+      kdesdk-kioslaves = kde4Package super.kdesdk-kioslaves;
+
+      kdesdk-strigi-analyzers = kde4Package super.kdesdk-strigi-analyzers;
+
+      kdesdk-thumbnailers =
+        extendDerivation (kde4Package super.kdesdk-thumbnailers) {
+          nativeBuildInputs = [ scope.gettext ];
+        };
+
+      kdf = kde4Package super.kdf;
+
+      kfloppy = kde4Package super.kfloppy;
+
+      kgamma = kde4Package super.kgamma;
+
+      kget = kde4Package super.kget;
+
+      kgoldrunner = kde4Package super.kgoldrunner;
+
+      kgpg = extendDerivation (kde4Package super.kgpg) {
+        buildInputs = [ scope.boost ];
+      };
+
+      khangman = extendDerivation super.khangman { buildInputs = [ scope.kio ]; };
+
+      kigo = kde4Package super.kigo;
+
+      kiriki = kde4Package super.kiriki;
+
+      klickety = kde4Package super.klickety;
+
+      kmag = kde4Package super.kmag;
+
+      kmahjongg = kde4Package super.kmahjongg;
+
+      kmix = extendDerivation super.kmix {
+        nativeBuildInputs = [ scope.pkgconfig ];
+        cmakeFlags = [ "-DKMIX_KF5_BUILD=ON" ];
+      };
+
+      kmousetool = extendDerivation (kde4Package super.kmousetool) {
+        buildInputs = with scope.xlibs; [ libXtst libXt ];
+      };
+
+      kmouth = kde4Package super.kmouth;
+
+      knavalbattle = kde4Package super.knavalbattle;
+
+      kolf = kde4Package super.kolf;
+
+      kolourpaint = kde4Package super.kolourpaint;
+
+      konquest = kde4Package super.konquest;
+
+      kopete = kde4Package super.kopete;
+
+      kppp = kde4Package super.kppp;
+
+      kqtquickcharts = kde4Package super.kqtquickcharts;
+
+      krdc = kde4Package super.krdc;
+
+      kremotecontrol = extendDerivation (kde4Package super.kremotecontrol) {
+        buildInputs = [ scope.xlibs.libXtst ];
+      };
+
+      kreversi = kde4Package super.kreversi;
+
+      krfb = extendDerivation (kde4Package super.krfb) {
+        buildInputs = with scope; [ xlibs.libXtst ktp-common-internals ];
+      };
+
+      ksaneplugin = kde4Package super.ksaneplugin;
+
+      kscd = kde4Package super.kscd;
+
+      ksirk = kde4Package super.ksirk;
+
+      ksnakeduel = kde4Package super.ksnakeduel;
+
+      ksnapshot = kde4Package super.ksnapshot;
+
+      kspaceduel = kde4Package super.kspaceduel;
+
+      kstars = extendDerivation super.kstars {
+        buildInputs = with scope; [ kparts cfitsio ];
+      };
+
+      ksudoku = kde4Package super.ksudoku;
+
+      ksystemlog = kde4Package super.ksystemlog;
+
+      ktp-accounts-kcm = extendDerivation super.ktp-accounts-kcm {
+        buildInputs = [ scope.libaccounts-glib ];
+      };
+
+      ktp-common-internals = extendDerivation super.ktp-common-internals {
+        buildInputs = with scope; [ kdelibs4support kparts libotr ];
+      };
+
+      ktp-text-ui = extendDerivation super.ktp-text-ui {
+        buildInputs = [ scope.kdbusaddons ];
+      };
+
+      ktuberling = kde4Package super.ktuberling;
+
+      ktux = kde4Package super.ktux;
+
+      kubrick = kde4Package super.kubrick;
+
+      kuser = kde4Package super.kuser;
+
+      kwalletmanager = kde4Package super.kwalletmanager;
+
+      lokalize = extendDerivation super.lokalize {
+        buildInputs = [ scope.kdbusaddons ];
+      };
+
+      libkcddb = kde4Package super.libkcddb;
+
+      libkcompactdisc = kde4Package super.libkcompactdisc;
+
+      libkdcraw = extendDerivation super.libkdcraw {
+        buildInputs = with scope; [ kdelibs libraw ];
+        nativeBuildInputs = [ scope.pkgconfig ];
+      };
+
+      libkdeedu = kde4Package super.libkdeedu;
+
+      libkexiv2 = extendDerivation super.libkexiv2 {
+        buildInputs = with scope; [ exiv2 kdelibs ];
+      };
+
+      libkface = extendDerivation super.libkface {
+        buildInputs = with scope; [ kdelibs opencv ];
+      };
+
+      libkgeomap = extendDerivation (kde4Package super.libkgeomap) {
         cmakeFlags =
-          (drv.cmakeFlags or [])
-          ++ [ "-DCMAKE_MODULE_PATH=${scope.marble}/share/apps/cmake/modules" ];
-      });
+          [ "-DCMAKE_MODULE_PATH=${scope.marble}/share/apps/cmake/modules" ];
+      };
 
-      libkipi = overrideDerivation super.libkipi (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ scope.kdelibs ];
-      });
+      libkipi = extendDerivation super.libkipi {
+        buildInputs = [ scope.kdelibs ];
+      };
 
-      libksane = overrideDerivation super.libksane (drv: {
-        buildInputs = (drv.buildInputs or []) ++ (with scope; [ kdelibs saneBackends]);
-      });
+      libksane = extendDerivation super.libksane {
+        buildInputs = with scope; [ kdelibs saneBackends];
+      };
 
-      okular = overrideDerivation super.okular (drv: {
-        nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ];
-      });
+      lskat = kde4Package super.lskat;
 
-      rocs = overrideDerivation super.rocs (drv: {
-        buildInputs = (drv.buildInputs or []) ++ [ scope.kdelibs4support ];
-      });
+      marble = kde4Package super.marble;
 
-      signon-kwallet-extension =
-        overrideDerivation super.signon-kwallet-extension (drv: {
-          buildInputs = (drv.buildInputs or []) ++ [ scope.signonqt5 ];
-          preConfigure = (drv.preConfigure or "") + ''
-            sed -i src/CMakeLists.txt \
-                -e "s,\''${SIGNONEXTENSION_PLUGINDIR},$out/lib/signon/extensions,"
-          '';
-        });
+      mplayerthumbs = kde4Package super.mplayerthumbs;
+
+      okular = extendDerivation (kde4Package super.okular) {
+        nativeBuildInputs = [ scope.pkgconfig ];
+      };
+
+      pairs = kde4Package super.pairs;
+
+      palapeli = kde4Package super.palapeli;
+
+      picmi = kde4Package super.picmi;
+
+      poxml = kde4Package super.poxml;
+
+      rocs = extendDerivation super.rocs {
+        buildInputs = [ scope.kdelibs4support ];
+      };
+
+      signon-kwallet-extension = extendDerivation super.signon-kwallet-extension {
+        buildInputs = [ scope.signonqt5 ];
+        preConfigure = ''
+          sed -i src/CMakeLists.txt \
+              -e "s,\''${SIGNONEXTENSION_PLUGINDIR},$out/lib/signon/extensions,"
+        '';
+      };
+
+      superkaramba = kde4Package super.superkaramba;
+
+      svgpart = kde4Package super.svgpart;
+
+      sweeper = kde4Package super.sweeper;
+
+      umbrello = kde4Package super.umbrello;
+
+      zeroconf-ioslave = kde4Package super.zeroconf-ioslave;
 
     };
 
diff --git a/pkgs/applications/kde-apps-15.04/setup-hook.sh b/pkgs/applications/kde-apps-15.04/setup-hook.sh
index a8d9b7e0e36f..636669d4c622 100644
--- a/pkgs/applications/kde-apps-15.04/setup-hook.sh
+++ b/pkgs/applications/kde-apps-15.04/setup-hook.sh
@@ -1 +1,12 @@
 addToSearchPath XDG_DATA_DIRS @out@/share
+
+addQt4Plugins() {
+  if [[ -d "$1/lib/qt4/plugins" ]]; then
+      propagatedUserEnvPkgs+=" $1"
+  fi
+
+  if [[ -d "$1/lib/kde4/plugins" ]]; then
+      propagatedUserEnvPkgs+=" $1"
+  fi
+}
+envHooks+=(addQt4Plugins)