aboutsummaryrefslogtreecommitdiff
path: root/gn/packages/mailman.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gn/packages/mailman.scm')
-rw-r--r--gn/packages/mailman.scm1735
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+))))