* Sync with the trunk.
svn path=/nixpkgs/branches/stdenv-updates/; revision=14557
This commit is contained in:
@@ -13,7 +13,7 @@ stdenv.mkDerivation rec {
|
||||
};
|
||||
fullMaude = fetchurl {
|
||||
url = "http://maude.cs.uiuc.edu/download/current/FM2.4/full-maude24.maude";
|
||||
sha256 = "0fwpnp5a8vw7q3iczwlra9074is95a1087ikx0a0idy8p4drnl61";
|
||||
sha256 = "9e4ebdc717dc968d0b6c1179f360e60b3a39ea8cecc1a7fa49f2105bbddc48c4";
|
||||
};
|
||||
docs = fetchurl {
|
||||
url = "http://mirror.switch.ch/mirror/gentoo/distfiles/maude-2.3.0-extras.tar.bz2";
|
||||
|
||||
@@ -4,177 +4,174 @@ args: with args;
|
||||
|
||||
let inherit (args.composableDerivation) composableDerivation edf wwf; in
|
||||
|
||||
composableDerivation {
|
||||
initial = fixed : {
|
||||
composableDerivation {} ( fixed : {
|
||||
|
||||
name = "php_configurable-${version}";
|
||||
name = "php_configurable-${version}";
|
||||
|
||||
buildInputs = ["flex" "bison" "pkgconfig"];
|
||||
buildInputs = ["flex" "bison" "pkgconfig"];
|
||||
|
||||
flags = {
|
||||
flags = {
|
||||
|
||||
# much left to do here...
|
||||
|
||||
# SAPI modules:
|
||||
|
||||
apxs2 = {
|
||||
configureFlags = ["--with-apxs2=${apacheHttpd}/bin/apxs"];
|
||||
buildInputs = [apacheHttpd];
|
||||
};
|
||||
|
||||
# Extensions
|
||||
|
||||
curl = {
|
||||
configureFlags = ["--with-curl=${args.curl}" "--with-curlwrappers"];
|
||||
buildInputs = [curl];
|
||||
};
|
||||
|
||||
zlib = {
|
||||
configureFlags = ["--with-zlib=${args.zlib}"];
|
||||
buildInputs = [zlib];
|
||||
};
|
||||
|
||||
libxml2 = {
|
||||
configureFlags = ["--with-libxml-dir=${libxml2}"];
|
||||
buildInputs = [ libxml2 ];
|
||||
};
|
||||
|
||||
postgresql = {
|
||||
configureFlags = ["--with-pgsql=${postgresql}"];
|
||||
buildInputs = [ postgresql ];
|
||||
};
|
||||
|
||||
mysql = {
|
||||
configureFlags = ["--with-mysql=${mysql}"];
|
||||
buildInputs = [ mysql ];
|
||||
};
|
||||
|
||||
mysqli = {
|
||||
configureFlags = ["--with-mysqli=${mysql}/bin/mysql_config"];
|
||||
buildInputs = [ mysql];
|
||||
};
|
||||
|
||||
mysqli_embedded = {
|
||||
configureFlags = ["--enable-embedded-mysqli"];
|
||||
depends = "mysqli";
|
||||
assertion = fixed.mysqliSupport;
|
||||
};
|
||||
|
||||
pdo_mysql = {
|
||||
configureFlags = ["--with-pdo-mysql=${mysql}"];
|
||||
buildInputs = [ mysql ];
|
||||
};
|
||||
|
||||
bcmath = {
|
||||
configureFlags = ["--enable-bcmath"];
|
||||
};
|
||||
|
||||
gd = {
|
||||
configureFlags = ["--with-gd=${args.gd}"];
|
||||
buildInputs = [gd];
|
||||
};
|
||||
|
||||
sockets = {
|
||||
configureFlags = ["--enable-sockets"];
|
||||
};
|
||||
|
||||
openssl = {
|
||||
configureFlags = ["--with-openssl=${args.openssl}"];
|
||||
buildInputs = ["openssl"];
|
||||
};
|
||||
|
||||
mbstring = {
|
||||
configureFlags = ["--enable-mbstring"];
|
||||
};
|
||||
|
||||
/*
|
||||
Building xdebug withing php to be able to add the parameters to the ini file.. Ther should be a better way
|
||||
meta = {
|
||||
description = "debugging support for PHP";
|
||||
homepage = http://xdebug.org;
|
||||
license = "based on the PHP license - as is";
|
||||
};
|
||||
*/
|
||||
xdebug = {
|
||||
buildInputs = [ automake autoconf ];
|
||||
xdebug_src = args.fetchurl {
|
||||
name = "xdebug-2.0.2.tar.gz";
|
||||
url = "http://xdebug.org/link.php?url=xdebug202";
|
||||
sha256 = "1h0bxvf8krr203fmk1k7izrrr81gz537xmd3pqh4vslwdlbhrvic";
|
||||
};
|
||||
};
|
||||
# SAPI modules:
|
||||
|
||||
apxs2 = {
|
||||
configureFlags = ["--with-apxs2=${apacheHttpd}/bin/apxs"];
|
||||
buildInputs = [apacheHttpd];
|
||||
};
|
||||
|
||||
cfg = {
|
||||
mysqlSupport = true;
|
||||
mysqliSupport = true;
|
||||
pdo_mysqlSupport = true;
|
||||
libxml2Support = true;
|
||||
apxs2Support = true;
|
||||
bcmathSupport = true;
|
||||
socketsSupport = true;
|
||||
curlSupport = true;
|
||||
gettextSupport = true;
|
||||
postgresqlSupport = true;
|
||||
zlibSupport = true;
|
||||
opnesslSupport = true;
|
||||
xdebugSupport = true;
|
||||
mbstringSupport = true;
|
||||
gdSupport = true;
|
||||
# Extensions
|
||||
|
||||
curl = {
|
||||
configureFlags = ["--with-curl=${args.curl}" "--with-curlwrappers"];
|
||||
buildInputs = [curl];
|
||||
};
|
||||
|
||||
zlib = {
|
||||
configureFlags = ["--with-zlib=${args.zlib}"];
|
||||
buildInputs = [zlib];
|
||||
};
|
||||
|
||||
libxml2 = {
|
||||
configureFlags = ["--with-libxml-dir=${libxml2}"];
|
||||
buildInputs = [ libxml2 ];
|
||||
};
|
||||
|
||||
postgresql = {
|
||||
configureFlags = ["--with-pgsql=${postgresql}"];
|
||||
buildInputs = [ postgresql ];
|
||||
};
|
||||
|
||||
mysql = {
|
||||
configureFlags = ["--with-mysql=${mysql}"];
|
||||
buildInputs = [ mysql ];
|
||||
};
|
||||
|
||||
mysqli = {
|
||||
configureFlags = ["--with-mysqli=${mysql}/bin/mysql_config"];
|
||||
buildInputs = [ mysql];
|
||||
};
|
||||
|
||||
mysqli_embedded = {
|
||||
configureFlags = ["--enable-embedded-mysqli"];
|
||||
depends = "mysqli";
|
||||
assertion = fixed.mysqliSupport;
|
||||
};
|
||||
|
||||
pdo_mysql = {
|
||||
configureFlags = ["--with-pdo-mysql=${mysql}"];
|
||||
buildInputs = [ mysql ];
|
||||
};
|
||||
|
||||
bcmath = {
|
||||
configureFlags = ["--enable-bcmath"];
|
||||
};
|
||||
|
||||
gd = {
|
||||
configureFlags = ["--with-gd=${args.gd}"];
|
||||
buildInputs = [gd];
|
||||
};
|
||||
|
||||
sockets = {
|
||||
configureFlags = ["--enable-sockets"];
|
||||
};
|
||||
|
||||
openssl = {
|
||||
configureFlags = ["--with-openssl=${args.openssl}"];
|
||||
buildInputs = ["openssl"];
|
||||
};
|
||||
|
||||
mbstring = {
|
||||
configureFlags = ["--enable-mbstring"];
|
||||
};
|
||||
|
||||
/*
|
||||
Building xdebug withing php to be able to add the parameters to the ini file.. Ther should be a better way
|
||||
meta = {
|
||||
description = "debugging support for PHP";
|
||||
homepage = http://xdebug.org;
|
||||
license = "based on the PHP license - as is";
|
||||
};
|
||||
*/
|
||||
xdebug = {
|
||||
buildInputs = [ automake autoconf ];
|
||||
xdebug_src = args.fetchurl {
|
||||
name = "xdebug-2.0.2.tar.gz";
|
||||
url = "http://xdebug.org/link.php?url=xdebug202";
|
||||
sha256 = "1h0bxvf8krr203fmk1k7izrrr81gz537xmd3pqh4vslwdlbhrvic";
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
configurePhase = ''
|
||||
iniFile=$out/etc/$name.ini
|
||||
[[ -z "$libxml2" ]] || export PATH=$PATH:$libxml2/bin
|
||||
./configure --with-config-file-scan-dir=/etc --with-config-file-path=$out/etc --prefix=$out $configureFlags
|
||||
echo configurePhase end
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
unset installPhase; installPhase;
|
||||
cp php.ini-recommended $iniFile
|
||||
|
||||
# Now Let's build xdebug if flag has been given
|
||||
# TODO I think there are better paths than the given below
|
||||
if [ -n $flag_set_xdebug ]; then
|
||||
PATH=$PATH:$out/bin
|
||||
tar xfz $xdebug_src;
|
||||
cd xdebug*
|
||||
phpize
|
||||
./configure --prefix=$out
|
||||
make
|
||||
ensureDir $out/lib; cp modules/xdebug.so $out/lib
|
||||
cat >> $out/etc/php.ini << EOF
|
||||
zend_extension="$out/lib/xdebug.so"
|
||||
zend_extension_ts="$out/lib/xdebug.so"
|
||||
zend_extension_debug="$out/lib/xdebug.so"
|
||||
xdebug.remote_enable=true
|
||||
xdebug.remote_host=127.0.0.1
|
||||
xdebug.remote_port=9000
|
||||
xdebug.remote_handler=dbgp
|
||||
xdebug.profiler_enable=0
|
||||
xdebug.profiler_output_dir="/tmp/xdebug"
|
||||
xdebug.remote_mode=req
|
||||
max_execution_time = 300
|
||||
date.timezone = UTC
|
||||
EOF
|
||||
fi
|
||||
'';
|
||||
|
||||
src = args.fetchurl {
|
||||
url = "http://nl.php.net/get/php-${version}.tar.bz2/from/this/mirror";
|
||||
md5 = "7380ffecebd95c6edb317ef861229ebd";
|
||||
name = "php-${version}.tar.bz2";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "The PHP language runtime engine";
|
||||
homepage = http://www.php.net/;
|
||||
license = "PHP-3";
|
||||
};
|
||||
|
||||
patches = [./fix.patch];
|
||||
|
||||
cfg = {
|
||||
mysqlSupport = true;
|
||||
mysqliSupport = true;
|
||||
pdo_mysqlSupport = true;
|
||||
libxml2Support = true;
|
||||
apxs2Support = true;
|
||||
bcmathSupport = true;
|
||||
socketsSupport = true;
|
||||
curlSupport = true;
|
||||
gettextSupport = true;
|
||||
postgresqlSupport = true;
|
||||
zlibSupport = true;
|
||||
opnesslSupport = true;
|
||||
xdebugSupport = true;
|
||||
mbstringSupport = true;
|
||||
gdSupport = true;
|
||||
};
|
||||
|
||||
}
|
||||
configurePhase = ''
|
||||
iniFile=$out/etc/$name.ini
|
||||
[[ -z "$libxml2" ]] || export PATH=$PATH:$libxml2/bin
|
||||
./configure --with-config-file-scan-dir=/etc --with-config-file-path=$out/etc --prefix=$out $configureFlags
|
||||
echo configurePhase end
|
||||
'';
|
||||
|
||||
installPhase = ''
|
||||
unset installPhase; installPhase;
|
||||
cp php.ini-recommended $iniFile
|
||||
|
||||
# Now Let's build xdebug if flag has been given
|
||||
# TODO I think there are better paths than the given below
|
||||
if [ -n $flag_set_xdebug ]; then
|
||||
PATH=$PATH:$out/bin
|
||||
tar xfz $xdebug_src;
|
||||
cd xdebug*
|
||||
phpize
|
||||
./configure --prefix=$out
|
||||
make
|
||||
ensureDir $out/lib; cp modules/xdebug.so $out/lib
|
||||
cat >> $out/etc/php.ini << EOF
|
||||
zend_extension="$out/lib/xdebug.so"
|
||||
zend_extension_ts="$out/lib/xdebug.so"
|
||||
zend_extension_debug="$out/lib/xdebug.so"
|
||||
xdebug.remote_enable=true
|
||||
xdebug.remote_host=127.0.0.1
|
||||
xdebug.remote_port=9000
|
||||
xdebug.remote_handler=dbgp
|
||||
xdebug.profiler_enable=0
|
||||
xdebug.profiler_output_dir="/tmp/xdebug"
|
||||
xdebug.remote_mode=req
|
||||
max_execution_time = 300
|
||||
date.timezone = UTC
|
||||
EOF
|
||||
fi
|
||||
'';
|
||||
|
||||
src = args.fetchurl {
|
||||
url = "http://nl.php.net/get/php-${version}.tar.bz2/from/this/mirror";
|
||||
md5 = "7380ffecebd95c6edb317ef861229ebd";
|
||||
name = "php-${version}.tar.bz2";
|
||||
};
|
||||
|
||||
meta = {
|
||||
description = "The PHP language runtime engine";
|
||||
homepage = http://www.php.net/;
|
||||
license = "PHP-3";
|
||||
};
|
||||
|
||||
patches = [./fix.patch];
|
||||
|
||||
})
|
||||
|
||||
@@ -33,7 +33,7 @@ in
|
||||
# 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.passthru.fun {
|
||||
pythonFull = t.pythonMinimal.merge {
|
||||
name = "python-${t.version}-full";
|
||||
cfg = {
|
||||
zlibSupport = true;
|
||||
@@ -79,48 +79,46 @@ in
|
||||
# lib to verify it works
|
||||
# You can define { python25 { debugCmd = "DISPLAY=:0.0 pathtoxterm"; }
|
||||
# in your config for easier debugging..
|
||||
pythonLibStub = composableDerivation {
|
||||
initial = {
|
||||
propagatedBuildInputs = [ t.pythonFull ]; # see [1]
|
||||
postPhases = ["postAll"]; # using new name so that you dno't override this phase by accident
|
||||
prePhases = ["defineValidatingEval"];
|
||||
# ensure phases are run or a non zero exit status is caused (if there are any syntax errors such as eval "while")
|
||||
defineValidatingEval = ''
|
||||
eval(){
|
||||
e="$(type eval | { read; while read line; do echo $line; done })"
|
||||
unset eval;
|
||||
local evalSucc="failure"
|
||||
eval "evalSucc=ok;""$1"
|
||||
eval "$e"
|
||||
[ $evalSucc = "failure" ] && { echo "eval failed, snippet:"; echo "$1"; return 1; }
|
||||
}
|
||||
'';
|
||||
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 = {
|
||||
pyCheck = x : y : "${x}\n${y}";
|
||||
};
|
||||
};
|
||||
pythonLibStub = composableDerivation {} {
|
||||
propagatedBuildInputs = [ t.pythonFull ]; # see [1]
|
||||
postPhases = ["postAll"]; # using new name so that you dno't override this phase by accident
|
||||
prePhases = ["defineValidatingEval"];
|
||||
# ensure phases are run or a non zero exit status is caused (if there are any syntax errors such as eval "while")
|
||||
defineValidatingEval = ''
|
||||
eval(){
|
||||
e="$(type eval | { read; while read line; do echo $line; done })"
|
||||
unset eval;
|
||||
local evalSucc="failure"
|
||||
eval "evalSucc=ok;""$1"
|
||||
eval "$e"
|
||||
[ $evalSucc = "failure" ] && { echo "eval failed, snippet:"; echo "$1"; return 1; }
|
||||
}
|
||||
'';
|
||||
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 = {
|
||||
pyCheck = x : y : "${x}\n${y}";
|
||||
};
|
||||
};
|
||||
|
||||
# same as pythonLibStub, but runs default python setup.py actions
|
||||
pythonLibSetup = t.pythonLibStub.passthru.fun {
|
||||
pythonLibSetup = t.pythonLibStub.merge {
|
||||
buildPhase = ''python setup.py $setupFlags build'';
|
||||
installPhase = ''python setup.py $setupFlags install --prefix=$out'';
|
||||
mergeAttrBy = {
|
||||
@@ -130,8 +128,8 @@ in
|
||||
|
||||
### python libraries:
|
||||
|
||||
wxPythonBaseFun = (t.pythonLibSetup.passthru.funMerge (a :
|
||||
let inherit (a.fixed) wxGTK version; in
|
||||
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"];
|
||||
@@ -144,7 +142,7 @@ in
|
||||
license="wxWinLL-3";
|
||||
};
|
||||
}
|
||||
)).passthru.fun;
|
||||
)).merge;
|
||||
|
||||
wxPython26 = t.wxPythonBaseFun {
|
||||
version = "2.6.3.3";
|
||||
@@ -166,7 +164,7 @@ in
|
||||
#};
|
||||
|
||||
# couldn't download source
|
||||
#foursuite = pythonLibSetup.passthru.fun {
|
||||
#foursuite = pythonLibSetup.merge {
|
||||
# version = "1.0.2";
|
||||
# name = "4suite-${version}";
|
||||
# src = fetchurl {
|
||||
@@ -175,7 +173,7 @@ in
|
||||
# };
|
||||
#};
|
||||
|
||||
#bsddb3 = t.pythonLibSetup.passthru.fun {
|
||||
#bsddb3 = t.pythonLibSetup.merge {
|
||||
# version = "1.0.2";
|
||||
# name = "bsddb3-4.5.0";
|
||||
# setupFlags = ["--berkeley-db=${p.db4}"];
|
||||
@@ -197,8 +195,8 @@ in
|
||||
# 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.passthru.funMerge (a :
|
||||
let inherit (a.fixed) glib gtk; in lib.mergeAttrsByFuncDefaults [
|
||||
pygtkBaseFun = (t.pythonLibStub.merge (a :
|
||||
let inherit (a.fixed.passthru) glib gtk; in lib.mergeAttrsByFuncDefaults [
|
||||
{
|
||||
unpackPhase = "true";
|
||||
configurePhase = "true";
|
||||
@@ -312,9 +310,9 @@ in
|
||||
# '';
|
||||
#};
|
||||
|
||||
pygtk212 = t.pygtkBaseFun.passthru.funMerge (a : {
|
||||
pygtk212 = t.pygtkBaseFun.merge (a : {
|
||||
version = "2.12.1";
|
||||
name = "pygobject-${a.fixed.pygobjectVersion}-and-pygtk-${a.fixed.version}";
|
||||
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";
|
||||
@@ -326,7 +324,7 @@ in
|
||||
'';
|
||||
});
|
||||
|
||||
pycairo = t.pythonLibStub.passthru.fun {
|
||||
pycairo = t.pythonLibStub.merge {
|
||||
name = "pycairo-1.8.0";
|
||||
buildInputs = [ p.pkgconfig p.cairo p.x11 ];
|
||||
src = fetchurl {
|
||||
@@ -336,7 +334,7 @@ in
|
||||
pyCheck = "import cairo";
|
||||
};
|
||||
|
||||
gstPython = t.pythonLibStub.passthru.fun {
|
||||
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;
|
||||
@@ -377,7 +375,7 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
pygoocanvas = t.pythonLibStub.passthru.fun {
|
||||
pygoocanvas = t.pythonLibStub.merge {
|
||||
src = p.fetchurl {
|
||||
url = http://download.berlios.de/pygoocanvas/pygoocanvas-0.10.0.tar.gz;
|
||||
sha256 = "0pxznzdscbhvn8102vrqy3r1g6ss4sgs8wwy6y4c5g26rrp7l55d";
|
||||
@@ -393,7 +391,7 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
# zope = t.pythonLibStub.passthru.fun rec {
|
||||
# zope = t.pythonLibStub.merge rec {
|
||||
#[> version = "3.3.1";
|
||||
# version = "svn";
|
||||
# name = "zope-${version}";
|
||||
@@ -409,7 +407,7 @@ in
|
||||
# pyCheck = "";
|
||||
# };
|
||||
|
||||
setuptools = t.pythonLibSetup.passthru.fun {
|
||||
setuptools = t.pythonLibSetup.merge {
|
||||
name = "setuptools-0.6c9";
|
||||
postUnpack = ''
|
||||
ensureDir $out/lib/python2.5/site-packages
|
||||
@@ -429,7 +427,7 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
zopeInterface = t.pythonLibSetup.passthru.fun rec {
|
||||
zopeInterface = t.pythonLibSetup.merge rec {
|
||||
version = "3.3.0";
|
||||
name = "zope.interface-${version}";
|
||||
buildInputs = [ t.setuptools ];
|
||||
@@ -440,7 +438,7 @@ in
|
||||
pyCheck = "from zope.interface import Interface, Attribute";
|
||||
};
|
||||
|
||||
dbusPython = t.pythonLibStub.passthru.fun rec {
|
||||
dbusPython = t.pythonLibStub.merge rec {
|
||||
version = "0.83.0";
|
||||
name = "dbus-python-0.83.0";
|
||||
buildInputs = [ p.pkgconfig ];
|
||||
@@ -457,7 +455,7 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
pythonXlib = t.pythonLibSetup.passthru.fun {
|
||||
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;
|
||||
@@ -470,26 +468,52 @@ in
|
||||
};
|
||||
};
|
||||
|
||||
### python applications
|
||||
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";
|
||||
};
|
||||
|
||||
pythonExStub = composableDerivation {
|
||||
initial = {
|
||||
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
|
||||
'';
|
||||
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";
|
||||
};
|
||||
};
|
||||
|
||||
pitivi = t.pythonExStub.passthru.fun {
|
||||
### 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;
|
||||
@@ -509,7 +533,7 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
istanbul = t.pythonExStub.passthru.fun {
|
||||
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];
|
||||
|
||||
@@ -2,11 +2,11 @@ args: with args;
|
||||
let inherit (lib) optional prepareDerivationArgs concatStringsSep fix; in
|
||||
|
||||
composableDerivation {
|
||||
f = args: let attr = lib.prepareDerivationArgs args; in stdenv.mkDerivation ( attr // {
|
||||
mkDerivation = attr : stdenv.mkDerivation ( attr // {
|
||||
C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") attr.buildInputs);
|
||||
LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") attr.buildInputs);
|
||||
});
|
||||
initial = {
|
||||
} {
|
||||
|
||||
postPhases = ["runCheck"];
|
||||
|
||||
@@ -65,5 +65,4 @@ composableDerivation {
|
||||
rm -rf $out/lib/python2.5/test
|
||||
";
|
||||
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user