nixpkgs/pkgs/development/python-modules/weboob/default.nix

52 lines
1.3 KiB
Nix
Raw Normal View History

{ buildPythonPackage, fetchPypi, stdenv
2017-09-02 18:00:14 +00:00
, nose, pillow, prettytable, pyyaml, dateutil, gdata
, requests, mechanize, feedparser, lxml, gnupg, pyqt5
, libyaml, simplejson, cssselect, pdfminer
2017-09-02 18:00:14 +00:00
, termcolor, google_api_python_client, html2text
, unidecode
}:
buildPythonPackage rec {
2017-09-02 18:00:14 +00:00
pname = "weboob";
version = "1.5";
2017-09-02 18:00:14 +00:00
src = fetchPypi {
inherit pname version;
sha256 = "1c9z9gid1mbm1cakb2wj6jjkbrmji8y8ac46iqpih9x1h498bhbs";
2017-09-02 18:00:14 +00:00
};
postPatch = ''
# Disable doctests that require networking:
sed -i -n -e '/^ *def \+pagination *(.*: *$/ {
p; n; p; /"""\|'\'\'\'''/!b
:loop
n; /^ *\(>>>\|\.\.\.\)/ { h; bloop }
x; /^ *\(>>>\|\.\.\.\)/bloop; x
p; /"""\|'\'\'\'''/b
bloop
}; p' weboob/browser/browsers.py weboob/browser/pages.py
'';
2017-09-02 18:00:14 +00:00
setupPyBuildFlags = ["--qt" "--xdg"];
checkInputs = [ nose ];
nativeBuildInputs = [ pyqt5 ];
2017-09-02 18:00:14 +00:00
propagatedBuildInputs = [ pillow prettytable pyyaml dateutil
gdata requests mechanize feedparser lxml gnupg pyqt5 libyaml
simplejson cssselect pdfminer termcolor
google_api_python_client html2text unidecode ];
2017-09-02 18:00:14 +00:00
checkPhase = ''
nosetests
'';
meta = {
homepage = http://weboob.org;
description = "Collection of applications and APIs to interact with websites without requiring the user to open a browser";
license = stdenv.lib.licenses.agpl3;
};
}