1 { lib, stdenv, fetchurl, buildPythonPackage, python, dbus-python, sip, qt4, pkg-config, lndir, dbus, makeWrapper }:
3 buildPythonPackage rec {
4 pname = "PyQt-x11-gpl";
9 url = "mirror://sourceforge/pyqt/PyQt4_gpl_x11-${version}.tar.gz";
10 sha256 = "1nw8r88a5g2d550yvklawlvns8gd5slw53yy688kxnsa65aln79w";
15 lndir ${dbus-python} $out
16 rm -rf "$out/nix-support"
18 export PYTHONPATH=$PYTHONPATH:$out/lib/${python.libPrefix}/site-packages
19 ${lib.optionalString stdenv.isDarwin ''
20 export QMAKESPEC="unsupported/macx-clang-libc++" # macOS target after bootstrapping phase \
23 substituteInPlace configure.py \
24 --replace 'install_dir=pydbusmoddir' "install_dir='$out/lib/${python.libPrefix}/site-packages/dbus/mainloop'" \
25 ${lib.optionalString stdenv.isDarwin ''
26 --replace "qt_macx_spec = 'macx-g++'" "qt_macx_spec = 'unsupported/macx-clang-libc++'" # for bootstrapping phase \
30 sed -i '1i#!${python.interpreter}' configure.py
33 configureScript = "./configure.py";
37 "--bindir=${placeholder "out"}/bin"
38 "--destdir=${placeholder "out"}/${python.sitePackages}"
39 "--plugin-destdir=${placeholder "out"}/lib/qt4/plugins"
40 "--sipdir=${placeholder "out"}/share/sip/PyQt4"
41 "--dbus=${lib.getDev dbus-python}/include/dbus-1.0"
45 nativeBuildInputs = [ pkg-config lndir makeWrapper qt4 ];
46 buildInputs = [ qt4 dbus ];
48 propagatedBuildInputs = [ sip ];
51 for i in $out/bin/*; do
52 wrapProgram $i --prefix PYTHONPATH : "$PYTHONPATH"
56 enableParallelBuilding = true;
63 description = "Python bindings for Qt";
65 homepage = "http://www.riverbankcomputing.co.uk";
66 maintainers = [ maintainers.sander ];
67 platforms = platforms.mesaPlatforms;