pygtk in pythonPackages, checks disabled, demo works, relates #223
Previously the checkPhase was not executed. It is now and a couple of issues with it are seded away.
This commit is contained in:
parent
59879f6496
commit
a7a6173a3f
@ -1,7 +1,7 @@
|
|||||||
{ stdenv, fetchurl, makeWrapper, python, pkgconfig, glib, gtk, pygobject, pycairo
|
{ stdenv, fetchurl, python, pkgconfig, glib, gtk, pygobject, pycairo
|
||||||
, libglade ? null }:
|
, buildPythonPackage, libglade ? null }:
|
||||||
|
|
||||||
stdenv.mkDerivation rec {
|
buildPythonPackage rec {
|
||||||
name = "pygtk-2.22.0";
|
name = "pygtk-2.22.0";
|
||||||
|
|
||||||
src = fetchurl {
|
src = fetchurl {
|
||||||
@ -10,26 +10,35 @@ stdenv.mkDerivation rec {
|
|||||||
};
|
};
|
||||||
|
|
||||||
buildInputs =
|
buildInputs =
|
||||||
[ makeWrapper python pkgconfig glib gtk ]
|
[ pkgconfig glib gtk ]
|
||||||
++ stdenv.lib.optional (libglade != null) libglade;
|
++ stdenv.lib.optional (libglade != null) libglade;
|
||||||
|
|
||||||
propagatedBuildInputs = [ pygobject pycairo ];
|
propagatedBuildInputs = [ pygobject pycairo ];
|
||||||
|
|
||||||
|
installCommand = "make install";
|
||||||
|
checkPhase = stdenv.lib.optionalString (libglade == null)
|
||||||
|
''
|
||||||
|
sed -i -e "s/glade = importModule('gtk.glade', buildDir)//" \
|
||||||
|
tests/common.py
|
||||||
|
sed -i -e "s/, glade$//" \
|
||||||
|
-e "s/.*testGlade.*//" \
|
||||||
|
-e "s/.*(glade.*//" \
|
||||||
|
tests/test_api.py
|
||||||
|
'' + ''
|
||||||
|
sed -i -e "s/sys.path.insert(0, os.path.join(buildDir, 'gtk'))//" \
|
||||||
|
-e "s/sys.path.insert(0, buildDir)//" \
|
||||||
|
tests/common.py
|
||||||
|
make check
|
||||||
|
'';
|
||||||
|
# XXX: TypeError: Unsupported type: <class 'gtk._gtk.WindowType'>
|
||||||
|
# The check phase was not executed in the previous
|
||||||
|
# non-buildPythonPackage setup - not sure why not.
|
||||||
|
doCheck = false;
|
||||||
|
|
||||||
postInstall = ''
|
postInstall = ''
|
||||||
rm $out/bin/pygtk-codegen-2.0
|
rm $out/bin/pygtk-codegen-2.0
|
||||||
ln -s ${pygobject}/bin/pygobject-codegen-2.0 $out/bin/pygtk-codegen-2.0
|
ln -s ${pygobject}/bin/pygobject-codegen-2.0 $out/bin/pygtk-codegen-2.0
|
||||||
|
ln -s ${pygobject}/lib/${python.libPrefix}/site-packages/${pygobject.name}.pth \
|
||||||
# All python code is installed into a "gtk-2.0" sub-directory. That
|
$out/lib/${python.libPrefix}/site-packages/${name}.pth
|
||||||
# sub-directory may be useful on systems which share several library
|
|
||||||
# versions in the same prefix, i.e. /usr/local, but on Nix that directory
|
|
||||||
# is useless. Furthermore, its existence makes it very hard to guess a
|
|
||||||
# proper $PYTHONPATH that allows "import gtk" to succeed.
|
|
||||||
cd $(toPythonPath $out)/gtk-2.0
|
|
||||||
for n in *; do
|
|
||||||
ln -s "gtk-2.0/$n" "../$n"
|
|
||||||
done
|
|
||||||
|
|
||||||
wrapProgram $out/bin/pygtk-demo --prefix PYTHONPATH ":" \
|
|
||||||
$(toPythonPath "${pygobject} ${pycairo} $out")
|
|
||||||
'';
|
'';
|
||||||
}
|
}
|
||||||
|
@ -5311,11 +5311,9 @@ let
|
|||||||
|
|
||||||
pygobject = pythonPackages.pygobject;
|
pygobject = pythonPackages.pygobject;
|
||||||
|
|
||||||
pygtk = callPackage ../development/python-modules/pygtk { };
|
pygtk = pythonPackages.pygtk;
|
||||||
|
|
||||||
pyGtkGlade = callPackage ../development/python-modules/pygtk {
|
pyGtkGlade = pythonPackages.pyGtkGlade;
|
||||||
inherit (gnome) libglade;
|
|
||||||
};
|
|
||||||
|
|
||||||
pyopenssl = builderDefsPackage (import ../development/python-modules/pyopenssl) {
|
pyopenssl = builderDefsPackage (import ../development/python-modules/pyopenssl) {
|
||||||
inherit python openssl;
|
inherit python openssl;
|
||||||
|
@ -67,6 +67,20 @@ let pythonPackages = python.modules // rec {
|
|||||||
inherit python;
|
inherit python;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
pygtk = import ../development/python-modules/pygtk {
|
||||||
|
inherit (pkgs) fetchurl stdenv pkgconfig glib gtk;
|
||||||
|
inherit python buildPythonPackage pygobject pycairo;
|
||||||
|
};
|
||||||
|
|
||||||
|
# XXX: how can we get an override here?
|
||||||
|
#pyGtkGlade = pygtk.override {
|
||||||
|
# inherit (pkgs.gnome) libglade;
|
||||||
|
#};
|
||||||
|
pyGtkGlade = import ../development/python-modules/pygtk {
|
||||||
|
inherit (pkgs) fetchurl stdenv pkgconfig glib gtk;
|
||||||
|
inherit (pkgs.gnome) libglade;
|
||||||
|
inherit python buildPythonPackage pygobject pycairo;
|
||||||
|
};
|
||||||
|
|
||||||
# packages defined here
|
# packages defined here
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user