diff --git a/pkgs/development/python-modules/pyqt/5.x.nix b/pkgs/development/python-modules/pyqt/5.x.nix new file mode 100644 index 00000000000..2d2a2ed5151 --- /dev/null +++ b/pkgs/development/python-modules/pyqt/5.x.nix @@ -0,0 +1,51 @@ +{ stdenv, fetchurl, python, pkgconfig, qt5, sip, pythonDBus, lndir, makeWrapper }: + +let + version = "5.3"; +in stdenv.mkDerivation { + name = "PyQt-${version}"; + + meta = with stdenv.lib; { + description = "Python bindings for Qt5"; + homepage = http://www.riverbankcomputing.co.uk; + license = licenses.gpl3; + platforms = platforms.mesaPlatforms; + maintainers = with maintainers; [ sander iyzsong ]; + }; + + src = fetchurl { + url = "mirror://sourceforge/pyqt/PyQt5/PyQt-${version}/PyQt-gpl-${version}.tar.gz"; + sha256 = "0xc1cc68fi989rfybibimhhi3mqn3b93n0p3jdqznzabgilcb1m2"; + }; + + buildInputs = [ python pkgconfig makeWrapper lndir qt5 ]; + + propagatedBuildInputs = [ sip ]; + + configurePhase = '' + mkdir -p $out + lndir ${pythonDBus} $out + + export PYTHONPATH=$PYTHONPATH:$out/lib/${python.libPrefix}/site-packages + + substituteInPlace configure.py \ + --replace 'install_dir=pydbusmoddir' "install_dir='$out/lib/${python.libPrefix}/site-packages/dbus/mainloop'" + + ${python.executable} configure.py -w \ + --confirm-license \ + --dbus=$out/include/dbus-1.0 \ + --no-qml-plugin \ + --bindir=$out/bin \ + --destdir=$out/lib/${python.libPrefix}/site-packages \ + --sipdir=$out/share/sip \ + --designer-plugindir=$out/plugins/designer + ''; + + postInstall = '' + for i in $out/bin/*; do + wrapProgram $i --prefix PYTHONPATH : "$PYTHONPATH" + done + ''; + + enableParallelBuilding = true; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index e136fb541f0..fb35d7ef592 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -163,6 +163,14 @@ rec { pythonDBus = dbus; }; + pyqt5 = import ../development/python-modules/pyqt/5.x.nix { + inherit (pkgs) stdenv fetchurl pkgconfig qt5 makeWrapper; + inherit (pkgs.xorg) lndir; + inherit python; + sip = sip_4_16; + pythonDBus = dbus; + }; + sip = import ../development/python-modules/sip { inherit (pkgs) stdenv fetchurl; inherit python;