Subject: [PATCH v2 05/10] gnu: Add python-cart.

From: [email-masked]
Date: Fri, 27 Sep 2024 20:34:58 +0200

From: Sören Tempel <[email-masked]>

* gnu/packages/python-xyz.scm (python-cart): New variable.
---
 gnu/packages/python-xyz.scm | 30 ++++++++++++++++++++++++++++++
 1 file changed, 30 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 3cf0701e06..545ef0659f 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -34055,6 +34055,36 @@ (define-public python-opcodes
 and BMI2).")
       (license license:bsd-2))))
 
+(define-public python-cart
+  (package
+    (name "python-cart")
+    (version "1.2.2")
+    (source
+     (origin
+       ;; No source releases available on pypi, hence fetching from GitHub.
+       (method git-fetch)
+       (uri (git-reference
+             (url "https://github.com/CybercentreCanada/cart")
+             (commit (string-append "v" version))))
+       (file-name (git-file-name name version))
+       (sha256
+        (base32 "1zycv620iljrsval5rai1wsn0hr25ddx9xhjsyy6xxrgprfxvlfi"))))
+    (build-system pyproject-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (replace 'check
+                    (lambda* (#:key tests? #:allow-other-keys)
+                      (when tests?
+                        (invoke "python" "-m" "unittest" "discover")))))))
+    (propagated-inputs (list python-pycryptodome))
+    (home-page "https://github.com/CybercentreCanada/cart")
+    (synopsis "Library for interacting with the CaRT file format")
+    (description
+     "This Python library implements the CaRT file format which is commonly
+used to store and transmit information about computer malware and associated
+metadata.")
+    (license license:bsd-2)))
+
 (define-public python-ailment
   (package
     (name "python-ailment")