You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
nixpkgs/pkgs/top-level/python-packages.nix

29332 lines
829 KiB

{ 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 { };
buildPythonPackage = makeOverridable (callPackage ../development/python-modules/generic {
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 buildPythonPackage buildPythonApplication;
# helpers
wrapPython = pkgs.makeSetupHook
{ deps = pkgs.makeWrapper;
substitutions.libPrefix = python.libPrefix;
substitutions.executable = python.interpreter;
substitutions.magicalSedExpression = let
# Looks weird? Of course, it's between single quoted shell strings.
# NOTE: Order DOES matter here, so single character quotes need to be
# at the last position.
quoteVariants = [ "'\"'''\"'" "\"\"\"" "\"" "'\"'\"'" ]; # hey Vim: ''
mkStringSkipper = labelNum: quote: let
label = "q${toString labelNum}";
isSingle = elem quote [ "\"" "'\"'\"'" ];
endQuote = if isSingle then "[^\\\\]${quote}" else quote;
in ''
/^ *[a-z]?${quote}/ {
/${quote}${quote}|${quote}.*${endQuote}/{n;br}
:${label}; n; /^${quote}/{n;br}; /${endQuote}/{n;br}; b${label}
}
'';
in ''
1 {
/^#!/!b; :r
/\\$/{N;br}
/__future__|^ *(#.*)?$/{n;br}
${concatImapStrings mkStringSkipper quoteVariants}
/^ *[^# ]/i import sys; sys.argv[0] = '"'$(basename "$f")'"'
}
'';
}
../development/python-modules/generic/wrap.sh;
# 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 = 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;
};
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 { };
pygobject = 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.gnome.libglade;
};
pyqt4 = callPackage ../development/python-modules/pyqt/4.x.nix {
pythonDBus = self.dbus;
pythonPackages = self;
};
pyqt5 = pkgs.qt55.callPackage ../development/python-modules/pyqt/5.x.nix {
sip = self.sip_4_16;
pythonDBus = self.dbus;
python = self.python;
};
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 { };
sip_4_16 = callPackage ../development/python-modules/sip/4.16.nix { };
tables = callPackage ../development/python-modules/tables {
hdf5 = pkgs.hdf5.override { zlib = pkgs.zlib; };
};
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;
};
};
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 ];
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 ];
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 = ''