diff options
Diffstat (limited to 'net-dns/unbound')
-rw-r--r-- | net-dns/unbound/Manifest | 2 | ||||
-rw-r--r-- | net-dns/unbound/unbound-1.9.3.ebuild | 182 |
2 files changed, 184 insertions, 0 deletions
diff --git a/net-dns/unbound/Manifest b/net-dns/unbound/Manifest index d84b86869332..9c98fe537886 100644 --- a/net-dns/unbound/Manifest +++ b/net-dns/unbound/Manifest @@ -9,8 +9,10 @@ AUX unbound_at.service 304 BLAKE2B 0762200390475ff6a3ca4dc282b3eca3e55cb339528a7 DIST unbound-1.9.0.tar.gz 5662176 BLAKE2B dff42ca4155df1c364bcfeb37c0f9516e7f167cc59bebd1fcf264db6471ad99804323c59e485662e03ab095932f1ca3fe25693a9ba840e9c0ecad69cf31b1a2d SHA512 7dfa8e078507fc24a2d0938eea590389453bacfcac023f1a41af19350ea1f7b87d0c82d7eead121a11068921292a96865e177274ff27ed8b8868445f80f7baf6 DIST unbound-1.9.1.tar.gz 5665254 BLAKE2B 68a643cd17139b34e3651e0e72053b0faacf83ae975fff97493c78742ffa7f0d3dbc0028e96e581e125a3591467ec78ae245a718424c2fb32ea7db23ae945f44 SHA512 5dfac7ce3892f73109fdfe0f81863643b1f4c10cee2d4e2d1a28132f1b9ea4d4f89242e4e6348fdadf998f1c75d53577cbf4f719e98faa1342fc3c5de2e8903d DIST unbound-1.9.2.tar.gz 5676395 BLAKE2B fa42e6afaf7e7fc98dba35fb6ec4513f7f392194e9124f7a4625c9a51f4b2b58bb63ca40a083b9f3583af3636399df02f92ef7cb0ae10404b7258cddfce82adc SHA512 118f0e53ee2d5cfb53ce1f792ca680cc01b5825bf81575e36bd3b24f3bdbe14e6631401bf1bf85eb2ac2a3fa0ee2ee3eb6a28b245d06d48d9975ce4cc260f764 +DIST unbound-1.9.3.tar.gz 5686017 BLAKE2B f96636f4070e48cc5e3eadfb59e28f2ab2fc95a8c5a78af095743ea6d32149aadc486f8da62ea1b38c856f4ba9c2cf041407dceb33396a47c59a19816d67f8c6 SHA512 21e14dc1577adbe502a262d7fbe9aae0cd389cd9c0b822246beadf00f0ee875e268eeb3ce820433cbb01495d6b182c334b34b63b1bc33b08589a230810ccfe90 EBUILD unbound-1.9.0.ebuild 5371 BLAKE2B 210ca5db8c4fedf546d8caeffda1cf94f6366e9befe55be6c07ba273209ff2b5388509341c4540ee65aeedb3f543e0caa7fbac880121ba86f1426e856167689c SHA512 2f78e2c29c5ed3998260ae8803c0a5e9216f63c9001be4f62613e88899e130258b7a53e0072a621e2d436b6491ed688006cb2e8ccdf6e6426eec34d87d358648 EBUILD unbound-1.9.1-r1.ebuild 5406 BLAKE2B 92f267663f8174cf9ed701078773c5e56a2e44456788037ba392df6d4d3aacf7d3fab1447a93271bdf1ededc6bc4e2e010157f782389f48fa3678f2449acedd2 SHA512 761d406627a16bd9ed687c939f57e9b16e42e7aa9de84aa3b03aa11efb4efa9eb9910cbb73ab962dc34184159b46413540d8f6b1071059ac02231eda63190527 EBUILD unbound-1.9.1.ebuild 5383 BLAKE2B 2e5777319dab657dea41e1eb2e6e325ed8dc0d5d6c9e7711ee4cd11e043bc9582cb58fcffa26d1264759fed85debfa8f23b21dde1a936730e47d7ecf1ea2eb0f SHA512 1cc7d4b7deef9d75412caee7633e487e22fea793454eb87554401bf8b1efdaf24b67c2d6a463232cddb4cf1ecd8ab90f998623df0c99e9c8434245f27b202975 EBUILD unbound-1.9.2.ebuild 5406 BLAKE2B 92f267663f8174cf9ed701078773c5e56a2e44456788037ba392df6d4d3aacf7d3fab1447a93271bdf1ededc6bc4e2e010157f782389f48fa3678f2449acedd2 SHA512 761d406627a16bd9ed687c939f57e9b16e42e7aa9de84aa3b03aa11efb4efa9eb9910cbb73ab962dc34184159b46413540d8f6b1071059ac02231eda63190527 +EBUILD unbound-1.9.3.ebuild 5406 BLAKE2B 92f267663f8174cf9ed701078773c5e56a2e44456788037ba392df6d4d3aacf7d3fab1447a93271bdf1ededc6bc4e2e010157f782389f48fa3678f2449acedd2 SHA512 761d406627a16bd9ed687c939f57e9b16e42e7aa9de84aa3b03aa11efb4efa9eb9910cbb73ab962dc34184159b46413540d8f6b1071059ac02231eda63190527 MISC metadata.xml 1357 BLAKE2B 3fccac00ddfac90bb692169a01f19402fd5534f05a88a8981e6e276f535800f50e4ee138f2b815db176e426422e54a2d107219f214cfaeda979ce1b03710f71a SHA512 13ffc57b5a7ddd1a2ab76a4f29d7a5dc2926ed07ae74f74444ecda949aae2a611a1e194d9b482fe145a00021f603b22c7b8a44f1b7901600da261b0bc1f51525 diff --git a/net-dns/unbound/unbound-1.9.3.ebuild b/net-dns/unbound/unbound-1.9.3.ebuild new file mode 100644 index 000000000000..e4d1ceae7af4 --- /dev/null +++ b/net-dns/unbound/unbound-1.9.3.ebuild @@ -0,0 +1,182 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="7" +PYTHON_COMPAT=( python2_7 python3_{5,6,7} ) + +inherit autotools flag-o-matic multilib-minimal python-single-r1 systemd user + +MY_P=${PN}-${PV/_/} +DESCRIPTION="A validating, recursive and caching DNS resolver" +HOMEPAGE="https://unbound.net/ https://nlnetlabs.nl/projects/unbound/about/" +SRC_URI="https://nlnetlabs.nl/downloads/unbound/${MY_P}.tar.gz" + +LICENSE="BSD GPL-2" +SLOT="0/8" # ABI version of libunbound.so +KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~mips ~ppc ~ppc64 ~x86" +IUSE="debug dnscrypt dnstap +ecdsa ecs gost libressl python redis selinux static-libs systemd test threads" +REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )" + +# Note: expat is needed by executable only but the Makefile is custom +# and doesn't make it possible to easily install the library without +# the executables. MULTILIB_USEDEP may be dropped once build system +# is fixed. + +CDEPEND=">=dev-libs/expat-2.1.0-r3[${MULTILIB_USEDEP}] + >=dev-libs/libevent-2.0.21:0=[${MULTILIB_USEDEP}] + libressl? ( >=dev-libs/libressl-2.2.4:0[${MULTILIB_USEDEP}] ) + !libressl? ( >=dev-libs/openssl-1.0.1h-r2:0=[${MULTILIB_USEDEP}] ) + dnscrypt? ( dev-libs/libsodium[${MULTILIB_USEDEP}] ) + dnstap? ( + dev-libs/fstrm[${MULTILIB_USEDEP}] + >=dev-libs/protobuf-c-1.0.2-r1[${MULTILIB_USEDEP}] + ) + ecdsa? ( + !libressl? ( dev-libs/openssl:0[-bindist] ) + ) + python? ( ${PYTHON_DEPS} ) + redis? ( dev-libs/hiredis:= )" + +BDEPEND="virtual/pkgconfig" + +DEPEND="${CDEPEND} + python? ( dev-lang/swig ) + test? ( + net-dns/ldns-utils[examples] + dev-util/splint + app-text/wdiff + ) + systemd? ( sys-apps/systemd )" + +RDEPEND="${CDEPEND} + net-dns/dnssec-root + selinux? ( sec-policy/selinux-bind )" + +# bug #347415 +RDEPEND="${RDEPEND} + net-dns/dnssec-root" + +PATCHES=( + "${FILESDIR}"/${PN}-1.5.7-trust-anchor-file.patch + "${FILESDIR}"/${PN}-1.6.3-pkg-config.patch +) + +S=${WORKDIR}/${MY_P} + +pkg_setup() { + enewgroup unbound + enewuser unbound -1 -1 /etc/unbound unbound + # improve security on existing installs (bug #641042) + # as well as new installs where unbound homedir has just been created + if [[ -d "${ROOT}/etc/unbound" ]]; then + chown --no-dereference --from=unbound root "${ROOT}/etc/unbound" + fi + + use python && python-single-r1_pkg_setup +} + +src_prepare() { + default + + eautoreconf + + # required for the python part + multilib_copy_sources +} + +src_configure() { + [[ ${CHOST} == *-darwin* ]] || append-ldflags -Wl,-z,noexecstack + multilib-minimal_src_configure +} + +multilib_src_configure() { + econf \ + $(use_enable debug) \ + $(use_enable gost) \ + $(use_enable dnscrypt) \ + $(use_enable dnstap) \ + $(use_enable ecdsa) \ + $(use_enable ecs subnet) \ + $(multilib_native_use_enable redis cachedb) \ + $(use_enable static-libs static) \ + $(use_enable systemd) \ + $(multilib_native_use_with python pythonmodule) \ + $(multilib_native_use_with python pyunbound) \ + $(use_with threads pthreads) \ + --disable-flto \ + --disable-rpath \ + --enable-event-api \ + --enable-ipsecmod \ + --enable-tfo-client \ + --enable-tfo-server \ + --with-libevent="${EPREFIX%/}"/usr \ + $(multilib_native_usex redis --with-libhiredis="${EPREFIX%/}/usr" --without-libhiredis) \ + --with-pidfile="${EPREFIX%/}"/run/unbound.pid \ + --with-rootkey-file="${EPREFIX%/}"/etc/dnssec/root-anchors.txt \ + --with-ssl="${EPREFIX%/}"/usr \ + --with-libexpat="${EPREFIX%/}"/usr + + # http://unbound.nlnetlabs.nl/pipermail/unbound-users/2011-April/001801.html + # $(use_enable debug lock-checks) \ + # $(use_enable debug alloc-checks) \ + # $(use_enable debug alloc-lite) \ + # $(use_enable debug alloc-nonregional) \ +} + +multilib_src_install_all() { + use python && python_optimize + + newinitd "${FILESDIR}"/unbound-r1.initd unbound + newconfd "${FILESDIR}"/unbound-r1.confd unbound + + systemd_dounit "${FILESDIR}"/unbound.service + systemd_dounit "${FILESDIR}"/unbound.socket + systemd_newunit "${FILESDIR}"/unbound_at.service "unbound@.service" + systemd_dounit "${FILESDIR}"/unbound-anchor.service + + dodoc doc/{README,CREDITS,TODO,Changelog,FEATURES} + + # bug #315519 + dodoc contrib/unbound_munin_ + + docinto selinux + dodoc contrib/selinux/* + + exeinto /usr/share/${PN} + doexe contrib/update-anchor.sh + + # create space for auto-trust-anchor-file... + keepdir /etc/unbound/var + # ... and point example config to it + sed -i \ + -e '/# auto-trust-anchor-file:/s,/etc/dnssec/root-anchors.txt,/etc/unbound/var/root-anchors.txt,' \ + "${ED%/}/etc/unbound/unbound.conf" || \ + die + + # Used to store cache data + keepdir /var/lib/${PN} + fowners root:unbound /var/lib/${PN} + fperms 0750 /var/lib/${PN} + + find "${ED}" -name '*.la' -delete || die + if ! use static-libs ; then + find "${ED}" -name "*.a" -delete || die + fi +} + +pkg_postinst() { + # make var/ writable by unbound + if [[ -d "${EROOT%/}/etc/unbound/var" ]]; then + chown --no-dereference --from=root unbound: "${EROOT%/}/etc/unbound/var" + fi + + einfo "" + einfo "If you want unbound to automatically update the root-anchor file for DNSSEC validation" + einfo "set 'auto-trust-anchor-file: ${EROOT%/}/etc/unbound/var/root-anchors.txt' in ${EROOT%/}/etc/unbound/unbound.conf" + einfo "and run" + einfo "" + einfo " su -s /bin/sh -c '${EROOT%/}/usr/sbin/unbound-anchor -a ${EROOT%/}/etc/unbound/var/root-anchors.txt' unbound" + einfo "" + einfo "as root to create it initially before starting unbound for the first time after enabling this." + einfo "" +} |