2018-10-17 19:27:34 +01:00
|
|
|
{ stdenv
|
|
|
|
, buildPythonPackage
|
|
|
|
, fetchurl
|
|
|
|
, vmprof
|
|
|
|
, pyqt4
|
|
|
|
, scons
|
|
|
|
, isPyPy
|
|
|
|
, pkgs
|
|
|
|
}:
|
|
|
|
|
|
|
|
let
|
|
|
|
# scons is needed but using it requires Python 2.7
|
|
|
|
# Therefore we create a separate env for it.
|
|
|
|
scons = pkgs.python27.withPackages(ps: [ pkgs.scons ]);
|
|
|
|
in buildPythonPackage rec {
|
2019-02-04 13:46:36 +00:00
|
|
|
version = "0.6.1.1";
|
2018-10-17 19:27:34 +01:00
|
|
|
pname = "Nuitka";
|
|
|
|
|
|
|
|
# Latest version is not yet on PyPi
|
|
|
|
src = fetchurl {
|
|
|
|
url = "https://github.com/kayhayen/Nuitka/archive/${version}.tar.gz";
|
2019-02-04 13:46:36 +00:00
|
|
|
sha256 = "0dlhbgn90nj110kmylyrzxd301611g63ynbpm5dfsb09s9c569zm";
|
2018-10-17 19:27:34 +01:00
|
|
|
};
|
|
|
|
|
2018-11-12 02:52:07 +00:00
|
|
|
checkInputs = [ vmprof pyqt4 ];
|
|
|
|
nativeBuildInputs = [ scons ];
|
2018-10-17 19:27:34 +01:00
|
|
|
|
|
|
|
postPatch = ''
|
|
|
|
patchShebangs tests/run-tests
|
|
|
|
'' + stdenv.lib.optionalString stdenv.isLinux ''
|
|
|
|
substituteInPlace nuitka/plugins/standard/ImplicitImports.py --replace 'locateDLL("uuid")' '"${pkgs.utillinux.out}/lib/libuuid.so"'
|
|
|
|
'';
|
|
|
|
|
|
|
|
# We do not want any wrappers here.
|
|
|
|
postFixup = '''';
|
|
|
|
|
|
|
|
checkPhase = ''
|
|
|
|
tests/run-tests
|
|
|
|
'';
|
|
|
|
|
|
|
|
# Problem with a subprocess (parts)
|
|
|
|
doCheck = false;
|
|
|
|
|
|
|
|
# Requires CPython
|
|
|
|
disabled = isPyPy;
|
|
|
|
|
|
|
|
meta = with stdenv.lib; {
|
|
|
|
description = "Python compiler with full language support and CPython compatibility";
|
|
|
|
license = licenses.asl20;
|
|
|
|
homepage = http://nuitka.net/;
|
|
|
|
};
|
|
|
|
|
|
|
|
}
|