commit:     40e58581693abc41314d828dae36b80f49267e8c
Author:     Sam James <sam <AT> gentoo <DOT> org>
AuthorDate: Mon Aug 16 01:12:53 2021 +0000
Commit:     Sam James <sam <AT> gentoo <DOT> org>
CommitDate: Mon Aug 16 01:58:08 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=40e58581

net-dns/dnscrypt-proxy: add 2.1.0

Signed-off-by: Sam James <sam <AT> gentoo.org>

 net-dns/dnscrypt-proxy/Manifest                    |   1 +
 net-dns/dnscrypt-proxy/dnscrypt-proxy-2.1.0.ebuild | 106 +++++++++++++++++++++
 .../dnscrypt-proxy-2.1.0-config-full-paths.patch   |  76 +++++++++++++++
 3 files changed, 183 insertions(+)

diff --git a/net-dns/dnscrypt-proxy/Manifest b/net-dns/dnscrypt-proxy/Manifest
index 6dc33183e09..e799b8395ee 100644
--- a/net-dns/dnscrypt-proxy/Manifest
+++ b/net-dns/dnscrypt-proxy/Manifest
@@ -1 +1,2 @@
 DIST dnscrypt-proxy-2.0.45.tar.gz 2721610 BLAKE2B 
cddeafec2a2fa8179b722a1b4fe8527bcb3991f5d9e04e31667ea8c38deda5b8c9a3c3a3c16e4e2f5d1bfdb5f8d540c6d61273c34df27f4a78215736b240846f
 SHA512 
becfe3c2d4567725e6b7e973647163e32dd2eaae361087bb05c90b6ddc3b0db0891c2725f6b5c255b8965990832bad53bd6ef137be54a342f46594f3633fe47a
+DIST dnscrypt-proxy-2.1.0.tar.gz 6248378 BLAKE2B 
6b0db8eae8bd380634a86ee2026fb6a3f64d0874a77633f9b8ef46bd37601ebf8d9163516b5ccc371d5354023d5c5c542384718aa885dd1f99809a7b98df5de2
 SHA512 
201a2741f4703872901fa9c045323444d2939d662316e0026f7aa33c7136e45a564225106884ed80522be5247e128c70ced176c83333ddaacc66dc0f87c74029

