Subject: [PATCH] gnu: Add python-apprise.

From: Fabio Natali <[email-masked]>
Date: Thu, 28 Mar 2024 16:15:13 +0000

* gnu/packages/python-xyz.scm (python-apprise): New variable.

Change-Id: I55b8c7b558ce34835cff31b9fac6ff3b81ff5fec
---
Hi! 👋

This is to add Apprise, a push notification Python library.

It seems that Apprise is required if we want to upgrade borgmatic from 1.7.12 to 1.8.9.

I hope the patch looks alright but all feedback is welcome.

Thanks, cheers, Fabio.

 gnu/packages/python-xyz.scm | 46 +++++++++++++++++++++++++++++++++++++
 1 file changed, 46 insertions(+)

diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index 8a6ef23b58..2cdcc5e51c 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -231,6 +231,7 @@ (define-module (gnu packages python-xyz)
   #:use-module (gnu packages man)
   #:use-module (gnu packages markup)
   #:use-module (gnu packages maths)
+  #:use-module (gnu packages messaging)
   #:use-module (gnu packages monitoring)
   #:use-module (gnu packages multiprecision)
   #:use-module (gnu packages ncurses)
@@ -293,6 +294,51 @@ (define-module (gnu packages python-xyz)
   #:use-module (srfi srfi-1)
   #:use-module (srfi srfi-26))
 
+(define-public python-apprise
+  (package
+    (name "python-apprise")
+    (version "1.7.4")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (pypi-uri "apprise" version))
+       (sha256
+        (base32 "0wvs1k71fipn617y9wsdcvwcgg2pd0nvriarlwl4438la4086ppg"))))
+    (build-system pyproject-build-system)
+    (propagated-inputs (list python-certifi
+                             python-click
+                             python-dataclasses
+                             python-markdown
+                             python-pyyaml
+                             python-requests
+                             python-requests-oauthlib))
+    (native-inputs (list python-babel
+                         python-coverage
+                         python-cryptography
+                         python-flake8
+                         python-paho-mqtt
+                         python-pytest
+                         python-pytest-cov
+                         python-pytest-mock
+                         python-pytest-xdist
+                         python-wheel))
+    (arguments
+     (list
+      #:phases #~(modify-phases %standard-phases
+                   (replace 'check
+                     (lambda* (#:key tests? inputs outputs #:allow-other-keys)
+                       (when tests?
+                         (delete-file "test/test_plugin_macosx.py")
+                         (invoke "pytest")))))))
+    (home-page "https://github.com/caronc/apprise")
+    (synopsis
+     "Push notification Python library that works with many platforms")
+    (description
+     "Apprise is a Python library that allows sending push notifications to a broad
+range of notification services, such as Telegram, Discord, Slack, Amazon SNS,
+Gotify, etc.")
+    (license license:bsd-2)))
+
 (define-public python-xmldiff
   (package
     (name "python-xmldiff")

base-commit: fb9549164520ad993c2fbbaedc899844d57baabc
-- 
2.41.0