From 6473176133c37cb8521e889f9be2262ffcaf2ea3 Mon Sep 17 00:00:00 2001 From: "Yury G. Kudryashov" Date: Sun, 29 Aug 2010 21:20:38 +0000 Subject: [PATCH] Split kdeutils, adopt kdePackage Also migrate existing kdePackage users to new API svn path=/nixpkgs/trunk/; revision=23525 --- .../kde-4.5/accessibility/default.nix | 11 +-- pkgs/desktops/kde-4.5/admin/default.nix | 10 ++- pkgs/desktops/kde-4.5/artwork/default.nix | 10 ++- .../desktops/kde-4.5/base-runtime/default.nix | 10 ++- .../kde-4.5/base-workspace/default.nix | 10 ++- pkgs/desktops/kde-4.5/base/default.nix | 11 +-- pkgs/desktops/kde-4.5/bindings/default.nix | 13 ++-- pkgs/desktops/kde-4.5/default.nix | 20 ++++- pkgs/desktops/kde-4.5/edu/default.nix | 10 ++- pkgs/desktops/kde-4.5/games/default.nix | 10 ++- pkgs/desktops/kde-4.5/graphics/default.nix | 10 ++- pkgs/desktops/kde-4.5/kde-package/default.nix | 77 +++++++++++++++---- pkgs/desktops/kde-4.5/libs/default.nix | 20 ++--- pkgs/desktops/kde-4.5/multimedia/default.nix | 10 ++- pkgs/desktops/kde-4.5/network/default.nix | 10 ++- pkgs/desktops/kde-4.5/pim-runtime/default.nix | 12 +-- pkgs/desktops/kde-4.5/pimlibs/default.nix | 10 ++- .../kde-4.5/plasma-addons/default.nix | 10 ++- pkgs/desktops/kde-4.5/sdk/default.nix | 10 ++- .../kde-4.5/support/oxygen-icons/default.nix | 11 +-- .../kde-4.5/support/polkit-qt-1/default.nix | 15 ++-- pkgs/desktops/kde-4.5/toys/default.nix | 10 ++- pkgs/desktops/kde-4.5/utils/ark.nix | 20 +++++ pkgs/desktops/kde-4.5/utils/default.nix | 44 +++++------ pkgs/desktops/kde-4.5/utils/kcalc.nix | 15 ++++ pkgs/desktops/kde-4.5/utils/kcharselect.nix | 15 ++++ pkgs/desktops/kde-4.5/utils/kdf.nix | 15 ++++ pkgs/desktops/kde-4.5/utils/kfloppy.nix | 15 ++++ pkgs/desktops/kde-4.5/utils/kgpg.nix | 15 ++++ .../desktops/kde-4.5/utils/kremotecontrol.nix | 15 ++++ pkgs/desktops/kde-4.5/utils/ktimer.nix | 15 ++++ pkgs/desktops/kde-4.5/utils/kwallet.nix | 15 ++++ pkgs/desktops/kde-4.5/utils/okteta.nix | 15 ++++ .../desktops/kde-4.5/utils/printer-applet.nix | 21 +++++ pkgs/desktops/kde-4.5/utils/superkaramba.nix | 17 ++++ pkgs/desktops/kde-4.5/utils/sweeper.nix | 15 ++++ pkgs/desktops/kde-4.5/webdev/default.nix | 10 ++- 37 files changed, 444 insertions(+), 138 deletions(-) create mode 100644 pkgs/desktops/kde-4.5/utils/ark.nix create mode 100644 pkgs/desktops/kde-4.5/utils/kcalc.nix create mode 100644 pkgs/desktops/kde-4.5/utils/kcharselect.nix create mode 100644 pkgs/desktops/kde-4.5/utils/kdf.nix create mode 100644 pkgs/desktops/kde-4.5/utils/kfloppy.nix create mode 100644 pkgs/desktops/kde-4.5/utils/kgpg.nix create mode 100644 pkgs/desktops/kde-4.5/utils/kremotecontrol.nix create mode 100644 pkgs/desktops/kde-4.5/utils/ktimer.nix create mode 100644 pkgs/desktops/kde-4.5/utils/kwallet.nix create mode 100644 pkgs/desktops/kde-4.5/utils/okteta.nix create mode 100644 pkgs/desktops/kde-4.5/utils/printer-applet.nix create mode 100644 pkgs/desktops/kde-4.5/utils/superkaramba.nix create mode 100644 pkgs/desktops/kde-4.5/utils/sweeper.nix diff --git a/pkgs/desktops/kde-4.5/accessibility/default.nix b/pkgs/desktops/kde-4.5/accessibility/default.nix index 048111389bf5..3e4c65a1922f 100644 --- a/pkgs/desktops/kde-4.5/accessibility/default.nix +++ b/pkgs/desktops/kde-4.5/accessibility/default.nix @@ -1,14 +1,15 @@ -{kdePackage, cmake, qt4, perl, alsaLib, libXi, libXtst, kdelibs, automoc4 }: - -kdePackage { - pn = "kdeaccessibility"; - v = "4.5.0"; +{kde, cmake, qt4, perl, alsaLib, libXi, libXtst, kdelibs, automoc4 }: +kde.package { # TODO: speech dispatcher and/or freetts buildInputs = [ cmake qt4 perl alsaLib libXi libXtst kdelibs automoc4 ]; meta = { description = "KDE accessibility tools"; license = "GPL"; + kde = { + name = "kdeaccessibility"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/admin/default.nix b/pkgs/desktops/kde-4.5/admin/default.nix index 61f5b018a7b1..cd360e4dab11 100644 --- a/pkgs/desktops/kde-4.5/admin/default.nix +++ b/pkgs/desktops/kde-4.5/admin/default.nix @@ -1,10 +1,8 @@ -{ kdePackage, cmake, qt4, pkgconfig, perl, python +{ kde, cmake, qt4, pkgconfig, perl, python , sip, pyqt4, pycups, rhpl, system_config_printer , kdelibs, kdepimlibs, kdebindings, automoc4}: -kdePackage { - pn = "kdeadmin"; - v = "4.5.0"; +kde.package { builder = ./builder.sh; @@ -18,5 +16,9 @@ kdePackage { meta = { description = "KDE Administration Utilities"; license = "GPL"; + kde = { + name = "kdeadmin"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/artwork/default.nix b/pkgs/desktops/kde-4.5/artwork/default.nix index ca036322f489..15fbb4b202a5 100644 --- a/pkgs/desktops/kde-4.5/artwork/default.nix +++ b/pkgs/desktops/kde-4.5/artwork/default.nix @@ -1,9 +1,7 @@ -{ kdePackage, cmake, qt4, perl, xscreensaver +{ kde, cmake, qt4, perl, xscreensaver , kdelibs, kdebase_workspace, automoc4, strigi, eigen}: -kdePackage { - pn = "kdeartwork"; - v = "4.5.0"; +kde.package { buildInputs = [ cmake qt4 perl xscreensaver kdelibs kdebase_workspace automoc4 strigi eigen ]; @@ -16,5 +14,9 @@ kdePackage { description = "KDE artwork"; longDescription = "Contains various artwork for KDE such as backgrounds, icons and screensavers"; license = "LGPL"; + kde = { + name = "kdeartwork"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/base-runtime/default.nix b/pkgs/desktops/kde-4.5/base-runtime/default.nix index c4a3b9bd6f79..95e15a760617 100644 --- a/pkgs/desktops/kde-4.5/base-runtime/default.nix +++ b/pkgs/desktops/kde-4.5/base-runtime/default.nix @@ -1,10 +1,8 @@ -{ kdePackage, cmake, perl, bzip2, xz, qt4, alsaLib, xineLib, samba, +{ kde, cmake, perl, bzip2, xz, qt4, alsaLib, xineLib, samba, shared_mime_info, exiv2, libssh , kdelibs, automoc4, strigi, soprano, cluceneCore, attica, virtuoso, makeWrapper, oxygen_icons }: -kdePackage { - pn = "kdebase-runtime"; - v = "4.5.0"; +kde.package { buildInputs = [ cmake perl bzip2 xz qt4 alsaLib xineLib samba shared_mime_info exiv2 libssh kdelibs automoc4 strigi soprano cluceneCore attica @@ -24,5 +22,9 @@ kdePackage { description = "KDE runtime"; longDescription = "Libraries and tools which supports running KDE desktop applications"; license = "LGPL"; + kde = { + name = "kdebase-runtime"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/base-workspace/default.nix b/pkgs/desktops/kde-4.5/base-workspace/default.nix index d861d8f1ea8d..169eb87f9531 100644 --- a/pkgs/desktops/kde-4.5/base-workspace/default.nix +++ b/pkgs/desktops/kde-4.5/base-workspace/default.nix @@ -1,4 +1,4 @@ -{ kdePackage, cmake, perl, python, pam, consolekit +{ 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 @@ -6,9 +6,7 @@ , libdbusmenu_qt, libqalculate, pciutils, libraw1394, bluez }: -kdePackage { - pn = "kdebase-workspace"; - v = "4.5.0"; +kde.package { # TODO: qedje, qzion, ggadgets, libgps buildInputs = [ cmake perl python qt4 pam consolekit sip pyqt4 kdelibs libXtst @@ -21,5 +19,9 @@ kdePackage { description = "KDE Workspace"; longDescription = "KDE base components that are only required to work with X11 such KDM and KWin"; license = "GPL"; + kde = { + name = "kdebase-workspace"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/base/default.nix b/pkgs/desktops/kde-4.5/base/default.nix index 02c38bacedef..bb3518fe3003 100644 --- a/pkgs/desktops/kde-4.5/base/default.nix +++ b/pkgs/desktops/kde-4.5/base/default.nix @@ -1,10 +1,7 @@ -{ kdePackage, cmake, perl, qt4, kdelibs, pciutils, libraw1394 +{ kde, cmake, perl, qt4, kdelibs, pciutils, libraw1394 , automoc4, strigi, qimageblitz, soprano}: -kdePackage { - pn = "kdebase"; - v = "4.5.0"; - +kde.package { preConfigure = "cd apps"; buildInputs = [ cmake perl qt4 kdelibs pciutils libraw1394 automoc4 @@ -14,5 +11,9 @@ kdePackage { description = "KDE Base components"; longDescription = "Applications that form the KDE desktop, like Plasma, System Settings, Konqueror, Dolphin, Kate, and Konsole"; license = "GPL"; + kde = { + name = "kdebase"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/bindings/default.nix b/pkgs/desktops/kde-4.5/bindings/default.nix index 232dcaa2b128..4d0567a2d4c1 100644 --- a/pkgs/desktops/kde-4.5/bindings/default.nix +++ b/pkgs/desktops/kde-4.5/bindings/default.nix @@ -1,21 +1,18 @@ -{ kdePackage, lib, cmake, perl, python, sip, pyqt4, zlib, libpng, freetype, fontconfig, qt4, boost +{ 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. -kdePackage rec { - pn = "kdebindings"; - v = "4.5.0"; - +kde.package rec { patches = [ ./python-site-packages-install-dir.diff ]; 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=( + 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 @@ -31,6 +28,10 @@ kdePackage rec { description = "KDE bindings"; longDescription = "Provides KDE bindings for several languages such as Java, Smoke and Python"; license = "LGPL"; + kde = { + name = "kdebindings"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/default.nix b/pkgs/desktops/kde-4.5/default.nix index 1d2abb5284a2..116801495cc0 100644 --- a/pkgs/desktops/kde-4.5/default.nix +++ b/pkgs/desktops/kde-4.5/default.nix @@ -3,11 +3,13 @@ { recurseForRelease = true; + inherit callPackage; + qt4 = qt47; phonon = null; - kdePackage = import ./kde-package { + kde = import ./kde-package { inherit stdenv fetchurl; }; @@ -58,7 +60,21 @@ kdeplasma_addons = callPackage ./plasma-addons { }; kdesdk = callPackage ./sdk { }; kdetoys = callPackage ./toys { }; - kdeutils = callPackage ./utils { }; + + 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 = callPackage ./webdev { }; #kdepim_runtime = callPackage ../kde-4.4/pim-runtime { }; diff --git a/pkgs/desktops/kde-4.5/edu/default.nix b/pkgs/desktops/kde-4.5/edu/default.nix index 2b9fe044dfd2..8fa979be78fd 100644 --- a/pkgs/desktops/kde-4.5/edu/default.nix +++ b/pkgs/desktops/kde-4.5/edu/default.nix @@ -1,10 +1,8 @@ -{ kdePackage, cmake, qt4, perl, libxml2, libxslt, openbabel, boost, readline, gmm, gsl +{ kde, cmake, qt4, perl, libxml2, libxslt, openbabel, boost, readline, gmm, gsl , xplanet, libspectre, pkgconfig, libqalculate , kdelibs, automoc4, eigen, attica}: -kdePackage { - pn = "kdeedu"; - v = "4.5.0"; +kde.package { #TODO: #* Boost.Python (1.31 or higher) - fails to find @@ -23,5 +21,9 @@ kdePackage { meta = { description = "KDE Educative software"; license = "GPL"; + kde = { + name = "kdeedu"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/games/default.nix b/pkgs/desktops/kde-4.5/games/default.nix index 662813ce86e0..a770612c4785 100644 --- a/pkgs/desktops/kde-4.5/games/default.nix +++ b/pkgs/desktops/kde-4.5/games/default.nix @@ -1,9 +1,7 @@ -{kdePackage, cmake, qt4, perl, shared_mime_info, kdelibs, automoc4, qca2 +{kde, cmake, qt4, perl, shared_mime_info, kdelibs, automoc4, qca2 , kdebindings, twisted, python, pyqt4, sip, makeWrapper }: -kdePackage { - pn = "kdegames"; - v = "4.5.0"; +kde.package { # TODO: ggz buildInputs = [ cmake qt4 perl shared_mime_info kdelibs automoc4 qca2 @@ -16,5 +14,9 @@ kdePackage { meta = { description = "KDE Games"; license = "GPL"; + kde = { + name = "kdegames"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/graphics/default.nix b/pkgs/desktops/kde-4.5/graphics/default.nix index 555f5ef32e3e..6a69641b3bd0 100644 --- a/pkgs/desktops/kde-4.5/graphics/default.nix +++ b/pkgs/desktops/kde-4.5/graphics/default.nix @@ -1,10 +1,8 @@ -{ kdePackage, cmake, lib, perl, qt4, exiv2, lcms, saneBackends, libgphoto2 +{ 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 }: -kdePackage { - pn = "kdegraphics"; - v = "4.5.0"; +kde.package { buildInputs = [ cmake perl qt4 exiv2 lcms saneBackends libgphoto2 libspectre (popplerQt4.override { inherit qt4; }) chmlib shared_mime_info libXxf86vm @@ -17,5 +15,9 @@ kdePackage { Okular document reader. ''; license = "GPL"; + kde = { + name = "kdegraphics"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/kde-package/default.nix b/pkgs/desktops/kde-4.5/kde-package/default.nix index 9e1ef5006fd2..9e20b983e194 100644 --- a/pkgs/desktops/kde-4.5/kde-package/default.nix +++ b/pkgs/desktops/kde-4.5/kde-package/default.nix @@ -1,21 +1,64 @@ { stdenv, fetchurl }: -let +rec { manifest = import ./manifest.nix; -in -a@{ pn, v, stable ? true, subdir ? null, ... }: -stdenv.mkDerivation ({ - name = "${pn}-${v}"; - src = fetchurl { - url = "mirror://kde/" + (if stable then "" else "un") + "stable/" + - (if subdir == null then "${v}/src" else subdir) + "/${pn}-${v}.tar.bz2"; - sha256 = builtins.getAttr "${pn}-${v}.tar.bz2" manifest; - }; - meta = { - maintainers = with stdenv.lib.maintainers; [ sander urkud ]; - platforms = stdenv.lib.platforms.linux; - inherit stable; - homepage = http://www.kde.org; - } // ( if a ? meta then a.meta else { } ); -} // (removeAttrs a [ "meta" "pn" "v" "stable" "subdir" ])) + kdeSrc = { stable ? true, subdir ? null, module, release, sha256 ? null } : + fetchurl { + url = "mirror://kde/" + (if stable then "" else "un") + "stable/" + + (if subdir == null then "${release}/src" else subdir) + + "/${module}-${release}.tar.bz2"; + sha256 = + if sha256 != null then sha256 + else builtins.getAttr "${module}-${release}.tar.bz2" manifest; + }; + + defaultArgs = {name, stable ? true, subdir ? null, version, + module ? name, release ? version, ... }: + + assert (name == module) -> (release == version); + + ( + { + name = "${name}-${version}"; + + src = kdeSrc { inherit stable subdir module release; }; + + meta = { + maintainers = with stdenv.lib.maintainers; [ sander urkud ]; + platforms = stdenv.lib.platforms.linux; + homepage = if name == module + then http://www.kde.org + else assert builtins.substring 0 3 module == "kde"; + "http://" + + builtins.substring 3 + (builtins.sub (builtins.stringLength module) 3) module + + ".kde.org/projects/${name}"; + }; + } // (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.5/libs/default.nix b/pkgs/desktops/kde-4.5/libs/default.nix index 959a0eddd666..b5f1a6e3758f 100644 --- a/pkgs/desktops/kde-4.5/libs/default.nix +++ b/pkgs/desktops/kde-4.5/libs/default.nix @@ -1,13 +1,11 @@ -{ kdePackage, gcc, cmake, perl +{ 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 }: -kdePackage { - pn = "kdelibs"; - v = "4.5.0"; +kde.package { buildInputs = [ cmake perl qt4 xz flex bison bzip2 pcre fam libxml2 libxslt @@ -22,14 +20,18 @@ kdePackage { # 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" - ]; + 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"; + kde = { + name = "kdelibs"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/multimedia/default.nix b/pkgs/desktops/kde-4.5/multimedia/default.nix index 9a020970c5d0..888dc3812de8 100644 --- a/pkgs/desktops/kde-4.5/multimedia/default.nix +++ b/pkgs/desktops/kde-4.5/multimedia/default.nix @@ -1,9 +1,7 @@ -{ kdePackage, cmake, perl, qt4, alsaLib, libvorbis, xineLib, taglib, flac, +{ kde, cmake, perl, qt4, alsaLib, libvorbis, xineLib, taglib, flac, cdparanoia, lame , kdelibs, automoc4, ffmpeg}: -kdePackage { - pn = "kdemultimedia"; - v = "4.5.0"; +kde.package { buildInputs = [ cmake perl qt4 alsaLib libvorbis xineLib flac taglib cdparanoia lame kdelibs automoc4 ffmpeg ]; @@ -14,5 +12,9 @@ kdePackage { Contains various Multimedia utilties for KDE such as a movie player and sound volume mixer. ''; license = "GPL"; + kde = { + name = "kdemultimedia"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/network/default.nix b/pkgs/desktops/kde-4.5/network/default.nix index e7e4a8cd5616..4bbdf50dd553 100644 --- a/pkgs/desktops/kde-4.5/network/default.nix +++ b/pkgs/desktops/kde-4.5/network/default.nix @@ -1,12 +1,10 @@ -{ kdePackage, cmake, qt4, perl, speex, gmp, libxml2, libxslt, sqlite, alsaLib, libidn +{ 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}: -kdePackage { - pn = "kdenetwork"; - v = "4.5.0"; +kde.package { buildInputs = [ cmake qt4 perl speex gmp libxml2 libxslt sqlite alsaLib libidn libvncserver libmsn giflib gpgme boost libv4l libotr libXi libXtst @@ -30,5 +28,9 @@ kdePackage { description = "KDE network utilities"; longDescription = "Various network utilities for KDE such as a messenger client and network configuration interface"; license = "GPL"; + kde = { + name = "kdenetwork"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/pim-runtime/default.nix b/pkgs/desktops/kde-4.5/pim-runtime/default.nix index 2d1787f62a75..f4f0aac0a793 100644 --- a/pkgs/desktops/kde-4.5/pim-runtime/default.nix +++ b/pkgs/desktops/kde-4.5/pim-runtime/default.nix @@ -1,14 +1,16 @@ -{ kdePackage, cmake, kdelibs, qt4, kdepimlibs, akonadi, pkgconfig, boost, shared_mime_info, libxml2, shared_desktop_ontologies, soprano, strigi, automoc4, libxslt }: +{ kde, cmake, kdelibs, qt4, kdepimlibs, akonadi, pkgconfig, boost, shared_mime_info, libxml2, shared_desktop_ontologies, soprano, strigi, automoc4, libxslt }: -kdePackage rec { - pn = "kdepim-runtime"; - v = "4.4.92"; +kde.package rec { stable = false; - subdir = "kdepim/${v}/src"; + subdir = "kdepim/${meta.kde.version}/src"; buildInputs = [ automoc4 cmake kdelibs qt4 kdepimlibs akonadi pkgconfig boost shared_mime_info shared_desktop_ontologies libxml2 soprano strigi libxslt ]; meta = { description = "Runtime files for KDE PIM: akonadi agents etc."; + kde = { + name = "kdepim-runtime"; + version = "4.4.92"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/pimlibs/default.nix b/pkgs/desktops/kde-4.5/pimlibs/default.nix index b548ad66ecda..55a5ef29adf4 100644 --- a/pkgs/desktops/kde-4.5/pimlibs/default.nix +++ b/pkgs/desktops/kde-4.5/pimlibs/default.nix @@ -1,9 +1,7 @@ -{ kdePackage, cmake, qt4, perl, boost, cyrus_sasl, gpgme, libical, openldap, shared_mime_info +{ kde, cmake, qt4, perl, boost, cyrus_sasl, gpgme, libical, openldap, shared_mime_info , kdelibs, automoc4, akonadi, soprano}: -kdePackage { - pn = "kdepimlibs"; - v = "4.5.0"; +kde.package { buildInputs = [ cmake qt4 perl boost cyrus_sasl gpgme libical openldap shared_mime_info kdelibs automoc4 akonadi soprano ]; @@ -11,5 +9,9 @@ kdePackage { meta = { description = "KDE PIM libraries"; license = "LGPL"; + kde = { + name = "kdepimlibs"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/plasma-addons/default.nix b/pkgs/desktops/kde-4.5/plasma-addons/default.nix index b6a2182c2e2c..494fd0aa7648 100644 --- a/pkgs/desktops/kde-4.5/plasma-addons/default.nix +++ b/pkgs/desktops/kde-4.5/plasma-addons/default.nix @@ -1,11 +1,9 @@ -{ kdePackage, cmake, qt4, perl, automoc4, kdelibs, soprano, kdeedu +{ 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!! -kdePackage { - pn = "kdeplasma-addons"; - v = "4.5.0"; +kde.package { buildInputs = [ cmake qt4 perl automoc4 kdelibs boost eigen kdebase_workspace attica python qca2 qimageblitz shared_mime_info kdepimlibs kdegraphics @@ -14,5 +12,9 @@ kdePackage { meta = { description = "KDE Plasma Addons"; license = "GPL"; + kde = { + name = "kdeplasma-addons"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/sdk/default.nix b/pkgs/desktops/kde-4.5/sdk/default.nix index b03a1d88595d..8b07442d9d95 100644 --- a/pkgs/desktops/kde-4.5/sdk/default.nix +++ b/pkgs/desktops/kde-4.5/sdk/default.nix @@ -1,10 +1,8 @@ -{ kdePackage, binutils, cmake, qt4, perl, libxml2, libxslt, boost, subversion, apr, +{ kde, binutils, cmake, qt4, perl, libxml2, libxslt, boost, subversion, apr, aprutil , shared_mime_info, hunspell , kdelibs, kdepimlibs, automoc4, kdebindings, strigi, kdebase, libtool, antlr}: -kdePackage { - pn = "kdesdk"; - v = "4.5.0"; +kde.package { buildInputs = [ cmake qt4 perl libxml2 libxslt boost subversion aprutil apr shared_mime_info kdelibs kdepimlibs automoc4 strigi hunspell kdebindings @@ -17,5 +15,9 @@ kdePackage { description = "KDE SDK"; longDescription = "Contains various development utilities such as the Umbrello UML modeler and Cerivisia CVS front-end"; license = "GPL"; + kde = { + name = "kdesdk"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/support/oxygen-icons/default.nix b/pkgs/desktops/kde-4.5/support/oxygen-icons/default.nix index ffd7fb819e8b..07bec190eb2a 100644 --- a/pkgs/desktops/kde-4.5/support/oxygen-icons/default.nix +++ b/pkgs/desktops/kde-4.5/support/oxygen-icons/default.nix @@ -1,9 +1,6 @@ -{kdePackage, cmake}: - -kdePackage { - pn = "oxygen-icons"; - v = "4.5.0"; +{kde, cmake}: +kde.package { outputHashAlgo = "sha256"; outputHashMode = "recursive"; outputHash = "1fil2rbvy4j47gqpn4xcjvjwxy4yq5mvpwcd5lhp8fdzgsc0jmdn"; @@ -13,5 +10,9 @@ kdePackage { 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 = { + name = "oxygen-icons"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/support/polkit-qt-1/default.nix b/pkgs/desktops/kde-4.5/support/polkit-qt-1/default.nix index 6d0de5983133..17d8b1363ace 100644 --- a/pkgs/desktops/kde-4.5/support/polkit-qt-1/default.nix +++ b/pkgs/desktops/kde-4.5/support/polkit-qt-1/default.nix @@ -1,10 +1,13 @@ -{ kdePackage, cmake, qt4, pkgconfig, polkit, automoc4, glib }: - -kdePackage { - pn = "polkit-qt-1"; - v = "0.96.1"; - subdir = "apps/KDE4.x/admin"; +{ kde, cmake, qt4, pkgconfig, polkit, automoc4, glib }: +kde.package { buildInputs = [ cmake qt4 automoc4 ]; propagatedBuildInputs = [ polkit glib ]; + meta.kde = { + name = "polkit-qt-1"; + module = "polkit-qt-1"; + version = "0.96.1"; + release = "0.96.1"; + subdir = "apps/KDE4.x/admin"; + }; } diff --git a/pkgs/desktops/kde-4.5/toys/default.nix b/pkgs/desktops/kde-4.5/toys/default.nix index 179866005364..d3f9298c8778 100644 --- a/pkgs/desktops/kde-4.5/toys/default.nix +++ b/pkgs/desktops/kde-4.5/toys/default.nix @@ -1,12 +1,14 @@ -{kdePackage, cmake, qt4, perl, kdelibs, kdebase_workspace, automoc4}: +{kde, cmake, qt4, perl, kdelibs, kdebase_workspace, automoc4}: -kdePackage { - pn = "kdetoys"; - v = "4.5.0"; +kde.package { buildInputs = [ cmake qt4 perl kdelibs kdebase_workspace automoc4 ]; meta = { description = "KDE Toys"; license = "GPL"; + kde = { + name = "kdetoys"; + version = "4.5.0"; + }; }; } diff --git a/pkgs/desktops/kde-4.5/utils/ark.nix b/pkgs/desktops/kde-4.5/utils/ark.nix new file mode 100644 index 000000000000..eaddd0a51ca6 --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/ark.nix @@ -0,0 +1,20 @@ +{ 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.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/default.nix b/pkgs/desktops/kde-4.5/utils/default.nix index fb038179dafc..57ec64c2458c 100644 --- a/pkgs/desktops/kde-4.5/utils/default.nix +++ b/pkgs/desktops/kde-4.5/utils/default.nix @@ -1,28 +1,28 @@ -{ kdePackage, cmake, qt4, perl, gmp, python, libzip, libarchive, xz +{ stdenv, fetchurl, cmake, qt4, perl, gmp, python, libarchive, xz , sip, pyqt4, pycups, rhpl, system_config_printer, qjson, shared_mime_info , kdebase_workspace , kdelibs, kdepimlibs, kdebase, kdebindings, automoc4, qimageblitz, qca2}: -kdePackage { - pn = "kdeutils"; - v = "4.5.0"; - - postPatch = '' - cp -vn ${qjson}/share/apps/cmake/modules/FindQJSON.cmake cmake/modules - sed -e "s@/usr\(/share/system-config-printer\)@${system_config_printer}\1@" -i \ - printer-applet/cmake-modules/FindSystemConfigPrinter.py \ - printer-applet/printer-applet.py - sed -i -e "s|import cupshelpers.ppds, cupshelpers.cupshelpers|import ppds, cupshelpers|" printer-applet/cmake-modules/FindSystemConfigPrinter.py - ''; - - buildInputs = [ cmake qt4 perl gmp python libzip libarchive xz sip pyqt4 - pycups rhpl system_config_printer kdelibs kdepimlibs kdebase kdebindings - automoc4 qimageblitz qca2 qjson shared_mime_info kdebase_workspace ]; - - patches = [ ./log-feature.diff ]; - - meta = { - description = "KDE Utilities"; - license = "GPL"; +let + src = fetchurl { + url = mirror://kde/stable/src/kdeutils-4.5.0.tar.bz2; + sha256 = "1x4dwc193gsfcnryhkv2v3xafjr1a87ls0zfi56i1w2aj38b36l7"; }; +in +{ + ark = kdeSplitPackage + { + name = "ark-2.15"; + + inherit src; + + patchPhase = "cp -vn ${qjson}/share/apps/cmake/modules/FindQJSON.cmake cmake/modules"; + + buildInputs = [ cmake qt4 perl libarchive xz kdelibs automoc4 qjson + kdebase # for libkonq + ]; + + cmakeFlags = "-DDISABLE_ALL_OPTIONAL_SUBDIRECTORIES=TRUE -DBUILD_doc=TRUE -DBUILD_ark=TRUE"; +} + kcalc = callPackage ./kcalc.nix { inherit src; }; } diff --git a/pkgs/desktops/kde-4.5/utils/kcalc.nix b/pkgs/desktops/kde-4.5/utils/kcalc.nix new file mode 100644 index 000000000000..cc4c2d8e8d83 --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/kcalc.nix @@ -0,0 +1,15 @@ +{ 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.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/kcharselect.nix b/pkgs/desktops/kde-4.5/utils/kcharselect.nix new file mode 100644 index 000000000000..86a492876065 --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/kcharselect.nix @@ -0,0 +1,15 @@ +{ 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.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/kdf.nix b/pkgs/desktops/kde-4.5/utils/kdf.nix new file mode 100644 index 000000000000..78c4d6ef6e50 --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/kdf.nix @@ -0,0 +1,15 @@ +{ 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.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/kfloppy.nix b/pkgs/desktops/kde-4.5/utils/kfloppy.nix new file mode 100644 index 000000000000..9a165262000b --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/kfloppy.nix @@ -0,0 +1,15 @@ +{ 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.0"; + release = "4.5.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/kgpg.nix b/pkgs/desktops/kde-4.5/utils/kgpg.nix new file mode 100644 index 000000000000..fc233e62a9ac --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/kgpg.nix @@ -0,0 +1,15 @@ +{ 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.0"; + release = "4.5.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/kremotecontrol.nix b/pkgs/desktops/kde-4.5/utils/kremotecontrol.nix new file mode 100644 index 000000000000..9a2101934ec7 --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/kremotecontrol.nix @@ -0,0 +1,15 @@ +{ kde, cmake, kdelibs, qt4, perl, automoc4, kdebase_workspace }: + +kde.package { + buildInputs = [ cmake qt4 perl kdelibs automoc4 kdebase_workspace ]; + + meta = { + description = ""; + kde = { + name = "kremotecontrol"; + module = "kdeutils"; + version = "4.5.0"; + release = "4.5.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/ktimer.nix b/pkgs/desktops/kde-4.5/utils/ktimer.nix new file mode 100644 index 000000000000..89a184ba648f --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/ktimer.nix @@ -0,0 +1,15 @@ +{ 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.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/kwallet.nix b/pkgs/desktops/kde-4.5/utils/kwallet.nix new file mode 100644 index 000000000000..6c1d8735611a --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/kwallet.nix @@ -0,0 +1,15 @@ +{ 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.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/okteta.nix b/pkgs/desktops/kde-4.5/utils/okteta.nix new file mode 100644 index 000000000000..c00ab9b13ba8 --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/okteta.nix @@ -0,0 +1,15 @@ +{ 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.0"; + release = "4.5.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/printer-applet.nix b/pkgs/desktops/kde-4.5/utils/printer-applet.nix new file mode 100644 index 000000000000..ec4ee9702400 --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/printer-applet.nix @@ -0,0 +1,21 @@ +{ 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.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/superkaramba.nix b/pkgs/desktops/kde-4.5/utils/superkaramba.nix new file mode 100644 index 000000000000..fd69c83ca3c0 --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/superkaramba.nix @@ -0,0 +1,17 @@ +{ 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.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/utils/sweeper.nix b/pkgs/desktops/kde-4.5/utils/sweeper.nix new file mode 100644 index 000000000000..9c97477161d3 --- /dev/null +++ b/pkgs/desktops/kde-4.5/utils/sweeper.nix @@ -0,0 +1,15 @@ +{ 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.0"; + }; + }; +} diff --git a/pkgs/desktops/kde-4.5/webdev/default.nix b/pkgs/desktops/kde-4.5/webdev/default.nix index 24d1f49bd6c1..db55fd84323a 100644 --- a/pkgs/desktops/kde-4.5/webdev/default.nix +++ b/pkgs/desktops/kde-4.5/webdev/default.nix @@ -1,14 +1,16 @@ -{ kdePackage, cmake, qt4, perl, libxml2, libxslt, boost +{ kde, cmake, qt4, perl, libxml2, libxslt, boost , kdelibs, kdepimlibs, automoc4, ruby, htmlTidy, zlib }: -kdePackage { - pn = "kdewebdev"; - v = "4.5.0"; +kde.package { buildInputs = [ cmake qt4 perl libxml2 libxslt boost kdelibs kdepimlibs automoc4 htmlTidy ruby zlib ]; meta = { description = "KDE Web development utilities"; license = "GPL"; + kde = { + name = "kdewebdev"; + version = "4.5.0"; + }; }; }