1{ lib, buildPythonPackage, fetchPypi, isPy3k
2, setuptools-scm
3, beancount
4, pytest, sh
5}:
6
7buildPythonPackage rec {
8 version = "1.0.1";
9 pname = "beancount_docverif";
10
11 disabled = !isPy3k;
12
13 src = fetchPypi {
14 inherit pname version;
15 hash = "sha256-CFBv1FZP5JO+1MPnD86ttrO42zZlvE157zqig7s4HOg=";
16 };
17
18 nativeBuildInputs = [
19 setuptools-scm
20 ];
21
22 propagatedBuildInputs = [
23 beancount
24 ];
25
26 nativeCheckInputs = [
27 pytest
28 sh
29 ];
30
31 checkPhase = ''
32 pytest
33 '';
34
35 meta = with lib; {
36 homepage = "https://github.com/siriobalmelli/beancount_docverif";
37 description = "Document verification plugin for Beancount";
38 longDescription = ''
39 Docverif is the "Document Verification" plugin for beancount, fulfilling the following functions:
40
41 - Require that every transaction touching an account have an accompanying document on disk.
42 - Explicitly declare the name of a document accompanying a transaction.
43 - Explicitly declare that a transaction is expected not to have an accompanying document.
44 - Look for an "implicit" PDF document matching transaction data.
45 - Associate (and require) a document with any type of entry, including open entries themselves.
46 - Guarantee integrity: verify that every document declared does in fact exist on disk.
47 '';
48 license = licenses.mit;
49 maintainers = with maintainers; [ siriobalmelli ];
50 };
51}