Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{ lib 2, stdenv 3, buildPythonPackage 4, fetchPypi 5, pkgconfig 6, which 7, cairo 8, pango 9, python 10, doxygen 11, ncurses 12, wxGTK 13, numpy 14, pillow 15, six 16}: 17 18buildPythonPackage rec { 19 pname = "wxPython"; 20 version = "4.0.7.post2"; 21 22 src = fetchPypi { 23 inherit pname version; 24 sha256 = "5a229e695b64f9864d30a5315e0c1e4ff5e02effede0a07f16e8d856737a0c4e"; 25 }; 26 27 doCheck = false; 28 29 nativeBuildInputs = [ pkgconfig which doxygen wxGTK ]; 30 buildInputs = [ ncurses wxGTK.gtk ]; 31 32 DOXYGEN = "${doxygen}/bin/doxygen"; 33 34 preConfigure = lib.optionalString (!stdenv.isDarwin) '' 35 substituteInPlace wx/lib/wxcairo/wx_pycairo.py \ 36 --replace 'cairoLib = None' 'cairoLib = ctypes.CDLL("${cairo}/lib/libcairo.so")' 37 substituteInPlace wx/lib/wxcairo/wx_pycairo.py \ 38 --replace '_dlls = dict()' '_dlls = {k: ctypes.CDLL(v) for k, v in [ 39 ("gdk", "${wxGTK.gtk}/lib/libgtk-x11-2.0.so"), 40 ("pangocairo", "${pango.out}/lib/libpangocairo-1.0.so"), 41 ("appsvc", None) 42 ]}' 43 ''; 44 45 buildPhase = '' 46 ${python.interpreter} build.py -v --use_syswx dox etg --nodoc sip build_py 47 ''; 48 49 installPhase = '' 50 ${python.interpreter} setup.py install --skip-build --prefix=$out 51 ''; 52 53 passthru = { inherit wxGTK; }; 54 55 56 meta = { 57 description = "Cross platform GUI toolkit for Python, Phoenix version"; 58 homepage = "http://wxpython.org/"; 59 license = lib.licenses.wxWindows; 60 }; 61 62}