diff options
author | Thomas Tuegel <ttuegel@gmail.com> | 2015-06-18 14:25:51 -0500 |
---|---|---|
committer | Thomas Tuegel <ttuegel@gmail.com> | 2015-06-25 09:03:40 -0500 |
commit | 8862d8d9c98cf4d8ee66f8bf94f51294af74090d (patch) | |
tree | 8f746e374fae79f9db6c358aa63ea0c95aa0b2c1 | |
parent | 0aa8e649673d802f8c315b88254812bf826ec672 (diff) | |
download | nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar.gz nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar.bz2 nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar.lz nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar.xz nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.tar.zst nixlib-8862d8d9c98cf4d8ee66f8bf94f51294af74090d.zip |
autonix: JSON manifest format
-rw-r--r-- | pkgs/applications/kde-apps-15.04/default.nix | 510 | ||||
-rw-r--r-- | pkgs/applications/kde-apps-15.04/setup-hook.sh | 11 | ||||
-rw-r--r-- | pkgs/build-support/autonix/default.nix | 323 | ||||
-rw-r--r-- | pkgs/desktops/plasma-5.3/default.nix | 76 | ||||
-rw-r--r-- | pkgs/development/libraries/kde-frameworks-5.10/default.nix | 116 | ||||
-rw-r--r-- | pkgs/top-level/all-packages.nix | 8 |
6 files changed, 518 insertions, 526 deletions
diff --git a/pkgs/applications/kde-apps-15.04/default.nix b/pkgs/applications/kde-apps-15.04/default.nix index e325c5ccfc22..7910046d774e 100644 --- a/pkgs/applications/kde-apps-15.04/default.nix +++ b/pkgs/applications/kde-apps-15.04/default.nix @@ -12,23 +12,23 @@ # make a copy of this directory first. After copying, be sure to delete ./tmp # if it exists. Then follow the minor update instructions. -{ autonix, symlinkJoin, kde4, kf5, pkgs, qt4, qt5, stdenv, newScope, debug ? false }: +{ pkgs, newScope, kf5 ? null, plasma5 ? null, qt5 ? null, debug ? false }: -with autonix; +let inherit (pkgs) autonix kde4 stdenv symlinkJoin; in -let inherit (stdenv) lib; in - -let kf5Orig = kf5; in +with autonix; let inherit (stdenv) lib; in let + kf5_ = if kf5 != null then kf5 else pkgs.kf510; + plasma5_ = if plasma5 != null then plasma5 else pkgs.plasma53; + qt5_ = if qt5 != null then qt5 else pkgs.qt54; +in - kf5 = kf5Orig.override { inherit debug qt5; }; +let - kdePackage = pkg: - (kf5.kdePackage pkg).override { - inherit (stdenv) mkDerivation; - inherit scope; - }; + kf5 = kf5_.override { inherit debug qt5; }; + plasma5 = plasma5_.override { inherit debug kf5 qt5; }; + qt5 = qt5_; kdeOrL10nPackage = name: pkg: assert (builtins.isAttrs pkg); @@ -124,53 +124,58 @@ let (lib.mapAttrs mirrorUrl) ]; - overrideDerivation = pkg: f: - let mkDerivation = super: drv: super.mkDerivation (drv // f drv); - in pkg.override (super: super // { mkDerivation = mkDerivation super; }); + kde4Package = pkg: overrideScope pkg (with kde4; { + inherit akonadi baloo kactivities libkdegames libkmahjongg; + kde4 = self.kdelibs; + }); scope = + # KDE Frameworks 5 + kf5 // # packages in this collection self // { + kf5baloo = plasma5.baloo; + kf5kdcraw = self.libkdcraw; kf5kdegames = self.libkdegames; + kf5kipi = self.libkipi; libkonq = self.kde-baseapps; } // - # packages from KDE Frameworks 5 - kf5.scope // # packages requiring same Qt 5 (with pkgs; { accountsqt5 = accounts-qt.override { inherit qt5; }; dbusmenuqt = libdbusmenu_qt; grantlee5 = grantlee5.override { inherit qt5; }; mlt = pkgs.mlt-qt5.override { inherit qt5; }; + phonon4qt5 = pkgs.phonon_qt5.override { inherit qt5; }; qca-qt5 = qca-qt5.override { inherit qt5; }; + qt5script = qt5.script; + qt5x11extras = qt5.x11extras; signonqt5 = signon.override { inherit qt5; }; telepathyqt5 = telepathy_qt5.override { inherit qt5; }; }) // - # packages from KDE 4 - (with kde4; { - inherit akonadi baloo kactivities libkdegames libkmahjongg; - kde4 = self.kdelibs; - }) // # packages from nixpkgs (with pkgs; { - inherit acl attr automoc4 avahi bison cdparanoia cfitsio cups + inherit acl attr automoc4 avahi bison cdparanoia cfitsio cmake cups djvulibre docbook_xml_dtd_42 docbook_xsl enchant eigen2 exiv2 fam ffmpeg flac flex freetype gmp gettext gpgme grantlee gsl hunspell ilmbase intltool jasper lcms2 - libgcrypt libraw libssh libspectre libvncserver libical - networkmanager openal opencv openexr phonon pkgconfig - polkit_qt4 prison python qca2 qimageblitz qjson qt4 - samba saneBackends soprano - speechd strigi taglib udev xplanet xscreensaver xz; + libaccounts-glib libgcrypt libotr libraw libssh libspectre + libvncserver libical networkmanager openal opencv + openexr perl phonon pkgconfig polkit_qt4 prison python qca2 + qimageblitz qjson qt4 samba saneBackends soprano speechd + strigi taglib udev xlibs xplanet xscreensaver xz; alsa = alsaLib; assuan = libassuan; boost = boost156; canberra = libcanberra; + eigen3 = eigen; epub = ebook_tools; + gif = giflib; gphoto2 = libgphoto2; hupnp = herqq; indi = indilib; + jpeg = libjpeg; ldap = openldap; libattica = attica; musicbrainz3 = libmusicbrainz; @@ -180,6 +185,7 @@ let qalculate = libqalculate; sasl2 = cyrus_sasl; shareddesktopontologies = shared_desktop_ontologies; + sharedmimeinfo = shared_mime_info; sndfile = libsndfile; tiff = libtiff; telepathyqt4 = telepathy_qt; @@ -189,212 +195,330 @@ let }); self = - (builtins.removeAttrs super [ "artikulate" # build failure; wrong boost? + (builtins.removeAttrs super [ + "artikulate" # build failure; wrong boost? "kde-dev-scripts" "kde-dev-utils" # docbook errors "kdewebdev" # unknown build failure + "kde-l10n-sr" # missing CMake command ]) // { - inherit kdePackage qt5 scope; + audiocd-kio = kde4Package super.audiocd-kio; - ark = overrideDerivation super.ark (drv: { - buildInputs = (drv.buildInputs or []) ++ [ pkgs.makeWrapper ]; + amor = kde4Package super.amor; + + ark = extendDerivation (kde4Package super.ark) { + buildInputs = [ pkgs.makeWrapper ]; # runtime dependency - postInstall = (drv.postInstall or "") + '' + postInstall = '' wrapProgram $out/bin/ark --prefix PATH : "${pkgs.unzipNLS}/bin" ''; - }); + }; + + cervisia = kde4Package super.cervisia; + + dolphin-plugins = kde4Package super.dolphin-plugins; - ffmpegthumbs = overrideDerivation super.ffmpegthumbs (drv: { - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ]; - }); + dragon = kde4Package super.dragon; - kaccounts-providers = overrideDerivation super.kaccounts-providers (drv: { - buildInputs = (drv.buildInputs or []) ++ [ pkgs.libaccounts-glib ]; + ffmpegthumbs = extendDerivation (kde4Package super.ffmpegthumbs) { + nativeBuildInputs = [ scope.pkgconfig ]; + }; + + juk = kde4Package super.juk; + + jovie = kde4Package super.jovie; + + kaccessible = kde4Package super.kaccessible; + + kaccounts-providers = extendDerivation super.kaccounts-providers { + buildInputs = [ pkgs.libaccounts-glib ]; # hard-coded install path - preConfigure = (drv.preConfigure or "") + '' + preConfigure = '' substituteInPlace webkit-options/CMakeLists.txt \ --replace "/etc/signon-ui/webkit-options.d/" \ "$out/etc/signon-ui/webkit-options.d/" ''; - }); - - kalzium = overrideDerivation super.kalzium (drv: { - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ]; - }); - - kate = overrideDerivation super.kate (drv: { - buildInputs = - (drv.buildInputs or []) - ++ (with kf5; [ kconfig kguiaddons kiconthemes ki18n kinit kjobwidgets - kio kparts ktexteditor kwindowsystem kxmlgui ]); - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ ([ kf5.kdoctools ]); - }); - - /* - kde-baseapps = overrideDerivation super.kde-baseapps (drv: { - buildInputs = (drv.buildInputs or []) ++ [ scope.qt4 ]; - }); - */ - - kde-runtime = overrideDerivation super.kde-runtime (drv: { - buildInputs = (drv.buildInputs or []) ++ [ scope.canberra ]; - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ]; + }; + + kajongg = kde4Package super.kajongg; + + kalzium = extendDerivation (kde4Package super.kalzium) { + nativeBuildInputs = [ scope.pkgconfig ]; + }; + + kamera = kde4Package super.kamera; + + kate = extendDerivation super.kate { + buildInputs = with scope; [ + kconfig kguiaddons kiconthemes ki18n kinit kjobwidgets kio + kparts ktexteditor kwindowsystem kxmlgui + ]; + nativeBuildInputs = [ scope.kdoctools ]; + }; + + kcachegrind = kde4Package super.kcachegrind; + + kcolorchooser = kde4Package super.kcolorchooser; + + kde-base-artwork = kde4Package super.kde-base-artwork; + + kde-baseapps = kde4Package super.kde-baseapps; + + kde-runtime = extendDerivation (kde4Package super.kde-runtime) { + buildInputs = [ scope.canberra ]; + nativeBuildInputs = [ scope.pkgconfig ]; # cmake does not detect path to `ilmbase` - NIX_CFLAGS_COMPILE = - (drv.NIX_CFLAGS_COMPILE or "") + " -I${scope.ilmbase}/include/OpenEXR"; + NIX_CFLAGS_COMPILE = "-I${scope.ilmbase}/include/OpenEXR"; # some components of this package have been replaced in other packages meta = { priority = 10; }; - }); + }; + + kde-wallpapers = kde4Package super.kde-wallpapers; - kde-workspace = overrideDerivation super.kde-workspace (drv: { - buildInputs = - (drv.buildInputs or []) ++ - (with pkgs.xlibs; [ + kde-workspace = extendDerivation (kde4Package super.kde-workspace) { + buildInputs = with scope.xlibs; [ libxkbfile libXcomposite xcbutilimage xcbutilkeysyms xcbutilrenderutil - ]); - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ]; + ]; + nativeBuildInputs = [ scope.pkgconfig ]; # some components of this package have been replaced in other packages meta = { priority = 10; }; - }); + }; - kdelibs = overrideDerivation super.kdelibs (drv: { - buildInputs = - (drv.buildInputs or []) ++ (with scope; [ attr polkit_qt4 xsltproc xz ]); + kdeartwork = kde4Package super.kdeartwork; - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ]; + kdegraphics-mobipocket = kde4Package super.kdegraphics-mobipocket; - # cmake does not detect path to `ilmbase` - NIX_CFLAGS_COMPILE = - (drv.NIX_CFLAGS_COMPILE or "") + " -I${scope.ilmbase}/include/OpenEXR"; + kdegraphics-strigi-analyzer = kde4Package super.kdegraphics-strigi-analyzer; + + kdegraphics-thumbnailers = kde4Package super.kdegraphics-thumbnailers; - propagatedBuildInputs = - (drv.propagatedBuildInputs or []) - ++ (with scope; [ qt4 soprano phonon strigi ]); + kdelibs = extendDerivation super.kdelibs { + buildInputs = with scope; [ attr polkit_qt4 xsltproc xz ]; + propagatedBuildInputs = with scope; [ qt4 soprano phonon strigi ]; + nativeBuildInputs = [ scope.pkgconfig ]; + propagatedNativeBuildInputs = with scope; [ + automoc4 cmake perl sharedmimeinfo + ]; - propagatedNativeBuildInputs = - (drv.propagatedNativeBuildInputs or []) - ++ (with scope; [ automoc4 cmake perl sharedmimeinfo ]); + patches = [ ./kdelibs/polkit-install.patch ]; - patches = (drv.patches or []) ++ [ ./kdelibs/polkit-install.patch ]; + # cmake does not detect path to `ilmbase` + NIX_CFLAGS_COMPILE = "-I${scope.ilmbase}/include/OpenEXR"; - cmakeFlags = (drv.cmakeFlags or []) ++ [ + cmakeFlags = [ "-DDOCBOOKXML_CURRENTDTD_DIR=${scope.docbook_xml_dtd_42}/xml/dtd/docbook" "-DDOCBOOKXSL_DIR=${scope.docbook_xsl}/xml/xsl/docbook" "-DHUPNP_ENABLED=ON" "-DWITH_SOLID_UDISKS2=ON" "-DKDE_DEFAULT_HOME=.kde" ]; - }); - - kdenlive = overrideDerivation super.kdenlive (drv: { - buildInputs = (drv.buildInputs or []) ++ [ scope.mlt ]; - }); - - kdepim = overrideDerivation super.kdepim (drv: { - buildInputs = (drv.buildInputs or []) ++ (with scope; [ gpgme assuan ]); - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ]; - }); - - kdepimlibs = overrideDerivation super.kdepimlibs (drv: { - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ]; - }); - - kdesdk-thumbnailers = overrideDerivation super.kdesdk-thumbnailers (drv: { - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.gettext ]; - }); - - kgpg = overrideDerivation super.kgpg (drv: { - buildInputs = (drv.buildInputs or []) ++ [ scope.boost ]; - }); - - khangman = overrideDerivation super.khangman (drv: { - buildInputs = (drv.buildInputs or []) ++ [ kf5.kio ]; - }); - - kmix = overrideDerivation super.kmix (drv: { - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ]; - cmakeFlags = (drv.cmakeFlags or []) ++ [ "-DKMIX_KF5_BUILD=ON" ]; - }); - - kmousetool = overrideDerivation super.kmousetool (drv: { - buildInputs = (drv.buildInputs or []) ++ (with pkgs.xlibs; [ libXtst libXt ]); - }); - - kremotecontrol = overrideDerivation super.kremotecontrol (drv: { - buildInputs = (drv.buildInputs or []) ++ [ pkgs.xlibs.libXtst ]; - }); - - krfb = overrideDerivation super.krfb (drv: { - buildInputs = - (drv.buildInputs or []) - ++ [ pkgs.xlibs.libXtst scope.ktp-common-internals ]; - }); - - kstars = overrideDerivation super.kstars (drv: { - buildInputs = (drv.buildInputs or []) ++ (with scope; [ kparts cfitsio ]); - }); - - ktp-accounts-kcm = overrideDerivation super.ktp-accounts-kcm (drv: { - buildInputs = (drv.buildInputs or []) ++ [ pkgs.libaccounts-glib ]; - }); - - ktp-common-internals = overrideDerivation super.ktp-common-internals (drv: { - buildInputs = - (drv.buildInputs or []) - ++ (with scope; [ kdelibs4support kparts ]) - ++ [ pkgs.libotr ]; # needed for ktp-text-ui - }); - - ktp-text-ui = overrideDerivation super.ktp-text-ui (drv: { - buildInputs = (drv.buildInputs or []) ++ [ scope.kdbusaddons ]; - }); - - lokalize = overrideDerivation super.lokalize (drv: { - buildInputs = (drv.buildInputs or []) ++ [ scope.kdbusaddons ]; - }); - - libkdcraw = overrideDerivation super.libkdcraw (drv: { - buildInputs = (drv.buildInputs or []) ++ (with scope; [ kdelibs libraw ]); - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ]; - }); - - libkexiv2 = overrideDerivation super.libkexiv2 (drv: { - buildInputs = (drv.buildInputs or []) ++ (with scope; [ exiv2 kdelibs ]); - }); - - libkface = overrideDerivation super.libkface (drv: { - buildInputs = (drv.buildInputs or []) ++ (with scope; [ kdelibs opencv ]); - }); - - libkgeomap = overrideDerivation super.libkgeomap (drv: { + }; + + kdenetwork-filesharing = kde4Package super.kdenetwork-filesharing; + + kdenetwork-strigi-analyzers = kde4Package super.kdenetwork-strigi-analyzers; + + kdenlive = extendDerivation super.kdenlive { buildInputs = [ scope.mlt ]; }; + + kdepim = extendDerivation (kde4Package super.kdepim) { + buildInputs = with scope; [ gpgme assuan ]; + nativeBuildInputs = [ scope.pkgconfig ]; + }; + + kdepim-runtime = kde4Package super.kdepim-runtime; + + kdepimlibs = extendDerivation (kde4Package super.kdepimlibs) { + nativeBuildInputs = [ scope.pkgconfig ]; + }; + + kdesdk-kioslaves = kde4Package super.kdesdk-kioslaves; + + kdesdk-strigi-analyzers = kde4Package super.kdesdk-strigi-analyzers; + + kdesdk-thumbnailers = + extendDerivation (kde4Package super.kdesdk-thumbnailers) { + nativeBuildInputs = [ scope.gettext ]; + }; + + kdf = kde4Package super.kdf; + + kfloppy = kde4Package super.kfloppy; + + kgamma = kde4Package super.kgamma; + + kget = kde4Package super.kget; + + kgoldrunner = kde4Package super.kgoldrunner; + + kgpg = extendDerivation (kde4Package super.kgpg) { + buildInputs = [ scope.boost ]; + }; + + khangman = extendDerivation super.khangman { buildInputs = [ scope.kio ]; }; + + kigo = kde4Package super.kigo; + + kiriki = kde4Package super.kiriki; + + klickety = kde4Package super.klickety; + + kmag = kde4Package super.kmag; + + kmahjongg = kde4Package super.kmahjongg; + + kmix = extendDerivation super.kmix { + nativeBuildInputs = [ scope.pkgconfig ]; + cmakeFlags = [ "-DKMIX_KF5_BUILD=ON" ]; + }; + + kmousetool = extendDerivation (kde4Package super.kmousetool) { + buildInputs = with scope.xlibs; [ libXtst libXt ]; + }; + + kmouth = kde4Package super.kmouth; + + knavalbattle = kde4Package super.knavalbattle; + + kolf = kde4Package super.kolf; + + kolourpaint = kde4Package super.kolourpaint; + + konquest = kde4Package super.konquest; + + kopete = kde4Package super.kopete; + + kppp = kde4Package super.kppp; + + kqtquickcharts = kde4Package super.kqtquickcharts; + + krdc = kde4Package super.krdc; + + kremotecontrol = extendDerivation (kde4Package super.kremotecontrol) { + buildInputs = [ scope.xlibs.libXtst ]; + }; + + kreversi = kde4Package super.kreversi; + + krfb = extendDerivation (kde4Package super.krfb) { + buildInputs = with scope; [ xlibs.libXtst ktp-common-internals ]; + }; + + ksaneplugin = kde4Package super.ksaneplugin; + + kscd = kde4Package super.kscd; + + ksirk = kde4Package super.ksirk; + + ksnakeduel = kde4Package super.ksnakeduel; + + ksnapshot = kde4Package super.ksnapshot; + + kspaceduel = kde4Package super.kspaceduel; + + kstars = extendDerivation super.kstars { + buildInputs = with scope; [ kparts cfitsio ]; + }; + + ksudoku = kde4Package super.ksudoku; + + ksystemlog = kde4Package super.ksystemlog; + + ktp-accounts-kcm = extendDerivation super.ktp-accounts-kcm { + buildInputs = [ scope.libaccounts-glib ]; + }; + + ktp-common-internals = extendDerivation super.ktp-common-internals { + buildInputs = with scope; [ kdelibs4support kparts libotr ]; + }; + + ktp-text-ui = extendDerivation super.ktp-text-ui { + buildInputs = [ scope.kdbusaddons ]; + }; + + ktuberling = kde4Package super.ktuberling; + + ktux = kde4Package super.ktux; + + kubrick = kde4Package super.kubrick; + + kuser = kde4Package super.kuser; + + kwalletmanager = kde4Package super.kwalletmanager; + + lokalize = extendDerivation super.lokalize { + buildInputs = [ scope.kdbusaddons ]; + }; + + libkcddb = kde4Package super.libkcddb; + + libkcompactdisc = kde4Package super.libkcompactdisc; + + libkdcraw = extendDerivation super.libkdcraw { + buildInputs = with scope; [ kdelibs libraw ]; + nativeBuildInputs = [ scope.pkgconfig ]; + }; + + libkdeedu = kde4Package super.libkdeedu; + + libkexiv2 = extendDerivation super.libkexiv2 { + buildInputs = with scope; [ exiv2 kdelibs ]; + }; + + libkface = extendDerivation super.libkface { + buildInputs = with scope; [ kdelibs opencv ]; + }; + + libkgeomap = extendDerivation (kde4Package super.libkgeomap) { cmakeFlags = - (drv.cmakeFlags or []) - ++ [ "-DCMAKE_MODULE_PATH=${scope.marble}/share/apps/cmake/modules" ]; - }); + [ "-DCMAKE_MODULE_PATH=${scope.marble}/share/apps/cmake/modules" ]; + }; - libkipi = overrideDerivation super.libkipi (drv: { - buildInputs = (drv.buildInputs or []) ++ [ scope.kdelibs ]; - }); + libkipi = extendDerivation super.libkipi { + buildInputs = [ scope.kdelibs ]; + }; - libksane = overrideDerivation super.libksane (drv: { - buildInputs = (drv.buildInputs or []) ++ (with scope; [ kdelibs saneBackends]); - }); + libksane = extendDerivation super.libksane { + buildInputs = with scope; [ kdelibs saneBackends]; + }; - okular = overrideDerivation super.okular (drv: { - nativeBuildInputs = (drv.nativeBuildInputs or []) ++ [ scope.pkgconfig ]; - }); + lskat = kde4Package super.lskat; - rocs = overrideDerivation super.rocs (drv: { - buildInputs = (drv.buildInputs or []) ++ [ scope.kdelibs4support ]; - }); + marble = kde4Package super.marble; - signon-kwallet-extension = - overrideDerivation super.signon-kwallet-extension (drv: { - buildInputs = (drv.buildInputs or []) ++ [ scope.signonqt5 ]; - preConfigure = (drv.preConfigure or "") + '' - sed -i src/CMakeLists.txt \ - -e "s,\''${SIGNONEXTENSION_PLUGINDIR},$out/lib/signon/extensions," - ''; - }); + mplayerthumbs = kde4Package super.mplayerthumbs; + + okular = extendDerivation (kde4Package super.okular) { + nativeBuildInputs = [ scope.pkgconfig ]; + }; + + pairs = kde4Package super.pairs; + + palapeli = kde4Package super.palapeli; + + picmi = kde4Package super.picmi; + + poxml = kde4Package super.poxml; + + rocs = extendDerivation super.rocs { + buildInputs = [ scope.kdelibs4support ]; + }; + + signon-kwallet-extension = extendDerivation super.signon-kwallet-extension { + buildInputs = [ scope.signonqt5 ]; + preConfigure = '' + sed -i src/CMakeLists.txt \ + -e "s,\''${SIGNONEXTENSION_PLUGINDIR},$out/lib/signon/extensions," + ''; + }; + + superkaramba = kde4Package super.superkaramba; + + svgpart = kde4Package super.svgpart; + + sweeper = kde4Package super.sweeper; + + umbrello = kde4Package super.umbrello; + + zeroconf-ioslave = kde4Package super.zeroconf-ioslave; }; diff --git a/pkgs/applications/kde-apps-15.04/setup-hook.sh b/pkgs/applications/kde-apps-15.04/setup-hook.sh index a8d9b7e0e36f..636669d4c622 100644 --- a/pkgs/applications/kde-apps-15.04/setup-hook.sh +++ b/pkgs/applications/kde-apps-15.04/setup-hook.sh @@ -1 +1,12 @@ addToSearchPath XDG_DATA_DIRS @out@/share + +addQt4Plugins() { + if [[ -d "$1/lib/qt4/plugins" ]]; then + propagatedUserEnvPkgs+=" $1" + fi + + if [[ -d "$1/lib/kde4/plugins" ]]; then + propagatedUserEnvPkgs+=" $1" + fi +} +envHooks+=(addQt4Plugins) diff --git a/pkgs/build-support/autonix/default.nix b/pkgs/build-support/autonix/default.nix index 5aba2620cdab..1f71d2cbb3bb 100644 --- a/pkgs/build-support/autonix/default.nix +++ b/pkgs/build-support/autonix/default.nix @@ -1,5 +1,8 @@ -{ bash, callPackage, coreutils, fetchurl, findutils, nix, runCommand, stdenv -, substituteAll, wget, writeText }: +{ pkgs }: + +let inherit (pkgs) bash coreutils findutils nix wget; + inherit (pkgs) callPackage fetchurl runCommand stdenv substituteAll writeText; +in /* autonix is a collection of tools to automate packaging large collections * of software, particularly KDE. It consists of three components: @@ -10,10 +13,18 @@ * expressions from the output of the previous steps. */ -with stdenv.lib; +let inherit (stdenv) lib; in let + resolveDeps = scope: deps: + let resolve = dep: + let res = scope."${dep}" or []; + in if lib.isList res then res else [res]; + in lib.concatMap resolve deps; + +in rec { + /* Download the packages into the Nix store, compute their hashes, * and generate a package manifest in ./manifest.nix. */ @@ -32,240 +43,94 @@ let chmod +x $out ''; - /* Convert a manifest.nix file to XML to be read by autonix-deps. */ - writeManifestXML = filename: - let - generateStores = mapAttrs (n: pkg: pkg.store); - manifest = importManifest filename { mirror = ""; }; - stores = generateStores manifest; - in - writeText "manifest.xml" (builtins.toXML stores); - - /* Generate a set of Nix expressions for the collection, given a - * manifest.nix, dependencies.nix, and renames.nix in the same directory. - */ - generateCollection = dir: # path to directory - { mirror # mirror to download packages from - , mkDerivation ? mkDerivation - , preResolve ? id # modify package set before dependency resolution - , postResolve ? id # modify package set after dependency resolution - , renames ? {} - , scope ? {} - }: - let - - fix = f: let x = f x; in x; - - resolvePkg = name: - mapAttrs (attr: if isDepAttr attr then resolveDeps scope else id); - - resolve = mapAttrs resolvePkg; - - derive = mapAttrs (name: mkDerivation); - - renames_ = - if renames == {} then (import (dir + "/renames.nix") {}) else renames; - - packages = importPackages dir renames_ { inherit mirror; }; - - in derive (postResolve (resolve (preResolve packages))); - - pkgAttrName = pkg: (builtins.parseDrvName pkg.name).name; - pkgVersion = pkg: (builtins.parseDrvName pkg.name).version; - - depAttrNames = [ - "buildInputs" "nativeBuildInputs" - "propagatedBuildInputs" "propagatedNativeBuildInputs" - "propagatedUserEnvPkgs" - ]; - - isDepAttr = name: builtins.elem name depAttrNames; - - removePkgDeps = deps: - let removeDepsIfDepAttr = attr: value: - if isDepAttr attr then fold remove value deps else value; - in mapAttrs removeDepsIfDepAttr; - - hasDep = dep: pkg: - let depAttrs = attrValues (filterAttrs (n: v: isDepAttr n) pkg); - allDeps = concatLists depAttrs; - in elem dep allDeps; - - importManifest = path: { mirror }: - let - uniqueNames = manifest: - unique (map pkgAttrName manifest); - - versionsOf = manifest: name: - filter (pkg: pkgAttrName pkg == name) manifest; - - bestVersions = manifest: - let best = versions: - let - strictlyLess = a: b: - builtins.compareVersions (pkgVersion a) (pkgVersion b) > 0; - sorted = sort strictlyLess versions; - in head sorted; - in map (name: best (versionsOf manifest name)) (uniqueNames manifest); - - withNames = manifest: - builtins.listToAttrs - (map (p: nameValuePair (toLower (pkgAttrName p)) p) manifest); - - orig = import path { inherit stdenv fetchurl mirror; }; - in - fold (f: x: f x) orig [ withNames bestVersions ]; - - importPackages = path: renames: manifestScope: - let - - # Do not allow any package to depend on itself. - breakRecursion = - let removeSelfDep = pkg: - mapAttrs - (n: if isDepAttr n - then filter (dep: dep != pkg && renamed dep != pkg) - else id); - in mapAttrs removeSelfDep; - - renamed = dep: renames."${dep}" or dep; - - manifest = importManifest (path + "/manifest.nix") manifestScope; - - deps = import (path + "/dependencies.nix") {}; - - mkPkg = name: manifest: - { - inherit (manifest) name src; - inherit (deps."${name}") - buildInputs nativeBuildInputs propagatedBuildInputs - propagatedNativeBuildInputs propagatedUserEnvPkgs; - }; - - in breakRecursion (mapAttrs mkPkg manifest); - - mkDerivation = drv: stdenv.mkDerivation (drv // { src = fetchurl drv.src; }); - - resolveDeps = scope: deps: - let resolve = dep: - let res = scope."${dep}" or []; - in if lib.isList res then res else [res]; - in lib.concatMap resolve deps; - - userEnvPkg = dep: - mapAttrs - (name: pkg: pkg // { - propagatedUserEnvPkgs = - (pkg.propagatedUserEnvPkgs or []) - ++ optional (hasDep dep pkg) dep; - }); - -in -{ - inherit generateCollection; - inherit importManifest; - inherit isDepAttr; - inherit manifest; - inherit removePkgDeps; - inherit resolveDeps; - inherit userEnvPkg; - inherit writeManifestXML; - - blacklist = names: pkgs: - let - removeDeps = deps: mapAttrs (name: removePkgDeps deps); - removePkgs = names: pkgs: builtins.removeAttrs pkgs names; - in removeDeps names (removePkgs names pkgs); - - lib = rec { - mkPackage = callPackage: defaultOverride: name: pkg: let drv = - { mkDerivation, fetchurl, scope }: - - mkDerivation (defaultOverride { - inherit (pkg) name; + mkPackage = callPackage: defaultOverride: name: pkg: let drv = + { mkDerivation, fetchurl, scope }: - src = fetchurl pkg.src; + mkDerivation (defaultOverride { + inherit (pkg) name; - buildInputs = resolveDeps scope pkg.buildInputs; - nativeBuildInputs = resolveDeps scope pkg.nativeBuildInputs; - propagatedBuildInputs = resolveDeps scope pkg.propagatedBuildInputs; - propagatedNativeBuildInputs = - resolveDeps scope pkg.propagatedNativeBuildInputs; - propagatedUserEnvPkgs = resolveDeps scope pkg.propagatedUserEnvPkgs; + src = fetchurl pkg.src; - enableParallelBuilding = true; - }); - in callPackage drv {}; + buildInputs = resolveDeps scope pkg.buildInputs; + nativeBuildInputs = resolveDeps scope pkg.nativeBuildInputs; + propagatedBuildInputs = resolveDeps scope pkg.propagatedBuildInputs; + propagatedNativeBuildInputs = + resolveDeps scope pkg.propagatedNativeBuildInputs; + propagatedUserEnvPkgs = resolveDeps scope pkg.propagatedUserEnvPkgs; - renameDeps = renames: lib.mapAttrs (name: pkg: - let breakCycles = lib.filter (dep: dep != name); - rename = dep: renames."${dep}" or dep; - in pkg // { - buildInputs = breakCycles (map rename pkg.buildInputs); - nativeBuildInputs = breakCycles (map rename pkg.nativeBuildInputs); - propagatedBuildInputs = breakCycles (map rename pkg.propagatedBuildInputs); - propagatedNativeBuildInputs = breakCycles (map rename pkg.propagatedNativeBuildInputs); - propagatedUserEnvPkgs = breakCycles (map rename pkg.propagatedUserEnvPkgs); - }); - - propagateDeps = propagated: lib.mapAttrs (name: pkg: - let isPropagated = dep: lib.elem dep propagated; - isNotPropagated = dep: !(isPropagated dep); - in pkg // { - buildInputs = lib.filter isNotPropagated pkg.buildInputs; - nativeBuildInputs = lib.filter isNotPropagated pkg.nativeBuildInputs; - propagatedBuildInputs = - pkg.propagatedBuildInputs - ++ lib.filter isPropagated pkg.buildInputs; - propagatedNativeBuildInputs = - pkg.propagatedNativeBuildInputs - ++ lib.filter isPropagated pkg.nativeBuildInputs; - }); + enableParallelBuilding = true; + }); + in callPackage drv {}; + + renameDeps = renames: lib.mapAttrs (name: pkg: + let breakCycles = lib.filter (dep: dep != name); + rename = dep: renames."${dep}" or dep; + in pkg // { + buildInputs = breakCycles (map rename pkg.buildInputs); + nativeBuildInputs = breakCycles (map rename pkg.nativeBuildInputs); + propagatedBuildInputs = breakCycles (map rename pkg.propagatedBuildInputs); + propagatedNativeBuildInputs = + breakCycles (map rename pkg.propagatedNativeBuildInputs); + propagatedUserEnvPkgs = breakCycles (map rename pkg.propagatedUserEnvPkgs); + }); - nativeDeps = native: lib.mapAttrs (name: pkg: - let isNative = dep: lib.elem dep native; - isNotNative = dep: !(isNative dep); - in pkg // { - buildInputs = lib.filter isNotNative pkg.buildInputs; - nativeBuildInputs = - pkg.nativeBuildInputs - ++ lib.filter isNative pkg.buildInputs; - propagatedBuildInputs = lib.filter isNotNative pkg.propagatedBuildInputs; - propagatedNativeBuildInputs = - pkg.propagatedNativeBuildInputs - ++ lib.filter isNative pkg.propagatedBuildInputs; - }); + propagateDeps = propagated: lib.mapAttrs (name: pkg: + let isPropagated = dep: lib.elem dep propagated; + isNotPropagated = dep: !(isPropagated dep); + in pkg // { + buildInputs = lib.filter isNotPropagated pkg.buildInputs; + nativeBuildInputs = lib.filter isNotPropagated pkg.nativeBuildInputs; + propagatedBuildInputs = + pkg.propagatedBuildInputs + ++ lib.filter isPropagated pkg.buildInputs; + propagatedNativeBuildInputs = + pkg.propagatedNativeBuildInputs + ++ lib.filter isPropagated pkg.nativeBuildInputs; + }); - userEnvDeps = user: lib.mapAttrs (name: pkg: - let allDeps = with pkg; lib.concatLists [ - buildInputs - nativeBuildInputs - propagatedBuildInputs - propagatedNativeBuildInputs - ]; - in assert (lib.isList allDeps); pkg // { - propagatedUserEnvPkgs = lib.filter (dep: lib.elem dep user) allDeps; - }); + nativeDeps = native: lib.mapAttrs (name: pkg: + let isNative = dep: lib.elem dep native; + isNotNative = dep: !(isNative dep); + in pkg // { + buildInputs = lib.filter isNotNative pkg.buildInputs; + nativeBuildInputs = + pkg.nativeBuildInputs + ++ lib.filter isNative pkg.buildInputs; + propagatedBuildInputs = lib.filter isNotNative pkg.propagatedBuildInputs; + propagatedNativeBuildInputs = + pkg.propagatedNativeBuildInputs + ++ lib.filter isNative pkg.propagatedBuildInputs; + }); - overrideDerivation = pkg: f: pkg.override (super: super // { - mkDerivation = drv: super.mkDerivation (drv // f drv); + userEnvDeps = user: lib.mapAttrs (name: pkg: + let allDeps = with pkg; lib.concatLists [ + buildInputs + nativeBuildInputs + propagatedBuildInputs + propagatedNativeBuildInputs + ]; + in assert (lib.isList allDeps); pkg // { + propagatedUserEnvPkgs = lib.filter (dep: lib.elem dep user) allDeps; }); - extendDerivation = pkg: attrs: - let mergeAttrBy = lib.mergeAttrBy // { - propagatedNativeBuildInputs = a: b: a ++ b; - NIX_CFLAGS_COMPILE = a: b: "${a} ${b}"; - cmakeFlags = a: b: a ++ b; - }; - mergeAttrsByFunc = sets: - let merged = lib.foldl lib.mergeAttrByFunc { inherit mergeAttrBy; } sets; - in builtins.removeAttrs merged ["mergeAttrBy"]; - in overrideDerivation pkg (drv: mergeAttrsByFunc [ drv attrs ]); + overrideDerivation = pkg: f: pkg.override (super: super // { + mkDerivation = drv: super.mkDerivation (drv // f drv); + }); - overrideScope = pkg: fnOrSet: pkg.override (super: super // { - scope = if builtins.isFunction fnOrSet - then super.scope // fnOrSet super.scope - else super.scope // fnOrSet; - }); - }; + extendDerivation = pkg: attrs: + let mergeAttrBy = lib.mergeAttrBy // { + propagatedNativeBuildInputs = a: b: a ++ b; + NIX_CFLAGS_COMPILE = a: b: "${a} ${b}"; + cmakeFlags = a: b: a ++ b; + }; + mergeAttrsByFunc = sets: + let merged = lib.foldl lib.mergeAttrByFunc { inherit mergeAttrBy; } sets; + in builtins.removeAttrs merged ["mergeAttrBy"]; + in overrideDerivation pkg (drv: mergeAttrsByFunc [ drv attrs ]); + + overrideScope = pkg: fnOrSet: pkg.override (super: super // { + scope = if builtins.isFunction fnOrSet + then super.scope // fnOrSet super.scope + else super.scope // fnOrSet; + }); } diff --git a/pkgs/desktops/plasma-5.3/default.nix b/pkgs/desktops/plasma-5.3/default.nix index ba1c1b78fc70..33165afd03e6 100644 --- a/pkgs/desktops/plasma-5.3/default.nix +++ b/pkgs/desktops/plasma-5.3/default.nix @@ -16,7 +16,7 @@ let inherit (pkgs) autonix stdenv symlinkJoin; in -let kf5Orig = kf5; in +with autonix; let inherit (stdenv) lib; in let kf5_ = if kf5 != null then kf5 else pkgs.kf510; @@ -26,7 +26,7 @@ in let qt5 = qt5_; - kf5 = kf5_.override { inherit qt5; }; + kf5 = kf5_.override { inherit debug qt5; }; kdePackage = name: pkg: let defaultOverride = drv: drv // { @@ -106,7 +106,7 @@ let modemmanager openconnect openexr pam pango qt4 samba socat substituteAll taglib utillinux wayland xapian xkeyboard_config xlibs xorg; - boost = boost155; + boost = boost156; canberra = libcanberra; epub = ebook_tools; fontforge_executable = fontforge; @@ -153,7 +153,7 @@ let }); in symlinkJoin "breeze-${version}" [ breeze-qt4 breeze-qt5 ]; - kde-gtk-config = overrideDerivation super.kde-gtk-config (drv: { + kde-gtk-config = extendDerivation super.kde-gtk-config { NIX_CFLAGS_COMPILE = with scope; lib.concatStringsSep " " [ "-I${cairo}/include/cairo" @@ -163,55 +163,51 @@ let "-I${glib}/lib/glib-2.0/include" "-I${pango}/include/pango-1.0" ]; - }); + }; - kfilemetadata = overrideDerivation super.kfilemetadata (drv: { - buildInputs = drv.buildInputs ++ [ pkgs.attr ]; - }); + kfilemetadata = extendDerivation super.kfilemetadata { + buildInputs = [ scope.attr ]; + }; - kwin = overrideDerivation super.kwin (drv: { - buildInputs = - drv.buildInputs ++ (with pkgs.xlibs; [ libICE libSM libXcursor ]); + kwin = extendDerivation super.kwin { + buildInputs = with scope.xlibs; [ libICE libSM libXcursor ]; patches = [ ./kwin/kwin-import-plugin-follow-symlinks.patch ]; - }); + }; - libkscreen = overrideDerivation super.libkscreen (drv: { - buildInputs = drv.buildInputs ++ [ pkgs.xlibs.libXrandr]; - }); + libkscreen = extendDerivation super.libkscreen { + buildInputs = [ scope.xlibs.libXrandr]; + }; - plasma-desktop = overrideDerivation super.plasma-desktop (drv: { - buildInputs = - drv.buildInputs - ++ [ pkgs.libcanberra ] - ++ (with pkgs.xlibs; [ libxkbfile libXcursor libXft ]); + plasma-desktop = extendDerivation super.plasma-desktop { + buildInputs = with scope; + [ canberra ] + ++ (with xlibs; [ libxkbfile libXcursor libXft ]); patches = [ ./plasma-desktop/plasma-desktop-hwclock.patch ./plasma-desktop/plasma-desktop-zoneinfo.patch - (pkgs.substituteAll { + (scope.substituteAll { src = ./plasma-desktop/plasma-desktop-xkb-rules.patch; - xkb = pkgs.xkeyboard_config; + xkb = scope.xkeyboard_config; }) ]; preConfigure = '' substituteInPlace kcms/dateandtime/helper.cpp \ --subst-var-by hwclock "${scope.utillinux}/sbin/hwclock" ''; - }); + }; - plasma-workspace = overrideDerivation super.plasma-workspace (drv: { + plasma-workspace = extendDerivation super.plasma-workspace { patches = [ - (pkgs.substituteAll { + (scope.substituteAll { src = ./plasma-workspace/0001-startkde-NixOS-patches.patch; - inherit (pkgs) bash gnused gnugrep socat; - inherit (kf5) kconfig kinit kservice; - inherit (pkgs.xorg) mkfontdir xmessage xprop xrdb xset xsetroot; - qt5tools = qt5.tools; - dbus_tools = pkgs.dbus.tools; + inherit (scope) bash gnused gnugrep socat; + inherit (scope) kconfig kinit kservice; + inherit (scope.xorg) mkfontdir xmessage xprop xrdb xset xsetroot; + qt5tools = scope.qt5tools; + dbus_tools = scope.dbus.tools; }) ]; - buildInputs = - (drv.buildInputs or []) - ++ (with pkgs.xlibs; [ libSM libXcursor scope.pam ]); + buildInputs = with scope.xlibs; [ libSM libXcursor scope.pam ]; postPatch = '' substituteInPlace startkde/kstartupconfig/kstartupconfig.cpp \ --replace kdostartupconfig5 $out/bin/kdostartupconfig5 @@ -220,15 +216,15 @@ let substituteInPlace startkde/startkde.cmake \ --subst-var-by plasmaWorkspace "$out" ''; - }); + }; - powerdevil = overrideDerivation super.powerdevil (drv: { - buildInputs = drv.buildInputs ++ [pkgs.xlibs.libXrandr]; - }); + powerdevil = extendDerivation super.powerdevil { + buildInputs = [ scope.xlibs.libXrandr ]; + }; - sddm-kcm = overrideDerivation super.sddm-kcm (drv: { - buildInputs = drv.buildInputs ++ [pkgs.xlibs.libXcursor]; - }); + sddm-kcm = extendDerivation super.sddm-kcm { + buildInputs = [ scope.xlibs.libXcursor ]; + }; }; diff --git a/pkgs/development/libraries/kde-frameworks-5.10/default.nix b/pkgs/development/libraries/kde-frameworks-5.10/default.nix index abcae401423e..b473a3453f34 100644 --- a/pkgs/development/libraries/kde-frameworks-5.10/default.nix +++ b/pkgs/development/libraries/kde-frameworks-5.10/default.nix @@ -12,13 +12,19 @@ # make a copy of this directory first. After copying, be sure to delete ./tmp # if it exists. Then follow the minor update instructions. -{ autonix, fetchurl, pkgs, qt5, stdenv, newScope, debug ? false }: +{ pkgs, newScope, qt5 ? null, debug ? false }: -with autonix; +let inherit (pkgs) autonix stdenv symlinkJoin; in -let inherit (stdenv) lib; in +with autonix; let inherit (stdenv) lib; in let + qt5_ = if qt5 != null then qt5 else pkgs.qt54; +in + +let + + qt5 = qt5_; super = let json = builtins.fromJSON (builtins.readFile ./packages.json); @@ -114,8 +120,6 @@ let ); self = super // { - inherit kdePackage scope; - extra-cmake-modules = overrideDerivation super.extra-cmake-modules (drv: { buildInputs = []; nativeBuildInputs = []; @@ -132,78 +136,72 @@ let }; }); - frameworkintegration = overrideDerivation super.frameworkintegration (drv: { - buildInputs = drv.buildInputs ++ [ pkgs.xlibs.libXcursor ]; - }); + frameworkintegration = extendDerivation super.frameworkintegration { + buildInputs = [ scope.xlibs.libXcursor ]; + }; - kauth = overrideDerivation super.kauth (drv: { - buildInputs = drv.buildInputs ++ [ scope.polkit_qt5 ]; - patches = [./kauth/kauth-policy-install.patch]; - }); + kauth = extendDerivation super.kauth { + buildInputs = [ scope.polkit_qt5 ]; + patches = [ ./kauth/kauth-policy-install.patch ]; + }; - kcmutils = overrideDerivation super.kcmutils (drv: { - patches = [./kcmutils/kcmutils-pluginselector-follow-symlinks.patch]; - }); - - kconfigwidgets = overrideDerivation super.kconfigwidgets (drv: { - patches = [./kconfigwidgets/kconfigwidgets-helpclient-follow-symlinks.patch]; - }); + kcmutils = extendDerivation super.kcmutils { + patches = [ ./kcmutils/kcmutils-pluginselector-follow-symlinks.patch ]; + }; - kdelibs4support = overrideDerivation super.kdelibs4support (drv: { - buildInputs = drv.buildInputs ++ [ scope.networkmanager pkgs.xlibs.libSM ]; - cmakeFlags = - drv.cmakeFlags - ++ [ - "-DDocBookXML4_DTD_DIR=${pkgs.docbook_xml_dtd_45}/xml/dtd/docbook" - "-DDocBookXML4_DTD_VERSION=4.5" - ]; - }); + kconfigwidgets = extendDerivation super.kconfigwidgets { + patches = [ ./kconfigwidgets/kconfigwidgets-helpclient-follow-symlinks.patch ]; + }; - kdoctools = overrideDerivation super.kdoctools (drv: { - propagatedNativeBuildInputs = - drv.propagatedNativeBuildInputs ++ [ scope.perl scope.perlPackages.URI ]; - cmakeFlags = - drv.cmakeFlags - ++ [ - "-DDocBookXML4_DTD_DIR=${pkgs.docbook_xml_dtd_45}/xml/dtd/docbook" - "-DDocBookXML4_DTD_VERSION=4.5" - "-DDocBookXSL_DIR=${pkgs.docbook5_xsl}/xml/xsl/docbook" - ]; - patches = [./kdoctools/kdoctools-no-find-docbook-xml.patch]; - }); + kdelibs4support = extendDerivation super.kdelibs4support { + buildInputs = [ scope.networkmanager scope.xlibs.libSM ]; + cmakeFlags = [ + "-DDocBookXML4_DTD_DIR=${pkgs.docbook_xml_dtd_45}/xml/dtd/docbook" + "-DDocBookXML4_DTD_VERSION=4.5" + ]; + }; + + kdoctools = extendDerivation super.kdoctools { + propagatedNativeBuildInputs = [ scope.perl scope.perlPackages.URI ]; + cmakeFlags = [ + "-DDocBookXML4_DTD_DIR=${scope.docbook_xml_dtd_45}/xml/dtd/docbook" + "-DDocBookXML4_DTD_VERSION=4.5" + "-DDocBookXSL_DIR=${scope.docbook5_xsl}/xml/xsl/docbook" + ]; + patches = [ ./kdoctools/kdoctools-no-find-docbook-xml.patch ]; + }; - ki18n = overrideDerivation super.ki18n (drv: { - propagatedNativeBuildInputs = - drv.propagatedNativeBuildInputs ++ [ scope.libintl scope.pythoninterp ]; - }); + ki18n = extendDerivation super.ki18n { + propagatedNativeBuildInputs = with scope; [ libintl pythoninterp ]; + }; - kimageformats = overrideDerivation super.kimageformats (drv: { + kimageformats = extendDerivation super.kimageformats { NIX_CFLAGS_COMPILE = "-I${pkgs.ilmbase}/include/OpenEXR"; - }); + }; - kinit = overrideDerivation super.kinit (drv: { + kinit = extendDerivation super.kinit { patches = [./kinit/0001-kinit-libpath.patch]; - }); + }; - kpackage = overrideDerivation super.kpackage (drv: { - patches = [./kpackage/0001-allow-external-paths.patch]; - }); + kpackage = extendDerivation super.kpackage { + patches = [ ./kpackage/0001-allow-external-paths.patch ]; + }; - kservice = overrideDerivation super.kservice (drv: { - buildInputs = drv.buildInputs ++ [ self.kwindowsystem ]; + kservice = extendDerivation super.kservice { + buildInputs = [ scope.kwindowsystem ]; patches = [ ./kservice/kservice-kbuildsycoca-follow-symlinks.patch ./kservice/kservice-kbuildsycoca-no-canonicalize-path.patch ]; - }); + }; - ktexteditor = overrideDerivation super.ktexteditor (drv: { + ktexteditor = extendDerivation super.ktexteditor { patches = [ ./ktexteditor/0001-no-qcoreapplication.patch ]; - }); + }; - networkmanager-qt = overrideDerivation super.networkmanager-qt (drv: { - propagatedBuildInputs = drv.propagatedBuildInputs ++ [ scope.networkmanager ]; - }); + networkmanager-qt = extendDerivation super.networkmanager-qt { + propagatedBuildInputs = [ scope.networkmanager ]; + }; }; in self diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 1b21df48daeb..696d10e4c885 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -251,7 +251,7 @@ let theAttrSet = arg; }; - autonix = callPackage ../build-support/autonix {}; + autonix = import ../build-support/autonix { inherit pkgs; }; autoreconfHook = makeSetupHook { substitutions = { inherit autoconf automake libtool gettext; }; } @@ -11658,9 +11658,7 @@ let boost = boost155; }; - kdeApps_15_04 = recurseIntoAttrs (callPackage ../applications/kde-apps-15.04 { - kf5 = kf510; - }); + kdeApps_15_04 = recurseIntoAttrs (callPackage ../applications/kde-apps-15.04 {}); kdeApps_stable = kdeApps_15_04; kdeApps_latest = kdeApps_15_04; @@ -13940,7 +13938,7 @@ let numix-gtk-theme = callPackage ../misc/themes/gtk3/numix-gtk-theme { }; - plasma53 = recurseIntoAttrs (import ../desktops/plasma-5.3 { inherit pkgs newScope; }); + plasma53 = recurseIntoAttrs (callPackage ../desktops/plasma-5.3 { inherit pkgs newScope; }); plasma5_latest = plasma53; plasma5_stable = plasma53; |