Merge branch 'master' of github.com:nixos/nixpkgs into pleasant-ruby
Conflicts: pkgs/applications/version-management/redmine/default.nix pkgs/development/interpreters/ruby/gem.nix pkgs/development/interpreters/ruby/generated.nix pkgs/development/interpreters/ruby/patches.nix pkgs/development/tools/vagrant/default.nix pkgs/servers/consul/default.nix
This commit is contained in:
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,137 @@
|
||||
{ fetchurl, writeScript, ruby, ncurses, sqlite, libxml2, libxslt, libffi
|
||||
, zlib, libuuid, gems, jdk, python, stdenv, libiconvOrEmpty, imagemagick
|
||||
, pkgconfig }:
|
||||
|
||||
let
|
||||
|
||||
patchUsrBinEnv = writeScript "path-usr-bin-env" ''
|
||||
#!/bin/sh
|
||||
echo "==================="
|
||||
find "$1" -type f -name "*.rb" | xargs sed -i "s@/usr/bin/env@$(type -p env)@g"
|
||||
find "$1" -type f -name "*.mk" | xargs sed -i "s@/usr/bin/env@$(type -p env)@g"
|
||||
'';
|
||||
|
||||
in
|
||||
|
||||
{
|
||||
buildr = {
|
||||
# Many Buildfiles rely on RUBYLIB containing the current directory
|
||||
# (as was the default in Ruby < 1.9.2).
|
||||
extraWrapperFlags = "--prefix RUBYLIB : .";
|
||||
};
|
||||
|
||||
fakes3 = {
|
||||
postInstall = ''
|
||||
cd $out/${ruby.gemPath}/gems/*
|
||||
patch -Np1 -i ${../../ruby-modules/fake-s3-list-bucket.patch}
|
||||
'';
|
||||
};
|
||||
|
||||
ffi = {
|
||||
postUnpack = "onetuh";
|
||||
buildFlags = ["--with-ffi-dir=${libffi}"];
|
||||
NIX_POST_EXTRACT_FILES_HOOK = patchUsrBinEnv;
|
||||
};
|
||||
|
||||
iconv = { buildInputs = [ libiconvOrEmpty ]; };
|
||||
|
||||
libv8 = {
|
||||
# This fix is needed to fool scons, which clears the environment by default.
|
||||
# It's ugly, but it works.
|
||||
#
|
||||
# We create a gcc wrapper wrapper, which reexposes the environment variables
|
||||
# that scons hides. Furthermore, they treat warnings as errors causing the
|
||||
# build to fail, due to an unused variable.
|
||||
#
|
||||
# Finally, we must set CC and AR explicitly to allow scons to find the
|
||||
# compiler and archiver
|
||||
|
||||
preBuild = ''
|
||||
cat > $TMPDIR/g++ <<EOF
|
||||
#! ${stdenv.shell}
|
||||
$(export)
|
||||
|
||||
g++ \$(echo \$@ | sed 's/-Werror//g')
|
||||
EOF
|
||||
chmod +x $TMPDIR/g++
|
||||
|
||||
export CXX=$TMPDIR/g++
|
||||
export AR=$(type -p ar)
|
||||
'';
|
||||
buildInputs = [ python ];
|
||||
NIX_POST_EXTRACT_FILES_HOOK = writeScript "patch-scons" ''
|
||||
#!/bin/sh
|
||||
for i in `find "$1" -name scons`
|
||||
do
|
||||
sed -i -e "s@/usr/bin/env@$(type -p env)@g" $i
|
||||
done
|
||||
'';
|
||||
};
|
||||
|
||||
ncurses = { propagatedBuildInputs = [ ncurses ]; };
|
||||
|
||||
ncursesw = { propagatedBuildInputs = [ ncurses ]; };
|
||||
|
||||
nix = {
|
||||
postInstall = ''
|
||||
cd $out/${ruby.gemPath}/gems/nix*
|
||||
patch -Np1 -i ${./fix-gem-nix-versions.patch}
|
||||
'';
|
||||
};
|
||||
|
||||
nokogiri = {
|
||||
buildInputs = [ libxml2 ];
|
||||
buildFlags =
|
||||
[ "--with-xml2-dir=${libxml2} --with-xml2-include=${libxml2}/include/libxml2"
|
||||
"--with-xslt-dir=${libxslt} --use-system-libraries"
|
||||
] ++ libiconvOrEmpty;
|
||||
};
|
||||
|
||||
pry = { gemFlags = "--no-ri --no-rdoc"; };
|
||||
|
||||
rails = { gemFlags = "--no-ri --no-rdoc"; };
|
||||
|
||||
rjb = {
|
||||
buildInputs = [ jdk ];
|
||||
JAVA_HOME = jdk;
|
||||
};
|
||||
|
||||
rmagick = {
|
||||
buildInputs = [ imagemagick pkgconfig ];
|
||||
|
||||
NIX_CFLAGS_COMPILE = "-I${imagemagick}/include/ImageMagick-6";
|
||||
};
|
||||
|
||||
sqlite3 = { propagatedBuildInputs = [ sqlite ]; };
|
||||
|
||||
xapian_full = {
|
||||
buildInputs = [ gems.rake zlib libuuid ];
|
||||
gemFlags = "--no-rdoc --no-ri";
|
||||
};
|
||||
|
||||
xapian_full_alaveteli = {
|
||||
buildInputs = [ zlib libuuid ];
|
||||
};
|
||||
|
||||
xapian_ruby = {
|
||||
buildInputs = [ zlib libuuid ];
|
||||
};
|
||||
|
||||
xrefresh_server =
|
||||
let
|
||||
patch = fetchurl {
|
||||
url = "http://mawercer.de/~nix/xrefresh.diff.gz";
|
||||
sha256 = "1f7bnmn1pgkmkml0ms15m5lx880hq2sxy7vsddb3sbzm7n1yyicq";
|
||||
};
|
||||
in {
|
||||
propagatedBuildInputs = [ gems.rb_inotify ];
|
||||
|
||||
# monitor implementation for Linux
|
||||
postInstall = ''
|
||||
cd $out/${ruby.gemPath}/gems/*
|
||||
zcat ${patch} | patch -p 1
|
||||
''; # */
|
||||
};
|
||||
|
||||
bundler = { dontPatchShebangs=1; };
|
||||
}
|
||||
@@ -78,7 +78,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
license = "Ruby";
|
||||
license = stdenv.lib.licenses.ruby;
|
||||
homepage = "http://www.ruby-lang.org/en/";
|
||||
description = "The Ruby language";
|
||||
};
|
||||
|
||||
@@ -48,12 +48,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
# Fix a build failure on systems with nix store optimisation.
|
||||
# (The build process attempted to copy file a overwriting file b, where a and
|
||||
# b are hard-linked, which results in cp returning a non-zero exit code.)
|
||||
# https://github.com/NixOS/nixpkgs/issues/4266
|
||||
postUnpack = ''rm "$sourceRoot/enc/unicode/name2ctype.h"'';
|
||||
|
||||
patches = [
|
||||
./ruby19-parallel-install.patch
|
||||
./bitperfect-rdoc.patch
|
||||
@@ -86,6 +80,8 @@ stdenv.mkDerivation rec {
|
||||
|
||||
installFlags = stdenv.lib.optionalString docSupport "install-doc";
|
||||
|
||||
CFLAGS = stdenv.lib.optionalString stdenv.isDarwin "-mmacosx-version-min=10.7";
|
||||
|
||||
postInstall = ''
|
||||
# Bundler tries to create this directory
|
||||
mkdir -pv $out/${passthru.gemPath}
|
||||
|
||||
@@ -50,18 +50,12 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
# Fix a build failure on systems with nix store optimisation.
|
||||
# (The build process attempted to copy file a overwriting file b, where a and
|
||||
# b are hard-linked, which results in cp returning a non-zero exit code.)
|
||||
# https://github.com/NixOS/nixpkgs/issues/4266
|
||||
postUnpack = ''rm "$sourceRoot/enc/unicode/name2ctype.h"'';
|
||||
|
||||
patches = ops useRailsExpress [
|
||||
"${patchSet}/patches/ruby/2.0.0/p481/01-zero-broken-tests.patch"
|
||||
"${patchSet}/patches/ruby/2.0.0/p481/02-railsexpress-gc.patch"
|
||||
"${patchSet}/patches/ruby/2.0.0/p481/03-display-more-detailed-stack-trace.patch"
|
||||
"${patchSet}/patches/ruby/2.0.0/p481/04-show-full-backtrace-on-stack-overflow.patch"
|
||||
"${patchSet}/patches/ruby/2.0.0/p481/05-fix-missing-c-return-event.patch"
|
||||
"${patchSet}/patches/ruby/2.0.0/p481/railsexpress/01-zero-broken-tests.patch"
|
||||
"${patchSet}/patches/ruby/2.0.0/p481/railsexpress/02-railsexpress-gc.patch"
|
||||
"${patchSet}/patches/ruby/2.0.0/p481/railsexpress/03-display-more-detailed-stack-trace.patch"
|
||||
"${patchSet}/patches/ruby/2.0.0/p481/railsexpress/04-show-full-backtrace-on-stack-overflow.patch"
|
||||
"${patchSet}/patches/ruby/2.0.0/p481/railsexpress/05-fix-missing-c-return-event.patch"
|
||||
];
|
||||
|
||||
configureFlags = ["--enable-shared" ]
|
||||
@@ -86,7 +80,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
license = "Ruby";
|
||||
license = stdenv.lib.licenses.ruby;
|
||||
homepage = "http://www.ruby-lang.org/en/";
|
||||
description = "The Ruby language";
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
|
||||
@@ -51,12 +51,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
# Fix a build failure on systems with nix store optimisation.
|
||||
# (The build process attempted to copy file a overwriting file b, where a and
|
||||
# b are hard-linked, which results in cp returning a non-zero exit code.)
|
||||
# https://github.com/NixOS/nixpkgs/issues/4266
|
||||
postUnpack = ''rm "$sourceRoot/enc/unicode/name2ctype.h"'';
|
||||
|
||||
patches = ops useRailsExpress [
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/01-current-2.1.1-fixes.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/02-zero-broken-tests.patch"
|
||||
@@ -101,7 +95,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
license = "Ruby";
|
||||
license = stdenv.lib.licenses.ruby;
|
||||
homepage = "http://www.ruby-lang.org/en/";
|
||||
description = "The Ruby language";
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
|
||||
@@ -51,24 +51,18 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
# Fix a build failure on systems with nix store optimisation.
|
||||
# (The build process attempted to copy file a overwriting file b, where a and
|
||||
# b are hard-linked, which results in cp returning a non-zero exit code.)
|
||||
# https://github.com/NixOS/nixpkgs/issues/4266
|
||||
postUnpack = ''rm "$sourceRoot/enc/unicode/name2ctype.h"'';
|
||||
|
||||
patches = ops useRailsExpress [
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/01-zero-broken-tests.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/02-improve-gc-stats.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/03-display-more-detailed-stack-trace.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/04-show-full-backtrace-on-stack-overflow.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/05-fix-missing-c-return-event.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/06-backport-006e66b6680f60adfb434ee7397f0dbc77de7873.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/07-funny-falcon-stc-density.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/08-funny-falcon-stc-pool-allocation.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/09-aman-opt-aset-aref-str.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/10-funny-falcon-method-cache.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/11-backport-r44370.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/07-backport-006e66b6680f60adfb434ee7397f0dbc77de7873.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/08-funny-falcon-stc-density.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/09-funny-falcon-stc-pool-allocation.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/10-aman-opt-aset-aref-str.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/11-funny-falcon-method-cache.patch"
|
||||
"${patchSet}/patches/ruby/2.1.0/railsexpress/12-backport-r44370.patch"
|
||||
];
|
||||
|
||||
# Ruby >= 2.1.0 tries to download config.{guess,sub}
|
||||
@@ -100,7 +94,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
license = "Ruby";
|
||||
license = stdenv.lib.licenses.ruby;
|
||||
homepage = "http://www.ruby-lang.org/en/";
|
||||
description = "The Ruby language";
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
|
||||
@@ -51,12 +51,6 @@ stdenv.mkDerivation rec {
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
# Fix a build failure on systems with nix store optimisation.
|
||||
# (The build process attempted to copy file a overwriting file b, where a and
|
||||
# b are hard-linked, which results in cp returning a non-zero exit code.)
|
||||
# https://github.com/NixOS/nixpkgs/issues/4266
|
||||
postUnpack = ''rm "$sourceRoot/enc/unicode/name2ctype.h"'';
|
||||
|
||||
patches = ops useRailsExpress [
|
||||
"${patchSet}/patches/ruby/2.1.2/railsexpress/01-zero-broken-tests.patch"
|
||||
"${patchSet}/patches/ruby/2.1.2/railsexpress/02-improve-gc-stats.patch"
|
||||
@@ -99,7 +93,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
license = "Ruby";
|
||||
license = stdenv.lib.licenses.ruby;
|
||||
homepage = "http://www.ruby-lang.org/en/";
|
||||
description = "The Ruby language";
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
|
||||
@@ -97,7 +97,7 @@ stdenv.mkDerivation rec {
|
||||
'';
|
||||
|
||||
meta = {
|
||||
license = "Ruby";
|
||||
license = stdenv.lib.licenses.ruby;
|
||||
homepage = "http://www.ruby-lang.org/en/";
|
||||
description = "The Ruby language";
|
||||
platforms = stdenv.lib.platforms.all;
|
||||
|
||||
Reference in New Issue
Block a user