diff --git a/pkgs/development/interpreters/ruby/default.nix b/pkgs/development/interpreters/ruby/default.nix index 62cc77c1253..5908ecac269 100644 --- a/pkgs/development/interpreters/ruby/default.nix +++ b/pkgs/development/interpreters/ruby/default.nix @@ -29,11 +29,13 @@ let baseruby = self.override { useRailsExpress = false; docSupport = false; + rubygemsSupport = false; }; self = lib.makeOverridable ( { stdenv, buildPackages, lib , fetchurl, fetchFromSavannah, fetchFromGitHub , useRailsExpress ? true + , rubygemsSupport ? true , zlib, zlibSupport ? true , openssl, opensslSupport ? true , gdbm, gdbmSupport ? true @@ -90,7 +92,7 @@ let patchLevel = ver.patchLevel; }).${ver.majMinTiny}; - postUnpack = '' + postUnpack = opString rubygemsSupport '' cp -r ${rubygems} $sourceRoot/rubygems ''; @@ -136,12 +138,6 @@ let installFlags = stdenv.lib.optionalString docSupport "install-doc"; # Bundler tries to create this directory postInstall = '' - # Update rubygems - pushd rubygems - chmod +w bundler/bundler.gemspec - ${buildRuby} setup.rb --destdir $GEM_HOME - popd - # Remove unnecessary groff reference from runtime closure, since it's big sed -i '/NROFF/d' $out/lib/ruby/*/*/rbconfig.rb @@ -162,6 +158,12 @@ let EOF rbConfig=$(find $out/lib/ruby -name rbconfig.rb) + '' + opString rubygemsSupport '' + # Update rubygems + pushd rubygems + chmod +w bundler/bundler.gemspec + ${buildRuby} setup.rb + popd '' + opString docSupport '' # Prevent the docs from being included in the closure sed -i "s|\$(DESTDIR)$devdoc|\$(datarootdir)/\$(RI_BASE_NAME)|" $rbConfig