diff --git a/pkgs/development/python-modules/backports_csv/default.nix b/pkgs/development/python-modules/backports_csv/default.nix new file mode 100644 index 000000000000..5f2e90e50b8d --- /dev/null +++ b/pkgs/development/python-modules/backports_csv/default.nix @@ -0,0 +1,21 @@ +{ stdenv, buildPythonPackage, fetchPypi, future }: + +buildPythonPackage rec { + + pname = "backports.csv"; + version = "1.0.5"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "1imzbrradkfn8s2m1qcimyn74dn1mz2p3j381jljn166rf2i6hlc"; + }; + + propogatedBuildInputs = [ future ]; + + meta = with stdenv.lib; { + description = "Backport of Python 3 csv module"; + homepage = https://github.com/ryanhiebert; + license = licenses.psfl; + }; +} diff --git a/pkgs/development/python-modules/internetarchive/default.nix b/pkgs/development/python-modules/internetarchive/default.nix new file mode 100644 index 000000000000..ff077bd1b01e --- /dev/null +++ b/pkgs/development/python-modules/internetarchive/default.nix @@ -0,0 +1,48 @@ +{ stdenv, buildPythonPackage, fetchFromGitHub, pytest, six, clint, pyyaml, docopt +, requests, jsonpatch, args, schema, responses, backports_csv }: + +buildPythonPackage rec { + + pname = "internetarchive"; + version = "1.7.2"; + name = "${pname}-${version}"; + + # Can't use pypi, data files for tests missing + src = fetchFromGitHub { + owner = "jjjake"; + repo = "internetarchive"; + rev = "v${version}"; + sha256 = "1cijagy22qi8ydrvizqmi1whnc3qr94yk0910lwgpxjywcygggir"; + }; + # It is hardcoded to specific versions, I don't know why. + preConfigure = '' + sed "s/schema>=.*/schema>=0.4.0',/" -i setup.py + sed "/backports.csv/d" -i setup.py + ''; + + #phases = [ "unpackPhase" "configurePhase" "installPhase" "fixupPhase" "installCheckPhase" ]; + buildInputs = [ pytest responses ]; + propagatedBuildInputs = [ + six + clint + pyyaml + docopt + requests + jsonpatch + args + schema + backports_csv + ]; + + # Tests disabled because ia binary doesn't exist when tests run + doCheck = false; + + checkPhase = "pytest tests"; + + + meta = with stdenv.lib; { + description = "A python wrapper for the various Internet Archive APIs"; + homepage = https://github.com/jjjake/internetarchive; + license = licenses.agpl3; + }; +} diff --git a/pkgs/development/python-modules/schema/default.nix b/pkgs/development/python-modules/schema/default.nix new file mode 100644 index 000000000000..2c57ce295825 --- /dev/null +++ b/pkgs/development/python-modules/schema/default.nix @@ -0,0 +1,21 @@ +{ stdenv, buildPythonPackage, fetchPypi, pytest }: + +buildPythonPackage rec { + + pname = "schema"; + version = "0.6.6"; + name = "${pname}-${version}"; + + src = fetchPypi { + inherit pname version; + sha256 = "1lw28j9w9vxyigg7vkfkvi6ic9lgjkdnfvnxdr7pklslqvzmk2vm"; + }; + + checkInputs = [ pytest ]; + + meta = with stdenv.lib; { + description = "Library for validating Python data structures"; + homepage = https://github.com/keleshev/schema; + license = licenses.mit; + }; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index de2b6e4bc730..c303306f67bd 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -133,6 +133,8 @@ in { # packages defined elsewhere + backports_csv = callPackage ../development/python-modules/backports_csv {}; + bap = callPackage ../development/python-modules/bap { bap = pkgs.ocamlPackages_4_02.bap; }; @@ -6378,27 +6380,7 @@ in { }; }; - internetarchive = let ver = "0.8.3"; in buildPythonPackage rec { - name = "internetarchive-${ver}"; - - src = pkgs.fetchurl { - url = "https://github.com/jjjake/internetarchive/archive/v${ver}.tar.gz"; - sha256 = "0j3l13zvbx50j66l6pnf8y8y8m6gk1sc3yssvfd2scvmv4gnmm8n"; - }; - - # It is hardcoded to specific versions, I don't know why. - preConfigure = '' - sed 's/==/>=/' -i setup.py - ''; - - buildInputs = with self; [ pytest ]; - propagatedBuildInputs = with self; [ six clint pyyaml docopt requests jsonpatch args ]; - - meta = with stdenv.lib; { - description = "A python wrapper for the various Internet Archive APIs"; - homepage = "https://github.com/jjjake/internetarchive"; - }; - }; + internetarchive = callPackage ../development/python-modules/internetarchive {}; jsbeautifier = callPackage ../development/python-modules/jsbeautifier {}; @@ -8005,6 +7987,8 @@ in { }; }; + schema = callPackage ../development/python-modules/schema {}; + svg-path = buildPythonPackage rec { name = "svg.path-${version}"; version = "2.0b1";