* ‘applyGlobalOverrides’ considered harmful. Getting rid of it in the

calls to KDE 4.5 and 4.6 cuts nix-env evaluation time (for ‘-qa
  --drv-path *’) from 10.2s to 7.4s.

  There are two other calls to ‘applyGlobalOverrides’, namely in
  ‘webkit’ and ‘webkitSVN’ for the libsoup override.  We should get
  rid of those too.

svn path=/nixpkgs/trunk/; revision=27611
This commit is contained in:
Eelco Dolstra 2011-07-05 14:38:31 +00:00
parent 18f98ec5a2
commit 79e528d7b2

View File

@ -99,7 +99,8 @@ let
# Return the complete set of packages, after applying the overrides # Return the complete set of packages, after applying the overrides
# returned by the `overrider' function (see above). # returned by the `overrider' function (see above). Warning: this
# function is very expensive!
applyGlobalOverrides = overrider: applyGlobalOverrides = overrider:
let let
# Call the overrider function. We don't want stdenv overrides # Call the overrider function. We don't want stdenv overrides
@ -4390,7 +4391,7 @@ let
gstPluginsGood; gstPluginsGood;
inherit (p.xlibs) libXt renderproto libXrender; inherit (p.xlibs) libXt renderproto libXrender;
}); });
wvstreams = callPackage ../development/libraries/wvstreams { }; wvstreams = callPackage ../development/libraries/wvstreams { };
wxGTK = wxGTK28; wxGTK = wxGTK28;
@ -7620,21 +7621,11 @@ let
kde4 = kde45; kde4 = kde45;
kde45 = callPackage ../desktops/kde-4.5 { kde45 = callPackage ../desktops/kde-4.5 {
callPackage = callPackage = newScope pkgs.kde45;
let
# !!! Ugly, inefficient.
pkgs_for_45 = (applyGlobalOverrides (p: { kde4 = p.kde45; }));
in
pkgs_for_45.newScope pkgs_for_45.kde45;
}; };
kde46 = callPackage ../desktops/kde-4.6 { kde46 = callPackage ../desktops/kde-4.6 {
callPackage = callPackage = newScope pkgs.kde46;
let
# !!! Ugly, inefficient.
pkgs_for_46 = (applyGlobalOverrides (p: { kde4 = p.kde46; }));
in
pkgs_for_46.newScope pkgs_for_46.kde46;
}; };
redshift = callPackage ../applications/misc/redshift { redshift = callPackage ../applications/misc/redshift {