From ee4ebdf86a32d4ce41fe7e15822fd4874833f502 Mon Sep 17 00:00:00 2001 From: Sergey Trofimov Date: Mon, 5 May 2025 09:01:04 +0200 Subject: [PATCH] gnu: Add beanquery. * gnu/packages/finance.scm (beanquery): New variable. Change-Id: Ic733750b5b71740992a145b1ee05fa67dbe1f837 Reviwed-by: Ian Eure Signed-off-by: Sharlatan Hellseher --- gnu/packages/finance.scm | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 055431043b..601676d8ae 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -2094,6 +2094,35 @@ define financial transaction records in a text file, read them in memory, generate a variety of reports from them, and provides a web interface.") (license license:gpl2))) +(define-public beanquery + (package + (name "beanquery") + (version "0.2.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "beanquery" version)) + (sha256 + (base32 "0b6dhj9lcf3b347rsjb0k25qgsmqf9jnd0yizv3kad00745bawid")) + (modules '((guix build utils))) + (snippet #~(substitute* "pyproject.toml" + (("tatsu-lts") + "tatsu"))))) + (build-system pyproject-build-system) + (propagated-inputs + (list beancount-3 + python-click + python-dateutil + python-tatsu)) + (native-inputs (list python-setuptools python-wheel python-pytest)) + (home-page "https://github.com/beancount/beanquery") + (synopsis "Interactive interpreter for the Beancount Query Language") + (description "A specialized SQL-like query client for Beancount ledger +files. It can run interactively or in batch mode. By providing a specialized +query engine that takes advantage of the structure of double-entry transactions, +it can easily generate custom reports specific to accounting purposes.") + (license license:gpl2))) + (define-public fava (package (name "fava")