1{ lib, fetchurl, pythonPackages, qt4, pkgconfig, lndir, dbus_libs, makeWrapper }:
2
3let
4 version = "4.11.3";
5 inherit (pythonPackages) mkPythonDerivation python dbus-python sip;
6in mkPythonDerivation {
7 name = "PyQt-x11-gpl-${version}";
8
9 src = fetchurl {
10 url = "mirror://sourceforge/pyqt/PyQt4/PyQt-${version}/PyQt-x11-gpl-${version}.tar.gz";
11 sha256 = "11jnfjw79s0b0qdd9s6kd69w87vf16dhagbhbmwbmrp2vgf80dw5";
12 };
13
14 configurePhase = ''
15 mkdir -p $out
16 lndir ${dbus-python} $out
17
18 export PYTHONPATH=$PYTHONPATH:$out/lib/${python.libPrefix}/site-packages
19
20 substituteInPlace configure.py \
21 --replace 'install_dir=pydbusmoddir' "install_dir='$out/lib/${python.libPrefix}/site-packages/dbus/mainloop'"
22
23 configureFlagsArray=( \
24 --confirm-license --bindir $out/bin \
25 --destdir $out/${python.sitePackages} \
26 --plugin-destdir $out/lib/qt4/plugins --sipdir $out/share/sip/PyQt4 \
27 --dbus=${dbus_libs.dev}/include/dbus-1.0 --verbose)
28
29 ${python.executable} configure.py $configureFlags "''${configureFlagsArray[@]}"
30 '';
31
32 buildInputs = [ pkgconfig makeWrapper qt4 lndir dbus_libs ];
33
34 propagatedBuildInputs = [ sip ];
35
36 postInstall = ''
37 for i in $out/bin/*; do
38 wrapProgram $i --prefix PYTHONPATH : "$PYTHONPATH"
39 done
40 '';
41
42 enableParallelBuilding = true;
43
44 passthru = {
45 qt = qt4;
46 };
47
48 meta = {
49 description = "Python bindings for Qt";
50 license = "GPL";
51 homepage = http://www.riverbankcomputing.co.uk;
52 maintainers = [ lib.maintainers.sander ];
53 platforms = lib.platforms.mesaPlatforms;
54 };
55}