* Allow `overrideDerivation' to work on derivations to which

`makeOverridable' has been applied (!).  Ugly.

svn path=/nixpkgs/trunk/; revision=20591
This commit is contained in:
Eelco Dolstra 2010-03-12 00:01:56 +00:00
parent 4b7ff33c26
commit 7dffd96978

View file

@ -31,7 +31,7 @@ rec {
overrideDerivation = drv: f:
let
# Filter out special attributes.
attrs = removeAttrs drv ["meta" "passthru" "outPath" "drvPath" "hostDrv" "buildDrv" "type"];
attrs = removeAttrs drv ["meta" "passthru" "outPath" "drvPath" "hostDrv" "buildDrv" "type" "override" "deepOverride" "origArgs"];
newDrv = derivation (attrs // (f drv));
in newDrv //
{ meta = if drv ? meta then drv.meta else {};