forked from mirrors/nixpkgs
* Cleanup: removed the unused `python-new'.
svn path=/nixpkgs/trunk/; revision=21198
This commit is contained in:
parent
741cc2fef8
commit
f20c7e9c46
|
@ -1,682 +0,0 @@
|
||||||
# the nix-python way..
|
|
||||||
|
|
||||||
# By default python looks in the $prefix/lib/python-$version/site-packages directory
|
|
||||||
# and reads the .pth files to add the library paths to sys.path.
|
|
||||||
# Using PYHTONPATH is not enough because it doesn't make python read the .pth files
|
|
||||||
# telling python where to find additional modules. PYTHONUSERBASE would suffice, but
|
|
||||||
# it only supports *one* user location. That's why I've added the new env var NIX_PYTHON_SITES
|
|
||||||
# containing a colon separated list of modules telling python where to look
|
|
||||||
# for imports and also read the .pth files
|
|
||||||
|
|
||||||
# TODO optimize py modules automatically (gentoo has a ebuild function called python_mod_optimize ?)
|
|
||||||
|
|
||||||
p: # p = pkgs
|
|
||||||
let
|
|
||||||
inherit (builtins) isAttrs hasAttr;
|
|
||||||
inherit (p) lib fetchurl stdenv getConfig sourceFromHead;
|
|
||||||
inherit (p.composableDerivation) composableDerivation;
|
|
||||||
# withName prevents nix-env -qa \* from aborting (pythonLibStub is a derivation but hasn't a name)
|
|
||||||
withName = lib.mapAttrs (n : v : if (isAttrs v && (!hasAttr "name" v)) then null else v);
|
|
||||||
in
|
|
||||||
withName ( lib.fix ( t : { # t = this attrs
|
|
||||||
|
|
||||||
version = "2.5";
|
|
||||||
versionAttr = "python25";
|
|
||||||
|
|
||||||
# see pythonFull.
|
|
||||||
pythonMinimal = ( (import ./python.nix) {
|
|
||||||
name = "python-${t.version}";
|
|
||||||
inherit composableDerivation;
|
|
||||||
inherit (p) fetchurl stdenv lib bzip2 ncurses;
|
|
||||||
inherit (p) zlib sqlite db4 readline openssl gdbm;
|
|
||||||
});
|
|
||||||
|
|
||||||
# python wiht all features enabled.
|
|
||||||
# if you really need a stripped version we should add __overides
|
|
||||||
# so that you can replace it the way it's done in all-packages.nix
|
|
||||||
pythonFull = t.pythonMinimal.merge {
|
|
||||||
name = "python-${t.version}-full";
|
|
||||||
cfg = {
|
|
||||||
zlibSupport = true;
|
|
||||||
sqliteSupport = true;
|
|
||||||
db4Support = true;
|
|
||||||
readlineSupport = true;
|
|
||||||
opensslSupport = true;
|
|
||||||
gdbmSupport = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# python wrapper. You should install this
|
|
||||||
# It automatically wrapps python adding NIX_PYTHON_SITES so that you can use all the libraries
|
|
||||||
# when running the wrapper from the console.
|
|
||||||
# configuration:
|
|
||||||
# python25 = { wrapperLibs = let p = pkgs.python25New; in [ p.wxPython25 p.name p.name2 ]; };
|
|
||||||
# python25 = { wrapperLibs = [ "all" ]; }; # install all libraries provided by this file
|
|
||||||
# TODO: does pydoc find stuff from libraries?
|
|
||||||
pythonWrapper = stdenv.mkDerivation {
|
|
||||||
name = "${t.pythonFull.name}-wrapper";
|
|
||||||
# [1] using full because I feel installing various versions isn't any better
|
|
||||||
phases = "buildPhase";
|
|
||||||
buildInputs = [ p.makeWrapper ]
|
|
||||||
++ lib.concatMap (x: if x == "all" then t.all else [x]) (getConfig [t.versionAttr "wrapperLibs"] []);
|
|
||||||
|
|
||||||
buildPhase = ''
|
|
||||||
ensureDir $out/bin
|
|
||||||
|
|
||||||
for prog in python pydoc; do
|
|
||||||
echo ========= prog $prog
|
|
||||||
cat >> $out/bin/$prog << EOF
|
|
||||||
export NIX_PYTHON_SITES=\$NIX_PYTHON_SITES:$NIX_PYTHON_SITES
|
|
||||||
exec ${t.pythonFull}/bin/$prog "\$@"
|
|
||||||
EOF
|
|
||||||
echo chmod +x
|
|
||||||
chmod +x $out/bin/$prog
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
### basic support for installing python libraries
|
|
||||||
# set pyCheck to a small python snippet importing all modules of this python
|
|
||||||
# lib to verify it works
|
|
||||||
# You can define { python25 { debugCmd = "DISPLAY=:0.0 pathtoxterm"; }
|
|
||||||
# in your config for easier debugging..
|
|
||||||
pythonLibStub = composableDerivation {} {
|
|
||||||
propagatedBuildInputs = [ t.pythonFull ]; # see [1]
|
|
||||||
postPhases = ["postAll"]; # using new name so that you dno't override this phase by accident
|
|
||||||
# ensure phases are run or a non zero exit status is caused (if there are any syntax errors such as eval "while")
|
|
||||||
postAll = ''
|
|
||||||
ensureDir $out/nix-support
|
|
||||||
echo "export NIX_PYTHON_SITES=\"$out:\$NIX_PYTHON_SITES\"" >> $out/nix-support/setup-hook
|
|
||||||
# run check
|
|
||||||
if [ -n "$pyCheck" ]; then
|
|
||||||
( . $out/nix-support/setup-hook
|
|
||||||
mkdir $TMP/new-test; cd $TMP/new-test
|
|
||||||
echo PYTHONPATH=$PYTHONPATH
|
|
||||||
echo NIX_PYTHON_SITES=$NIX_PYTHON_SITES
|
|
||||||
script="$(echo -e "import sys\nprint sys.path\npyCheck\nprint \"check ok\"")"
|
|
||||||
script="''${script/pyCheck/$pyCheck}"
|
|
||||||
echo "check script is"; echo "$script"
|
|
||||||
echo "$script" | python || { ${ getConfig [t.versionAttr "debugCmd"] ":"} ; echo "pycheck failed"; exit 1; }
|
|
||||||
)
|
|
||||||
fi'';
|
|
||||||
passthru = {
|
|
||||||
libPython = t.version; # used to find all python libraries fitting this version (-> see name all below)
|
|
||||||
};
|
|
||||||
mergeAttrBy = {
|
|
||||||
postPhases = lib.concat;
|
|
||||||
pyCheck = x : y : "${x}\n${y}";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# same as pythonLibStub, but runs default python setup.py actions
|
|
||||||
pythonLibSetup = t.pythonLibStub.merge {
|
|
||||||
buildPhase = ''python setup.py $setupFlags build'';
|
|
||||||
installPhase = ''python setup.py $setupFlags install --prefix=$out'';
|
|
||||||
mergeAttrBy = {
|
|
||||||
setupFlags = lib.concat;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
### python libraries:
|
|
||||||
|
|
||||||
wxPythonBaseFun = (t.pythonLibSetup.merge (a :
|
|
||||||
let inherit (a.fixed.passthru) wxGTK; inherit (a.fixed) version; in
|
|
||||||
{
|
|
||||||
buildInputs = [p.pkgconfig wxGTK (wxGTK.gtk)];
|
|
||||||
setupFlags=["WXPORT=gtk2 NO_HEADERS=1 BUILD_GLCANVAS=0 BUILD_OGL=0 UNICODE=1"];
|
|
||||||
configurePhase = ''cd wxPython'';
|
|
||||||
pyCheck = "import wx";
|
|
||||||
name = "wxPython-${version}";
|
|
||||||
meta = { # 2.6.x and 2.8.x
|
|
||||||
description="A blending of the wxWindows C++ class library with Python";
|
|
||||||
homepage="http://www.wxpython.org/";
|
|
||||||
license="wxWinLL-3";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
)).merge;
|
|
||||||
|
|
||||||
wxPython26 = t.wxPythonBaseFun {
|
|
||||||
version = "2.6.3.3";
|
|
||||||
passthru = { wxGTK = p.wxGTK26; };
|
|
||||||
src = fetchurl {
|
|
||||||
url = mirror://sourceforge/wxpython/wxPython-src-2.6.3.3.tar.bz2;
|
|
||||||
md5 = "66b9c5f8e20a9505c39dab1a1234daa9";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# compilation errors
|
|
||||||
#wxPython28 = t.wxPythonBaseFun {
|
|
||||||
# version = "2.8.9.1";
|
|
||||||
# passthru = { wxGTK = wxGTK28; };
|
|
||||||
# src = fetchurl {
|
|
||||||
# url = mirror://sourceforge.net/sourceforge/wxpython/wxPython-src-2.8.9.1.tar.bz2;
|
|
||||||
# sha256 = "1yp7l2c2lfpwc2x5lk5pawmzq2bqajzhbzqs1p10jd211slwhjsq";
|
|
||||||
# };
|
|
||||||
#};
|
|
||||||
|
|
||||||
# couldn't download source
|
|
||||||
#foursuite = pythonLibSetup.merge {
|
|
||||||
# version = "1.0.2";
|
|
||||||
# name = "4suite-${version}";
|
|
||||||
# src = fetchurl {
|
|
||||||
# url = "mirror://sourceforge/foursuite/4Suite-XML-${version}.tar.bz2";
|
|
||||||
# sha256 = "0g5cyqxhhiqnvqk457k8sb97r18pwgx6gff18q5296xd3zf4cias";
|
|
||||||
# };
|
|
||||||
#};
|
|
||||||
|
|
||||||
#bsddb3 = t.pythonLibSetup.merge {
|
|
||||||
# version = "1.0.2";
|
|
||||||
# name = "bsddb3-4.5.0";
|
|
||||||
# setupFlags = ["--berkeley-db=${p.db4}"];
|
|
||||||
# src = fetchurl {
|
|
||||||
# url = mirror://sourceforge/pybsddb/bsddb3-4.5.0.tar.gz;
|
|
||||||
# sha256 = "1h09kij32iikr9racp5p7qrb4li2gf2hs0lyq6d312qarja4d45v";
|
|
||||||
# };
|
|
||||||
#};
|
|
||||||
|
|
||||||
# pyglib contains import reference to pygtk! So its best to install both at
|
|
||||||
# the same time. I don't want to patch this.
|
|
||||||
# You can install both into different store paths, however you won't be able
|
|
||||||
# to import gtk because after pygtk.require sys.path contains to
|
|
||||||
# /nix/store/*-pygobject/**/gtk-2.0 (should be pygtk/**/gtk-2.0 instead)
|
|
||||||
|
|
||||||
# gnome python is added here as well because it is loaded after
|
|
||||||
# pygtk.require('2.0') as well. So the pygtk lib path is added to sys.path only.
|
|
||||||
# We could make extra derivations for that. But on the other hand that would require
|
|
||||||
# patching pygtk to another */gtk2.0 directory to sys.path for each NIX_PYTHON_SITES.
|
|
||||||
# If you install dozens of python packages this might be bloat.
|
|
||||||
# So I think the overhead of installing these packages into the same store path should be prefered.
|
|
||||||
pygtkBaseFun = (t.pythonLibStub.merge (a :
|
|
||||||
let inherit (a.fixed.passthru) glib gtk; in lib.mergeAttrsByFuncDefaults [
|
|
||||||
{
|
|
||||||
unpackPhase = "true";
|
|
||||||
configurePhase = "true";
|
|
||||||
patchPhase = "true";
|
|
||||||
buildPhase = "true";
|
|
||||||
installPhase = ''
|
|
||||||
unset unpackPhase
|
|
||||||
unset configurePhase
|
|
||||||
unset buildPhase
|
|
||||||
unset installPhase
|
|
||||||
export G2CONF="--enable-gconf" # hack, should be specified somewhere else
|
|
||||||
for srcs in $pygobjectSrc $pygtkSrc $pySrcs; do
|
|
||||||
cd $TMP; mkdir "$(basename $srcs)"; cd "$(basename $srcs)"; unpackFile $srcs
|
|
||||||
cd *
|
|
||||||
configurePhase; buildPhase; installPhase
|
|
||||||
addToEnv $out # pygtk has to know about pygobject
|
|
||||||
PATH=$out/bin:$PATH # gnome-python nees pygtk-codegen
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
mergeAttrBy = {
|
|
||||||
phases = lib.concat;
|
|
||||||
pySrcs = lib.concat;
|
|
||||||
pyCheck = x : y : "${x}\n${y}";
|
|
||||||
};
|
|
||||||
}
|
|
||||||
# pygobject
|
|
||||||
{
|
|
||||||
flags = {
|
|
||||||
libffi = { buildInputs = [p.libffi];};
|
|
||||||
};
|
|
||||||
cfg = {
|
|
||||||
libffiSupport = true;
|
|
||||||
};
|
|
||||||
pyCheck = "import gobject";
|
|
||||||
passthru = {
|
|
||||||
pygobjectVersion = "2.15.4";
|
|
||||||
};
|
|
||||||
pygobjectSrc = fetchurl {
|
|
||||||
url = "http://ftp.gnome.org/pub/GNOME/sources/pygobject/2.15/pygobject-2.15.4.tar.bz2";
|
|
||||||
sha256 = "19vxczy01xyss2f5aqf93al3jzrxn50srgzkl4w7ivdz50rnjin7";
|
|
||||||
};
|
|
||||||
buildInputs = [ p.glibc ]; # requires ld-config
|
|
||||||
|
|
||||||
propagatedBuildInputs = [ p.pkgconfig glib gtk ];
|
|
||||||
}
|
|
||||||
# pygtk
|
|
||||||
{
|
|
||||||
propagatedBuildInputs = [ t.pycairo ];
|
|
||||||
flags = {
|
|
||||||
cairo = {
|
|
||||||
propagatedBuildInputs = [ p.cairo ];
|
|
||||||
pyCheck = "import cairo";
|
|
||||||
}; # TODO add pyCheck
|
|
||||||
glade = {
|
|
||||||
propagatedBuildInputs = [ p.gnome.libglade ];
|
|
||||||
pyCheck = "from gtk import glade";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
pyCheck = ''
|
|
||||||
import pygtk; pygtk.require('2.0')
|
|
||||||
import gtk
|
|
||||||
import gconf
|
|
||||||
'';
|
|
||||||
cfg = {
|
|
||||||
gladeSupport = true;
|
|
||||||
cairoSupport = true;
|
|
||||||
};
|
|
||||||
}
|
|
||||||
# gnome-python
|
|
||||||
{
|
|
||||||
#name = "gnome-python-2.22.3";
|
|
||||||
buildInputs = [ p.pkgconfig p.gnome.libgnome ];
|
|
||||||
propagatedBuildInputs = [ p.gnome.GConf ];
|
|
||||||
pySrcs = [(fetchurl {
|
|
||||||
url = http://ftp.gnome.org/pub/GNOME/sources/gnome-python/2.22/gnome-python-2.22.3.tar.bz2;
|
|
||||||
sha256 = "0ndm3cns9381mm6d8jxxfd931fk93nqfcszy38p1bz501bs3wxm1";
|
|
||||||
})];
|
|
||||||
}
|
|
||||||
# gnome-desktop or gnome-python-extras desktop containing egg.trayicon needed by istanbul
|
|
||||||
{
|
|
||||||
# name = "gnome-desktop-2.24.0";
|
|
||||||
buildInputs = [ p.pkgconfig ];
|
|
||||||
propagatedBuildInputs = [ p.gnome.GConf ];
|
|
||||||
pySrcs = [(fetchurl {
|
|
||||||
url = http://ftp.gnome.org/pub/GNOME/sources/gnome-python-desktop/2.24/gnome-python-desktop-2.24.0.tar.bz2;
|
|
||||||
sha256 = "16514gmv42ygjh5ggzsis697m73pgg7ydz11h487932kkzv4mmlg";
|
|
||||||
})];
|
|
||||||
pyCheck = "import egg.trayicon";
|
|
||||||
}
|
|
||||||
{
|
|
||||||
# name = "gnome-python-extras-2.13";
|
|
||||||
buildInputs = [ p.pkgconfig ];
|
|
||||||
propagatedBuildInputs = [ p.gnome.GConf ];
|
|
||||||
pySrcs = [(fetchurl {
|
|
||||||
url = http://ftp.gnome.org/pub/GNOME/sources/gnome-python-extras/2.13/gnome-python-extras-2.13.3.tar.gz;
|
|
||||||
sha256 = "0vj0289snagrnvbmrs1camwmrc93xgpw650iavj6mq7a3wqcra0b";
|
|
||||||
})];
|
|
||||||
}
|
|
||||||
]));
|
|
||||||
|
|
||||||
#pygtk213 = t.pygtkBaseFun {
|
|
||||||
# version = "2.13.0";
|
|
||||||
# pygtkSrc = fetchurl {
|
|
||||||
# url = http://ftp.gnome.org/pub/GNOME/sources/pygtk/2.13/pygtk-2.13.0.tar.bz2;
|
|
||||||
# sha256 = "0644ll48hi8kwfng37b0k5qgb0fbiy298r7sxd4j7ag7lj4bgic0";
|
|
||||||
# };
|
|
||||||
# passthru = { inherit (p.gtkLibs) glib gitk; };
|
|
||||||
# pyCheck = ''
|
|
||||||
# import pygtk; pygtk.require('2.0')
|
|
||||||
# import gtk
|
|
||||||
# '';
|
|
||||||
#};
|
|
||||||
|
|
||||||
pygtk212 = t.pygtkBaseFun.merge (a : {
|
|
||||||
version = "2.12.1";
|
|
||||||
name = "pygobject-${a.fixed.passthru.pygobjectVersion}-and-pygtk-${a.fixed.version}";
|
|
||||||
pygtkSrc = fetchurl {
|
|
||||||
url = http://ftp.acc.umu.se/pub/GNOME/sources/pygtk/2.12/pygtk-2.12.1.tar.bz2;
|
|
||||||
sha256 = "0gg13xgr7y9sppw8bdys042928nc66czn74g60333c4my95ys021";
|
|
||||||
};
|
|
||||||
passthru = { inherit (p.gtkLibs) glib gtk; };
|
|
||||||
pyCheck = ''
|
|
||||||
import pygtk; pygtk.require('2.0')
|
|
||||||
import gtk
|
|
||||||
'';
|
|
||||||
});
|
|
||||||
|
|
||||||
pycairo = t.pythonLibStub.merge {
|
|
||||||
name = "pycairo-1.8.0";
|
|
||||||
buildInputs = [ p.pkgconfig p.cairo p.x11 ];
|
|
||||||
src = fetchurl {
|
|
||||||
url = http://www.cairographics.org/releases/pycairo-1.6.4.tar.gz;
|
|
||||||
md5 = "2c3aa21e6e610321498f9f81f7b625df";
|
|
||||||
};
|
|
||||||
pyCheck = "import cairo";
|
|
||||||
};
|
|
||||||
|
|
||||||
gstPython = t.pythonLibStub.merge {
|
|
||||||
name = "gst-python-0.10.13";
|
|
||||||
src = fetchurl {
|
|
||||||
url = http://gstreamer.freedesktop.org/src/gst-python/gst-python-0.10.13.tar.gz;
|
|
||||||
sha256 = "0yin36acr5ryfpmhlb4rlagabgxrjcmbpizwrc8csadmxzmigb86";
|
|
||||||
};
|
|
||||||
buildInputs =[ p.flex2535 p.pkgconfig];
|
|
||||||
flags = {
|
|
||||||
pluginsGood = { propagatedBuildInputs = [p.gst_all.gstPluginsGood]; };
|
|
||||||
ffmpeg = { propagatedBuildInputs = [p.gst_all.gstFfmpeg]; };
|
|
||||||
};
|
|
||||||
cfg = {
|
|
||||||
pluginsGoodSupport = true;
|
|
||||||
ffmpegSupport = true;
|
|
||||||
};
|
|
||||||
propagatedBuildInputs = [
|
|
||||||
t.pygtk212
|
|
||||||
p.gst_all.gstreamer
|
|
||||||
p.gst_all.gstPluginsBase
|
|
||||||
p.gst_all.gnonlin
|
|
||||||
];
|
|
||||||
# this check fails while building: It succeeds running as normal user
|
|
||||||
/*
|
|
||||||
Traceback (most recent call last):
|
|
||||||
File "<stdin>", line 5, in <module>
|
|
||||||
File "/nix/store/hnc51h035phlk68i1qmr5a8kc73dfvhp-gst-python-0.10.13/lib/python2.5/site-packages/gst-0.10/gst/__init__.py", line 170, in <module>
|
|
||||||
from _gst import *
|
|
||||||
RuntimeError: can't initialize module gst: Error re-scanning registry , child terminated by signal
|
|
||||||
*/
|
|
||||||
pyCheck = ''
|
|
||||||
#import pygst
|
|
||||||
#pygst.require('0.10')
|
|
||||||
#import gst
|
|
||||||
'';
|
|
||||||
meta = {
|
|
||||||
description = "python gstreamer bindings";
|
|
||||||
homepage = http://gstreamer.freedesktop.org/modules/gst-python.html;
|
|
||||||
license = "GPLv2.1";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
pygoocanvas = t.pythonLibStub.merge {
|
|
||||||
src = p.fetchurl {
|
|
||||||
url = http://download.berlios.de/pygoocanvas/pygoocanvas-0.10.0.tar.gz;
|
|
||||||
sha256 = "0pxznzdscbhvn8102vrqy3r1g6ss4sgs8wwy6y4c5g26rrp7l55d";
|
|
||||||
};
|
|
||||||
propagatedBuildInputs = [ t.pygtk212 ];
|
|
||||||
buildInputs = [ p.pkgconfig p.goocanvas ];
|
|
||||||
pyCheck = "import goocanvas";
|
|
||||||
name = "pygoocanvas-0.10.0";
|
|
||||||
meta = {
|
|
||||||
description = "";
|
|
||||||
homepage = http://developer.berlios.de/projects/pygoocanvas/;
|
|
||||||
license = "LGPL";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
setuptools = t.pythonLibSetup.merge {
|
|
||||||
name = "setuptools-0.6c9";
|
|
||||||
postUnpack = ''
|
|
||||||
ensureDir $out/lib/python2.5/site-packages
|
|
||||||
export PYTHONPATH="$out/lib/python${t.version}/site-packages" # shut up installation script
|
|
||||||
|
|
||||||
# setuptools tries to write to the installation location, so ensure it exists
|
|
||||||
# and it requires PYTHONPATH to be set to that location (maybe its better to patch it. - I'm lazy)
|
|
||||||
ensureDir $out/nix-support
|
|
||||||
cat >> $out/nix-support/setup-hook << EOF
|
|
||||||
ensureDir \$out/lib/python${t.version}/site-packages
|
|
||||||
export PYTHONPATH="\$out/lib/python${t.version}/site-packages" # shut up installation script
|
|
||||||
EOF
|
|
||||||
'';
|
|
||||||
src = p.fetchurl {
|
|
||||||
url = "http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c9.tar.gz";
|
|
||||||
md5 = "3864c01d9c719c8924c455714492295e";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
zopeInterface = t.pythonLibSetup.merge rec {
|
|
||||||
version = "3.3.0";
|
|
||||||
name = "zope.interface-${version}";
|
|
||||||
buildInputs = [ t.setuptools ];
|
|
||||||
src = p.fetchurl {
|
|
||||||
url = "http://www.zope.org/Products/ZopeInterface/3.3.0/zope.interface-${version}.tar.gz";
|
|
||||||
sha256 = "0xahg9cmagn4j3dbifvgzbjliw2jdrbf27fhqwkdp8j80xpyyjf0";
|
|
||||||
};
|
|
||||||
pyCheck = "from zope.interface import Interface, Attribute";
|
|
||||||
};
|
|
||||||
|
|
||||||
dbusPython = t.pythonLibStub.merge rec {
|
|
||||||
version = "0.83.0";
|
|
||||||
name = "dbus-python-0.83.0";
|
|
||||||
buildInputs = [ p.pkgconfig ];
|
|
||||||
propagatedBuildInputs = [ p.dbus p.dbus_glib ];
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://dbus.freedesktop.org/releases/dbus-python/dbus-python-0.83.0.tar.gz";
|
|
||||||
sha256 = "14b1fwq9jyvg9qbbrmpk1264s9shm9n638hsgmkh9fn2lmd1vpc9";
|
|
||||||
};
|
|
||||||
pyCheck = "import dbus";
|
|
||||||
meta = {
|
|
||||||
description = "";
|
|
||||||
homepage = http://freedesktop.org/wiki/Software/DBusBindings;
|
|
||||||
license = [ "GPLv2" "AFL-2.1" ];
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
pythonXlib = t.pythonLibSetup.merge {
|
|
||||||
name = "python-xlib-0.14";
|
|
||||||
src = fetchurl {
|
|
||||||
url = http://puzzle.dl.sourceforge.net/sourceforge/python-xlib/python-xlib-0.14.tar.gz;
|
|
||||||
sha256 = "1sv0447j0rx8cgs3jhjl695p5pv13ihglcjlrrz1kq05lsvb0wa7";
|
|
||||||
};
|
|
||||||
meta = {
|
|
||||||
description = "tries to be a fully functional X client library beeing entirely written in python";
|
|
||||||
license = [ "GPL" ];
|
|
||||||
homepage = http://python-xlib.sourceforge.net/;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
mechanize = t.pythonLibSetup.merge {
|
|
||||||
name = "mechanize-0.1.11";
|
|
||||||
buildInputs = [ t.setuptools ];
|
|
||||||
src = fetchurl {
|
|
||||||
url = http://wwwsearch.sourceforge.net/mechanize/src/mechanize-0.1.11.tar.gz;
|
|
||||||
sha256 = "1h62mwy4iz09jqz17nrb9j8y0djd500zdfqwrz9xmdwqzqwixkj2";
|
|
||||||
};
|
|
||||||
meta = {
|
|
||||||
description = "Stateful programmatic web browsing in Python, after Andy Lester's Perl module WWW::Mechanize";
|
|
||||||
homepage = http://wwwsearch.sourceforge.net/mechanize/;
|
|
||||||
license = ["BSD" "ZPL 2.1"];
|
|
||||||
};
|
|
||||||
pyCheck = "from mechanize import Browser";
|
|
||||||
};
|
|
||||||
|
|
||||||
pexpect = t.pythonLibSetup.merge {
|
|
||||||
name = "pexpect-2.3";
|
|
||||||
src = fetchurl {
|
|
||||||
url = mirror://sourceforge/pexpect/pexpect-2.3.tar.gz;
|
|
||||||
sha256 = "0x8bfjjqygriry1iyygm5048ykl5qpbpzqfp6i8dhkslm3ryf5fk";
|
|
||||||
};
|
|
||||||
meta = {
|
|
||||||
description = "tcl expect as python library";
|
|
||||||
homepage = http://www.noah.org/wiki/Pexpect;
|
|
||||||
license = "MIT";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
# unmantained ? (gentoo/ debian even do have python-3* patches)
|
|
||||||
pyxml = t.pythonLibSetup.merge {
|
|
||||||
name = "pyxml-0.8.4";
|
|
||||||
src = fetchurl {
|
|
||||||
url = mirror://sourceforge/pyxml/PyXML-0.8.4.tar.gz;
|
|
||||||
sha256 = "04wc8i7cdkibhrldy6j65qp5l75zjxf5lx6qxdxfdf2gb3wndawz";
|
|
||||||
};
|
|
||||||
meta = {
|
|
||||||
description = "python xml package";
|
|
||||||
homepage = http://sourceforge.net/projects/pyxml/;
|
|
||||||
license = "Python License"; # (CNRI Python License);
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
/*
|
|
||||||
# untested
|
|
||||||
libxml2dom = t.pythonLibSetup.merge {
|
|
||||||
name = "libxml2dom-0.4.7";
|
|
||||||
buildInputs = [ p.libxml2 ];
|
|
||||||
src = fetchurl {
|
|
||||||
url = http://www.boddie.org.uk/python/downloads/libxml2dom-0.4.7.tar.gz;
|
|
||||||
sha256 = "0zh68adxn4l4b6q99jl1pi00171ah2marbbs8qfww4wpjavfw844";
|
|
||||||
};
|
|
||||||
pyCheck = "import libxml2dom.svg";
|
|
||||||
meta = {
|
|
||||||
description = "provides a traditional DOM wrapper around the Python bindings for libxml2";
|
|
||||||
homepage = http://www.boddie.org.uk/python/libxml2dom.html;
|
|
||||||
license = "LGPL3+";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
|
|
||||||
fpconst = t.pythonLibSetup.merge {
|
|
||||||
name = "fpconst-0.7.3";
|
|
||||||
pyCheck = "import fpconst";
|
|
||||||
src = fetchurl {
|
|
||||||
url="mirror://sourceforge/rsoap/fpconst-0.7.3.tar.gz";
|
|
||||||
sha256 = "1a5c2e4a1ecefd9981988cea15068699eccbc55e350af3471e782083d390c727";
|
|
||||||
};
|
|
||||||
meta = {
|
|
||||||
description="Python Module for handling IEEE 754 floating point special values";
|
|
||||||
homepage="http://chaco.bst.rochester.edu:8080/statcomp/projects/RStatServer/fpconst/";
|
|
||||||
license = "GPLv2";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
soappy = t.pythonLibSetup.merge {
|
|
||||||
name = "soappy-0.12";
|
|
||||||
pyCheck = "from SOAPpy import WSDL";
|
|
||||||
propagatedBuildInputs = [ t.fpconst ];
|
|
||||||
# REGION AUTO UPDATE: { name="pywebcvs"; type = "svn"; url = "https://pywebsvcs.svn.sourceforge.net/svnroot/pywebsvcs/trunk"; }
|
|
||||||
src = sourceFromHead "pywebcvs-1493.tar.gz"
|
|
||||||
(fetchurl { url = "http://mawercer.de/~nix/repos/pywebcvs-1493.tar.gz"; sha256 = "54e9faca87d8a59a22e06374b8416555cf76d3f411fa2be168ad542c2d8e6fc1"; });
|
|
||||||
# END
|
|
||||||
postUnpack = "sourceRoot=$sourceRoot/SOAPpy";
|
|
||||||
/* The release is buggy. I can't get list of dedicated netboots from ovh ?
|
|
||||||
src = fetchurl {
|
|
||||||
url = "http://switch.dl.sourceforge.net/sourceforge/pywebsvcs/SOAPpy-0.12.0.tar.gz";
|
|
||||||
sha256 = "02a0wpir0gl0n9cl7a5hxliwsywvcw847i5in7i14i57kk6dl7rd";
|
|
||||||
};
|
|
||||||
patches = [ ./gentoo-python-2.5-compat.patch ];
|
|
||||||
*/
|
|
||||||
meta = {
|
|
||||||
description = "SOAP implementation for Python";
|
|
||||||
homepage="http://pywebsvcs.sourceforge.net/";
|
|
||||||
license = "BSD";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
sqlalchemy05 = t.pythonLibSetup.merge {
|
|
||||||
name = "sqlalchemy-0.5.5-svn-trunk";
|
|
||||||
pyCheck = ''
|
|
||||||
import sqlalchemy
|
|
||||||
import sqlalchemy.orm
|
|
||||||
import sqlalchemy.orm.collections
|
|
||||||
'';
|
|
||||||
# REGION AUTO UPDATE: { name="sqlalchemy05"; type = "svn"; url="http://svn.sqlalchemy.org/sqlalchemy/trunk"; }
|
|
||||||
src = sourceFromHead "sqlalchemy05-6076.tar.gz"
|
|
||||||
(fetchurl { url = "http://mawercer.de/~nix/repos/sqlalchemy05-6076.tar.gz"; sha256 = "f35e6475996f7591d49affbc935c40b4c93e4cdaff86a50af9321774de2025b2"; });
|
|
||||||
# END
|
|
||||||
meta = {
|
|
||||||
description = "sql orm wrapper for python";
|
|
||||||
homepage = http://www.sqlalchemy.org;
|
|
||||||
license = "MIT";
|
|
||||||
};
|
|
||||||
postPhases = ["installMigration"];
|
|
||||||
|
|
||||||
buildInputs = [ t.setuptools /* required for migration lib */ ];
|
|
||||||
|
|
||||||
/* impure ? I don't care right now
|
|
||||||
Reading http://pypi.python.org/simple/decorator/
|
|
||||||
Reading http://www.phyast.pitt.edu/~micheles/python/documentation.html
|
|
||||||
Best match: decorator 3.0.1
|
|
||||||
Downloading http://pypi.python.org/packages/source/d/decorator/decorator-3.0.1.tar.gz#md5=c4130a467be7f71154976c84af4a04c6
|
|
||||||
|
|
||||||
iElectric: column.alter could be broken ..
|
|
||||||
*/
|
|
||||||
installMigration =
|
|
||||||
let src = {
|
|
||||||
# REGION AUTO UPDATE: { name="sqlalchemyMigrate"; type = "svn"; url="http://sqlalchemy-migrate.googlecode.com/svn/trunk"; }
|
|
||||||
src = sourceFromHead "sqlalchemyMigrate-569.tar.gz"
|
|
||||||
(fetchurl { url = "http://mawercer.de/~nix/repos/sqlalchemyMigrate-569.tar.gz"; sha256 = "3b076b33aa13bb2923e719489fd7988a5660bd8d8e87dac03f453b510e2695f4"; });
|
|
||||||
# END
|
|
||||||
}.src; in
|
|
||||||
''
|
|
||||||
cd $TMP
|
|
||||||
mkdir migrate
|
|
||||||
cd migrate
|
|
||||||
unpackFile ${src}
|
|
||||||
cd *
|
|
||||||
python setup.py $setupFlags build
|
|
||||||
python setup.py $setupFlags install --prefix=$out
|
|
||||||
echo "import migrate.changeset.schema" | python
|
|
||||||
'';
|
|
||||||
|
|
||||||
/*
|
|
||||||
|
|
||||||
mv $out/lib/python2.5/site-packages/sqlalchemy_migrate-0.5.5.dev_r0-py2.5.egg/* \
|
|
||||||
$out/lib/python2.5/site-packages
|
|
||||||
*/
|
|
||||||
};
|
|
||||||
|
|
||||||
/* doesn't work on its own, its included in sqlalchemy05 for that reason.
|
|
||||||
sqlalchemyMigrate = t.pythonLibSetup.merge {
|
|
||||||
name = "sqlalchemy-migrate-svn";
|
|
||||||
buildInputs = [ t.setuptools t.sqlalchemy05 ];
|
|
||||||
pyCheck = ''
|
|
||||||
import migrate
|
|
||||||
import migrate.changeset
|
|
||||||
import migrate.changeset.schema
|
|
||||||
'';
|
|
||||||
# REGION AUTO UPDATE: { name="sqlalchemyMigrate"; type = "svn"; url="http://sqlalchemy-migrate.googlecode.com/svn/trunk"; }
|
|
||||||
src = sourceFromHead "sqlalchemyMigrate-569.tar.gz"
|
|
||||||
(fetchurl { url = "http://mawercer.de/~nix/repos/sqlalchemyMigrate-569.tar.gz"; sha256 = "2bfbd41e31c9dce4434ca4cb209338ccef1fd0394999b18111be838b79db703b"; });
|
|
||||||
# END
|
|
||||||
meta = {
|
|
||||||
description = "sqlalchemy database versioning and scheme migration";
|
|
||||||
homepage = http://packages.python.org/sqlalchemy-migrate/download.html;
|
|
||||||
license = "MIT";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
*/
|
|
||||||
|
|
||||||
### python applications
|
|
||||||
|
|
||||||
pythonExStub = composableDerivation {} {
|
|
||||||
buildInputs = [p.makeWrapper];
|
|
||||||
postPhases = ["wrapExecutables"];
|
|
||||||
propagatedBuildInputs = [ t.pythonFull ]; # see [1]
|
|
||||||
|
|
||||||
# adding $out to NIX_PYTHON_SITES because some of those executables seem to come with extra libs
|
|
||||||
wrapExecutables = ''
|
|
||||||
for prog in $out/bin/*; do
|
|
||||||
wrapProgram "$prog" \
|
|
||||||
--set NIX_PYTHON_SITES "$NIX_PYTHON_SITES:$out" \
|
|
||||||
--set PYTHONPATH "\$PYTHONPATH:$out"
|
|
||||||
done
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
pitivi = t.pythonExStub.merge {
|
|
||||||
name = "pitivi-0.11.2";
|
|
||||||
src = fetchurl {
|
|
||||||
url = http://ftp.gnome.org/pub/GNOME/sources/pitivi/0.11/pitivi-0.11.2.tar.bz2;
|
|
||||||
sha256 = "0d3bqgfp60qm5bf904k477bd8jhxizj1klv84wbxsz9vhjwx9zcl";
|
|
||||||
};
|
|
||||||
buildInputs = [ t.pygtk212 t.gstPython t.pygoocanvas t.zopeInterface t.dbusPython
|
|
||||||
p.intltool p.gettext p.makeWrapper p.gettext ];
|
|
||||||
# why do have to add gtk-2.0 explicitely?
|
|
||||||
meta = {
|
|
||||||
description = "A non-linear video editor using the GStreamer multimedia framework";
|
|
||||||
homepage = http://www.pitivi.org/wiki/Downloads;
|
|
||||||
license = "LGPL-2.1";
|
|
||||||
};
|
|
||||||
postInstall = ''
|
|
||||||
# set the python which has been used to compile this package
|
|
||||||
sed -i -e 's@#!.*@#!'"$(which python)@" $out/bin/pitivi
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
|
|
||||||
istanbul = t.pythonExStub.merge {
|
|
||||||
name = "istanbul-0.2.2";
|
|
||||||
buildInputs = [ t.pygtk212 t.gstPython /*t.gnomePython (contained in gtk) t.gnomePythonExtras */ t.pythonXlib
|
|
||||||
p.perl p.perlXMLParser p.gettext];
|
|
||||||
# gstPython can't be imported when building (TODO).. so just run true instead of python
|
|
||||||
configurePhase = ''./configure --prefix=""''; # DESTDIR is set below
|
|
||||||
postUnpack = ''
|
|
||||||
sed -i 's/$PYTHON/true/' istanbul-0.2.2/configure
|
|
||||||
mkdir -p $out/bin
|
|
||||||
export DESTDIR="$out"
|
|
||||||
'';
|
|
||||||
src = fetchurl {
|
|
||||||
url = http://zaheer.merali.org/istanbul-0.2.2.tar.bz2;
|
|
||||||
sha256 = "1mdc82d0xs9pyavs616bz0ywq3zwy3h5y0ydjl6kvcgixii29aiv";
|
|
||||||
};
|
|
||||||
postInstall = "chmod a+x $out/bin/istanbul";
|
|
||||||
meta = {
|
|
||||||
description = "A non-linear video editor using the GStreamer multimedia framework";
|
|
||||||
homepage = http://live.gnome.org/Istanbul;
|
|
||||||
license = "LGPLv2";
|
|
||||||
};
|
|
||||||
};
|
|
||||||
|
|
||||||
all = lib.filter (x:
|
|
||||||
(isAttrs x)
|
|
||||||
&& ((lib.maybeAttr "libPython" false x) == t.version)
|
|
||||||
&& (lib.maybeAttr "name" false x != false) # don't collect pythonLibStub etc
|
|
||||||
) (lib.flattenAttrs (removeAttrs t ["all"])); # nix is not yet lazy enough, so I've to remove all first
|
|
||||||
}))
|
|
|
@ -1,72 +0,0 @@
|
||||||
diff --git a/SOAPpy/Client.py b/SOAPpy/Client.py
|
|
||||||
index 7437049..13ba160 100644
|
|
||||||
--- a/SOAPpy/Client.py
|
|
||||||
+++ b/SOAPpy/Client.py
|
|
||||||
@@ -40,11 +40,11 @@
|
|
||||||
################################################################################
|
|
||||||
"""
|
|
||||||
|
|
||||||
+from __future__ import nested_scopes
|
|
||||||
+
|
|
||||||
ident = '$Id: Client.py,v 1.27 2005/02/21 20:27:09 warnes Exp $'
|
|
||||||
from version import __version__
|
|
||||||
|
|
||||||
-from __future__ import nested_scopes
|
|
||||||
-
|
|
||||||
#import xml.sax
|
|
||||||
import urllib
|
|
||||||
from types import *
|
|
||||||
diff --git a/SOAPpy/GSIServer.py b/SOAPpy/GSIServer.py
|
|
||||||
index 48c1303..c7ad13d 100644
|
|
||||||
--- a/SOAPpy/GSIServer.py
|
|
||||||
+++ b/SOAPpy/GSIServer.py
|
|
||||||
@@ -43,11 +43,11 @@ GSIServer - Contributed by Ivan R. Judson <judson@mcs.anl.gov>
|
|
||||||
################################################################################
|
|
||||||
"""
|
|
||||||
|
|
||||||
+from __future__ import nested_scopes
|
|
||||||
+
|
|
||||||
ident = '$Id: GSIServer.py,v 1.5 2005/02/15 16:32:22 warnes Exp $'
|
|
||||||
from version import __version__
|
|
||||||
|
|
||||||
-from __future__ import nested_scopes
|
|
||||||
-
|
|
||||||
#import xml.sax
|
|
||||||
import re
|
|
||||||
import socket
|
|
||||||
diff --git a/SOAPpy/Server.py b/SOAPpy/Server.py
|
|
||||||
index b28153d..76ce0b4 100644
|
|
||||||
--- a/SOAPpy/Server.py
|
|
||||||
+++ b/SOAPpy/Server.py
|
|
||||||
@@ -40,11 +40,11 @@
|
|
||||||
################################################################################
|
|
||||||
"""
|
|
||||||
|
|
||||||
+from __future__ import nested_scopes
|
|
||||||
+
|
|
||||||
ident = '$Id: Server.py,v 1.21 2005/02/15 16:32:22 warnes Exp $'
|
|
||||||
from version import __version__
|
|
||||||
|
|
||||||
-from __future__ import nested_scopes
|
|
||||||
-
|
|
||||||
#import xml.sax
|
|
||||||
import re
|
|
||||||
import socket
|
|
||||||
diff --git a/SOAPpy/Types.py b/SOAPpy/Types.py
|
|
||||||
index 6cc5456..62d44b2 100644
|
|
||||||
--- a/SOAPpy/Types.py
|
|
||||||
+++ b/SOAPpy/Types.py
|
|
||||||
@@ -33,11 +33,11 @@
|
|
||||||
################################################################################
|
|
||||||
"""
|
|
||||||
|
|
||||||
+from __future__ import nested_scopes
|
|
||||||
+
|
|
||||||
ident = '$Id: Types.py,v 1.19 2005/02/22 04:29:43 warnes Exp $'
|
|
||||||
from version import __version__
|
|
||||||
|
|
||||||
-from __future__ import nested_scopes
|
|
||||||
-
|
|
||||||
import UserList
|
|
||||||
import base64
|
|
||||||
import cgi
|
|
|
@ -1,33 +0,0 @@
|
||||||
--- a/site.py 2008-11-19 14:48:49.000000000 +0100
|
|
||||||
--- Python-2.5-orig/Lib/site.py 2008-05-10 19:36:24.000000000 +0200
|
|
||||||
+++ Python-2.5/Lib/site.py 2008-11-17 05:37:02.000000000 +0100
|
|
||||||
@@ -390,6 +390,20 @@
|
|
||||||
except ImportError:
|
|
||||||
pass
|
|
||||||
|
|
||||||
+def addnixsitepackages(known_paths):
|
|
||||||
+ """
|
|
||||||
+ used to add multiple site packages for /nix/store to sys.path also
|
|
||||||
+ evaluating the .pth files (http://docs.python.org/library/site.html#module-site)
|
|
||||||
+ """
|
|
||||||
+ env_nix_sites = os.environ.get("NIX_PYTHON_SITES", None)
|
|
||||||
+ if env_nix_sites:
|
|
||||||
+ for path in env_nix_sites.split(":"):
|
|
||||||
+
|
|
||||||
+ NIX_SITE = os.path.join(path, "lib",
|
|
||||||
+ "python" + sys.version[:3],
|
|
||||||
+ "site-packages")
|
|
||||||
+ addsitedir(NIX_SITE, known_paths)
|
|
||||||
+ return known_paths
|
|
||||||
|
|
||||||
def main():
|
|
||||||
abs__file__()
|
|
||||||
@@ -400,6 +414,7 @@
|
|
||||||
paths_in_sys = addsitepackages(paths_in_sys)
|
|
||||||
if sys.platform == 'os2emx':
|
|
||||||
setBEGINLIBPATH()
|
|
||||||
+ paths_in_sys = addnixsitepackages(paths_in_sys)
|
|
||||||
setquit()
|
|
||||||
setcopyright()
|
|
||||||
sethelper()
|
|
||||||
|
|
|
@ -1,68 +0,0 @@
|
||||||
args: with args;
|
|
||||||
let inherit (lib) optional prepareDerivationArgs concatStringsSep fix; in
|
|
||||||
|
|
||||||
composableDerivation {
|
|
||||||
mkDerivation = attr : stdenv.mkDerivation ( attr // {
|
|
||||||
C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") attr.buildInputs);
|
|
||||||
LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") attr.buildInputs);
|
|
||||||
});
|
|
||||||
} {
|
|
||||||
|
|
||||||
postPhases = ["runCheck"];
|
|
||||||
|
|
||||||
mergeAttrBy = { pyCheck = x : y : "${x}\n${y}"; };
|
|
||||||
|
|
||||||
# should be last because it sources setup-hook of this package itself
|
|
||||||
runCheck = ''
|
|
||||||
PATH=$out/bin:$PATH; . $out/nix-support/setup-hook;
|
|
||||||
echo -e "import sys\n$pyCheck\nprint \"import pyCheck ok\"" | python
|
|
||||||
'';
|
|
||||||
|
|
||||||
inherit (args) name;
|
|
||||||
|
|
||||||
# everything can be overriden by composedArgsAndFun additional args
|
|
||||||
# assuming that if a module can be loaded that it does also work..
|
|
||||||
flags = {
|
|
||||||
zlib = { buildInputs = [ zlib ]; pyCheck = "import zlib"; };
|
|
||||||
gdbm = { buildInputs = [ gdbm ]; pyCheck = "import gdbm"; };
|
|
||||||
sqlite = { buildInputs = [ sqlite ]; pyCheck = "import sqlite3"; };
|
|
||||||
db4 = { buildInputs = [ db4 ]; }; # TODO add pyCheck
|
|
||||||
readline = { buildInputs = [ readline ]; }; # doesn't work yet (?)
|
|
||||||
openssl = { buildInputs = [ openssl ]; pyCheck ="import socket\nsocket.ssl"; };
|
|
||||||
};
|
|
||||||
|
|
||||||
src = fetchurl {
|
|
||||||
url = http://www.python.org/ftp/python/2.5.2/Python-2.5.2.tar.bz2;
|
|
||||||
sha256 = "0gh8bvs56vdv8qmlfmiwyczjpldj0y3zbzd0zyhyjfd0c8m0xy7j";
|
|
||||||
};
|
|
||||||
|
|
||||||
configureFlags = ["--enable-shared" "--with-wctype-functions"];
|
|
||||||
|
|
||||||
buildInputs =
|
|
||||||
optional (stdenv ? gcc && stdenv.gcc.libc != null) stdenv.gcc.libc ++
|
|
||||||
[bzip2 ncurses];
|
|
||||||
|
|
||||||
patches = [
|
|
||||||
# Look in C_INCLUDE_PATH and LIBRARY_PATH for stuff.
|
|
||||||
./search-path.patch
|
|
||||||
|
|
||||||
|
|
||||||
# make python know about libraries reading .pth files
|
|
||||||
# http://docs.python.org/library/site.html#module-site
|
|
||||||
# TODO: think about security (see the other code contained in site.py)
|
|
||||||
./nix-find-sites-2.5.patch
|
|
||||||
];
|
|
||||||
|
|
||||||
preConfigure = ''
|
|
||||||
# Purity.
|
|
||||||
for i in /usr /sw /opt /pkg; do
|
|
||||||
substituteInPlace ./setup.py --replace $i /no-such-path
|
|
||||||
done
|
|
||||||
export NIX_LDFLAGS="$NIX_LDFLAGS -lncurses"
|
|
||||||
'';
|
|
||||||
|
|
||||||
postInstall = "
|
|
||||||
rm -rf $out/lib/python2.5/test
|
|
||||||
";
|
|
||||||
|
|
||||||
}
|
|
|
@ -1,28 +0,0 @@
|
||||||
diff -rc Python-2.4.4-orig/setup.py Python-2.4.4/setup.py
|
|
||||||
*** Python-2.4.4-orig/setup.py 2006-10-08 19:41:25.000000000 +0200
|
|
||||||
--- Python-2.4.4/setup.py 2007-05-27 16:04:54.000000000 +0200
|
|
||||||
***************
|
|
||||||
*** 279,288 ****
|
|
||||||
# Check for AtheOS which has libraries in non-standard locations
|
|
||||||
if platform == 'atheos':
|
|
||||||
lib_dirs += ['/system/libs', '/atheos/autolnk/lib']
|
|
||||||
- lib_dirs += os.getenv('LIBRARY_PATH', '').split(os.pathsep)
|
|
||||||
inc_dirs += ['/system/include', '/atheos/autolnk/include']
|
|
||||||
- inc_dirs += os.getenv('C_INCLUDE_PATH', '').split(os.pathsep)
|
|
||||||
|
|
||||||
# OSF/1 and Unixware have some stuff in /usr/ccs/lib (like -ldb)
|
|
||||||
if platform in ['osf1', 'unixware7', 'openunix8']:
|
|
||||||
lib_dirs += ['/usr/ccs/lib']
|
|
||||||
--- 279,289 ----
|
|
||||||
# Check for AtheOS which has libraries in non-standard locations
|
|
||||||
if platform == 'atheos':
|
|
||||||
lib_dirs += ['/system/libs', '/atheos/autolnk/lib']
|
|
||||||
inc_dirs += ['/system/include', '/atheos/autolnk/include']
|
|
||||||
|
|
||||||
+ lib_dirs += os.getenv('LIBRARY_PATH', '').split(os.pathsep)
|
|
||||||
+ inc_dirs += os.getenv('C_INCLUDE_PATH', '').split(os.pathsep)
|
|
||||||
+
|
|
||||||
# OSF/1 and Unixware have some stuff in /usr/ccs/lib (like -ldb)
|
|
||||||
if platform in ['osf1', 'unixware7', 'openunix8']:
|
|
||||||
lib_dirs += ['/usr/ccs/lib']
|
|
||||||
|
|
Loading…
Reference in a new issue