From 488d77b3a6542598264ba964a723cf2c7d6e646f Mon Sep 17 00:00:00 2001 From: Mekeor Melire Date: Wed, 19 May 2021 03:45:08 +0200 Subject: [PATCH] gnu: Add python-domain-connect-dyndns. * gnu/packages/python-web.scm (python-publicsuffixlist, python-domain-connect, python-domain-connect-dyndns): New variables. --- gnu/packages/python-web.scm | 103 ++++++++++++++++++++++++++++++++++++ 1 file changed, 103 insertions(+) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index b7411d21fa..41c8971c8c 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -42,6 +42,7 @@ ;;; Copyright © 2020 Giacomo Leidi ;;; Copyright © 2021 Ekaitz Zarraga ;;; Copyright © 2021 Greg Hogan +;;; Copyright © 2021 Mekeor Melire ;;; ;;; This file is part of GNU Guix. ;;; @@ -4066,6 +4067,108 @@ List. Forked from and using the same API as the publicsuffix package.") (define-public python2-publicsuffix2 (package-with-python2 python-publicsuffix2)) +(define-public python-publicsuffixlist + (package + (name "python-publicsuffixlist") + (version "0.7.7") + (home-page "https://github.com/ko-zu/psl") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit "bff8d6a87b6bd3f6894e9211a9ee3c995ccfdcfc"))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1nzvw6n702y1v1z5b62lv2rnlqjr3hjpal2750sg8s713fxvxlzz")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) + (synopsis "Parse the Public Suffix List") + (description "Parse and use a given list of public suffix domains.") + (license license:mpl2.0))) + +(define-public python-domain-connect + (package + (name "python-domain-connect") + (version "0.0.9") + (home-page "https://github.com/Domain-Connect/domainconnect_python") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1xji0svamw961c7zgs1453cw2b9w94mk5qrfvqyb592l6yhmmm62")))) + (build-system python-build-system) + (arguments + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'only-single-number-versions + (lambda _ + (substitute* '("setup.py" "requirements.txt") + (("(.*)([0-9]+)\\.[0-9]+\\.[0-9]+(.*)" all begin number end) + (string-append begin number end "\n")))))))) + (propagated-inputs + `(("python-cffi" ,python-cffi) + ("python-cryptography" ,python-cryptography) + ("python-dnspython" ,python-dnspython) + ("python-future" ,python-future) + ("python-publicsuffix" ,python-publicsuffix) + ("python-publicsuffixlist" ,python-publicsuffixlist) + ("python-pycparser" ,python-pycparser) + ("python-six" ,python-six))) + (synopsis "Update DNS record of a domain per Domain Connect standard") + (description "This library provides \"Domain Connect\" for Python, which +can be used to update DNS records of domains.") + (license license:expat))) + +(define-public python-domain-connect-dyndns + (package + (name "python-domain-connect-dyndns") + (version "0.0.9") + (home-page "https://github.com/Domain-Connect/DomainConnectDDNS-Python") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url home-page) + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "024wxhfifl14j8s973lg6ls6s80grf9sm417kd2rpy1a90p89dnk")))) + (build-system python-build-system) + (arguments + `(#:tests? #f + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'only-single-number-versions + (lambda _ + (substitute* '("setup.py" "requirements.txt") + (("(.*)([0-9]+)\\.[0-9]+\\.[0-9]+(.*)" all begin number end) + (string-append begin number end "\n")))))))) + (propagated-inputs + `(("python-certifi" ,python-certifi) + ("python-cffi" ,python-cffi) + ("python-chardet" ,python-chardet) + ("python-cryptography" ,python-cryptography) + ("python-dnspython" ,python-dnspython) + ("python-domain-connect" ,python-domain-connect) + ("python-future" ,python-future) + ("python-idna" ,python-idna) + ("python-publicsuffix" ,python-publicsuffix) + ("python-pycparser" ,python-pycparser) + ("python-requests" ,python-requests) + ("python-six" ,python-six) + ("python-urllib3" ,python-urllib3) + ("python-validators" ,python-validators))) + (synopsis "Update DNS record of a domain per Domain Connect standard") + (description "This package provides a client for the open standard +\"Domain Connect\" which can be used to update DNS records of domains.") + (license license:expat))) + (define-public python-werkzeug (package (name "python-werkzeug") -- 2.30.2