diff options
Diffstat (limited to 'pkgs/development/interpreters')
12 files changed, 47 insertions, 30 deletions
diff --git a/pkgs/development/interpreters/elixir/generic-builder.nix b/pkgs/development/interpreters/elixir/generic-builder.nix index b7e98af2109..a1186557101 100644 --- a/pkgs/development/interpreters/elixir/generic-builder.nix +++ b/pkgs/development/interpreters/elixir/generic-builder.nix @@ -10,7 +10,7 @@ } @ args: let - inherit (stdenv.lib) getVersion versionAtLeast; + inherit (stdenv.lib) getVersion versionAtLeast optional; in assert versionAtLeast (getVersion erlang) minimumOTPVersion; @@ -29,9 +29,7 @@ in inherit debugInfo; - buildFlags = if debugInfo - then "ERL_COMPILER_OPTIONS=debug_info" - else ""; + buildFlags = optional debugInfo "ERL_COMPILER_OPTIONS=debug_info"; preBuild = '' # The build process uses ./rebar. Link it to the nixpkgs rebar diff --git a/pkgs/development/interpreters/erlang/generic-builder.nix b/pkgs/development/interpreters/erlang/generic-builder.nix index 9a1594da933..76f71745f35 100644 --- a/pkgs/development/interpreters/erlang/generic-builder.nix +++ b/pkgs/development/interpreters/erlang/generic-builder.nix @@ -121,8 +121,7 @@ in stdenv.mkDerivation ({ tolerance. ''; - # aarch64 is supposed to work but started failing in https://hydra.nixos.org/build/83735973 - platforms = subtractLists [ "aarch64-linux" ] platforms.unix; + platforms = platforms.unix; maintainers = with maintainers; [ the-kenny sjmackenzie couchemar gleber ]; license = licenses.asl20; } // meta); diff --git a/pkgs/development/interpreters/evcxr/default.nix b/pkgs/development/interpreters/evcxr/default.nix index c4259091f7b..1cc63788555 100644 --- a/pkgs/development/interpreters/evcxr/default.nix +++ b/pkgs/development/interpreters/evcxr/default.nix @@ -2,13 +2,13 @@ rustPlatform.buildRustPackage rec { pname = "evcxr"; - version = "0.4.5"; + version = "0.4.6"; src = fetchFromGitHub { owner = "google"; repo = "evcxr"; rev = "v${version}"; - sha256 = "13fs9fgvdf8bh6vc8xs8qhil0a1qhm4gvv0ici37xh8a94ngsn7h"; + sha256 = "1yzvqf93zz3ncck4dyq2kayp408lm3h6fx0fb212j7h70mlzx984"; }; cargoSha256 = "0g17g12isah4nkqp9i299qr1sz19k4czcc43rm1wbs0y9szaqvwc"; diff --git a/pkgs/development/interpreters/perl/default.nix b/pkgs/development/interpreters/perl/default.nix index 89979e18bdc..1f3b63625c0 100644 --- a/pkgs/development/interpreters/perl/default.nix +++ b/pkgs/development/interpreters/perl/default.nix @@ -144,7 +144,7 @@ let substituteInPlace "$out"/lib/perl5/*/*/Config_heavy.pl \ --replace "${libcInc}" /no-such-path \ --replace "${ - if stdenv.cc.cc or null != null then stdenv.cc.cc else "/no-such-path" + if stdenv.hasCC then stdenv.cc.cc else "/no-such-path" }" /no-such-path \ --replace "${stdenv.cc}" /no-such-path \ --replace "$man" /no-such-path diff --git a/pkgs/development/interpreters/php/default.nix b/pkgs/development/interpreters/php/default.nix index aa6dbcfccf0..26798d676e0 100644 --- a/pkgs/development/interpreters/php/default.nix +++ b/pkgs/development/interpreters/php/default.nix @@ -263,23 +263,23 @@ let in { php72 = generic { - version = "7.2.25"; - sha256 = "17kb7b3wpdmdhnlv23qc0vax0lp2gr1v7dxwdgs8g78gxnqkdcvw"; + version = "7.2.26"; + sha256 = "0yw49v3rk3cd0fb4gsli74pgd4qrykhn9c37dyfr3zsprzp8cvgk"; # https://bugs.php.net/bug.php?id=76826 extraPatches = optional stdenv.isDarwin ./php72-darwin-isfinite.patch; }; php73 = generic { - version = "7.3.12"; - sha256 = "0fccmnrwwyy5zvhj8wbyqqlyqr7pr5v4pfiqriw0ahciz4lv05yk"; + version = "7.3.13"; + sha256 = "1g376b9caw21mw8738z354llbzb3shzgc60m7naw7wql5038jysw"; # https://bugs.php.net/bug.php?id=76826 extraPatches = optional stdenv.isDarwin ./php73-darwin-isfinite.patch; }; php74 = generic { - version = "7.4.0"; - sha256 = "1h01bahvcm9kgm5jqhm2j9k9d4q4rpfkkpqk00c47rirdblnn85z"; + version = "7.4.1"; + sha256 = "0klfwhm2935ariwzqdri1fwh4a0vbrk3jis53qzi18isp3qa073b"; }; } diff --git a/pkgs/development/interpreters/python/cpython/2.7/default.nix b/pkgs/development/interpreters/python/cpython/2.7/default.nix index de980f1ca68..e6b3dff433b 100644 --- a/pkgs/development/interpreters/python/cpython/2.7/default.nix +++ b/pkgs/development/interpreters/python/cpython/2.7/default.nix @@ -234,9 +234,6 @@ in with passthru; stdenv.mkDerivation ({ ln -s $out/lib/${libPrefix}/pdb.py $out/bin/pdb${sourceVersion.major}.${sourceVersion.minor} ln -s $out/share/man/man1/{python2.7.1.gz,python.1.gz} - # Python on Nix is not manylinux1 compatible. https://github.com/NixOS/nixpkgs/issues/18484 - echo "manylinux1_compatible=False" >> $out/lib/${libPrefix}/_manylinux.py - rm "$out"/lib/python*/plat-*/regen # refers to glibc.dev # Determinism: Windows installers were not deterministic. diff --git a/pkgs/development/interpreters/python/cpython/default.nix b/pkgs/development/interpreters/python/cpython/default.nix index 43d2d159e36..e75bd0a0987 100644 --- a/pkgs/development/interpreters/python/cpython/default.nix +++ b/pkgs/development/interpreters/python/cpython/default.nix @@ -208,9 +208,6 @@ in with passthru; stdenv.mkDerivation { ln -s "$out/include/${executable}m" "$out/include/${executable}" - # Python on Nix is not manylinux1 compatible. https://github.com/NixOS/nixpkgs/issues/18484 - echo "manylinux1_compatible=False" >> $out/lib/${libPrefix}/_manylinux.py - # Determinism: Windows installers were not deterministic. # We're also not interested in building Windows installers. find "$out" -name 'wininst*.exe' | xargs -r rm -f diff --git a/pkgs/development/interpreters/python/pypy/default.nix b/pkgs/development/interpreters/python/pypy/default.nix index 8154a87f667..b220bfa0f93 100644 --- a/pkgs/development/interpreters/python/pypy/default.nix +++ b/pkgs/development/interpreters/python/pypy/default.nix @@ -137,9 +137,6 @@ in with passthru; stdenv.mkDerivation rec { # verify cffi modules $out/bin/${executable} -c ${if isPy3k then "'import tkinter;import sqlite3;import curses;import lzma'" else "'import Tkinter;import sqlite3;import curses'"} - # Python on Nix is not manylinux1 compatible. https://github.com/NixOS/nixpkgs/issues/18484 - echo "manylinux1_compatible=False" >> $out/lib/${libPrefix}/_manylinux.py - # Include a sitecustomize.py file cp ${../sitecustomize.py} $out/lib/${libPrefix}/${sitePackages}/sitecustomize.py ''; diff --git a/pkgs/development/interpreters/quickjs/default.nix b/pkgs/development/interpreters/quickjs/default.nix index 23191b0e6d3..e7f01856ef5 100644 --- a/pkgs/development/interpreters/quickjs/default.nix +++ b/pkgs/development/interpreters/quickjs/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { pname = "quickjs"; - version = "2019-10-27"; + version = "2019-12-21"; src = fetchurl { url = "https://bellard.org/${pname}/${pname}-${version}.tar.xz"; - sha256 = "0xm16ja3c0k80jy0xkx0f40r44v2lgx2si4dnaw2w7c5nx7cmkai"; + sha256 = "13hlx6qwrrxmlvvqcr3irxba6zmf05cf54l32vj50wc66s1qd41p"; }; makeFlags = [ "prefix=${placeholder ''out''}" ]; diff --git a/pkgs/development/interpreters/ruby/default.nix b/pkgs/development/interpreters/ruby/default.nix index d70c7e70f33..ee9b61259bb 100644 --- a/pkgs/development/interpreters/ruby/default.nix +++ b/pkgs/development/interpreters/ruby/default.nix @@ -3,7 +3,7 @@ , zlib, openssl, gdbm, ncurses, readline, groff, libyaml, libffi, autoreconfHook, bison , autoconf, libiconv, libobjc, libunwind, Foundation , buildEnv, bundler, bundix -, makeWrapper, buildRubyGem, defaultGemConfig +, makeWrapper, buildRubyGem, defaultGemConfig, removeReferencesTo } @ args: let @@ -27,6 +27,7 @@ let ver = version; tag = ver.gitTag; atLeast25 = lib.versionAtLeast ver.majMin "2.5"; + atLeast27 = lib.versionAtLeast ver.majMin "2.7"; baseruby = self.override { useRailsExpress = false; docSupport = false; @@ -44,6 +45,11 @@ let , groff, docSupport ? true , libyaml, yamlSupport ? true , libffi, fiddleSupport ? true + # ruby -e "puts RbConfig::CONFIG['configure_args']" + # puts a reference to the C compiler in the binary. + # This might be required by some gems at runtime, + # but we allow to strip it out for smaller closure size. + , removeReferencesTo, removeReferenceToCC ? false , autoreconfHook, bison, autoconf , buildEnv, bundler, bundix , libiconv, libobjc, libunwind, Foundation @@ -111,6 +117,12 @@ let cp ${config}/config.sub tool/ ''; + # Force the revision.h generation. Somehow `revision.tmp` is an empty + # file and because we don't add `git` to buildInputs, hence the check is + # always true. + # https://github.com/ruby/ruby/commit/97a5af62a318fcd93a4e5e4428d576c0280ddbae + buildFlags = lib.optionals atLeast27 [ "REVISION_LATEST=0" ]; + configureFlags = ["--enable-shared" "--enable-pthread" "--with-soname=ruby_${tag}"] ++ op useRailsExpress "--with-baseruby=${baseruby}/bin/ruby" ++ op (!docSupport) "--disable-install-doc" @@ -144,7 +156,14 @@ let postInstall = '' # Remove unnecessary groff reference from runtime closure, since it's big sed -i '/NROFF/d' $out/lib/ruby/*/*/rbconfig.rb - + ${ + lib.optionalString removeReferenceToCC '' + # Get rid of the CC runtime dependency + ${removeReferencesTo}/bin/remove-references-to \ + -t ${stdenv.cc} \ + $out/lib/libruby* + '' + } # Bundler tries to create this directory mkdir -p $out/nix-support cat > $out/nix-support/setup-hook <<EOF @@ -234,4 +253,12 @@ in { git = "0pay6ic22ag3bnvxffhgwp7z6clkd0p93944a1l4lvc5hxc8v77j"; }; }; + + ruby_2_7 = generic { + version = rubyVersion "2" "7" "0" ""; + sha256 = { + src = "1glc3zpnih6h8mrgfcak0aa7cgmi4zyvxfyi6y2brwg2nn9sm6cc"; + git = "11iz64k95czs273mb10195d1j75mmbcgddfdx1vay5876ffw81dq"; + }; + }; } diff --git a/pkgs/development/interpreters/ruby/patchsets.nix b/pkgs/development/interpreters/ruby/patchsets.nix index 6fbb33b27fc..4838a1a09e5 100644 --- a/pkgs/development/interpreters/ruby/patchsets.nix +++ b/pkgs/development/interpreters/ruby/patchsets.nix @@ -16,4 +16,6 @@ "${patchSet}/patches/ruby/2.6/head/railsexpress/02-improve-gc-stats.patch" "${patchSet}/patches/ruby/2.6/head/railsexpress/03-more-detailed-stacktrace.patch" ]; + "2.7.0" = ops useRailsExpress [ # no patches yet (2019-12-25) + ]; } diff --git a/pkgs/development/interpreters/ruby/rubygems/default.nix b/pkgs/development/interpreters/ruby/rubygems/default.nix index 1042caa41ac..dd1db5a8450 100644 --- a/pkgs/development/interpreters/ruby/rubygems/default.nix +++ b/pkgs/development/interpreters/ruby/rubygems/default.nix @@ -2,11 +2,11 @@ stdenv.mkDerivation rec { name = "rubygems"; - version = "3.0.6"; + version = "3.1.2"; src = fetchurl { url = "https://rubygems.org/rubygems/rubygems-${version}.tgz"; - sha256 = "1ca1i4xmggizr59m6p28gprlvshczsbx30q8iyzxb2vj4jn8arzx"; + sha256 = "0h7ij4jpj8rgnpkl63cwh2lnav73pw5wpfqra3va7077lsyadlgd"; }; patches = [ |