diff options
Diffstat (limited to 'pkgs/development/interpreters')
16 files changed, 96 insertions, 138 deletions
diff --git a/pkgs/development/interpreters/elixir/1.10.nix b/pkgs/development/interpreters/elixir/1.10.nix new file mode 100644 index 000000000000..f9e1451354d6 --- /dev/null +++ b/pkgs/development/interpreters/elixir/1.10.nix @@ -0,0 +1,9 @@ +{ mkDerivation }: + +# How to obtain `sha256`: +# nix-prefetch-url --unpack https://github.com/elixir-lang/elixir/archive/v${version}.tar.gz +mkDerivation { + version = "1.10.0"; + sha256 = "1fz22c2jqqm2jvzxar11bh1djg3kqdn5rbxdddlz0cv6mfz7hvgv"; + minimumOTPVersion = "21"; +} diff --git a/pkgs/development/interpreters/elixir/1.5.nix b/pkgs/development/interpreters/elixir/1.5.nix deleted file mode 100644 index 229c42d9f7b2..000000000000 --- a/pkgs/development/interpreters/elixir/1.5.nix +++ /dev/null @@ -1,7 +0,0 @@ -{ mkDerivation }: - -mkDerivation { - version = "1.5.3"; - sha256 = "00kgqcn9g6vflc551wniz9pwv7pszyf8v6smpkqs50j3kbliihy5"; - minimumOTPVersion = "18"; -} diff --git a/pkgs/development/interpreters/evcxr/default.nix b/pkgs/development/interpreters/evcxr/default.nix index 1cc63788555f..168b012efcc1 100644 --- a/pkgs/development/interpreters/evcxr/default.nix +++ b/pkgs/development/interpreters/evcxr/default.nix @@ -2,16 +2,16 @@ rustPlatform.buildRustPackage rec { pname = "evcxr"; - version = "0.4.6"; + version = "0.5.0"; src = fetchFromGitHub { owner = "google"; repo = "evcxr"; - rev = "v${version}"; - sha256 = "1yzvqf93zz3ncck4dyq2kayp408lm3h6fx0fb212j7h70mlzx984"; + rev = "239e431c58d04c641da22af791e4d3e1b894365e"; + sha256 = "0vkcis06gwsqfwvrl8xcf74mfcs6j77b9fhcz5rrh77mwl7ixsdc"; }; - cargoSha256 = "0g17g12isah4nkqp9i299qr1sz19k4czcc43rm1wbs0y9szaqvwc"; + cargoSha256 = "04wffj2y9pqyk0x3y6ghp06pggmxnk2h245iabqq0mpwx36fd8b6"; nativeBuildInputs = [ pkgconfig makeWrapper cmake ]; buildInputs = stdenv.lib.optional stdenv.isDarwin Security; diff --git a/pkgs/development/interpreters/groovy/default.nix b/pkgs/development/interpreters/groovy/default.nix index bdd138418969..67d9ecf9c61f 100644 --- a/pkgs/development/interpreters/groovy/default.nix +++ b/pkgs/development/interpreters/groovy/default.nix @@ -4,11 +4,11 @@ stdenv.mkDerivation rec { pname = "groovy"; - version = "2.5.8"; + version = "2.5.9"; src = fetchurl { url = "http://dl.bintray.com/groovy/maven/apache-groovy-binary-${version}.zip"; - sha256 = "0hl7m9fpmrn9ppxbb3pm68048xpzig7q6hqyg121gvcziywi9ys9"; + sha256 = "16xq8mz7270kmiq4xb0g52y7ik1bbl2nb8aaz9zw8a9h38rdr9zy"; }; buildInputs = [ unzip makeWrapper ]; diff --git a/pkgs/development/interpreters/jython/default.nix b/pkgs/development/interpreters/jython/default.nix index 0e1734565f2f..84941f9a6fa6 100644 --- a/pkgs/development/interpreters/jython/default.nix +++ b/pkgs/development/interpreters/jython/default.nix @@ -3,11 +3,11 @@ stdenv.mkDerivation rec { pname = "jython"; - version = "2.7.1"; + version = "2.7.2b2"; src = fetchurl { url = "http://search.maven.org/remotecontent?filepath=org/python/jython-standalone/${version}/jython-standalone-${version}.jar"; - sha256 = "0jwc4ly75cna78blnisv4q8nfcn5s0g4wk7jf4d16j0rfcd0shf4"; + sha256 = "0mmrrydr94q2siwjynkw1gw677navmcvjvbi1jpdbp6idfx0jh6b"; }; buildInputs = [ makeWrapper ]; diff --git a/pkgs/development/interpreters/perl/wrapper.nix b/pkgs/development/interpreters/perl/wrapper.nix index 95122aebf039..2e3d394f8515 100644 --- a/pkgs/development/interpreters/perl/wrapper.nix +++ b/pkgs/development/interpreters/perl/wrapper.nix @@ -35,7 +35,7 @@ let if [ -f "$prg" ]; then rm -f "$out/bin/$prg" if [ -x "$prg" ]; then - makeWrapper "$path/bin/$prg" "$out/bin/$prg" --set PERL5LIB "$out/${perl.libPrefix}" + makeWrapper "$path/bin/$prg" "$out/bin/$prg" --suffix PERL5LIB ':' "$out/${perl.libPrefix}" fi fi done diff --git a/pkgs/development/interpreters/pure/default.nix b/pkgs/development/interpreters/pure/default.nix index 9c35fc354976..19e6c93378f7 100644 --- a/pkgs/development/interpreters/pure/default.nix +++ b/pkgs/development/interpreters/pure/default.nix @@ -24,7 +24,7 @@ stdenv.mkDerivation rec { configureFlags = [ "--enable-release" ]; doCheck = true; checkPhase = '' - LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${llvm}/lib make check + LD_LIBRARY_PATH=$LD_LIBRARY_PATH''${LD_LIBRARY_PATH:+:}${llvm}/lib make check ''; postInstall = '' wrapProgram $out/bin/pure --prefix LD_LIBRARY_PATH : ${llvm}/lib @@ -40,5 +40,6 @@ stdenv.mkDerivation rec { platforms = with lib.platforms; linux; license = lib.licenses.gpl3Plus; + broken = true; }; } diff --git a/pkgs/development/interpreters/python/cpython/2.7/boot.nix b/pkgs/development/interpreters/python/cpython/2.7/boot.nix deleted file mode 100644 index 0b9ddc0bb345..000000000000 --- a/pkgs/development/interpreters/python/cpython/2.7/boot.nix +++ /dev/null @@ -1,103 +0,0 @@ -{ stdenv, fetchurl, configd, CF, coreutils }: - -with stdenv.lib; - -let - - mkPaths = paths: { - C_INCLUDE_PATH = makeSearchPathOutput "dev" "include" paths; - LIBRARY_PATH = makeLibraryPath paths; - }; - -in - -stdenv.mkDerivation rec { - pname = "python-boot"; - version = "2.7.12"; - libPrefix = "python2.7"; - - src = fetchurl { - url = "https://www.python.org/ftp/python/2.7.12/Python-${version}.tar.xz"; - sha256 = "0y7rl603vmwlxm6ilkhc51rx2mfj14ckcz40xxgs0ljnvlhp30yp"; - }; - - inherit (mkPaths buildInputs) C_INCLUDE_PATH LIBRARY_PATH; - - LDFLAGS = optionalString (!stdenv.isDarwin) "-lgcc_s"; - NIX_CFLAGS_COMPILE = optionalString stdenv.isDarwin "-msse2"; - - buildInputs = optionals stdenv.isDarwin [ CF configd ]; - - patches = - [ # Look in C_INCLUDE_PATH and LIBRARY_PATH for stuff. - ./search-path.patch - - # Python recompiles a Python if the mtime stored *in* the - # pyc/pyo file differs from the mtime of the source file. This - # doesn't work in Nix because Nix changes the mtime of files in - # the Nix store to 1. So treat that as a special case. - ./nix-store-mtime.patch - - # patch python to put zero timestamp into pyc - # if DETERMINISTIC_BUILD env var is set - ./deterministic-build.patch - ]; - - # Hack hack hack to stop shit from failing from a missing _scproxy on Darwin. Since - # we only use this python for bootstrappy things, it doesn't really matter if it - # doesn't have perfect proxy support in urllib :) this just makes it fall back on env - # vars instead of attempting to read the proxy configuration automatically, so not a - # huge loss even if for whatever reason we did want proxy support. - postPatch = '' - substituteInPlace Lib/urllib.py --replace "if sys.platform == 'darwin'" "if False" - ''; - - DETERMINISTIC_BUILD = 1; - - preConfigure = '' - # Purity. - for i in /usr /sw /opt /pkg; do - substituteInPlace ./setup.py --replace $i /no-such-path - done - '' + optionalString (stdenv ? cc && stdenv.cc.libc != null) '' - for i in Lib/plat-*/regen; do - substituteInPlace $i --replace /usr/include/ ${stdenv.cc.libc}/include/ - done - '' + optionalString stdenv.isDarwin '' - substituteInPlace configure --replace '`/usr/bin/arch`' '"i386"' - substituteInPlace Lib/multiprocessing/__init__.py \ - --replace 'os.popen(comm)' 'os.popen("${coreutils}/bin/nproc")' - ''; - - configureFlags = [ "--enable-shared" "--with-threads" "--enable-unicode=ucs4" ] - ++ optionals stdenv.isCygwin [ "ac_cv_func_bind_textdomain_codeset=yes" ] - ++ optionals stdenv.isDarwin [ "--disable-toolbox-glue" ]; - - postInstall = - '' - ln -s $out/share/man/man1/{python2.7.1.gz,python.1.gz} - - rm "$out"/lib/python*/plat-*/regen # refers to glibc.dev - ''; - - enableParallelBuilding = true; - - passthru.pkgs = builtins.throw "python-boot does not support packages, this package is only intended for bootstrapping." {}; - - meta = { - homepage = http://python.org; - description = "A high-level dynamically-typed programming language"; - longDescription = '' - Python is a remarkably powerful dynamic programming language that - is used in a wide variety of application domains. Some of its key - distinguishing features include: clear, readable syntax; strong - introspection capabilities; intuitive object orientation; natural - expression of procedural code; full modularity, supporting - hierarchical packages; exception-based error handling; and very - high level dynamic data types. - ''; - license = stdenv.lib.licenses.psfl; - platforms = stdenv.lib.platforms.all; - maintainers = with stdenv.lib.maintainers; [ lnl7 domenkozar ]; - }; -} diff --git a/pkgs/development/interpreters/python/cpython/2.7/default.nix b/pkgs/development/interpreters/python/cpython/2.7/default.nix index e6b3dff433b3..77b37c5f5c39 100644 --- a/pkgs/development/interpreters/python/cpython/2.7/default.nix +++ b/pkgs/development/interpreters/python/cpython/2.7/default.nix @@ -11,7 +11,7 @@ , tcl ? null, tk ? null, tix ? null, xlibsWrapper ? null, libX11 ? null, x11Support ? false , zlib , self -, CF, configd, coreutils +, configd, coreutils , python-setup-hook # Some proprietary libs assume UCS2 unicode, especially on darwin :( , ucsEncoding ? 4 @@ -180,7 +180,7 @@ let ++ optional stdenv.hostPlatform.isCygwin expat ++ [ db gdbm ncurses sqlite readline ] ++ optionals x11Support [ tcl tk xlibsWrapper libX11 ] - ++ optionals stdenv.isDarwin ([ CF ] ++ optional (configd != null) configd); + ++ optional (stdenv.isDarwin && configd != null) configd; nativeBuildInputs = optionals (stdenv.hostPlatform != stdenv.buildPlatform) [ buildPackages.stdenv.cc buildPackages.python ]; diff --git a/pkgs/development/interpreters/python/cpython/default.nix b/pkgs/development/interpreters/python/cpython/default.nix index e75bd0a09875..70eff43daf5c 100644 --- a/pkgs/development/interpreters/python/cpython/default.nix +++ b/pkgs/development/interpreters/python/cpython/default.nix @@ -11,7 +11,7 @@ , tcl ? null, tk ? null, tix ? null, libX11 ? null, xorgproto ? null, x11Support ? false , zlib , self -, CF, configd +, configd , python-setup-hook , nukeReferences # For the Python package set @@ -57,10 +57,10 @@ let pythonForBuild ]; - buildInputs = filter (p: p != null) [ + buildInputs = filter (p: p != null) ([ zlib bzip2 expat lzma libffi gdbm sqlite readline ncurses openssl ] ++ optionals x11Support [ tcl tk libX11 xorgproto ] - ++ optionals stdenv.isDarwin [ CF configd ]; + ++ optionals stdenv.isDarwin [ configd ]); hasDistutilsCxxPatch = !(stdenv.cc.isGNU or false); diff --git a/pkgs/development/interpreters/python/default.nix b/pkgs/development/interpreters/python/default.nix index caf2e13bdf62..b4326235c4e7 100644 --- a/pkgs/development/interpreters/python/default.nix +++ b/pkgs/development/interpreters/python/default.nix @@ -57,7 +57,7 @@ in { suffix = ""; }; sha256 = "0hds28cg226m8j8sr394nm9yc4gxhvlv109w0avsf2mxrlrz0hsd"; - inherit (darwin) CF configd; + inherit (darwin) configd; inherit passthruFun; }; @@ -70,7 +70,7 @@ in { suffix = ""; }; sha256 = "0jdh9pvx6m6lfz2liwvvhn7vks7qrysqgwn517fkpxb77b33fjn2"; - inherit (darwin) CF configd; + inherit (darwin) configd; inherit passthruFun; }; @@ -83,7 +83,7 @@ in { suffix = ""; }; sha256 = "1pj0mz1xl27khi250p29c0y99vxg662js8zp71aprkf8i8wkr0qa"; - inherit (darwin) CF configd; + inherit (darwin) configd; inherit passthruFun; }; @@ -96,7 +96,7 @@ in { suffix = ""; }; sha256 = "0gskry19ylw91p38pdq36qcgk6h3x5i4ia0ik977kw2943kwr8jm"; - inherit (darwin) CF configd; + inherit (darwin) configd; inherit passthruFun; }; @@ -109,7 +109,7 @@ in { suffix = ""; }; sha256 = "1s4lwn5vzsajlc88m6hkghsvnjw4d00l2dsgng0m2w6vyqbl32bm"; - inherit (darwin) CF configd; + inherit (darwin) configd; inherit passthruFun; }; @@ -122,7 +122,7 @@ in { suffix = "a2"; }; sha256 = "02a301bdcldin05ksdg8xw8xr6gdkpf73p0cabvn9rdl6yhkr3q8"; - inherit (darwin) CF configd; + inherit (darwin) configd; inherit passthruFun; }; @@ -136,6 +136,7 @@ in { ncurses = null; gdbm = null; sqlite = null; + configd = null; stripConfig = true; stripIdlelib = true; stripTests = true; @@ -158,9 +159,11 @@ in { }; sha256 = "0yq6ln1ic476sasp8zs4mg5i9524l1p96qwanp486rr1yza1grlg"; pythonVersion = "2.7"; - db = db.override { dbmSupport = true; }; + db = db.override { dbmSupport = !stdenv.isDarwin; }; python = python27; inherit passthruFun; + inherit (darwin) libunwind; + inherit (darwin.apple_sdk.frameworks) Security; }; pypy36 = callPackage ./pypy { @@ -172,9 +175,11 @@ in { }; sha256 = "1hqvnran7d2dzj5555n7q680dyzhmbklz04pvkxgb5j604v7kkx1"; pythonVersion = "3.6"; - db = db.override { dbmSupport = true; }; + db = db.override { dbmSupport = !stdenv.isDarwin; }; python = python27; inherit passthruFun; + inherit (darwin) libunwind; + inherit (darwin.apple_sdk.frameworks) Security; }; pypy27_prebuilt = callPackage ./pypy/prebuilt.nix { diff --git a/pkgs/development/interpreters/python/pypy/default.nix b/pkgs/development/interpreters/python/pypy/default.nix index b220bfa0f934..0c4f3eda7b1e 100644 --- a/pkgs/development/interpreters/python/pypy/default.nix +++ b/pkgs/development/interpreters/python/pypy/default.nix @@ -1,5 +1,5 @@ { stdenv, substituteAll, fetchurl -, zlib ? null, zlibSupport ? true, bzip2, pkgconfig, libffi +, zlib ? null, zlibSupport ? true, bzip2, pkgconfig, libffi, libunwind, Security , sqlite, openssl_1_0_2, ncurses, python, expat, tcl, tk, tix, xlibsWrapper, libX11 , self, gdbm, db, lzma , python-setup-hook @@ -47,6 +47,8 @@ in with passthru; stdenv.mkDerivation rec { stdenv.cc.libc ] ++ optionals zlibSupport [ zlib + ] ++ optionals stdenv.isDarwin [ + libunwind Security ]; hardeningDisable = optional stdenv.isi686 "pic"; @@ -127,13 +129,17 @@ in with passthru; stdenv.mkDerivation rec { mkdir -p $out/{bin,include,lib,${executable}-c} cp -R {include,lib_pypy,lib-python,${executable}-c} $out/${executable}-c - cp lib${executable}-c.so $out/lib/ + cp lib${executable}-c${stdenv.hostPlatform.extensions.sharedLibrary} $out/lib/ ln -s $out/${executable}-c/${executable}-c $out/bin/${executable} # other packages expect to find stuff according to libPrefix ln -s $out/${executable}/include $out/include/${libPrefix} ln -s $out/${executable}-c/lib-python/${if isPy3k then "3" else pythonVersion} $out/lib/${libPrefix} + ${stdenv.lib.optionalString stdenv.isDarwin '' + install_name_tool -change @rpath/libpypy${optionalString isPy3k "3"}-c.dylib $out/lib/libpypy${optionalString isPy3k "3"}-c.dylib $out/bin/${executable} + ''} + # 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'"} diff --git a/pkgs/development/interpreters/python/pypy/tk_tcl_paths.patch b/pkgs/development/interpreters/python/pypy/tk_tcl_paths.patch index 92bbfc557b35..0b78caf7e075 100644 --- a/pkgs/development/interpreters/python/pypy/tk_tcl_paths.patch +++ b/pkgs/development/interpreters/python/pypy/tk_tcl_paths.patch @@ -1,6 +1,13 @@ --- pypy-pypy-84a2f3e6a7f8.org/lib_pypy/_tkinter/tklib_build.py 2017-10-03 11:49:20.000000000 +0100 +++ pypy-pypy-84a2f3e6a7f8/lib_pypy/_tkinter/tklib_build.py 2017-11-21 13:20:51.398607530 +0000 -@@ -24,11 +24,11 @@ +@@ -17,18 +17,14 @@ + incdirs = [] + linklibs = ['tcl85', 'tk85'] + libdirs = [] +-elif sys.platform == 'darwin': +- incdirs = ['/System/Library/Frameworks/Tk.framework/Versions/Current/Headers/'] +- linklibs = ['tcl', 'tk'] +- libdirs = [] else: # On some Linux distributions, the tcl and tk libraries are # stored in /usr/include, so we must check this case also diff --git a/pkgs/development/interpreters/quickjs/default.nix b/pkgs/development/interpreters/quickjs/default.nix index e7f01856ef59..b1d03252d7ef 100644 --- a/pkgs/development/interpreters/quickjs/default.nix +++ b/pkgs/development/interpreters/quickjs/default.nix @@ -35,7 +35,7 @@ stdenv.mkDerivation rec { meta = with stdenv.lib; { description = "A small and embeddable Javascript engine"; homepage = "https://bellard.org/quickjs/"; - maintainers = with maintainers; [ stesie ivan ]; + maintainers = with maintainers; [ stesie ]; platforms = platforms.linux; license = licenses.mit; }; diff --git a/pkgs/development/interpreters/racket/default.nix b/pkgs/development/interpreters/racket/default.nix index 3b3b91afd6f0..f12d1f1090fb 100644 --- a/pkgs/development/interpreters/racket/default.nix +++ b/pkgs/development/interpreters/racket/default.nix @@ -102,7 +102,7 @@ stdenv.mkDerivation rec { libraries support applications from web servers and databases to GUIs and charts. ''; - homepage = http://racket-lang.org/; + homepage = https://racket-lang.org/; license = with licenses; [ asl20 /* or */ mit ]; maintainers = with maintainers; [ kkallio henrytill vrthra ]; platforms = [ "x86_64-darwin" "x86_64-linux" ]; diff --git a/pkgs/development/interpreters/wasmer/default.nix b/pkgs/development/interpreters/wasmer/default.nix new file mode 100644 index 000000000000..7c270e5fb447 --- /dev/null +++ b/pkgs/development/interpreters/wasmer/default.nix @@ -0,0 +1,40 @@ +{ lib +, rustPlatform +, fetchFromGitHub +, cmake +, llvmPackages +, pkg-config +}: + +rustPlatform.buildRustPackage rec { + pname = "wasmer"; + version = "0.13.0"; + + src = fetchFromGitHub { + owner = "wasmerio"; + repo = pname; + rev = version; + sha256 = "1k9zd2vhrbvxlpkh21m39alk5lfhd3xa25k0awis27plfpv8fqcq"; + fetchSubmodules = true; + }; + + cargoSha256 = "1yp7kandh5hh8hkzlmqpj05vwgr5v4nil8blf3scbppg865qk3rq"; + + nativeBuildInputs = [ cmake pkg-config ]; + + LIBCLANG_PATH = "${llvmPackages.libclang}/lib"; + + meta = with lib; { + description = "The Universal WebAssembly Runtime"; + longDescription = '' + Wasmer is a standalone WebAssembly runtime for running WebAssembly outside + of the browser, supporting WASI and Emscripten. Wasmer can be used + standalone (via the CLI) and embedded in different languages, running in + x86 and ARM devices. + ''; + homepage = "https://wasmer.io/"; + license = licenses.mit; + maintainers = with maintainers; [ filalex77 ]; + platforms = platforms.all; + }; +} |