nixpkgs/pkgs/top-level/python-packages.nix
Ludovic Courtès 88b53a7d73 Twisted 8.2.0.
svn path=/nixpkgs/trunk/; revision=16174
2009-07-04 21:33:52 +00:00

295 lines
8.8 KiB
Nix

{ pkgs }:
rec {
inherit (pkgs) buildPythonPackage fetchurl fetchsvn stdenv python;
argparse = buildPythonPackage (rec {
name = "argparse-0.9.1";
src = fetchurl {
url = "http://pypi.python.org/packages/source/a/argparse/${name}.zip";
sha256 = "00jw32wwccpf9smraywjk869b93w7f99rw8gi63yfhw6379fnq6m";
};
buildInputs = [ pkgs.unzip ];
# How do we run the tests?
doCheck = false;
meta = {
homepage = http://code.google.com/p/argparse/;
license = "Apache License 2.0";
description = "argparse: Python command line parser";
longDescription = ''
The argparse module makes writing command line tools in Python
easy. Just briefly describe your command line interface and
argparse will take care of the rest, including: parsing the
arguments and flags from sys.argv, converting arg strings into
objects for your program, formatting and printing any help
messages, and much more.
'';
};
});
darcsver = buildPythonPackage (rec {
name = "darcsver-1.3.1";
src = fetchurl {
url = "http://pypi.python.org/packages/source/d/darcsver/${name}.tar.gz";
sha256 = "1a5cl2yhnd88a4vkc9r381cbjkcvga87dp9zx5av68857q1nvvvq";
};
buildInputs = [ pkgs.darcs ];
meta = {
description = "Darcsver, generate a version number from Darcs history";
homepage = http://pypi.python.org/pypi/darcsver;
license = "BSD-style";
};
});
foolscap = buildPythonPackage (rec {
name = "foolscap-0.4.2";
src = fetchurl {
url = "http://foolscap.lothar.com/releases/${name}.tar.gz";
sha256 = "14g89kjxxci3ssl9jgvpkyrcq62g361aw8pamlkclk8nnrh4f776";
};
propagatedBuildInputs = [ twisted pkgs.pyopenssl ];
meta = {
homepage = http://foolscap.lothar.com/;
description = "Foolscap, an RPC protocol for Python that follows the distributed object-capability model";
longDescription = ''
"Foolscap" is the name for the next-generation RPC protocol,
intended to replace Perspective Broker (part of Twisted).
Foolscap is a protocol to implement a distributed
object-capabilities model in Python.
'';
# See http://foolscap.lothar.com/trac/browser/LICENSE.
license = "MIT";
maintainers = [ stdenv.lib.maintainers.ludo ];
};
});
nevow = buildPythonPackage (rec {
name = "nevow-0.9.33";
src = fetchurl {
url = "http://divmod.org/trac/attachment/wiki/SoftwareReleases/Nevow-0.9.33.tar.gz?format=raw";
sha256 = "1b6zhfxx247b60n1qi2hrawhiaah88v8igg37pf7rjkmvy2z1c6c";
name = "${name}.tar.gz";
};
propagatedBuildInputs = [ twisted ];
meta = {
description = "Nevow, a web application construction kit for Python";
longDescription = ''
Nevow - Pronounced as the French "nouveau", or "noo-voh", Nevow
is a web application construction kit written in Python. It is
designed to allow the programmer to express as much of the view
logic as desired in Python, and includes a pure Python XML
expression syntax named stan to facilitate this. However it
also provides rich support for designer-edited templates, using
a very small XML attribute language to provide bi-directional
template manipulation capability.
Nevow also includes formless, a declarative syntax for
specifying the types of method parameters and exposing these
methods to the web. Forms can be rendered automatically, and
form posts will be validated and input coerced, rendering error
pages if appropriate. Once a form post has validated
successfully, the method will be called with the coerced values.
'';
homepage = http://divmod.org/trac/wiki/DivmodNevow;
license = "BSD-style";
};
});
pycryptopp = buildPythonPackage (rec {
name = "pycryptopp-0.5.14";
src = fetchurl {
url = "http://pypi.python.org/packages/source/p/pycryptopp/${name}.tar.gz";
sha256 = "1xvxyvqdi1223pkx0d6idzzlprmkk3hp9fr5r8jlib73cl0vh7rl";
};
buildInputs = [ setuptoolsDarcs darcsver pkgs.cryptopp ];
meta = {
homepage = http://pypi.python.org/pypi/pycryptopp/0.5.14;
description = "Python wrappers for the Crypto++ library";
license = "GPLv2+";
};
});
pyutil = buildPythonPackage (rec {
name = "pyutil-1.3.30";
src = fetchurl {
url = "http://pypi.python.org/packages/source/p/pyutil/${name}.tar.gz";
sha256 = "1ksb4gn8x53wcyddmjv1ma8cvvhjlmfxc6kpszyhb838i7xzla19";
};
buildInputs = [ setuptoolsDarcs ];
propagatedBuildInputs = [ zbase32 argparse ];
meta = {
description = "Pyutil, a collection of mature utilities for Python programmers";
longDescription = ''
These are a few data structures, classes and functions which
we've needed over many years of Python programming and which
seem to be of general use to other Python programmers. Many of
the modules that have existed in pyutil over the years have
subsequently been obsoleted by new features added to the
Python language or its standard library, thus showing that
we're not alone in wanting tools like these.
'';
homepage = http://allmydata.org/trac/pyutil;
license = "GPLv2+";
};
});
setuptoolsDarcs = buildPythonPackage {
name = "setuptools-darcs-1.2.8";
src = fetchurl {
url = "http://pypi.python.org/packages/source/s/setuptools_darcs/setuptools_darcs-1.2.8.tar.gz";
sha256 = "0jg9q9mhsky444mm7lpmmlxai8hmjg4pc71viv4kni8gls0gk9n8";
};
propagatedBuildInputs = [ pkgs.darcs ];
meta = {
description = "setuptools plugin for the Darcs version control system";
homepage = http://allmydata.org/trac/setuptools_darcs;
license = "BSD";
};
};
simplejson = buildPythonPackage (rec {
name = "simplejson-2.0.9";
src = fetchsvn {
url = "http://simplejson.googlecode.com/svn/tags/${name}";
sha256 = "a48d5256fdb4f258c33da3dda110ecf3c786f086dcb08a01309acde6d1ddb921";
rev = "172"; # to be on the safe side
};
meta = {
description = "simplejson is a simple, fast, extensible JSON encoder/decoder for Python";
longDescription = ''
simplejson is compatible with Python 2.4 and later with no
external dependencies. It covers the full JSON specification
for both encoding and decoding, with unicode support. By
default, encoding is done in an encoding neutral fashion (plain
ASCII with \uXXXX escapes for unicode characters).
'';
homepage = http://code.google.com/p/simplejson/;
license = "MIT";
};
});
twisted = buildPythonPackage {
name = "twisted-8.2.0";
src = fetchurl {
url = http://tmrc.mit.edu/mirror/twisted/Twisted/8.2/Twisted-8.2.0.tar.bz2;
sha256 = "1c6zplisjdnjzkfs0ld3a0f7m7xbjgx5rcwsdw5i1xiibsq2nq70";
};
propagatedBuildInputs = [ pkgs.ZopeInterface ];
meta = {
homepage = http://twistedmatrix.com/;
description = "Twisted, an event-driven networking engine written in Python";
longDescription = ''
Twisted is an event-driven networking engine written in Python
and licensed under the MIT license.
'';
license = "MIT";
maintainers = [ stdenv.lib.maintainers.ludo ];
};
};
zbase32 = buildPythonPackage (rec {
name = "zbase32-1.1.1";
src = fetchurl {
url = "http://pypi.python.org/packages/source/z/zbase32/${name}.tar.gz";
sha256 = "0n59l4rs26vrhxpsfrwybjjir68aj23f09k1yjnbxqy5n0khp8gm";
};
# Tests require `pyutil' so disable them to avoid circular references.
doCheck = false;
buildInputs = [ setuptoolsDarcs ];
meta = {
description = "zbase32, a base32 encoder/decoder";
homepage = http://pypi.python.org/pypi/zbase32;
license = "BSD";
};
});
zfec = buildPythonPackage (rec {
name = "zfec-1.4.4";
src = fetchurl {
url = "http://pypi.python.org/packages/source/z/zfec/${name}.tar.gz";
sha256 = "0rgg7nsvbr4f9xmiclzypc39fnivg23kldv5aa8si0bgsxn6mh6w";
};
buildInputs = [ setuptoolsDarcs ];
propagatedBuildInputs = [ pyutil argparse ];
meta = {
homepage = http://allmydata.org/trac/zfec;
description = "Zfec, a fast erasure codec which can be used with the command-line, C, Python, or Haskell";
longDescription = ''
Fast, portable, programmable erasure coding a.k.a. "forward
error correction": the generation of redundant blocks of
information such that if some blocks are lost then the
original data can be recovered from the remaining blocks. The
zfec package includes command-line tools, C API, Python API,
and Haskell API.
'';
license = "GPLv2+";
};
});
}