From 2dedbe6bbe65f0032d0bcc5eb85b4a6124ae75a8 Mon Sep 17 00:00:00 2001 From: Joel Taylor Date: Fri, 8 Aug 2014 19:09:28 -0700 Subject: [PATCH] correctly implement patching --- pkgs/development/interpreters/ruby/gems.nix | 15 ++++++++------- pkgs/development/interpreters/ruby/patches.nix | 4 ++++ 2 files changed, 12 insertions(+), 7 deletions(-) diff --git a/pkgs/development/interpreters/ruby/gems.nix b/pkgs/development/interpreters/ruby/gems.nix index 2ef43dbd658..db1bdc357b3 100644 --- a/pkgs/development/interpreters/ruby/gems.nix +++ b/pkgs/development/interpreters/ruby/gems.nix @@ -22,13 +22,14 @@ self = rec { # import an attrset full of gems, then override badly behaved ones importGems = file: 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; + preBuilt = callPackage file ({ inherit buildRubyGem; self = builtGems; } // args); + builtGems = self // (lib.mapAttrs (gem: deriv: + if patches ? "${gem}" + then lib.overrideDerivation deriv (oldAttrs: + if oldAttrs ? dontPatch && oldAttrs.dontPatch == 1 then {} + else patches."${gem}") + else deriv) preBuilt); + in builtGems; ################################################################## # stuff EVERYONE needs diff --git a/pkgs/development/interpreters/ruby/patches.nix b/pkgs/development/interpreters/ruby/patches.nix index 438aaf7ba54..4b9f42fb989 100644 --- a/pkgs/development/interpreters/ruby/patches.nix +++ b/pkgs/development/interpreters/ruby/patches.nix @@ -20,6 +20,10 @@ in extraWrapperFlags = "--prefix RUBYLIB : ."; }; + barber = { gemFlags = "--ignore-dependencies"; }; + ember_data_source = { gemFlags = "--ignore-dependencies"; }; + ember_rails = { gemFlags = "--ignore-dependencies"; }; + fakes3 = { postInstall = '' cd $out/${ruby.gemPath}/gems/*