Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
at 17.09 1.7 kB view raw
1{ stdenv, fetchurl, python, pkgconfig, gtk2, pygobject2, pycairo 2, buildPythonPackage, libglade ? null, isPy3k }: 3 4buildPythonPackage rec { 5 name = "pygtk-2.24.0"; 6 7 disabled = isPy3k; 8 9 src = fetchurl { 10 url = "mirror://gnome/sources/pygtk/2.24/${name}.tar.bz2"; 11 sha256 = "04k942gn8vl95kwf0qskkv6npclfm31d78ljkrkgyqxxcni1w76d"; 12 }; 13 14 buildInputs = [ pkgconfig ] 15 ++ stdenv.lib.optional (libglade != null) libglade; 16 17 propagatedBuildInputs = [ gtk2 pygobject2 pycairo ]; 18 19 configurePhase = "configurePhase"; 20 21 buildPhase = "buildPhase"; 22 23 NIX_CFLAGS_COMPILE = stdenv.lib.optionalString stdenv.isDarwin "-ObjC"; 24 25 installPhase = "installPhase"; 26 27 checkPhase = stdenv.lib.optionalString (libglade == null) 28 '' 29 sed -i -e "s/glade = importModule('gtk.glade', buildDir)//" \ 30 tests/common.py 31 sed -i -e "s/, glade$//" \ 32 -e "s/.*testGlade.*//" \ 33 -e "s/.*(glade.*//" \ 34 tests/test_api.py 35 '' + '' 36 sed -i -e "s/sys.path.insert(0, os.path.join(buildDir, 'gtk'))//" \ 37 -e "s/sys.path.insert(0, buildDir)//" \ 38 tests/common.py 39 make check 40 ''; 41 # XXX: TypeError: Unsupported type: <class 'gtk._gtk.WindowType'> 42 # The check phase was not executed in the previous 43 # non-buildPythonPackage setup - not sure why not. 44 doCheck = false; 45 46 postInstall = '' 47 rm $out/bin/pygtk-codegen-2.0 48 ln -s ${pygobject2}/bin/pygobject-codegen-2.0 $out/bin/pygtk-codegen-2.0 49 ln -s ${pygobject2}/lib/${python.libPrefix}/site-packages/pygobject-${pygobject2.version}.pth \ 50 $out/lib/${python.libPrefix}/site-packages/${name}.pth 51 ''; 52}