diff --git a/net-dns/dnscrypt-proxy/dnscrypt-proxy-2.1.0.ebuild 
b/net-dns/dnscrypt-proxy/dnscrypt-proxy-2.1.0.ebuild
new file mode 100644
index 00000000000..19acce66145
--- /dev/null
+++ b/net-dns/dnscrypt-proxy/dnscrypt-proxy-2.1.0.ebuild
@@ -0,0 +1,106 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+EGO_PN="github.com/DNSCrypt/${PN}"
+
+inherit fcaps go-module systemd
+
+if [[ ${PV} == 9999 ]]; then
+       inherit git-r3
+       EGIT_REPO_URI="https://${EGO_PN}.git";
+else
+       SRC_URI="https://${EGO_PN}/archive/${PV}.tar.gz -> ${P}.tar.gz"
+       KEYWORDS="~amd64 ~arm ~arm64 ~ppc64 ~x86"
+fi
+
+DESCRIPTION="A flexible DNS proxy, with support for encrypted DNS protocols"
+HOMEPAGE="https://github.com/DNSCrypt/dnscrypt-proxy";
+
+LICENSE="Apache-2.0 BSD ISC MIT MPL-2.0"
+SLOT="0"
+IUSE="+pie"
+
+BDEPEND=">=dev-lang/go-1.13"
+RDEPEND="
+       acct-group/dnscrypt-proxy
+       acct-user/dnscrypt-proxy
+"
+
+FILECAPS=( cap_net_bind_service+ep usr/bin/dnscrypt-proxy )
+
+PATCHES=(
+       "${FILESDIR}/${PN}-2.1.0-config-full-paths.patch"
+)
+
+src_compile() {
+       pushd "${PN}" >/dev/null || die
+       go build -v -x -mod=readonly -mod=vendor -buildmode="$(usex pie pie 
default)" || die
+       popd >/dev/null || die
+}
+
+src_test() {
+       cd "${PN}" || die
+       go test -mod=vendor -buildmode="$(usex pie pie default)" || die "Failed 
to run tests"
+}
+
+src_install() {
+       pushd "${PN}" >/dev/null || die
+
+       dobin dnscrypt-proxy
+
+       insinto /etc/dnscrypt-proxy
+       newins example-dnscrypt-proxy.toml dnscrypt-proxy.toml
+       doins example-{allowed,blocked}-{ips.txt,names.txt}
+       doins example-{cloaking-rules.txt,forwarding-rules.txt}
+
+       popd >/dev/null || die
+
+       insinto /usr/share/dnscrypt-proxy
+       doins -r "utils/generate-domains-blocklist/."
+
+       newinitd "${FILESDIR}"/dnscrypt-proxy.initd dnscrypt-proxy
+       newconfd "${FILESDIR}"/dnscrypt-proxy.confd dnscrypt-proxy
+
+       systemd_newunit "${FILESDIR}"/dnscrypt-proxy.service 
dnscrypt-proxy.service
+       systemd_newunit "${FILESDIR}"/dnscrypt-proxy.socket 
dnscrypt-proxy.socket
+
+       insinto /etc/logrotate.d
+       newins "${FILESDIR}"/dnscrypt-proxy.logrotate dnscrypt-proxy
+
+       einstalldocs
+}
+
+pkg_postinst() {
+       fcaps_pkg_postinst
+       go-module_pkg_postinst
+
+       if ! use filecaps; then
+               ewarn "'filecaps' USE flag is disabled"
+               ewarn "${PN} will fail to listen on port 53"
+               ewarn "please do one the following:"
+               ewarn "1) re-enable 'filecaps'"
+               ewarn "2) change port to > 1024"
+               ewarn "3) configure to run ${PN} as root (not recommended)"
+               ewarn
+       fi
+
+       if systemd_is_booted || has_version sys-apps/systemd; then
+               elog "Using systemd socket activation may cause issues with 
speed"
+               elog "latency and reliability of ${PN} and is discouraged by 
upstream"
+               elog "Existing installations advised to disable 
'dnscrypt-proxy.socket'"
+               elog "It is disabled by default for new installations"
+               elog "check "$(systemd_get_systemunitdir)/${PN}.service" for 
details"
+               elog
+
+       fi
+
+       elog "After starting the service you will need to update your"
+       elog "/etc/resolv.conf and replace your current set of resolvers"
+       elog "with:"
+       elog
+       elog "nameserver 127.0.0.1"
+       elog
+       elog "Also see https://github.com/DNSCrypt/${PN}/wiki";
+}

