diff options
Diffstat (limited to 'gn/packages/mailman.scm')
-rw-r--r-- | gn/packages/mailman.scm | 1735 |
1 files changed, 0 insertions, 1735 deletions
diff --git a/gn/packages/mailman.scm b/gn/packages/mailman.scm deleted file mode 100644 index db2b92d..0000000 --- a/gn/packages/mailman.scm +++ /dev/null @@ -1,1735 +0,0 @@ -(define-module (gn packages mailman) - #:use-module ((guix licenses) #:prefix license:) - #:use-module (guix packages) - #:use-module (guix download) - #:use-module (guix build-system python) - #:use-module (gnu packages check) - #:use-module (gnu packages compression) - #:use-module (gnu packages databases) - #:use-module (gnu packages django) - #:use-module (gnu packages geo) - #:use-module (gnu packages libffi) - #:use-module (gnu packages mail) - #:use-module (gnu packages ncurses) - #:use-module (gnu packages python-check) - #:use-module (gnu packages python-crypto) - #:use-module (gnu packages python-xyz) - #:use-module (gnu packages python-web) - #:use-module (gnu packages time) - #:use-module (gnu packages tls)) - -(define-public mailman - (package - (name "mailman") - (version "3.3.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "mailman" version)) - (sha256 - (base32 - "1qph9i93ndahfxi3bb2sd0kjm2c0pkh844ai6zacfmvihl1k3pvy")))) - (build-system python-build-system) - (propagated-inputs - `(("gunicorn" ,gunicorn) - ("python-aiosmtpd" ,python-aiosmtpd) - ("python-alembic" ,python-alembic) - ("python-atpublic" ,python-atpublic) - ("python-authheaders" ,python-authheaders) - ("python-authres" ,python-authres) - ("python-click" ,python-click) - ("python-dateutil" ,python-dateutil) - ("python-dnspython" ,python-dnspython) - ("python-falcon" ,python-falcon) - ("python-flufl-bounce" ,python-flufl-bounce) - ("python-flufl-i18n" ,python-flufl-i18n) - ("python-flufl-lock" ,python-flufl-lock) - ("python-importlib-resources" ,python-importlib-resources) ; built into python-3.7 - ("python-lazr-config" ,python-lazr-config) - ("python-passlib" ,python-passlib) - ("python-requests" ,python-requests) - ("python-sqlalchemy" ,python-sqlalchemy) - ("python-zope-component" ,python-zope-component) - ("python-zope-configuration" ,python-zope-configuration) - ("python-zope-event" ,python-zope-event) - ("python-zope-interface" ,python-zope-interface))) - (home-page "https://www.list.org") - (synopsis "Mailing list manager") - (description - "GNU Mailman is software for managing email discussion and mailing -lists. Both users and administrators generally perform their actions in a -web interface, although email and command-line interfaces are also provided. -The system features built-in archiving, automatic bounce processing, content -filtering, digest delivery, and more.") - (license license:gpl3+))) - -(define-public python-aiosmtpd - (package - (name "python-aiosmtpd") - (version "1.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "aiosmtpd" version)) - (sha256 - (base32 - "1xdfk741pjmz1cm8dsi4n5vq4517i175rm94696m3f7kcgk7xsmp")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'delete-failing-test - (lambda _ - (delete-file "aiosmtpd/tests/test_smtps.py") - #t)) - (replace 'check - (lambda _ - (invoke "python" "-m" "nose2" "-v")))))) - (native-inputs - `(("python-flufl-testing" ,python-flufl-testing) - ("python-nose2" ,python-nose2))) - (propagated-inputs - `(("python-atpublic" ,python-atpublic))) - (home-page "https://aiosmtpd.readthedocs.io/") - (synopsis "Asyncio based SMTP server") - (description - "This project is a reimplementation of the Python stdlib @code{smtpd.py} -based on asyncio.") - (license (list license:asl2.0 - license:lgpl3)))) ; only for setup_helpers.py - -(define-public python-flufl-testing - (package - (name "python-flufl-testing") - (version "0.8") - (source - (origin - (method url-fetch) - (uri (pypi-uri "flufl.testing" version)) - (sha256 - (base32 - "1nkm95mhcfhl4x5jgs6y97ikszaxsfh07nyawsih6cxxm6l62641")))) - (build-system python-build-system) - (native-inputs - `(("python-nose2" ,python-nose2))) - (home-page "https://gitlab.com/warsaw/flufl.testing") - (synopsis "Collection of test tool plugins") - (description - "A small collection of test tool plugins for nose2 and flake8.") - (license license:asl2.0))) - -(define-public python-atpublic - (package - (name "python-atpublic") - (version "1.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "atpublic" version)) - (sha256 - (base32 - "0i3sbxkdlbb4560rrlmwwd5y4ps7k73lp4d8wnmd7ag9k426gjkx")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-before 'build 'enable-c-implementation - (lambda _ - (setenv "ATPUBLIC_BUILD_EXTENSION" "yes") - #t)) - (replace 'check - (lambda _ - (invoke "python" "-m" "nose2" "-v")))))) - (native-inputs - `(("python-nose2" ,python-nose2))) - (home-page "https://public.readthedocs.io/") - (synopsis "@code{@@public} decorator for populating @code{__all__}") - (description - "This Python module adds a @code{@@public} decorator and function which -populates a module's @code{__all__} and optionally the module globals. With -it, the declaration of a name's public export semantics are not separated from -the implementation of that name.") - (license (list license:asl2.0 - license:lgpl3)))) ; only for setup_helpers.py - -(define-public python-authheaders - (package - (name "python-authheaders") - (version "0.12.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "authheaders" version)) - (sha256 - (base32 - "1ljcp8vk2n4xwk8p758b6q5sgdicyj4gxxpkmh33mx21jscn6q4i")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Remove bundled public suffix list and its license. - (delete-file "authheaders/public_suffix_list.txt") - (delete-file "MPL-2.0") - #t)))) - (build-system python-build-system) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-before 'build 'configure-public-suffix-list - ;; Use public suffix list from Guix package. - (lambda* (#:key inputs #:allow-other-keys) - (let ((publicsuffix (assoc-ref inputs "python-publicsuffix"))) - (invoke "python" "setup.py" "psllocal" - (string-append "--path=" publicsuffix "/lib/python" - (python-version (assoc-ref inputs "python")) - "/site-packages/publicsuffix" - "/public_suffix_list.dat")) - #t))) - (replace 'check - (lambda _ - ;; Make it find the only test file. - (invoke "python" "-m" "unittest" "-v" "test" - "authheaders/test/test_authentication.py") - #t))))) - (propagated-inputs - `(("python-authres" ,python-authres) - ("python-dkimpy" ,python-dkimpy) - ("python-dnspython" ,python-dnspython) - ("python-publicsuffix" ,python-publicsuffix))) - (home-page "https://github.com/ValiMail/authentication-headers") - (synopsis "Library wrapping email authentication header verification and generation") - (description - "This is a Python library for the generation of email authentication -headers. The library can perform DKIM, SPF, and DMARC validation, and the -results are packaged into the Authentication-Results header. The library can -DKIM and ARC sign messages and output the corresponding signature headers.") - ;; The package's metadata claims it were MIT licensed, but the source file - ;; headers disagree.¬ - (license (list license:zpl2.1 license:zlib)))) - -(define-public python-authres - (package - (name "python-authres") - (version "1.2.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "authres" version)) - (sha256 - (base32 - "1dr5zpqnb54h4f5ax8334l1dcp8j9083d7v4vdi1xqkwmnavklck")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - ;; Run doctests as described in the README. - (lambda _ - (invoke "python" "-m" "authres" "-v")))))) - (home-page "https://launchpad.net/authentication-results-python") - (synopsis "Email Authentication Results Header Module") - (description - "This module can be used to generate and parse RFC 5451/7001/7601 -Authentication-Results headers. It also supports Authentication Results -extensions: -@itemize -@item RFC 5617 DKIM/ADSP -@item RFC 6008 DKIM signature identification (header.b) -@item RFC 6212 Vouch By Reference (VBR) -@item RFC 6577 Sender Policy Framework (SPF) -@item RFC 7281 Authentication-Results Registration for S/MIME -@item RFC 7293 The Require-Recipient-Valid-Since Header Field -@item RFC 7489 Domain-based Message Authentication, Reporting, and Conformance (DMARC) -@item Authenticated Recieved Chain (ARC) (draft-ietf-dmarc-arc-protocol-08) -@end itemize -Note: RFC 7601 obsoletes RFC 5451, 6577, 7001, and 7410. Authres supports the -current standard. No backward compatibility issues have been noted.") - (license license:asl2.0))) - -(define-public python-flufl-bounce - (package - (name "python-flufl-bounce") - (version "3.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "flufl.bounce" version)) - (sha256 - (base32 - "0k5kjqa3x6gvwwxyzb2vwi1g1i6asm1zw5fivylxz3d583y4kid2")))) - (build-system python-build-system) - (propagated-inputs - `(("python-atpublic" ,python-atpublic) - ("python-zope-interface" ,python-zope-interface))) - (native-inputs - `(("python-nose2" ,python-nose2))) - (home-page "https://fluflbounce.readthedocs.io/en/latest/") - (synopsis "Email bounce detectors") - (description "The @code{flufl.bounce} library provides a set of heuristics -and an API for detecting the original bouncing email addresses from a bounce -message. Many formats found in the wild are supported, as are VERP and -RFC 3464.") - (license (list license:asl2.0 - license:lgpl3)))) ; only for setup_headers.py - -(define-public python-flufl-i18n - (package - (name "python-flufl-i18n") - (version "2.0.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "flufl.i18n" version)) - (sha256 - (base32 - "1csgds59nx0ann9v2alqr69lakp1cnc1ikmbgn96l6n23js7c2ah")))) - (build-system python-build-system) - (propagated-inputs - `(("python-atpublic" ,python-atpublic))) - (home-page "https://flufli18n.readthedocs.io") - (synopsis "API for Python internationalization") - (description - "This package provides a high level, convenient API for managing -internationalization translation contexts in Python application. There is a -simple API for single-context applications, such as command line scripts which -only need to translate into one language during the entire course of thei -execution. There is a more flexible, but still convenient API for multi-context -applications, such as servers, which may need to switch language contexts for -different tasks.") - (license license:asl2.0))) - -(define-public python-flufl-lock - (package - (name "python-flufl-lock") - (version "3.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "flufl.lock" version)) - (sha256 - (base32 - "0nzzd6l30ff6cwsrlrb94xzfja4wkyrqv3ydc6cz0hdbr766mmm8")))) - (build-system python-build-system) - (propagated-inputs - `(("python-atpublic" ,python-atpublic))) - (home-page "https://flufllock.readthedocs.io") - (synopsis "NFS-safe file locking with timeouts for POSIX systems") - (description - "The @dfn{flufl.lock} package provides NFS-safe file locking with -timeouts for POSIX systems. It is similar to the @code{O_EXCL} option of the -@code{open} system call but uses a lockfile. Lock objects support lock-breaking -and have a maximum lifetime built-in.") - (license (list license:asl2.0 - license:lgpl3)))) ; only for setup_helpers.py - -(define-public python-importlib-resources - (package - (name "python-importlib-resources") - (version "1.0.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "importlib_resources" version)) - (sha256 - (base32 - "0y3hg12iby1qyaspnbisz4s4vxax7syikk3skznwqizqyv89y9yk")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "python" "-m" "unittest" "discover")))))) - (propagated-inputs - `(("python-pathlib2" ,python-pathlib2))) - (native-inputs - `(("python-wheel" ,python-wheel))) - (home-page "https://importlib-resources.readthedocs.io/") - (synopsis "Read resources from Python packages") - (description - "@code{importlib_resources} is a backport of Python 3.7's standard library -@code{importlib.resources} module for Python 2.7, and 3.4 through 3.6.") - (license license:asl2.0))) - -(define-public python-lazr-config - (package - (name "python-lazr-config") - (version "2.2.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "lazr.config" version)) - (sha256 - (base32 - "1s7pyvlq06qjrkaw9r6nc290lb095n25ybzgavvy51ygpxkgqxwn")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "python" "-s" "-m" "nose" "-P" "lazr")))))) - (propagated-inputs - `(("python-lazr-delegates" ,python-lazr-delegates) - ("python-zope-interface" ,python-zope-interface))) - (home-page "https://launchpad.net/lazr.config") - (synopsis "Create configuration schemas and process and validate configurations") - (description - "The LAZR config system is typically used to manage process configuration. -Process configuration is for saying how things change when we run systems on -different machines, or under different circumstances. This system uses ini-like -file format of section, keys, and values. The config file supports inheritance -to minimize duplication of information across files. The format supports schema -validation.") - (license license:lgpl3))) - -(define-public python-zope-component - (package - (name "python-zope-component") - (version "4.5") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.component" version)) - (sha256 - (base32 - "0mafp41aqcffbfl9dsac34clc7zlpxwwzkx8jllbg4xmqckddpvf")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda* (#:key inputs outputs #:allow-other-keys) - (add-installed-pythonpath inputs outputs) - (invoke "python" "setup.py" "test")))))) - (propagated-inputs - `(("python-zope-deferredimport" ,python-zope-deferredimport) - ("python-zope-deprecation" ,python-zope-deprecation) - ("python-zope-event" ,python-zope-event) - ("python-zope-hookable" ,python-zope-hookable) - ("python-zope-interface" ,python-zope-interface))) - (native-inputs - `(("python-persistent" ,python-persistent) - ("python-zope-configuration" ,python-zope-configuration-bootstrap) - ("python-zope-i18nmessageid" ,python-zope-i18nmessageid) - ("python-zope-location" ,python-zope-location-bootstrap) - ("python-zope-proxy" ,python-zope-proxy-bootstrap) - ("python-zope-security" ,python-zope-security-bootstrap) - ("python-zope-testing" ,python-zope-testing) - ("python-zope-testrunner" ,python-zope-testrunner))) - (home-page "https://github.com/zopefoundation/zope.component") - (synopsis "Zope Component Architecture") - (description "Zope Component Architecture") - (license license:zpl2.1))) - -(define-public python-zope-component-bootstrap - (package - (inherit python-zope-component) - (arguments `(#:tests? #f)) - (native-inputs `()) - (properties `((hidden? . #t))))) - -(define-public python-zope-configuration - (package - (name "python-zope-configuration") - (version "4.3.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.configuration" version)) - (sha256 - (base32 - "1qb88764fd7nkkmqv7fl9bxd1jirynkg5vbqkpqdiffnkxzp85kf")))) - (build-system python-build-system) - (propagated-inputs - `(("python-zope-i18nmessageid" ,python-zope-i18nmessageid) - ("python-zope-interface" ,python-zope-interface) - ("python-zope-schema" ,python-zope-schema))) - (native-inputs - `(("python-manuel" ,python-manuel) - ("python-zope-schema" ,python-zope-schema) - ("python-zope-testing" ,python-zope-testing) - ("python-zope-testrunner" ,python-zope-testrunner))) - (home-page "https://github.com/zopefoundation/zope.configuration") - (synopsis "Zope Configuration Markup Language (ZCML)") - (description - "Zope Configuration Markup Language (ZCML)") - (license license:zpl2.1))) - -(define-public python-zope-configuration-bootstrap - (package - (inherit python-zope-configuration) - (arguments `(#:tests? #f)) - (native-inputs `()) - (properties `((hidden? . #t))))) - -(define-public python-zope-interface - (package - (name "python-zope-interface") - (version "4.6.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.interface" version)) - (sha256 - (base32 - "1rgh2x3rcl9r0v0499kf78xy86rnmanajf4ywmqb943wpk50sg8v")))) - (build-system python-build-system) - (native-inputs - `(("python-coverage" ,python-coverage) - ("python-nose" ,python-nose) - ("python-zope-event" ,python-zope-event))) - (home-page "https://github.com/zopefoundation/zope.interface") - (synopsis "Interfaces for Python") - (description "Interfaces for Python") - (license license:zpl2.1))) - -(define-public python-dkimpy - (package - (name "python-dkimpy") - (version "0.9.5") - (source - (origin - (method url-fetch) - (uri (pypi-uri "dkimpy" version)) - (sha256 - (base32 - "1wlzahsy4dz3w7dzbr6ayd2vqps1zcbj6101lbbgarn43fkpmx3b")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'patch-source-shebangs 'patch-more-source - (lambda* (#:key inputs #:allow-other-keys) - (let ((openssl (assoc-ref inputs "openssl"))) - (substitute* "dkim/dknewkey.py" - (("/usr/bin/openssl") (string-append openssl "/bin/openssl")))) - #t)) - (replace 'check - (lambda _ - (invoke "python" "test.py")))))) - (propagated-inputs - `(("python-dnspython" ,python-dnspython))) - (native-inputs - `(("python-authres" ,python-authres) - ("python-pynacl" ,python-pynacl))) - (inputs - `(("openssl" ,openssl))) - (home-page "https://launchpad.net/dkimpy") - (synopsis "DKIM (DomainKeys Identified Mail)") - (description "Python module that implements @dfn{DKIM} (DomainKeys -Identified Mail) email signing and verification (RFC6376). It also provides -helper scripts for command line signing and verification. It supports DKIM -signing/verifying of ed25519-sha256 signatures (RFC 8463). It also supports -the RFC 8617 Authenticated Received Chain (ARC) protocol.") - (license license:bsd-3))) - -(define-public python-lazr-delegates - (package - (name "python-lazr-delegates") - (version "2.0.4") - (source - (origin - (method url-fetch) - (uri (pypi-uri "lazr.delegates" version)) - (sha256 - (base32 - "1rdnl85j9ayp8n85l0ciip621j9dcziz5qnmv2m7krgwgcn31vfx")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "python" "setup.py" "nosetests")))))) - (propagated-inputs - `(("python-nose" ,python-nose) - ("python-zope-interface" ,python-zope-interface))) - (home-page "https://launchpad.net/lazr.delegates") - (synopsis "Easily write objects that delegate behavior") - (description - "The @code{lazr.delegates} package makes it easy to write objects that -delegate behavior to another object. The new object adds some property or -behavior on to the other object, while still providing the underlying interface, -and delegating behavior.") - (license license:lgpl3))) - -(define-public python-zope-deferredimport - (package - (name "python-zope-deferredimport") - (version "4.3.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.deferredimport" version)) - (sha256 - (base32 - "1q89v54dwniiqypjbwywwdfjdr4kdkqlyqsgrpplgvsygdg39cjp")))) - (build-system python-build-system) - (propagated-inputs - `(("python-zope-proxy" ,python-zope-proxy))) - (native-inputs - `(("python-zope-testrunner" ,python-zope-testrunner))) - (home-page "https://github.com/zopefoundation/zope.deferredimport") - (synopsis "Defer imports until used by code") - (description - "Often, especially for package modules, you want to import names for -convenience, but not actually perform the imports until necessary. The -@code{zope.deferredimport} package provided facilities for defining names in -modules that will be imported from somewhere else when used. You can also cause -deprecation warnings to be issued when a variable is used.") - (license license:zpl2.1))) - -(define-public python-zope-hookable - (package - (name "python-zope-hookable") - (version "4.2.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.hookable" version)) - (sha256 - (base32 - "05fy9lynyglzyiy1nbzdyv3rgvznwv0s0q0dr2hcavv6lclkkpy1")))) - (build-system python-build-system) - (native-inputs - `(("python-coverage" ,python-coverage) - ("python-zope-testing" ,python-zope-testing))) - (home-page "https://github.com/zopefoundation/zope.hookable") - (synopsis "Zope hookable") - (description "This package supports the efficient creation of hookable -objects, which are callable objects that are meant to be optionally replaced. -The idea is that you create a function that does some default thing and make i -hookable. Later, someone can modify what it does by calling its sethook method -and changing its implementation. All users of the function, including those -that imported it, will see the change.") - (license license:zpl2.1))) - -(define-public python-zope-i18nmessageid - (package - (name "python-zope-i18nmessageid") - (version "4.3.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.i18nmessageid" version)) - (sha256 - (base32 - "1qw1f2p4ycqrm5ja4blwv2lllnn8d3jf2ml29pwadlvmivzys4g5")))) - (build-system python-build-system) - (propagated-inputs - `(("python-six" ,python-six))) - (native-inputs - `(("python-coverage" ,python-coverage) - ("python-nose" ,python-nose))) - (home-page "https://github.com/zopefoundation/zope.i18nmessageid") - (synopsis "Message Identifiers for internationalization") - (description - "This package provides facilities for declaring messages within program -source text; translation of the messages is the responsiblitiy of the -@code{zope.i18n} package.") - (license license:zpl2.1))) - -(define-public python-zope-schema - (package - (name "python-zope-schema") - (version "4.9.3") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.schema" version)) - (sha256 - (base32 - "178631dks473rfsfd46pmqipz7fdkn9bjd35j6qlgavwf2l1v5rd")))) - (build-system python-build-system) - (propagated-inputs - `(("python-zope-event" ,python-zope-event) - ("python-zope-interface" ,python-zope-interface))) - (native-inputs - `(("python-zope-i18nmessageid" ,python-zope-i18nmessageid) - ("python-zope-testing" ,python-zope-testing) - ("python-zope-testrunner" ,python-zope-testrunner))) - (home-page "https://github.com/zopefoundation/zope.schema") - (synopsis "Zope.interface extension for defining data schemas") - (description - "Schemas extend the notion of interfaces to detailed descriptions of -Attributes (but not methods). Every schema is an interface and specifies the -public fields of an object. A field roughly corresponds to an attribute of a -Python object. But a Field provides space for at least a title and a -description. It can also constrain its value and provide a validation method. -Besides you can optionally specify characteristics such as its value being -read-only or not required.") - (license license:zpl2.1))) - -(define-public python-py3dns - (package - (name "python-py3dns") - (version "3.2.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "py3dns" version)) - (sha256 - (base32 - "1r25f0ys5p37bhld7m7n4gb0lrysaym3w318w2f8bncq7r3d81qz")))) - (build-system python-build-system) - ;; This package wants to read /etc/resolv.conf. We can't patch it without - ;; removing functionality so we copy from Nix and "just don't build it". - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-source - (lambda _ - (substitute* "setup.py" - (("import DNS") "") - (("DNS.__version__") (string-append "\"" ,version "\""))) - #t))) - #:tests? #f)) ; Also skip the tests. - (home-page "https://launchpad.net/py3dns") - (synopsis "Python 3 DNS library") - (description "This Python 3 module provides a DNS API for looking up DNS -entries from within Python 3 modules and applications. This module is a -simple, lightweight implementation.") - (license license:psfl))) - -(define-public python-zope-proxy - (package - (name "python-zope-proxy") - (version "4.3.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.proxy" version)) - (sha256 - (base32 - "05svkbri0jsavjy5jk36n1iba7z2ilb07zr8r3516765v5snjvdb")))) - (build-system python-build-system) - (propagated-inputs - `(("python-zope-interface" ,python-zope-interface))) - (native-inputs - `(("python-zope-security" ,python-zope-security-bootstrap) - ("python-zope-testrunner" ,python-zope-testrunner))) - (home-page "https://github.com/zopefoundation/zope.proxy") - (synopsis "Generic Transparent Proxies") - (description "@code{zope.proxy} is implemented via a C extension module, -which lets it do things like lie about its own __class__ that are difficult in -pure Python (and were completely impossible before metaclasses).") - (license license:zpl2.1))) - -(define-public python-zope-proxy-bootstrap - (package - (inherit python-zope-proxy) - (arguments `(#:tests? #f)) - (native-inputs `()) - (properties `((hidden? . #t))))) - -(define-public python-zope-testrunner - (package - (name "python-zope-testrunner") - (version "5.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.testrunner" version)) - (sha256 - (base32 - "0w3q66cy4crpj7c0hw0vvvvwf3g931rnvw7wwa20av7yqvv6ajim")))) - (build-system python-build-system) - (arguments - '(#:tests? #f)) ; Tests can't find zope.exceptions. - (propagated-inputs - `(("python-six" ,python-six) - ("python-zope-exceptions" ,python-zope-exceptions) - ("python-zope-interface" ,python-zope-interface))) - (native-inputs - `(("python-zope-testing" ,python-zope-testing))) - (home-page "https://github.com/zopefoundation/zope.testrunner") - (synopsis "Zope testrunner script") - (description "This package provides a flexible test runner with layer -support for the Zope framework.") - (license license:zpl2.1))) - -(define-public python-zope-testrunner-bootstrap - (package - (inherit python-zope-testrunner) - (arguments `(#:tests? #f)) - (propagated-inputs - `(("python-six" ,python-six) - ("python-zope-exceptions" ,python-zope-exceptions-bootstrap))) - (properties `((hidden? . #t))))) - -(define-public python-zope-exceptions - (package - (name "python-zope-exceptions") - (version "4.3") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.exceptions" version)) - (sha256 - (base32 - "04bjskwas17yscl8bs3l44maxspw1gdji0zcmr499fs420y9r9az")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "zope-testrunner" "--test-path=src" "\\[]")))))) - (propagated-inputs - `(("python-zope-interface" ,python-zope-interface))) - (native-inputs - `(("python-zope-testrunner" ,python-zope-testrunner-bootstrap))) - (home-page "https://github.com/zopefoundation/zope.exceptions") - (synopsis "Zope Exceptions") - (description "This package contains exception exceptions and - implementations which are so general purpose that they don't belong in Zope - application-specific packages.") - (license license:zpl2.1))) - -(define-public python-zope-exceptions-bootstrap - (package - (inherit python-zope-exceptions) - (arguments `(#:tests? #f)) - (propagated-inputs `()) - (native-inputs `()) - (properties `((hidden? . #t))))) - -(define-public python-zope-testing - (package - (name "python-zope-testing") - (version "4.7") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.testing" version)) - (sha256 - (base32 - "1sh3c3i0m8n8fnhqiry0bk3rr356i56ry7calmn57s1pvv8yhsyn")))) - (build-system python-build-system) - (home-page "https://github.com/zopefoundation/zope.testing") - (synopsis "Zope testing helpers") - (description "This package provides a number of Zope testing helpers") - (license license:zpl2.1))) - -(define-public python-persistent - (package - (name "python-persistent") - (version "4.5.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "persistent" version)) - (sha256 - (base32 - "0slbvq1m3rilgyhj6i522rsyv592xv9pmvm61mrmgkgf40kfnz69")))) - (build-system python-build-system) - (propagated-inputs - `(("python-cffi" ,python-cffi) - ("python-zope-interface" ,python-zope-interface))) - (native-inputs - `(("python-manuel" ,python-manuel) - ("python-zope-testrunner" ,python-zope-testrunner))) - (home-page "https://github.com/zopefoundation/persistent/") - (synopsis "Translucent persistent objects") - (description "This package contains a generic persistence implementation for -Python. It forms the core protocol for making objects interact -\"transparently\" with a database such as the ZODB.") - (license license:zpl2.1))) - -(define-public python-zope-location - (package - (name "python-zope-location") - (version "4.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.location" version)) - (sha256 - (base32 - "1b40pzl8v00d583d3gsxv1qjdw2dhghlgkbgxl3m07d5r3izj857")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "zope-testrunner" "--test-path=src" "\\[]")))))) - (propagated-inputs - `(("python-zope-interface" ,python-zope-interface) - ("python-zope-proxy" ,python-zope-proxy) - ("python-zope-schema" ,python-zope-schema))) - (native-inputs - `(("python-zope-component" ,python-zope-component-bootstrap) - ("python-zope-configuration" ,python-zope-configuration-bootstrap) - ("python-zope-copy" ,python-zope-copy-bootstrap) - ("python-zope-testrunner" ,python-zope-testrunner))) - (home-page "https://github.com/zopefoundation/zope.location/") - (synopsis "Zope Location") - (description "In Zope3, \"locations\" are special objects that have a -structural location.") - (license license:zpl2.1))) - -(define-public python-zope-location-bootstrap - (package - (inherit python-zope-location) - (arguments `(#:tests? #f)) - (native-inputs `()) - (properties `((hidden? . #t))))) - -(define-public python-zope-security - (package - (name "python-zope-security") - (version "4.3.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.security" version)) - (sha256 - (base32 - "1zzaggsq4d9pslzh1h1i9qizsrykrm91iyqzi1dz0vw5rixyaj4l")))) - (build-system python-build-system) - (propagated-inputs - `(("python-zope-component" ,python-zope-component) - ("python-zope-i18nmessageid" ,python-zope-i18nmessageid) - ("python-zope-interface" ,python-zope-interface) - ("python-zope-location" ,python-zope-location) - ("python-zope-proxy" ,python-zope-proxy) - ("python-zope-schema" ,python-zope-schema))) - (native-inputs - `(("python-btrees" ,python-btrees) - ("python-zope-component" ,python-zope-component-bootstrap) - ("python-zope-configuration" ,python-zope-configuration-bootstrap) - ("python-zope-location" ,python-zope-location-bootstrap) - ("python-zope-testing" ,python-zope-testing) - ("python-zope-testrunner" ,python-zope-testrunner))) - (home-page "https://github.com/zopefoundation/zope.security") - (synopsis "Zope Security Framework") - (description "The security framework provides a generic mechanism to -implement security policies on Python objects.") - (license license:zpl2.1))) - -(define-public python-zope-security-bootstrap - (package - (inherit python-zope-security) - (arguments `(#:tests? #f)) - (propagated-inputs - `(;("python-zope-component" ,python-zope-component-bootstrap) - ("python-zope-i18nmessageid" ,python-zope-i18nmessageid) - ("python-zope-interface" ,python-zope-interface) - ;("python-zope-location" ,python-zope-location) - ("python-zope-proxy" ,python-zope-proxy-bootstrap) - ("python-zope-schema" ,python-zope-schema))) - (native-inputs `()) - (properties `((hidden? . #t))))) - -(define-public python-manuel - (package - (name "python-manuel") - (version "1.10.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "manuel" version)) - (sha256 - (base32 - "1bdzay7j70fly5fy6wbdi8fbrxjrrlxnxnw226rwry1c8a351rpy")))) - (build-system python-build-system) - (propagated-inputs - `(("python-six" ,python-six))) - (native-inputs - `(("python-zope-testing" ,python-zope-testing))) - (home-page "https://pypi.org/project/manuel/") - (synopsis "Build tested documentation") - (description - "Manuel lets you mix and match traditional doctests with custom test syntax.") - (license license:asl2.0))) - -(define-public python-zope-copy - (package - (name "python-zope-copy") - (version "4.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "zope.copy" version)) - (sha256 - (base32 - "06m75434krl57n6p73c2qj55k5i3fixg887j8ss01ih6zw4rvfs7")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "zope-testrunner" "--test-path=src" "\\[]")))))) - (propagated-inputs - `(("python-zope-interface" ,python-zope-interface))) - (native-inputs - `(("python-zope-component" ,python-zope-component-bootstrap) - ("python-zope-location" ,python-zope-location-bootstrap) - ("python-zope-testing" ,python-zope-testing) - ("python-zope-testrunner" ,python-zope-testrunner))) - (home-page "https://github.com/zopefoundation/zope.copy") - (synopsis "Pluggable object copying mechanism") - (description - "This package provides a pluggable mechanism for copying persistent objects.") - (license license:zpl2.1))) - -(define-public python-zope-copy-bootstrap - (package - (inherit python-zope-copy) - (arguments `(#:tests? #f)) - (native-inputs `()) - (properties `((hidden? . #t))))) - -(define-public python-btrees - (package - (name "python-btrees") - (version "4.6.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "BTrees" version)) - (sha256 - (base32 - "0bmkpg6z5z47p21340nyrfbdv2jkfp80yv085ndgbwaas1zi7ac9")))) - (build-system python-build-system) - (propagated-inputs - `(("python-persistent" ,python-persistent) - ("python-zope-interface" ,python-zope-interface))) - (native-inputs - `(("python-persistent" ,python-persistent) - ("python-transaction" ,python-transaction) - ("python-zope-testrunner" ,python-zope-testrunner))) - (home-page "https://github.com/zopefoundation/BTrees") - (synopsis "Scalable persistent object containers") - (description - "This package contains a set of persistent object containers built around a -modified BTree data structure. The trees are optimized for use inside ZODB's -\"optimistic concurrency\" paradigm, and include explicit resolution of -conflicts detected by that mechanism.") - (license license:zpl2.1))) - -(define-public python-transaction - (package - (name "python-transaction") - (version "2.4.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "transaction" version)) - (sha256 - (base32 - "17wz1y524ca07vr03yddy8dv0gbscs06dbdywmllxv5rc725jq3j")))) - (build-system python-build-system) - (propagated-inputs - `(("python-zope-interface" ,python-zope-interface))) - (native-inputs - `(("python-coverage" ,python-coverage) - ("python-mock" ,python-mock) - ("python-nose" ,python-nose))) - (home-page "https://github.com/zopefoundation/transaction") - (synopsis "Transaction management for Python") - (description "This package contains a generic transaction implementation -for Python. It is mainly used by the ZODB.") - (license license:zpl2.1))) - -(define-public python-mailmanclient-3.3 - (package - (inherit python-mailmanclient) - (name "python-mailmanclient") - (version "3.3.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "mailmanclient" version)) - (sha256 - (base32 - "1s8sbhg1vyc9v9zjwxrh6m8h3qx1nspvrkvcnicbvq9a2nz6qwy8")))) - (propagated-inputs - `(("python-requests" ,python-requests))) - (native-inputs - `(("python-falcon" ,python-falcon) - ("python-mailman" ,mailman) - ("python-pytest" ,python-pytest) - ("python-pytest-services" ,python-pytest-services) - ("python-pytest-vcr" ,python-pytest-vcr))))) - -(define-public python-pytest-services - (package - (name "python-pytest-services") - (version "1.3.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "pytest-services" version)) - (sha256 - (base32 - "0b2zfv04w6m3gp2v44ifdhx22vcji069qnn95ry3zcyxib7cjnq3")))) - (build-system python-build-system) - (arguments '(#:tests? #f)) ; Tests not included in release tarball. - (propagated-inputs - `(("python-psutil" ,python-psutil) - ("python-pytest" ,python-pytest) - ("python-requests" ,python-requests) - ("python-setuptools" ,python-setuptools))) ; enumerated in setup.py - (home-page "https://github.com/pytest-dev/pytest-services") - (synopsis "Services plugin for pytest testing framework") - (description - "This plugin provides a set of fixtures and utility functions to start -service processes for your tests with pytest.") - (license license:expat))) - -(define-public python-pytest-vcr - (package - (name "python-pytest-vcr") - (version "1.0.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "pytest-vcr" version)) - (sha256 - (base32 - "15hq5vwiixhb5n2mdvbmxfn977zkwjm769r74vcl7k5vbavm3vi3")))) - (build-system python-build-system) - (propagated-inputs - `(("python-pytest" ,python-pytest) - ("python-vcrpy" ,python-vcrpy))) - (home-page "https://github.com/ktosiek/pytest-vcr") - (synopsis "Plugin for managing VCR.py cassettes") - (description - "Plugin for managing VCR.py cassettes") - (license license:expat))) - -(define-public python-mailman-hyperkitty - (package - (name "python-mailman-hyperkitty") - (version "1.1.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "mailman-hyperkitty" version)) - (sha256 - (base32 - "1lfqa9admhvdv71f528jmz2wl0i5cv77v6l64px2pm4zqr9ckkjx")) - (patches (list (origin - ;; see: https://gitlab.com/mailman/mailman-hyperkitty/issues/17 - (method url-fetch) - (uri "https://salsa.debian.org/mailman-team/mailman-hyperkitty/raw/debian/1.1.0-9/debian/patches/0002-Skip-the-test_archive_message_unserializable.patch") - (sha256 - (base32 - "0p1fwm46c4bl81lvsg3kjhn2r1lwgkpgxamb3xyqn7h9qdrw10hw"))))))) - (build-system python-build-system) - (propagated-inputs - `(("python-mailman" ,mailman) - ("python-requests" ,python-requests) - ("python-setuptools" ,python-setuptools) ; enumerated in setup.py - ("python-zope-interface" ,python-zope-interface))) - (native-inputs - `(("python-mock" ,python-mock) - ("python-nose2" ,python-nose2))) - (home-page "https://gitlab.com/mailman/mailman-hyperkitty/") - (synopsis "Mailman archiver plugin for HyperKitty") - (description - "Mailman archiver plugin for HyperKitty") - (license license:gpl3+))) - -(define-public python-hyperkitty - (package - (name "python-hyperkitty") - (version "1.3.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "HyperKitty" version)) - (sha256 - (base32 - "092fkv0xyf5vgj33xwq0mh9h5c5d56ifwimaqbfpx5cwc6yivb88")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (setenv "PYTHONPATH" (string-append ".:" (getenv "PYTHONPATH"))) - (invoke "example_project/manage.py" "test" - "--settings=hyperkitty.tests.settings_test")))))) - (propagated-inputs - `(("python-dateutil" ,python-dateutil) - ("python-django" ,python-django) - ("python-django-compressor" ,python-django-compressor) - ("python-django-extensions" ,python-django-extensions) - ("python-django-gravatar2" ,python-django-gravatar2) - ("python-django-haystack" ,python-django-haystack) - ("python-django-mailman3" ,python-django-mailman3) - ("python-django-q" ,python-django-q) - ("python-djangorestframework" ,python-djangorestframework) - ("python-flufl-lock" ,python-flufl-lock) - ("python-mailmanclient" ,python-mailmanclient-3.3) - ("python-networkx" ,python-networkx) - ("python-pytz" ,python-pytz) - ("python-robot-detection" ,python-robot-detection))) - (native-inputs - `(("python-beautifulsoup4" ,python-beautifulsoup4) - ("python-elasticsearch" ,python-elasticsearch) - ("python-isort" ,python-isort) - ("python-mock" ,python-mock) - ("python-whoosh" ,python-whoosh))) - (home-page "https://gitlab.com/mailman/hyperkitty") - (synopsis "Web interface to access GNU Mailman v3 archives") - (description - "A web interface to access GNU Mailman v3 archives") - (license license:gpl3))) ; Some files are gpl2+ - -(define-public python-django-compressor - (package - (name "python-django-compressor") - (version "2.3") - (source - (origin - (method url-fetch) - (uri (pypi-uri "django_compressor" version)) - (sha256 - (base32 - "1pbygd00l0k5p1r959131khij1km1a1grfxg0r59ar2wyx3n7j27")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (setenv "DJANGO_SETTINGS_MODULE" "compressor.test_settings") - (invoke "django-admin" "test" - "--pythonpath=.")))))) - (propagated-inputs - `(("python-django-appconf" ,python-django-appconf) - ("python-rcssmin" ,python-rcssmin) - ("python-rjsmin" ,python-rjsmin))) - (native-inputs - `(("python-beautifulsoup4" ,python-beautifulsoup4) - ("python-brotli" ,python-brotli) - ("python-csscompressor" ,python-csscompressor) - ("python-django-sekizai" ,python-django-sekizai) - ("python-mock" ,python-mock))) - (home-page "https://django-compressor.readthedocs.io/en/latest/") - (synopsis - "Compresses linked and inline JavaScript or CSS into single cached files") - (description - "Compresses linked and inline JavaScript or CSS into single cached files.") - (license license:expat))) - -(define-public python-csscompressor - (package - (name "python-csscompressor") - (version "0.9.5") - (source - (origin - (method url-fetch) - (uri (pypi-uri "csscompressor" version)) - (sha256 - (base32 - "018ssffvlpnc1salmnpyl52c11glzzwj4k9f757hl4pkpjnjp8mg")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "py.test")))))) - (native-inputs - `(("python-pytest" ,python-pytest))) - (home-page "https://github.com/sprymix/csscompressor") - (synopsis "Python port of YUI CSS Compressor") - (description - "This package provides a python port of YUI CSS Compressor.") - (license license:bsd-3))) - -(define-public python-brotli - (package - (name "python-brotli") - (version "1.0.7") - (source - (origin - (method url-fetch) - (uri (pypi-uri "Brotli" version ".zip")) - (sha256 - (base32 - "19x5dqxckb62n37mpnczp21rfxqvgpm0ki5ds8ac65zx8hbxqf05")))) - (build-system python-build-system) - (native-inputs - `(("unzip" ,unzip))) - (home-page "https://github.com/google/brotli") - (synopsis "Python bindings for the Brotli compression library") - (description - "This package provides python bindings for the Brotli compression library.") - (license license:asl2.0))) - -(define-public python-django-sekizai - (package - (name "python-django-sekizai") - (version "1.0.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "django-sekizai" version)) - (sha256 - (base32 - "052y7cgrmbbdlbl17cgvnarzqb6x9sv21wwprif9pzljzrb36ak4")))) - (build-system python-build-system) - (arguments '(#:tests? #f)) ; Test script not included with release. - (propagated-inputs - `(("python-django" ,python-django) - ("python-django-classy-tags" ,python-django-classy-tags))) - (home-page "https://github.com/divio/django-sekizai") - (synopsis "Template blocks for Django projects") - (description "Sekizai means blocks in Japanese, and thats what this app -provides. A fresh look at blocks. With @code{django-sekizai} you can define -placeholders where your blocks get rendered and at different places in your -templates append to those blocks. This is especially useful for css and -javascript. Your subtemplates can now define css and javscript files to be -included, and the css will be nicely put at the top and the javascript to the -bottom, just like you should. Also sekizai will ignore any duplicate content in -a single block.") - (license license:bsd-3))) - -(define-public python-django-classy-tags - (package - (name "python-django-classy-tags") - (version "0.9.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "django-classy-tags" version)) - (sha256 - (base32 - "0axzsigvmb17ha5mnr3xf6c851kwinjpkxksxwprwjakh1m59d1q")))) - (build-system python-build-system) - (arguments '(#:tests? #f)) ; Test script not distributed with release. - (propagated-inputs - `(("python-django" ,python-django))) - (home-page "https://github.com/divio/django-classy-tags") - (synopsis "Class based template tags for Django") - (description - "Class based template tags for Django") - (license license:bsd-3))) - -(define-public python-django-haystack - (package - (name "python-django-haystack") - (version "2.8.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "django-haystack" version)) - (sha256 - (base32 - "1302fqsrx8w474xk5cmnmg3hjqfprlxnjg9qlg86arsr4v4vqm4b")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'loosen-verion-restrictions - (lambda _ - (substitute* "setup.py" - (("geopy.*") "geopy',\n")) - #t)) - (add-before 'check 'set-gdal-lib-path - (lambda* (#:key inputs #:allow-other-keys) - (setenv "GDAL_LIBRARY_PATH" - (string-append (assoc-ref inputs "gdal") - "/lib")) - #t))) - #:tests? #f)) ; OSError: libgdal.so.20: cannot open shared object file - (propagated-inputs - `(("python-django" ,python-django))) - (native-inputs - `(("gdal" ,gdal) - ("python-coverage" ,python-coverage) - ("python-dateutil" ,python-dateutil) - ("python-geopy" ,python-geopy) - ("python-mock" ,python-mock) - ("python-nose" ,python-nose) - ("python-requests" ,python-requests) - ("python-setuptools-scm" ,python-setuptools-scm) - ("python-pysolr" ,python-pysolr) - ("python-whoosh" ,python-whoosh))) - (home-page "http://haystacksearch.org/") - (synopsis "Pluggable search for Django") - (description "Haystack provides modular search for Django. It features a -unified, familiar API that allows you to plug in different search backends -(such as Solr, Elasticsearch, Whoosh, Xapian, etc.) without having to modify -your code.") - (license license:bsd-3))) - -(define-public python-pysolr - (package - (name "python-pysolr") - (version "3.8.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "pysolr" version)) - (sha256 - (base32 - "06x8q23llzcmkbcadcp4ifv3qdm0pxq3ajmrmvwvrdkxc9vb3v48")))) - (build-system python-build-system) - (arguments - '(#:tests? #f)) ; Tests require network access. - (propagated-inputs - `(("python-requests" ,python-requests))) - (native-inputs - `(("python-setuptools-scm" ,python-setuptools-scm))) - (home-page "https://github.com/django-haystack/pysolr/") - (synopsis "Lightweight python wrapper for Apache Solr") - (description - "Lightweight python wrapper for Apache Solr.") - (license license:bsd-3))) - -(define-public python-geopy - (package - (name "python-geopy") - (version "1.20.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "geopy" version)) - (sha256 - (base32 - "1qih13l4csa3l6kafbcl6q3vvvvc2b7z3b779865jcb2xs8bq6cl")))) - (build-system python-build-system) - (propagated-inputs - `(("python-geographiclib" ,python-geographiclib))) - (native-inputs - `(("python-contextlib2" ,python-contextlib2) - ("python-coverage" ,python-coverage) - ("python-flake8" ,python-flake8) - ("python-isort" ,python-isort) - ("python-mock" ,python-mock) - ("python-pytest" ,python-pytest) - ("python-readme-renderer" ,python-readme-renderer) - ("python-six" ,python-six))) - (home-page "https://github.com/geopy/geopy") - (synopsis "Python Geocoding Toolbox") - (description "Python Geocoding Toolbox") - (license license:expat))) - -(define-public python-geographiclib - (package - (name "python-geographiclib") - (version "1.50") - (source - (origin - (method url-fetch) - (uri (pypi-uri "geographiclib" version)) - (sha256 - (base32 - "0cn6ap5fkh3mkfa57l5b44z3gvz7j6lpmc9rl4g2jny2gvp4dg8j")))) - (build-system python-build-system) - (home-page "https://geographiclib.sourceforge.io/1.50/python/") - (synopsis "Python geodesic routines from GeographicLib") - (description - "This is a python implementation of the geodesic routines in GeographicLib.") - (license license:expat))) - -(define-public python-readme-renderer - (package - (name "python-readme-renderer") - (version "24.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "readme_renderer" version)) - (sha256 - (base32 - "0br0562lnvj339f1nwz4nfl4ay49rw05xkqacigzf9wz4mdza5mv")))) - (build-system python-build-system) - (propagated-inputs - `(("python-bleach" ,python-bleach) - ("python-docutils" ,python-docutils) - ("python-pygments" ,python-pygments) - ("python-six" ,python-six))) - (native-inputs - `(("python-mock" ,python-mock) - ("python-pytest" ,python-pytest))) - (home-page "https://github.com/pypa/readme_renderer") - (synopsis "Render README files in Warehouse") - (description - "Readme Renderer is a library that will safely render arbitrary README -files into HTML. It is designed to be used in Warehouse to render the -@code{long_description} for packages. It can handle Markdown, reStructuredText, -and plain text.") - (license license:asl2.0))) - -(define-public python-django-mailman3 - (package - (name "python-django-mailman3") - (version "1.3.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "django-mailman3" version)) - (sha256 - (base32 - "0wppv1q3jkkg2d66qsygc4dfpvhfcj5i2as2xpqnzf3l3w7dgja1")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (setenv "DJANGO_SETTINGS_MODULE" "django_mailman3.tests.settings_test") - (invoke "django-admin" "test" - "--pythonpath=.")))))) - (propagated-inputs - `(("python-django" ,python-django) - ("python-django-allauth" ,python-django-allauth-gn) - ("python-django-gravatar2" ,python-django-gravatar2) - ("python-mailmanclient" ,python-mailmanclient-3.3) - ("python-pytz" ,python-pytz))) - (native-inputs - `(("python-mock" ,python-mock))) - (home-page "https://gitlab.com/mailman/django-mailman3") - (synopsis "Django library to help interaction with Mailman") - (description - "This package contains libraries and templates for Django-based interfaces -interacting with Mailman.") - (license license:gpl3+))) - -(define-public python-django-allauth-gn - (package - (inherit python-django-allauth) - (name "python-django-allauth") - (version "0.40.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "django-allauth" version)) - (sha256 - (base32 - "12f5gjidcpb7a0d1f601k0c5dcdmb6fg9sfn7xn5j8zfsg29y63a")))) - (arguments - '(#:tests? #f)) ; skip tests for now - (propagated-inputs - `(("python-django" ,python-django) - ("python-openid" ,python-openid) - ("python-requests" ,python-requests) - ("python-requests-oauthlib" ,python-requests-oauthlib))))) - -(define-public python-django-q - (package - (name "python-django-q") - (version "1.0.2") - (source - (origin - (method url-fetch) - (uri (pypi-uri "django-q" version)) - (sha256 - (base32 - "17q7q7xgrdpix4qkv3gkdp1qf5k4zclg1jsacvc4i1ypqrc1y23h")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (setenv "DJANGO_SETTINGS_MODULE" "django_q.tests.settings") - (invoke "django-admin" "test" "django_q.tests" - "--pythonpath=.")))))) - (propagated-inputs - `(("python-arrow" ,python-arrow) - ("python-blessed" ,python-blessed) - ("python-django" ,python-django) - ("python-django-picklefield" ,python-django-picklefield))) - (native-inputs - `(("python-django-redis" ,python-django-redis) - ("python-pytest-django" ,python-pytest-django))) - (home-page "https://django-q.readthedocs.io/") - (synopsis "Multiprocessing distributed task queue for Django") - (description - "Django Q is a native Django task queue, scheduler and worker application -using Python multiprocessing.") - (license license:expat))) - -(define-public python-robot-detection - (package - (name "python-robot-detection") - (version "0.4") - (source - (origin - (method url-fetch) - (uri (pypi-uri "robot-detection" version)) - (sha256 - (base32 - "1xd2jm3yn31bnk1kqzggils2rxj26ylxsfz3ap7bhr3ilhnbg3rx")))) - (build-system python-build-system) - (arguments '(#:tests? #f)) ; Tests not shipped in pypi release. - (propagated-inputs `(("python-six" ,python-six))) - (home-page "https://github.com/rory/robot-detection") - (synopsis "Detect web crawlers") - (description - "@code{robot_detection} is a python module to detect if a given HTTP User -Agent is a web crawler. It uses the list of registered robots from -@url{http://www.robotstxt.org}.") - (license license:gpl3+))) - -(define-public python-rcssmin - (package - (name "python-rcssmin") - (version "1.0.6") - (source - (origin - (method url-fetch) - (uri (pypi-uri "rcssmin" version)) - (sha256 - (base32 - "0w42l4dhxghcz7pj3q7hkxp015mvb8z2cq9sfxbl31npsfavd1ya")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda _ - (invoke "python" "run_tests.py" "tests")))))) - (home-page "http://opensource.perlig.de/rcssmin/") - (synopsis "CSS Minifier") - (description "CSS Minifier") - (license license:asl2.0))) - -(define-public python-rjsmin - (package - (name "python-rjsmin") - (version "1.1.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "rjsmin" version)) - (sha256 - (base32 - "0cmc72rlkvzz8fl89bc83czkx0pcvhzj7yn7m29r8pgnf5fcfpdi")))) - (build-system python-build-system) - (native-inputs - `(("python-pytest" ,python-pytest))) - (home-page "http://opensource.perlig.de/rjsmin/") - (synopsis "Javascript Minifier") - (description "Javascript Minifier") - (license license:asl2.0))) - -(define-public python-blessed - (package - (name "python-blessed") - (version "1.16.1") - (source - (origin - (method url-fetch) - (uri (pypi-uri "blessed" version)) - (sha256 - (base32 - "1yhxgibvjyzccyy2rzmygkq515p7kpyls7x0ymvcyrpj14xph8m2")) - (modules '((guix build utils))) - (snippet - '(begin - ;; Don't get hung up on Windows test failures. - (delete-file "blessed/win_terminal.py") #t)))) - (build-system python-build-system) - (propagated-inputs - `(("python-six" ,python-six) - ("python-wcwidth" ,python-wcwidth))) - (native-inputs - `(("python-mock" ,python-mock) - ("python-pytest" ,python-pytest))) - (home-page "https://github.com/jquast/blessed") - (synopsis "Wrapper around terminal capabilities") - (description - "Blessed is a thin, practical wrapper around terminal styling, screen -positioning, and keyboard input.") - (license license:expat))) - -(define-public python-django-picklefield - (package - (name "python-django-picklefield") - (version "2.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "django-picklefield" version)) - (sha256 - (base32 - "097aljd37ab36jci3phmh8ckrakmk1gpi3kkgl6nq15nn66klwzi")))) - (build-system python-build-system) - (propagated-inputs `(("python-django" ,python-django))) - (native-inputs `(("python-tox" ,python-tox))) - (home-page "https://github.com/gintas/django-picklefield") - (synopsis "Pickled object field for Django") - (description "Pickled object field for Django") - (license license:expat))) - -(define-public python-jinxed - (package - (name "python-jinxed") - (version "1.0.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "jinxed" version)) - (sha256 - (base32 - "1n7vl03rhjd0xhjgbjlh8x9f8yfbhamcwkgvs4jg7g5qj8f0wk89")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (add-before 'check 'set-environment-variables - (lambda* (#:key inputs #:allow-other-keys) - (let ((ncurses (assoc-ref inputs "ncurses"))) - (setenv "TERM" "LINUX") - (setenv "TERMINFO" (string-append ncurses "/share/terminfo")) - #t)))) - #:tests? #f)) ; _curses.error: setupterm: could not find terminal - (native-inputs - `(("ncurses" ,ncurses))) - (home-page - "https://github.com/Rockhopper-Technologies/jinxed") - (synopsis "Jinxed Terminal Library") - (description - "Jinxed is an implementation of a subset of the Python curses library.") - (license license:mpl2.0))) - -(define-public postorius-1.3 - (package - (name "postorius") - (version "1.3.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "postorius" version)) - (sha256 - (base32 - "12aghg862js5sxm61xy7ijjb5ixdlv86vhp3nr8l94yiiq92k8sl")))) - (build-system python-build-system) - (arguments - '(#:phases - (modify-phases %standard-phases - (replace 'check - (lambda* (#:key inputs outputs tests? #:allow-other-keys) - (add-installed-pythonpath inputs outputs) - (if tests? - (invoke "python" "example_project/manage.py" "test" - "--settings=test_settings" "postorius") - #t)))) - #:tests? #f)) ; Tests try to run a mailman instance to test against. - (propagated-inputs - `(("python-django" ,python-django) - ("python-django-mailman3" ,python-django-mailman3) - ("python-mailmanclient" ,python-mailmanclient-3.3) - ("python-readme-renderer" ,python-readme-renderer))) - (native-inputs - `(("python-beautifulsoup4" ,python-beautifulsoup4) - ("python-isort" ,python-isort) - ("python-mock" ,python-mock) - ("python-vcrpy" ,python-vcrpy))) - (home-page "https://gitlab.com/mailman/postorius") - (synopsis "Web user interface for GNU Mailman") - (description - "Postorius is a Django app which provides a web user interface -to access GNU Mailman.") - (license (list license:gpl3+ license:lgpl3+)))) |