Permalink
Find file
539e9fc Oct 1, 2016
30411 lines (23937 sloc) 861 KB
{ pkgs, stdenv, python, self }:
with pkgs.lib;
let
pythonAtLeast = versionAtLeast python.pythonVersion;
pythonOlder = versionOlder python.pythonVersion;
isPy26 = python.majorVersion == "2.6";
isPy27 = python.majorVersion == "2.7";
isPy33 = python.majorVersion == "3.3";
isPy34 = python.majorVersion == "3.4";
isPy35 = python.majorVersion == "3.5";
isPy36 = python.majorVersion == "3.6";
isPyPy = python.executable == "pypy";
isPy3k = strings.substring 0 1 python.majorVersion == "3";
callPackage = pkgs.newScope self;
bootstrapped-pip = callPackage ../development/python-modules/bootstrapped-pip { };
mkPythonDerivation = makeOverridable( callPackage ../development/interpreters/python/mk-python-derivation.nix {
});
buildPythonPackage = makeOverridable (callPackage ../development/interpreters/python/build-python-package.nix {
inherit mkPythonDerivation;
inherit bootstrapped-pip;
});
buildPythonApplication = args: buildPythonPackage ({namePrefix="";} // args );
modules = python.modules or {
readline = null;
sqlite3 = null;
curses = null;
curses_panel = null;
crypt = null;
};
in modules // {
inherit python bootstrapped-pip isPy26 isPy27 isPy33 isPy34 isPy35 isPy36 isPyPy isPy3k mkPythonDerivation buildPythonPackage buildPythonApplication;
# helpers
wrapPython = callPackage ../development/interpreters/python/wrap-python.nix {inherit python; inherit (pkgs) makeSetupHook makeWrapper; };
# specials
recursivePthLoader = callPackage ../development/python-modules/recursive-pth-loader { };
setuptools = callPackage ../development/python-modules/setuptools { };
agate = buildPythonPackage rec {
name = "agate-1.2.2";
disabled = isPy3k;
meta = {
description = "A Python data analysis library that is optimized for humans instead of machines";
homepage = "https://github.com/wireservice/agate";
license = licenses.mit;
maintainers = with maintainers; [ vrthra ];
};
propagatedBuildInputs = with self; [ discid six parsedatetime isodate Babel pytimeparse ];
src = pkgs.fetchurl {
url = "mirror://pypi/a/agate/${name}.tar.gz";
sha256 = "0h2w30a0zhylivz86d823a05hvg8w8p61lmm855z1wwkgml9l9d4";
};
};
agate-dbf = buildPythonPackage rec {
name = "agate-dbf-0.1.0";
disabled = isPy3k;
meta = {
description = "Adds read support for dbf files to agate";
homepage = "https://github.com/wireservice/agate-dbf";
license = licenses.mit;
maintainers = with maintainers; [ vrthra ];
};
propagatedBuildInputs = with self; [ agate dbf dbfread ];
src = pkgs.fetchurl {
url = "mirror://pypi/a/agate-dbf/${name}.tar.gz";
sha256 = "0xzz834lh4xbl342c6wmxqy7ynmsrjp42bsjahfcxhsgq33vzngz";
};
};
agate-excel = buildPythonPackage rec {
name = "agate-excel-0.1.0";
disabled = isPy3k;
meta = {
description = "Adds read support for excel files to agate";
homepage = "https://github.com/wireservice/agate-excel";
license = licenses.mit;
maintainers = with maintainers; [ vrthra ];
};
propagatedBuildInputs = with self; [ agate openpyxl xlrd ];
src = pkgs.fetchurl {
url = "mirror://pypi/a/agate-excel/${name}.tar.gz";
sha256 = "08zvj3pwqw8zhd58iyymiwblrk92y4gl6yyrb2svb0k8za7v0hak";
};
};
# packages defined elsewhere
blivet = callPackage ../development/python-modules/blivet { };
breathe = callPackage ../development/python-modules/breathe { };
bugseverywhere = callPackage ../applications/version-management/bugseverywhere {};
dbf = buildPythonPackage rec {
name = "dbf-0.94.003";
disabled = isPy3k;
meta = {
description = "Pure python package for reading/writing dBase, FoxPro, and Visual FoxPro .dbf files";
homepage = "https://pypi.python.org/pypi/dbf";
license = licenses.bsd2;
maintainers = with maintainers; [ vrthra ];
};
src = pkgs.fetchurl {
url = "mirror://pypi/d/dbf/${name}.tar.gz";
sha256 = "0i2454hwg67079jb56x663wqmmwr55pcr6c76q2415185y6nhny9";
};
};
dbfread = buildPythonPackage rec {
name = "dbfread-2.0.5";
disabled = isPy3k;
meta = {
description = "Read DBF Files with Python";
homepage = "http://dbfread.readthedocs.org/";
license = licenses.mit;
maintainers = with maintainers; [ vrthra ];
};
src = pkgs.fetchurl {
url = "mirror://pypi/d/dbfread/${name}.tar.gz";
sha256 = "0r5axq9ax0czyapm7b69krcv22r1nyb4vci7c5x8mx8pq1axim93";
};
};
emcee = buildPythonPackage {
name = "emcee-2.1.0";
src = pkgs.fetchurl {
url = "mirror://pypi/e/emcee/emcee-2.1.0.tar.gz";
sha256 = "0qyafp9jfya0mkxgqfvljf0rkic5fm8nimzwadyrxyvq7nd07qaw";
};
propagatedBuildInputs = [ self.numpy ];
meta = {
homepage = http://dan.iel.fm/emcee;
license = "MIT";
description = "Kick ass affine-invariant ensemble MCMC sampling";
};
};
dbus-python = callPackage ../development/python-modules/dbus {
dbus = pkgs.dbus;
};
discid = buildPythonPackage rec {
name = "discid-1.1.0";
meta = {
description = "Python binding of libdiscid";
homepage = "https://python-discid.readthedocs.org/";
license = licenses.lgpl3Plus;
platforms = platforms.linux;
};
src = pkgs.fetchurl {
url = "mirror://pypi/d/discid/${name}.tar.gz";
sha256 = "b39d443051b26d0230be7a6c616243daae93337a8711dd5d4119bb6a0e516fa8";
};
patchPhase = ''
substituteInPlace discid/libdiscid.py \
--replace '_open_library(_LIB_NAME)' "_open_library('${pkgs.libdiscid}/lib/libdiscid.so.0')"
'';
};
h5py = callPackage ../development/python-modules/h5py {
hdf5 = pkgs.hdf5;
};
h5py-mpi = self.h5py.override {
hdf5 = pkgs.hdf5-mpi;
};
mpi4py = callPackage ../development/python-modules/mpi4py {
mpi = pkgs.openmpi;
};
neuron = pkgs.neuron.override {
inherit python;
};
neuron-mpi = pkgs.neuron-mpi.override {
inherit python;
};
nixpart = callPackage ../tools/filesystems/nixpart { };
# This is used for NixOps to make sure we won't break it with the next major
# version of nixpart.
nixpart0 = callPackage ../tools/filesystems/nixpart/0.4 { };
pitz = callPackage ../applications/misc/pitz { };
plantuml = callPackage ../tools/misc/plantuml { };
pyatspi = if isPy3k then callPackage ../development/python-modules/pyatspi { } else throw "pyatspi not supported for interpreter ${python.executable}";
pycairo = callPackage ../development/python-modules/pycairo { };
pycangjie = if isPy3k then callPackage ../development/python-modules/pycangjie { } else throw "pycangjie not supported for interpreter ${python.executable}";
pycrypto = callPackage ../development/python-modules/pycrypto { };
pyexiv2 = if (!isPy3k) then callPackage ../development/python-modules/pyexiv2 {} else throw "pyexiv2 not supported for interpreter ${python.executable}";
pygame = callPackage ../development/python-modules/pygame { };
pygame-git = callPackage ../development/python-modules/pygame/git.nix { };
pygobject2 = callPackage ../development/python-modules/pygobject { };
pygobject3 = callPackage ../development/python-modules/pygobject/3.nix { };
pygtk = callPackage ../development/python-modules/pygtk { libglade = null; };
pygtksourceview = callPackage ../development/python-modules/pygtksourceview { };
pyGtkGlade = self.pygtk.override {
libglade = pkgs.gnome2.libglade;
};
pyqt4 = callPackage ../development/python-modules/pyqt/4.x.nix {
pythonPackages = self;
};
pyqt5 = pkgs.qt5.callPackage ../development/python-modules/pyqt/5.x.nix {
pythonPackages = self;
};
pyside = callPackage ../development/python-modules/pyside { };
pysideApiextractor = callPackage ../development/python-modules/pyside/apiextractor.nix { };
pysideGeneratorrunner = callPackage ../development/python-modules/pyside/generatorrunner.nix { };
pysideShiboken = callPackage ../development/python-modules/pyside/shiboken.nix { };
pysideTools = callPackage ../development/python-modules/pyside/tools.nix { };
pytimeparse = buildPythonPackage rec {
name = "pytimeparse-1.1.5";
disabled = isPy3k;
meta = {
description = "A small Python library to parse various kinds of time expressions";
homepage = "https://github.com/wroberts/pytimeparse";
license = licenses.mit;
maintainers = with maintainers; [ vrthra ];
};
propagatedBuildInputs = with self; [ nose ];
src = pkgs.fetchurl {
url = "mirror://pypi/p/pytimeparse/${name}.tar.gz";
sha256 = "01xj31m5brydm4gvc6lwx26r74903wvm1jx3g05633k3mqlvvpcs";
};
};
pyxml = if !isPy3k then callPackage ../development/python-modules/pyxml{ } else throw "pyxml not supported for interpreter ${python.executable}";
rhpl = if !isPy3k then callPackage ../development/python-modules/rhpl {} else throw "rhpl not supported for interpreter ${python.executable}";
sip = callPackage ../development/python-modules/sip { };
tables = callPackage ../development/python-modules/tables {
hdf5 = pkgs.hdf5.override { zlib = pkgs.zlib; };
};
unifi = buildPythonPackage rec {
name = "unifi-1.2.5";
propagatedBuildInputs = with self; [ urllib3 ];
# upstream has no tests
doCheck = false;
meta = {
description = "An API towards the Ubiquity Networks UniFi controller";
homepage = https://pypi.python.org/pypi/unifi/;
license = licenses.mit;
maintainers = with maintainers; [ peterhoeg ];
};
src = pkgs.fetchurl {
url = "mirror://pypi/u/unifi/${name}.tar.gz";
sha256 = "0prgx01hzs49prrazgxrinm7ivqzy57ch06qm2h7s1p957sazds8";
};
};
pyunbound = callPackage ../tools/networking/unbound/python.nix { };
# packages defined here
aafigure = buildPythonPackage rec {
name = "aafigure-0.5";
src = pkgs.fetchurl {
url = "mirror://pypi/a/aafigure/${name}.tar.gz";
sha256 = "090c88beb091d28a233f854e239713aa15d8d1906ea16211855345c912e8a091";
};
propagatedBuildInputs = with self; [ pillow ];
# error: invalid command 'test'
doCheck = false;
# Fix impurity. TODO: Do the font lookup using fontconfig instead of this
# manual method. Until that is fixed, we get this whenever we run aafigure:
# WARNING: font not found, using PIL default font
patchPhase = ''
sed -i "s|/usr/share/fonts|/nonexisting-fonts-path|" aafigure/PILhelper.py
'';
meta = {
description = "ASCII art to image converter";
homepage = https://launchpad.net/aafigure/;
license = licenses.bsd2;
platforms = platforms.linux;
maintainers = with maintainers; [ bjornfor ];
};
};
acd_cli = buildPythonPackage rec {
name = pname + "-" + version;
pname = "acd_cli";
version = "0.3.1";
disabled = !isPy33;
doCheck = !isPy33;
src = pkgs.fetchFromGitHub {
owner = "yadayada";
repo = pname;
rev = version;
sha256 = "1ywimbisgb5g7xl9nrfwcm7dv3j8fsrjfp7bxb3l58zbsrzj6z2s";
};
propagatedBuildInputs = with self; [ appdirs colorama dateutil requests2 requests_toolbelt sqlalchemy ];
makeWrapperArgs = [ "--prefix LIBFUSE_PATH : ${pkgs.fuse}/lib/libfuse.so" ];
meta = {
description = "A command line interface and FUSE filesystem for Amazon Cloud Drive";
homepage = https://github.com/yadayada/acd_cli;
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ edwtjo ];
};
};
acme_0_5_0 = buildPythonPackage rec {
version = "0.5.0";
name = "acme-${version}";
src = pkgs.fetchFromGitHub {
owner = "letsencrypt";
repo = "letsencrypt";
rev = "v${version}";
sha256 = "0x098cdyfgqvh7x5d3sz56qjpjyg5b4fl82086sm43d8mbz0h5rm";
};
propagatedBuildInputs = with self; [
cryptography pyasn1 pyopenssl pyRFC3339 pytz requests2 six werkzeug mock
ndg-httpsclient
];
buildInputs = with self; [ nose ];
sourceRoot = "letsencrypt-v${version}-src/acme";
};
acme = buildPythonPackage rec {
inherit (pkgs.certbot) src version;
name = "acme-${version}";
propagatedBuildInputs = with self; [
cryptography pyasn1 pyopenssl pyRFC3339 pytz requests2 six werkzeug mock
ndg-httpsclient
];
buildInputs = with self; [ nose ];
postUnpack = "sourceRoot=\${sourceRoot}/acme";
};
acme-tiny = buildPythonPackage rec {
name = "acme-tiny-${version}";
version = "2016-03-26";
src = pkgs.fetchFromGitHub {
sha256 = "0ngmr3kxcvlqa9mrv3gx0rg4r67xvdjplqfminxliri3ipak853g";
rev = "7a5a2558c8d6e5ab2a59b9fec9633d9e63127971";
repo = "acme-tiny";
owner = "diafygi";
};
# source doesn't have any python "packaging" as such
configurePhase = " ";
buildPhase = " ";
# the tests are... complex
doCheck = false;
patchPhase = ''
substituteInPlace acme_tiny.py --replace "openssl" "${pkgs.openssl.bin}/bin/openssl"
'';
installPhase = ''
mkdir -p $out/${python.sitePackages}/
cp acme_tiny.py $out/${python.sitePackages}/
mkdir -p $out/bin
ln -s $out/${python.sitePackages}/acme_tiny.py $out/bin/acme_tiny
chmod +x $out/bin/acme_tiny
'';
meta = {
description = "A tiny script to issue and renew TLS certs from Let's Encrypt";
homepage = https://github.com/diafygi/acme-tiny;
license = licenses.mit;
};
};
actdiag = buildPythonPackage rec {
name = "actdiag-0.5.3";
src = pkgs.fetchurl {
url = "mirror://pypi/a/actdiag/${name}.tar.gz";
sha256 = "1vr4hnkr0gcvvpaycd8q3vcx029b2f5yv8swhdr8kwspaqb0dvfa";
};
buildInputs = with self; [ pep8 nose unittest2 docutils ];
propagatedBuildInputs = with self; [ blockdiag ];
# One test fails:
# UnicodeEncodeError: 'ascii' codec can't encode character u'\u3042' in position 0: ordinal not in range(128)
doCheck = false;
meta = {
description = "Generate activity-diagram image from spec-text file (similar to Graphviz)";
homepage = http://blockdiag.com/;
license = licenses.asl20;
platforms = platforms.linux;
maintainers = with maintainers; [ bjornfor ];
};
};
adal = buildPythonPackage rec {
version = "0.1.0";
name = "adal-${version}";
src = pkgs.fetchurl {
url = mirror://pypi/a/adal/adal-0.1.0.tar.gz;
sha256 = "1f32k18ck54adqlgvh6fjhy4yavcyrwy813prjyqppqqq4bn1a09";
};
propagatedBuildInputs = with self; [ requests2 pyjwt ];
meta = {
description = "Library to make it easy for python application to authenticate to Azure Active Directory (AAD) in order to access AAD protected web resources";
homepage = https://github.com/AzureAD/azure-activedirectory-library-for-python;
license = licenses.mit;
maintainers = with maintainers; [ phreedom ];
};
};
afew = buildPythonPackage rec {
rev = "3f1e5e93119788984c2193292c988ac81ecb0a45";
name = "afew-git-2016-01-04";
src = pkgs.fetchurl {
url = "https://github.com/teythoon/afew/tarball/${rev}";
name = "${name}.tar.bz";
sha256 = "1fi19g2j1qilh7ikp7pzn6sagkn76g740zdxgnsqmmvl2zk2yhrw";
};
buildInputs = with self; [ pkgs.dbacl ];
propagatedBuildInputs = with self; [
self.notmuch
self.chardet
] ++ optional (!isPy3k) self.subprocess32;
doCheck = false;
preConfigure = ''
substituteInPlace afew/DBACL.py --replace "'dbacl'" "'${pkgs.dbacl}/bin/dbacl'"
'';
postInstall = ''
wrapProgram $out/bin/afew \
--prefix LD_LIBRARY_PATH : ${pkgs.notmuch}/lib
'';
meta = {
homepage = https://github.com/teythoon/afew;
description = "An initial tagging script for notmuch mail";
maintainers = with maintainers; [ garbas ];
};
};
aiodns = buildPythonPackage rec {
name = "aiodns-${version}";
version = "1.0.1";
src = pkgs.fetchurl {
url = "mirror://pypi/a/aiodns/${name}.tar.gz";
sha256 = "595b78b8d54115d937cf60d778c02dad76b6f789fd527dab308f99e5601e7f3d";
};
propagatedBuildInputs = with self; [ pycares ] ++ optional isPy33 asyncio ++ optional (isPy26 || isPy27 || isPyPy) trollius;
checkPhase = ''
${python.interpreter} tests.py
'';
# 'Could not contact DNS servers'
doCheck = false;
meta = {
homepage = http://github.com/saghul/aiodns;
license = licenses.mit;
description = "Simple DNS resolver for asyncio";
};
};
aiohttp = buildPythonPackage rec {
name = "aiohttp-${version}";
version = "0.21.5";
src = pkgs.fetchurl {
url = "mirror://pypi/a/aiohttp/${name}.tar.gz";
sha256 = "0n8517wc8b6yc925f7zhgl4wqf4ay1w2fzar0pj1h20yfa1wiids";
};
disabled = pythonOlder "3.4";
doCheck = false; # Too many tests fail.
buildInputs = with self; [ pytest gunicorn pytest-raisesregexp ];
propagatedBuildInputs = with self; [ chardet ];
meta = {
description = "http client/server for asyncio";
license = with licenses; [ asl20 ];
homepage = https://github.com/KeepSafe/aiohttp/;
};
};
alabaster = buildPythonPackage rec {
name = "alabaster-0.7.7";
src = pkgs.fetchurl {
url = "mirror://pypi/a/alabaster/${name}.tar.gz";
sha256 = "f416a84e0d0ddbc288f6b8f2c276d10b40ca1238562cd9ed5a751292ec647b71";
};
propagatedBuildInputs = with self; [ pygments ];
# No tests included
doCheck = false;
meta = {
homepage = https://github.com/bitprophet/alabaster;
description = "A Sphinx theme";
license = licenses.bsd3;
};
};
alembic = buildPythonPackage rec {
name = "alembic-0.8.3";
src = pkgs.fetchurl {
url = "mirror://pypi/a/alembic/${name}.tar.gz";
sha256 = "1sgwvwylzd5h14130mwr0cbyy0fil0a1bq0d0ki97wqvkic3db7f";
};
buildInputs = with self; [ pytest pytestcov mock coverage ];
propagatedBuildInputs = with self; [ Mako sqlalchemy python-editor ];
meta = {
homepage = http://bitbucket.org/zzzeek/alembic;
description = "A database migration tool for SQLAlchemy";
license = licenses.mit;
};
};
asgiref = buildPythonPackage rec {
name = "asgiref-${version}";
version = "0.14.0";
src = pkgs.fetchurl {
url = "mirror://pypi/a/asgiref/${name}.tar.gz";
sha256 = "1ww4z14pd7g2mwz5nyvxm4rif0rsm9h8i0lwk78v58b2j45r43lc";
};
propagatedBuildInputs = with self ; [ six ];
meta = {
description = "Reference ASGI adapters and channel layers";
license = licenses.bsd3;
homepage = https://github.com/django/asgiref;
};
};
asgi_ipc = buildPythonPackage rec {
name = "asgi_ipc-${version}";
version = "1.1.0";
src = pkgs.fetchurl {
url = "mirror://pypi/a/asgi_ipc/${name}.tar.gz";
sha256 = "16q5x2cvx3rpnikmqv8l4clkfib8baqy7diy18rsmzj6hqqli3xy";
};
propagatedBuildInputs = with self ; [ asgiref msgpack posix_ipc ];
meta = {
description = "Posix IPC-backed ASGI channel layer implementation";
license = licenses.bsd3;
homepage = http://github.com/django/asgi_ipc/;
};
};
asgi_redis = buildPythonPackage rec {
name = "asgi_redis-${version}";
version = "0.14.1";
src = pkgs.fetchurl {
url = "mirror://pypi/a/asgi_redis/${name}.tar.gz";
sha256 = "13ixh1nwgla7wm2xa42inwrd3g5lri89gd31xl62zhs8m6jmg122";
};
# Requires a redis server available
doCheck = false;
propagatedBuildInputs = with self ; [ asgiref asgi_ipc msgpack six redis cryptography ];
meta = {
description = "Redis-backed ASGI channel layer implementation";
license = licenses.bsd3;
homepage = http://github.com/django/asgi_redis/;
};
};
python-editor = buildPythonPackage rec {
name = "python-editor-${version}";
version = "0.4";
src = pkgs.fetchurl {
url = "mirror://pypi/p/python-editor/${name}.tar.gz";
sha256 = "1gykxn16anmsbcrwhx3rrhwjif95mmwvq9gjcrr9bbzkdc8sf8a4";
};
meta = with stdenv.lib; {
description = "`python-editor` is a library that provides the `editor` module for programmatically";
homepage = "https://github.com/fmoo/python-editor";
};
};
python-gnupg = buildPythonPackage rec {
name = "python-gnupg-${version}";
version = "0.3.8";
src = pkgs.fetchurl {
url = "mirror://pypi/p/python-gnupg/${name}.tar.gz";
sha256 = "0nkbs9c8f30lra7ca39kg91x8cyxn0jb61vih4qky839gpbwwwiq";
};
# Let's make the library default to our gpg binary
patchPhase = ''
substituteInPlace gnupg.py \
--replace "gpgbinary='gpg'" "gpgbinary='${pkgs.gnupg1}/bin/gpg'"
'';
meta = {
description = "A wrapper for the Gnu Privacy Guard";
homepage = "https://pypi.python.org/pypi/python-gnupg";
license = licenses.bsd3;
maintainers = with maintainers; [ copumpkin ];
platforms = platforms.unix;
};
};
almir = buildPythonPackage rec {
name = "almir-0.1.8";
src = pkgs.fetchurl {
url = "mirror://pypi/a/almir/${name}.zip";
sha256 = "5dc0b8a5071f3ff46cd2d92608f567ba446e4c733c063b17d89703caeb9868fe";
};
buildInputs = with self; [
pkgs.which
self.coverage
self.mock
self.tissue
self.unittest2
self.webtest
];
propagatedBuildInputs = with self; [
pkgs.makeWrapper
pkgs.bacula
self.colander
self.deform
self.deform_bootstrap
self.docutils
self.nose
self.mysql_connector_repackaged
self.pg8000
self.pyramid
self.pyramid_beaker
self.pyramid_exclog
self.pyramid_jinja2
self.pyramid_tm
self.pytz
self.sqlalchemy8
self.transaction
self.waitress
self.webhelpers
self.psycopg2
(self.zope_sqlalchemy.override rec {propagatedBuildInputs = with self; [ sqlalchemy8 transaction ];})
];
postInstall = ''
ln -s ${pkgs.bacula}/bin/bconsole $out/bin
'';
meta = {
maintainers = with maintainers; [ domenkozar ];
platforms = platforms.all;
};
};
alot = buildPythonPackage rec {
rev = "0.3.7";
name = "alot-${rev}";
src = pkgs.fetchFromGitHub {
owner = "pazz";
repo = "alot";
inherit rev;
sha256 = "0sscmmf42gsrjbisi6wm01alzlnq6wqhpwkm8pc557075jfg19il";
};
postPatch = ''
substituteInPlace alot/defaults/alot.rc.spec \
--replace "themes_dir = string(default=None)" \
"themes_dir = string(default='$out/share/themes')"
'';
propagatedBuildInputs =
[ self.notmuch
self.urwid
self.urwidtrees
self.twisted
self.python_magic
self.configobj
self.pygpgme
];
postInstall = ''
mkdir -p $out/share
cp -r extra/themes $out/share
wrapProgram $out/bin/alot \
--prefix LD_LIBRARY_PATH : '${pkgs.lib.makeLibraryPath [ pkgs.notmuch pkgs.file pkgs.gpgme ]}'
'';
meta = {
homepage = https://github.com/pazz/alot;
description = "Terminal MUA using notmuch mail";
maintainers = with maintainers; [ garbas profpatsch ];
};
};
anyjson = buildPythonPackage rec {
name = "anyjson-0.3.3";
# The tests are written in a python2 syntax but anyjson is python3 valid
doCheck = !isPy3k;
src = pkgs.fetchurl {
url = "mirror://pypi/a/anyjson/${name}.tar.gz";
sha256 = "37812d863c9ad3e35c0734c42e0bf0320ce8c3bed82cd20ad54cb34d158157ba";
};
buildInputs = with self; [ self.nose ];
meta = {
homepage = http://pypi.python.org/pypi/anyjson/;
description = "Wrapper that selects the best available JSON implementation";
};
};
amqp = buildPythonPackage rec {
name = "amqp-${version}";
version = "1.4.9";
disabled = pythonOlder "2.6";
src = pkgs.fetchurl {
url = "mirror://pypi/a/amqp/${name}.tar.gz";
sha256 = "06n6q0kxhjnbfz3vn8x9yz09lwmn1xi9d6wxp31h5jbks0b4vsid";
};
buildInputs = with self; [ mock coverage nose-cover3 unittest2 ];
meta = {
homepage = http://github.com/celery/py-amqp;
description = "Python client for the Advanced Message Queuing Procotol (AMQP). This is a fork of amqplib which is maintained by the Celery project";
license = licenses.lgpl21;
};
};
amqplib = buildPythonPackage rec {
name = "amqplib-0.6.1";
src = pkgs.fetchurl {
url = "http://py-amqplib.googlecode.com/files/${name}.tgz";
sha256 = "0f2618b74d95cd360a6d46a309a3fb1c37d881a237e269ac195a69a34e0e2f62";
};
# error: invalid command 'test'
doCheck = false;
meta = {
homepage = http://code.google.com/p/py-amqplib/;
description = "Python client for the Advanced Message Queuing Procotol (AMQP)";
};
};
ansible = buildPythonPackage rec {
version = "1.9.6";
name = "ansible-${version}";
disabled = isPy3k;
src = pkgs.fetchurl {
url = "https://releases.ansible.com/ansible/${name}.tar.gz";
sha256 = "0pgfh5z4w44sjgd77q6k769a5ipigjlm28zbpf2jhvz7n60kfxsh";
};
prePatch = ''
sed -i "s,/usr/,$out," lib/ansible/constants.py
'';
doCheck = false;
dontStrip = true;
dontPatchELF = true;
dontPatchShebangs = true;
windowsSupport = true;
propagatedBuildInputs = with self; [
pycrypto paramiko jinja2 pyyaml httplib2 boto six
] ++ optional windowsSupport pywinrm;
meta = {
homepage = "http://www.ansible.com";
description = "A simple automation tool";
license = with licenses; [ gpl3] ;
maintainers = with maintainers; [ joamaki ];
platforms = with platforms; linux ++ darwin;
};
};
ansible2 = buildPythonPackage rec {
version = "2.1.1.0";
name = "ansible-${version}";
disabled = isPy3k;
src = pkgs.fetchurl {
url = "http://releases.ansible.com/ansible/${name}.tar.gz";
sha256 = "12v7smivjz8d2skk5qxl83nmkxqxypjm8b7ld40sjfwj4g0kkrv1";
};
prePatch = ''
sed -i "s,/usr/,$out," lib/ansible/constants.py
'';
doCheck = false;
dontStrip = true;
dontPatchELF = true;
dontPatchShebangs = true;
windowsSupport = true;
propagatedBuildInputs = with self; [
pycrypto paramiko jinja2 pyyaml httplib2 boto six readline
] ++ optional windowsSupport pywinrm;
meta = with stdenv.lib; {
homepage = "http://www.ansible.com";
description = "A simple automation tool";
license = with licenses; [ gpl3 ];
maintainers = with maintainers; [ copumpkin ];
platforms = with platforms; linux ++ darwin;
};
};
apipkg = buildPythonPackage rec {
name = "apipkg-1.4";
src = pkgs.fetchurl {
url = "mirror://pypi/a/apipkg/${name}.tar.gz";
sha256 = "2e38399dbe842891fe85392601aab8f40a8f4cc5a9053c326de35a1cc0297ac6";
};
buildInputs = with self; [ pytest ];
checkPhase = ''
py.test
'';
meta = {
description = "Namespace control and lazy-import mechanism";
homepage = "http://bitbucket.org/hpk42/apipkg";
license = licenses.mit;
};
};
appdirs = buildPythonPackage rec {
name = "appdirs-1.4.0";
src = pkgs.fetchurl {
url = "mirror://pypi/a/appdirs/appdirs-1.4.0.tar.gz";
sha256 = "8fc245efb4387a4e3e0ac8ebcc704582df7d72ff6a42a53f5600bbb18fdaadc5";
};
meta = {
description = "A python module for determining appropriate platform-specific dirs";
homepage = http://github.com/ActiveState/appdirs;
license = licenses.mit;
};
};
application = buildPythonPackage rec {
pname = "python-application";
name = "${pname}-${version}";
version = "2.0.2";
disabled = isPy3k;
src = pkgs.fetchdarcs {
url = "http://devel.ag-projects.com/repositories/${pname}";
rev = "release-${version}";
sha256 = "19dszv44py8qrq0jcjdycxpa7z2p8hi3ijq9gnqdsazbbjzf9svn";
};
buildInputs = with self; [ zope_interface ];
};
appnope = buildPythonPackage rec {
version = "0.1.0";
name = "appnope-${version}";
src = pkgs.fetchurl {
url = "mirror://pypi/a/appnope/${name}.tar.gz";
sha256 = "8b995ffe925347a2138d7ac0fe77155e4311a0ea6d6da4f5128fe4b3cbe5ed71";
};
meta = {
description = "Disable App Nap on OS X";
homepage = https://pypi.python.org/pypi/appnope;
platforms = platforms.darwin;
license = licenses.bsd3;
};
};
apsw = buildPythonPackage rec {
name = "apsw-3.7.6.2-r1";
disabled = isPyPy;
src = pkgs.fetchurl {
url = "http://apsw.googlecode.com/files/${name}.zip";
sha256 = "cb121b2bce052609570a2f6def914c0aa526ede07b7096dddb78624d77f013eb";
};
buildInputs = with self; [ pkgs.sqlite ];
# python: double free or corruption (fasttop): 0x0000000002fd4660 ***
doCheck = false;
meta = {
description = "A Python wrapper for the SQLite embedded relational database engine";
homepage = http://code.google.com/p/apsw/;
};
};
asyncio = if (pythonAtLeast "3.3") then buildPythonPackage rec {
name = "asyncio-${version}";
version = "3.4.3";
src = pkgs.fetchurl {
url = "mirror://pypi/a/asyncio/${name}.tar.gz";
sha256 = "0hfbqwk9y0bbfgxzg93s2wyk6gcjsdxlr5jwy97hx64ppkw0ydl3";
};
meta = {
description = "Reference implementation of PEP 3156";
homepage = http://www.python.org/dev/peps/pep-3156;
license = licenses.free;
};
} else null;
funcsigs = buildPythonPackage rec {
name = "funcsigs-0.4";
src = pkgs.fetchurl {
url = "mirror://pypi/f/funcsigs/${name}.tar.gz";
sha256 = "d83ce6df0b0ea6618700fe1db353526391a8a3ada1b7aba52fed7a61da772033";
};
buildInputs = with self; [
unittest2
];
meta = with pkgs.stdenv.lib; {
description = "Python function signatures from PEP362 for Python 2.6, 2.7 and 3.2+";
homepage = "https://github.com/aliles/funcsigs";
maintainers = with maintainers; [ garbas ];
license = licenses.asl20;
};
};
apscheduler = buildPythonPackage rec {
name = "APScheduler-3.0.4";
disabled = !isPy27;
src = pkgs.fetchurl {
url = "mirror://pypi/A/APScheduler/${name}.tar.gz";
sha256 = "1ljjhn6cv8b1pccsi3mgc887ypi2vim317r9p0zh0amd0bhkk6wb";
};
buildInputs = with self; [
pytest
sqlalchemy
tornado
twisted
mock
trollius
funcsigs
gevent
];
propagatedBuildInputs = with self; [
six
pytz
tzlocal
futures
];
meta = with pkgs.stdenv.lib; {
description = "A Python library that lets you schedule your Python code to be executed";
homepage = http://pypi.python.org/pypi/APScheduler/;
license = licenses.mit;
};
};
args = buildPythonPackage rec {
name = "args-0.1.0";
src = pkgs.fetchurl {
url = "mirror://pypi/a/args/${name}.tar.gz";
sha256 = "a785b8d837625e9b61c39108532d95b85274acd679693b71ebb5156848fcf814";
};
meta = {
description = "Command Arguments for Humans";
homepage = "https://github.com/kennethreitz/args";
};
};
area53 = buildPythonPackage (rec {
name = "Area53-0.94";
src = pkgs.fetchurl {
url = "mirror://pypi/A/Area53/${name}.tar.gz";
sha256 = "0v9b7f8b6v21y410anx5sr52k2ac8jrzdf19q6m6p0zsdsf9vr42";
};
# error: invalid command 'test'
doCheck = false;
propagatedBuildInputs = with self; [ self.boto ];
});
chai = buildPythonPackage rec {
name = "chai-${version}";
version = "1.1.1";
src = pkgs.fetchurl {
url = "mirror://pypi/c/chai/${name}.tar.gz";
sha256 = "016kf3irrclpkpvcm7q0gmkfibq7jgy30a9v73pp42bq9h9a32bl";
};
meta = {
description = "Mocking, stubbing and spying framework for python";
};
};
arrow = buildPythonPackage rec {
name = "arrow-${version}";
version = "0.7.0";
src = pkgs.fetchurl {
url = "mirror://pypi/a/arrow/${name}.tar.gz";
sha256 = "0yx10dz3hp825fcq9w15zbp26v622npcjscb91da05zig8036lra";
};
checkPhase = ''
nosetests
'';
buildInputs = with self; [ nose chai simplejson ];
propagatedBuildInputs = with self; [ dateutil ];
meta = {
description = "Python library for date manipulation";
license = "apache";
maintainers = with maintainers; [ thoughtpolice ];
};
};
async = buildPythonPackage rec {
name = "async-0.6.1";
disabled = isPy3k;
meta.maintainers = with maintainers; [ mornfall ];
buildInputs = with self; [ pkgs.zlib ];
doCheck = false;
src = pkgs.fetchurl {
url = "mirror://pypi/a/async/${name}.tar.gz";
sha256 = "1lfmjm8apy9qpnpbq8g641fd01qxh9jlya5g2d6z60vf8p04rla1";
};
};
atomiclong = buildPythonPackage rec {
version = "0.1.1";
name = "atomiclong-${version}";
src = pkgs.fetchurl {
url = "mirror://pypi/a/atomiclong/atomiclong-${version}.tar.gz";
sha256 = "1gjbc9lvpkgg8vj7dspif1gz9aq4flkhxia16qj6yvb7rp27h4yb";
};
buildInputs = with self; [ pytest ];
propagatedBuildInputs = with self; [ cffi ];
meta = {
description = "Long data type with atomic operations using CFFI";
homepage = https://github.com/dreid/atomiclong;
license = licenses.mit;
maintainers = with maintainers; [ robbinch ];
};
};
atomicwrites = buildPythonPackage rec {
version = "0.1.9";
name = "atomicwrites-${version}";
src = pkgs.fetchurl {
url = "mirror://pypi/a/atomicwrites/atomicwrites-${version}.tar.gz";
sha256 = "08s05h211r07vs66r4din3swrbzb344vli041fihpg34q3lcxpvw";
};
meta = {
description = "Atomic file writes on POSIX";
homepage = https://pypi.python.org/pypi/atomicwrites/0.1.0;
maintainers = with maintainers; [ matthiasbeyer ];
};
};
argparse = buildPythonPackage (rec {
name = "argparse-1.4.0";
src = pkgs.fetchurl {
url = "mirror://pypi/a/argparse/${name}.tar.gz";
sha256 = "1r6nznp64j68ih1k537wms7h57nvppq0szmwsaf99n71bfjqkc32";
};
checkPhase = ''
export PYTHONPATH=`pwd`/build/lib:$PYTHONPATH
${python.interpreter} test/test_argparse.py
'';
# ordering issues in tests
doCheck = !isPy3k;
meta = {
homepage = http://code.google.com/p/argparse/;
license = licenses.asl20;
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.
'';
};
});
astroid = buildPythonPackage rec {
name = "astroid-1.4.4";
propagatedBuildInputs = with self; [ logilab_common six lazy-object-proxy wrapt ];
src = pkgs.fetchurl {
url = "mirror://pypi/a/astroid/${name}.tar.gz";
sha256 = "7f7e5512efe515098e77cbd3a60e87c8db8954097b0e025d8d6f72f2e8ddc298";
};
checkPhase = ''
${python.interpreter} -m unittest discover
'';
# Tests cannot be found because they're named unittest_...
# instead of test_...
meta = {
description = "A abstract syntax tree for Python with inference support";
homepage = http://bitbucket.org/logilab/astroid;
license = with licenses; [ lgpl2 ];
};
};
attrdict = buildPythonPackage (rec {
name = "attrdict-2.0.0";
src = pkgs.fetchurl {
url = "mirror://pypi/a/attrdict/${name}.tar.gz";
sha256 = "86aeb6d3809e0344409f8148d7cac9eabce5f0b577c160b5e90d10df3f8d2ad3";
};
propagatedBuildInputs = with self; [ coverage nose six ];
meta = {
description = "A dict with attribute-style access";
homepage = https://github.com/bcj/AttrDict;
license = licenses.mit;
};
});
attrs = buildPythonPackage (rec {
pname = "attrs";
version = "16.0.0";
name = "attrs-16.0.0";
src = pkgs.fetchurl {
url = "mirror://pypi/a/attrs/${name}.tar.gz";
sha256 = "1g4asv3hbx5aqz7hjzq3q6ss2cpv1rdv66sp5d21cdyjajj2fs6y";
};
# Mac OS X needs clang for testing
buildInputs = with self; [ pytest hypothesis zope_interface
pympler coverage ]
++ optionals (stdenv.isDarwin) [ pkgs.clang ];
checkPhase = ''
py.test
'';
meta = {
description = "Python attributes without boilerplate";
homepage = https://github.com/hynek/attrs;
license = licenses.mit;
};
});
audioread = buildPythonPackage rec {
name = "audioread-${version}";
version = "2.1.1";
src = pkgs.fetchurl {
url = "mirror://pypi/a/audioread/${name}.tar.gz";
sha256 = "ffb601de7a9e40850d4ec3256a3a6bbe8fa40466dafb5c65f41b08e4bb963f1e";
};
# No tests, need to disable or py3k breaks
doCheck = false;
meta = {
description = "Cross-platform audio decoding";
homepage = "https://github.com/sampsyo/audioread";
license = licenses.mit;
};
};
audiotools = buildPythonPackage rec {
name = "audiotools-${version}";
version = "3.1.1";
src = pkgs.fetchurl {
url = "https://github.com/tuffy/python-audio-tools/archive/v${version}.tar.gz";
sha256 = "0ymlxvqkqhzk4q088qwir3dq0zgwqlrrdfnq7f0iq97g05qshm2c";
};
meta = {
description = "Utilities and Python modules for handling audio";
homepage = "http://audiotools.sourceforge.net/";
license = licenses.gpl2Plus;
};
};
autopep8 = buildPythonPackage (rec {
name = "autopep8-1.0.4";
src = pkgs.fetchurl {
url = "mirror://pypi/a/autopep8/${name}.tar.gz";
sha256 = "17lydqm8y9a5qadp6iifxrb5mb0g9fr1vxn5qy1fjpyhazxaw8n1";
};
propagatedBuildInputs = with self; [ pep8 ];
# One test fails:
# FAIL: test_recursive_should_not_crash_on_unicode_filename (test.test_autopep8.CommandLineTests)
doCheck = false;
meta = {
description = "A tool that automatically formats Python code to conform to the PEP 8 style guide";
homepage = https://pypi.python.org/pypi/autopep8/;
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ bjornfor ];
};
});
av = buildPythonPackage rec {
name = "av-${version}";
version = "0.2.4";
src = pkgs.fetchurl {
url = "mirror://pypi/a/av/${name}.tar.gz";
sha256 = "bdc7e2e213cb9041d9c5c0497e6f8c47e84f89f1f2673a46d891cca0fb0d19a0";
};
buildInputs
= (with self; [ nose pillow numpy ])
++ (with pkgs; [ ffmpeg_2 git libav pkgconfig ]);
# Because of https://github.com/mikeboers/PyAV/issues/152
doCheck = false;
meta = {
description = "Pythonic bindings for FFmpeg/Libav";
homepage = https://github.com/mikeboers/PyAV/;
license = licenses.bsd2;
};
};
avro = buildPythonPackage (rec {
name = "avro-1.7.6";
disabled = isPy3k;
src = pkgs.fetchurl {
url = "mirror://pypi/a/avro/${name}.tar.gz";
sha256 = "edf14143cabb2891f05a73d60a57a9fc5a9ebd305c2188abb3f5db777c707ad5";
};
meta = {
description = "A serialization and RPC framework";
homepage = "https://pypi.python.org/pypi/avro/";
};
});
avro3k = pkgs.lowPrio (buildPythonPackage (rec {
name = "avro3k-1.7.7-SNAPSHOT";
disabled = (!isPy3k);
src = pkgs.fetchurl {
url = "mirror://pypi/a/avro3k/${name}.tar.gz";
sha256 = "15ahl0irwwj558s964abdxg4vp6iwlabri7klsm2am6q5r0ngsky";
};
doCheck = false; # No such file or directory: './run_tests.py
meta = {
description = "A serialization and RPC framework";
homepage = "https://pypi.python.org/pypi/avro3k/";
};
}));
awesome-slugify = buildPythonPackage rec {
name = "awesome-slugify-${version}";
version = "1.6.5";
src = pkgs.fetchurl {
url = "mirror://pypi/a/awesome-slugify/${name}.tar.gz";
sha256 = "0wgxrhr8s5vk2xmcz9s1z1aml4ppawmhkbggl9rp94c747xc7pmv";
};
propagatedBuildInputs = with self; [ unidecode regex ];
meta = with stdenv.lib; {
homepage = https://github.com/dimka665/awesome-slugify;
description = "Python flexible slugify function";
license = licenses.gpl3;
platforms = platforms.all;
maintainers = with maintainers; [ abbradar ];
};
};
awscli = buildPythonPackage rec {
name = "awscli-${version}";
version = "1.10.51";
namePrefix = "";
src = pkgs.fetchurl {
url = "mirror://pypi/a/awscli/${name}.tar.gz";
sha256 = "19n7r6fwnwpi0cyrqh20w80mrcj0b6j3if5p58hi1k3fdp60nscq";
};
# No tests included
doCheck = false;
propagatedBuildInputs = with self; [
botocore
bcdoc
s3transfer
six
colorama_3_3
docutils
rsa
pkgs.groff
pkgs.less
];
postInstall = ''
mkdir -p $out/etc/bash_completion.d
echo "complete -C $out/bin/aws_completer aws" > $out/etc/bash_completion.d/awscli
mkdir -p $out/share/zsh/site-functions
mv $out/bin/aws_zsh_completer.sh $out/share/zsh/site-functions
rm $out/bin/aws.cmd
'';
meta = {
homepage = https://aws.amazon.com/cli/;
description = "Unified tool to manage your AWS services";
license = stdenv.lib.licenses.asl20;
maintainers = with maintainers; [ muflax ];
};
};
aws_shell = buildPythonPackage rec {
name = "aws-shell-${version}";
version = "0.1.1";
src = pkgs.fetchurl {
sha256 = "1pw9lrdjl24n6lrs6lnqpyiyic8bdxgvhyqvb2rx6kkbjrfhhgv5";
url = "mirror://pypi/a/aws-shell/aws-shell-${version}.tar.gz";
};
propagatedBuildInputs = with self; [
configobj prompt_toolkit awscli boto3 pygments sqlite3 mock pytest
pytestcov unittest2 tox
];
#Checks are failing due to missing TTY, which won't exist.
doCheck = false;
preCheck = ''
mkdir -p check-phase
export HOME=$(pwd)/check-phase
'';
disabled = isPy35;
meta = {
homepage = https://github.com/awslabs/aws-shell;
description = "An integrated shell for working with the AWS CLI";
license = licenses.asl20;
maintainers = [ ];
};
};
azure = buildPythonPackage rec {
version = "0.11.0";
name = "azure-${version}";
disabled = pythonOlder "2.7";
src = pkgs.fetchurl {
url = "mirror://pypi/a/azure/${name}.zip";
sha256 = "89c20b2efaaed3c6f56345d55c32a8d4e7d2a16c032d0acb92f8f490c508fe24";
};
propagatedBuildInputs = with self; [ dateutil futures pyopenssl requests2 ];
meta = {
description = "Microsoft Azure SDK for Python";
homepage = "http://azure.microsoft.com/en-us/develop/python/";
license = licenses.asl20;
maintainers = with maintainers; [ olcai ];
};
};
azure-nspkg = buildPythonPackage rec {
version = "1.0.0";
name = "azure-nspkg-${version}";
src = pkgs.fetchurl {
url = mirror://pypi/a/azure-nspkg/azure-nspkg-1.0.0.zip;
sha256 = "1xqvc8by1lbd7j9dxyly03jz3rgbmnsiqnqgydhkf4pa2mn2hgr9";
};
meta = {
description = "Microsoft Azure SDK for Python";
homepage = "http://azure.microsoft.com/en-us/develop/python/";
license = licenses.asl20;
maintainers = with maintainers; [ olcai ];
};
};
azure-common = buildPythonPackage rec {
version = "1.0.0";
name = "azure-common-${version}";
disabled = isPyPy;
src = pkgs.fetchurl {
url = mirror://pypi/a/azure-common/azure-common-1.0.0.zip;
sha256 = "074rwwy8zzs7zw3nww5q2wg5lxgdc4rmypp2gfc9mwsz0gb70491";
};
propagatedBuildInputs = with self; [ azure-nspkg ];
postInstall = ''
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
'';
meta = {
description = "Microsoft Azure SDK for Python";
homepage = "http://azure.microsoft.com/en-us/develop/python/";
license = licenses.asl20;
maintainers = with maintainers; [ olcai ];
};
};
azure-mgmt-common = buildPythonPackage rec {
version = "0.20.0";
name = "azure-mgmt-common-${version}";
src = pkgs.fetchurl {
url = mirror://pypi/a/azure-mgmt-common/azure-mgmt-common-0.20.0.zip;
sha256 = "1rmzpz3733wv31rsnqpdy4bbafvk5dhbqx7q0xf62dlz7p0i4f66";
};
propagatedBuildInputs = with self; [ azure-common azure-mgmt-nspkg requests2 ];
postInstall = ''
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
'';
meta = {
description = "Microsoft Azure SDK for Python";
homepage = "http://azure.microsoft.com/en-us/develop/python/";
license = licenses.asl20;
maintainers = with maintainers; [ olcai ];
};
};
azure-mgmt-compute = buildPythonPackage rec {
version = "0.20.0";
name = "azure-mgmt-compute-${version}";
src = pkgs.fetchurl {
url = mirror://pypi/a/azure-mgmt-compute/azure-mgmt-compute-0.20.0.zip;
sha256 = "12hr5vxdg2sk2fzr608a37f4i8nbchca7dgdmly2w5fc7x88jx2v";
};
postInstall = ''
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
'';
propagatedBuildInputs = with self; [ azure-mgmt-common ];
meta = {
description = "Microsoft Azure SDK for Python";
homepage = "http://azure.microsoft.com/en-us/develop/python/";
license = licenses.asl20;
maintainers = with maintainers; [ olcai ];
};
};
azure-mgmt-network = buildPythonPackage rec {
version = "0.20.1";
name = "azure-mgmt-network-${version}";
src = pkgs.fetchurl {
url = mirror://pypi/a/azure-mgmt-network/azure-mgmt-network-0.20.1.zip;
sha256 = "10vj22h6nxpw0qpvib5x2g6qs5j8z31142icvh4qk8k40fcrs9hx";
};
postInstall = ''
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
'';
propagatedBuildInputs = with self; [ azure-mgmt-common ];
meta = {
description = "Microsoft Azure SDK for Python";
homepage = "http://azure.microsoft.com/en-us/develop/python/";
license = licenses.asl20;
maintainers = with maintainers; [ olcai ];
};
};
azure-mgmt-nspkg = buildPythonPackage rec {
version = "1.0.0";
name = "azure-mgmt-nspkg-${version}";
src = pkgs.fetchurl {
url = mirror://pypi/a/azure-mgmt-nspkg/azure-mgmt-nspkg-1.0.0.zip;
sha256 = "1rq92fj3kvnqkk18596dybw0kvhgscvc6cd8hp1dhy3wrkqnhwmq";
};
propagatedBuildInputs = with self; [ azure-nspkg ];
meta = {
description = "Microsoft Azure SDK for Python";
homepage = "http://azure.microsoft.com/en-us/develop/python/";
license = licenses.asl20;
maintainers = with maintainers; [ olcai ];
};
};
azure-mgmt-resource = buildPythonPackage rec {
version = "0.20.1";
name = "azure-mgmt-resource-${version}";
src = pkgs.fetchurl {
url = mirror://pypi/a/azure-mgmt-resource/azure-mgmt-resource-0.20.1.zip;
sha256 = "0slh9qfm5nfacrdm3lid0sr8kwqzgxvrwf27laf9v38kylkfqvml";
};
postInstall = ''
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
'';
propagatedBuildInputs = with self; [ azure-mgmt-common ];
meta = {
description = "Microsoft Azure SDK for Python";
homepage = "http://azure.microsoft.com/en-us/develop/python/";
license = licenses.asl20;
maintainers = with maintainers; [ olcai ];
};
};
azure-mgmt-storage = buildPythonPackage rec {
version = "0.20.0";
name = "azure-mgmt-storage-${version}";
src = pkgs.fetchurl {
url = mirror://pypi/a/azure-mgmt-storage/azure-mgmt-storage-0.20.0.zip;
sha256 = "16iw7hqhq97vlzfwixarfnirc60l5mz951p57brpcwyylphl3yim";
};
postInstall = ''
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/mgmt/__init__.py
'';
propagatedBuildInputs = with self; [ azure-mgmt-common ];
meta = {
description = "Microsoft Azure SDK for Python";
homepage = "http://azure.microsoft.com/en-us/develop/python/";
license = licenses.asl20;
maintainers = with maintainers; [ olcai ];
};
};
azure-storage = buildPythonPackage rec {
version = "0.20.3";
name = "azure-storage-${version}";
src = pkgs.fetchurl {
url = mirror://pypi/a/azure-storage/azure-storage-0.20.3.zip;
sha256 = "06bmw6k2000kln5jwk5r9bgcalqbyvqirmdh9gq4s6nb4fv3c0jb";
};
propagatedBuildInputs = with self; [ azure-common futures dateutil requests2 ];
postInstall = ''
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
'';
meta = {
description = "Microsoft Azure SDK for Python";
homepage = "http://azure.microsoft.com/en-us/develop/python/";
license = licenses.asl20;
maintainers = with maintainers; [ olcai ];
};
};
azure-servicemanagement-legacy = buildPythonPackage rec {
version = "0.20.1";
name = "azure-servicemanagement-legacy-${version}";
src = pkgs.fetchurl {
url = mirror://pypi/a/azure-servicemanagement-legacy/azure-servicemanagement-legacy-0.20.1.zip;
sha256 = "17dwrp99sx5x9cm4vldkaxhki9gbd6dlafa0lpr2n92xhh2838zs";
};
propagatedBuildInputs = with self; [ azure-common requests2 ];
postInstall = ''
echo "__import__('pkg_resources').declare_namespace(__name__)" >> "$out/lib/${python.libPrefix}"/site-packages/azure/__init__.py
'';
meta = {
description = "Microsoft Azure SDK for Python";
homepage = "http://azure.microsoft.com/en-us/develop/python/";
license = licenses.asl20;
maintainers = with maintainers; [ olcai ];
};
};
backports_abc = buildPythonPackage rec {
name = "backports_abc-${version}";
version = "0.4";
src = pkgs.fetchurl {
url = "mirror://pypi/b/backports_abc/${name}.tar.gz";
sha256 = "8b3e4092ba3d541c7a2f9b7d0d9c0275b21c6a01c53a61c731eba6686939d0a5";
};
checkPhase = ''
${python.interpreter} -m unittest discover
'';
meta = {
homepage = https://github.com/cython/backports_abc;
license = licenses.psfl;
description = "A backport of recent additions to the 'collections.abc' module";
};
};
backports_shutil_get_terminal_size = if !(pythonOlder "3.3") then null else buildPythonPackage rec {
name = "backports.shutil_get_terminal_size-${version}";
version = "1.0.0";
src = pkgs.fetchurl {
url = "mirror://pypi/b/backports.shutil_get_terminal_size/${name}.tar.gz";
sha256 = "713e7a8228ae80341c70586d1cc0a8caa5207346927e23d09dcbcaf18eadec80";
};
meta = {
description = "A backport of the get_terminal_size function from Python 3.3’s shutil.";
homepage = https://github.com/chrippa/backports.shutil_get_terminal_size;
license = with licenses; [ mit ];
};
};
backports_ssl_match_hostname_3_4_0_2 = self.buildPythonPackage rec {
name = "backports.ssl_match_hostname-3.4.0.2";
src = pkgs.fetchurl {
url = "mirror://pypi/b/backports.ssl_match_hostname/backports.ssl_match_hostname-3.4.0.2.tar.gz";
sha256 = "07410e7fb09aab7bdaf5e618de66c3dac84e2e3d628352814dc4c37de321d6ae";
};
meta = {
description = "The Secure Sockets layer is only actually *secure*";
homepage = http://bitbucket.org/brandon/backports.ssl_match_hostname;
};
};
backports_ssl_match_hostname = self.buildPythonPackage rec {
name = "backports.ssl_match_hostname-${version}";
version = "3.5.0.1";
src = pkgs.fetchurl {
url = "mirror://pypi/b/backports.ssl_match_hostname/${name}.tar.gz";
sha256 = "1wndipik52cyqy0677zdgp90i435pmvwd89cz98lm7ri0y3xjajh";
};
meta = {
description = "The Secure Sockets layer is only actually *secure*";
homepage = http://bitbucket.org/brandon/backports.ssl_match_hostname;
};
};
backports_lzma = self.buildPythonPackage rec {
name = "backports.lzma-0.0.3";
disabled = isPy3k;
src = pkgs.fetchurl {
url = "mirror://pypi/b/backports.lzma/${name}.tar.gz";
sha256 = "bac58aec8d39ac3d22250840fb24830d0e4a0ef05ad8f3f09172dc0cc80cdbca";
};
buildInputs = [ pkgs.lzma ];
meta = {
describe = "Backport of Python 3.3's 'lzma' module for XZ/LZMA compressed files";
homepage = https://github.com/peterjc/backports.lzma;
license = licenses.bsd3;
};
};
babelfish = buildPythonPackage rec {
version = "0.5.3";
name = "babelfish-${version}";
disabled = isPy3k;
src = pkgs.fetchurl {
url = "mirror://pypi/b/babelfish/${name}.tar.gz";
sha256 = "0wrw21dyq7v6lbffwvi1ik43d7dhmcv8xvgrrihhiv7ys1rd3gag";
};
meta = {
homepage = http://pypi.python.org/pypi/babelfish;
description = "A module to work with countries and languages";
license = licenses.bsd3;
};
};
basiciw = buildPythonPackage rec {
name = "${pname}-${version}";
version = "0.2.2";
pname = "basiciw";
disabled = isPy26 || isPy27 || isPyPy;
src = pkgs.fetchurl {
url = "mirror://pypi/b/${pname}/${name}.tar.gz";
sha256 = "1ajmflvvlkflrcmqmkrx0zaira84z8kv4ssb2jprfwvjh8vfkysb";
};
buildInputs = [ pkgs.gcc ];
propagatedBuildInputs = [ pkgs.wirelesstools ];
meta = {
description = "Get info about wireless interfaces using libiw";
homepage = http://github.com/enkore/basiciw;
platforms = platforms.linux;
license = licenses.gpl2;
};
};
batinfo = buildPythonPackage rec {
version = "0.3";
name = "batinfo-${version}";
src = pkgs.fetchurl {
url = "mirror://pypi/b/batinfo/${name}.tar.gz";
sha256 = "0gyzkxzvj5l6qrw706bnm3cckqzzzbrjr7jkxc087d7775a73499";
};
# No tests included
doCheck = false;
meta = {
homepage = https://github.com/nicolargo/batinfo;
description = "A simple Python lib to retrieve battery information";
license = licenses.lgpl3;
platforms = platforms.all;
maintainers = with maintainers; [ koral ];
};
};
bcdoc = buildPythonPackage rec {
name = "bcdoc-0.14.0";
src = pkgs.fetchurl {
url = "mirror://pypi/b/bcdoc/${name}.tar.gz";
sha256 = "1s2kdqs1n2mj7wq3w0pq30zs7vxq0l3abik2clqnc4hm2j7crbk8";
};
buildInputs = with self; [ docutils six ];
meta = {
homepage = https://github.com/botocore/bcdoc;
license = licenses.asl20;
description = "ReST document generation tools for botocore";
};
};
beautifulsoup = buildPythonPackage (rec {
name = "beautifulsoup-3.2.1";
disabled = isPy3k;
src = pkgs.fetchurl {
url = "http://www.crummy.com/software/BeautifulSoup/download/3.x/BeautifulSoup-3.2.1.tar.gz";
sha256 = "1nshbcpdn0jpcj51x0spzjp519pkmqz0n0748j7dgpz70zlqbfpm";
};
# error: invalid command 'test'
doCheck = false;
meta = {
homepage = http://www.crummy.com/software/BeautifulSoup/;
license = "bsd";
description = "Undemanding HTML/XML parser";
};
});
beautifulsoup4 = buildPythonPackage (rec {
name = "beautifulsoup4-4.5.1";
src = pkgs.fetchurl {
url = "mirror://pypi/b/beautifulsoup4/${name}.tar.gz";
sha256 = "1qgmhw65ncsgccjhslgkkszif47q6gvxwqv4mim17agxd81p951w";
};
buildInputs = [ self.nose ];
checkPhase = ''
nosetests build/
'';
meta = {
homepage = http://crummy.com/software/BeautifulSoup/bs4/;
description = "HTML and XML parser";
license = licenses.mit;
maintainers = with maintainers; [ domenkozar ];
};
});
# flexget needs beatifulsoup < 4.4 for now
beautifulsoup_4_1_3 = buildPythonPackage (rec {
name = "beautifulsoup4-4.1.3";
src = pkgs.fetchurl {
url = "mirror://pypi/b/beautifulsoup4/${name}.tar.gz";
sha256 = "0cbcml88bkx9gf1wznxa0kqz1wpyakfbyh9gmxw0wljhda1q0zk1";
};
meta = {
homepage = http://crummy.com/software/BeautifulSoup/bs4/;
description = "HTML and XML parser";
license = licenses.mit;
maintainers = with maintainers; [ domenkozar ];
};
disabled = isPy3k;
});
beaker = buildPythonPackage rec {
name = "Beaker-${version}";
version = "1.8.0";
# The pypy release do not contains the tests
src = pkgs.fetchFromGitHub {
owner = "bbangert";
repo = "beaker";
rev = "${version}";
sha256 = "17yfr7a307n8rdl09was4j60xqk2s0hk0hywdkigrpj4qnw0is7g";
};
buildInputs =
[ self.nose
self.mock
self.webtest
];
propagatedBuildInputs = [
self.sqlalchemy
self.pycrypto
] ++ optionals (isPy26 || isPy27) [
self.funcsigs
self.pycryptopp
];
meta = {
description = "A Session and Caching library with WSGI Middleware";
maintainers = with maintainers; [ garbas domenkozar ];
platforms = platforms.all;
};
};
betamax = buildPythonPackage rec {
name = "betamax-0.6.0";
src = pkgs.fetchurl {
url = "mirror://pypi/b/betamax/${name}.tar.gz";
sha256 = "0vw4d53jbbb2kdl7l891h8iyxklqcd6ldvgcyhw9hl40ljdhv1wz";
};
propagatedBuildInputs = [ self.requests2 ];
doCheck = false;
meta = with stdenv.lib; {
homepage = https://betamax.readthedocs.org/en/latest/;
description = "A VCR imitation for requests";
license = licenses.asl20;
maintainers = with maintainers; [ pSub ];
};
};
betamax-matchers = buildPythonPackage rec {
name = "betamax-matchers-${version}";
version = "0.3.0";
src = pkgs.fetchurl {
url = "mirror://pypi/b/betamax-matchers/${name}.tar.gz";
sha256 = "039kvqsdcvvlfxjc3n1x2xvjg6qkqbql0p7rc4z7bnxm9kcm88la";
};
buildInputs = with self; [ betamax requests_toolbelt ];
meta = with stdenv.lib; {
homepage = https://github.com/sigmavirus24/betamax_matchers;
description = "A group of experimental matchers for Betamax";
license = licenses.asl20;
maintainers = with maintainers; [ pSub ];
};
};
binwalk_fun = { visualizationSupport ? false, pyqtgraph ? null }:
assert visualizationSupport -> pyqtgraph != null;
buildPythonPackage rec {
name = "binwalk-${version}";
version = "2.1.1";
src = pkgs.fetchFromGitHub {
owner = "devttys0";
repo = "binwalk";
rev = "291a03595d17f848c73b74cb6ca508da782cd8f7";
sha256 = "0grid93yz6i6jb2zggrqncp5awdf7qi88j5y2k7dq0k9r6b8zydw";
};
propagatedBuildInputs = with stdenv.lib; with pkgs; [ modules.curses zlib xz ncompress gzip bzip2 gnutar p7zip cabextract lzma self.pycrypto ]
++ optional visualizationSupport [ pyqtgraph ];
meta = with stdenv.lib; {
homepage = "http://binwalk.org";
description = "A tool for searching a given binary image for embedded files";
platforms = platforms.all;
maintainers = [ maintainers.koral ];
};
};
binwalk = self.binwalk_fun { };
binwalk-full = self.binwalk_fun { visualizationSupport = true; pyqtgraph = self.pyqtgraph; };
caldavclientlibrary-asynk = buildPythonPackage rec {
version = "asynkdev";
name = "caldavclientlibrary-asynk-${version}";
src = pkgs.fetchgit {
url = "https://github.com/skarra/CalDAVClientLibrary.git";
rev = "06699b08190d50cc2636b921a654d67db0a967d1";
sha256 = "157q32251ac9x3gdshgrjwsy48nq74vrzviswvph56h9wa8ksnnk";
};
disabled = isPy3k;
meta = {
description = "A Python library and tool for CalDAV";
longDescription = ''
CalDAVCLientLibrary is a Python library and tool for CalDAV.
This package is the unofficial CalDAVCLientLibrary Python
library maintained by the author of Asynk and is needed for
that package.
'';
homepage = https://github.com/skarra/CalDAVClientLibrary/tree/asynkdev/;
maintainers = with maintainers; [ pjones ];
};
};
bedup = buildPythonPackage rec {
version = "0.10.1";
name = "bedup-${version}";
src = pkgs.fetchFromGitHub {
owner = "g2p";
repo = "bedup";
rev = "v${version}";
sha256 = "0sp8pmjkxcqq0alianfp41mwq7qj10rk1qy31pjjp9kiph1rn0x6";
};
buildInputs = with self; [ pkgs.btrfs-progs ];
propagatedBuildInputs = with self; [ contextlib2 pyxdg pycparser alembic ]
++ optionals (!isPyPy) [ cffi ];
disabled = pythonOlder "3.3";
meta = {
description = "Deduplication for Btrfs";
longDescription = ''
Deduplication for Btrfs. bedup looks for new and changed files, making sure that multiple
copies of identical files share space on disk. It integrates deeply with btrfs so that scans
are incremental and low-impact.
'';
homepage = https://github.com/g2p/bedup;
license = licenses.gpl2;
platforms = platforms.linux;
maintainers = with maintainers; [ bluescreen303 ];
};
};
buttersink = buildPythonPackage rec {
name = "buttersink-0.6.8";
src = pkgs.fetchurl {
sha256 = "04gc63kfcqkw4qba5rijqk01xiphf04yk7hky9180ii64v2ip0j3";
url = "mirror://pypi/b/buttersink/${name}.tar.gz";
};
meta = {
description = "Synchronise btrfs snapshots";
longDescription = ''
ButterSink is like rsync, but for btrfs subvolumes instead of files,
which makes it much more efficient for things like archiving backup
snapshots. It is built on top of btrfs send and receive capabilities.
Sources and destinations can be local btrfs file systems, remote btrfs
file systems over SSH, or S3 buckets.
'';
homepage = https://github.com/AmesCornish/buttersink/wiki;
license = licenses.gpl3;
platforms = platforms.linux;
maintainers = with maintainers; [ nckx ];
};
propagatedBuildInputs = with self; [ boto crcmod psutil ];
};
cached-property = buildPythonPackage rec {
version = "1.3.0";
name = "cached-property-${version}";
src = pkgs.fetchurl {
url = "mirror://pypi/c/cached-property/${name}.tar.gz";
sha256 = "10dwi3s6f154ag9dvqy5jiwp31fs57lbxjcjgn4cwvi8qyqpi3j5";
};
buildInputs = with self; [ freezegun ];
meta = {
description = "A decorator for caching properties in classes";
homepage = https://github.com/pydanny/cached-property;
license = licenses.bsd3;
platforms = platforms.linux;
maintainers = with maintainers; [ ericsagnes ];
};
};
cgroup-utils = buildPythonPackage rec {
version = "0.6";
name = "cgroup-utils-${version}";
propagatedBuildInputs = with self; [ argparse ];
buildInputs = with self; [ pep8 nose ];
# Pep8 tests fail...
doCheck = false;
src = pkgs.fetchFromGitHub {
owner = "peo3";
repo = "cgroup-utils";
rev = "v${version}";
sha256 = "1ck0aijzrg9xf6hjdxnynkapnyxw0y385jb0q7wyq4jf77ayfszc";
};
meta = {
description = "Utility tools for control groups of Linux";
maintainers = with maintainers; [ layus ];
license = licenses.gpl2;
};
};
channels = buildPythonPackage rec {
name = "channels-${version}";
version = "0.17.2";
src = pkgs.fetchurl {
url = "mirror://pypi/c/channels/${name}.tar.gz";
sha256 = "1a7fzm25sm3qqgxf7j3hml2lkipvf0yapdg4rkk7x3m11zm0xgv9";
};
# Files are missing in the distribution
doCheck = false;
propagatedBuildInputs = with self ; [ asgiref django daphne ];
meta = {
description = "Brings event-driven capabilities to Django with a channel system";
license = licenses.bsd3;
homepage = https://github.com/django/channels;
};
};
circus = buildPythonPackage rec {
name = "circus-0.11.1";
src = pkgs.fetchurl {
url = "mirror://pypi/c/circus/${name}.tar.gz";
sha256 = "3757344aa5073ea29e6e2607b3de8ba1652502c61964316116931884293fe846";
};
doCheck = false; # weird error
propagatedBuildInputs = with self; [ iowait psutil pyzmq tornado mock ];
};
colorlog = buildPythonPackage rec {
name = "colorlog-${version}";
version = "2.6.1";
src = pkgs.fetchurl {
url = "mirror://pypi/c/colorlog/${name}.tar.gz";
sha256 = "0djv6ky1yk28s1l093w8plg19kp88q4nyrm1vfxyq0s9j4pix29l";
};
# No tests included
doCheck = false;
meta = {
description = "Log formatting with colors";
homepage = https://github.com/borntyping/python-colorlog;
license = licenses.free; # BSD-like
};
};
colour = buildPythonPackage rec {
name = "${pname}-${version}";
pname = "colour";
version = "0.1.2";
src = pkgs.fetchurl {
url = "mirror://pypi/c/${pname}/${name}.tar.gz";
sha256 = "0w1j43l76zw10dvs2kk7jz7kqj2ss7gfgfdxyls27pckwin89gxb";
};
buildInputs = with self; [ d2to1 ];
meta = {
description = "Converts and manipulates common color representation (RGB, HSV, web, ...)";
homepage = https://github.com/vaab/colour;
license = licenses.bsd2;
};
};
cornice = buildPythonPackage rec {
name = "cornice-${version}";
version = "1.2.1";
src = pkgs.fetchgit {
url = https://github.com/mozilla-services/cornice.git;
rev = "refs/tags/${version}";
sha256 = "0688vrkl324jmpi8jkjh1s8nsyjinw149g3x8qlis8vz6j6a01wv";
};
propagatedBuildInputs = with self; [ pyramid simplejson ];
doCheck = false; # lazy packager
};
csvkit = buildPythonPackage rec {
name = "csvkit-${version}";
version = "0.9.1";
disabled = isPy3k;
src = pkgs.fetchurl {
url = "mirror://pypi/c/csvkit/${name}.tar.gz";
sha256 = "0fprr4wgp0bq8kl5qims88np11af7ahr5bxkrhfwpdgcgdjbiy4j";
};
propagatedBuildInputs = with self; [ dateutil_2_2 dbf xlrd sqlalchemy openpyxl_2_2_0_b1 ];
meta = {
description = "A library of utilities for working with CSV, the king of tabular file formats";
maintainers = with maintainers; [ vrthra ];
license = licenses.mit;
homepage = "https://github.com/wireservice/csvkit";
};
};
cx_Freeze = buildPythonPackage rec {
name = "cx_freeze-${version}";
version = "4.3.4";
# build failures
disabled = isPyPy || isPy35;
# timestamp need to come after 1980 for zipfiles and nix store is set to epoch
prePatch = ''
substituteInPlace cx_Freeze/freezer.py --replace "os.stat(module.file).st_mtime" "time.time()"
'';
src = pkgs.fetchurl {
url = "mirror://pypi/c/cx_Freeze/cx_Freeze-${version}.tar.gz";
sha256 = "1qhv0gq3ggr06k8cvzphma29zfqdajkx2yfzbw89s4vy23xbpis0";
};
meta = {
description = "A set of scripts and modules for freezing Python scripts into executables";
homepage = "http://cx-freeze.sourceforge.net/";
license = licenses.psfl;
};
};
cvxopt = buildPythonPackage rec {
name = "${pname}-${version}";
pname = "cvxopt";
version = "1.1.7";
disabled = isPyPy;
src = pkgs.fetchurl {
url = "mirror://pypi/c/${pname}/${name}.tar.gz";
sha256 = "f856ea2e9e2947abc1a6557625cc6b0e45228984f397a90c420b2f468dc4cb97";
};
doCheck = false;
buildInputs = with pkgs; [ openblasCompat ];
preConfigure = ''
export CVXOPT_BLAS_LIB_DIR=${pkgs.openblasCompat}/lib
export CVXOPT_BLAS_LIB=openblas
export CVXOPT_LAPACK_LIB=openblas
'';
meta = {
homepage = "http://cvxopt.org/";
description = "Python Software for Convex Optimization";
maintainers = with maintainers; [ edwtjo ];
license = licenses.gpl3Plus;
};
};
cycler = buildPythonPackage rec {
name = "cycler-${version}";
version = "0.10.0";
src = pkgs.fetchurl {
url = "mirror://pypi/C/Cycler/${name}.tar.gz";
sha256 = "cd7b2d1018258d7247a71425e9f26463dfb444d411c39569972f4ce586b0c9d8";
};
buildInputs = with self; [ coverage nose ];
propagatedBuildInputs = with self; [ six ];
checkPhase = ''
${python.interpreter} run_tests.py
'';
# Tests were not included in release.
# https://github.com/matplotlib/cycler/issues/31
doCheck = false;
meta = {
description = "Composable style cycles";
homepage = http://github.com/matplotlib/cycler;
license = licenses.bsd3;
maintainers = with maintainers; [ fridh ];
};
};
datadog = buildPythonPackage rec {
name = "${pname}-${version}";
pname = "datadog";
version = "0.10.0";
src = pkgs.fetchurl {
url = "mirror://pypi/d/${pname}/${name}.tar.gz";
sha256 = "0y2if4jj43n5jis20imragvhhyhr840w4m1g7j7fxh9bn7h273zp";
};
buildInputs = with self; [ pillow tox mock six nose ];
propagatedBuildInputs = with self; [ requests2 decorator simplejson ];
meta = {
description = "The Datadog Python library ";
license = licenses.bsd3;
homepage = https://github.com/DataDog/datadogpy;
};
};
debian = buildPythonPackage rec {
name = "${pname}-${version}";
pname = "python-debian";
version = "0.1.23";
src = pkgs.fetchurl {
url = "mirror://pypi/p/${pname}/${name}.tar.gz";
sha256 = "193faznwnjc3n5991wyzim6h9gyq1zxifmfrnpm3avgkh7ahyynh";
};
propagatedBuildInputs = with self; [ chardet six ];
};
defusedxml = buildPythonPackage rec {
name = "${pname}-${version}";
pname = "defusedxml";
version = "0.4.1";
src = pkgs.fetchurl {
url = "mirror://pypi/d/${pname}/${name}.tar.gz";
sha256 = "0y147zy3jqmk6ly7fbhqmzn1hf41xcb53f2vcc3m8x4ba5d1smfd";
};
};
dosage = buildPythonPackage rec {
name = "${pname}-${version}";
pname = "dosage";
version = "2016.03.17";
PBR_VERSION = version;
src = pkgs.fetchFromGitHub {
owner = "webcomics";
repo = "dosage";
rev = "1af022895e5f86bc43da95754c4c4ed305790f5b";
sha256 = "1bkqhlzigy656pam0znp2ddp1y5sqzyhw3c4fyy58spcafldq4j6";
};
buildInputs = with self; [ pytest ];
propagatedBuildInputs = with self; [ requests2 lxml pbr ];
# prompt_toolkit doesn't work on 3.5 on OSX.
doCheck = !isPy35;
meta = {
description = "A comic strip downloader and archiver";
homepage = http://dosage.rocks/;
};
};
dugong = buildPythonPackage rec {
name = "${pname}-${version}";
pname = "dugong";
version = "3.5";
src = pkgs.fetchurl {
url = "mirror://pypi/d/${pname}/${name}.tar.bz2";
sha256 = "0y0rdxbiwm03zv6vpvapqilrird3h8ijz7xmb0j7ds5j4p6q3g24";
};
disabled = pythonOlder "3.3"; # Library does not support versions older than 3.3
};
iowait = buildPythonPackage rec {
name = "iowait-0.2";
src = pkgs.fetchurl {
url = "mirror://pypi/i/iowait/${name}.tar.gz";
sha256 = "ab1bc2eb84c22ccf61f17a0024f9fb6df781b39f1852764a66a7769d5adfb299";
};
meta = {
description = "Platform-independent module for I/O completion events";
homepage = https://launchpad.net/python-iowait;
};
};
responses = self.buildPythonPackage rec {
name = "responses-0.4.0";
src = pkgs.fetchurl {
url = "mirror://pypi/r/responses/${name}.tar.gz";
sha256 = "0fs7a4cf4f12mjhcjd5vfh0f3ixcy2nawzxpgsfr3ahf0rg7ppx5";
};
propagatedBuildInputs = with self; [ cookies mock requests2 six ];
doCheck = false;
};
rarfile = self.buildPythonPackage rec {
name = "rarfile-2.6";
src = pkgs.fetchurl {
url = "mirror://pypi/r/rarfile/rarfile-2.6.tar.gz";
sha256 = "326700c5450cfb367f612e918866ea27551bac02f4656f340003c88873fa1a56";
};
meta = {
description = "rarfile - RAR archive reader for Python";
homepage = https://github.com/markokr/rarfile;
};
};
proboscis = buildPythonPackage rec {
name = "proboscis-1.2.6.0";
src = pkgs.fetchurl {
url = "mirror://pypi/p/proboscis/proboscis-1.2.6.0.tar.gz";
sha256 = "b822b243a7c82030fce0de97bdc432345941306d2c24ef227ca561dd019cd238";
};
propagatedBuildInputs = with self; [ nose ];
doCheck = false;
meta = {
description = "A Python test framework that extends Python's built-in unittest module and Nose with features from TestNG";
homepage = https://github.com/rackspace/python-proboscis;
license = licenses.asl20;
};
};
pyechonest = self.buildPythonPackage rec {
name = "pyechonest-8.0.2";
src = pkgs.fetchurl {
url = "mirror://pypi/p/pyechonest/pyechonest-8.0.2.tar.gz";
sha256 = "496265f4b7d33483ec153b9e1b8333fe959b115f7e781510089c8313b7d86560";
};
meta = {
description = "Tap into The Echo Nest's Musical Brain for the best music search, information, recommendations and remix tools on the web";
homepage = https://github.com/echonest/pyechonest;
};
};
billiard = buildPythonPackage rec {
name = "billiard-${version}";
version = "3.3.0.23";
disabled = isPyPy;
src = pkgs.fetchurl {
url = "mirror://pypi/b/billiard/${name}.tar.gz";
sha256 = "02wxsc6bhqvzh8j6w758kvgqbnj14l796mvmrcms8fgfamd2lak9";
};
buildInputs = with self; [ nose unittest2 mock ];
meta = {
homepage = https://github.com/celery/billiard;
description = "Python multiprocessing fork with improvements and bugfixes";
license = licenses.bsd3;
};
};
binaryornot = buildPythonPackage rec {
name = "binaryornot-${version}";
version = "0.4.0";
src = pkgs.fetchurl {
url ="mirror://pypi/b/binaryornot/${name}.tar.gz";
sha256 = "1j4f51dxic39mdwf6alj7gd769wy6mhk916v031wjali51xkh3xb";
};
buildInputs = with self; [ hypothesis sqlite3 ];
propagatedBuildInputs = with self; [ chardet ];
meta = {
homepage = https://github.com/audreyr/binaryornot;
description = "Ultra-lightweight pure Python package to check if a file is binary or text";
license = licenses.bsd3;
};
};
bitbucket_api = buildPythonPackage rec {
name = "bitbucket-api-0.4.4";
src = pkgs.fetchurl {
url = "mirror://pypi/b/bitbucket-api/${name}.tar.gz";
sha256 = "e890bc3893d59a6f203c1eb2bae60e78ac4d3869da7ea4fb104dca588aea85b2";
};
propagatedBuildInputs = with self; [ requests_oauth2 nose sh ];
doCheck = false;
meta = {
homepage = https://github.com/Sheeprider/BitBucket-api;
description = "Python library to interact with BitBucket REST API";
license = licenses.mit;
};
};
bitbucket-cli = buildPythonPackage rec {
name = "bitbucket-cli-0.4.1";
src = pkgs.fetchurl {
url = "mirror://pypi/b/bitbucket-cli/${name}.tar.gz";
sha256 = "d8909627ae7a46519379c6343698d49f9ffd5de839ff44796974828d843a9419";
};
pythonPath = [ self.requests ];
meta = {
description = "Bitbucket command line interface";
homepage = "https://bitbucket.org/zhemao/bitbucket-cli";
maintainers = with maintainers; [ refnil ];
};
};
bitstring = buildPythonPackage rec {
name = "bitstring-3.1.2";
src = pkgs.fetchurl {
url = "https://python-bitstring.googlecode.com/files/${name}.zip";
sha256 = "1i1p3rkj4ad108f23xyib34r4rcy571gy65paml6fk77knh0k66p";
};
# error: invalid command 'test'
doCheck = false;
meta = {
description = "Module for binary data manipulation";
homepage = https://code.google.com/p/python-bitstring/;
license = licenses.mit;
platforms = platforms.linux;
maintainers = with maintainers; [ bjornfor ];
};
};
blaze = buildPythonPackage rec {
name = "blaze-${version}";
version = "0.10.1";
src = pkgs.fetchurl {
url = "mirror://pypi/b/blaze/${name}.tar.gz";
sha256 = "16m1nzs5gzwa62pwybjsxgbdpd9jy10rhs3c3niacyf6aa6hr9jh";
};
buildInputs = with self; [ pytest ];
propagatedBuildInputs = with self; [
contextlib2
cytoolz
dask
datashape
flask
flask-cors
h5py
multipledispatch
numba
numpy
odo
pandas
psutil
pymongo
pyyaml
requests2
sqlalchemy
tables
toolz
];
# Failing test
# ERROR collecting blaze/tests/test_interactive.py
# E networkx.exception.NetworkXNoPath: node <class 'list'> not
# reachable from <class 'dask.array.core.Array'>
doCheck = false;
checkPhase = ''
py.test blaze/tests
'';
meta = {
homepage = https://github.com/ContinuumIO/blaze;
description = "Allows Python users a familiar interface to query data living in other data storage systems";
license = licenses.bsdOriginal;
maintainers = with maintainers; [ fridh ];
};
};
bleach = buildPythonPackage rec {
version = "v1.4.3";
name = "bleach-${version}";
src = pkgs.fetchurl {
url = "http://github.com/jsocol/bleach/archive/${version}.tar.gz";
sha256 = "0mk8780ilip0m890rapbckngw8k42gca3551kri297pyylr06l5m";
};
buildInputs = with self; [ nose ];
propagatedBuildInputs = with self; [ six html5lib ];
meta = {
description = "An easy, HTML5, whitelisting HTML sanitizer";
longDescription = ''
Bleach is an HTML sanitizing library that escapes or strips markup and
attributes based on a white list. Bleach can also linkify text safely,
applying filters that Django's urlize filter cannot, and optionally
setting rel attributes, even on links already in the text.
Bleach is intended for sanitizing text from untrusted sources. If you
find yourself jumping through hoops to allow your site administrators
to do lots of things, you're probably outside the use cases. Either
trust those users, or don't.
'';
homepage = https://github.com/jsocol/bleach;
downloadPage = https://github.com/jsocol/bleach/releases;
license = licenses.asl20;
maintainers = with maintainers; [ prikhi ];
platforms = platforms.linux;
};
};
blinker = buildPythonPackage rec {
name = "blinker-${version}";
version = "1.3";
src = pkgs.fetchurl {
url = "mirror://pypi/b/blinker/${name}.tar.gz";
sha256 = "6811010809262261e41ab7b92f3f6d23f35cf816fbec2bc05077992eebec6e2f";
};
meta = {
homepage = http://pythonhosted.org/blinker/;
description = "Fast, simple object-to-object and broadcast signaling";
license = licenses.mit;
maintainers = with maintainers; [ garbas ];
};
};
blockdiag = buildPythonPackage rec {
name = "blockdiag";
version = "1.5.3";
src = pkgs.fetchurl {
url = "https://bitbucket.org/blockdiag/blockdiag/get/${version}.tar.bz2";
sha256 = "0r0qbmv0ijnqidsgm2rqs162y9aixmnkmzgnzgk52hiy7ydm4k8f";
};
buildInputs = with self; [ pep8 nose unittest2 docutils ];
propagatedBuildInputs = with self; [ pillow webcolors funcparserlib ];
# One test fails:
# ...
# FAIL: test_auto_font_detection (blockdiag.tests.test_boot_params.TestBootParams)
doCheck = false;
meta = {
description = "Generate block-diagram image from spec-text file (similar to Graphviz)";
homepage = http://blockdiag.com/;
license = licenses.asl20;
platforms = platforms.linux;
maintainers = with maintainers; [ bjornfor ];
};
};
bpython = buildPythonPackage rec {
name = "bpython-0.12";
src = pkgs.fetchurl {
url = "http://www.bpython-interpreter.org/releases/bpython-0.12.tar.gz";
sha256 = "1ilf58qq7sazmcgg4f1wswbhcn2gb8qbbrpgm6gf0j2lbm60gabl";
};
propagatedBuildInputs = with self; [ modules.curses pygments ];
doCheck = false;
meta = {
description = "UNKNOWN";
homepage = "UNKNOWN";
maintainers = with maintainers; [ domenkozar ];
};
};
bsddb3 = buildPythonPackage rec {
name = "bsddb3-${version}";
version = "6.1.1";
src = pkgs.fetchurl {
url = "mirror://pypi/b/bsddb3/${name}.tar.gz";
sha256 = "6f21b0252125c07798d784c164ef135ad153d226c01b290258ee1c5b9e7c4dd3";
};
buildInputs = [ pkgs.db ];
# Judging from SyntaxError in test
disabled = isPy3k;
# Path to database need to be set.
# Somehow the setup.py flag is not propagated.
#setupPyBuildFlags = [ "--berkeley-db=${pkgs.db}" ];
# We can also use a variable
preConfigure = ''
export BERKELEYDB_DIR=${pkgs.db};
'';
meta = {
description = "Python bindings for Oracle Berkeley DB";
homepage = http://www.jcea.es/programacion/pybsddb.htm;
license = with licenses; [ agpl3 ]; # License changed from bsd3 to agpl3 since 6.x
};
};
bokeh = buildPythonPackage rec {
name = "bokeh-${version}";
version = "0.12.1";
src = pkgs.fetchurl {
url = "mirror://pypi/b/bokeh/${name}.tar.gz";
sha256 = "06d3ed14308f550376d5b0c7e9f2bacb3ff5bbcceefd7f6369d070de71dfa563";
};
disabled = isPyPy;
# Some test that uses tornado fails
doCheck = false;
buildInputs = with self; [ mock pytest ];
propagatedBuildInputs = with self; [
flask
jinja2
markupsafe
werkzeug
itsdangerous
dateutil
futures
requests2
six
pygments
pystache
markdown
pyyaml
pyzmq
tornado
colorama
]
++ optionals ( isPy26 ) [ argparse ]
++ optionals ( !isPy3k && !isPyPy ) [ websocket_client ]
++ optionals ( !isPyPy ) [ numpy pandas greenlet ];
checkPhase = ''
${python.interpreter} -m unittest discover -s bokeh/tests
'';
meta = {
description = "Statistical and novel interactive HTML plots for Python";
homepage = "http://github.com/bokeh/bokeh";
license = licenses.bsd3;
};
};
boto = buildPythonPackage rec {
name = "boto-${version}";
version = "2.41.0";
src = pkgs.fetchurl {
url = "https://github.com/boto/boto/archive/${version}.tar.gz";
sha256 = "1n33bfbkpijyy6awjq7a8lrw4hw2lmwv5l7j0am6d34gpa8my75l";
};
checkPhase = ''
${python.interpreter} tests/test.py default
'';
buildInputs = [ self.nose self.mock ];
propagatedBuildInputs = [ self.requests2 self.httpretty ];
meta = {
homepage = https://github.com/boto/boto;
license = "bsd";
description = "Python interface to Amazon Web Services";
longDescription = ''
The boto module is an integrated interface to current and
future infrastructural services offered by Amazon Web
Services. This includes S3, SQS, EC2, among others.
'';
};
};
boto3 = buildPythonPackage rec {
name = "boto3-${version}";
version = "1.3.1";
src = pkgs.fetchFromGitHub {
owner = "boto";
repo = "boto3";
rev = version;
sha256 = "1rbwcslk9dgayrg3vy3m0bqj767hdy1aphy5wjgz925bsydgxdg6";
};
propagatedBuildInputs = [ self.botocore self.jmespath ] ++
(if isPy3k then [] else [self.futures]);
buildInputs = [ self.docutils self.nose self.mock ];
checkPhase = ''
runHook preCheck
# This method is not in mock. It might have appeared in some versions.
sed -i 's/action.assert_called_once()/self.assertEqual(action.call_count, 1)/' \
tests/unit/resources/test_factory.py
nosetests -d tests/unit --verbose
runHook postCheck
'';
meta = {
homepage = https://github.com/boto3/boto;
license = stdenv.lib.licenses.asl20;
description = "AWS SDK for Python";
longDescription = ''
Boto3 is the Amazon Web Services (AWS) Software Development Kit (SDK) for
Python, which allows Python developers to write software that makes use of
services like Amazon S3 and Amazon EC2.
'';
};
};
botocore = buildPythonPackage rec {
version = "1.4.41"; # This version is required by awscli
name = "botocore-${version}";
src = pkgs.fetchurl {
url = "mirror://pypi/b/botocore/${name}.tar.gz";
sha256 = "0c3abr2rxiilqklika8x360pr0mgx7hlhbhj8w72izs2r6ww4dys";
};
propagatedBuildInputs =
[ self.dateutil
self.requests2
self.jmespath
];
buildInputs = with self; [ docutils mock nose ];
checkPhase = ''
nosetests -v
'';
# Network access
doCheck = false;
meta = {
homepage = https://github.com/boto/botocore;
license = "bsd";
description = "A low-level interface to a growing number of Amazon Web Services";
};
};
bottle = buildPythonPackage rec {
version = "0.12.9";
name = "bottle-${version}";
src = pkgs.fetchurl {
url = "mirror://pypi/b/bottle/${name}.tar.gz";
sha256 = "0l80a1qkg7zbi8s077brfgm5w4ypwxgq9rvsvw16snc5jfsj82py";
};
propagatedBuildInputs = with self; [ setuptools ];
meta = {
homepage = http://bottlepy.org;
description = "A fast and simple micro-framework for small web-applications";
license = licenses.mit;
platforms = platforms.all;
maintainers = with maintainers; [ koral ];
};
};
box2d = buildPythonPackage rec {
name = "box2d-${version}";
version = "2.3b0";
disabled = (!isPy27);
src = pkgs.fetchurl {
url = "mirror://pypi/B/Box2D/Box2D-2.3b0.zip";
sha256 = "4519842c650b0153550eb0c9864da46b5a4ec8555c68b70f5cd2952a21c788b0";
};
patches = [ ../development/python-modules/box2d/disable-test.patch ];
propagatedBuildInputs = [ pkgs.swig2 pkgs.box2d ];
meta = {
homepage = https://code.google.com/p/pybox2d/;
description = ''
A 2D game physics library for Python under
the very liberal zlib license
'';
license = licenses.zlib;
platforms = platforms.all;
maintainers = with maintainers</