{ lib, buildPythonPackage, fetchFromGitHub, xdg_utils , requests, filetype, pyparsing, configparser, arxiv2bib , pyyaml, chardet, beautifulsoup4, colorama, bibtexparser , pylibgen, click, python-slugify, habanero, isbnlib , prompt_toolkit, pygments, stevedore, tqdm, lxml , python-doi, isPy3k #, optional, dependencies , whoosh, pytest , stdenv }: buildPythonPackage rec { pname = "papis"; version = "0.9"; # Missing tests on Pypi src = fetchFromGitHub { owner = "papis"; repo = pname; rev = "v${version}"; sha256 = "kzA8nlglbjHDPEB7HRAY2dza1Umn/OYUu+ydbA1OJ5Y="; }; propagatedBuildInputs = [ requests filetype pyparsing configparser arxiv2bib pyyaml chardet beautifulsoup4 colorama bibtexparser pylibgen click python-slugify habanero isbnlib prompt_toolkit pygments stevedore tqdm lxml python-doi # optional dependencies whoosh ]; disabled = !isPy3k; doCheck = !stdenv.isDarwin; checkInputs = ([ pytest ]) ++ [ xdg_utils ]; # most of the downloader tests and 4 other tests require a network connection # test_export_yaml and test_citations check for the exact output produced by pyyaml 3.x and # fail with 5.x checkPhase = '' HOME=$(mktemp -d) pytest papis tests --ignore tests/downloaders \ -k "not test_get_data and not test_doi_to_data and not test_general and not get_document_url \ and not test_validate_arxivid and not test_downloader_getter" ''; meta = { description = "Powerful command-line document and bibliography manager"; homepage = https://papis.readthedocs.io/en/latest/; license = lib.licenses.gpl3; maintainers = with lib.maintainers; [ nico202 teto ]; }; }