1{
2 lib,
3 buildPythonPackage,
4 fetchPypi,
5 isPy3k,
6 beautifulsoup4,
7 bottle,
8 chardet,
9 python-dateutil,
10 google-api-python-client,
11 google-auth-oauthlib,
12 lxml,
13 oauth2client,
14 ply,
15 pytest,
16 python-magic,
17 requests,
18}:
19
20buildPythonPackage rec {
21 version = "2.3.6";
22 format = "setuptools";
23 pname = "beancount";
24
25 disabled = !isPy3k;
26
27 src = fetchPypi {
28 inherit pname version;
29 hash = "sha256-gB+Tvta1fS4iQ2aIxInVob8fduIQ887RhoB1fmDTR1o=";
30 };
31
32 # Tests require files not included in the PyPI archive.
33 doCheck = false;
34
35 propagatedBuildInputs = [
36 beautifulsoup4
37 bottle
38 chardet
39 python-dateutil
40 google-api-python-client
41 google-auth-oauthlib
42 lxml
43 oauth2client
44 ply
45 python-magic
46 requests
47 # pytest really is a runtime dependency
48 # https://github.com/beancount/beancount/blob/v2/setup.py#L81-L82
49 pytest
50 ];
51
52 meta = with lib; {
53 homepage = "https://github.com/beancount/beancount";
54 description = "Double-entry bookkeeping computer language";
55 longDescription = ''
56 A double-entry bookkeeping computer language that lets you define
57 financial transaction records in a text file, read them in memory,
58 generate a variety of reports from them, and provides a web interface.
59 '';
60 license = licenses.gpl2Only;
61 maintainers = with maintainers; [ sharzy polarmutex ];
62 };
63}