guix_mirror_bot pushed a commit to branch master
in repository guix.
commit ee4ebdf86a32d4ce41fe7e15822fd4874833f502
Author: Sergey Trofimov <[email protected]>
AuthorDate: Mon May 5 09:01:04 2025 +0200
gnu: Add beanquery.
* gnu/packages/finance.scm (beanquery): New variable.
Change-Id: Ic733750b5b71740992a145b1ee05fa67dbe1f837
Reviwed-by: Ian Eure <[email protected]>
Signed-off-by: Sharlatan Hellseher <[email protected]>
---
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")