From 1edaff1a2a7b789ce528d5b07f091f9ce2dbceab Mon Sep 17 00:00:00 2001 From: Joel Taylor Date: Fri, 8 Aug 2014 11:20:11 -0700 Subject: [PATCH] include patches --- pkgs/development/interpreters/ruby/gems.nix | 11 ++++++++++- 1 file changed, 10 insertions(+), 1 deletion(-) diff --git a/pkgs/development/interpreters/ruby/gems.nix b/pkgs/development/interpreters/ruby/gems.nix index cd5ba0b3213..2ef43dbd658 100644 --- a/pkgs/development/interpreters/ruby/gems.nix +++ b/pkgs/development/interpreters/ruby/gems.nix @@ -14,12 +14,21 @@ let buildRubyGem = callPackage ./gem.nix {}; + patches = callPackage ./patches.nix { gems = self; }; + lib = ruby.stdenv.lib; self = rec { inherit buildRubyGem; # import an attrset full of gems, then override badly behaved ones importGems = file: args: - (callPackage file ({ inherit buildRubyGem; rubyLibs = self; } // args)); + let + builtGems = callPackage file ({ inherit buildRubyGem; rubyLibs = self; } // args); + in lib.mapAttrs (gem: deriv: + if patches ? "${gem}" + then lib.overrideDerivation deriv (oldAttrs: + if oldAttrs ? dontPatch && oldAttrs.dontPatch == 1 then {} + else patches."${gem}") + else deriv) builtGems; ################################################################## # stuff EVERYONE needs