From 2f1f6082edc52f79501616060fdbf59f17fb1053 Mon Sep 17 00:00:00 2001 From: root Date: Wed, 1 Jan 2020 17:56:36 +0000 Subject: [PATCH] Adding pyspf --- dev-python/pydns/Manifest | 2 + dev-python/pydns/pydns-3.2.1.ebuild | 38 +++++++++++++++++ dev-python/pyspf/Manifest | 2 + dev-python/pyspf/pyspf-2.0.12.ebuild | 35 ++++++++++++++++ mail-filter/pypolicyd-spf/Manifest | 3 ++ mail-filter/pypolicyd-spf/metadata.xml | 11 +++++ .../pypolicyd-spf/pypolicyd-spf-2.0.2.ebuild | 42 +++++++++++++++++++ 7 files changed, 133 insertions(+) create mode 100644 dev-python/pydns/Manifest create mode 100644 dev-python/pydns/pydns-3.2.1.ebuild create mode 100644 dev-python/pyspf/Manifest create mode 100644 dev-python/pyspf/pyspf-2.0.12.ebuild create mode 100644 mail-filter/pypolicyd-spf/Manifest create mode 100644 mail-filter/pypolicyd-spf/metadata.xml create mode 100644 mail-filter/pypolicyd-spf/pypolicyd-spf-2.0.2.ebuild diff --git a/dev-python/pydns/Manifest b/dev-python/pydns/Manifest new file mode 100644 index 0000000..84afb51 --- /dev/null +++ b/dev-python/pydns/Manifest @@ -0,0 +1,2 @@ +DIST py3dns-3.2.1.tar.gz 30691 BLAKE2B 336ed91a3bf8b33db258667ac96eba6df361bb2a8f24c433dbc6754ea32a7284ce0463c392c1392538eed9d8bf9ea3f09400bc08f1970a7c96c52bf072606718 SHA512 22f16c571f9fad02a70a8e0bbbfd802f4f9af23946edb78e15f69f23e57411369274945a1dea5603acae1fc1eb404e5445207c541afb7864a60b92dc4d5477b3 +EBUILD pydns-3.2.1.ebuild 858 BLAKE2B 7a0191676e5d0af6b963d3217abb13813a552a8437d75058c1be2da8e686aca79ff5ab174c47f9aeed9419cffdcffe1f5e7c9f7bcf0410a07a96b5a992093ae6 SHA512 675177b9ec1e5fe7085028097de34eebd68e6401fa5e88b207d8d661c23b592960658ea230f1531eb721a4306bf6353c1838957342b3947b574735bcc1dd2622 diff --git a/dev-python/pydns/pydns-3.2.1.ebuild b/dev-python/pydns/pydns-3.2.1.ebuild new file mode 100644 index 0000000..8be643b --- /dev/null +++ b/dev-python/pydns/pydns-3.2.1.ebuild @@ -0,0 +1,38 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +PYTHON_COMPAT=( python3_{5,6,7} pypy3 ) + +inherit distutils-r1 + +MY_PN="${PN/py/py3}" +MY_P="${MY_PN}-${PV}" +DESCRIPTION="Python DNS (Domain Name System) library" +HOMEPAGE="https://launchpad.net/py3dns" +SRC_URI="https://launchpad.net/${MY_PN}/trunk/${PV}/+download/${MY_P}.tar.gz" + +LICENSE="CNRI" +SLOT="3" +KEYWORDS="amd64 hppa ~ia64 ~ppc ~sparc x86" +IUSE="examples" + +DEPEND="dev-python/setuptools[${PYTHON_USEDEP}]" + +# Tests require network access +RESTRICT="test" + +S="${WORKDIR}/${MY_P}" + +python_test() { + "${EPYTHON}" -m unittest || die "tests failed with ${EPYTHON}" +} + +python_install_all() { + if use examples; then + docinto examples + dodoc -r tests/. tools/. + docompress -x /usr/share/doc/${PF}/examples + fi + distutils-r1_python_install_all +} diff --git a/dev-python/pyspf/Manifest b/dev-python/pyspf/Manifest new file mode 100644 index 0000000..a98e99a --- /dev/null +++ b/dev-python/pyspf/Manifest @@ -0,0 +1,2 @@ +DIST pyspf-2.0.12t.tar.gz 67189 BLAKE2B 40ddecf6e9717da9e496c5852866259f28af11c5e9ef581ef1188b07896bce7abc3ba901063bfea2ec9f89d70e17275b0e2619f23f9dc334628ebb0af084b79c SHA512 1ad23b5dea4aa8edd03b3fd9fc675685bcb0e216474534563c55988df040abd4e2bbc8488bba80d26466877e8b2ec88cbadc2f67eb8c4bf6f26f975d8af81d8d +EBUILD pyspf-2.0.12.ebuild 781 BLAKE2B d52dc11342eab545f9b2b30c2d6c8b5e74777932cd0124aeaed3a351799a62939cf88622aaae1b5df0ede836c53bf0b67cbeee053abb7b55883dbb4bf84af800 SHA512 afa18c7ed08050e5e98de3966a5233e881ee190342406e47a6f7796c3b93992cb1fbbb4a9a28230bae6b880a1778f137a70ecf1ebfd628a920fb550db9d52024 diff --git a/dev-python/pyspf/pyspf-2.0.12.ebuild b/dev-python/pyspf/pyspf-2.0.12.ebuild new file mode 100644 index 0000000..c7a96ef --- /dev/null +++ b/dev-python/pyspf/pyspf-2.0.12.ebuild @@ -0,0 +1,35 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="5" + +PYTHON_COMPAT=( python{2_7,3_5,3_6,3_7} ) +PYTHON_REQ_USE="ipv6?" +inherit distutils-r1 + +DESCRIPTION="Python implementation of the Sender Policy Framework (SPF) protocol" +HOMEPAGE="https://pypi.org/project/pyspf/" +SRC_URI="mirror://pypi/${PN:0:1}/${PN}/${P}t.tar.gz" + +LICENSE="PSF-2" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="ipv6 test" +RESTRICT="!test? ( test )" + +# >=python-3.3 comes with the built-in ipaddress module +RDEPEND="dev-python/authres + >=dev-python/ipaddr-2.1.10 + dev-python/pydns:3" + +DEPEND="test? ( ${RDEPEND} + dev-python/pyyaml )" + +REQUIRED_USE="test? ( ipv6 )" + +python_test() { + pushd test &> /dev/null + "${PYTHON}" testspf.py || die + popd &> /dev/null +} + diff --git a/mail-filter/pypolicyd-spf/Manifest b/mail-filter/pypolicyd-spf/Manifest new file mode 100644 index 0000000..560ba29 --- /dev/null +++ b/mail-filter/pypolicyd-spf/Manifest @@ -0,0 +1,3 @@ +DIST pypolicyd-spf-2.0.2.tar.gz 38546 BLAKE2B 691cd5db37592be0ef0cda41223280e764e83802e37563f4e6c08505731118199c03d27b0bf51cec0556aa946fc6c7465fe09d3c9100c8e2582a4d85ad828495 SHA512 adcc7b30c6922894f9407edd0637b02a138623f4480ec37635475396826b457c835b3ffb599d1985e306770fe5f72404552ed705bd957e63b5c54ca3d8991673 +EBUILD pypolicyd-spf-2.0.2.ebuild 1182 BLAKE2B fbb2d35adf16fb34305e17becd6525429c28761234d6341b2290fff5eafdf22d32098d173b6037dba500852fea75c85aa52d9bf7fa7440513c1829fc743d8cb4 SHA512 aa358d5e7f26c8747309d416ba72b48f3db1ee5350b5abf99e3327a321bdb5782278cfb6de67b779dc2191eeb323092498e64bbd209c8ec21e5ee733d0ef3746 +MISC metadata.xml 356 BLAKE2B e28aba8830da5e0c372cc7090736a5a90c208af79c6fe338e8bf96ef79e17afa05cdabdb48ca172d57fd34203c66ff7e3be4ce4c043b14c0e9694639512a82f3 SHA512 67a8fd46090c3e558e7bf963277e99e11be4d2df97f4a4491a7fbc64a42f89e19af2131d13efec7370df1f27b2eb7385f59e732fae57b6ec67c47f18af8cfc72 diff --git a/mail-filter/pypolicyd-spf/metadata.xml b/mail-filter/pypolicyd-spf/metadata.xml new file mode 100644 index 0000000..9b14091 --- /dev/null +++ b/mail-filter/pypolicyd-spf/metadata.xml @@ -0,0 +1,11 @@ + + + + + mjo@gentoo.org + + + pypolicyd-spf + pypolicyd-spf + + diff --git a/mail-filter/pypolicyd-spf/pypolicyd-spf-2.0.2.ebuild b/mail-filter/pypolicyd-spf/pypolicyd-spf-2.0.2.ebuild new file mode 100644 index 0000000..a24cbd3 --- /dev/null +++ b/mail-filter/pypolicyd-spf/pypolicyd-spf-2.0.2.ebuild @@ -0,0 +1,42 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python3_{5,6,7} ) + +# The built-in ipaddress module handles the parsing of IP addresses. If +# python is built without ipv6 support, then ipaddress can't parse ipv6 +# addresses, and the daemon will crash if it sees an ipv6 SPF record. In +# other words, it's completely broken. +PYTHON_REQ_USE="ipv6" + +inherit distutils-r1 + +DESCRIPTION="Python-based policy daemon for Postfix SPF verification" +HOMEPAGE="https://launchpad.net/${PN}" +SRC_URI="mirror://pypi/p/${PN}/${P}.tar.gz" + +LICENSE="Apache-2.0" +SLOT="0" +KEYWORDS="amd64 x86" +IUSE="" + +DEPEND="dev-python/pyspf" + +RDEPEND="${DEPEND} + dev-python/authres" + +DOCS=( CHANGES policyd-spf.conf.commented README README.per_user_whitelisting ) + +python_prepare_all() { + # The "real" config file mentions the commented one, so we point + # users in the right direction. + local oldconf="policyd-spf.conf.commented" + local newconf="/usr/share/doc/${PF}/${oldconf}" + + sed -i "1 s~ ${oldconf}~,\n# ${newconf}~" policyd-spf.conf \ + || die 'failed to update commented config file path' + + distutils-r1_python_prepare_all +}