diff --git 
a/net-dns/dnscrypt-proxy/files/dnscrypt-proxy-2.1.0-config-full-paths.patch 
b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy-2.1.0-config-full-paths.patch
new file mode 100644
index 00000000000..b0ab738a57e
--- /dev/null
+++ b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy-2.1.0-config-full-paths.patch
@@ -0,0 +1,76 @@
+diff --git a/dnscrypt-proxy/example-dnscrypt-proxy.toml 
b/dnscrypt-proxy/example-dnscrypt-proxy.toml
+index e180a73..bc330dd 100644
+--- a/dnscrypt-proxy/example-dnscrypt-proxy.toml
++++ b/dnscrypt-proxy/example-dnscrypt-proxy.toml
+@@ -341,7 +341,7 @@ reject_ttl = 10
+ 
+ ## See the `example-forwarding-rules.txt` file for an example
+ 
+-# forwarding_rules = 'forwarding-rules.txt'
++# forwarding_rules = '/etc/dnscrypt-proxy/forwarding-rules.txt'
+ 
+ 
+ 
+@@ -355,7 +355,7 @@ reject_ttl = 10
+ ##
+ ## See the `example-cloaking-rules.txt` file for an example
+ 
+-# cloaking_rules = 'cloaking-rules.txt'
++# cloaking_rules = '/etc/dnscrypt-proxy/cloaking-rules.txt'
+ 
+ ## TTL used when serving entries in cloaking-rules.txt
+ 
+@@ -408,7 +408,7 @@ cache_neg_max_ttl = 600
+ ## check for connectivity and captive portals, along with hard-coded
+ ## IP addresses to return.
+ 
+-# map_file = 'example-captive-portals.txt'
++# map_file = '/etc/dnscrypt-proxy/example-captive-portals.txt'
+ 
+ 
+ 
+@@ -438,8 +438,8 @@ cache_neg_max_ttl = 600
+ ## Certificate file and key - Note that the certificate has to be trusted.
+ ## See the documentation (wiki) for more information.
+ 
+-# cert_file = 'localhost.pem'
+-# cert_key_file = 'localhost.pem'
++# cert_file = '/etc/dnscrypt-proxy/localhost.pem'
++# cert_key_file = '/etc/dnscrypt-proxy/localhost.pem'
+ 
+ 
+ 
+@@ -688,13 +688,13 @@ cache_neg_max_ttl = 600
+ 
+   # [sources.'odoh-servers']
+   #   urls = 
['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/odoh-servers.md',
 'https://download.dnscrypt.info/resolvers-list/v3/odoh-servers.md', 
'https://ipv6.download.dnscrypt.info/resolvers-list/v3/odoh-servers.md', 
'https://download.dnscrypt.net/resolvers-list/v3/odoh-servers.md']
+-  #   cache_file = 'odoh-servers.md'
++  #   cache_file = '/var/cache/dnscrypt-proxy/odoh-servers.md'
+   #   minisign_key = 
'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
+   #   refresh_delay = 24
+   #   prefix = ''
+   # [sources.'odoh-relays']
+   #   urls = 
['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/odoh-relays.md',
 'https://download.dnscrypt.info/resolvers-list/v3/odoh-relays.md', 
'https://ipv6.download.dnscrypt.info/resolvers-list/v3/odoh-relays.md', 
'https://download.dnscrypt.net/resolvers-list/v3/odoh-relays.md']
+-  #   cache_file = 'odoh-relays.md'
++  #   cache_file = '/var/cache/dnscrypt-proxy/odoh-relays.md'
+   #   minisign_key = 
'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
+   #   refresh_delay = 24
+   #   prefix = ''
+@@ -704,7 +704,7 @@ cache_neg_max_ttl = 600
+   # [sources.quad9-resolvers]
+   #   urls = ['https://www.quad9.net/quad9-resolvers.md']
+   #   minisign_key = 
'RWQBphd2+f6eiAqBsvDZEBXBGHQBJfeG6G+wJPPKxCZMoEQYpmoysKUN'
+-  #   cache_file = 'quad9-resolvers.md'
++  #   cache_file = '/var/cache/dnscrypt-proxy/quad9-resolvers.md'
+   #   prefix = 'quad9-'
+ 
+   ## Another example source, with resolvers censoring some websites not 
appropriate for children
+@@ -712,7 +712,7 @@ cache_neg_max_ttl = 600
+ 
+   #  [sources.'parental-control']
+   #    urls = 
['https://raw.githubusercontent.com/DNSCrypt/dnscrypt-resolvers/master/v3/parental-control.md',
 'https://download.dnscrypt.info/resolvers-list/v3/parental-control.md', 
'https://ipv6.download.dnscrypt.info/resolvers-list/v3/parental-control.md', 
'https://download.dnscrypt.net/resolvers-list/v3/parental-control.md']
+-  #    cache_file = 'parental-control.md'
++  #    cache_file = '/var/cache/dnscrypt-proxy/parental-control.md'
+   #    minisign_key = 
'RWQf6LRCGA9i53mlYecO4IzT51TGPpvWucNSCh1CBM0QTaLn73Y7GFO3'
+ 
+ 

Reply via email to