about summary refs log tree commit diff
path: root/pkgs/desktops
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/desktops')
-rw-r--r--pkgs/desktops/gnome-2.28/default.nix2
-rw-r--r--pkgs/desktops/gnome-2.28/desktop/gtksourceview/default.nix6
-rw-r--r--pkgs/desktops/gnome-2.28/platform/glib-networking/default.nix4
-rw-r--r--pkgs/desktops/kde-4.5/bindings/default.nix4
-rw-r--r--pkgs/desktops/kde-4.5/default.nix18
-rw-r--r--pkgs/desktops/kde-4.5/games/default.nix4
-rw-r--r--pkgs/desktops/kde-4.5/libs/default.nix4
-rw-r--r--pkgs/desktops/kde-4.5/pim-runtime/default.nix4
-rw-r--r--pkgs/desktops/kde-4.5/pim/default.nix4
-rw-r--r--pkgs/desktops/kde-4.5/support/shared-desktop-ontologies/default.nix22
-rw-r--r--pkgs/desktops/kde-4.5/support/soprano/default.nix8
-rw-r--r--pkgs/desktops/kde-4.6/accessibility/color-schemes.nix14
-rw-r--r--pkgs/desktops/kde-4.6/accessibility/icon-themes.nix15
-rw-r--r--pkgs/desktops/kde-4.6/accessibility/jovie.nix18
-rw-r--r--pkgs/desktops/kde-4.6/accessibility/kmag.nix17
-rw-r--r--pkgs/desktops/kde-4.6/accessibility/kmousetool.nix17
-rw-r--r--pkgs/desktops/kde-4.6/accessibility/kmouth.nix17
-rw-r--r--pkgs/desktops/kde-4.6/admin/builder.sh13
-rw-r--r--pkgs/desktops/kde-4.6/admin/default.nix23
-rw-r--r--pkgs/desktops/kde-4.6/artwork/aurorae.nix14
-rw-r--r--pkgs/desktops/kde-4.6/artwork/color-schemes.nix15
-rw-r--r--pkgs/desktops/kde-4.6/artwork/desktop-themes.nix15
-rw-r--r--pkgs/desktops/kde-4.6/artwork/emoticons.nix15
-rw-r--r--pkgs/desktops/kde-4.6/artwork/high-resolution-wallpapers.nix15
-rw-r--r--pkgs/desktops/kde-4.6/artwork/kscreensaver.nix16
-rw-r--r--pkgs/desktops/kde-4.6/artwork/nuvola-icon-theme.nix16
-rw-r--r--pkgs/desktops/kde-4.6/artwork/phase-style.nix15
-rw-r--r--pkgs/desktops/kde-4.6/artwork/sounds.nix15
-rw-r--r--pkgs/desktops/kde-4.6/artwork/wallpapers.nix15
-rw-r--r--pkgs/desktops/kde-4.6/artwork/weather-wallpapers.nix15
-rw-r--r--pkgs/desktops/kde-4.6/base-runtime/default.nix24
-rw-r--r--pkgs/desktops/kde-4.6/base-workspace/default.nix24
-rw-r--r--pkgs/desktops/kde-4.6/base/default.nix16
-rw-r--r--pkgs/desktops/kde-4.6/bindings/default.nix34
-rw-r--r--pkgs/desktops/kde-4.6/bindings/python-site-packages-install-dir.diff54
-rw-r--r--pkgs/desktops/kde-4.6/bindings/sip-4.11.patch67
-rw-r--r--pkgs/desktops/kde-4.6/default.nix152
-rw-r--r--pkgs/desktops/kde-4.6/edu/default.nix32
-rw-r--r--pkgs/desktops/kde-4.6/games/default.nix19
-rw-r--r--pkgs/desktops/kde-4.6/graphics/default.nix20
-rw-r--r--pkgs/desktops/kde-4.6/kde-package/default.nix50
-rwxr-xr-xpkgs/desktops/kde-4.6/kde-package/kde-manifest.sh39
-rw-r--r--pkgs/desktops/kde-4.6/kde-package/manifest-4.6.0.nix85
-rw-r--r--pkgs/desktops/kde-4.6/l10n/manifest-4.6.0.nix267
-rw-r--r--pkgs/desktops/kde-4.6/libs/default.nix40
-rw-r--r--pkgs/desktops/kde-4.6/multimedia/default.nix17
-rw-r--r--pkgs/desktops/kde-4.6/network/default.nix33
-rw-r--r--pkgs/desktops/kde-4.6/oxygen-icons/default.nix15
-rw-r--r--pkgs/desktops/kde-4.6/pim-runtime/default.nix25
-rw-r--r--pkgs/desktops/kde-4.6/pim/default.nix32
-rw-r--r--pkgs/desktops/kde-4.6/pimlibs/default.nix15
-rw-r--r--pkgs/desktops/kde-4.6/plasma-addons/default.nix20
-rw-r--r--pkgs/desktops/kde-4.6/sdk/cervisia.nix16
-rw-r--r--pkgs/desktops/kde-4.6/sdk/dolphin-plugins.nix16
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kapptemplate.nix17
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kate.nix16
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kbugbuster.nix17
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kcachegrind.nix17
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kdeaccounts-plugin.nix15
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kioslave-perldoc.nix18
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kioslave-svn.nix17
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kmtrace.nix16
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kompare.nix17
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kpartloader.nix17
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kprofilemethod.nix16
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kstartperf.nix17
-rw-r--r--pkgs/desktops/kde-4.6/sdk/kuiviewer.nix17
-rw-r--r--pkgs/desktops/kde-4.6/sdk/lokalize.nix20
-rw-r--r--pkgs/desktops/kde-4.6/sdk/poxml.nix15
-rw-r--r--pkgs/desktops/kde-4.6/sdk/scripts.nix15
-rw-r--r--pkgs/desktops/kde-4.6/sdk/umbrello.nix16
-rw-r--r--pkgs/desktops/kde-4.6/support/akonadi/default.nix17
-rw-r--r--pkgs/desktops/kde-4.6/support/attica/default.nix16
-rw-r--r--pkgs/desktops/kde-4.6/support/polkit-qt-1/default.nix20
-rw-r--r--pkgs/desktops/kde-4.6/support/polkit-qt-1/policy-files.patch25
-rw-r--r--pkgs/desktops/kde-4.6/toys/amor.nix16
-rw-r--r--pkgs/desktops/kde-4.6/toys/kteatime.nix16
-rw-r--r--pkgs/desktops/kde-4.6/toys/ktux.nix16
-rw-r--r--pkgs/desktops/kde-4.6/utils/ark.nix21
-rw-r--r--pkgs/desktops/kde-4.6/utils/kcalc.nix16
-rw-r--r--pkgs/desktops/kde-4.6/utils/kcharselect.nix16
-rw-r--r--pkgs/desktops/kde-4.6/utils/kdf.nix16
-rw-r--r--pkgs/desktops/kde-4.6/utils/kfloppy.nix14
-rw-r--r--pkgs/desktops/kde-4.6/utils/kgpg.nix16
-rw-r--r--pkgs/desktops/kde-4.6/utils/kremotecontrol.nix14
-rw-r--r--pkgs/desktops/kde-4.6/utils/ktimer.nix16
-rw-r--r--pkgs/desktops/kde-4.6/utils/kwallet.nix16
-rw-r--r--pkgs/desktops/kde-4.6/utils/okteta.nix16
-rw-r--r--pkgs/desktops/kde-4.6/utils/printer-applet.nix22
-rw-r--r--pkgs/desktops/kde-4.6/utils/superkaramba.nix18
-rw-r--r--pkgs/desktops/kde-4.6/utils/sweeper.nix16
-rw-r--r--pkgs/desktops/kde-4.6/webdev/kfilereplace.nix17
-rw-r--r--pkgs/desktops/kde-4.6/webdev/kimagemapeditor.nix17
-rw-r--r--pkgs/desktops/kde-4.6/webdev/klinkstatus.nix19
-rw-r--r--pkgs/desktops/kde-4.6/webdev/kommander.nix16
-rw-r--r--pkgs/desktops/kde-4.7/default.nix57
-rw-r--r--pkgs/desktops/kde-4.7/files/polkit-install.patch12
-rw-r--r--pkgs/desktops/kde-4.7/kde-package/4.7.0.nix1
-rw-r--r--pkgs/desktops/kde-4.7/kde-package/default.nix121
-rwxr-xr-xpkgs/desktops/kde-4.7/kde-package/kde-manifest.sh141
-rw-r--r--pkgs/desktops/kde-4.7/kde-package/kde-submodules.xslt22
-rw-r--r--pkgs/desktops/kde-4.7/kde-wallpapers.nix14
-rw-r--r--pkgs/desktops/kde-4.7/kdeaccessibility/jovie.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeaccessibility/kaccessible.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeaccessibility/kmag.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeaccessibility/kmousetool.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeaccessibility/kmouth.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeadmin/kcron.nix5
-rw-r--r--pkgs/desktops/kde-4.7/kdeadmin/ksystemlog.nix5
-rw-r--r--pkgs/desktops/kde-4.7/kdeadmin/kuser.nix5
-rw-r--r--pkgs/desktops/kde-4.7/kdeadmin/system-config-printer-kde.nix33
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/ColorSchemes.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/FindXscreensaver.cmake (renamed from pkgs/desktops/kde-4.6/artwork/FindXscreensaver.cmake)0
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/HighResolutionWallpapers.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/IconThemes.nix13
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/WeatherWallpapers.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/aurorae.nix7
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/desktopthemes.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/emoticons.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/kscreensaver.nix13
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/kwin-styles.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/sounds.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/styles.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdeartwork/wallpapers.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdebase/kate.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdebase/kde-baseapps.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdebase/kde-runtime.nix22
-rw-r--r--pkgs/desktops/kde-4.7/kdebase/kde-workspace.nix32
-rw-r--r--pkgs/desktops/kde-4.7/kdebase/konsole.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdebindings/perlqt.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdebindings/pykde-purity.patch49
-rw-r--r--pkgs/desktops/kde-4.7/kdebindings/pykde4.nix30
-rw-r--r--pkgs/desktops/kde-4.7/kdebindings/smokegen.nix13
-rw-r--r--pkgs/desktops/kde-4.7/kdebindings/smokekde.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdebindings/smokeqt.nix12
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/FindLibfacile.cmake32
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/blinken.nix8
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/cantor.nix8
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kalgebra.nix8
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kalzium-feature-log.patch15
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kalzium.nix15
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kanagram.nix8
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kbruch.nix8
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kgeography.nix8
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/khangman.nix8
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kig.nix12
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kiten.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/klettres.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kmplot.nix12
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kstars.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/ktouch.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kturtle.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/kwordquiz.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/libkdeedu.nix8
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/marble.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/parley.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/rocs.nix14
-rw-r--r--pkgs/desktops/kde-4.7/kdeedu/step.nix12
-rw-r--r--pkgs/desktops/kde-4.7/kdegames.nix18
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/gwenview.nix12
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/kamera.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/kcolorchooser.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/kdegraphics-strigi-analyzer.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/kdegraphics-thumbnailers.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/kgamma.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/kolourpaint.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/kruler.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/ksaneplugin.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/ksnapshot.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/libkdcraw.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/libkexiv2.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/libkipi.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/libksane.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/mobipocket.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/okular.nix12
-rw-r--r--pkgs/desktops/kde-4.7/kdegraphics/svgpart.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdelibs.nix39
-rw-r--r--pkgs/desktops/kde-4.7/kdemultimedia.nix16
-rw-r--r--pkgs/desktops/kde-4.7/kdenetwork/FindmsiLBC.cmake19
-rw-r--r--pkgs/desktops/kde-4.7/kdenetwork/filesharing.nix7
-rw-r--r--pkgs/desktops/kde-4.7/kdenetwork/kdenetwork.patch24
-rw-r--r--pkgs/desktops/kde-4.7/kdenetwork/kdnssd.nix7
-rw-r--r--pkgs/desktops/kde-4.7/kdenetwork/kfile-plugins.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdenetwork/kget.nix13
-rw-r--r--pkgs/desktops/kde-4.7/kdenetwork/kopete.nix21
-rw-r--r--pkgs/desktops/kde-4.7/kdenetwork/kppp.nix7
-rw-r--r--pkgs/desktops/kde-4.7/kdenetwork/krdc.nix7
-rw-r--r--pkgs/desktops/kde-4.7/kdenetwork/krfb.nix7
-rw-r--r--pkgs/desktops/kde-4.7/kdenetwork/log-feature.diff (renamed from pkgs/desktops/kde-4.6/network/log-feature.diff)0
-rw-r--r--pkgs/desktops/kde-4.7/kdepim-runtime.nix12
-rw-r--r--pkgs/desktops/kde-4.7/kdepim.nix19
-rw-r--r--pkgs/desktops/kde-4.7/kdepimlibs.nix14
-rw-r--r--pkgs/desktops/kde-4.7/kdeplasma-addons.nix18
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/cervisia.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/dolphin-plugins-git.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/dolphin-plugins-svn.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/find-svn.patch (renamed from pkgs/desktops/kde-4.6/sdk/find-svn.patch)0
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/kapptemplate.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/kcachegrind.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/kdeaccounts-plugin.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/kioslave-perldoc.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/kioslave-svn.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/kmtrace.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/kompare.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/kpartloader.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/kprofilemethod.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/kstartperf.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/kuiviewer.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/lokalize.nix13
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/okteta.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/optional-docs.diff (renamed from pkgs/desktops/kde-4.6/sdk/optional-docs.diff)0
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/poxml.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/scripts.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/strigi-analyzer.nix (renamed from pkgs/desktops/kde-4.6/sdk/strigi-analyzer.nix)8
-rw-r--r--pkgs/desktops/kde-4.7/kdesdk/umbrello.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdetoys/amor.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdetoys/kteatime.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdetoys/ktux.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/ark.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/filelight.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/kcalc.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/kcharselect.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/kdf.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/kfloppy.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/kgpg.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/kremotecontrol.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/ktimer.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/kwallet.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/printer-applet.nix28
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/superkaramba.nix11
-rw-r--r--pkgs/desktops/kde-4.7/kdeutils/sweeper.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kdewebdev/kfilereplace.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdewebdev/kimagemapeditor.nix10
-rw-r--r--pkgs/desktops/kde-4.7/kdewebdev/klinkstatus.nix12
-rw-r--r--pkgs/desktops/kde-4.7/kdewebdev/kommander.nix9
-rw-r--r--pkgs/desktops/kde-4.7/kipi-plugins.nix29
-rw-r--r--pkgs/desktops/kde-4.7/l10n/default.nix (renamed from pkgs/desktops/kde-4.6/l10n/default.nix)6
-rwxr-xr-xpkgs/desktops/kde-4.7/l10n/l10n-manifest.sh (renamed from pkgs/desktops/kde-4.6/l10n/l10n-manifest.sh)0
-rw-r--r--pkgs/desktops/kde-4.7/l10n/manifest-4.7.0.nix262
-rw-r--r--pkgs/desktops/kde-4.7/oxygen-icons.nix15
-rw-r--r--pkgs/desktops/kde-4.7/support/akonadi/default.nix22
-rw-r--r--pkgs/desktops/kde-4.7/support/soprano/default.nix (renamed from pkgs/desktops/kde-4.6/support/soprano/default.nix)15
-rw-r--r--pkgs/desktops/xfce-4.6/applications/mousepad.nix (renamed from pkgs/desktops/xfce-4/applications/mousepad.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/applications/ristretto.nix (renamed from pkgs/desktops/xfce-4/applications/ristretto.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/applications/terminal.nix (renamed from pkgs/desktops/xfce-4/applications/terminal.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/applications/xfce4-mixer.nix (renamed from pkgs/desktops/xfce-4/applications/xfce4-mixer.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/applications/xfce4-power-manager.nix (renamed from pkgs/desktops/xfce-4/applications/xfce4-power-manager.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/art/xfce4-icon-theme.nix (renamed from pkgs/desktops/xfce-4/art/xfce4-icon-theme.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/exo.nix (renamed from pkgs/desktops/xfce-4/core/exo.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/gtk-xfce-engine.nix (renamed from pkgs/desktops/xfce-4/core/gtk-xfce-engine.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/libxfce4menu.nix (renamed from pkgs/desktops/xfce-4/core/libxfce4menu.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/libxfce4util.nix (renamed from pkgs/desktops/xfce-4/core/libxfce4util.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/libxfcegui4.nix (renamed from pkgs/desktops/xfce-4/core/libxfcegui4.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/thunar.nix (renamed from pkgs/desktops/xfce-4/core/thunar.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/xfce-utils.nix (renamed from pkgs/desktops/xfce-4/core/xfce-utils.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/xfce4-panel.nix (renamed from pkgs/desktops/xfce-4/core/xfce4-panel.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/xfce4-session.nix (renamed from pkgs/desktops/xfce-4/core/xfce4-session.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/xfce4-settings.nix (renamed from pkgs/desktops/xfce-4/core/xfce4-settings.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/xfconf.nix (renamed from pkgs/desktops/xfce-4/core/xfconf.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/xfdesktop.nix (renamed from pkgs/desktops/xfce-4/core/xfdesktop.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/core/xfwm4.nix (renamed from pkgs/desktops/xfce-4/core/xfwm4.nix)0
-rw-r--r--pkgs/desktops/xfce-4.6/default.nix (renamed from pkgs/desktops/xfce-4/default.nix)0
-rw-r--r--pkgs/desktops/xfce-4.8/applications/mousepad.nix18
-rw-r--r--pkgs/desktops/xfce-4.8/applications/ristretto.nix24
-rw-r--r--pkgs/desktops/xfce-4.8/applications/terminal.nix23
-rw-r--r--pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix38
-rw-r--r--pkgs/desktops/xfce-4.8/applications/xfce4-power-manager.nix22
-rw-r--r--pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix17
-rw-r--r--pkgs/desktops/xfce-4.8/core/exo.nix19
-rw-r--r--pkgs/desktops/xfce-4.8/core/garcon.nix18
-rw-r--r--pkgs/desktops/xfce-4.8/core/gtk-xfce-engine.nix19
-rw-r--r--pkgs/desktops/xfce-4.8/core/libxfce4ui.nix24
-rw-r--r--pkgs/desktops/xfce-4.8/core/libxfce4util.nix18
-rw-r--r--pkgs/desktops/xfce-4.8/core/libxfcegui4.nix31
-rw-r--r--pkgs/desktops/xfce-4.8/core/thunar.nix24
-rw-r--r--pkgs/desktops/xfce-4.8/core/xfce-utils.nix20
-rw-r--r--pkgs/desktops/xfce-4.8/core/xfce4-panel.nix24
-rw-r--r--pkgs/desktops/xfce-4.8/core/xfce4-session.nix22
-rw-r--r--pkgs/desktops/xfce-4.8/core/xfce4-settings.nix24
-rw-r--r--pkgs/desktops/xfce-4.8/core/xfconf.nix20
-rw-r--r--pkgs/desktops/xfce-4.8/core/xfdesktop.nix24
-rw-r--r--pkgs/desktops/xfce-4.8/core/xfwm4.nix25
-rw-r--r--pkgs/desktops/xfce-4.8/default.nix68
283 files changed, 2790 insertions, 2148 deletions
diff --git a/pkgs/desktops/gnome-2.28/default.nix b/pkgs/desktops/gnome-2.28/default.nix
index db458df1e644c..36eb7b70be2bf 100644
--- a/pkgs/desktops/gnome-2.28/default.nix
+++ b/pkgs/desktops/gnome-2.28/default.nix
@@ -143,7 +143,7 @@ pkgs.makeOverridable
   };
 
   glib_networking = import ./platform/glib-networking {
-    inherit (pkgs) stdenv fetchurl pkgconfig glib libtool intltool gnutls
+    inherit (pkgs) stdenv fetchurl pkgconfig glib libtool intltool gnutls2
       libproxy libgcrypt libtasn1;
   };
 
diff --git a/pkgs/desktops/gnome-2.28/desktop/gtksourceview/default.nix b/pkgs/desktops/gnome-2.28/desktop/gtksourceview/default.nix
index a19c8e5fcd0df..64dbd8e1a6f39 100644
--- a/pkgs/desktops/gnome-2.28/desktop/gtksourceview/default.nix
+++ b/pkgs/desktops/gnome-2.28/desktop/gtksourceview/default.nix
@@ -2,10 +2,10 @@
   libxml2, perl, intltool, gettext}:
 
 stdenv.mkDerivation {
-  name = "gtksourceview-2.8.1";
+  name = "gtksourceview-2.9.9";
   src = fetchurl {
-    url = mirror://gnome/sources/gtksourceview/2.8/gtksourceview-2.8.1.tar.bz2;
-    sha256 = "02irdw8sz374d3k51sx21hm7vmpkcwrhmnpp3v6afa2jcwi84zp6";
+    url = mirror://gnome/sources/gtksourceview/2.9/gtksourceview-2.9.9.tar.bz2;
+    sha256 = "0d0i586nj8jsqqfcjcvaj0yzc3sid3s1a4y62xr0qbddkbn1wllj";
   };
   buildInputs = [pkgconfig atk cairo glib gtk pango libxml2 perl intltool
     gettext];
diff --git a/pkgs/desktops/gnome-2.28/platform/glib-networking/default.nix b/pkgs/desktops/gnome-2.28/platform/glib-networking/default.nix
index 5b7f590b29ca6..53ab1ba084065 100644
--- a/pkgs/desktops/gnome-2.28/platform/glib-networking/default.nix
+++ b/pkgs/desktops/gnome-2.28/platform/glib-networking/default.nix
@@ -1,4 +1,4 @@
-{stdenv, fetchurl, pkgconfig, glib, libtool, intltool, gnutls, libproxy
+{stdenv, fetchurl, pkgconfig, glib, libtool, intltool, gnutls2, libproxy
   , libgcrypt, libtasn1
   }:
 
@@ -19,6 +19,6 @@ stdenv.mkDerivation {
   '';
 
   buildInputs = [ pkgconfig ];
-  propagatedBuildInputs = [ glib libtool intltool gnutls libproxy libgcrypt 
+  propagatedBuildInputs = [ glib libtool intltool gnutls2 libproxy libgcrypt 
     libtasn1];
 }
diff --git a/pkgs/desktops/kde-4.5/bindings/default.nix b/pkgs/desktops/kde-4.5/bindings/default.nix
index f7e35c5dba727..ec4c2ecc4cb52 100644
--- a/pkgs/desktops/kde-4.5/bindings/default.nix
+++ b/pkgs/desktops/kde-4.5/bindings/default.nix
@@ -19,10 +19,10 @@ kde.package rec {
       -DCUSTOM_PERL_SITE_ARCH_DIR=$CUSTOM_PERL_SITE_ARCH_DIR
     )
   '';
-  
+
   # TODO: okular, qimageblitz, qwt5, qscintilla2, c#
   buildInputs = [ cmake perl python sip pyqt4 zlib libpng freetype fontconfig qt4 boost
-          kdelibs kdepimlibs automoc4 soprano akonadi attica polkit_qt_1 ruby ];
+          kdelibs kdepimlibs automoc4 soprano attica polkit_qt_1 ruby ];
 
   meta = {
     description = "KDE bindings";
diff --git a/pkgs/desktops/kde-4.5/default.nix b/pkgs/desktops/kde-4.5/default.nix
index d09b4ae3f536b..9381107ef6fb0 100644
--- a/pkgs/desktops/kde-4.5/default.nix
+++ b/pkgs/desktops/kde-4.5/default.nix
@@ -1,4 +1,4 @@
-{ callPackage, recurseIntoAttrs, runCommand, stdenv, fetchurl, qt47 } :
+{ callPackage, recurseIntoAttrs, callPackageOrig, runCommand, stdenv, fetchurl, qt47, ffmpeg_0_6_90 } :
 
 let
 
@@ -17,14 +17,14 @@ let
 
 in
 
-recurseIntoAttrs rec {
-  recurseForRelease = true;
-
+rec {
   inherit callPackage stdenv;
 
   qt4 = qt47;
 
-  phonon = null;
+  ffmpeg = ffmpeg_0_6_90;
+
+  shared_desktop_ontologies = callPackage ./support/shared-desktop-ontologies { };
 
   kde = callPackage ./kde-package { inherit release; };
 
@@ -47,6 +47,9 @@ recurseIntoAttrs rec {
 ### BASE
   kdebase = callPackage ./base { };
 
+  # Forward compatibility.
+  kde_baseapps = kdebase;
+
   kdebase_workspace = callPackage ./base-workspace { };
 
   kdebase_runtime = callPackage ./base-runtime { };
@@ -125,7 +128,7 @@ recurseIntoAttrs rec {
     ktimer = callPackage ./utils/ktimer.nix { };
     kwallet = callPackage ./utils/kwallet.nix { };
     okteta = callPackage ./utils/okteta.nix { };
-    printer_applet = callPackage ./utils/printer-applet.nix { };
+    #printer_applet = callPackage ./utils/printer-applet.nix { };
     superkaramba = callPackage ./utils/superkaramba.nix { };
     sweeper = callPackage ./utils/sweeper.nix { };
   };
@@ -142,7 +145,8 @@ recurseIntoAttrs rec {
 
 ### DEVELOPMENT
 
-  kdebindings = callPackage ./bindings { };
+  #kdebindings = callPackage ./bindings { };
+  kdebindings = null;
 
   l10n = callPackage ./l10n { inherit release; };
 
diff --git a/pkgs/desktops/kde-4.5/games/default.nix b/pkgs/desktops/kde-4.5/games/default.nix
index a83b2a9494aa5..8a407b3f57215 100644
--- a/pkgs/desktops/kde-4.5/games/default.nix
+++ b/pkgs/desktops/kde-4.5/games/default.nix
@@ -7,10 +7,6 @@ kde.package {
   buildInputs = [ cmake qt4 perl shared_mime_info kdelibs automoc4 qca2
     kdebindings twisted python pyqt4 sip makeWrapper ];
 
-  postInstall = ''
-    wrapProgram $out/bin/kajongg --set PYTHONPATH $PYTHONPATH
-    wrapProgram $out/bin/kajonggserver --set PYTHONPATH $PYTHONPATH'';
-
   meta = {
     description = "KDE Games";
     license = "GPL";
diff --git a/pkgs/desktops/kde-4.5/libs/default.nix b/pkgs/desktops/kde-4.5/libs/default.nix
index 9e9ac65c01679..c45b9ac98f809 100644
--- a/pkgs/desktops/kde-4.5/libs/default.nix
+++ b/pkgs/desktops/kde-4.5/libs/default.nix
@@ -2,7 +2,7 @@
 , qt4, bzip2, pcre, fam, libxml2, libxslt, shared_mime_info, giflib, jasper
 , xz, flex, bison, openexr, aspell, avahi, kerberos, acl, attr, shared_desktop_ontologies, libXScrnSaver
 , automoc4, strigi, soprano, qca2, attica, enchant, libdbusmenu_qt
-, docbook_xml_dtd_42, docbook_xsl, polkit_qt_1, hspell
+, docbook_xml_dtd_42, docbook_xsl, polkit_qt_1, hspell, phonon
 }:
 
 kde.package {
@@ -19,7 +19,7 @@ kde.package {
 # Split plugins from libs?
 
   propagatedBuildInputs = [ qt4 gcc.libc strigi soprano attica qca2
-    shared_desktop_ontologies ];
+    shared_desktop_ontologies phonon ];
 
   patches = [ ./polkit-install.patch ];
 
diff --git a/pkgs/desktops/kde-4.5/pim-runtime/default.nix b/pkgs/desktops/kde-4.5/pim-runtime/default.nix
index d92f1eecc73ba..6fb6a44d38d49 100644
--- a/pkgs/desktops/kde-4.5/pim-runtime/default.nix
+++ b/pkgs/desktops/kde-4.5/pim-runtime/default.nix
@@ -12,7 +12,7 @@ kde.package rec {
 
   src = fetchurl {
     url = "mirror://kde/stable/kdepim-${meta.kde.version}/src/${meta.kde.name}-${meta.kde.version}.tar.bz2";
-    sha256 = "029a0i83b2yrc1xn9as7gc9rakpxjh5cjmqcmhrrj0xwalqz490n";
+    sha256 = "0w99jv0lzajmz9gvgss8gkgffm0lpqv3r6pzfsnqhrdhcf6h853y";
   };
 
   meta = {
@@ -21,7 +21,7 @@ kde.package rec {
     license = "GPL";
     kde = {
       name = "kdepim-runtime";
-      version = "4.4.8";
+      version = "4.4.9";
     };
   };
 }
diff --git a/pkgs/desktops/kde-4.5/pim/default.nix b/pkgs/desktops/kde-4.5/pim/default.nix
index cdcc3dc023dbf..5f7d5e06c48ca 100644
--- a/pkgs/desktops/kde-4.5/pim/default.nix
+++ b/pkgs/desktops/kde-4.5/pim/default.nix
@@ -16,7 +16,7 @@ kde.package rec {
 
   src = fetchurl {
     url = "mirror://kde/stable/kdepim-${meta.kde.version}/src/${meta.kde.name}-${meta.kde.version}.tar.bz2";
-    sha256 = "02nbdn8s4504ljqz0qylm1jyw4hpg5fjw3vi6sbzm522xvkax4wh";
+    sha256 = "0pr1n6k51aadi8fsk7rkv0vrfl4y6llywxjkzci6if7g300yd8r8";
   };
 
   meta = {
@@ -28,7 +28,7 @@ kde.package rec {
     homepage = http://pim.kde.org;
     kde = {
       name = "kdepim";
-      version = "4.4.8";
+      version = "4.4.9";
     };
   };
 }
diff --git a/pkgs/desktops/kde-4.5/support/shared-desktop-ontologies/default.nix b/pkgs/desktops/kde-4.5/support/shared-desktop-ontologies/default.nix
new file mode 100644
index 0000000000000..b4713794a03ec
--- /dev/null
+++ b/pkgs/desktops/kde-4.5/support/shared-desktop-ontologies/default.nix
@@ -0,0 +1,22 @@
+{stdenv, fetchurl, cmake}:
+
+stdenv.mkDerivation rec {
+  name = "shared-desktop-ontologies-0.5";
+  src = fetchurl {
+    url = "mirror://sf/oscaf/${name}.tar.bz2";
+    sha256 = "1a1gs2b314133rg7vzwvnqbxchf7xgs0jpkydid5l2wz98m7j17r";
+  };
+  buildInputs = [ cmake ];
+  meta = with stdenv.lib; {
+    description = "Ontologies necessary for the Nepomuk semantic desktop";
+    longDescription = ''
+      The shared-desktop-ontologies package brings the semantic web to the
+      desktop in terms of vocabulary. It contains the well known core
+      ontologies such as RDF and RDFS as well as the Nepomuk ontologies which
+      are used by projects like KDE or Strigi.
+    '';
+    platforms = platforms.all;
+    maintainers = [ maintainers.sander maintainers.urkud ];
+  };
+}
+
diff --git a/pkgs/desktops/kde-4.5/support/soprano/default.nix b/pkgs/desktops/kde-4.5/support/soprano/default.nix
index 073ea87e9721e..8d07f352d17dd 100644
--- a/pkgs/desktops/kde-4.5/support/soprano/default.nix
+++ b/pkgs/desktops/kde-4.5/support/soprano/default.nix
@@ -1,15 +1,15 @@
-{stdenv, fetchurl, cmake, qt4, cluceneCore, redland, libiodbc}:
+{ stdenv, fetchurl, cmake, qt4, clucene_core, redland, libiodbc }:
 
 stdenv.mkDerivation rec {
-  name = "soprano-2.5.3";
+  name = "soprano-2.7.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/soprano/${name}.tar.bz2";
-    sha256 = "0hxc6jnbh0529jsc0ixvy8pshnffrpgsadinhk9navkpyn5xg4l9";
+    sha256 = "1ki92wg0i9nhn1fh5mdcls5h9h3lf2k5r66snsags4x7zw0dmv2z";
   };
 
   # We disable the Java backend, since we do not need them and they make the closure size much bigger
-  buildInputs = [ cmake qt4 cluceneCore redland libiodbc ];
+  buildInputs = [ cmake qt4 clucene_core redland libiodbc ];
 
   meta = {
     homepage = http://soprano.sourceforge.net/;
diff --git a/pkgs/desktops/kde-4.6/accessibility/color-schemes.nix b/pkgs/desktops/kde-4.6/accessibility/color-schemes.nix
deleted file mode 100644
index 997ad8ff4f4ee..0000000000000
--- a/pkgs/desktops/kde-4.6/accessibility/color-schemes.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kde, cmake, qt4, perl, automoc4, kdelibs }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 ];
-
-  meta = {
-    description = "KDE Accessibility color schemes";
-    kde = {
-      name = "ColorSchemes";
-      module = "kdeaccessibility";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/accessibility/icon-themes.nix b/pkgs/desktops/kde-4.6/accessibility/icon-themes.nix
deleted file mode 100644
index 2f18298f22708..0000000000000
--- a/pkgs/desktops/kde-4.6/accessibility/icon-themes.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ kde, cmake, qt4, perl, automoc4, kdelibs }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 ];
-
-  meta = {
-    description = "KDE mono icon theme";
-    kde = {
-      name = "IconThemes";
-      module = "kdeaccessibility";
-      version = "4.5.90";
-    };
-  };
-}
-
diff --git a/pkgs/desktops/kde-4.6/accessibility/jovie.nix b/pkgs/desktops/kde-4.6/accessibility/jovie.nix
deleted file mode 100644
index 9270d5fb177fb..0000000000000
--- a/pkgs/desktops/kde-4.6/accessibility/jovie.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ kde, cmake, qt4, perl, automoc4, kdelibs }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 ];
-
-#TODO: working backend: speechd or opentts
-  meta = {
-    description = "Text-to-speech synthesis daemon";
-    kde = {
-      name = "jovie";
-      module = "kdeaccessibility";
-      version = "0.6.0";
-      release = "4.5.90";
-      versionFile = "jovie/jovie/main.cpp";
-    };
-  };
-}
-
diff --git a/pkgs/desktops/kde-4.6/accessibility/kmag.nix b/pkgs/desktops/kde-4.6/accessibility/kmag.nix
deleted file mode 100644
index 207f1d0b3cbbd..0000000000000
--- a/pkgs/desktops/kde-4.6/accessibility/kmag.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, qt4, perl, automoc4, kdelibs }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 ];
-
-  meta = {
-    description = "Screen magnifier for KDE";
-    kde = {
-      name = "kmag";
-      module = "kdeaccessibility";
-      version = "1.0";
-      release = "4.5.90";
-      versionFile = "kmag/version.h";
-    };
-  };
-}
-
diff --git a/pkgs/desktops/kde-4.6/accessibility/kmousetool.nix b/pkgs/desktops/kde-4.6/accessibility/kmousetool.nix
deleted file mode 100644
index bb10de6e3ceea..0000000000000
--- a/pkgs/desktops/kde-4.6/accessibility/kmousetool.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, qt4, perl, automoc4, kdelibs, libXtst }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 libXtst ];
-
-  meta = {
-    description = "A program that clicks the mouse for you";
-    kde = {
-      name = "kmousetool";
-      module = "kdeaccessibility";
-      version = "1.12";
-      release = "4.5.90";
-      versionFile = "kmousetool/kmousetool/version.h";
-    };
-  };
-}
-
diff --git a/pkgs/desktops/kde-4.6/accessibility/kmouth.nix b/pkgs/desktops/kde-4.6/accessibility/kmouth.nix
deleted file mode 100644
index 6bbee6106fda5..0000000000000
--- a/pkgs/desktops/kde-4.6/accessibility/kmouth.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, qt4, perl, automoc4, kdelibs }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 ];
-
-  meta = {
-    description = "A type-and-say front end for speech synthesizers";
-    kde = {
-      name = "kmouth";
-      module = "kdeaccessibility";
-      version = "1.1.1";
-      release = "4.5.90";
-      versionFile = "kmouth/version.h";
-    };
-  };
-}
-
diff --git a/pkgs/desktops/kde-4.6/admin/builder.sh b/pkgs/desktops/kde-4.6/admin/builder.sh
deleted file mode 100644
index 78e29543c1f02..0000000000000
--- a/pkgs/desktops/kde-4.6/admin/builder.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-source $stdenv/setup
-
-myPatchPhase()
-{
-    for i in system-config-printer-kde/cmake-modules/FindSystemConfigPrinter.py system-config-printer-kde/system-config-printer-kde.py
-    do
-	sed -i -e "s|/usr/share/system-config-printer|$system_config_printer/share/system-config-printer|" $i
-    done
-
-	sed -i -e "s|import cupshelpers.ppds, cupshelpers.cupshelpers|import ppds, cupshelpers|" system-config-printer-kde/cmake-modules/FindSystemConfigPrinter.py
-}
-patchPhase=myPatchPhase
-genericBuild
diff --git a/pkgs/desktops/kde-4.6/admin/default.nix b/pkgs/desktops/kde-4.6/admin/default.nix
deleted file mode 100644
index 8b91430ddd9c1..0000000000000
--- a/pkgs/desktops/kde-4.6/admin/default.nix
+++ /dev/null
@@ -1,23 +0,0 @@
-{ kde, cmake, qt4, pkgconfig, perl, python
-, sip, pyqt4, pycups, rhpl, system_config_printer
-, kdelibs, kdepimlibs, kdebindings, automoc4}:
-
-kde.package {
-
-  builder = ./builder.sh;
-
-  inherit system_config_printer;
-
-  # TODO: split, check which packages work on nixos
-
-  PYTHONPATH = "${pycups}/lib/python${python.majorVersion}/site-packages";
-
-  buildInputs = [ cmake qt4 pkgconfig perl python sip pyqt4 pycups rhpl system_config_printer
-                  kdelibs kdepimlibs kdebindings automoc4 ];
-
-  meta = {
-    description = "KDE Administration Utilities";
-    license = "GPL";
-    kde.module = "kdeadmin";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/artwork/aurorae.nix b/pkgs/desktops/kde-4.6/artwork/aurorae.nix
deleted file mode 100644
index 307cdf92ba09f..0000000000000
--- a/pkgs/desktops/kde-4.6/artwork/aurorae.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ cmake, kde, automoc4, kdelibs }:
-
-kde.package rec {
-  name = "aurorae-themes-${meta.kde.version}";
-
-  buildInputs = [ cmake automoc4 kdelibs ];
-  meta = {
-    kde = {
-      name = "aurorae";
-      module = "kdeartwork";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/artwork/color-schemes.nix b/pkgs/desktops/kde-4.6/artwork/color-schemes.nix
deleted file mode 100644
index ddf1cb7765718..0000000000000
--- a/pkgs/desktops/kde-4.6/artwork/color-schemes.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ cmake, kde, automoc4, kdelibs }:
-
-kde.package rec {
-  name = "kde-color-schemes-${meta.kde.version}";
-
-  buildInputs = [ cmake automoc4 kdelibs ];
-  meta = {
-    description = "Additional KDE color schemes";
-    kde = {
-      name = "ColorSchemes";
-      module = "kdeartwork";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/artwork/desktop-themes.nix b/pkgs/desktops/kde-4.6/artwork/desktop-themes.nix
deleted file mode 100644
index 4bca474f25447..0000000000000
--- a/pkgs/desktops/kde-4.6/artwork/desktop-themes.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ cmake, kde, automoc4, kdelibs }:
-
-kde.package rec {
-  name = "kde-desktop-themes-${meta.kde.version}";
-
-  buildInputs = [ cmake automoc4 kdelibs ];
-  meta = {
-    description = "Additional KDE desktop themes";
-    kde = {
-      name = "desktopthemes";
-      module = "kdeartwork";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/artwork/emoticons.nix b/pkgs/desktops/kde-4.6/artwork/emoticons.nix
deleted file mode 100644
index 5ec584d4d0c66..0000000000000
--- a/pkgs/desktops/kde-4.6/artwork/emoticons.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ cmake, kde, automoc4, kdelibs }:
-
-kde.package rec {
-  name = "kde-emotion-icons-${meta.kde.version}";
-
-  buildInputs = [ cmake automoc4 kdelibs ];
-  meta = {
-    description = "Additional KDE emotion icons (smiles)";
-    kde = {
-      name = "emoticons";
-      module = "kdeartwork";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/artwork/high-resolution-wallpapers.nix b/pkgs/desktops/kde-4.6/artwork/high-resolution-wallpapers.nix
deleted file mode 100644
index 5620228865984..0000000000000
--- a/pkgs/desktops/kde-4.6/artwork/high-resolution-wallpapers.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ cmake, kde, automoc4, kdelibs }:
-
-kde.package rec {
-  name = "kde-wallpapers-high-resolution-${meta.kde.version}";
-
-  buildInputs = [ cmake automoc4 kdelibs ];
-  meta = {
-    description = "KDE wallpapers in high resolution";
-    kde = {
-      name = "HighResolutionWallpapers";
-      module = "kdeartwork";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/artwork/kscreensaver.nix b/pkgs/desktops/kde-4.6/artwork/kscreensaver.nix
deleted file mode 100644
index b7020c0e4f89c..0000000000000
--- a/pkgs/desktops/kde-4.6/artwork/kscreensaver.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ cmake, kde, automoc4, kdelibs, xscreensaver, kdebase_workspace, eigen }:
-
-kde.package rec {
-  buildInputs = [ cmake automoc4 kdelibs xscreensaver kdebase_workspace eigen ];
-  preConfigure = "cp -v ${./FindXscreensaver.cmake} cmake/modules/FindXscreensaver.cmake";
-  meta = {
-    description = "KDE screen saver and savers";
-    kde = {
-      name = "kscreensaver";
-      module = "kdeartwork";
-      version = "1.0";
-      release = "4.5.90";
-      versionFile = "kscreensaver/kpartsaver/kpartsaver.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/artwork/nuvola-icon-theme.nix b/pkgs/desktops/kde-4.6/artwork/nuvola-icon-theme.nix
deleted file mode 100644
index 9719fefc33f19..0000000000000
--- a/pkgs/desktops/kde-4.6/artwork/nuvola-icon-theme.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ cmake, kde, automoc4, kdelibs }:
-
-kde.package rec {
-  name = "nuvola-icon-theme-${meta.kde.version}";
-# Sources contain primary and kdeclassic as well but they're not installed
-
-  buildInputs = [ cmake automoc4 kdelibs ];
-  meta = {
-    description = "KDE nuvola icon theme";
-    kde = {
-      name = "IconThemes";
-      module = "kdeartwork";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/artwork/phase-style.nix b/pkgs/desktops/kde-4.6/artwork/phase-style.nix
deleted file mode 100644
index 068bc458a1a71..0000000000000
--- a/pkgs/desktops/kde-4.6/artwork/phase-style.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ cmake, kde, automoc4, kdelibs }:
-
-kde.package rec {
-  name = "kde-style-phase-${meta.kde.version}";
-
-  buildInputs = [ cmake automoc4 kdelibs ];
-  meta = {
-    description = "KDE phase style. Clean classical look";
-    kde = {
-      name = "styles";
-      module = "kdeartwork";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/artwork/sounds.nix b/pkgs/desktops/kde-4.6/artwork/sounds.nix
deleted file mode 100644
index 612bf1613f9b8..0000000000000
--- a/pkgs/desktops/kde-4.6/artwork/sounds.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ cmake, kde, automoc4, kdelibs }:
-
-kde.package rec {
-  name = "kde-sounds-${meta.kde.version}";
-
-  buildInputs = [ cmake automoc4 kdelibs ];
-  meta = {
-    description = "New login/logout sounds";
-    kde = {
-      name = "sounds";
-      module = "kdeartwork";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/artwork/wallpapers.nix b/pkgs/desktops/kde-4.6/artwork/wallpapers.nix
deleted file mode 100644
index b46d65aa55001..0000000000000
--- a/pkgs/desktops/kde-4.6/artwork/wallpapers.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ cmake, kde, automoc4, kdelibs }:
-
-kde.package rec {
-  name = "kde-wallpapers-${meta.kde.version}";
-
-  buildInputs = [ cmake automoc4 kdelibs ];
-  meta = {
-    description = "Additional KDE wallpapers";
-    kde = {
-      name = "wallpapers";
-      module = "kdeartwork";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/artwork/weather-wallpapers.nix b/pkgs/desktops/kde-4.6/artwork/weather-wallpapers.nix
deleted file mode 100644
index d4f7d1d2a2f1e..0000000000000
--- a/pkgs/desktops/kde-4.6/artwork/weather-wallpapers.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ cmake, kde, automoc4, kdelibs }:
-
-kde.package rec {
-  name = "kde-weather-wallpapers-${meta.kde.version}";
-
-  buildInputs = [ cmake automoc4 kdelibs ];
-  meta = {
-    description = "Additional KDE wallpapers (weather)";
-    kde = {
-      name = "WeatherWallpapers";
-      module = "kdeartwork";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/base-runtime/default.nix b/pkgs/desktops/kde-4.6/base-runtime/default.nix
deleted file mode 100644
index 3bafa9a8cdeaf..0000000000000
--- a/pkgs/desktops/kde-4.6/base-runtime/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ kde, cmake, perl, bzip2, xz, qt4, alsaLib, xineLib, samba,
-  shared_mime_info, exiv2, libssh , kdelibs, automoc4, strigi, soprano,
-  cluceneCore, attica, virtuoso, makeWrapper, oxygen_icons }:
-
-kde.package {
-
-  buildInputs = [ cmake perl bzip2 xz qt4 alsaLib xineLib samba shared_mime_info
-    exiv2 libssh kdelibs automoc4 strigi soprano cluceneCore attica
-    makeWrapper];
-
-# TODO: OpenSLP, OpenEXR
-  postInstall = ''
-    rm -v $out/share/icons/default.kde4
-    wrapProgram "$out/bin/nepomukservicestub" --prefix LD_LIBRARY_PATH : "${virtuoso}/lib" \
-        --prefix PATH : "${virtuoso}/bin"
-  '';
-
-  meta = {
-    description = "KDE runtime";
-    longDescription = "Libraries and tools which supports running KDE desktop applications";
-    license = "LGPL";
-    kde.module = "kdebase-runtime";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/base-workspace/default.nix b/pkgs/desktops/kde-4.6/base-workspace/default.nix
deleted file mode 100644
index 0d7de80085fbb..0000000000000
--- a/pkgs/desktops/kde-4.6/base-workspace/default.nix
+++ /dev/null
@@ -1,24 +0,0 @@
-{ kde, cmake, perl, python, pam, consolekit
-, qt4, sip, pyqt4, kdelibs, kdepimlibs, kdebindings
-, libXi, libXau, libXdmcp, libXtst, libXcomposite, libXdamage, libXScrnSaver
-, lm_sensors, libxklavier, libusb, libpthreadstubs, boost
-, automoc4, strigi, soprano, qimageblitz, akonadi
-, libdbusmenu_qt, libqalculate, pciutils, libraw1394, bluez
-}:
-
-kde.package {
-
-# TODO: qedje, qzion, ggadgets, libgps
-  buildInputs = [ cmake perl python qt4 pam consolekit sip pyqt4 kdelibs libXtst
-    kdepimlibs kdebindings boost libusb libXi libXau libXdmcp libraw1394
-    libXcomposite libXdamage libXScrnSaver lm_sensors libxklavier automoc4
-    strigi soprano qimageblitz akonadi libpthreadstubs libdbusmenu_qt libqalculate
-    pciutils bluez ];
-
-  meta = {
-    description = "KDE base platform-specific components";
-    longDescription = "KDE base components that are only required to work with X11 such KDM and KWin";
-    license = "GPL";
-    kde.module = "kdebase-workspace";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/base/default.nix b/pkgs/desktops/kde-4.6/base/default.nix
deleted file mode 100644
index 58ec69485807c..0000000000000
--- a/pkgs/desktops/kde-4.6/base/default.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, perl, qt4, kdelibs, pciutils, libraw1394 , automoc4, strigi
-, qimageblitz, soprano}:
-
-kde.package {
-  preConfigure = "cd apps";
-
-  buildInputs = [ cmake perl qt4 kdelibs pciutils libraw1394 automoc4
-    strigi qimageblitz ];
-
-  meta = {
-    description = "KDE Base components";
-    longDescription = "Applications that form the KDE desktop, like Plasma, System Settings, Konqueror, Dolphin, Kate, and Konsole";
-    license = "GPL";
-    kde.module = "kdebase";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/bindings/default.nix b/pkgs/desktops/kde-4.6/bindings/default.nix
deleted file mode 100644
index 8c615ac3a7ba9..0000000000000
--- a/pkgs/desktops/kde-4.6/bindings/default.nix
+++ /dev/null
@@ -1,34 +0,0 @@
-{ kde, lib, cmake, perl, python, sip, pyqt4, zlib, libpng, freetype, fontconfig, qt4, boost
-, kdelibs, kdepimlibs, automoc4, soprano, akonadi, attica, polkit_qt_1, ruby
-}:
-
-# This function will only build the pykde4 module. I don't need the other bindings and
-# some bindings are even broken.
-
-kde.package rec {
-  patches = [ ./python-site-packages-install-dir.diff ./sip-4.11.patch ];
-
-  preConfigure = ''
-    CUSTOM_RUBY_SITE_ARCH_DIR=$(ruby -r rbconfig -e "print Config::CONFIG['sitearchdir']" | sed -e "s@${ruby}@$out@")
-    CUSTOM_RUBY_SITE_LIB_DIR=$(ruby -r rbconfig -e "print Config::CONFIG['sitelibdir']" | sed -e "s@${ruby}@$out@")
-    CUSTOM_PERL_SITE_ARCH_DIR=$(perl -MConfig -e 'print $Config{sitearch}' | sed -e "s@${perl}@$out@")
-    cmakeFlagsArray+=(
-      -DSIP_DEFAULT_SIP_DIR=$out/share/sip
-      -DCUSTOM_RUBY_SITE_ARCH_DIR=$CUSTOM_RUBY_SITE_ARCH_DIR
-      -DCUSTOM_RUBY_SITE_LIB_DIR=$CUSTOM_RUBY_SITE_LIB_DIR
-      -DCUSTOM_PERL_SITE_ARCH_DIR=$CUSTOM_PERL_SITE_ARCH_DIR
-    )
-  '';
-  
-  # TODO: okular, qimageblitz, qwt5, qscintilla2, c#
-  buildInputs = [ cmake perl python sip pyqt4 zlib libpng freetype fontconfig qt4 boost
-          kdelibs kdepimlibs automoc4 soprano akonadi attica polkit_qt_1 ruby ];
-
-  meta = {
-    description = "KDE bindings";
-    longDescription = "Provides KDE bindings for several languages such as Java, Smoke and Python";
-    license = "LGPL";
-    kde.module = "kdebindings";
-  };
-}
-
diff --git a/pkgs/desktops/kde-4.6/bindings/python-site-packages-install-dir.diff b/pkgs/desktops/kde-4.6/bindings/python-site-packages-install-dir.diff
deleted file mode 100644
index 7fe64e7eff552..0000000000000
--- a/pkgs/desktops/kde-4.6/bindings/python-site-packages-install-dir.diff
+++ /dev/null
@@ -1,54 +0,0 @@
-diff --git a/python/pykde4/CMakeLists.txt b/python/pykde4/CMakeLists.txt
-index 01b69dc..375661d 100644
---- a/python/pykde4/CMakeLists.txt
-+++ b/python/pykde4/CMakeLists.txt
-@@ -188,12 +188,12 @@ IF(POLKITQT_FOUND)
-     SET(PYKDE_MODULES "${PYKDE_MODULES} polkitqt")
- ENDIF(POLKITQT_FOUND)
- 
--PYTHON_INSTALL(__init__.py ${PYTHON_SITE_PACKAGES_DIR}/PyKDE4)
-+PYTHON_INSTALL(__init__.py ${PYTHON_SITE_PACKAGES_INSTALL_DIR}/PyKDE4)
- 
- MESSAGE(STATUS "KDE_VERSION: ${KDE_VERSION}")
- MESSAGE(STATUS "KDE4_INCLUDE_DIR: ${KDE4_INCLUDE_DIR}")
- MESSAGE(STATUS "KDE4_LIB_DIR: ${KDE4_LIB_DIR}")
--MESSAGE(STATUS "PYTHON_SITE_PACKAGES_DIR: ${PYTHON_SITE_PACKAGES_DIR}")
-+MESSAGE(STATUS "PYTHON_SITE_PACKAGES_INSTALL_DIR: ${PYTHON_SITE_PACKAGES_INSTALL_DIR}")
- 
- # Setup and install pykdeconfig.py
- 
-@@ -225,7 +225,7 @@ _pkg_config = {
-     'konsolepart':          'False',
-     'libdir':               '${LIB_DIR}',
-     'pykde_kde_sip_flags':  '${_SIP_TAGS} ${_SIP_X} ${SIP_EXTRA_OPTIONS}',
--    'pykde_mod_dir':        '${PYTHON_SITE_PACKAGES_DIR}/PyKDE4',
-+    'pykde_mod_dir':        '${PYTHON_SITE_PACKAGES_INSTALL_DIR}/PyKDE4',
-     'pykde_modules':        '${PYKDE_MODULES}',
-     'pykde_sip_dir':        '${SIP_DEFAULT_SIP_DIR}/PyKDE4',
-     'pykde_version':        kde_version_hex,
-@@ -235,7 +235,7 @@ _pkg_config = {
- _default_macros = None")
- 
- CONFIGURE_FILE(pykdeconfig.py.in ${CMAKE_CURRENT_BINARY_DIR}/pykdeconfig.py)
--PYTHON_INSTALL(${CMAKE_CURRENT_BINARY_DIR}/pykdeconfig.py ${PYTHON_SITE_PACKAGES_DIR}/PyKDE4)
-+PYTHON_INSTALL(${CMAKE_CURRENT_BINARY_DIR}/pykdeconfig.py ${PYTHON_SITE_PACKAGES_INSTALL_DIR}/PyKDE4)
- 
- # Install the .sip files for anyone that wants to build bindings on top of PyKDE4.
- # (Don't forget the / at the end of sip/.)
-diff --git a/python/pykde4/tools/pykdeuic4/CMakeLists.txt b/python/pykde4/tools/pykdeuic4/CMakeLists.txt
-index ea711ba..115c777 100644
---- a/python/pykde4/tools/pykdeuic4/CMakeLists.txt
-+++ b/python/pykde4/tools/pykdeuic4/CMakeLists.txt
-@@ -1,5 +1,9 @@
- 
--PYTHON_INSTALL(kde4.py ${PYTHON_SITE_PACKAGES_DIR}/PyQt4/uic/widget-plugins/)
--PYTHON_INSTALL(pykdeuic4.py ${PYTHON_SITE_PACKAGES_DIR}/PyQt4/uic/)
-+PYTHON_INSTALL(kde4.py ${PYTHON_SITE_PACKAGES_INSTALL_DIR}/PyQt4/uic/widget-plugins/)
-+PYTHON_INSTALL(pykdeuic4.py ${PYTHON_SITE_PACKAGES_INSTALL_DIR}/PyQt4/uic/)
- find_path(cmake_module_dir create_exe_symlink.cmake ${CMAKE_MODULE_PATH})
--INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -DTARGET=${PYTHON_SITE_PACKAGES_DIR}/PyQt4/uic/pykdeuic4.py -DLINK_NAME=${BIN_INSTALL_DIR}/pykdeuic4 -P ${cmake_module_dir}/create_exe_symlink.cmake)" )
-+IF(IS_ABSOLUTE ${PYTHON_SITE_PACKAGES_INSTALL_DIR})
-+  INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -DTARGET=${PYTHON_SITE_PACKAGES_INSTALL_DIR}/PyQt4/uic/pykdeuic4.py -DLINK_NAME=${BIN_INSTALL_DIR}/pykdeuic4 -P ${cmake_module_dir}/create_exe_symlink.cmake)" )
-+ELSE(IS_ABSOLUTE ${PYTHON_SITE_PACKAGES_INSTALL_DIR})
-+  INSTALL(CODE "EXECUTE_PROCESS(COMMAND ${CMAKE_COMMAND} -DTARGET=${CMAKE_INSTALL_PREFIX}/${PYTHON_SITE_PACKAGES_INSTALL_DIR}/PyQt4/uic/pykdeuic4.py -DLINK_NAME=${BIN_INSTALL_DIR}/pykdeuic4 -P ${cmake_module_dir}/create_exe_symlink.cmake)" )
-+ENDIF(IS_ABSOLUTE ${PYTHON_SITE_PACKAGES_INSTALL_DIR})
diff --git a/pkgs/desktops/kde-4.6/bindings/sip-4.11.patch b/pkgs/desktops/kde-4.6/bindings/sip-4.11.patch
deleted file mode 100644
index 15059e2526d26..0000000000000
--- a/pkgs/desktops/kde-4.6/bindings/sip-4.11.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-Make kdebindings compile against sip-4.11, from KDE svn
-Index: kdebindings/python/pykde4/sip/kdecore/typedefs.sip
-===================================================================
---- kdebindings/python/pykde4/sip/kdecore/typedefs.sip	(revision 1170601)
-+++ kdebindings/python/pykde4/sip/kdecore/typedefs.sip	(revision 1170602)
-@@ -733,61 +733,6 @@
- };
- 
- 
--%MappedType QList<uint>
--{
--%TypeHeaderCode
--#include <qlist.h>
--%End
--
--%ConvertFromTypeCode
--    // Create the list.
--    PyObject *l;
--
--    if ((l = PyList_New(sipCpp->size())) == NULL)
--        return NULL;
--
--    // Set the list elements.
--    for (int i = 0; i < sipCpp->size(); ++i) {
--        PyObject *pobj;
--
--#if PY_MAJOR_VERSION >= 3
--        if ((pobj = PyLong_FromLong(sipCpp->value(i))) == NULL) {
--#else
--        if ((pobj = PyInt_FromLong(sipCpp->value(i))) == NULL) {
--#endif
--            Py_DECREF(l);
--
--            return NULL;
--        }
--
--        PyList_SET_ITEM(l, i, pobj);
--    }
--
--    return l;
--%End
--
--%ConvertToTypeCode
--    // Check the type if that is all that is required.
--    if (sipIsErr == NULL)
--        return PyList_Check(sipPy);
--
--    QList<uint> *ql = new QList<uint>;
-- 
--    for (int i = 0; i < PyList_GET_SIZE(sipPy); ++i) {
--#if PY_MAJOR_VERSION >= 3
--        ql->append(PyLong_AsLong(PyList_GET_ITEM(sipPy, i)));
--#else
--        ql->append(PyInt_AsLong(PyList_GET_ITEM(sipPy, i)));
--#endif        
--    }
--    
--    *sipCppPtr = ql;
-- 
--    return sipGetState(sipTransferObj);
--%End
--};
--
--
- template <TYPE*>
- %MappedType QStack<TYPE*>
- {
diff --git a/pkgs/desktops/kde-4.6/default.nix b/pkgs/desktops/kde-4.6/default.nix
deleted file mode 100644
index b117535494a34..0000000000000
--- a/pkgs/desktops/kde-4.6/default.nix
+++ /dev/null
@@ -1,152 +0,0 @@
-{ callPackage, recurseIntoAttrs, runCommand, stdenv, fetchurl, qt47 } :
-
-let
-
-  release = "4.6.0";
-
-  # Various packages (e.g. kdesdk) have been split up into many
-  # smaller packages.  Some people may want to install the entire
-  # package, so provide a wrapper package that recombines them.
-  combinePkgs = name: pkgs:
-    let pkgs' = stdenv.lib.attrValues pkgs; in
-    runCommand "${name}-${release}" ({ passthru = pkgs // { inherit pkgs; }; })
-      ''
-        mkdir -p $out/nix-support
-        echo ${toString pkgs'} > $out/nix-support/propagated-user-env-packages
-      '';
-
-in
-
-rec {
-  recurseForRelease = true;
-  inherit callPackage stdenv;
-
-  qt4 = qt47;
-
-  phonon = null;
-
-  kde = callPackage ./kde-package { inherit release; };
-
-### SUPPORT
-  akonadi = callPackage ./support/akonadi { };
-
-  attica = callPackage ./support/attica { };
-
-  oxygen_icons = callPackage ./oxygen-icons { };
-
-  polkit_qt_1 = callPackage ./support/polkit-qt-1 { };
-
-  soprano = callPackage ./support/soprano { };
-
-### LIBS
-  kdelibs = callPackage ./libs { };
-
-  kdepimlibs = callPackage ./pimlibs { };
-
-### BASE
-  kdebase = callPackage ./base { };
-
-  kdebase_workspace = callPackage ./base-workspace { };
-
-  kdebase_runtime = callPackage ./base-runtime { };
-
-### OTHER MODULES
-
-  kdeaccessibility = combinePkgs "kdeaccessibility" {
-    colorSchemes = callPackage ./accessibility/color-schemes.nix { };
-    iconThemes = callPackage ./accessibility/icon-themes.nix { };
-    jovie = callPackage ./accessibility/jovie.nix { };
-    kmag = callPackage ./accessibility/kmag.nix { };
-    kmousetool = callPackage ./accessibility/kmousetool.nix { };
-    kmouth = callPackage ./accessibility/kmouth.nix { };
-  };
-
-  kdeadmin = callPackage ./admin { };
-  
-  kdeartwork = combinePkgs "kdeartwork" {
-    aurorae = callPackage ./artwork/aurorae.nix { };
-    colorSchemes = callPackage ./artwork/color-schemes.nix { };
-    desktop_themes = callPackage ./artwork/desktop-themes.nix { };
-    emoticons = callPackage ./artwork/emoticons.nix { };
-    high_resolution_wallpapers = callPackage ./artwork/high-resolution-wallpapers.nix { };
-    wallpapers = callPackage ./artwork/wallpapers.nix { };
-    nuvola_icon_theme = callPackage ./artwork/nuvola-icon-theme.nix { };
-    sounds = callPackage ./artwork/sounds.nix { };
-    weather_wallpapers = callPackage ./artwork/weather-wallpapers.nix { };
-    phase_style = callPackage ./artwork/phase-style.nix { };
-    kscreensaver = callPackage ./artwork/kscreensaver.nix { };
-  };
-  
-  kdeedu = callPackage ./edu { };
-  kdegames = callPackage ./games { };
-  kdegraphics = callPackage ./graphics { };
-  kdemultimedia = callPackage ./multimedia { };
-  kdenetwork = callPackage ./network { };
-  kdeplasma_addons = callPackage ./plasma-addons { };
-  
-  kdesdk = combinePkgs "kdesdk" {
-    cervisia = callPackage ./sdk/cervisia.nix { };
-    kapptemplate = callPackage ./sdk/kapptemplate.nix { };
-    kate = callPackage ./sdk/kate.nix { };
-    kcachegrind = callPackage ./sdk/kcachegrind.nix { };
-    kdeaccounts_plugin = callPackage ./sdk/kdeaccounts-plugin.nix { };
-    dolphin_plugins = callPackage ./sdk/dolphin-plugins.nix { };
-    kioslave_perldoc = callPackage ./sdk/kioslave-perldoc.nix { };
-    kioslave_svn = callPackage ./sdk/kioslave-svn.nix { };
-    strigi_analyzer = callPackage ./sdk/strigi-analyzer.nix { };
-    kbugbuster = callPackage ./sdk/kbugbuster.nix { };
-    kmtrace = callPackage ./sdk/kmtrace.nix { };
-    kompare = callPackage ./sdk/kompare.nix { };
-    kpartloader = callPackage ./sdk/kpartloader.nix { };
-    kprofilemethod = callPackage ./sdk/kprofilemethod.nix { };
-    kstartperf = callPackage ./sdk/kstartperf.nix { };
-    kuiviewer = callPackage ./sdk/kuiviewer.nix { };
-    lokalize = callPackage ./sdk/lokalize.nix { };
-    poxml = callPackage ./sdk/poxml.nix { };
-    scripts = callPackage ./sdk/scripts.nix { };
-    umbrello = callPackage ./sdk/umbrello.nix { };
-  };
-  
-  kdetoys = combinePkgs "kdetoys" {
-    amor = callPackage ./toys/amor.nix { };
-    kteatime = callPackage ./toys/kteatime.nix { };
-    ktux = callPackage ./toys/ktux.nix { };
-  };
-
-  kdeutils = combinePkgs "kdeutils" {
-    ark = callPackage ./utils/ark.nix { };
-    kcalc = callPackage ./utils/kcalc.nix { };
-    kcharselect = callPackage ./utils/kcharselect.nix { };
-    kdf = callPackage ./utils/kdf.nix { };
-    kfloppy = callPackage ./utils/kfloppy.nix { };
-    kgpg = callPackage ./utils/kgpg.nix { };
-    kremotecontrol = callPackage ./utils/kremotecontrol.nix { };
-    ktimer = callPackage ./utils/ktimer.nix { };
-    kwallet = callPackage ./utils/kwallet.nix { };
-    okteta = callPackage ./utils/okteta.nix { };
-    printer_applet = callPackage ./utils/printer-applet.nix { };
-    superkaramba = callPackage ./utils/superkaramba.nix { };
-    sweeper = callPackage ./utils/sweeper.nix { };
-  };
-
-  kdewebdev = combinePkgs "kdewebdev" {
-    klinkstatus = callPackage ./webdev/klinkstatus.nix { };
-    kommander = callPackage ./webdev/kommander.nix { };
-    kfilereplace = callPackage ./webdev/kfilereplace.nix { };
-    kimagemapeditor = callPackage ./webdev/kimagemapeditor.nix { };
-  };
-
-  kdepim_runtime = callPackage ./pim-runtime { };
-  kdepim = callPackage ./pim { };
-
-### DEVELOPMENT
-
-  kdebindings = callPackage ./bindings { };
-
-  l10n = callPackage ./l10n { inherit release; };
-
-  # Make the split packages visible to `nix-env -q'.
-  misc = recurseIntoAttrs
-    (kdeaccessibility.pkgs // kdeartwork.pkgs // kdesdk.pkgs // kdetoys.pkgs // kdeutils.pkgs // kdewebdev.pkgs);
-
-}
diff --git a/pkgs/desktops/kde-4.6/edu/default.nix b/pkgs/desktops/kde-4.6/edu/default.nix
deleted file mode 100644
index 2227975a95531..0000000000000
--- a/pkgs/desktops/kde-4.6/edu/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ kde, cmake, qt4, perl, libxml2, libxslt, openbabel, boost, readline, gmm, gsl
-, xplanet, libspectre, pkgconfig, libqalculate, python
-, kdelibs, automoc4, eigen, attica}:
-
-kde.package {
-
-#TODO:
-#* Boost.Python (1.31 or higher)  <http://www.boost.org/> - fails to find
-# * libcfitsio0 (3.09 or higher)  <http://indi.sf.net>
-# * libindi (0.6.1 or higher)  <http://indi.sf.net>
-# * R  <http://www.r-project.org/>
-# * OCaml  <http://caml.inria.fr/>
-# * LibFacile  <http://www.recherche.enac.fr/log/facile/>
-# * Avogadro (1.0 or higher)  <http://avogadro.openmolecules.net>
-# * libgps
-
-  buildInputs = [ cmake qt4 perl libxml2 libxslt openbabel boost readline gmm
-    gsl xplanet kdelibs automoc4 eigen attica libspectre pkgconfig
-    libqalculate python ];
-
-  preConfigure = ''
-    export NIX_CFLAGS_COMPILE="$NIX_CFLAGS_COMPILE -I${python}/include/${python.libPrefix}"
-    export NIX_LDFLAGS="$NIX_LDFLAGS -l${python.libPrefix} -lboost_python"
-  '';
-  cmakeFlags = '' -DBOOST_PYTHON_INCLUDES="${boost}/include" -DBOOST_PYTHON_LIBS="boost_python" -DKIG_ENABLE_PYTHON_SCRIPTING=1'';
-
-  meta = {
-    description = "KDE Educative software";
-    license = "GPL";
-    kde.module = "kdeedu";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/games/default.nix b/pkgs/desktops/kde-4.6/games/default.nix
deleted file mode 100644
index 74bb1c57ddd14..0000000000000
--- a/pkgs/desktops/kde-4.6/games/default.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{kde, cmake, qt4, perl, shared_mime_info, kdelibs, automoc4, qca2
-, kdebindings, twisted, python, pyqt4, sip, makeWrapper }:
-
-kde.package {
-
-# TODO: ggz
-  buildInputs = [ cmake qt4 perl shared_mime_info kdelibs automoc4 qca2
-    kdebindings twisted python pyqt4 sip makeWrapper ];
-
-  postInstall = ''
-    wrapProgram $out/bin/kajongg --set PYTHONPATH $PYTHONPATH
-    wrapProgram $out/bin/kajonggserver --set PYTHONPATH $PYTHONPATH'';
-
-  meta = {
-    description = "KDE Games";
-    license = "GPL";
-    kde.module = "kdegames";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/graphics/default.nix b/pkgs/desktops/kde-4.6/graphics/default.nix
deleted file mode 100644
index ed6527373eb3d..0000000000000
--- a/pkgs/desktops/kde-4.6/graphics/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ kde, cmake, lib, perl, qt4, exiv2, lcms, saneBackends, libgphoto2
-, libspectre, popplerQt4, djvulibre, chmlib, shared_mime_info, libXxf86vm
-, kdelibs, automoc4, strigi, qimageblitz, soprano, qca2, ebook_tools }:
-
-kde.package {
-
-  buildInputs = [ cmake perl qt4 exiv2 lcms saneBackends libgphoto2 libspectre
-    (popplerQt4.override { inherit qt4; }) chmlib shared_mime_info libXxf86vm
-    kdelibs automoc4 strigi qimageblitz soprano qca2 djvulibre ebook_tools ];
-
-  meta = {
-    description = "KDE graphics utilities";
-    longDescription = ''
-      Contains various graphics utilities such as Gwenview image viewer and
-      Okular  document reader.
-    '';
-    license = "GPL";
-    kde.module = "kdegraphics";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/kde-package/default.nix b/pkgs/desktops/kde-4.6/kde-package/default.nix
deleted file mode 100644
index de3cf05b70d35..0000000000000
--- a/pkgs/desktops/kde-4.6/kde-package/default.nix
+++ /dev/null
@@ -1,50 +0,0 @@
-{ stdenv, fetchurl, release }:
-
-rec {
-  inherit release;
-
-  manifest = import (./manifest + "-${release}.nix");
-
-  defaultArgs = { module, name ? module, ... }:
-
-    (
-      {
-        name = "${name}-${release}";
-
-        src = fetchurl {
-          url = "mirror://kde/" + (if manifest.stable then "" else "un")
-            + "stable/${release}/src/${module}-${release}.tar.bz2";
-          sha256 = builtins.getAttr module manifest.packages;
-        };
-
-        meta = {
-          maintainers = with stdenv.lib.maintainers; [ sander urkud ];
-          platforms = stdenv.lib.platforms.linux;
-        };
-      } // (if module == name then { } else {
-        cmakeFlags = ''
-          -DDISABLE_ALL_OPTIONAL_SUBDIRECTORIES=TRUE
-          -DBUILD_doc=TRUE -DBUILD_${name}=TRUE'';
-      })
-    );
-
-  package = a@{meta, ...}:
-    assert a.meta ? kde;
-    let
-      default = defaultArgs a.meta.kde;
-    in
-# hand-written merge
-    stdenv.mkDerivation (
-      default
-        // removeAttrs a [ "meta" "cmakeFlags" ]
-        // {
-          meta = default.meta // a.meta;
-        }
-        // (if default ? cmakeFlags || a ? cmakeFlags then {
-          cmakeFlags =
-            (if default ? cmakeFlags then "${default.cmakeFlags}" else "")
-            + (if default ? cmakeFlags && a ? cmakeFlags then " " else "")
-            + (if a ? cmakeFlags then a.cmakeFlags else "");
-        } else { }
-      ));
-}
diff --git a/pkgs/desktops/kde-4.6/kde-package/kde-manifest.sh b/pkgs/desktops/kde-4.6/kde-package/kde-manifest.sh
deleted file mode 100755
index fbaf490e8beab..0000000000000
--- a/pkgs/desktops/kde-4.6/kde-package/kde-manifest.sh
+++ /dev/null
@@ -1,39 +0,0 @@
-#!/bin/sh
-
-# Usage: download kde release to $dir, then run
-# $0 $dir
-
-dir=$1
-
-if [[ ! -d "${dir}" ]]; then
-  echo "${dir} is not a directory (or doesn't exist)!" >&2
-  exit 1
-fi
-
-release=$(ls "${dir}"/kdelibs-*.tar.bz2 | \
-	sed -e 's/.*kdelibs-//' -e 's/\.tar\.bz2//')
-
-if [[ ${release##*.} -gt 50 ]]; then
-	stable="false"
-else
-	stable="true"
-fi
-
-echo "Detected release ${release}" >&2
-
-exec > "manifest-${release}.nix"
-echo "{"
-echo "  stable = ${stable};"
-echo "  packages = builtins.listToAttrs ["
-for i in `cd "${dir}"; ls *-${release}.tar.bz2`; do
-  module=${i%-${release}.tar.bz2}
-  echo -n "${module}.. " >&2
-  hash=$(nix-hash --type sha256 --flat --base32 "${dir}/${i}")
-  echo "    {"
-  echo "      name = \"${module}\";"
-  echo "      value = \"${hash}\";"
-  echo "    }"
-  echo $hash >&2
-done
-echo "  ];"
-echo "}"
diff --git a/pkgs/desktops/kde-4.6/kde-package/manifest-4.6.0.nix b/pkgs/desktops/kde-4.6/kde-package/manifest-4.6.0.nix
deleted file mode 100644
index a3d83513bb853..0000000000000
--- a/pkgs/desktops/kde-4.6/kde-package/manifest-4.6.0.nix
+++ /dev/null
@@ -1,85 +0,0 @@
-{
-  stable = true;
-  packages = builtins.listToAttrs [
-    {
-      name = "kdeaccessibility";
-      value = "06b1w7gnfga4nd0spx48s5cx5jfsc9mxzc5yncns0471ia98ww92";
-    }
-    {
-      name = "kdeadmin";
-      value = "0nl3smhlsa4f68qq6p1kjbai2v5lbji2v84k96jfqvpjbkygkq27";
-    }
-    {
-      name = "kdeartwork";
-      value = "1qy0qwl3p0k5myd2f2ky400r5wvaq8gbvgb7mq6093amq0fghxlx";
-    }
-    {
-      name = "kdebase";
-      value = "095k83i1wd3cpk1pyc451gc4fajjynfknf83jsb6vxqisvm2mjn2";
-    }
-    {
-      name = "kdebase-runtime";
-      value = "1vwjly7p28sbhkg1vvnm0l94l2kwcs64jfh9hxlrgfz2bqp48b87";
-    }
-    {
-      name = "kdebase-workspace";
-      value = "10jkv4si6v12m9gspb7yk6x34lanwrnwfdw68jr59wp1ibcpkzzl";
-    }
-    {
-      name = "kdebindings";
-      value = "1xggvgryadi93hn3223614z4qajvypllxjscixv5zc9mvyh9z3ng";
-    }
-    {
-      name = "kdeedu";
-      value = "1x3s0dz8kyd8x7parzks434ifr8mj3w3lwaw30np4khgva258r2n";
-    }
-    {
-      name = "kdegames";
-      value = "1p8d9sy9mafza428wkj5g8hnfl8d06wqf74pdd39yr1ilmw0w1rb";
-    }
-    {
-      name = "kdegraphics";
-      value = "0j28aa2bglhpi9ck6a7334q603k7lfmfsr47grab81ic9aw6x38n";
-    }
-    {
-      name = "kdelibs";
-      value = "1pfydrdi4zwyxpygfmvk2jnfjal747kpf1m2az4fhvv91kx4clpd";
-    }
-    {
-      name = "kdemultimedia";
-      value = "1dhi7m5f22pz7sdrcl9g8zwf0mqcxzcys8hgbxzjfwjkg6h8mz28";
-    }
-    {
-      name = "kdenetwork";
-      value = "0d37db21nz3kjrr1swqykdbzwq3x4kapy3b9pbjic38phfnxksrs";
-    }
-    {
-      name = "kdepimlibs";
-      value = "1377lhlkfadfsqylkjm8hs8csak2cr6lwgimv97wxmp3x8v3lddq";
-    }
-    {
-      name = "kdeplasma-addons";
-      value = "0p8vzvnf0alk9yfv2ynawfbb33h68yhgc3f2ibgm1sdyg4gqx615";
-    }
-    {
-      name = "kdesdk";
-      value = "12hm20pzxj1k42l52dvjl64xda2r2gnvzlmf9kx9c5ccc0p8ch9z";
-    }
-    {
-      name = "kdetoys";
-      value = "0qaxy74n9g0vd6vqqwj3avbi3zhxikxk5aghdy2ynininmwzvqd9";
-    }
-    {
-      name = "kdeutils";
-      value = "1nv2fk8i77vc4jz9cbg4hvw5azw7ncvs3ircj74xy3ndw5b3fhxa";
-    }
-    {
-      name = "kdewebdev";
-      value = "0yl21qixd2ch6jxxccy03qnwnrws4lhbzj5hiv9pkw8w6zm16503";
-    }
-    {
-      name = "oxygen-icons";
-      value = "0a56q2d6nz3nsh8l5cycjiw7dq6ffkgyg3gyqql5iszcp6hrif3b";
-    }
-  ];
-}
diff --git a/pkgs/desktops/kde-4.6/l10n/manifest-4.6.0.nix b/pkgs/desktops/kde-4.6/l10n/manifest-4.6.0.nix
deleted file mode 100644
index 6922427b502ee..0000000000000
--- a/pkgs/desktops/kde-4.6/l10n/manifest-4.6.0.nix
+++ /dev/null
@@ -1,267 +0,0 @@
-[
-{
-  lang = "ar";
-  saneName = "ar";
-  sha256 = "1dadlmd3s3752hcssnpzagly18yx7bj3r9pkc5qcb8nn9h91a92x";
-}
-{
-  lang = "bg";
-  saneName = "bg";
-  sha256 = "1nhqxdllfsljfnpw6ii78nfbv4rqncha1jjz9x9mz59qw4671a6n";
-}
-{
-  lang = "ca";
-  saneName = "ca";
-  sha256 = "1siha5sihazjdp7r26isi2m1s6nhzg4f7z2qqghh64lj3pw4xbzc";
-}
-{
-  lang = "ca@valencia";
-  saneName = "ca_valencia";
-  sha256 = "1d977lm78s1jq49ss5k6a6ixz1wiaq03i6pdjpl09jyirmlkg7dw";
-}
-{
-  lang = "cs";
-  saneName = "cs";
-  sha256 = "193xk5xsqq81xqcwmpix4dcz4l3qbwnvk1bc6awapcr8g56cgxbx";
-}
-{
-  lang = "da";
-  saneName = "da";
-  sha256 = "1y3b36y6w3ca238bnyvfvbkvpadbyvch40p4g82fg16ifnqpxrc7";
-}
-{
-  lang = "de";
-  saneName = "de";
-  sha256 = "1h38dxq6ggrvmc6b2w825xk7sf1032m9psfpg04gzarq6qicskdw";
-}
-{
-  lang = "el";
-  saneName = "el";
-  sha256 = "0ngs7k9nd7vz54804jnbvm10d8iiajvkiz01g9pimkiwlid325d3";
-}
-{
-  lang = "en_GB";
-  saneName = "en_GB";
-  sha256 = "12fr4npqcrsnndlz8qvbca5v6r0da53phxa1mks8ka603gh76hg3";
-}
-{
-  lang = "es";
-  saneName = "es";
-  sha256 = "1mf034ha0n27f82cx20cfr1jsbiapz4zs8bwwhjbdbiizsxivanj";
-}
-{
-  lang = "et";
-  saneName = "et";
-  sha256 = "1x1b8kn8fnv6dvg6f2j6h8kg1g4z3j9zb16likiwb6rp7fy0a859";
-}
-{
-  lang = "eu";
-  saneName = "eu";
-  sha256 = "1y2gwi2x5qx04yfqhn21asgsc67kn895l4npi8nhzv2pa0w8mif6";
-}
-{
-  lang = "fi";
-  saneName = "fi";
-  sha256 = "0lfw1s7ryl5fmrj07390ldayxkfsrc3haxfi8987pg8vxwsicb7n";
-}
-{
-  lang = "fr";
-  saneName = "fr";
-  sha256 = "00i2ziid18c5hz468rv1mljzpyky84r03bmszy8hlakd2jmsbm9r";
-}
-{
-  lang = "ga";
-  saneName = "ga";
-  sha256 = "0qg200sqbnq00qpcmgw10xl6hyjk50m1zks5nly5lxpfxqkmpqzh";
-}
-{
-  lang = "gl";
-  saneName = "gl";
-  sha256 = "0mivdn6hq7icl41pkaim6rc4z3ilsiqlaj84s8q46f8dmh9hdvnv";
-}
-{
-  lang = "gu";
-  saneName = "gu";
-  sha256 = "1h2df76bqhnxmgwgbck69f58p616fra7jqwdi91n5zdga975y4ag";
-}
-{
-  lang = "he";
-  saneName = "he";
-  sha256 = "1gfq82666x3rvrd84qfy51638gbi6r081fxd19av52k00npkrgi5";
-}
-{
-  lang = "hi";
-  saneName = "hi";
-  sha256 = "1k8916yv4bs5h40dvh9p4vgpyk1ylyckliazkwaldqdhghzfkzp3";
-}
-{
-  lang = "hr";
-  saneName = "hr";
-  sha256 = "011pkb42m0arlkkcmlj2r353k7ybglhfsb2hjh5b3bg2sq8cmpcm";
-}
-{
-  lang = "hu";
-  saneName = "hu";
-  sha256 = "124x73ag3nhs9ghfn4lpw29zjyycbj9zxin2d5rb2zdj8r9p2dcw";
-}
-{
-  lang = "ia";
-  saneName = "ia";
-  sha256 = "1j592k8z7d08sngazjqv6fpym4863s0hg1swcvnmys5ighm69dvh";
-}
-{
-  lang = "id";
-  saneName = "id";
-  sha256 = "01h3ax0dqca05qn2vm9v12wd4iyhk2q69lwa6zic6maqnj47s50s";
-}
-{
-  lang = "is";
-  saneName = "is";
-  sha256 = "0qgwfr9k2zqqcxwh82bf0x58h9wd03l9j87hz4xpw2k3jc82fpbk";
-}
-{
-  lang = "it";
-  saneName = "it";
-  sha256 = "1rmqp0v018na4s60cq5j5nqpvz94fyvhklwb1zjhdlfd2lfwcjrc";
-}
-{
-  lang = "ja";
-  saneName = "ja";
-  sha256 = "1qhibkrm2qmra6ib1973dqwz43w1sd87ys8hnnnjn52fwshpcm5z";
-}
-{
-  lang = "kk";
-  saneName = "kk";
-  sha256 = "1si8kfsw0h1jr4grgy6b7q3gnlv6pxpr7rlgl3g9b2f62zc1xaxd";
-}
-{
-  lang = "km";
-  saneName = "km";
-  sha256 = "1gs09hxd66qxl5kwg1rd9xfqvy8l1s49lc09971rr9qw9kxy43ks";
-}
-{
-  lang = "kn";
-  saneName = "kn";
-  sha256 = "13jgfbac3b5zsjgfw7zqk5l7wxnhsnf1kpa5ski002jcxb354n7q";
-}
-{
-  lang = "ko";
-  saneName = "ko";
-  sha256 = "0k0jgf6w94fd21ah609axqdgwn8rmx3j09cn95i0g258f8mvibhg";
-}
-{
-  lang = "lt";
-  saneName = "lt";
-  sha256 = "0nh57snn8ar077k6fj9j2fza9wpwc7j8lvwzfab7i5gka7js9vj5";
-}
-{
-  lang = "lv";
-  saneName = "lv";
-  sha256 = "0a2w06gvgxzh312fqnagp7r8hcbry61mvy9d4lh3kvd13gkgzi9z";
-}
-{
-  lang = "mai";
-  saneName = "mai";
-  sha256 = "1l8y0ck50h4wmirk3vkmj5lbcv0h8pir1wlfs15mbsk93r89fyys";
-}
-{
-  lang = "nb";
-  saneName = "nb";
-  sha256 = "1qw29p7w4ik8wnipsmiyfgp3k438ndr8c4m3c4p2gwx6v06vfynx";
-}
-{
-  lang = "nds";
-  saneName = "nds";
-  sha256 = "1gp0bqmrzpi0fsp919sj057q8c4zzyi7hxanrns6kc4q42x17xd2";
-}
-{
-  lang = "nl";
-  saneName = "nl";
-  sha256 = "1k6694lxp0szkqdb68zsvpq15zlvi51zxz9samgd7z4ng99hvv12";
-}
-{
-  lang = "nn";
-  saneName = "nn";
-  sha256 = "19sp5zaccvlkfjh29dz7i9d6whxa3ap6ji0g3dxkfix76xjchlir";
-}
-{
-  lang = "pa";
-  saneName = "pa";
-  sha256 = "09x53m297jiqv1qclp532c6g0d9d9z5k7kdaivhi69vj2bikf63p";
-}
-{
-  lang = "pl";
-  saneName = "pl";
-  sha256 = "0ygajy6mmdkxidq72qhbacn8hfq8rjvc0frz0jrvv2s2ywawknpn";
-}
-{
-  lang = "pt";
-  saneName = "pt";
-  sha256 = "1333564qpzvdx6qv9hs6n4yssh3lakskdr69hmbjyvnmjdx07f1y";
-}
-{
-  lang = "pt_BR";
-  saneName = "pt_BR";
-  sha256 = "1p378b8nncr55vkk9sfry6zj1zhjrvswwsb5az9q1yk14wgc050a";
-}
-{
-  lang = "ro";
-  saneName = "ro";
-  sha256 = "15lpmdidf3as9pbw7qgryvwk26sjb9lw9v3bvxx34aq299ifb6hf";
-}
-{
-  lang = "ru";
-  saneName = "ru";
-  sha256 = "1n8zwhlkn9sf256jdp7fh9qazwvn95qmr789ndg1xr7xm87y87fw";
-}
-{
-  lang = "sk";
-  saneName = "sk";
-  sha256 = "1q3bg2kw5fghzjx6a9j0029f11w7hir67ll8pl8xi4dpw4fxdqy1";
-}
-{
-  lang = "sl";
-  saneName = "sl";
-  sha256 = "17xr2p3nwx3sswc3qq6qqh671h6i3rvvprhnv86axddj369dhaai";
-}
-{
-  lang = "sr";
-  saneName = "sr";
-  sha256 = "0kflgcbw17flk9qyk631qqkw74v7k9cyrdag3v15rpcrmvvyzxmk";
-}
-{
-  lang = "sv";
-  saneName = "sv";
-  sha256 = "056i52sv5zml6c9wciqbh3v6ghgvmwq8s5wzpqx7nwnl5m9cb2x8";
-}
-{
-  lang = "th";
-  saneName = "th";
-  sha256 = "0bk31gady68rp650a4d0w3zx0cz095sjqmg2j09pjsc0j29dfsf9";
-}
-{
-  lang = "tr";
-  saneName = "tr";
-  sha256 = "0y3vk3csx3z54lqncpcyr31ivldbn6wkhsgycghrzg7yb3n6w5pa";
-}
-{
-  lang = "uk";
-  saneName = "uk";
-  sha256 = "0jqsqakz2xniw9bh0dz7w1vslvkwgpibhny7yb01g604l1zz1znn";
-}
-{
-  lang = "wa";
-  saneName = "wa";
-  sha256 = "0jbmgh1sbfkqxim7wkn29kl5m22k105daz2ypih4f31vzdsqzn9h";
-}
-{
-  lang = "zh_CN";
-  saneName = "zh_CN";
-  sha256 = "1l4slrz0bhbhsarf4pcr86qph1ry1477y7w1956a22p8a4a4ywr3";
-}
-{
-  lang = "zh_TW";
-  saneName = "zh_TW";
-  sha256 = "11harkdwzl328b3m25l8fkc77g0mbpprgaw41bdq3pf0j6wjmd3m";
-}
-]
diff --git a/pkgs/desktops/kde-4.6/libs/default.nix b/pkgs/desktops/kde-4.6/libs/default.nix
deleted file mode 100644
index 698cbabe2b73a..0000000000000
--- a/pkgs/desktops/kde-4.6/libs/default.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ kde, gcc, cmake, perl
-, qt4, bzip2, pcre, fam, libxml2, libxslt, shared_mime_info, giflib, jasper
-, xz, flex, bison, openexr, aspell, avahi, kerberos, acl, attr, shared_desktop_ontologies, libXScrnSaver
-, automoc4, strigi, soprano, qca2, attica, enchant, libdbusmenu_qt
-, docbook_xml_dtd_42, docbook_xsl, polkit_qt_1, hspell, udev, grantlee
-}:
-
-kde.package {
-
-  buildInputs = [
-    cmake perl xz flex bison bzip2 pcre fam libxml2 libxslt shared_mime_info
-    giflib jasper /*openexr*/ aspell avahi kerberos acl attr libXScrnSaver
-    enchant libdbusmenu_qt polkit_qt_1 automoc4 hspell udev grantlee
-  ];
-
-# TODO:
-#   * make sonnet plugins (dictionaries) really work.
-#      There are a few hardcoded paths.
-#   * Let kdelibs find openexr
-#   * Split plugins from libs?
-#   * herqq: kdelibs tries to include HDeviceProxy which was never released
-
-  propagatedBuildInputs = [ qt4 gcc.libc strigi soprano attica qca2
-    shared_desktop_ontologies ];
-
-  # cmake fails to find acl.h because of C++-style comment
-  # TODO: OpenEXR, hspell
-  cmakeFlags = ''
-    -DHAVE_ACL_LIBACL_H=ON -DHAVE_SYS_ACL_H=ON
-    -DDOCBOOKXML_CURRENTDTD_DIR=${docbook_xml_dtd_42}/xml/dtd/docbook
-    -DDOCBOOKXSL_DIR=${docbook_xsl}/xml/xsl/docbook
-    '';
-
-  meta = {
-    description = "KDE libraries";
-    license = "LGPL";
-    homepage = http://www.kde.org;
-    kde.module = "kdelibs";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/multimedia/default.nix b/pkgs/desktops/kde-4.6/multimedia/default.nix
deleted file mode 100644
index ca9c290f692ea..0000000000000
--- a/pkgs/desktops/kde-4.6/multimedia/default.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, perl, qt4, alsaLib, libvorbis, xineLib, taglib, flac,
-cdparanoia, lame , kdelibs, automoc4, ffmpeg, libmusicbrainz2, libtunepimp }:
-
-kde.package {
-
-  buildInputs = [ cmake perl qt4 alsaLib libvorbis xineLib flac taglib
-    cdparanoia lame kdelibs automoc4 ffmpeg libmusicbrainz2 libtunepimp ];
-
-  meta = {
-    description = "KDE Multimedia";
-    longDescription = ''
-      Contains various Multimedia utilties for KDE such as a movie player and sound volume mixer.
-    '';
-    license = "GPL";
-    kde.module = "kdemultimedia";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/network/default.nix b/pkgs/desktops/kde-4.6/network/default.nix
deleted file mode 100644
index c7c386117311e..0000000000000
--- a/pkgs/desktops/kde-4.6/network/default.nix
+++ /dev/null
@@ -1,33 +0,0 @@
-{ kde, cmake, qt4, perl, speex, gmp, libxml2, libxslt, sqlite, alsaLib, libidn
-, libvncserver, libmsn, giflib, gpgme, boost, libv4l, libotr
-, libXi, libXtst, libXdamage, libXxf86vm, libktorrent, kdebase
-, kdebase_workspace
-, kdelibs, kdepimlibs, automoc4, qca2, soprano, qimageblitz, strigi}:
-
-kde.package {
-
-  buildInputs = [ cmake qt4 perl speex gmp libxml2 libxslt sqlite alsaLib libidn
-    libvncserver libmsn giflib gpgme boost libv4l libotr libXi libXtst
-    libXdamage libXxf86vm kdelibs kdepimlibs automoc4 qca2 soprano
-    qimageblitz strigi libktorrent kdebase kdebase_workspace ];
-
-  patches = [ ./log-feature.diff ];
-#TODO
-# * telepathy-qt4 (0.18 or higher)  <http://telepathy.freedesktop.org>
-# * KWebKitPart  <https://svn.kde.org/home/kde/trunk/extragear/base/kwebkitpart>
-# * libortp (0.13 or higher)  <http://www.linphone.org/index.php/eng/code_review/ortp>
-# * XMMS  <http://www.xmms.org>
-# * mediastreamer (2.3.0 or higher)  <http://www.linphone.org/index.php/eng/code_review/mediastreamer2>
-# * libmeanwhile  <http://meanwhile.sf.net>
-# * libgadu (1.8.0 or higher)  <http://toxygen.net/libgadu/>
-
-# Let cmake find libktorrent. Waiting for upstream fix
-  KDEDIRS="${libktorrent}";
-
-  meta = {
-    description = "KDE network utilities";
-    longDescription = "Various network utilities for KDE such as a messenger client and network configuration interface";
-    license = "GPL";
-    kde.module = "kdenetwork";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/oxygen-icons/default.nix b/pkgs/desktops/kde-4.6/oxygen-icons/default.nix
deleted file mode 100644
index bed192f260973..0000000000000
--- a/pkgs/desktops/kde-4.6/oxygen-icons/default.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{kde, cmake}:
-
-kde.package {
-  outputHashAlgo = "sha256";
-  outputHashMode = "recursive";
-  outputHash = "1qqdmg4q145gac23b0kyarslfwnlkngcxm6x37b03vr1srccycmx";
-
-  buildInputs = [ cmake ];
-  meta = {
-    description = "KDE Oxygen theme icons";
-    longDescription = "Contains icons for the KDE Oxygen theme, which is the default icon theme since KDE 4.3";
-    license = "GPL";
-    kde.module = "oxygen-icons";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/pim-runtime/default.nix b/pkgs/desktops/kde-4.6/pim-runtime/default.nix
deleted file mode 100644
index ccdecd46f38b1..0000000000000
--- a/pkgs/desktops/kde-4.6/pim-runtime/default.nix
+++ /dev/null
@@ -1,25 +0,0 @@
-{ kde, fetchurl, cmake, qt4, perl, libxml2, libxslt, boost, shared_mime_info
-, kdelibs, kdepimlibs, gettext
-, automoc4, phonon, akonadi, soprano, strigi}:
-
-kde.package rec {
-  name = with meta.kde; "${module}-${release}";
-
-  buildInputs = [ cmake qt4 perl libxml2 libxslt boost shared_mime_info kdelibs
-    kdepimlibs automoc4 phonon akonadi soprano strigi gettext ];
-
-  src = fetchurl {
-    url = "mirror://kde/unstable/kdepim/${meta.kde.release}/src/${name}.tar.bz2";
-    sha256 = "0gsp1yycjb7a3p285yqhs6v9rsrpbq0wfq3jhz7ky306692lrxig";
-  };
-
-  meta = {
-    description = "KDE PIM runtime";
-    homepage = http://www.kde.org;
-    license = "GPL";
-    kde = {
-      release = "4.5.94.1";
-      module = "kdepim-runtime";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/pim/default.nix b/pkgs/desktops/kde-4.6/pim/default.nix
deleted file mode 100644
index 72734ff9c34d0..0000000000000
--- a/pkgs/desktops/kde-4.6/pim/default.nix
+++ /dev/null
@@ -1,32 +0,0 @@
-{ kde, fetchurl, cmake, perl, boost, gpgme, libassuan, libgpgerror, libxslt
-, shared_mime_info, libXScrnSaver, kdelibs, kdepimlibs, kdepim_runtime
-, automoc4, akonadi, qca2, gettext, grantlee}:
-
-kde.package rec {
-
-  buildInputs = [ cmake boost gpgme libassuan libgpgerror libxslt
-    shared_mime_info libXScrnSaver kdelibs kdepimlibs automoc4 akonadi gettext
-    grantlee ];
-  postInstall = ''
-      mkdir -p $out/nix-support/
-      echo ${akonadi} ${kdepimlibs} ${kdepim_runtime} > $out/nix-support/propagated-user-env-packages
-  '';
-
-  src = fetchurl {
-    url = "mirror://kde/unstable/kdepim/${meta.kde.release}/src/${meta.kde.module}-${meta.kde.release}.tar.bz2";
-    sha256 = "1bnlyrflcjy7lj4c2jag212ws2gzzpqyn5g2p97x8y936dza7ic3";
-  };
-
-  meta = {
-    description = "KDE PIM tools";
-    longDescription = ''
-      Contains various personal information management tools for KDE, such as an organizer
-    '';
-    license = "GPL";
-    homepage = http://pim.kde.org;
-    kde = {
-      release = "4.5.94.1";
-      module = "kdepim";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/pimlibs/default.nix b/pkgs/desktops/kde-4.6/pimlibs/default.nix
deleted file mode 100644
index 4f58b04c68acd..0000000000000
--- a/pkgs/desktops/kde-4.6/pimlibs/default.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ kde, cmake, qt4, perl, boost, cyrus_sasl, gpgme, libical, openldap, shared_mime_info
-, kdelibs, automoc4, akonadi, soprano, libxslt}:
-
-kde.package {
-
-  buildInputs = [ cmake automoc4 perl shared_mime_info libxslt ];
-  propagatedBuildInputs = [ qt4 boost cyrus_sasl gpgme libical openldap kdelibs
-    akonadi soprano ];
-
-  meta = {
-    description = "KDE PIM libraries";
-    license = "LGPL";
-    kde.module = "kdepimlibs";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/plasma-addons/default.nix b/pkgs/desktops/kde-4.6/plasma-addons/default.nix
deleted file mode 100644
index 65e4e3a977257..0000000000000
--- a/pkgs/desktops/kde-4.6/plasma-addons/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ kde, cmake, qt4, perl, automoc4, kdelibs, soprano, kdeedu
-, boost, eigen, kdebase_workspace, attica, python, qca2, qimageblitz
-, shared_mime_info, kdepimlibs, kdegraphics, libqalculate, libXtst }:
-# TODO: qwt, scim, MARBLE!!
-
-kde.package {
-
-  preConfigure =
-    "cp -v ${kdeedu}/share/apps/cmake/modules/FindMarble.cmake cmake";
-
-  buildInputs = [ cmake qt4 perl automoc4 kdelibs boost eigen kdebase_workspace
-    attica python qca2 qimageblitz shared_mime_info kdepimlibs kdegraphics
-    libqalculate soprano libXtst kdeedu ];
-
-  meta = {
-    description = "KDE Plasma Addons";
-    license = "GPL";
-    kde.module = "kdeplasma-addons";
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/cervisia.nix b/pkgs/desktops/kde-4.6/sdk/cervisia.nix
deleted file mode 100644
index e0ff5c3059702..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/cervisia.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
-
-  meta = {
-    description = "A KDE CVS frontend";
-    kde = {
-      name = "cervisia";
-      module = "kdesdk";
-      version = "3.5.0";
-      release = "4.5.90";
-      versionFile = "cervisia/version.h";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/dolphin-plugins.nix b/pkgs/desktops/kde-4.6/sdk/dolphin-plugins.nix
deleted file mode 100644
index 023d36e47e3c6..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/dolphin-plugins.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, kdebase }:
-
-kde.package {
-  # Needs kdebase for libkonq
-  buildInputs = [ cmake kdelibs automoc4 kdebase ];
-
-
-  meta = {
-    description = "Git and Svn plugins for dolphin";
-    kde = {
-      name = "dolphin-plugins";
-      module = "kdesdk";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kapptemplate.nix b/pkgs/desktops/kde-4.6/sdk/kapptemplate.nix
deleted file mode 100644
index daf75993bdb1b..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kapptemplate.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, kdelibs, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
-
-
-  meta = {
-    description = "A KDE 4 project template generator";
-    kde = {
-      name = "kapptemplate";
-      module = "kdesdk";
-      version = "0.1";
-      release = "4.5.90";
-      versionFile = "kapptemplate/main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kate.nix b/pkgs/desktops/kde-4.6/sdk/kate.nix
deleted file mode 100644
index b588a0ea1bc11..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kate.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, shared_mime_info }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 shared_mime_info ];
-
-
-  meta = {
-    description = "Kate - Advanced Text Editor";
-    kde = {
-      name = "kate";
-      module = "kdesdk";
-      version = "3.5.2"; # (release.major-1).(release.minor).(release.patch)
-      release = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kbugbuster.nix b/pkgs/desktops/kde-4.6/sdk/kbugbuster.nix
deleted file mode 100644
index 5001ee944bb15..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kbugbuster.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, kdepimlibs }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 kdepimlibs ];
-
-
-  meta = {
-    description = "KDE bugzilla client";
-    kde = {
-      name = "kbugbuster";
-      module = "kdesdk";
-      version = "3.80.3";
-      release = "4.5.90";
-      versionFile = "version.h";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kcachegrind.nix b/pkgs/desktops/kde-4.6/sdk/kcachegrind.nix
deleted file mode 100644
index 103e2dc071c35..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kcachegrind.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, kdelibs, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
-
-
-  meta = {
-    description = "KDE Frontend for Callgrind/Cachegrind";
-    kde = {
-      name = "kcachegrind";
-      module = "kdesdk";
-      version = "0.6";
-      release = "4.5.90";
-      versionFile = "CMakeLists.txt";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kdeaccounts-plugin.nix b/pkgs/desktops/kde-4.6/sdk/kdeaccounts-plugin.nix
deleted file mode 100644
index 4cfa3eb2a0c27..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kdeaccounts-plugin.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, kdepimlibs }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 kdepimlibs ];
-
-
-  meta = {
-    description = "KDE accounts akonadi agent";
-    kde = {
-      name = "kdeaccounts-plugin";
-      module = "kdesdk";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kioslave-perldoc.nix b/pkgs/desktops/kde-4.6/sdk/kioslave-perldoc.nix
deleted file mode 100644
index c5a5f2b5b6145..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kioslave-perldoc.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, perl }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 perl ];
-
-  cmakeFlags = "-DBUILD_kioslave=ON -DBUILD_perldoc=ON";
-
-  meta = {
-    description = "perldoc: kioslave";
-    kde = {
-      name = "kioslave-perldoc";
-      module = "kdesdk";
-      version = "0.9.1";
-      release = "4.5.90";
-      versionFile = "kioslave/perldoc/perldoc.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kioslave-svn.nix b/pkgs/desktops/kde-4.6/sdk/kioslave-svn.nix
deleted file mode 100644
index 1ca05eb5f4256..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kioslave-svn.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, subversion, apr, aprutil }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 subversion apr aprutil ];
-
-  patches = [ ./find-svn.patch ];
-  cmakeFlags = "-DBUILD_kioslave=ON";
-
-  meta = {
-    description = "svn:/ kioslave";
-    kde = {
-      name = "kioslave-svn";
-      module = "kdesdk";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kmtrace.nix b/pkgs/desktops/kde-4.6/sdk/kmtrace.nix
deleted file mode 100644
index 2429a07f4002b..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kmtrace.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, gcc }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
-
-  preConfigure="export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:${gcc}:${gcc.gcc}";
-
-  meta = {
-    description = "KDE mtrace-based malloc debuger";
-    kde = {
-      name = "kmtrace";
-      module = "kdesdk";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kompare.nix b/pkgs/desktops/kde-4.6/sdk/kompare.nix
deleted file mode 100644
index 5366edfa855bf..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kompare.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, kdelibs, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
-
-
-  meta = {
-    description = "A program to view the differences between files and optionally generate a diff";
-    kde = {
-      name = "kompare";
-      module = "kdesdk";
-      version = "4.0.0";
-      release = "4.5.90";
-      versionFile = "main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kpartloader.nix b/pkgs/desktops/kde-4.6/sdk/kpartloader.nix
deleted file mode 100644
index 8702a7f73284a..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kpartloader.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, kdelibs, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
-
-
-  meta = {
-    description = "A test application for KParts";
-    kde = {
-      name = "kpartloader";
-      module = "kdesdk";
-      version = "1.0";
-      release = "4.5.90";
-      versionFile = "kpartloader.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kprofilemethod.nix b/pkgs/desktops/kde-4.6/sdk/kprofilemethod.nix
deleted file mode 100644
index 360a71948ace9..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kprofilemethod.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
-
-
-  meta = {
-    description = "A macros for profiling using QTime";
-    longDescription = "Don't commit any code using kprofilemethod.h to KDE repositories.";
-    kde = {
-      name = "kprofilemethod";
-      module = "kdesdk";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kstartperf.nix b/pkgs/desktops/kde-4.6/sdk/kstartperf.nix
deleted file mode 100644
index cd43be1cece4b..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kstartperf.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, libtool }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 libtool ];
-
-
-  meta = {
-    description = "Measures start up time of a KDE application";
-    kde = {
-      name = "kstartperf";
-      module = "kdesdk";
-      version = "1.0";
-      release = "4.5.90";
-      versionFile = "kstartperf.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/kuiviewer.nix b/pkgs/desktops/kde-4.6/sdk/kuiviewer.nix
deleted file mode 100644
index e8ea5b5b36c3b..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/kuiviewer.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, kdelibs, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
-
-
-  meta = {
-    description = "Displays Qt Designer's UI files";
-    kde = {
-      name = "kuiviewer";
-      module = "kdesdk";
-      version = "0.1";
-      release = "4.5.90";
-      versionFile = "main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/lokalize.nix b/pkgs/desktops/kde-4.6/sdk/lokalize.nix
deleted file mode 100644
index 4911cb22ae44e..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/lokalize.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, hunspell }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 hunspell ];
-
-
-  meta = {
-    description = "KDE 4 Computer-aided translation system";
-    longDescription = ''
-      Computer-aided translation system.
-      Do not translate what had already been translated.'';
-    kde = {
-      name = "lokalize";
-      module = "kdesdk";
-      version = "1.1";
-      release = "4.5.90";
-      versionFile = "src/version.h";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/poxml.nix b/pkgs/desktops/kde-4.6/sdk/poxml.nix
deleted file mode 100644
index 652110b38ff38..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/poxml.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, antlr }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 antlr ];
-
-
-  meta = {
-    description = "Po<->xml tools";
-    kde = {
-      name = "poxml";
-      module = "kdesdk";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/scripts.nix b/pkgs/desktops/kde-4.6/sdk/scripts.nix
deleted file mode 100644
index 204c24cfba5f4..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/scripts.nix
+++ /dev/null
@@ -1,15 +0,0 @@
-{ kde, cmake, kdelibs, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
-
-
-  meta = {
-    description = "Various scripts to ease KDE development";
-    kde = {
-      name = "scripts";
-      module = "kdesdk";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/sdk/umbrello.nix b/pkgs/desktops/kde-4.6/sdk/umbrello.nix
deleted file mode 100644
index d465e97012bde..0000000000000
--- a/pkgs/desktops/kde-4.6/sdk/umbrello.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, libxml2, libxslt, boost }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 libxml2 libxslt boost ];
-
-
-  meta = {
-    description = "Umbrello UML modeller";
-    kde = {
-      name = "umbrello";
-      module = "kdesdk";
-      version = "2.5.2"; # release - 200
-      release = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/support/akonadi/default.nix b/pkgs/desktops/kde-4.6/support/akonadi/default.nix
deleted file mode 100644
index e3a5b34a24cb7..0000000000000
--- a/pkgs/desktops/kde-4.6/support/akonadi/default.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{stdenv, fetchurl, cmake, qt4, shared_mime_info, libxslt, boost, mysql, automoc4, soprano}:
-
-stdenv.mkDerivation rec {
-  name = "akonadi-1.5.0";
-  src = fetchurl {
-    url = "http://download.akonadi-project.org/${name}.tar.bz2";
-    sha256 = "1azk2g7vb2sampxlys1hkgf9jvzpv92afsjdl31ikqbckaqnbfqc";
-  };
-  buildInputs = [ cmake qt4 shared_mime_info libxslt boost mysql automoc4 soprano ];
-  meta = with stdenv.lib; {
-    description = "KDE PIM Storage Service";
-    license = "LGPL";
-    homepage = http://pim.kde.org/akonadi;
-    maintainers = [ maintainers.sander maintainers.urkud ];
-    platforms = platforms.linux;
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/support/attica/default.nix b/pkgs/desktops/kde-4.6/support/attica/default.nix
deleted file mode 100644
index 0eff2cbb4ebad..0000000000000
--- a/pkgs/desktops/kde-4.6/support/attica/default.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{stdenv, fetchurl, cmake, qt4}:
-
-stdenv.mkDerivation rec {
-  name = "attica-0.2.0";
-  src = fetchurl {
-    url = "mirror://kde/stable/attica/${name}.tar.bz2";
-    sha256 = "0g2la91fgdr185ah15vc91plvdwvbm6kpsyz0vk0da7ggiyg3y9a";
-  };
-  buildInputs = [ cmake qt4 ];
-  meta = with stdenv.lib; {
-    description = "A library to access Open Collaboration Service providers";
-    license = "LGPL";
-    maintainers = [ maintainers.sander maintainers.urkud ];
-    platforms = qt4.meta.platforms;
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/support/polkit-qt-1/default.nix b/pkgs/desktops/kde-4.6/support/polkit-qt-1/default.nix
deleted file mode 100644
index 88a63b3881cf6..0000000000000
--- a/pkgs/desktops/kde-4.6/support/polkit-qt-1/default.nix
+++ /dev/null
@@ -1,20 +0,0 @@
-{ stdenv, fetchurl, cmake, qt4, pkgconfig, polkit, automoc4, glib }:
-
-stdenv.mkDerivation rec {
-  name = "polkit-qt-1-0.99.0";
-
-  buildInputs = [ qt4 automoc4 ];
-  propagatedBuildInputs = [ polkit glib ];
-  buildNativeInputs = [ cmake pkgconfig ];
-
-  src = fetchurl {
-    url = "mirror://kde/stable/apps/KDE4.x/admin/${name}.tar.bz2";
-    sha256 = "02m710q34aapbmnz1p6qwgkk5xjmm239zdl3lvjg77dh3j0w5i3r";
-  };
-
-  patches = [ ./policy-files.patch ];
-
-  meta = {
-    maintainers = with stdenv.lib.maintainers; [ urkud sander ];
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/support/polkit-qt-1/policy-files.patch b/pkgs/desktops/kde-4.6/support/polkit-qt-1/policy-files.patch
deleted file mode 100644
index f179c962a586c..0000000000000
--- a/pkgs/desktops/kde-4.6/support/polkit-qt-1/policy-files.patch
+++ /dev/null
@@ -1,25 +0,0 @@
-From 2791059a4c930c7eb5e4a3233ef997e69187c4d1 Mon Sep 17 00:00:00 2001
-From: Yury G. Kudryashov <urkud.urkud@gmail.com>
-Date: Fri, 24 Dec 2010 16:00:04 +0300
-Subject: [PATCH] Don't let packages install policy files outside of their installation prefix
-
----
- PolkitQt-1Config.cmake.in |    2 +-
- 1 files changed, 1 insertions(+), 1 deletions(-)
-
-diff --git a/PolkitQt-1Config.cmake.in b/PolkitQt-1Config.cmake.in
-index 1356de7..4c55719 100644
---- a/PolkitQt-1Config.cmake.in
-+++ b/PolkitQt-1Config.cmake.in
-@@ -15,7 +15,7 @@ endif(NOT POLKITQT-1_INSTALL_DIR)
- 
- set(POLKITQT-1_INCLUDE_DIR              "@INCLUDE_INSTALL_DIR@/polkit-qt-1")
- set(POLKITQT-1_LIB_DIR                  "@LIB_INSTALL_DIR@")
--set(POLKITQT-1_POLICY_FILES_INSTALL_DIR "${POLKITQT-1_INSTALL_DIR}/share/polkit-1/actions")
-+set(POLKITQT-1_POLICY_FILES_INSTALL_DIR "share/polkit-1/actions")
- 
- # Compatibility
- if(WIN32)
--- 
-1.7.3.2
-
diff --git a/pkgs/desktops/kde-4.6/toys/amor.nix b/pkgs/desktops/kde-4.6/toys/amor.nix
deleted file mode 100644
index 2c68ffe6fa80e..0000000000000
--- a/pkgs/desktops/kde-4.6/toys/amor.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
-
-  meta = {
-    description = "KDE creature for your desktop";
-    kde = {
-      name = "amor";
-      module = "kdetoys";
-      version = "2.4.0";
-      release = "4.5.90";
-      versionFile = "src/version.h";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/toys/kteatime.nix b/pkgs/desktops/kde-4.6/toys/kteatime.nix
deleted file mode 100644
index 14cfcd07f5897..0000000000000
--- a/pkgs/desktops/kde-4.6/toys/kteatime.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
-
-  meta = {
-    description = "KDE utility for making a fine cup of tea";
-    kde = {
-      name = "kteatime";
-      module = "kdetoys";
-      version = "1.2.1";
-      release = "4.5.90";
-      versionFile = "src/main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/toys/ktux.nix b/pkgs/desktops/kde-4.6/toys/ktux.nix
deleted file mode 100644
index af280761865d2..0000000000000
--- a/pkgs/desktops/kde-4.6/toys/ktux.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, kdebase_workspace }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 kdebase_workspace ];
-
-  meta = {
-    description = "Tux Screen Saver";
-    kde = {
-      name = "ktux";
-      module = "kdetoys";
-      version = "1.0.1";
-      release = "4.5.90";
-      versionFile = "src/sprite.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/ark.nix b/pkgs/desktops/kde-4.6/utils/ark.nix
deleted file mode 100644
index eb78b2fe0109b..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/ark.nix
+++ /dev/null
@@ -1,21 +0,0 @@
-{ kde, cmake, kdelibs, qt4, perl, libarchive, xz, automoc4, qjson,
-  kdebase }:
-
-kde.package {
-  patchPhase = "cp -vn ${qjson}/share/apps/cmake/modules/FindQJSON.cmake cmake/modules";
-
-  buildInputs = [ cmake qt4 perl libarchive xz kdelibs automoc4 qjson
-    kdebase # for libkonq
-    ];
-
-  meta = {
-    description = "KDE Archiving Tool";
-    kde = {
-      name = "ark";
-      module = "kdeutils";
-      version = "2.15";
-      release = "4.5.90";
-      versionFile = "app/main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/kcalc.nix b/pkgs/desktops/kde-4.6/utils/kcalc.nix
deleted file mode 100644
index dd8e6f47cdc2e..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/kcalc.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, perl, kdelibs, qt4, automoc4, gmp }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 gmp ];
-
-  meta = {
-    description = "KDE Calculator";
-    kde = {
-      name = "kcalc";
-      module = "kdeutils";
-      version = "2.7";
-      release = "4.5.90";
-      versionFile = "version.h";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/kcharselect.nix b/pkgs/desktops/kde-4.6/utils/kcharselect.nix
deleted file mode 100644
index 9952a5fa018d4..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/kcharselect.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, qt4, perl, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 ];
-
-  meta = {
-    description = "KDE character selection utility";
-    kde = {
-      name = "kcharselect";
-      module = "kdeutils";
-      version = "1.7";
-      release = "4.5.90";
-      versionFile = "main.cc";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/kdf.nix b/pkgs/desktops/kde-4.6/utils/kdf.nix
deleted file mode 100644
index 9e07ac65a76fa..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/kdf.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, qt4, perl, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 ];
-
-  meta = {
-    description = "KDE free disk space utility";
-    kde = {
-      name = "kdf";
-      module = "kdeutils";
-      version = "0.11";
-      release = "4.5.90";
-      versionFile = "kdf.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/kfloppy.nix b/pkgs/desktops/kde-4.6/utils/kfloppy.nix
deleted file mode 100644
index e4d32387a9991..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/kfloppy.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kde, cmake, kdelibs, qt4, perl, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 ];
-
-  meta = {
-    description = "Helps you format floppies with the filesystem of your choice";
-    kde = {
-      name = "kfloppy";
-      module = "kdeutils";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/kgpg.nix b/pkgs/desktops/kde-4.6/utils/kgpg.nix
deleted file mode 100644
index 317bc384723c1..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/kgpg.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, qt4, perl, automoc4, kdepimlibs }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 kdepimlibs ];
-
-  meta = {
-    description = "Simple KDE GUI for gpg";
-    kde = {
-      name = "kgpg";
-      module = "kdeutils";
-      version = "2.4.1";
-      release = "4.5.90";
-      versionFile = "main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/kremotecontrol.nix b/pkgs/desktops/kde-4.6/utils/kremotecontrol.nix
deleted file mode 100644
index 9d6cd6ed61ee6..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/kremotecontrol.nix
+++ /dev/null
@@ -1,14 +0,0 @@
-{ kde, cmake, kdelibs, qt4, perl, automoc4, kdebase_workspace }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 kdebase_workspace ];
-
-  meta = {
-    description = "KDE remote control";
-    kde = {
-      name = "kremotecontrol";
-      module = "kdeutils";
-      version = "4.5.90";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/ktimer.nix b/pkgs/desktops/kde-4.6/utils/ktimer.nix
deleted file mode 100644
index 069985d702520..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/ktimer.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, qt4, perl, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 ];
-
-  meta = {
-    description = "KDE Timer";
-    kde = {
-      name = "ktimer";
-      module = "kdeutils";
-      version = "0.6";
-      release = "4.5.90";
-      versionFile = "main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/kwallet.nix b/pkgs/desktops/kde-4.6/utils/kwallet.nix
deleted file mode 100644
index 395fe1da44869..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/kwallet.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, qt4, perl, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 ];
-
-  meta = {
-    description = "KDE Wallet (password storage) management tool";
-    kde = {
-      name = "kwallet";
-      module = "kdeutils";
-      version = "1.6";
-      release = "4.5.90";
-      versionFile = "main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/okteta.nix b/pkgs/desktops/kde-4.6/utils/okteta.nix
deleted file mode 100644
index 06343e7c0af46..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/okteta.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, qt4, perl, automoc4, shared_mime_info, qca2 }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 shared_mime_info qca2 ];
-
-  meta = {
-    description = "KDE byte editor";
-    kde = {
-      name = "okteta";
-      module = "kdeutils";
-      version = "0.5.2";
-      release = "4.5.90";
-      versionFile = "program/about.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/printer-applet.nix b/pkgs/desktops/kde-4.6/utils/printer-applet.nix
deleted file mode 100644
index 92f6308b62383..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/printer-applet.nix
+++ /dev/null
@@ -1,22 +0,0 @@
-{ kde, cmake, kdelibs, qt4, perl, automoc4
-, python, sip, pyqt4, pycups, rhpl, system_config_printer, kdebindings,
-  pythonDBus, makeWrapper }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 python sip pyqt4 pycups rhpl
-    system_config_printer kdebindings makeWrapper pythonDBus ];
-
-  postInstall="wrapProgram $out/bin/printer-applet --set PYTHONPATH $PYTHONPATH";
-
-  meta = {
-    description = "KDE printer applet";
-    longDescription = "Applet to view current print jobs and configure new printers";
-    kde = {
-      name = "printer-applet";
-      module = "kdeutils";
-      version = "1.5";
-      release = "4.5.90";
-      versionFile = "printer-applet.py";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/superkaramba.nix b/pkgs/desktops/kde-4.6/utils/superkaramba.nix
deleted file mode 100644
index 75ed3bc0eed56..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/superkaramba.nix
+++ /dev/null
@@ -1,18 +0,0 @@
-{ kde, cmake, perl, kdelibs, qt4, automoc4, qimageblitz, python }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 qimageblitz python ];
-
-  cmakeFlags = "-DBUILD_icons=TRUE -DBULD_plasma=TRUE";
-
-  meta = {
-    description = "A KDE Eye-candy Application";
-    kde = {
-      name = "superkaramba";
-      module = "kdeutils";
-      version = "0.55";
-      release = "4.5.90";
-      versionFile = "src/main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/utils/sweeper.nix b/pkgs/desktops/kde-4.6/utils/sweeper.nix
deleted file mode 100644
index 9e702ff708cb3..0000000000000
--- a/pkgs/desktops/kde-4.6/utils/sweeper.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, perl, kdelibs, qt4, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake qt4 perl kdelibs automoc4 ];
-
-  meta = {
-    description = "Helps clean unwanted traces the user leaves on the system";
-    kde = {
-      name = "sweeper";
-      module = "kdeutils";
-      version = "1.5";
-      release = "4.5.90";
-      versionFile = "main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/webdev/kfilereplace.nix b/pkgs/desktops/kde-4.6/webdev/kfilereplace.nix
deleted file mode 100644
index e428f3597834b..0000000000000
--- a/pkgs/desktops/kde-4.6/webdev/kfilereplace.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, libxml2, libxslt }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 libxml2 libxslt ];
-
-  meta = {
-    description = "Batch search and replace tool";
-    homepage = http://www.kdewebdev.org;
-    kde = {
-      name = "kfilereplace";
-      module = "kdewebdev";
-      version = "0.1";
-      release = "4.5.90";
-      versionFile = "main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/webdev/kimagemapeditor.nix b/pkgs/desktops/kde-4.6/webdev/kimagemapeditor.nix
deleted file mode 100644
index a3ae85a8f1676..0000000000000
--- a/pkgs/desktops/kde-4.6/webdev/kimagemapeditor.nix
+++ /dev/null
@@ -1,17 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, libxml2, libxslt }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 libxml2 libxslt ];
-
-  meta = {
-    description = "An HTML imagemap editor";
-    homepage = http://www.nongnu.org/kimagemap/;
-    kde = {
-      name = "kimagemapeditor";
-      module = "kdewebdev";
-      version = "3.9.0";
-      release = "4.5.90";
-      versionFile = "version.h";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/webdev/klinkstatus.nix b/pkgs/desktops/kde-4.6/webdev/klinkstatus.nix
deleted file mode 100644
index 7c419a572d3d9..0000000000000
--- a/pkgs/desktops/kde-4.6/webdev/klinkstatus.nix
+++ /dev/null
@@ -1,19 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, libxml2, libxslt, kdepimlibs, boost, htmlTidy,
-  ruby }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 libxml2 libxslt kdepimlibs boost
-    htmlTidy ruby ];
-
-  meta = {
-    description = "A KDE link checker";
-    homepage = http://klinkstatus.kdewebdev.org;
-    kde = {
-      name = "klinkstatus";
-      module = "kdewebdev";
-      version = "0.7.0";
-      release = "4.5.90";
-      versionFile = "src/main.cpp";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.6/webdev/kommander.nix b/pkgs/desktops/kde-4.6/webdev/kommander.nix
deleted file mode 100644
index c450e1d7810a3..0000000000000
--- a/pkgs/desktops/kde-4.6/webdev/kommander.nix
+++ /dev/null
@@ -1,16 +0,0 @@
-{ kde, cmake, kdelibs, automoc4, libxml2, libxslt }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 libxml2 libxslt ];
-
-  meta = {
-    description = "A graphical editor of scripted dialogs";
-    kde = {
-      name = "kommander";
-      module = "kdewebdev";
-      version = "1.91";
-      release = "4.5.90";
-      versionFile = "lib/kommanderversion.h";
-    };
-  };
-}
diff --git a/pkgs/desktops/kde-4.7/default.nix b/pkgs/desktops/kde-4.7/default.nix
new file mode 100644
index 0000000000000..a0c59c4e044f0
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/default.nix
@@ -0,0 +1,57 @@
+{ callPackage, callPackageOrig, stdenv, qt47 }:
+
+let
+  release = "4.7.0";
+
+  # Need callPackageOrig to avoid infinite cycle
+  kde = callPackageOrig ./kde-package {
+    inherit release ignoreList extraSubpkgs callPackage;
+  };
+
+  # The list of igored individual modules
+  ignoreList = {
+    # kdeadmin/strigi-analyzer has no real code
+    kdeadmin = [ "strigi-analyzer" ];
+    # kdesdk/kioslave is splitted into kioslave-svn and kioslave-git
+    kdesdk = [ "kioslave" ];
+    # Most of kdebindings do not compile due to a bug in the buildsystem
+    kdebindings = [ "kimono" "korundum" "kross-interpreters" "perlkde" "perlqt"
+      "qtruby" "qyoto" "smokekde" ];
+  };
+
+  # Extra subpackages in the manifest format
+  extraSubpkgs = {
+    kdesdk =
+      [
+      {
+        name = "kioslave-svn";
+        sane = "kioslave_svn";
+        subdir = "kioslave";
+      }
+      {
+        name = "kioslave-perldoc";
+        sane = "kioslave_perldoc";
+        subdir = "kioslave";
+      }
+      ];
+  };
+
+in
+
+kde.modules // kde.individual //
+{
+  inherit (kde) manifest modules individual splittedModuleList;
+
+  akonadi = callPackage ./support/akonadi { };
+  soprano = callPackage ./support/soprano { };
+
+  qt4 = qt47;
+
+  kdebase_workspace = kde.individual.kde_workspace;
+
+  inherit release;
+
+  full = stdenv.lib.attrValues kde.modules;
+
+  l10n = callPackage ./l10n { inherit release; };
+}
diff --git a/pkgs/desktops/kde-4.7/files/polkit-install.patch b/pkgs/desktops/kde-4.7/files/polkit-install.patch
new file mode 100644
index 0000000000000..d2ecac663ec5f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/files/polkit-install.patch
@@ -0,0 +1,12 @@
+diff -ru -x '*~' kdelibs-4.6.90-orig/kdecore/auth/ConfigureChecks.cmake kdelibs-4.6.90/kdecore/auth/ConfigureChecks.cmake
+--- kdelibs-4.6.90-orig/kdecore/auth/ConfigureChecks.cmake	2011-05-20 22:24:54.000000000 +0200
++++ kdelibs-4.6.90/kdecore/auth/ConfigureChecks.cmake	2011-07-12 14:03:00.000000000 +0200
+@@ -139,7 +139,7 @@
+         ${CMAKE_INSTALL_PREFIX} _KDE4_AUTH_POLICY_FILES_INSTALL_DIR
+         ${POLKITQT-1_POLICY_FILES_INSTALL_DIR})
+ 
+-    set(KDE4_AUTH_POLICY_FILES_INSTALL_DIR ${_KDE4_AUTH_POLICY_FILES_INSTALL_DIR} CACHE STRING 
++    set(KDE4_AUTH_POLICY_FILES_INSTALL_DIR "\${CMAKE_INSTALL_PREFIX}/share/polkit-1/actions" CACHE STRING 
+         "Where policy files generated by KAuth will be installed" FORCE)
+ elseif(KDE4_AUTH_BACKEND_NAME STREQUAL "FAKE")
+     set (KAUTH_COMPILING_FAKE_BACKEND TRUE)
diff --git a/pkgs/desktops/kde-4.7/kde-package/4.7.0.nix b/pkgs/desktops/kde-4.7/kde-package/4.7.0.nix
new file mode 100644
index 0000000000000..b3192fadb8bae
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kde-package/4.7.0.nix
@@ -0,0 +1 @@
+{stable=true;hashes=builtins.listToAttrs[{name="blinken";value="1g4vpwbal6d7ypmq6l8dh17gi249cd261hsa4bjkvb0wx88i66qr";}{name="cantor";value="0xb4xja9ab4kzgzpikhlkrl68287lqdigvl6pzbh9m6g0ghlp697";}{name="gwenview";value="14a1mjcfcw4nq2c5qkvca8mgdrr31gm24l9nlkcj7p8yrpkxfykh";}{name="kalgebra";value="140528rn3zx489g1lawr1n19i3rrc58h2ii8gh46dnlfcgig13bb";}{name="kalzium";value="1vfa9kdxrdfqqfad0dp2pwi919qs5pbgdk7jmi4dccwlhgmv3226";}{name="kamera";value="02g3mh14rfyrmpa3r8m5pqzxhs4kdb3xvg34434g9r51v3am3ypk";}{name="kanagram";value="04hv13mij4kg8bifs690q4qxr4qk7dnviihlc297x434l0iz2spd";}{name="kate";value="0bd0b354a7cx8cmw2d5pbqn0an38xls86454gclyjd1ilr3l41m9";}{name="kbruch";value="169c6xq0jvp9cv6p9ypk8sryxsh711xdgbs02yiqd476ykavj3jv";}{name="kcolorchooser";value="1f7nj9ccvf1bg3nnm7xchaqvfnskkbnd1h2xd5fxmj9fz1195kqv";}{name="kdeaccessibility";value="01qx0w5dylkbxchj5kg9iawdc0rjbxv1w1dg90ld98fn583g70ws";}{name="kdeadmin";value="1zm6p65wgdn0rv9vzcm89vsiw1696g0bf7kshvwnjmsfc9whsgq3";}{name="kdeartwork";value="12cqpam82k086088i2p1318y1vjr7c8iffppnm6mkbllg2g8ydip";}{name="kde-baseapps";value="0jpi3fjsav52v6ziwdldy03akfpahaagjp3g3m015cmn9bhk2l71";}{name="kdegames";value="1n98jiax7s4m8gb2jq5vdwsg6sfkls7m4mfm627dfsqmvpcgf9k0";}{name="kdegraphics-strigi-analyzer";value="15p0wsiawhygdq9fwp451vcbxbf1sv9pvlwz3x4ma5mp8la7k4vd";}{name="kdegraphics-thumbnailers";value="1gl08an6gzdxvam9fvq5c98zm8m95h6184y0hf0zlqjzkqgg312l";}{name="kdelibs";value="1f0wmcsw0lkfaqdil2yxjfpldr0ckwy5iblkwwaad4n1b4hyssyv";}{name="kdemultimedia";value="0b53vg6gp4qv92w7y721xwbv23bzzljvyl18j05z8ig2l6m57kf5";}{name="kdenetwork";value="1ifg2hxbh80fpszm9r1jzamy65jlkqb6y8fcfa0sngwsklkxn5sh";}{name="kdepim";value="140n4q1rf2jbxmqmkwzam1fipk4k30n3wn9ik8mlqfmxm06dhgqs";}{name="kdepimlibs";value="020irkn43q999idk4kwfi9250fvk98ffi9m998ywgzfl9wps01g0";}{name="kdepim-runtime";value="11ad82hisya8ysx6p1ik6nw1hbyqwksxhimlxcrjkkjh76nphs2g";}{name="kdeplasma-addons";value="1bi7n6lav9z08pvarhsgx9wmm14mr34mvjm4vk9jszrdi7vl2ayj";}{name="kde-runtime";value="1wm91hkj8h1rbavcxwgjfsfrzhr3rs1xd6zf2kxyh1hh9fkdrx3w";}{name="kdesdk";value="04kx9srv8a4z9lic9v3f375rglpz87hhq6wppxksi9qgyc0vzqnv";}{name="kdetoys";value="1ahsk0990a3zx665mjqaljb5w392qkk1pnla5srqg57g62yhig8f";}{name="kdeutils";value="1n031c1i42bq08md156k7fhzw67b28b0a6168m9c9hnhh3483r7l";}{name="kde-wallpapers";value="1xb9k9w479xcwa4caxqn4z1h942lvx7ahy0crxkk41ra3xgw7fg9";}{name="kdewebdev";value="0v8v45rwfldk299ny0jhxqa7xsa1x0ywz7lbqc9i0m3g808ifa29";}{name="kde-workspace";value="0s1l7airb92dd4vprry39nzikarv03qfsmd2j0brif5jjfjd2c3y";}{name="kgamma";value="1xgxnb8x2iy1ikychs8bh5jplkdlk7br6yrmivzrz7s2337dlm35";}{name="kgeography";value="1pm4y5d4d0cl36wgwrkm48yk60m73ljys2awahjsfdpwxs0x42ca";}{name="khangman";value="0ccp1qsji6jjybcbc0rwkw78ypl5kwk1kb74vrnz2ss9anxky2c3";}{name="kig";value="06nk38wg43rxxdzr535vrw4f3d1v9kym5bir6vfpyay8xdxqgf5f";}{name="kimono";value="1p4scmzn0kbkpbrv27658bh56ll9zazaf3rk1p2c6lm6zglvm9gd";}{name="kiten";value="119h7fslp975r0kd7i1zmvhrfrr19rlhm4ni99pd4jxnhz05n47k";}{name="klettres";value="0znca4iqgxlmldyzmd5rf9z2c0jhmmijwxyxaqjffrphq407wms0";}{name="kmplot";value="1zyk3701mhga9d53bm8xyzbw4zn6s9ijfnp0ww2hq9dcm81w12ga";}{name="kolourpaint";value="0ckqz8fmaq92lkaxm87c2nfdjvwp4l310vnicqm2bkkmkma9p6cs";}{name="konsole";value="1apchw8n1k2xyi3h0n3w4fxwy6vx6lxhx7ll3vhfmyl8wa0gzwf5";}{name="korundum";value="1ndhbn6i5napfgp5czsbww1vknss49xhxlj6rn5ci1m5j2zfajic";}{name="kross-interpreters";value="0hzx08r60z9pl7i1hnh6q1zq4s7wmny4015b55prllaa94yb1ya2";}{name="kruler";value="1bydk587las6dx447mihkg7qmn0hn6iis20xfl4wygx7a81imnw3";}{name="ksaneplugin";value="02g4vdgz4k7rahkwss5m1vfv22rzhr6gzmzf79vrbg15mci57jzz";}{name="ksnapshot";value="1dllmx8v2qzkfhy9b3j87yjmkyl3fdkjbmdfqlk5kq2n40k3fha0";}{name="kstars";value="0qgsphimg200kapnjwqh3186z27ypszmhr4knk46jyyczmj2k4nd";}{name="ktouch";value="1w1ps11xazqvvh66v78r714283kd5icvz6dgbh7wfangpqya2g9i";}{name="kturtle";value="0xiz13nb2wgajgm2z105pywi0fcw09appp4k4wbg6nykqdcql0n5";}{name="kwordquiz";value="1rja09mvp7j264ap27m4413dy8l1867ds1w3yizlqlcrl92fby7b";}{name="libkdcraw";value="0dcplib41s5cnv5jjnx2y7d9gd4vls6qlf1vpr1iqsbhrr0az50a";}{name="libkdeedu";value="0nq2b4l5134lkyv0vzfqpp5w7vbr0b6lg88xyjlpih6n9bywiv16";}{name="libkexiv2";value="1fgawizv09vv0almb05sf5f93iqsp3w8x9nx4p9hys66qiz8n467";}{name="libkipi";value="09gpjx4vyncf6js79jf7w4w55lgnzawii40ar7ssrhnxspckbdn0";}{name="libksane";value="1ffwz2g4y12fg8pckz1a0qizziljv17zbn7g1vjf30pw8dpk0x12";}{name="marble";value="0x5yhs28g0z1s9qjmgkdidfp0hmy526l9cmqjccaqn7a61ziv0qz";}{name="mobipocket";value="06qh1xdijc4fscpbxfc7f6mmy1dkxvhx7sb4fmhk2m3z569ir2jx";}{name="okular";value="016xa6i0n1nyq1h9z8nhwc9br9k09l0c2gxhzfd9g6nf528zlbdf";}{name="oxygen-icons";value="1a4dkhay0qrbz9gz2xx3d7vbk18qyjrx9hxgdazjxr35ba6xipgc";}{name="parley";value="0zkj272wrih66mcpr27am9qnp3ab4275is06c8h6hzf5wmfq6sib";}{name="perlkde";value="0pp8ljvck68b45yxhknmyn8z1a1xnq3ahcpz8m6pfch77hlg7fhj";}{name="perlqt";value="0sw1dpxshmmdvp93x59wclslm5xza0yy0f8nmqgdns8c77g0b3k8";}{name="pykde4";value="1mdq474f4jj637k0a9jpb2vcvq4f90vwrhgjs7mqqwmvkh6vv6h0";}{name="qtruby";value="1h7m17d36y5vgaxcqwa814yxmsx19v0xh9m83cq1zznxl62sbmh1";}{name="qyoto";value="1lbdv00hd0s0m5ywjnb52wgz3hb5nx45kwpjkjrjcj1jg76rvk72";}{name="rocs";value="1ma5ylc4rvzjrn1l8rv8684map78zk73fa1a3iz996z1c5fg09wm";}{name="smokegen";value="1g05if9k9ichxlrfly5lha6n2mcihbaz681yg14cjj806s0qs53l";}{name="smokekde";value="0b8kx8a3990l6f7pf252diz7b50r81kxkhigkzkc9lzq833a2siq";}{name="smokeqt";value="0cgjdh9dr4pn1yh423mhifv2yvd283k2mhwkmfn2i0398h71a252";}{name="step";value="1pg7k60rbvr6nfq47xnj98w121703s79z8rap601xrmb8wyfhmyy";}{name="svgpart";value="0xyp4sibcdjxq2ny348m4z95bh71r3q3pm8xfwb1j50my9g8ijir";}];modules=[{module="kdegraphics";split=true;pkgs=[{name="gwenview";}{name="kamera";}{name="kcolorchooser";}{name="kdegraphics-strigi-analyzer";sane="kdegraphics_strigi_analyzer";}{name="kdegraphics-thumbnailers";sane="kdegraphics_thumbnailers";}{name="kgamma";}{name="kolourpaint";}{name="kruler";}{name="ksaneplugin";}{name="ksnapshot";}{name="libkdcraw";}{name="libkexiv2";}{name="libkipi";}{name="libksane";}{name="mobipocket";}{name="okular";}{name="svgpart";}];}{module="kdebase";split=true;pkgs=[{name="kate";}{name="kde-baseapps";sane="kde_baseapps";}{name="kde-runtime";sane="kde_runtime";}{name="kde-workspace";sane="kde_workspace";}{name="konsole";}];}{module="kdeedu";split=true;pkgs=[{name="blinken";}{name="cantor";}{name="kalgebra";}{name="kalzium";}{name="kanagram";}{name="kbruch";}{name="kgeography";}{name="khangman";}{name="kig";}{name="kiten";}{name="klettres";}{name="kmplot";}{name="kstars";}{name="ktouch";}{name="kturtle";}{name="kwordquiz";}{name="libkdeedu";}{name="marble";}{name="parley";}{name="rocs";}{name="step";}];}{module="kdebindings";split=true;pkgs=[{name="kimono";}{name="korundum";}{name="kross-interpreters";sane="kross_interpreters";}{name="perlkde";}{name="perlqt";}{name="pykde4";}{name="qtruby";}{name="qyoto";}{name="smokegen";}{name="smokekde";}{name="smokeqt";}];}{module="kdeaccessibility";split=false;pkgs=[{name="kaccessible";}{name="kmag";}{name="kmouth";}{name="kmousetool";}{name="jovie";}];}{module="kdeadmin";split=false;pkgs=[{name="strigi-analyzer";sane="strigi_analyzer";}{name="kuser";}{name="kcron";}{name="ksystemlog";}{name="system-config-printer-kde";sane="system_config_printer_kde";}];}{module="kdeartwork";split=false;pkgs=[{name="ColorSchemes";}{name="IconThemes";}{name="emoticons";}{name="kscreensaver";}{name="kwin-styles";sane="kwin_styles";}{name="sounds";}{name="styles";}{name="wallpapers";}{name="HighResolutionWallpapers";}{name="WeatherWallpapers";}{name="desktopthemes";}{name="aurorae";}];}{module="kdegames";split=false;}{module="kdelibs";split=false;}{module="kdemultimedia";split=false;}{module="kdenetwork";split=false;pkgs=[{name="kfile-plugins";sane="kfile_plugins";}{name="kget";}{name="kopete";}{name="krdc";}{name="kppp";}{name="krfb";}{name="kdnssd";}{name="filesharing";}];}{module="kdepim";split=false;}{module="kdepimlibs";split=false;}{module="kdepim-runtime";sane="kdepim_runtime";split=false;}{module="kdeplasma-addons";sane="kdeplasma_addons";split=false;}{module="kdesdk";split=false;pkgs=[{name="cervisia";}{name="lokalize";}{name="kdeaccounts-plugin";sane="kdeaccounts_plugin";}{name="dolphin-plugins-svn";sane="dolphin_plugins_svn";subdir="dolphin-plugins/svn";}{name="dolphin-plugins-git";sane="dolphin_plugins_git";subdir="dolphin-plugins/git";}{name="kcachegrind";}{name="kapptemplate";}{name="kpartloader";}{name="strigi-analyzer";sane="strigi_analyzer";}{name="kioslave";}{name="okteta";}{name="kmtrace";}{name="kompare";}{name="kprofilemethod";}{name="kstartperf";}{name="kuiviewer";}{name="poxml";}{name="scripts";}{name="umbrello";}];}{module="kdetoys";split=false;pkgs=[{name="kteatime";}{name="ktux";}{name="amor";}];}{module="kdeutils";split=false;pkgs=[{name="ark";}{name="kcalc";}{name="kremotecontrol";}{name="kdf";}{name="kfloppy";}{name="printer-applet";sane="printer_applet";}{name="filelight";}{name="kcharselect";}{name="kgpg";}{name="ktimer";}{name="kwallet";}{name="sweeper";}{name="superkaramba";}];}{module="kde-wallpapers";sane="kde_wallpapers";split=false;}{module="kdewebdev";split=false;pkgs=[{name="klinkstatus";}{name="kfilereplace";}{name="kimagemapeditor";}{name="kommander";}];}{module="oxygen-icons";sane="oxygen_icons";split=false;}];}
\ No newline at end of file
diff --git a/pkgs/desktops/kde-4.7/kde-package/default.nix b/pkgs/desktops/kde-4.7/kde-package/default.nix
new file mode 100644
index 0000000000000..d06f8a8fd8b43
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kde-package/default.nix
@@ -0,0 +1,121 @@
+{ callPackage, runCommand, stdenv, fetchurl, qt4, cmake, automoc4
+, release, ignoreList, extraSubpkgs
+}:
+
+let
+  inherit (stdenv.lib) filter fold;
+  inherit (builtins) getAttr hasAttr remoteAttrs listToAttrs tail head;
+in
+rec {
+  manifest = import (./. + "/${release}.nix");
+
+  # src attribute for $name tarball
+  kdesrc = name: fetchurl {
+    url = "mirror://kde/" + (if manifest.stable then "" else "un")
+      + "stable/${release}/src/${name}-${release}.tar.bz2";
+    sha256 = getAttr name manifest.hashes;
+  };
+
+  # Default meta attribute
+  defMeta = {
+    homepage = http://www.kde.org;
+    inherit (qt4.meta) platforms maintainers;
+  };
+
+  # KDE package built from the whole tarball
+  # This function is used both for monolithic modules and modules which are
+  # released as individual tarballs
+  kdeMonoPkg = name: let n_ = name; in a@{meta, name ? n_, ...}:
+    stdenv.mkDerivation ({
+        name = "${name}-${release}";
+        src = kdesrc name;
+        meta = defMeta // meta;
+      } // (removeAttrs a [ "meta" "name" ]));
+
+  # kdeMonoPkg wrapper for modules splitted upstream. Used in TODO
+  kdeSplittedPkg = module: {name, sane ? name}: kdeMonoPkg name;
+
+  # Build subdirectory ${subdir} of tarball ${module}-${release}.tar.bz2
+  kdeSubdirPkg = module:
+    {name, subdir ? name, sane ? name}:
+    let name_ = name; in
+    a@{cmakeFlags ? [], name ? name_, meta ? {}, ...}:
+    stdenv.mkDerivation ({
+      name = "${name}-${release}";
+      src = kdesrc module;
+      cmakeFlags = ["-DDISABLE_ALL_OPTIONAL_SUBDIRECTORIES=TRUE"
+      "-DBUILD_doc=TRUE" "-DBUILD_${subdir}=TRUE"] ++ cmakeFlags;
+      meta = defMeta // meta;
+    } // (removeAttrs a [ "meta" "name" "cmakeFlags" ]));
+
+  # A KDE monolithic module
+  kdeMonoModule = name: path: callPackage path { kde = kdeMonoPkg name; };
+
+  # Combine packages in one module.
+  # Arguments:
+  #  * pkgFun --- a function of the following signature:
+  #               module: manifest_attrs: manual_attrs: derivation;
+  #  * module --- name of the module
+  #  * pkgs --- list of packages in manifest format
+  combinePkgs = pkgFun: module: pkgs:
+    let
+      f = p@{name, ...}:
+        callPackage (./.. + "/${module}/${name}.nix") { kde = pkgFun module p; };
+      list = map f pkgs;
+      attrs = listToAttrs (map
+        ({name, sane ? name, ...}@p: { name = sane; value = f p; })
+        pkgs);
+    in
+      runCommand "${module}-${release}"
+      ({passthru = attrs // {
+         propagatedUserEnvPackages = list;
+         projects = attrs;
+       };})
+        ''
+          mkdir -pv $out/nix-support
+          echo "${toString list}" | tee $out/nix-support/propagated-user-env-packages
+        '';
+
+  # Given manifest module data, return the module
+  kdeModule = { module, sane ? module, split, pkgs ? [] }:
+    let
+      pkgs_ = filterPkgs module pkgs;
+    in
+    # Module is splitted by upstream
+    if split then combinePkgs kdeSplittedPkg module pkgs_
+    # Monolithic module
+    else if pkgs == [] then kdeMonoModule module (./.. + "/${module}.nix")
+    # Module is splitted by us
+    else combinePkgs kdeSubdirPkg module pkgs_;
+
+  # The same, as nameValuePair with sane name
+  kdeModuleNV = a@{ module, sane ? module, ... }:
+    { name = sane; value = kdeModule a; };
+
+  filterPkgs = module: (p:
+      removeNames (stdenv.lib.attrByPath [module] [] ignoreList) p
+      ++ (stdenv.lib.attrByPath [module] [] extraSubpkgs));
+
+  # Remove attrsets with x.name in subst. Optimized for empty subst.
+  removeNames = subst: big:
+    fold (s: out: filter (x: x.name != s) out) big subst;
+
+  modules = listToAttrs (map kdeModuleNV manifest.modules);
+
+  splittedModuleList =
+    let
+      splitted = filter (a: a ? pkgs) manifest.modules;
+      names = map ({module, sane ? module, ...}: sane) splitted;
+    in
+    map (m: m.projects) (stdenv.lib.attrVals names modules);
+
+  individual =
+    stdenv.lib.zipAttrsWith
+    (
+      name: list:
+      if tail list == []
+      then head list
+      else abort "Multiple modules define ${name}"
+    )
+    splittedModuleList;
+}
diff --git a/pkgs/desktops/kde-4.7/kde-package/kde-manifest.sh b/pkgs/desktops/kde-4.7/kde-package/kde-manifest.sh
new file mode 100755
index 0000000000000..10ce57cee6af1
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kde-package/kde-manifest.sh
@@ -0,0 +1,141 @@
+#!/usr/bin/env bash
+
+# Usage: download kde release to $dir, then run
+# $0 $dir
+
+dir="$1"
+
+# Detect release number & whether it is a stable release
+if [[ ! -d "${dir}" ]]; then
+  echo "${dir} is not a directory (or doesn't exist)!" >&2
+  exit 1
+fi
+
+release=$(ls "${dir}"/kdelibs-*.tar.bz2 | \
+  sed -e 's/.*kdelibs-//' -e 's/\.tar\.bz2//')
+
+if [[ ${release##*.} -gt 50 ]]; then
+  stable="false"
+else
+  stable="true"
+fi
+
+echo "Detected release ${release}" >&2
+
+declare -A hash
+declare -A modules
+declare -a packages
+declare -a top_level
+
+# xsltproc output declares -A module
+if [[ ! -f kde_projects.xml ]]; then
+  curl -O -J http://projects.kde.org/kde_projects.xml
+fi
+eval `xsltproc kde-submodules.xslt kde_projects.xml`
+
+print_sane() {
+  echo "Called print_sane $1" >&2
+  sane="${1//[^a-z0-9_]/_}"
+  if [[ "$sane" != "$1" ]]; then
+    echo "Sane version is $sane" >&2
+    echo -n "sane=\"$sane\";"
+  fi
+}
+
+for i in `cd "${dir}"; ls *-${release}.tar.bz2`; do
+  package=${i%-${release}.tar.bz2}
+  packages+=( "$package" )
+  echo -n "${package}.. " >&2
+  hash[$package]=$(nix-hash --type sha256 --flat --base32 "${dir}/${i}")
+  echo -n ${hash[$package]} >&2
+
+  if [ -n "${module[$package]}" ]; then
+    m="${module[$package]}"
+    echo " (${m})" >&2
+    modules[$m]=1
+  else
+    top_level+=( "$package" )
+    echo " (top-level)" >&2
+  fi
+  #nix-store --add-fixed sha256 "${dir}/${i}" >&2
+done
+
+
+print_pkg_hash() {
+  echo -n "{name=\"${1}\";value=\"${hash[$1]}\";}"
+}
+
+print_hashes(){
+  echo -n "hashes=builtins.listToAttrs["
+  for p in "${packages[@]}"; do print_pkg_hash "$p"; done
+  echo -n "];"
+}
+
+print_split_module(){
+  echo -n "$1:" >&2
+  echo -n "{module=\"$1\";"
+  print_sane "$1"
+  echo -n "split=true;"
+  echo -n "pkgs=["
+  for p in "${packages[@]}"; do
+    if [[ "${module[$p]}" == "$1" ]]; then
+      echo -n "{name=\"$p\";"
+      print_sane "$p"
+      echo -n "}"
+      echo -n " $p" >&2
+    fi
+  done
+  echo -n "];}"
+  echo >&2
+}
+
+print_mono_module(){
+  echo -n "{module=\"$1\";"
+  print_sane "$1"
+  echo -n "$1 ... " >&2
+  echo -n "split=false;"
+  cml="$1-$release/CMakeLists.txt"
+  tar -xf "${dir}/$1-${release}.tar.bz2" "$cml"
+  if grep '^[^#]*add_subdirectory' $cml >/dev/null; then
+    if grep '^[^#]*add_subdirectory' $cml | grep -v macro_optional_add_subdirectory >/dev/null; then
+      echo " is monolithic (has unconditionally added subdirs)" >&2
+    else
+      subdirs=( `grep '^[^#]*add_subdirectory' $cml |
+        sed -e 's/[^#]*add_subdirectory *( *\(.*\) *)/\1/' |
+        grep -v '\(doc\|cmake\)'` )
+      echo " seems splittable, subdirs: ${subdirs[*]}" >&2
+      echo -n "pkgs=["
+      for s in "${subdirs[@]}"; do
+        echo -n "{name=\"${s//\//-}\";"
+        print_sane "$s"
+        if [[ $s != "${s//\//-}" ]]; then
+          echo -n "subdir=\"$s\";"
+        fi
+        echo -n "}"
+      done
+    echo -n "];"
+    fi
+  else
+    echo " is monolithic (has no subdirs)" >&2
+  fi
+  rm $cml
+  rmdir $1-$release
+  echo -n "}"
+}
+
+print_modules(){
+  echo -n "modules=["
+  echo "Printing modules splitted by upstream" >&2
+  for m in "${!modules[@]}"; do print_split_module "$m"; done
+  echo >&2
+  echo "Printing modules not splitted by upstream (${top_level[*]})" >&2
+  for m in "${top_level[@]}"; do print_mono_module "$m"; done
+  echo -n "];"
+}
+
+echo "Writing ${release}.nix" >&2
+exec > "${release}.nix"
+echo -n "{stable=${stable};"
+print_hashes
+print_modules
+echo -n "}"
diff --git a/pkgs/desktops/kde-4.7/kde-package/kde-submodules.xslt b/pkgs/desktops/kde-4.7/kde-package/kde-submodules.xslt
new file mode 100644
index 0000000000000..952a05a9d2744
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kde-package/kde-submodules.xslt
@@ -0,0 +1,22 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- xslt file for http://projects.kde.org/kde_projects.xml -->
+
+<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
+
+	<xsl:output method="text" />
+	<xsl:template match="/">
+		<xsl:for-each select="kdeprojects/component[@identifier='kde']">
+			<xsl:text>declare -A module
</xsl:text>
+			<xsl:for-each select="module">
+				<xsl:variable name="module" select='@identifier' />
+				<xsl:for-each select=".//project[repo]">
+					<xsl:text>module["</xsl:text>
+					<xsl:value-of select='@identifier' />
+					<xsl:text>"]="</xsl:text>
+					<xsl:value-of select="$module" />
+					<xsl:text>"
</xsl:text>
+				</xsl:for-each>
+			</xsl:for-each>
+		</xsl:for-each>
+	</xsl:template>
+</xsl:stylesheet>
diff --git a/pkgs/desktops/kde-4.7/kde-wallpapers.nix b/pkgs/desktops/kde-4.7/kde-wallpapers.nix
new file mode 100644
index 0000000000000..60298e567fbc1
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kde-wallpapers.nix
@@ -0,0 +1,14 @@
+{ kde, kdelibs }:
+
+kde {
+
+  buildInputs = [ kdelibs ];
+
+  outputHashAlgo = "sha256";
+  outputHashMode = "recursive";
+  outputHash = "29f4e8b24435ee8c64affdc6250f59ed9f78445118fe0a4e216d89969dd2006b";
+
+  meta = {
+    description = "Wallpapers for KDE";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeaccessibility/jovie.nix b/pkgs/desktops/kde-4.7/kdeaccessibility/jovie.nix
new file mode 100644
index 0000000000000..d38c80c4c36ad
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeaccessibility/jovie.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, speechd }:
+
+kde {
+  buildInputs = [ kdelibs speechd ];
+
+  meta = {
+    description = "Text-to-speech synthesis daemon";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeaccessibility/kaccessible.nix b/pkgs/desktops/kde-4.7/kdeaccessibility/kaccessible.nix
new file mode 100644
index 0000000000000..98fae7c983f8c
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeaccessibility/kaccessible.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, speechd }:
+
+kde {
+  buildInputs = [ kdelibs speechd ];
+
+  meta = {
+    description = "Bridge that provides accessibility services to applications";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeaccessibility/kmag.nix b/pkgs/desktops/kde-4.7/kdeaccessibility/kmag.nix
new file mode 100644
index 0000000000000..f3b27dacf672e
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeaccessibility/kmag.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Screen magnifier for KDE";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeaccessibility/kmousetool.nix b/pkgs/desktops/kde-4.7/kdeaccessibility/kmousetool.nix
new file mode 100644
index 0000000000000..42306049c5d51
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeaccessibility/kmousetool.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, libXtst }:
+
+kde {
+  buildInputs = [ kdelibs libXtst ];
+
+  meta = {
+    description = "A program that clicks the mouse for you";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeaccessibility/kmouth.nix b/pkgs/desktops/kde-4.7/kdeaccessibility/kmouth.nix
new file mode 100644
index 0000000000000..4159501967cda
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeaccessibility/kmouth.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "A type-and-say front end for speech synthesizers";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeadmin/kcron.nix b/pkgs/desktops/kde-4.7/kdeadmin/kcron.nix
new file mode 100644
index 0000000000000..bada0c1cb108e
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeadmin/kcron.nix
@@ -0,0 +1,5 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+}
diff --git a/pkgs/desktops/kde-4.7/kdeadmin/ksystemlog.nix b/pkgs/desktops/kde-4.7/kdeadmin/ksystemlog.nix
new file mode 100644
index 0000000000000..bada0c1cb108e
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeadmin/ksystemlog.nix
@@ -0,0 +1,5 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+}
diff --git a/pkgs/desktops/kde-4.7/kdeadmin/kuser.nix b/pkgs/desktops/kde-4.7/kdeadmin/kuser.nix
new file mode 100644
index 0000000000000..571674a461ad4
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeadmin/kuser.nix
@@ -0,0 +1,5 @@
+{ kde, kdelibs, kdepimlibs }:
+
+kde {
+  buildInputs = [ kdelibs kdepimlibs ];
+}
diff --git a/pkgs/desktops/kde-4.7/kdeadmin/system-config-printer-kde.nix b/pkgs/desktops/kde-4.7/kdeadmin/system-config-printer-kde.nix
new file mode 100644
index 0000000000000..2c462f67c1593
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeadmin/system-config-printer-kde.nix
@@ -0,0 +1,33 @@
+{ kde, pkgconfig, pythonPackages, sip, pycups, pygobject, system_config_printer,
+  kdelibs, kdepimlibs, pykde4, cups, nettools }:
+
+let s_c_p = system_config_printer.override { withGUI = false; }; in
+kde {
+  buildInputs = [ kdelibs kdepimlibs pythonPackages.python pycups pykde4 sip
+    pygobject s_c_p ];
+
+  passthru = { system_config_printer = s_c_p; };
+
+  preConfigure =
+    ''
+      for i in system-config-printer-kde/cmake-modules/FindSystemConfigPrinter.py system-config-printer-kde/system-config-printer-kde.py; do
+        substituteInPlace $i \
+          --replace /usr/share/system-config-printer ${s_c_p}/share/system-config-printer \
+          --replace /usr/bin/cupstestppd ${cups}/bin/cupstestppd \
+          --replace /bin/hostname ${nettools}/bin/hostname
+      done
+    '';
+
+  postInstall =
+    ''
+      # Bake the required Python path into the printer configuration program.
+      res=
+      for i in $(IFS=:; echo $PYTHONPATH); do res="$res''${res:+,} '$i'"; done
+
+      sed -i $out/share/apps/system-config-printer-kde/system-config-printer-kde.py \
+          -e "1 a import sys\nsys.path = [$res] + sys.path"
+
+      mkdir -p $out/nix-support
+      echo ${pykde4} > $out/nix-support/propagated-user-env-packages
+    '';
+}
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/ColorSchemes.nix b/pkgs/desktops/kde-4.7/kdeartwork/ColorSchemes.nix
new file mode 100644
index 0000000000000..acccf66976fcf
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/ColorSchemes.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs }:
+
+kde {
+  name = "kde-color-schemes";
+
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Additional KDE color schemes";
+  };
+}
diff --git a/pkgs/desktops/kde-4.6/artwork/FindXscreensaver.cmake b/pkgs/desktops/kde-4.7/kdeartwork/FindXscreensaver.cmake
index 499ed75268e9e..499ed75268e9e 100644
--- a/pkgs/desktops/kde-4.6/artwork/FindXscreensaver.cmake
+++ b/pkgs/desktops/kde-4.7/kdeartwork/FindXscreensaver.cmake
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/HighResolutionWallpapers.nix b/pkgs/desktops/kde-4.7/kdeartwork/HighResolutionWallpapers.nix
new file mode 100644
index 0000000000000..edffca1562e10
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/HighResolutionWallpapers.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs }:
+
+kde rec {
+  name = "kde-wallpapers-high-resolution";
+
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "KDE wallpapers in high resolution";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/IconThemes.nix b/pkgs/desktops/kde-4.7/kdeartwork/IconThemes.nix
new file mode 100644
index 0000000000000..43071e8bd1426
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/IconThemes.nix
@@ -0,0 +1,13 @@
+{ kde, kdelibs }:
+
+kde {
+  name = "kdeartwork-icon-themes";
+
+  # Sources contain primary and kdeclassic as well but they're not installed
+
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "KDE nuvola and mono icon themes";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/WeatherWallpapers.nix b/pkgs/desktops/kde-4.7/kdeartwork/WeatherWallpapers.nix
new file mode 100644
index 0000000000000..947e5e17ab0c1
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/WeatherWallpapers.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs }:
+
+kde rec {
+  name = "kde-weather-wallpapers";
+
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Additional KDE wallpapers (weather)";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/aurorae.nix b/pkgs/desktops/kde-4.7/kdeartwork/aurorae.nix
new file mode 100644
index 0000000000000..4bce95217cc67
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/aurorae.nix
@@ -0,0 +1,7 @@
+{ kde, kdelibs }:
+
+kde {
+  name = "aurorae-themes";
+
+  buildInputs = [ kdelibs ];
+}
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/desktopthemes.nix b/pkgs/desktops/kde-4.7/kdeartwork/desktopthemes.nix
new file mode 100644
index 0000000000000..93dd361af738b
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/desktopthemes.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs }:
+
+kde {
+  name = "kde-desktop-themes";
+
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Additional KDE desktop themes";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/emoticons.nix b/pkgs/desktops/kde-4.7/kdeartwork/emoticons.nix
new file mode 100644
index 0000000000000..5ef9f78a71951
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/emoticons.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs }:
+
+kde {
+  name = "kde-emotion-icons";
+
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Additional KDE emotion icons (smiles)";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/kscreensaver.nix b/pkgs/desktops/kde-4.7/kdeartwork/kscreensaver.nix
new file mode 100644
index 0000000000000..cc195c8de9032
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/kscreensaver.nix
@@ -0,0 +1,13 @@
+{ kde, kdelibs, xscreensaver, kde_workspace, eigen, libkexiv2 }:
+
+kde {
+  buildInputs = [ kdelibs xscreensaver kde_workspace eigen libkexiv2 ];
+
+  preConfigure = "cp -v ${./FindXscreensaver.cmake} cmake/modules/FindXscreensaver.cmake";
+
+  cmakeFlags = [ "-DBUILD_asciiquarium:BOOL=ON" ];
+
+  meta = {
+    description = "KDE screensavers";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/kwin-styles.nix b/pkgs/desktops/kde-4.7/kdeartwork/kwin-styles.nix
new file mode 100644
index 0000000000000..b5d769b216dbb
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/kwin-styles.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, kde_workspace }:
+
+kde {
+  buildInputs = [ kdelibs kde_workspace ];
+
+  meta = {
+    description = "Styles for KWin";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/sounds.nix b/pkgs/desktops/kde-4.7/kdeartwork/sounds.nix
new file mode 100644
index 0000000000000..e98705da889e0
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/sounds.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs }:
+
+kde rec {
+  name = "kde-sounds";
+
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "New login/logout sounds";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/styles.nix b/pkgs/desktops/kde-4.7/kdeartwork/styles.nix
new file mode 100644
index 0000000000000..6a1306c37100d
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/styles.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs }:
+
+kde rec {
+  name = "kde-style-phase";
+
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Phase, a widget style for KDE";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeartwork/wallpapers.nix b/pkgs/desktops/kde-4.7/kdeartwork/wallpapers.nix
new file mode 100644
index 0000000000000..611c6a70f6bc2
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeartwork/wallpapers.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs }:
+
+kde rec {
+  name = "kde-wallpapers";
+
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Additional KDE wallpapers";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdebase/kate.nix b/pkgs/desktops/kde-4.7/kdebase/kate.nix
new file mode 100644
index 0000000000000..1ffbcf9ebf989
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdebase/kate.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Kate, the KDE Advanced Text Editor, as well as KWrite";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdebase/kde-baseapps.nix b/pkgs/desktops/kde-4.7/kdebase/kde-baseapps.nix
new file mode 100644
index 0000000000000..45192e0c46001
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdebase/kde-baseapps.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, shared_desktop_ontologies, glib, htmlTidy }:
+
+kde {
+  buildInputs = [ kdelibs shared_desktop_ontologies glib htmlTidy ];
+
+  meta = {
+    description = "Base KDE applications, including the Dolphin file manager and Konqueror web browser";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdebase/kde-runtime.nix b/pkgs/desktops/kde-4.7/kdebase/kde-runtime.nix
new file mode 100644
index 0000000000000..b8a4a21cc7309
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdebase/kde-runtime.nix
@@ -0,0 +1,22 @@
+{ kde, kdelibs, shared_desktop_ontologies, bzip2, xz, libssh, exiv2, attica,
+  libcanberra, virtuoso, makeWrapper, samba
+}:
+
+# TODO: Re-enable ntrack once it is fixed upstream
+
+kde {
+  buildInputs =
+    [ kdelibs shared_desktop_ontologies bzip2 xz libssh exiv2 attica virtuoso
+      makeWrapper samba (libcanberra.override { gtk = null; })
+    ];
+
+# Copied from kde45, Nepomuk needs it.
+  postInstall = ''
+    wrapProgram "$out/bin/nepomukservicestub" --prefix LD_LIBRARY_PATH : "${virtuoso}/lib" \
+        --prefix PATH : "${virtuoso}/bin"
+  '';
+
+  meta = {
+    license = "LGPL";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdebase/kde-workspace.nix b/pkgs/desktops/kde-4.7/kdebase/kde-workspace.nix
new file mode 100644
index 0000000000000..55c243f60dd96
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdebase/kde-workspace.nix
@@ -0,0 +1,32 @@
+{ kde, kdelibs, qimageblitz, libdbusmenu_qt, xorg, shared_desktop_ontologies,
+  lm_sensors, pciutils, libraw1394, libusb, libxklavier, python, libqalculate,
+  consolekit, xkeyboard_config, kdepimlibs, pam, boost, gpsd, prison, akonadi,
+  pykde4
+}:
+
+kde {
+
+  buildInputs =
+    [ kdelibs qimageblitz libdbusmenu_qt pykde4
+      xorg.libxkbfile xorg.libXcomposite xorg.libXScrnSaver xorg.libXtst
+      xorg.libXcomposite xorg.libXdamage xorg.libXau xorg.libXdmcp
+      xorg.libpthreadstubs
+      boost gpsd shared_desktop_ontologies lm_sensors pciutils libraw1394
+      libusb python libqalculate consolekit kdepimlibs pam prison akonadi
+    ];
+
+  preConfigure =
+   ''
+     # Fix incorrect path to kde4-config.
+     substituteInPlace startkde.cmake --replace '$bindir/kde4-config' ${kdelibs}/bin/kde4-config
+
+     # Fix the path to the keyboard configuration files.
+     substituteInPlace kcontrol/keyboard/xkb_rules.cpp \
+       --replace /usr/share/X11 ${xkeyboard_config}/etc/X11
+   '';
+
+  meta = {
+    description = "KDE workspace components such as Plasma, Kwin and System Settings";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdebase/konsole.nix b/pkgs/desktops/kde-4.7/kdebase/konsole.nix
new file mode 100644
index 0000000000000..87ac24972bdbd
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdebase/konsole.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs }:
+
+kde {
+
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Konsole, the KDE terminal emulator";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdebindings/perlqt.nix b/pkgs/desktops/kde-4.7/kdebindings/perlqt.nix
new file mode 100644
index 0000000000000..13c145f32753b
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdebindings/perlqt.nix
@@ -0,0 +1,10 @@
+{ kde, cmake, smokeqt, perl }:
+
+kde {
+  buildInputs = [ smokeqt perl ];
+  buildNativeInputs = [ cmake ];
+
+  meta = {
+    description = "Perl bindings for Qt library";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdebindings/pykde-purity.patch b/pkgs/desktops/kde-4.7/kdebindings/pykde-purity.patch
new file mode 100644
index 0000000000000..dfc2c886bba3f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdebindings/pykde-purity.patch
@@ -0,0 +1,49 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index c853e38..5df3253 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -73,7 +73,7 @@ INCLUDE_DIRECTORIES(
+     ${QT_QTWEBKIT_INCLUDE_DIR}
+     ${KDE4_INCLUDE_DIR}
+     ${KDE4_INCLUDE_DIR}/solid
+-    ${KDE4_INCLUDE_DIR}/phonon
++	${PHONON_INCLUDE_DIR}/phonon
+     ${KDE4_INCLUDE_DIR}/kio
+     ${KDE4_INCLUDE_DIR}/kdeprint
+     ${KDE4_INCLUDE_DIR}/kdeprint/lpr
+@@ -232,7 +232,7 @@ _pkg_config = {
+     'pykde_kde_sip_flags':  '${_SIP_TAGS} ${_SIP_X} ${SIP_EXTRA_OPTIONS}',
+     'pykde_mod_dir':        '${PYTHON_SITE_PACKAGES_INSTALL_DIR}/PyKDE4',
+     'pykde_modules':        '${PYKDE_MODULES}',
+-    'pykde_sip_dir':        '${SIP_DEFAULT_SIP_DIR}/PyKDE4',
++    'pykde_sip_dir':        '${CMAKE_INSTALL_PREFIX}/share/sip/PyKDE4',
+     'pykde_version':        kde_version_hex,
+     'pykde_version_str':    '${KDE_VERSION}'
+ }
+@@ -244,7 +244,7 @@ PYTHON_INSTALL(${CMAKE_CURRENT_BINARY_DIR}/pykdeconfig.py ${PYTHON_SITE_PACKAGES
+ 
+ # Install the .sip files for anyone that wants to build bindings on top of PyKDE4.
+ # (Don't forget the / at the end of sip/.)
+-INSTALL(DIRECTORY sip/ DESTINATION ${SIP_DEFAULT_SIP_DIR}/PyKDE4
++INSTALL(DIRECTORY sip/ DESTINATION ${CMAKE_INSTALL_PREFIX}/share/sip/PyKDE4
+     PATTERN "*~" EXCLUDE    # This sucks, why can't I just whitelist what I _do_ want?
+     PATTERN ".svn" EXCLUDE
+     PATTERN "*.in" EXCLUDE)
+diff --git a/kpythonpluginfactory/CMakeLists.txt b/kpythonpluginfactory/CMakeLists.txt
+index 41fa0fe..642d867 100644
+--- a/kpythonpluginfactory/CMakeLists.txt
++++ b/kpythonpluginfactory/CMakeLists.txt
+@@ -3,7 +3,12 @@
+ set(kpythonpluginfactory_SRCS
+     kpythonpluginfactory.cpp)
+ 
+-GET_FILENAME_COMPONENT(LIB_PYTHON ${PYTHON_LIBRARY} NAME)
++option(HARDCODE_LIB_PYTHON_PATH "Whether the path to libpython.so should be hardcoded" OFF)
++if(HARDCODE_LIB_PYTHON_PATH)
++	get_filename_component(LIB_PYTHON ${PYTHON_LIBRARY} REALPATH)
++else(HARDCODE_LIB_PYTHON_PATH)
++    get_filename_component(LIB_PYTHON ${PYTHON_LIBRARY} NAME)
++endif(HARDCODE_LIB_PYTHON_PATH)
+ ADD_DEFINITIONS(-DLIB_PYTHON=\\"${LIB_PYTHON}\\")
+ ADD_DEFINITIONS(-DKDE_DEFAULT_DEBUG_AREA=15000)
+ 
diff --git a/pkgs/desktops/kde-4.7/kdebindings/pykde4.nix b/pkgs/desktops/kde-4.7/kdebindings/pykde4.nix
new file mode 100644
index 0000000000000..1ca6efe3b9202
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdebindings/pykde4.nix
@@ -0,0 +1,30 @@
+{ kde, kdelibs, python, sip, pyqt4, kdepimlibs, shared_desktop_ontologies,
+  boost, lndir }:
+
+let pydir = "lib/python${python.majorVersion}"; in
+
+kde {
+  buildInputs = [ python kdepimlibs shared_desktop_ontologies boost ];
+
+  propagatedBuildInputs = [ pyqt4 sip ];
+
+#NIX_CFLAGS_COMPILE = "-I${phonon}/include/phonon";
+
+  patches = [ ./pykde-purity.patch ];
+
+  cmakeFlags = "-DHARDCODE_LIB_PYTHON_PATH=ON";
+
+  preConfigure =
+    ''
+      # Symlink PyQt into PyKDE.  This is necessary because PyQt looks
+      # in its PyQt4/uic/widget-plugins directory for plugins, and KDE
+      # needs to install a plugin.
+      mkdir -pv $out/${pydir}
+      ${lndir}/bin/lndir ${pyqt4}/${pydir} $out/${pydir}
+    '';
+
+  meta = {
+    description = "Python bindings for KDE";
+    kde.name = "pykde4";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdebindings/smokegen.nix b/pkgs/desktops/kde-4.7/kdebindings/smokegen.nix
new file mode 100644
index 0000000000000..df26eb2717ebc
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdebindings/smokegen.nix
@@ -0,0 +1,13 @@
+{ kde, qt4, cmake }:
+
+kde {
+  buildInputs = [ qt4 ];
+  buildNativeInputs = [ cmake ];
+
+  patchPhase = "sed -e /RPATH/d -i CMakeLists.txt";
+
+  meta = {
+    description = "C++ parser used to generate language bindings for Qt/KDE";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdebindings/smokekde.nix b/pkgs/desktops/kde-4.7/kdebindings/smokekde.nix
new file mode 100644
index 0000000000000..c49a77a48ed62
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdebindings/smokekde.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, smokeqt }:
+
+kde {
+  propagatedBuildInputs = [ kdelibs smokeqt ];
+
+  meta = {
+    description = "C++ parser used to generate language bindings for Qt/KDE";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdebindings/smokeqt.nix b/pkgs/desktops/kde-4.7/kdebindings/smokeqt.nix
new file mode 100644
index 0000000000000..0d0aa816a9417
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdebindings/smokeqt.nix
@@ -0,0 +1,12 @@
+{ kde, qt4, cmake, phonon, qimageblitz, smokegen }:
+
+kde {
+  propagatedBuildInputs = [ qt4 phonon qimageblitz ];
+  buildNativeInputs = [ cmake ];
+  propagatedBuildNativeInputs = [ smokegen ];
+
+  meta = {
+    description = "C++ parser used to generate language bindings for Qt/KDE";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/FindLibfacile.cmake b/pkgs/desktops/kde-4.7/kdeedu/FindLibfacile.cmake
new file mode 100644
index 0000000000000..617eb4b246769
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/FindLibfacile.cmake
@@ -0,0 +1,32 @@
+# - Try to find Libfacile
+# Once done this will define
+#
+#  LIBFACILE_FOUND - system has Libfacile
+#  LIBFACILE_INCLUDE_DIR - the Libfacile include directory
+#  LIBFACILE_LIBRARIES - Link these to use Libfacile
+#
+# Copyright (c) 2006, Carsten Niehaus, <cniehaus@gmx.de>
+# Copyright (c) 2006, Montel Laurent, <montel@kde.org>
+# Redistribution and use is allowed according to the terms of the BSD license.
+# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
+
+
+find_package(OCaml)
+
+if( OCAML_FOUND )
+   find_library(LIBFACILE_LIBRARIES NAMES facile.a
+       HINTS ${OCAMLC_DIR}
+       PATH_SUFFIXES facile ocaml/facile
+   )
+   find_path(LIBFACILE_INCLUDE_DIR NAMES facile.cmi
+       HINTS ${OCAMLC_DIR}
+       PATH_SUFFIXES facile lib/ocaml/facile
+   )
+endif(OCAML_FOUND)
+
+include(FindPackageHandleStandardArgs)
+find_package_handle_standard_args(Libfacile DEFAULT_MSG LIBFACILE_INCLUDE_DIR
+	LIBFACILE_LIBRARIES OCAML_FOUND)
+
+# show the LIBFACILE_INCLUDE_DIR and LIBFACILE_LIBRARIES variables only in the advanced view
+mark_as_advanced(LIBFACILE_INCLUDE_DIR LIBFACILE_LIBRARIES )
diff --git a/pkgs/desktops/kde-4.7/kdeedu/blinken.nix b/pkgs/desktops/kde-4.7/kdeedu/blinken.nix
new file mode 100644
index 0000000000000..cdf9728833c2d
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/blinken.nix
@@ -0,0 +1,8 @@
+{ kde, kdelibs }:
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Memory Enhancement Game";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/cantor.nix b/pkgs/desktops/kde-4.7/kdeedu/cantor.nix
new file mode 100644
index 0000000000000..8b8bbc210c757
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/cantor.nix
@@ -0,0 +1,8 @@
+{ kde, kdelibs, libspectre }:
+kde {
+  buildInputs = [ kdelibs libspectre ];
+
+  meta = {
+    description = "KDE Frontend to Mathematical Software";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kalgebra.nix b/pkgs/desktops/kde-4.7/kdeedu/kalgebra.nix
new file mode 100644
index 0000000000000..f1a190332cdc5
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kalgebra.nix
@@ -0,0 +1,8 @@
+{ kde, kdelibs, libkdeedu, readline }:
+kde {
+  buildInputs = [ kdelibs libkdeedu readline ];
+
+  meta = {
+    description = "2D and 3D Graph Calculator";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kalzium-feature-log.patch b/pkgs/desktops/kde-4.7/kdeedu/kalzium-feature-log.patch
new file mode 100644
index 0000000000000..3c054e8d60ab0
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kalzium-feature-log.patch
@@ -0,0 +1,15 @@
+commit d96c6e70400dcd4e3514065e607388b80f96d6a1
+Author: Yury G. Kudryashov <urkud.urkud@gmail.com>
+Date:   Mon Aug 15 00:53:16 2011 +0400
+
+    Display feature log
+
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index 132934c..eec6942 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -47,3 +47,4 @@ add_subdirectory(src)
+ add_subdirectory(data)
+ add_subdirectory(plasmoid)
+ add_subdirectory(libscience)
++macro_display_feature_log()
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kalzium.nix b/pkgs/desktops/kde-4.7/kdeedu/kalzium.nix
new file mode 100644
index 0000000000000..d7d9b403b1a4b
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kalzium.nix
@@ -0,0 +1,15 @@
+{ kde, kdelibs, facile, ocaml, eigen, openbabel, avogadro }:
+kde {
+  buildInputs = [ kdelibs facile ocaml eigen openbabel avogadro ];
+
+  prePatch = ''
+    cp -v ${./FindLibfacile.cmake} cmake/modules/FindLibfacile.cmake
+    sed -e 's/\+facile/''${LIBFACILE_INCLUDE_DIR}/' -i src/CMakeOCamlInstructions.cmake
+    '';
+
+  patches = [ ./kalzium-feature-log.patch ];
+
+  meta = {
+    description = "Periodic Table of Elements";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kanagram.nix b/pkgs/desktops/kde-4.7/kdeedu/kanagram.nix
new file mode 100644
index 0000000000000..8759c96d78c46
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kanagram.nix
@@ -0,0 +1,8 @@
+{ kde, kdelibs, libkdeedu }:
+kde {
+  buildInputs = [ kdelibs libkdeedu ];
+
+  meta = {
+    description = "Letter Order Game";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kbruch.nix b/pkgs/desktops/kde-4.7/kdeedu/kbruch.nix
new file mode 100644
index 0000000000000..dc50f1e85a37e
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kbruch.nix
@@ -0,0 +1,8 @@
+{ kde, kdelibs }:
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Practice Fractions";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kgeography.nix b/pkgs/desktops/kde-4.7/kdeedu/kgeography.nix
new file mode 100644
index 0000000000000..bd8d27c8d6e20
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kgeography.nix
@@ -0,0 +1,8 @@
+{ kde, kdelibs }:
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Geography Trainer";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/khangman.nix b/pkgs/desktops/kde-4.7/kdeedu/khangman.nix
new file mode 100644
index 0000000000000..997b50e906a2f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/khangman.nix
@@ -0,0 +1,8 @@
+{ kde, kdelibs, libkdeedu }:
+kde {
+  buildInputs = [ kdelibs libkdeedu ];
+
+  meta = {
+    description = "KDE hangman game";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kig.nix b/pkgs/desktops/kde-4.7/kdeedu/kig.nix
new file mode 100644
index 0000000000000..bd5ef67529cc8
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kig.nix
@@ -0,0 +1,12 @@
+{ kde, kdelibs, boost, python}:
+kde {
+  buildInputs = [ kdelibs boost python ];
+
+  cmakeFlags = ''
+    -DBOOST_PYTHON_INCLUDES:PATH=${boost}/include;${python}/include/${python.libPrefix}
+    -DBOOST_PYTHON_LIBS=boost_python;${python.libPrefix} -DKIG_ENABLE_PYTHON_SCRIPTING=1
+    '';
+  meta = {
+    description = "KDE Interactive Geometry";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kiten.nix b/pkgs/desktops/kde-4.7/kdeedu/kiten.nix
new file mode 100644
index 0000000000000..939b7a9f77a25
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kiten.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Japanese Reference/Study Tool";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/klettres.nix b/pkgs/desktops/kde-4.7/kdeedu/klettres.nix
new file mode 100644
index 0000000000000..7a0fa83078e34
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/klettres.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "A KDE alphabet tutorial";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kmplot.nix b/pkgs/desktops/kde-4.7/kdeedu/kmplot.nix
new file mode 100644
index 0000000000000..18458cf6f0bff
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kmplot.nix
@@ -0,0 +1,12 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "A KDE mathematical function plotter";
+    kde = {
+      name = "kmplot";
+    };
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kstars.nix b/pkgs/desktops/kde-4.7/kdeedu/kstars.nix
new file mode 100644
index 0000000000000..5b5a2d621de73
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kstars.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, eigen, xplanet, indilib }:
+
+kde {
+  buildInputs = [ kdelibs eigen xplanet indilib ];
+
+  meta = {
+    description = "A KDE graphical desktop planetarium";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/ktouch.nix b/pkgs/desktops/kde-4.7/kdeedu/ktouch.nix
new file mode 100644
index 0000000000000..768be6f4367c7
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/ktouch.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Touch Typing Tutor";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kturtle.nix b/pkgs/desktops/kde-4.7/kdeedu/kturtle.nix
new file mode 100644
index 0000000000000..1e1922b1410d9
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kturtle.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Educational Programming Environment";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/kwordquiz.nix b/pkgs/desktops/kde-4.7/kdeedu/kwordquiz.nix
new file mode 100644
index 0000000000000..1b33ba2e469f1
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/kwordquiz.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, libkdeedu }:
+
+kde {
+  buildInputs = [ kdelibs libkdeedu ];
+
+  meta = {
+    description = "Flash Card Trainer";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/libkdeedu.nix b/pkgs/desktops/kde-4.7/kdeedu/libkdeedu.nix
new file mode 100644
index 0000000000000..def6c85fefe2f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/libkdeedu.nix
@@ -0,0 +1,8 @@
+{ kde, kdelibs }:
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Libraries used by KDE Education applications";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/marble.nix b/pkgs/desktops/kde-4.7/kdeedu/marble.nix
new file mode 100644
index 0000000000000..8bd86c91094e2
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/marble.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, gpsd }:
+
+kde {
+  buildInputs = [ kdelibs gpsd ];
+
+  meta = {
+    description = "Marble Virtual Globe";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/parley.nix b/pkgs/desktops/kde-4.7/kdeedu/parley.nix
new file mode 100644
index 0000000000000..eccd40a598f0d
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/parley.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, libkdeedu, libxml2, attica }:
+
+kde {
+  buildInputs = [ kdelibs libkdeedu libxml2 attica ];
+
+  meta = {
+    description = "Vocabulary Trainer";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/rocs.nix b/pkgs/desktops/kde-4.7/kdeedu/rocs.nix
new file mode 100644
index 0000000000000..91976b840011e
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/rocs.nix
@@ -0,0 +1,14 @@
+{ kde, kdelibs, boost }:
+
+kde {
+  buildInputs = [ kdelibs (boost.override { enableExceptions = true; }) ];
+
+  NIX_CFLAGS_COMPILE = "-fexceptions";
+
+  meta = {
+    description = "A KDE graph theory viewer";
+    kde = {
+      name = "rocs";
+    };
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeedu/step.nix b/pkgs/desktops/kde-4.7/kdeedu/step.nix
new file mode 100644
index 0000000000000..fac9974baf18a
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeedu/step.nix
@@ -0,0 +1,12 @@
+{ kde, kdelibs, gsl, libqalculate, eigen }:
+
+kde {
+  buildInputs = [ kdelibs gsl libqalculate eigen ];
+
+  meta = {
+    description = "A KDE interactive physical simulator";
+    kde = {
+      name = "step";
+    };
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegames.nix b/pkgs/desktops/kde-4.7/kdegames.nix
new file mode 100644
index 0000000000000..3378a99d9e79f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegames.nix
@@ -0,0 +1,18 @@
+{ kde, kdelibs, qca2, twisted, pythonPackages, sip, makeWrapper, pykde4,
+  openal, libsndfile, qhull }:
+
+kde rec {
+  buildInputs = [ kdelibs qca2 pythonPackages.python pythonPackages.wrapPython
+    openal libsndfile qhull ] ++ pythonPath;
+
+  pythonPath = [ pythonPackages.twisted pykde4 ];
+
+  # TODO: ggz
+
+  postInstall = "wrapPythonPrograms";
+
+  meta = {
+    description = "KDE Games";
+    license = "GPL";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/gwenview.nix b/pkgs/desktops/kde-4.7/kdegraphics/gwenview.nix
new file mode 100644
index 0000000000000..efc2707e7d693
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/gwenview.nix
@@ -0,0 +1,12 @@
+{ kde, kdelibs, exiv2, shared_desktop_ontologies, kde_baseapps, libkipi }:
+
+kde {
+
+  buildInputs =
+    [ kdelibs exiv2 shared_desktop_ontologies kde_baseapps libkipi ];
+
+  meta = {
+    description = "Gwenview, the KDE image viewer";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/kamera.nix b/pkgs/desktops/kde-4.7/kdegraphics/kamera.nix
new file mode 100644
index 0000000000000..70904b17c232b
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/kamera.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, libgphoto2 }:
+
+kde {
+  buildInputs = [ kdelibs libgphoto2 ];
+
+  meta = {
+    description = "KDE camera interface library";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/kcolorchooser.nix b/pkgs/desktops/kde-4.7/kdegraphics/kcolorchooser.nix
new file mode 100644
index 0000000000000..58528cb186bb2
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/kcolorchooser.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "A small utility to select a color";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/kdegraphics-strigi-analyzer.nix b/pkgs/desktops/kde-4.7/kdegraphics/kdegraphics-strigi-analyzer.nix
new file mode 100644
index 0000000000000..6001a5f363db1
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/kdegraphics-strigi-analyzer.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Strigi analyzers for various graphics file formats";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/kdegraphics-thumbnailers.nix b/pkgs/desktops/kde-4.7/kdegraphics/kdegraphics-thumbnailers.nix
new file mode 100644
index 0000000000000..55bf8309b2a9f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/kdegraphics-thumbnailers.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, libkexiv2, libkdcraw }:
+
+kde {
+  buildInputs = [ kdelibs libkexiv2 libkdcraw ];
+
+  meta = {
+    description = "Thumbnailers for various graphics file formats";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/kgamma.nix b/pkgs/desktops/kde-4.7/kdegraphics/kgamma.nix
new file mode 100644
index 0000000000000..28d9252187e0e
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/kgamma.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, libXxf86vm }:
+
+kde {
+  buildInputs = [ kdelibs libXxf86vm ];
+
+  meta = {
+    description = "KDE monitor calibration tool";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/kolourpaint.nix b/pkgs/desktops/kde-4.7/kdegraphics/kolourpaint.nix
new file mode 100644
index 0000000000000..5276ec09f462f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/kolourpaint.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, qimageblitz }:
+
+kde {
+  buildInputs = [ kdelibs qimageblitz ];
+
+  meta = {
+    description = "KDE paint program";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/kruler.nix b/pkgs/desktops/kde-4.7/kdegraphics/kruler.nix
new file mode 100644
index 0000000000000..c5c2c6e05d7c5
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/kruler.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "KDE screen ruler";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/ksaneplugin.nix b/pkgs/desktops/kde-4.7/kdegraphics/ksaneplugin.nix
new file mode 100644
index 0000000000000..1381ed7dd2665
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/ksaneplugin.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, libksane }:
+
+kde {
+  buildInputs = [ kdelibs libksane ];
+
+  meta = {
+    description = "A KScan plugin that implements the scanning through libksane";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/ksnapshot.nix b/pkgs/desktops/kde-4.7/kdegraphics/ksnapshot.nix
new file mode 100644
index 0000000000000..f01a609e20de9
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/ksnapshot.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, libkipi }:
+
+kde {
+  buildInputs = [ kdelibs libkipi ];
+
+  meta = {
+    description = "KDE screenshot utility";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/libkdcraw.nix b/pkgs/desktops/kde-4.7/kdegraphics/libkdcraw.nix
new file mode 100644
index 0000000000000..9d31cc763f211
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/libkdcraw.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Library for decoding RAW images";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/libkexiv2.nix b/pkgs/desktops/kde-4.7/kdegraphics/libkexiv2.nix
new file mode 100644
index 0000000000000..096b0a6e957bf
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/libkexiv2.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, exiv2 }:
+
+kde {
+  buildInputs = [ kdelibs exiv2 ];
+
+  meta = {
+    description = "Exiv2 support library";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/libkipi.nix b/pkgs/desktops/kde-4.7/kdegraphics/libkipi.nix
new file mode 100644
index 0000000000000..6b16265e7a3e8
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/libkipi.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Interface library to kipi-plugins";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/libksane.nix b/pkgs/desktops/kde-4.7/kdegraphics/libksane.nix
new file mode 100644
index 0000000000000..b539eab38992f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/libksane.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, saneBackends }:
+
+kde {
+  buildInputs = [ kdelibs saneBackends ];
+
+  meta = {
+    description = "An image scanning library that provides a QWidget that contains all the logic needed to interface a sacanner";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/mobipocket.nix b/pkgs/desktops/kde-4.7/kdegraphics/mobipocket.nix
new file mode 100644
index 0000000000000..2c2ba3796a2c3
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/mobipocket.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, okular }:
+
+kde {
+  buildInputs = [ kdelibs okular ];
+
+  meta = {
+    description = "A collection of plugins to handle mobipocket files";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/okular.nix b/pkgs/desktops/kde-4.7/kdegraphics/okular.nix
new file mode 100644
index 0000000000000..c322767eb4336
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/okular.nix
@@ -0,0 +1,12 @@
+{ chmlib, djvulibre, ebook_tools, kde, kdelibs, libspectre, popplerQt4, qca2
+, qimageblitz }:
+
+kde {
+  buildInputs =
+    [ chmlib djvulibre ebook_tools kdelibs libspectre popplerQt4 qca2 qimageblitz ];
+
+  meta = {
+    description = "Okular, the KDE document viewer";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdegraphics/svgpart.nix b/pkgs/desktops/kde-4.7/kdegraphics/svgpart.nix
new file mode 100644
index 0000000000000..a344cc4b4b463
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdegraphics/svgpart.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "SVG KPart";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdelibs.nix b/pkgs/desktops/kde-4.7/kdelibs.nix
new file mode 100644
index 0000000000000..cad1988723c7a
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdelibs.nix
@@ -0,0 +1,39 @@
+{ kde, gcc, cmake, perl
+, qt4, bzip2, pcre, fam, libxml2, libxslt, shared_mime_info, giflib, jasper
+, xz, openexr, avahi, kerberos, acl, attr, shared_desktop_ontologies, libXScrnSaver
+, automoc4, strigi, soprano, qca2, attica, enchant, libdbusmenu_qt
+, docbook_xml_dtd_42, docbook_xsl, polkit_qt_1
+, getopt, udev, herqq, phonon, gettext
+}:
+
+kde {
+  buildInputs =
+    [
+      acl attr attica avahi bzip2 enchant fam getopt giflib herqq jasper
+      libdbusmenu_qt libXScrnSaver libxslt pcre polkit_qt_1 qca2
+      shared_desktop_ontologies udev xz libxml2
+    ];
+
+  propagatedBuildInputs = [ qt4 soprano strigi phonon ];
+
+  propagatedBuildNativeInputs = [ automoc4 cmake perl shared_mime_info ];
+
+  # TODO: make sonnet plugins (dictionaries) really work.
+  # There are a few hardcoded paths.
+  # Let kdelibs find openexr
+  # Split plugins from libs?
+
+  patches = [ ./files/polkit-install.patch ];
+
+  # cmake fails to find acl.h because of C++-style comment
+  # TODO: OpenEXR
+  cmakeFlags = [
+    "-DDOCBOOKXML_CURRENTDTD_DIR=${docbook_xml_dtd_42}/xml/dtd/docbook"
+    "-DDOCBOOKXSL_DIR=${docbook_xsl}/xml/xsl/docbook"
+  ];
+
+  meta = {
+    description = "KDE libraries";
+    license = "LGPL";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdemultimedia.nix b/pkgs/desktops/kde-4.7/kdemultimedia.nix
new file mode 100644
index 0000000000000..b4ca7a8d2da74
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdemultimedia.nix
@@ -0,0 +1,16 @@
+{ kde, alsaLib, libvorbis, taglib, flac, cdparanoia, lame, kdelibs, ffmpeg,
+  libmusicbrainz3, libtunepimp }:
+
+kde {
+
+  buildInputs =
+    # Note: kdemultimedia can use xine-lib, but it doesn't seem useful
+    # without the Phonon Xine backend.
+    [ kdelibs cdparanoia taglib libvorbis libmusicbrainz3 libtunepimp ffmpeg
+    flac lame ];
+
+  meta = {
+    description = "KDE multimedia programs such as a movie player and volume utility";
+    license = "GPL";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdenetwork/FindmsiLBC.cmake b/pkgs/desktops/kde-4.7/kdenetwork/FindmsiLBC.cmake
new file mode 100644
index 0000000000000..c40b0bed3105d
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdenetwork/FindmsiLBC.cmake
@@ -0,0 +1,19 @@
+# cmake macro to test msiLBC
+
+# Copyright (c) 2009-2010 Pali Rohár <pali.rohar@gmail.com>
+#
+# MSILBC_FOUND
+# MSILBC_LIBRARY
+
+include ( FindPackageHandleStandardArgs )
+
+if ( MSILBC_LIBRARY )
+	set ( MSILBC_FOUND true )
+	set ( msiLBC_FIND_QUIETLY true )
+else ( MSILBC_LIBRARY )
+	find_library ( MSILBC_LIBRARY NAMES msilbc
+		PATH_SUFFIXES mediastreamer/plugins)
+endif ( MSILBC_LIBRARY )
+
+find_package_handle_standard_args ( msiLBC DEFAULT_MSG MSILBC_LIBRARY )
+mark_as_advanced ( MSILBC_LIBRARY )
diff --git a/pkgs/desktops/kde-4.7/kdenetwork/filesharing.nix b/pkgs/desktops/kde-4.7/kdenetwork/filesharing.nix
new file mode 100644
index 0000000000000..2f32f4d6b2cd6
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdenetwork/filesharing.nix
@@ -0,0 +1,7 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  patches = [ ./kdenetwork.patch ];
+}
diff --git a/pkgs/desktops/kde-4.7/kdenetwork/kdenetwork.patch b/pkgs/desktops/kde-4.7/kdenetwork/kdenetwork.patch
new file mode 100644
index 0000000000000..ebadbfad9bac4
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdenetwork/kdenetwork.patch
@@ -0,0 +1,24 @@
+diff -r -u kdenetwork-4.7.1.orig/CMakeLists.txt kdenetwork-4.7.1/CMakeLists.txt
+--- kdenetwork-4.7.1.orig/CMakeLists.txt	2011-03-29 15:25:42.174521812 +0400
++++ kdenetwork-4.7.1/CMakeLists.txt	2011-03-29 15:27:43.268140322 +0400
+@@ -28,7 +28,8 @@
+    set(CMAKE_REQUIRED_INCLUDES  ${KDEWIN_INCLUDES} )
+ endif (WIN32)
+ 
+-find_package(KdepimLibs REQUIRED)
++macro_optional_find_package(KdepimLibs)
++macro_log_feature(KDEPIMLIBS_FOUND "KDEPimLibs" "KDE pim-related libraries" "http://pim.kde.org.org/" FALSE "" "Required for Kopete")
+ # find_package(X11VidMode) not used at this time
+ 
+ # NX support is not ready for KDE 4.2; disabled (uwolfer)
+@@ -79,7 +80,9 @@
+ macro_optional_add_subdirectory(kfile-plugins)
+ macro_optional_add_subdirectory(kget)
+ 
+-macro_optional_add_subdirectory(kopete)
++if(KDEPIMLIBS_FOUND)
++  macro_optional_add_subdirectory(kopete)
++endif(KDEPIMLIBS_FOUND)
+ 
+ if(Q_WS_X11)
+   macro_optional_add_subdirectory(krdc)
diff --git a/pkgs/desktops/kde-4.7/kdenetwork/kdnssd.nix b/pkgs/desktops/kde-4.7/kdenetwork/kdnssd.nix
new file mode 100644
index 0000000000000..2f32f4d6b2cd6
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdenetwork/kdnssd.nix
@@ -0,0 +1,7 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  patches = [ ./kdenetwork.patch ];
+}
diff --git a/pkgs/desktops/kde-4.7/kdenetwork/kfile-plugins.nix b/pkgs/desktops/kde-4.7/kdenetwork/kfile-plugins.nix
new file mode 100644
index 0000000000000..f90fd3560796f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdenetwork/kfile-plugins.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs, boost }:
+
+kde {
+  name = "strigi-analyzer-torrent";
+
+  buildInputs = [ kdelibs boost ];
+
+  preConfigure = "mv -v strigi-analyzer kfile-plugins";
+
+  patches = [ ./kdenetwork.patch ];
+}
diff --git a/pkgs/desktops/kde-4.7/kdenetwork/kget.nix b/pkgs/desktops/kde-4.7/kdenetwork/kget.nix
new file mode 100644
index 0000000000000..33d9ec1ca0126
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdenetwork/kget.nix
@@ -0,0 +1,13 @@
+{ kde, kdelibs, libktorrent, kde_workspace, kdepimlibs,
+  shared_desktop_ontologies, kde_baseapps, gpgme, boost, libmms, qca2 }:
+
+kde {
+  buildInputs =
+    [ kdelibs libktorrent kde_workspace shared_desktop_ontologies kdepimlibs
+      kde_baseapps gpgme boost libmms qca2
+    ];
+
+  KDEDIRS = libktorrent;
+
+  patches = [ ./kdenetwork.patch ];
+}
diff --git a/pkgs/desktops/kde-4.7/kdenetwork/kopete.nix b/pkgs/desktops/kde-4.7/kdenetwork/kopete.nix
new file mode 100644
index 0000000000000..a4b01c5f9a633
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdenetwork/kopete.nix
@@ -0,0 +1,21 @@
+{ kde, kdelibs, speex, libmsn, libotr, kdepimlibs, qimageblitz, libktorrent,
+  jasper, libidn, mediastreamer, msilbc, pkgconfig, libxml2, libxslt, giflib,
+  libgadu, boost, qca2, gpgme }:
+
+kde {
+  buildInputs = [ kdelibs speex libmsn libotr kdepimlibs qimageblitz libktorrent
+    jasper libidn mediastreamer msilbc libxml2 libxslt giflib libgadu boost qca2
+    gpgme ];
+
+  buildNativeInputs = [ pkgconfig ];
+
+  KDEDIRS = libktorrent;
+
+  patchPhase = "cp -v ${./FindmsiLBC.cmake} kopete/cmake/modules/FindmsiLBC.cmake";
+
+  cmakeFlags = [ "-DBUILD_skypebuttons=TRUE" ];
+
+  meta = {
+    description = "A KDE multi-protocol IM client";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdenetwork/kppp.nix b/pkgs/desktops/kde-4.7/kdenetwork/kppp.nix
new file mode 100644
index 0000000000000..2f32f4d6b2cd6
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdenetwork/kppp.nix
@@ -0,0 +1,7 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  patches = [ ./kdenetwork.patch ];
+}
diff --git a/pkgs/desktops/kde-4.7/kdenetwork/krdc.nix b/pkgs/desktops/kde-4.7/kdenetwork/krdc.nix
new file mode 100644
index 0000000000000..664b1bc45a733
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdenetwork/krdc.nix
@@ -0,0 +1,7 @@
+{ kde, kdelibs, libvncserver }:
+
+kde {
+  buildInputs = [ kdelibs libvncserver ];
+
+  patches = [ ./kdenetwork.patch ];
+}
diff --git a/pkgs/desktops/kde-4.7/kdenetwork/krfb.nix b/pkgs/desktops/kde-4.7/kdenetwork/krfb.nix
new file mode 100644
index 0000000000000..80013f430d3c3
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdenetwork/krfb.nix
@@ -0,0 +1,7 @@
+{ kde, kdelibs, libvncserver, libXdamage, libXtst }:
+
+kde {
+  buildInputs = [ kdelibs libvncserver libXdamage libXtst];
+
+  patches = [ ./kdenetwork.patch ];
+}
diff --git a/pkgs/desktops/kde-4.6/network/log-feature.diff b/pkgs/desktops/kde-4.7/kdenetwork/log-feature.diff
index 6770dd399e332..6770dd399e332 100644
--- a/pkgs/desktops/kde-4.6/network/log-feature.diff
+++ b/pkgs/desktops/kde-4.7/kdenetwork/log-feature.diff
diff --git a/pkgs/desktops/kde-4.7/kdepim-runtime.nix b/pkgs/desktops/kde-4.7/kdepim-runtime.nix
new file mode 100644
index 0000000000000..ef637f3f075b1
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdepim-runtime.nix
@@ -0,0 +1,12 @@
+{ kde, fetchurl, cmake, kdelibs, libxml2, libxslt, boost, kdepimlibs, akonadi
+, shared_desktop_ontologies }:
+
+kde {
+  buildInputs = [ kdepimlibs akonadi boost shared_desktop_ontologies libxml2
+    libxslt ];
+
+  meta = {
+    description = "KDE PIM runtime";
+    license = "GPL";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdepim.nix b/pkgs/desktops/kde-4.7/kdepim.nix
new file mode 100644
index 0000000000000..c21e8c112a88c
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdepim.nix
@@ -0,0 +1,19 @@
+{ kde, boost, gpgme, libassuan, libxml2, libxslt, kdepimlibs, kdepim_runtime
+, akonadi, shared_desktop_ontologies, cyrus_sasl, grantlee }:
+
+kde {
+
+  buildInputs = [ kdepimlibs boost akonadi shared_desktop_ontologies libxml2
+    libxslt cyrus_sasl gpgme libassuan grantlee ];
+
+  passthru.propagatedUserEnvPackages = [ akonadi kdepimlibs kdepim_runtime ];
+
+  meta = {
+    description = "KDE PIM tools";
+    longDescription = ''
+      Contains various personal information management tools for KDE, such as an organizer.
+    '';
+    license = "GPL";
+    homepage = http://pim.kde.org;
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdepimlibs.nix b/pkgs/desktops/kde-4.7/kdepimlibs.nix
new file mode 100644
index 0000000000000..c1e22427ac797
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdepimlibs.nix
@@ -0,0 +1,14 @@
+{ kde, boost, cyrus_sasl, gpgme, libical, openldap, shared_mime_info
+, kdelibs, akonadi, shared_desktop_ontologies, libxml2, libxslt, prison }:
+
+kde {
+  buildInputs = [ boost gpgme shared_desktop_ontologies libical libxml2 libxslt
+    openldap cyrus_sasl akonadi prison ];
+
+  propagatedBuildInputs = [ kdelibs ];
+
+  meta = {
+    description = "KDE PIM libraries";
+    license = "LGPL";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeplasma-addons.nix b/pkgs/desktops/kde-4.7/kdeplasma-addons.nix
new file mode 100644
index 0000000000000..de2cabf20e4f0
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeplasma-addons.nix
@@ -0,0 +1,18 @@
+{ kde, kdelibs, marble, shared_desktop_ontologies
+, boost, eigen, kde_workspace, attica, python, qca2, qimageblitz
+, kdepimlibs, libkexiv2, libqalculate, libXtst }:
+# TODO: qwt, scim
+
+kde {
+
+  KDEDIRS=marble;
+
+  buildInputs = [ kdelibs boost eigen kde_workspace
+    attica python qca2 qimageblitz kdepimlibs
+    libqalculate libXtst shared_desktop_ontologies marble libkexiv2];
+
+  meta = {
+    description = "KDE Plasma Addons";
+    license = "GPL";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/cervisia.nix b/pkgs/desktops/kde-4.7/kdesdk/cervisia.nix
new file mode 100644
index 0000000000000..1dabe46cd429d
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/cervisia.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "A KDE CVS frontend";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/dolphin-plugins-git.nix b/pkgs/desktops/kde-4.7/kdesdk/dolphin-plugins-git.nix
new file mode 100644
index 0000000000000..df4a0856c6b0b
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/dolphin-plugins-git.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, kde_baseapps }:
+
+kde {
+  # Needs kdebase for libkonq
+  buildInputs = [ kdelibs kde_baseapps ];
+
+  meta = {
+    description = "Git plugin for dolphin";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/dolphin-plugins-svn.nix b/pkgs/desktops/kde-4.7/kdesdk/dolphin-plugins-svn.nix
new file mode 100644
index 0000000000000..8032b89ff54c3
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/dolphin-plugins-svn.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, kde_baseapps }:
+
+kde {
+  # Needs kdebase for libkonq
+  buildInputs = [ kdelibs kde_baseapps ];
+
+  meta = {
+    description = "Svn plugin for dolphin";
+  };
+}
diff --git a/pkgs/desktops/kde-4.6/sdk/find-svn.patch b/pkgs/desktops/kde-4.7/kdesdk/find-svn.patch
index 61cb49b308f2c..61cb49b308f2c 100644
--- a/pkgs/desktops/kde-4.6/sdk/find-svn.patch
+++ b/pkgs/desktops/kde-4.7/kdesdk/find-svn.patch
diff --git a/pkgs/desktops/kde-4.7/kdesdk/kapptemplate.nix b/pkgs/desktops/kde-4.7/kdesdk/kapptemplate.nix
new file mode 100644
index 0000000000000..391536248dd3d
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/kapptemplate.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "A KDE 4 project template generator";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/kcachegrind.nix b/pkgs/desktops/kde-4.7/kdesdk/kcachegrind.nix
new file mode 100644
index 0000000000000..65d410cca48dd
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/kcachegrind.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "KDE Frontend for Callgrind/Cachegrind";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/kdeaccounts-plugin.nix b/pkgs/desktops/kde-4.7/kdesdk/kdeaccounts-plugin.nix
new file mode 100644
index 0000000000000..7e170ca2a2c2f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/kdeaccounts-plugin.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, kdepimlibs }:
+
+kde {
+  buildInputs = [ kdelibs kdepimlibs ];
+
+  meta = {
+    description = "KDE accounts akonadi agent";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/kioslave-perldoc.nix b/pkgs/desktops/kde-4.7/kdesdk/kioslave-perldoc.nix
new file mode 100644
index 0000000000000..6a10bdf7c4bc7
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/kioslave-perldoc.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs, perl }:
+
+kde {
+  buildInputs = [ kdelibs perl ];
+
+  cmakeFlags = [ "-DBUILD_perldoc=ON" ];
+
+  meta = {
+    description = "perldoc: kioslave";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/kioslave-svn.nix b/pkgs/desktops/kde-4.7/kdesdk/kioslave-svn.nix
new file mode 100644
index 0000000000000..ec7f7a61ed561
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/kioslave-svn.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs, subversion, apr, aprutil }:
+
+kde {
+  buildInputs = [ kdelibs subversion apr aprutil ];
+
+  patches = [ ./find-svn.patch ];
+
+  meta = {
+    description = "Subversion kioslave";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/kmtrace.nix b/pkgs/desktops/kde-4.7/kdesdk/kmtrace.nix
new file mode 100644
index 0000000000000..d580f7fb6911d
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/kmtrace.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs, gcc }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  preConfigure = "export CMAKE_PREFIX_PATH=$CMAKE_PREFIX_PATH:${gcc}:${gcc.gcc}";
+
+  meta = {
+    description = "KDE mtrace-based malloc debugger";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/kompare.nix b/pkgs/desktops/kde-4.7/kdesdk/kompare.nix
new file mode 100644
index 0000000000000..1ddb4b8ea5b9e
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/kompare.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "A program to view the differences between files and optionally generate a diff";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/kpartloader.nix b/pkgs/desktops/kde-4.7/kdesdk/kpartloader.nix
new file mode 100644
index 0000000000000..e7790d33c90cd
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/kpartloader.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "A test application for KParts";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/kprofilemethod.nix b/pkgs/desktops/kde-4.7/kdesdk/kprofilemethod.nix
new file mode 100644
index 0000000000000..5a6693f2f5d8d
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/kprofilemethod.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "A macro for profiling using QTime";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/kstartperf.nix b/pkgs/desktops/kde-4.7/kdesdk/kstartperf.nix
new file mode 100644
index 0000000000000..0c8259cd31f5b
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/kstartperf.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, libtool }:
+
+kde {
+  buildInputs = [ kdelibs libtool ];
+
+  meta = {
+    description = "Measures start up time of a KDE application";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/kuiviewer.nix b/pkgs/desktops/kde-4.7/kdesdk/kuiviewer.nix
new file mode 100644
index 0000000000000..7c5089dcd37f2
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/kuiviewer.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Displays Qt Designer's UI files";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/lokalize.nix b/pkgs/desktops/kde-4.7/kdesdk/lokalize.nix
new file mode 100644
index 0000000000000..1565426eb1fc2
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/lokalize.nix
@@ -0,0 +1,13 @@
+{ kde, kdelibs, hunspell }:
+
+kde {
+  buildInputs = [ kdelibs hunspell ];
+
+  meta = {
+    description = "KDE 4 Computer-aided translation system";
+    longDescription = ''
+      Computer-aided translation system.
+      Do not translate what had already been translated.
+    '';
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/okteta.nix b/pkgs/desktops/kde-4.7/kdesdk/okteta.nix
new file mode 100644
index 0000000000000..1b53a0e03dc40
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/okteta.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs, qca2 }:
+
+kde {
+  buildInputs = [ kdelibs qca2 ];
+
+# TODO: Look what does -DBUILD_mobile add
+
+  meta = {
+    description = "KDE byte editor";
+  };
+}
diff --git a/pkgs/desktops/kde-4.6/sdk/optional-docs.diff b/pkgs/desktops/kde-4.7/kdesdk/optional-docs.diff
index f67e1f4cdd8ee..f67e1f4cdd8ee 100644
--- a/pkgs/desktops/kde-4.6/sdk/optional-docs.diff
+++ b/pkgs/desktops/kde-4.7/kdesdk/optional-docs.diff
diff --git a/pkgs/desktops/kde-4.7/kdesdk/poxml.nix b/pkgs/desktops/kde-4.7/kdesdk/poxml.nix
new file mode 100644
index 0000000000000..1ab9ed49df566
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/poxml.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, antlr }:
+
+kde {
+  buildInputs = [ kdelibs antlr ];
+
+  meta = {
+    description = "Po<->xml tools";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdesdk/scripts.nix b/pkgs/desktops/kde-4.7/kdesdk/scripts.nix
new file mode 100644
index 0000000000000..df81145e5d602
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/scripts.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Various scripts to ease KDE development";
+  };
+}
diff --git a/pkgs/desktops/kde-4.6/sdk/strigi-analyzer.nix b/pkgs/desktops/kde-4.7/kdesdk/strigi-analyzer.nix
index 88c935ade4af5..0ad48c8cfdee0 100644
--- a/pkgs/desktops/kde-4.6/sdk/strigi-analyzer.nix
+++ b/pkgs/desktops/kde-4.7/kdesdk/strigi-analyzer.nix
@@ -1,15 +1,13 @@
-{ kde, cmake, kdelibs, automoc4 }:
-
-kde.package {
-  buildInputs = [ cmake kdelibs automoc4 ];
+{ kde, kdelibs }:
 
+kde {
+  buildInputs = [ kdelibs ];
 
   meta = {
     description = "Strigi analyzers for diff, po and ts";
     kde = {
       name = "strigi-analyzer";
       module = "kdesdk";
-      version = "4.5.90";
     };
   };
 }
diff --git a/pkgs/desktops/kde-4.7/kdesdk/umbrello.nix b/pkgs/desktops/kde-4.7/kdesdk/umbrello.nix
new file mode 100644
index 0000000000000..e83a2d9a901b8
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdesdk/umbrello.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, libxml2, libxslt, boost }:
+
+kde {
+  buildInputs = [ kdelibs libxml2 libxslt boost ];
+
+  meta = {
+    description = "Umbrello UML modeller";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdetoys/amor.nix b/pkgs/desktops/kde-4.7/kdetoys/amor.nix
new file mode 100644
index 0000000000000..936d63d544a9d
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdetoys/amor.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "KDE creature for your desktop";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdetoys/kteatime.nix b/pkgs/desktops/kde-4.7/kdetoys/kteatime.nix
new file mode 100644
index 0000000000000..dacf54def4b0c
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdetoys/kteatime.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "KDE utility for making a fine cup of tea";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdetoys/ktux.nix b/pkgs/desktops/kde-4.7/kdetoys/ktux.nix
new file mode 100644
index 0000000000000..108f9be7c7228
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdetoys/ktux.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, kde_workspace }:
+
+kde {
+  buildInputs = [ kdelibs kde_workspace ];
+
+  meta = {
+    description = "Tux Screen Saver";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/ark.nix b/pkgs/desktops/kde-4.7/kdeutils/ark.nix
new file mode 100644
index 0000000000000..4449dd8228f25
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/ark.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, libarchive, xz, bzip2, kde_baseapps }:
+
+kde {
+  buildInputs = [ kdelibs kde_baseapps libarchive xz bzip2 ];
+
+  meta = {
+    description = "KDE Archiving Tool";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/filelight.nix b/pkgs/desktops/kde-4.7/kdeutils/filelight.nix
new file mode 100644
index 0000000000000..25ecabed27ce7
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/filelight.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Tool to visualise file and directory sizes";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/kcalc.nix b/pkgs/desktops/kde-4.7/kdeutils/kcalc.nix
new file mode 100644
index 0000000000000..08b202e8f0e8f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/kcalc.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, gmp }:
+
+kde {
+  buildInputs = [ kdelibs gmp ];
+
+  meta = {
+    description = "KDE Calculator";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/kcharselect.nix b/pkgs/desktops/kde-4.7/kdeutils/kcharselect.nix
new file mode 100644
index 0000000000000..d4c9c06f483dc
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/kcharselect.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "KDE character selection utility";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/kdf.nix b/pkgs/desktops/kde-4.7/kdeutils/kdf.nix
new file mode 100644
index 0000000000000..3f9da58d0a625
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/kdf.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "KDE free disk space utility";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/kfloppy.nix b/pkgs/desktops/kde-4.7/kdeutils/kfloppy.nix
new file mode 100644
index 0000000000000..2434a4fa671fc
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/kfloppy.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Floppy disk formatting utility";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/kgpg.nix b/pkgs/desktops/kde-4.7/kdeutils/kgpg.nix
new file mode 100644
index 0000000000000..f3b00a5b968c6
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/kgpg.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, kdepimlibs }:
+
+kde {
+  buildInputs = [ kdelibs kdepimlibs ];
+
+  meta = {
+    description = "Simple KDE GUI for GPG";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/kremotecontrol.nix b/pkgs/desktops/kde-4.7/kdeutils/kremotecontrol.nix
new file mode 100644
index 0000000000000..70311a789f997
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/kremotecontrol.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, libXtst }:
+
+kde {
+  buildInputs = [ kdelibs libXtst ];
+
+  meta = {
+    description = "KDE remote control";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/ktimer.nix b/pkgs/desktops/kde-4.7/kdeutils/ktimer.nix
new file mode 100644
index 0000000000000..5700977349e3f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/ktimer.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "KDE Timer";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/kwallet.nix b/pkgs/desktops/kde-4.7/kdeutils/kwallet.nix
new file mode 100644
index 0000000000000..9ec0e6c0396cd
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/kwallet.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "KDE Wallet (password storage) management tool";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/printer-applet.nix b/pkgs/desktops/kde-4.7/kdeutils/printer-applet.nix
new file mode 100644
index 0000000000000..2d937b3a4db7f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/printer-applet.nix
@@ -0,0 +1,28 @@
+{ kde, kdelibs
+, pythonPackages, sip, pyqt4, pykde4, pycups, rhpl, system_config_printer
+, pythonDBus, makeWrapper }:
+
+let s_c_p = system_config_printer.override { withGUI = false; }; in
+
+kde rec {
+  buildInputs = [ kdelibs pythonPackages.python pythonPackages.wrapPython
+    ] ++ pythonPath;
+
+  pythonPath = [ pyqt4 pykde4 pycups s_c_p ];
+
+  passthru.propagatedUserEnvPackages = [ s_c_p ];
+
+  postInstall =
+    ''
+      wrapPythonPrograms
+
+      # ‘system-config-printer’ supplies some D-Bus policy that we need.
+      mkdir -p $out/nix-support
+      echo ${s_c_p} > $out/nix-support/propagated-user-env-packages
+    '';
+
+  meta = {
+    description = "KDE printer applet";
+    longDescription = "Applet to view current print jobs and configure new printers";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/superkaramba.nix b/pkgs/desktops/kde-4.7/kdeutils/superkaramba.nix
new file mode 100644
index 0000000000000..1475ab041ac32
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/superkaramba.nix
@@ -0,0 +1,11 @@
+{ kde, kdelibs, qimageblitz }:
+
+kde {
+  buildInputs = [ kdelibs qimageblitz ];
+
+  cmakeFlags = [ "-DBUILD_icons=TRUE" "-DBULD_plasma=TRUE" ];
+
+  meta = {
+    description = "A KDE Eye-candy Application";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdeutils/sweeper.nix b/pkgs/desktops/kde-4.7/kdeutils/sweeper.nix
new file mode 100644
index 0000000000000..78d56c7df30e8
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdeutils/sweeper.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs }:
+
+kde {
+  buildInputs = [ kdelibs ];
+
+  meta = {
+    description = "Helps clean unwanted traces the user leaves on the system";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdewebdev/kfilereplace.nix b/pkgs/desktops/kde-4.7/kdewebdev/kfilereplace.nix
new file mode 100644
index 0000000000000..c3f6129d7e5c8
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdewebdev/kfilereplace.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, libxml2, libxslt }:
+
+kde {
+  buildInputs = [ kdelibs libxml2 libxslt ];
+
+  meta = {
+    description = "Batch search and replace tool";
+    homepage = http://www.kdewebdev.org;
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdewebdev/kimagemapeditor.nix b/pkgs/desktops/kde-4.7/kdewebdev/kimagemapeditor.nix
new file mode 100644
index 0000000000000..bececea7797e4
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdewebdev/kimagemapeditor.nix
@@ -0,0 +1,10 @@
+{ kde, kdelibs, libxml2, libxslt }:
+
+kde {
+  buildInputs = [ kdelibs libxml2 libxslt ];
+
+  meta = {
+    description = "An HTML imagemap editor";
+    homepage = http://www.nongnu.org/kimagemap/;
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdewebdev/klinkstatus.nix b/pkgs/desktops/kde-4.7/kdewebdev/klinkstatus.nix
new file mode 100644
index 0000000000000..94adbb7fd6e09
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdewebdev/klinkstatus.nix
@@ -0,0 +1,12 @@
+{ kde, kdelibs, libxml2, libxslt, kdepimlibs
+, boost, htmlTidy }:
+
+kde {
+  buildInputs =
+    [ kdelibs libxml2 libxslt kdepimlibs boost htmlTidy ];
+
+  meta = {
+    description = "A KDE link checker";
+    homepage = http://klinkstatus.kdewebdev.org;
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kdewebdev/kommander.nix b/pkgs/desktops/kde-4.7/kdewebdev/kommander.nix
new file mode 100644
index 0000000000000..6a870e5630330
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kdewebdev/kommander.nix
@@ -0,0 +1,9 @@
+{ kde, kdelibs, libxml2, libxslt }:
+
+kde {
+  buildInputs = [ kdelibs libxml2 libxslt ];
+
+  meta = {
+    description = "A graphical editor of scripted dialogs";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/kipi-plugins.nix b/pkgs/desktops/kde-4.7/kipi-plugins.nix
new file mode 100644
index 0000000000000..ea237a5d718e3
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/kipi-plugins.nix
@@ -0,0 +1,29 @@
+{ stdenv, fetchurl, cmake, kdelibs, qt4, automoc4, phonon, libkexiv2
+, libkdcraw, libkipi, gettext, libxml2, libxslt, qjson, qca2
+, kdepimlibs }:
+
+stdenv.mkDerivation rec {
+  name = "kipi-plugins-1.9.0";
+
+  src = fetchurl {
+    url = "mirror://sourceforge/kipi/${name}.tar.bz2";
+    sha256 = "0k4k9v1rj7129n0s0i5pvv4rabx0prxqs6sca642fj95cxc6c96m";
+  };
+
+  buildInputs =
+    # Some dependencies are missing because they are very big (OpenCV,
+    # GTK).
+    [ cmake kdelibs qt4 automoc4 phonon libkexiv2 libkdcraw libkipi
+      gettext libxml2 libxslt qjson qca2 kdepimlibs
+    ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    description = "Photo Management Program";
+    license = "GPL";
+    homepage = http://www.kipi-plugins.org;
+    inherit (kdelibs.meta) platforms;
+    maintainers = with stdenv.lib.maintainers; [ viric urkud ];
+  };
+}
diff --git a/pkgs/desktops/kde-4.6/l10n/default.nix b/pkgs/desktops/kde-4.7/l10n/default.nix
index 22acca2d1cf59..144968f667279 100644
--- a/pkgs/desktops/kde-4.6/l10n/default.nix
+++ b/pkgs/desktops/kde-4.7/l10n/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, cmake, kdelibs, gettext, perl, automoc4, release }:
+{ stdenv, fetchurl, kdelibs, gettext, release }:
 
 let
 
@@ -16,7 +16,9 @@ let
         inherit sha256;
       };
 
-      buildInputs = [ cmake perl gettext kdelibs automoc4 ];
+      buildInputs = [ gettext kdelibs ];
+
+      cmakeFlags = "-Wno-dev";
 
       meta = {
         description = "KDE translation for ${lang}";
diff --git a/pkgs/desktops/kde-4.6/l10n/l10n-manifest.sh b/pkgs/desktops/kde-4.7/l10n/l10n-manifest.sh
index cc0eec20aaafa..cc0eec20aaafa 100755
--- a/pkgs/desktops/kde-4.6/l10n/l10n-manifest.sh
+++ b/pkgs/desktops/kde-4.7/l10n/l10n-manifest.sh
diff --git a/pkgs/desktops/kde-4.7/l10n/manifest-4.7.0.nix b/pkgs/desktops/kde-4.7/l10n/manifest-4.7.0.nix
new file mode 100644
index 0000000000000..d9eba5199429f
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/l10n/manifest-4.7.0.nix
@@ -0,0 +1,262 @@
+[
+{
+  lang = "ar";
+  saneName = "ar";
+  sha256 = "16533377hxcb6xy92qw74yp2cvyrmi5bjxjh62xbqf7m3967nj56";
+}
+{
+  lang = "bg";
+  saneName = "bg";
+  sha256 = "06i189a8z0z7jv9mi1cvxc1k57gmfsf207m28rg30jhbd4gd5py7";
+}
+{
+  lang = "bs";
+  saneName = "bs";
+  sha256 = "1sqcd5jdl04ax6r615rqs4nlsc4xc1xsvc8cdi5pplwilsys0flm";
+}
+{
+  lang = "ca";
+  saneName = "ca";
+  sha256 = "1ghhl6yxhcjakv41lznhdp1nx9jp7g75g305cz3n26nbpwaz4mkd";
+}
+{
+  lang = "ca@valencia";
+  saneName = "ca_valencia";
+  sha256 = "16sb3kcjc7s02sg9bi3678cdv7hqn3xlpcsa07iwgxdzgh6yp6x0";
+}
+{
+  lang = "cs";
+  saneName = "cs";
+  sha256 = "1g52dbp4jwn67p90jkd209csn3nrc1aznpsay5i9919240wsb4mm";
+}
+{
+  lang = "da";
+  saneName = "da";
+  sha256 = "168hd69gznsarvxbzgs7hjmxjhhxsccwjfgvf328qbcb88n7570w";
+}
+{
+  lang = "de";
+  saneName = "de";
+  sha256 = "07a5f6k22pkps3a0n1ph80f1affmmrlxf1v6ywxdna64si97za43";
+}
+{
+  lang = "el";
+  saneName = "el";
+  sha256 = "1kv1wx91mgsrkscx6jf9sjl2li5n8z39hnbiyl9zy2364ximjb3c";
+}
+{
+  lang = "en_GB";
+  saneName = "en_GB";
+  sha256 = "12y9m2c0kaigi0qdisw7w2dxf40xz3ihqkwk2x2vbivzsd91ai44";
+}
+{
+  lang = "es";
+  saneName = "es";
+  sha256 = "0manicnw3l3kg6qmwq7894cjlwh8091nw6s1w31qvpx7grxznp4w";
+}
+{
+  lang = "et";
+  saneName = "et";
+  sha256 = "06xm411l20qqgfv12wxbz3x6daahwlzpp07n3ifi7jh6wzv1j0nh";
+}
+{
+  lang = "eu";
+  saneName = "eu";
+  sha256 = "08y65gkpq2ziylddzk44d2rp8mprr3bayxsgl4zw8plmyj6p79fs";
+}
+{
+  lang = "fi";
+  saneName = "fi";
+  sha256 = "1xdgnn06psg84a60ssd85855jw93bi787aawyrh7n77q5za8rs83";
+}
+{
+  lang = "fr";
+  saneName = "fr";
+  sha256 = "1l6ljqy5aa6wbvkywi47mvkw28whcdwcdd3hrqy8kyxf064d5lk6";
+}
+{
+  lang = "ga";
+  saneName = "ga";
+  sha256 = "1nnh11hbqvb6gxgfp086algbjiw5j4rs5fxzl74i8935qhjz12pk";
+}
+{
+  lang = "gl";
+  saneName = "gl";
+  sha256 = "0sqgcjrzr422iy9qmyyzhmwah696gkv810xh6hd71yv3416wpnjk";
+}
+{
+  lang = "he";
+  saneName = "he";
+  sha256 = "1hid5izn5g63iaz634x2x7ahylf99ccjms21461lg4w72mb732f9";
+}
+{
+  lang = "hr";
+  saneName = "hr";
+  sha256 = "0kqk28rcdawdxz1h8dph1ik49ag2nxbbq3712fpjylswqa0dh4v3";
+}
+{
+  lang = "hu";
+  saneName = "hu";
+  sha256 = "1gnsvyw412j2k9maac2sflvfnv1mf4lwaqcxrhyb5zfvz7pflfqh";
+}
+{
+  lang = "ia";
+  saneName = "ia";
+  sha256 = "03a89wb03yc57d5nxvawdzvc7qzzcwj5r1gri7p6khjbl6r5gx63";
+}
+{
+  lang = "id";
+  saneName = "id";
+  sha256 = "0r0c7yd3sq4bwqa9l3j8fc7bhdfnr14q1270l2vvn1r4r9y4myb7";
+}
+{
+  lang = "is";
+  saneName = "is";
+  sha256 = "00m3sfrcawqva93w90y29lf747b43pmcgd97n6iii2alk8z1xc6b";
+}
+{
+  lang = "it";
+  saneName = "it";
+  sha256 = "1v6gl0bbml5ddz60sc7dk0pirnjdmpiqhksbyqbmx9d650x5jpm0";
+}
+{
+  lang = "ja";
+  saneName = "ja";
+  sha256 = "0y0nwy805w0x90kfmpkldjllaq5qrs031kl2r2v67n0i2i0g48n3";
+}
+{
+  lang = "kk";
+  saneName = "kk";
+  sha256 = "06fmh05ccbx58vprw4h1f4hqsv2gjkm0y982lajgrwpswc09kdrj";
+}
+{
+  lang = "km";
+  saneName = "km";
+  sha256 = "1l17xj681m29xladp8cb6vbwprvf7l5kj8iignyyziv7sw6v5fs9";
+}
+{
+  lang = "kn";
+  saneName = "kn";
+  sha256 = "0is1yarm4r5dcm424nha7p093rzndsqmkbgrj65q8szf8pdii3pz";
+}
+{
+  lang = "ko";
+  saneName = "ko";
+  sha256 = "1fr2ln91k910qbpkxsqxaf05bdgf2mg4jj4chxygqhwv1ffxj4f0";
+}
+{
+  lang = "lt";
+  saneName = "lt";
+  sha256 = "1m8iawglrznv1qsqsw2sns6fbbv52zs2wzmz793p4n1v67ly4n75";
+}
+{
+  lang = "lv";
+  saneName = "lv";
+  sha256 = "1p89fw17nfd77klr2dkrm98xahxqprq9a1906rl7m7jdrsh44zrd";
+}
+{
+  lang = "nb";
+  saneName = "nb";
+  sha256 = "082cjvczqlvzsgzwdlyqy8qvfdfcvxgj8fy4faxv5iaqdv4hzf1j";
+}
+{
+  lang = "nds";
+  saneName = "nds";
+  sha256 = "0vhg8hkg4iad0g0jmy9qb61z7bnyw9dmpnibwpn1sypq8cy1qgax";
+}
+{
+  lang = "nl";
+  saneName = "nl";
+  sha256 = "1nvkspaycgkx639cmjp0cv81fb8fjqmfw6r7r6fhq4gjyk6awdbl";
+}
+{
+  lang = "nn";
+  saneName = "nn";
+  sha256 = "03y7c4vn9ihz65bylmabcjsjssb9wc4j4nb9slb98dm97cqn015b";
+}
+{
+  lang = "pa";
+  saneName = "pa";
+  sha256 = "0vhf2bb4ii737hmg639s0h7pl38dxrpncvgl6l2lzv2nb3g92ihk";
+}
+{
+  lang = "pl";
+  saneName = "pl";
+  sha256 = "116ii59z71v3wlp9xd5ni3zk140i4s461l1wpqxx2p8lrs6087m6";
+}
+{
+  lang = "pt";
+  saneName = "pt";
+  sha256 = "04mh52cdg63nacs5mydmx244ljq39495bai4zm7viz1b0lkwhfi8";
+}
+{
+  lang = "pt_BR";
+  saneName = "pt_BR";
+  sha256 = "1fqsgxfxmsbadk32kgxskkjvbq4wb06gq26i4h41y3cbanw11r9v";
+}
+{
+  lang = "ro";
+  saneName = "ro";
+  sha256 = "04r6avdjd4pjnq6viprm5252jyqd73wiqc419y72vpxh39rri72k";
+}
+{
+  lang = "ru";
+  saneName = "ru";
+  sha256 = "0gdy3yjczgjigr1pfmwsjscgh9q7mvz11m82axw0989kvq34ryx3";
+}
+{
+  lang = "sk";
+  saneName = "sk";
+  sha256 = "0kgg6a0xy4cnij7g576rsixkn7b0c9l782zxn2brcnqlfqzyh3b7";
+}
+{
+  lang = "sl";
+  saneName = "sl";
+  sha256 = "1yf15mcyi0k9vmrmd0fqz265dsy2xr6fhf1wl3lljb0mqsyf0a8a";
+}
+{
+  lang = "sr";
+  saneName = "sr";
+  sha256 = "1cyw5kkpwq7yzhib6dlqln21fk3zfppalhw21rnfr0ih1znpaa1p";
+}
+{
+  lang = "sv";
+  saneName = "sv";
+  sha256 = "1kaq1zlgxb5z9bpfpnpznnv3yhqjr4wgdm47b5fcg149ha6q43hp";
+}
+{
+  lang = "th";
+  saneName = "th";
+  sha256 = "1yzbxwzd624akmby1bhfm74fp6p41fq38jxs8qdsflav531nz47z";
+}
+{
+  lang = "tr";
+  saneName = "tr";
+  sha256 = "1l1q154ib9wr8brp0pk6r0n7xz8kzdbhfb803kwg0ajhjddpihim";
+}
+{
+  lang = "ug";
+  saneName = "ug";
+  sha256 = "05zcz4rwvlc1gbcm7612rlvsbjnf293kiv902rms64smd3w8237r";
+}
+{
+  lang = "uk";
+  saneName = "uk";
+  sha256 = "04b5nj9q3x2cpc03awm09ijx0qzkvmxp9wb3cj3q4mhkd8n42k6i";
+}
+{
+  lang = "wa";
+  saneName = "wa";
+  sha256 = "10w1n2cni7mqf8fyy5gq699d9nw0fma1brq5a3wfwnxhlk7hxs6a";
+}
+{
+  lang = "zh_CN";
+  saneName = "zh_CN";
+  sha256 = "15xfbyf2m3lhd6q7imsmjxv81kw1ml286dh771gg4m668j7101pq";
+}
+{
+  lang = "zh_TW";
+  saneName = "zh_TW";
+  sha256 = "0d9gw75qq37yq3icz4mjqnqqar0vrmc6aly8pybg4qw167jzzqn6";
+}
+]
diff --git a/pkgs/desktops/kde-4.7/oxygen-icons.nix b/pkgs/desktops/kde-4.7/oxygen-icons.nix
new file mode 100644
index 0000000000000..b8e272c20a2c8
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/oxygen-icons.nix
@@ -0,0 +1,15 @@
+{ kde, cmake }:
+
+kde {
+  outputHashAlgo = "sha256";
+  outputHashMode = "recursive";
+  outputHash = "7d7f352f574f5747f16ac517cbe19d0b011adb74e7a0b791705afb3addac1e96";
+
+  buildNativeInputs = [ cmake ];
+
+  meta = {
+    description = "KDE Oxygen theme icons";
+    longDescription = "Icons for KDE's default theme";
+    license = "GPL";
+  };
+}
diff --git a/pkgs/desktops/kde-4.7/support/akonadi/default.nix b/pkgs/desktops/kde-4.7/support/akonadi/default.nix
new file mode 100644
index 0000000000000..486849b23aad7
--- /dev/null
+++ b/pkgs/desktops/kde-4.7/support/akonadi/default.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, cmake, qt4, shared_mime_info, libxslt, boost, automoc4, soprano }:
+
+stdenv.mkDerivation rec {
+  name = "akonadi-1.6.0";
+  
+  src = fetchurl {
+    url = "mirror://kde/stable/akonadi/src/${name}.tar.bz2";
+    sha256 = "0bzr6476yyinvdhrn9z8ynmi0py9zs3dfhwk3dvqxysk87svk71f";
+  };
+  
+  buildInputs = [ cmake qt4 soprano automoc4 shared_mime_info libxslt boost ];
+
+  enableParallelBuilding = true;
+  
+  meta = with stdenv.lib; {
+    description = "KDE PIM Storage Service";
+    license = "LGPL";
+    homepage = http://pim.kde.org/akonadi;
+    maintainers = [ maintainers.sander maintainers.urkud ];
+    platforms = platforms.linux;
+  };
+}
diff --git a/pkgs/desktops/kde-4.6/support/soprano/default.nix b/pkgs/desktops/kde-4.7/support/soprano/default.nix
index 101cbfbe60bd6..baed223315254 100644
--- a/pkgs/desktops/kde-4.6/support/soprano/default.nix
+++ b/pkgs/desktops/kde-4.7/support/soprano/default.nix
@@ -1,16 +1,21 @@
-{stdenv, fetchurl, cmake, qt4, cluceneCore, redland, libiodbc, pkgconfig}:
+{ stdenv, fetchurl, cmake, qt4, clucene_core, librdf_redland, libiodbc }:
 
 stdenv.mkDerivation rec {
-  name = "soprano-2.6.0";
+  name = "soprano-2.7.0";
 
   src = fetchurl {
     url = "mirror://sourceforge/soprano/${name}.tar.bz2";
-    sha256 = "0dfdc4hcv25kwmv3wp13qjw2jg2fax4gcy79yia7sdgz5ik59xq2";
+    sha256 = "1ki92wg0i9nhn1fh5mdcls5h9h3lf2k5r66snsags4x7zw0dmv2z";
   };
 
+  patches = [ (fetchurl {
+    url = https://git.reviewboard.kde.org/r/102466/diff/raw/;
+    name = "soprano-virtuoso-restart.patch";
+    sha256 = "0jk038fp7ii6847mbxdajhhc7f6ap6lriaklxcqqxf6ddj37gf3y";
+  })];
+
   # We disable the Java backend, since we do not need them and they make the closure size much bigger
-  buildInputs = [ qt4 cluceneCore redland libiodbc ];
-  buildNativeInputs = [ cmake pkgconfig ];
+  buildInputs = [ cmake qt4 clucene_core librdf_redland libiodbc ];
 
   meta = {
     homepage = http://soprano.sourceforge.net/;
diff --git a/pkgs/desktops/xfce-4/applications/mousepad.nix b/pkgs/desktops/xfce-4.6/applications/mousepad.nix
index 920151282a80d..920151282a80d 100644
--- a/pkgs/desktops/xfce-4/applications/mousepad.nix
+++ b/pkgs/desktops/xfce-4.6/applications/mousepad.nix
diff --git a/pkgs/desktops/xfce-4/applications/ristretto.nix b/pkgs/desktops/xfce-4.6/applications/ristretto.nix
index 198421e21d3f1..198421e21d3f1 100644
--- a/pkgs/desktops/xfce-4/applications/ristretto.nix
+++ b/pkgs/desktops/xfce-4.6/applications/ristretto.nix
diff --git a/pkgs/desktops/xfce-4/applications/terminal.nix b/pkgs/desktops/xfce-4.6/applications/terminal.nix
index bd198a12af44f..bd198a12af44f 100644
--- a/pkgs/desktops/xfce-4/applications/terminal.nix
+++ b/pkgs/desktops/xfce-4.6/applications/terminal.nix
diff --git a/pkgs/desktops/xfce-4/applications/xfce4-mixer.nix b/pkgs/desktops/xfce-4.6/applications/xfce4-mixer.nix
index db28274be0722..db28274be0722 100644
--- a/pkgs/desktops/xfce-4/applications/xfce4-mixer.nix
+++ b/pkgs/desktops/xfce-4.6/applications/xfce4-mixer.nix
diff --git a/pkgs/desktops/xfce-4/applications/xfce4-power-manager.nix b/pkgs/desktops/xfce-4.6/applications/xfce4-power-manager.nix
index 543b7660975fa..543b7660975fa 100644
--- a/pkgs/desktops/xfce-4/applications/xfce4-power-manager.nix
+++ b/pkgs/desktops/xfce-4.6/applications/xfce4-power-manager.nix
diff --git a/pkgs/desktops/xfce-4/art/xfce4-icon-theme.nix b/pkgs/desktops/xfce-4.6/art/xfce4-icon-theme.nix
index a17267a336c34..a17267a336c34 100644
--- a/pkgs/desktops/xfce-4/art/xfce4-icon-theme.nix
+++ b/pkgs/desktops/xfce-4.6/art/xfce4-icon-theme.nix
diff --git a/pkgs/desktops/xfce-4/core/exo.nix b/pkgs/desktops/xfce-4.6/core/exo.nix
index 53fc8fa8fcdf7..53fc8fa8fcdf7 100644
--- a/pkgs/desktops/xfce-4/core/exo.nix
+++ b/pkgs/desktops/xfce-4.6/core/exo.nix
diff --git a/pkgs/desktops/xfce-4/core/gtk-xfce-engine.nix b/pkgs/desktops/xfce-4.6/core/gtk-xfce-engine.nix
index bab382a263f06..bab382a263f06 100644
--- a/pkgs/desktops/xfce-4/core/gtk-xfce-engine.nix
+++ b/pkgs/desktops/xfce-4.6/core/gtk-xfce-engine.nix
diff --git a/pkgs/desktops/xfce-4/core/libxfce4menu.nix b/pkgs/desktops/xfce-4.6/core/libxfce4menu.nix
index f8a0c1ba87c99..f8a0c1ba87c99 100644
--- a/pkgs/desktops/xfce-4/core/libxfce4menu.nix
+++ b/pkgs/desktops/xfce-4.6/core/libxfce4menu.nix
diff --git a/pkgs/desktops/xfce-4/core/libxfce4util.nix b/pkgs/desktops/xfce-4.6/core/libxfce4util.nix
index 2625966bb5877..2625966bb5877 100644
--- a/pkgs/desktops/xfce-4/core/libxfce4util.nix
+++ b/pkgs/desktops/xfce-4.6/core/libxfce4util.nix
diff --git a/pkgs/desktops/xfce-4/core/libxfcegui4.nix b/pkgs/desktops/xfce-4.6/core/libxfcegui4.nix
index 52ee3a6262fcd..52ee3a6262fcd 100644
--- a/pkgs/desktops/xfce-4/core/libxfcegui4.nix
+++ b/pkgs/desktops/xfce-4.6/core/libxfcegui4.nix
diff --git a/pkgs/desktops/xfce-4/core/thunar.nix b/pkgs/desktops/xfce-4.6/core/thunar.nix
index adbbd461c5ee9..adbbd461c5ee9 100644
--- a/pkgs/desktops/xfce-4/core/thunar.nix
+++ b/pkgs/desktops/xfce-4.6/core/thunar.nix
diff --git a/pkgs/desktops/xfce-4/core/xfce-utils.nix b/pkgs/desktops/xfce-4.6/core/xfce-utils.nix
index 4f520058ccf1d..4f520058ccf1d 100644
--- a/pkgs/desktops/xfce-4/core/xfce-utils.nix
+++ b/pkgs/desktops/xfce-4.6/core/xfce-utils.nix
diff --git a/pkgs/desktops/xfce-4/core/xfce4-panel.nix b/pkgs/desktops/xfce-4.6/core/xfce4-panel.nix
index b8a8c14580116..b8a8c14580116 100644
--- a/pkgs/desktops/xfce-4/core/xfce4-panel.nix
+++ b/pkgs/desktops/xfce-4.6/core/xfce4-panel.nix
diff --git a/pkgs/desktops/xfce-4/core/xfce4-session.nix b/pkgs/desktops/xfce-4.6/core/xfce4-session.nix
index dc563502542a0..dc563502542a0 100644
--- a/pkgs/desktops/xfce-4/core/xfce4-session.nix
+++ b/pkgs/desktops/xfce-4.6/core/xfce4-session.nix
diff --git a/pkgs/desktops/xfce-4/core/xfce4-settings.nix b/pkgs/desktops/xfce-4.6/core/xfce4-settings.nix
index b0bfadf8e5256..b0bfadf8e5256 100644
--- a/pkgs/desktops/xfce-4/core/xfce4-settings.nix
+++ b/pkgs/desktops/xfce-4.6/core/xfce4-settings.nix
diff --git a/pkgs/desktops/xfce-4/core/xfconf.nix b/pkgs/desktops/xfce-4.6/core/xfconf.nix
index b4c14ef043e25..b4c14ef043e25 100644
--- a/pkgs/desktops/xfce-4/core/xfconf.nix
+++ b/pkgs/desktops/xfce-4.6/core/xfconf.nix
diff --git a/pkgs/desktops/xfce-4/core/xfdesktop.nix b/pkgs/desktops/xfce-4.6/core/xfdesktop.nix
index 83de4ed4dfe7b..83de4ed4dfe7b 100644
--- a/pkgs/desktops/xfce-4/core/xfdesktop.nix
+++ b/pkgs/desktops/xfce-4.6/core/xfdesktop.nix
diff --git a/pkgs/desktops/xfce-4/core/xfwm4.nix b/pkgs/desktops/xfce-4.6/core/xfwm4.nix
index c7bab240691ee..c7bab240691ee 100644
--- a/pkgs/desktops/xfce-4/core/xfwm4.nix
+++ b/pkgs/desktops/xfce-4.6/core/xfwm4.nix
diff --git a/pkgs/desktops/xfce-4/default.nix b/pkgs/desktops/xfce-4.6/default.nix
index 6f2eaf1b4bfe8..6f2eaf1b4bfe8 100644
--- a/pkgs/desktops/xfce-4/default.nix
+++ b/pkgs/desktops/xfce-4.6/default.nix
diff --git a/pkgs/desktops/xfce-4.8/applications/mousepad.nix b/pkgs/desktops/xfce-4.8/applications/mousepad.nix
new file mode 100644
index 0000000000000..920151282a80d
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/applications/mousepad.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl, pkgconfig, intltool, libxfce4util, libxfcegui4, gtk }:
+
+stdenv.mkDerivation rec {
+  name = "mousepad-0.2.16";
+  
+  src = fetchurl {
+    url = "http://www.xfce.org/archive/src/apps/mousepad/0.2/${name}.tar.bz2";
+    sha1 = "4e63033e0a71578f3ec9a0d2e6a505efd0424ef9";
+  };
+
+  buildInputs = [ pkgconfig intltool libxfce4util libxfcegui4 gtk ];
+
+  meta = {
+    homepage = http://www.xfce.org/projects/mousepad/;
+    description = "A simple text editor for Xfce";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/applications/ristretto.nix b/pkgs/desktops/xfce-4.8/applications/ristretto.nix
new file mode 100644
index 0000000000000..50a67d95ee99c
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/applications/ristretto.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, pkgconfig, intltool, libexif, gtk, thunar
+, exo, dbus_glib, libxfce4util, libxfce4ui, xfconf }:
+
+stdenv.mkDerivation rec {
+  name = "ristretto-0.0.93";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/apps/ristretto/0.0/${name}.tar.bz2";
+    sha1 = "c71acaad169633faffe26609f9cc671b04ff52d3";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool libexif gtk thunar exo dbus_glib
+      libxfce4util libxfce4ui xfconf
+    ];
+
+  NIX_LDFLAGS = "-lX11";
+
+  meta = {
+    homepage = http://goodies.xfce.org/projects/applications/ristretto;
+    description = "A fast and lightweight picture-viewer for the Xfce desktop environment";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/applications/terminal.nix b/pkgs/desktops/xfce-4.8/applications/terminal.nix
new file mode 100644
index 0000000000000..cacb775f8f117
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/applications/terminal.nix
@@ -0,0 +1,23 @@
+{ stdenv, fetchurl
+, pkgconfig, ncurses
+, intltool, vte
+, exo, libxfce4util
+, gtk
+}:
+
+stdenv.mkDerivation {
+  name = "xfce-terminal-0.4.8";
+  
+  src = fetchurl {
+    url = http://archive.xfce.org/src/apps/terminal/0.4/Terminal-0.4.8.tar.bz2;
+    sha1 = "2f12c3a0fffad18976d47e531d404ee308cb2f05";
+  };
+
+  buildInputs = [ pkgconfig intltool exo gtk vte libxfce4util ncurses ];
+
+  meta = {
+    homepage = http://www.xfce.org/projects/terminal;
+    description = "A modern terminal emulator primarily for the Xfce desktop environment";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix b/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix
new file mode 100644
index 0000000000000..d34a5afb36ff5
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/applications/xfce4-mixer.nix
@@ -0,0 +1,38 @@
+{ stdenv, fetchurl, pkgconfig, intltool, glib, gst_all, gtk
+, libxfce4util, libxfce4ui, xfce4panel, xfconf }:
+
+let
+
+  # The usual Gstreamer plugins package has a zillion dependencies
+  # that we don't need for a simple mixer, so build a minimal package.
+  gstPluginsBase = gst_all.gstPluginsBase.override {
+    minimalDeps = true;
+  };
+
+in
+
+stdenv.mkDerivation rec {
+  name = "xfce4-mixer-4.8.0";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/apps/xfce4-mixer/4.8/${name}.tar.bz2";
+    sha1 = "24f3401a68f10d2c620e354a6de98e09fe808665";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool glib gst_all.gstreamer gstPluginsBase gtk
+      libxfce4util libxfce4ui xfce4panel xfconf
+    ];
+
+  postInstall =
+    ''
+      mkdir -p $out/nix-support
+      echo ${gstPluginsBase} > $out/nix-support/propagated-user-env-packages
+    '';
+
+  meta = {
+    homepage = http://www.xfce.org/projects/xfce4-mixer;
+    description = "A volume control application for the Xfce desktop environment";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/applications/xfce4-power-manager.nix b/pkgs/desktops/xfce-4.8/applications/xfce4-power-manager.nix
new file mode 100644
index 0000000000000..b683ef71a0a7f
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/applications/xfce4-power-manager.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, pkgconfig, intltool, gtk, dbus_glib, xfconf
+, libxfce4ui, libxfce4util, libnotify, xfce4panel }:
+
+stdenv.mkDerivation rec {
+  name = "xfce4-power-manager-1.0.10";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/apps/xfce4-power-manager/1.0/${name}.tar.bz2";
+    sha1 = "64dd7a8fae9cd1cbcf6403d2f51f2281f38cca05";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool gtk dbus_glib xfconf libxfce4ui libxfce4util
+      libnotify xfce4panel
+    ];
+
+  meta = {
+    homepage = http://goodies.xfce.org/projects/applications/xfce4-power-manager;
+    description = "A power manager for the Xfce Desktop Environment";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix b/pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix
new file mode 100644
index 0000000000000..a17267a336c34
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/art/xfce4-icon-theme.nix
@@ -0,0 +1,17 @@
+{ stdenv, fetchurl, pkgconfig, intltool, gtk }:
+
+stdenv.mkDerivation rec {
+  name = "xfce4-icon-theme-4.4.3";
+  
+  src = fetchurl {
+    url = "http://www.xfce.org/archive/src/art/xfce4-icon-theme/4.4/${name}.tar.bz2";
+    sha1 = "0c0d0c45cd4a7f609310db8e9d17c1c4a131a6e7";
+  };
+
+  buildInputs = [ pkgconfig intltool gtk ];
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Icons for Xfce";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/exo.nix b/pkgs/desktops/xfce-4.8/core/exo.nix
new file mode 100644
index 0000000000000..468132a2a81ec
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/exo.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, pkgconfig, intltool, URI, glib, gtk, libxfce4util }:
+
+stdenv.mkDerivation rec {
+  name = "exo-0.6.2";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/exo/0.6/${name}.tar.bz2";
+    sha1 = "2486f12c814630068665e22cdf417f0f0f05dab1";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool URI glib gtk libxfce4util ];
+
+  meta = {
+    homepage = http://www.xfce.org/projects/exo;
+    description = "Application library for the Xfce desktop environment";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/garcon.nix b/pkgs/desktops/xfce-4.8/core/garcon.nix
new file mode 100644
index 0000000000000..40b40541bf14f
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/garcon.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl, pkgconfig, intltool, glib }:
+
+stdenv.mkDerivation rec {
+  name = "garcon-0.1.8";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/garcon/0.1/${name}.tar.bz2";
+    sha1 = "e5eac6a13208c81ccad0941656c01e7a69530f03";
+  };
+
+  buildInputs = [ pkgconfig intltool glib ];
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Xfce menu support library";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/gtk-xfce-engine.nix b/pkgs/desktops/xfce-4.8/core/gtk-xfce-engine.nix
new file mode 100644
index 0000000000000..7cca247ae4414
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/gtk-xfce-engine.nix
@@ -0,0 +1,19 @@
+{ stdenv, fetchurl, pkgconfig, intltool, gtk }:
+
+stdenv.mkDerivation rec {
+  name = "gtk-xfce-engine-2.8.1";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/gtk-xfce-engine/2.8/${name}.tar.bz2";
+    sha1 = "d7779f07cc76585be063bc25fa91e660e1fd9c97";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool gtk ];
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "GTK+ theme engine for Xfce";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/libxfce4ui.nix b/pkgs/desktops/xfce-4.8/core/libxfce4ui.nix
new file mode 100644
index 0000000000000..c3551d565e107
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/libxfce4ui.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, xfconf
+, libstartup_notification }:
+
+stdenv.mkDerivation rec {
+  name = "libxfce4ui-4.8.0";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/libxfce4ui/4.8/${name}.tar.bz2";
+    sha1 = "107f9d8e3e583f3cf5330074e89ea72eb2a82888";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool gtk libxfce4util xfconf
+      libstartup_notification
+    ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Basic GUI library for Xfce";
+    license = "LGPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/libxfce4util.nix b/pkgs/desktops/xfce-4.8/core/libxfce4util.nix
new file mode 100644
index 0000000000000..1a2b64bc8fa91
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/libxfce4util.nix
@@ -0,0 +1,18 @@
+{ stdenv, fetchurl, pkgconfig, glib, intltool }:
+
+stdenv.mkDerivation rec {
+  name = "libxfce4util-4.8.1";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/libxfce4util/4.8/${name}.tar.bz2";
+    sha1 = "4d26aea58413603e2c163ff0374a6e32fc47bc4c";
+  };
+
+  buildInputs = [ pkgconfig glib intltool ];
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Basic utility non-GUI functions for Xfce";
+    license = "bsd";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/libxfcegui4.nix b/pkgs/desktops/xfce-4.8/core/libxfcegui4.nix
new file mode 100644
index 0000000000000..20e82a2c92f88
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/libxfcegui4.nix
@@ -0,0 +1,31 @@
+{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, xfconf
+, libglade, libstartup_notification }:
+
+stdenv.mkDerivation rec {
+  name = "libxfcegui4-4.8.1";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/libxfcegui4/4.8/${name}.tar.bz2";
+    sha1 = "246fcaa71fc8cf44dae0b4c919411231eedd662f";
+  };
+
+  # By default, libxfcegui4 tries to install into libglade's prefix.
+  # Install into our own prefix instead.
+  preConfigure =
+    ''
+      configureFlags="--with-libglade-module-path=$out/lib/libglade/2.0"
+    '';
+
+  buildInputs =
+    [ pkgconfig intltool gtk libxfce4util libglade
+      libstartup_notification
+    ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Basic GUI library for Xfce";
+    license = "LGPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/thunar.nix b/pkgs/desktops/xfce-4.8/core/thunar.nix
new file mode 100644
index 0000000000000..c9ab76f2920c2
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/thunar.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, pkgconfig, intltool, exo, gtk, libxfce4util, libxfce4ui
+, dbus_glib, libstartup_notification, xfconf, xfce4panel, udev, libnotify }:
+
+stdenv.mkDerivation rec {
+  name = "thunar-1.2.2";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/thunar/1.2/Thunar-1.2.2.tar.bz2";
+    sha1 = "314e3d53ec7be1ea578da4d842ecc8dc5958b1bd";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool gtk exo libxfce4util libxfce4ui
+      dbus_glib libstartup_notification xfconf xfce4panel udev libnotify
+    ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    homepage = http://thunar.xfce.org/;
+    description = "Xfce file manager";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/xfce-utils.nix b/pkgs/desktops/xfce-4.8/core/xfce-utils.nix
new file mode 100644
index 0000000000000..58ef4fbef2a44
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/xfce-utils.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui }:
+
+stdenv.mkDerivation rec {
+  name = "xfce-utils-4.8.2";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/xfce-utils/4.8/${name}.tar.bz2";
+    sha1 = "c9358f47f57b961fc51008cf6752d2761b4c4f25";
+  };
+
+  configureFlags = "--with-xsession-prefix=$(out)/share/xsessions --with-vendor-info=NixOS.org";
+
+  buildInputs = [ pkgconfig intltool gtk libxfce4util libxfce4ui ];
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Utilities and scripts for Xfce";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/xfce4-panel.nix b/pkgs/desktops/xfce-4.8/core/xfce4-panel.nix
new file mode 100644
index 0000000000000..0752d18d7f215
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/xfce4-panel.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, garcon
+, libxfce4ui, xfconf, libwnck, exo }:
+
+stdenv.mkDerivation rec {
+  name = "xfce4-panel-4.8.5";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/xfce4-panel/4.8/${name}.tar.bz2";
+    sha1 = "67b9d5bc422663f60f5a05e7cfd7ca67b4542813";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool gtk libxfce4util garcon libxfce4ui xfconf
+      exo libwnck
+    ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Xfce panel";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/xfce4-session.nix b/pkgs/desktops/xfce-4.8/core/xfce4-session.nix
new file mode 100644
index 0000000000000..c6f6234f473dd
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/xfce4-session.nix
@@ -0,0 +1,22 @@
+{ stdenv, fetchurl, pkgconfig, intltool, gtk, libxfce4util, libxfce4ui
+, libwnck, dbus_glib, xfconf, xorg, xfce4panel }:
+
+stdenv.mkDerivation rec {
+  name = "xfce4-session-4.8.1";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/xfce4-session/4.8/${name}.tar.bz2";
+    sha1 = "a33534e53fa36a38a1f9bd164469a9fb62c765a7";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool gtk libxfce4util libxfce4ui libwnck dbus_glib
+      xfconf xorg.iceauth xfce4panel
+    ];
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Session manager for Xfce";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/xfce4-settings.nix b/pkgs/desktops/xfce-4.8/core/xfce4-settings.nix
new file mode 100644
index 0000000000000..3515d2553c541
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/xfce4-settings.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, pkgconfig, intltool, exo, gtk, libxfce4util, libxfce4ui
+, xfconf, xorg, libnotify, libxklavier }:
+
+stdenv.mkDerivation rec {
+  name = "xfce4-settings-4.8.2";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/xfce4-settings/4.8/${name}.tar.bz2";
+    sha1 = "402afe308944a315c385d2b1ed567f997d016b61";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool exo gtk libxfce4util libxfce4ui
+      xfconf libnotify xorg.libXcursor libxklavier
+    ];
+
+  configureFlags = "--enable-pluggable-dialogs --enable-sound-settings";
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Settings manager for Xfce";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/xfconf.nix b/pkgs/desktops/xfce-4.8/core/xfconf.nix
new file mode 100644
index 0000000000000..bb351c68d280e
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/xfconf.nix
@@ -0,0 +1,20 @@
+{ stdenv, fetchurl, pkgconfig, intltool, glib, libxfce4util, dbus_glib }:
+
+stdenv.mkDerivation rec {
+  name = "xfconf-4.8.0";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/xfconf/4.8/${name}.tar.bz2";
+    sha1 = "3f560b11d618171805bfb9e6a8290185c7ee5dcd";
+  };
+
+  buildInputs = [ pkgconfig intltool glib libxfce4util ];
+
+  propagatedBuildInputs = [ dbus_glib ];
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Simple client-server configuration storage and query system for Xfce";
+    license = "GPLv2";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/xfdesktop.nix b/pkgs/desktops/xfce-4.8/core/xfdesktop.nix
new file mode 100644
index 0000000000000..3742686d2e3dd
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/xfdesktop.nix
@@ -0,0 +1,24 @@
+{ stdenv, fetchurl, pkgconfig, intltool, gtk, dbus_glib, libxfce4util
+, libxfce4ui, libwnck, xfconf, garcon, libnotify, exo }:
+
+stdenv.mkDerivation rec {
+  name = "xfdesktop-4.8.2";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/xfdesktop/4.8/${name}.tar.bz2";
+    sha1 = "fe7d71bb502197b0353b952947826a5a50ab13bc";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool gtk dbus_glib libxfce4util libxfce4ui libwnck xfconf
+      garcon libnotify exo
+    ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Xfce desktop manager";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/core/xfwm4.nix b/pkgs/desktops/xfce-4.8/core/xfwm4.nix
new file mode 100644
index 0000000000000..7dc3c65390947
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/core/xfwm4.nix
@@ -0,0 +1,25 @@
+{ stdenv, fetchurl, pkgconfig, gtk, intltool, libxfce4util
+, libxfce4ui, xfconf, libwnck, libstartup_notification, xorg }:
+
+stdenv.mkDerivation rec {
+  name = "xfwm4-4.8.1";
+  
+  src = fetchurl {
+    url = "http://archive.xfce.org/src/xfce/xfwm4/4.8/${name}.tar.bz2";
+    sha1 = "4075a689f572ae157ed80ab3ce5be85f09dac766";
+  };
+
+  buildInputs =
+    [ pkgconfig intltool gtk libxfce4util libxfce4ui xfconf
+      libwnck libstartup_notification
+      xorg.libXcomposite xorg.libXfixes xorg.libXdamage
+    ];
+
+  enableParallelBuilding = true;
+
+  meta = {
+    homepage = http://www.xfce.org/;
+    description = "Window manager for Xfce";
+    license = "GPLv2+";
+  };
+}
diff --git a/pkgs/desktops/xfce-4.8/default.nix b/pkgs/desktops/xfce-4.8/default.nix
new file mode 100644
index 0000000000000..57098b12e3e95
--- /dev/null
+++ b/pkgs/desktops/xfce-4.8/default.nix
@@ -0,0 +1,68 @@
+{ callPackage, pkgs }:
+
+rec {
+  inherit (pkgs.gtkLibs) gtk glib;
+
+  #### CORE
+
+  libxfce4util = callPackage ./core/libxfce4util.nix { };
+
+  exo = callPackage ./core/exo.nix {
+    inherit (pkgs.perlPackages) URI;
+  };
+
+  xfconf = callPackage ./core/xfconf.nix { };
+  
+  libxfcegui4 = callPackage ./core/libxfcegui4.nix {
+    inherit (pkgs.gnome) libglade;
+  };
+
+  libxfce4ui = callPackage ./core/libxfce4ui.nix { };
+
+  xfwm4 = callPackage ./core/xfwm4.nix {
+    inherit (pkgs.gnome) libwnck;
+  };
+
+  xfceutils = callPackage ./core/xfce-utils.nix { };
+
+  garcon = callPackage ./core/garcon.nix { };
+
+  xfce4panel = callPackage ./core/xfce4-panel.nix {
+    inherit (pkgs.gnome) libwnck;
+  };
+
+  xfce4session = callPackage ./core/xfce4-session.nix {
+    inherit (pkgs.gnome) libwnck;
+  };
+
+  xfce4settings = callPackage ./core/xfce4-settings.nix { };
+
+  xfdesktop = callPackage ./core/xfdesktop.nix {
+    inherit (pkgs.gnome) libwnck;
+  };
+
+  thunar = callPackage ./core/thunar.nix { };
+
+  gtk_xfce_engine = callPackage ./core/gtk-xfce-engine.nix { };
+
+  # !!! Add xfce4-appfinder
+
+  #### APPLICATIONS
+  
+  terminal = callPackage ./applications/terminal.nix {
+    inherit (pkgs.gnome) vte;
+  };
+
+  mousepad = callPackage ./applications/mousepad.nix { };
+
+  ristretto = callPackage ./applications/ristretto.nix { };
+
+  xfce4_power_manager = callPackage ./applications/xfce4-power-manager.nix { };
+
+  xfce4mixer = callPackage ./applications/xfce4-mixer.nix { };
+
+  #### ART
+
+  xfce4icontheme = callPackage ./art/xfce4-icon-theme.nix { };
+  
+}