Author: simons
Date: Mon Aug 16 17:03:35 2010
New Revision: 23194
URL: https://svn.nixos.org/websvn/nix/?rev=23194&sc=1
Log:
Added "python-$version-wrapper" expression.
The python wrapper expression expects a list of Python modules, $extraLibs,
which are added to $PYTHONPATH before executing the actual Python interpreter.
Added:
nixpkgs/trunk/pkgs/development/interpreters/python/wrapper.nix
Modified:
nixpkgs/trunk/pkgs/development/interpreters/python/2.4/default.nix
nixpkgs/trunk/pkgs/development/interpreters/python/2.5/default.nix
nixpkgs/trunk/pkgs/development/interpreters/python/2.6/default.nix
nixpkgs/trunk/pkgs/development/interpreters/python/2.7/default.nix
nixpkgs/trunk/pkgs/development/interpreters/python/3.1/default.nix
nixpkgs/trunk/pkgs/top-level/all-packages.nix
Modified: nixpkgs/trunk/pkgs/development/interpreters/python/2.4/default.nix
==============================================================================
--- nixpkgs/trunk/pkgs/development/interpreters/python/2.4/default.nix Mon Aug
16 17:03:19 2010 (r23193)
+++ nixpkgs/trunk/pkgs/development/interpreters/python/2.4/default.nix Mon Aug
16 17:03:35 2010 (r23194)
@@ -8,14 +8,16 @@
buildInputs =
optional (stdenv ? gcc && stdenv.gcc.libc != null) stdenv.gcc.libc ++
- [bzip2] ++
+ [bzip2] ++
optional zlibSupport zlib;
in
stdenv.mkDerivation {
name = "python-2.4.6";
-
+ majorVersion = "2.4";
+ version = "2.4.6";
+
src = fetchurl {
url = http://www.python.org/ftp/python/2.4.6/Python-2.4.6.tar.bz2;
sha256 = "021y88a4ki07dgq19yhg6zfvmncfiz7h5b2255438i9zmlwl246s";
@@ -25,22 +27,22 @@
# Look in C_INCLUDE_PATH and LIBRARY_PATH for stuff.
./search-path.patch
];
-
+
inherit buildInputs;
C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs);
LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs);
-
+
configureFlags = "--enable-shared";
-
+
preConfigure = ''
# Purity.
- for i in /usr /sw /opt /pkg; do
+ for i in /usr /sw /opt /pkg; do
substituteInPlace ./setup.py --replace $i /no-such-path
done
'';
setupHook = ./setup-hook.sh;
-
+
postInstall = ''
rm -rf $out/lib/python2.4/test
'';
Modified: nixpkgs/trunk/pkgs/development/interpreters/python/2.5/default.nix
==============================================================================
--- nixpkgs/trunk/pkgs/development/interpreters/python/2.5/default.nix Mon Aug
16 17:03:19 2010 (r23193)
+++ nixpkgs/trunk/pkgs/development/interpreters/python/2.5/default.nix Mon Aug
16 17:03:35 2010 (r23194)
@@ -39,7 +39,9 @@
stdenv.mkDerivation ( {
name = "python-2.5.4";
-
+ majorVersion = "2.5";
+ version = "2.5.4";
+
src = fetchurl {
url = http://www.python.org/ftp/python/2.5.4/Python-2.5.4.tar.bz2;
sha256 = "0401g346ixng1im6gp11rgkfhx3v05qrpn5qjfx26mgy5dm8k3dw";
@@ -49,15 +51,15 @@
# Look in C_INCLUDE_PATH and LIBRARY_PATH for stuff.
./search-path.patch
];
-
+
inherit buildInputs;
C_INCLUDE_PATH = concatStringsSep ":" (map (p: "${p}/include") buildInputs);
LIBRARY_PATH = concatStringsSep ":" (map (p: "${p}/lib") buildInputs);
configureFlags = "--enable-shared --with-wctype-functions";
-
+
preConfigure = ''
# Purity.
- for i in /usr /sw /opt /pkg; do
+ for i in /usr /sw /opt /pkg; do
substituteInPlace ./setup.py --replace $i /no-such-path
done
'' + (if readline != null then ''
@@ -65,7 +67,7 @@
'' else "");
setupHook = ./setup-hook.sh;
-
+
postInstall = ''
rm -rf $out/lib/python2.5/test
'';
Modified: nixpkgs/trunk/pkgs/development/interpreters/python/2.6/default.nix
==============================================================================
--- nixpkgs/trunk/pkgs/development/interpreters/python/2.6/default.nix Mon Aug
16 17:03:19 2010 (r23193)
+++ nixpkgs/trunk/pkgs/development/interpreters/python/2.6/default.nix Mon Aug
16 17:03:35 2010 (r23194)
@@ -47,6 +47,7 @@
stdenv.mkDerivation ( {
name = "python-${version}";
+ inherit majorVersion version;
src = fetchurl {
url =
"http://www.python.org/ftp/python/${version}/Python-${version}.tar.bz2";
Modified: nixpkgs/trunk/pkgs/development/interpreters/python/2.7/default.nix
==============================================================================
--- nixpkgs/trunk/pkgs/development/interpreters/python/2.7/default.nix Mon Aug
16 17:03:19 2010 (r23193)
+++ nixpkgs/trunk/pkgs/development/interpreters/python/2.7/default.nix Mon Aug
16 17:03:35 2010 (r23194)
@@ -47,6 +47,7 @@
stdenv.mkDerivation ( {
name = "python-${version}";
+ inherit majorVersion version;
src = fetchurl {
url =
"http://www.python.org/ftp/python/${version}/Python-${version}.tar.bz2";
Modified: nixpkgs/trunk/pkgs/development/interpreters/python/3.1/default.nix
==============================================================================
--- nixpkgs/trunk/pkgs/development/interpreters/python/3.1/default.nix Mon Aug
16 17:03:19 2010 (r23193)
+++ nixpkgs/trunk/pkgs/development/interpreters/python/3.1/default.nix Mon Aug
16 17:03:35 2010 (r23194)
@@ -49,6 +49,7 @@
stdenv.mkDerivation ( {
name = "python3-${version}";
+ inherit majorVersion version;
src = fetchurl {
url =
"http://www.python.org/ftp/python/${version}/Python-${version}.tar.bz2";
Added: nixpkgs/trunk/pkgs/development/interpreters/python/wrapper.nix
==============================================================================
--- /dev/null 00:00:00 1970 (empty, because file is newly added)
+++ nixpkgs/trunk/pkgs/development/interpreters/python/wrapper.nix Mon Aug
16 17:03:35 2010 (r23194)
@@ -0,0 +1,19 @@
+{stdenv, python, makeWrapper, extraLibs ? []}:
+
+stdenv.mkDerivation {
+ name = "python-${python.version}-wrapper";
+
+ propagatedBuildInputs = [python makeWrapper] ++ extraLibs;
+
+ unpackPhase = "true";
+ installPhase = ''
+ ensureDir "$out/bin"
+ declare -p
+ for prg in 2to3 idle pydoc python python-config
python${python.majorVersion} python${python.majorVersion}-config smtpd.py; do
+ makeWrapper "$python/bin/$prg" "$out/bin/$prg" --set PYTHONPATH
"$PYTHONPATH"
+ done
+ '';
+
+ inherit python;
+ inherit (python) meta;
+}
Modified: nixpkgs/trunk/pkgs/top-level/all-packages.nix
==============================================================================
--- nixpkgs/trunk/pkgs/top-level/all-packages.nix Mon Aug 16 17:03:19
2010 (r23193)
+++ nixpkgs/trunk/pkgs/top-level/all-packages.nix Mon Aug 16 17:03:35
2010 (r23194)
@@ -2081,6 +2081,8 @@
pythonBase = python26Base;
pythonFull = python26Full;
+ pythonWrapper = callPackage ../development/interpreters/python/wrapper.nix {
};
+
python24 = callPackage ../development/interpreters/python/2.4 { };
python25Base = makeOverridable (import
../development/interpreters/python/2.5) {
_______________________________________________
nix-commits mailing list
[email protected]
http://mail.cs.uu.nl/mailman/listinfo/nix-commits