nixpkgs/pkgs/development/python-modules/nuitka/default.nix

55 lines
1.2 KiB
Nix
Raw Normal View History

{ 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 {
version = "0.5.25";
pname = "Nuitka";
# Latest version is not yet on PyPi
src = fetchurl {
url = "https://github.com/kayhayen/Nuitka/archive/${version}.tar.gz";
sha256 = "11psz0pyj56adv4b3f47hl8jakvp2mc2c85s092a5rsv1la1a0aa";
};
buildInputs = stdenv.lib.optionals doCheck [ vmprof pyqt4 ];
propagatedBuildInputs = [ scons ];
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/;
};
}