From 172e55c7fcbf3de9fa6799ce520dc5b7b0a08ede Mon Sep 17 00:00:00 2001 From: Moritz Ulrich Date: Thu, 9 Oct 2014 21:59:17 +0200 Subject: [PATCH] Implement patches.nix to override parts of a derivation --- pkgs/development/compilers/chicken/eggDerivation.nix | 10 +++++++++- pkgs/development/compilers/chicken/patches.nix | 10 ++++++++++ 2 files changed, 19 insertions(+), 1 deletion(-) create mode 100644 pkgs/development/compilers/chicken/patches.nix diff --git a/pkgs/development/compilers/chicken/eggDerivation.nix b/pkgs/development/compilers/chicken/eggDerivation.nix index f9a3da83eab..9a7c56da11a 100644 --- a/pkgs/development/compilers/chicken/eggDerivation.nix +++ b/pkgs/development/compilers/chicken/eggDerivation.nix @@ -7,6 +7,14 @@ let libPath = "${chicken}/var/lib/chicken/${toString chicken.binaryVersion}/"; + patches = import ./patches.nix; + lib = stdenv.lib; + baseName = (builtins.parseDrvName name).name; + patch = if builtins.hasAttr baseName patches + then + builtins.getAttr baseName patches + else + {}; in stdenv.mkDerivation ({ name = "chicken-${name}"; @@ -37,4 +45,4 @@ stdenv.mkDerivation ({ --prefix PATH : "$out/bin:$CHICKEN_REPOSITORY_EXTRA:$CHICKEN_REPOSITORY" done ''; -} // (builtins.removeAttrs args ["name" "buildInputs"])) +} // (builtins.removeAttrs args ["name" "buildInputs"]) // patch) diff --git a/pkgs/development/compilers/chicken/patches.nix b/pkgs/development/compilers/chicken/patches.nix new file mode 100644 index 00000000000..9fdda9b6d9f --- /dev/null +++ b/pkgs/development/compilers/chicken/patches.nix @@ -0,0 +1,10 @@ +{ + setup-helper = { + preBuild = '' + substituteInPlace setup-helper.setup \ + --replace "(chicken-home)" \"$out/share/\" + + cat setup-helper.setup + ''; + }; +}