summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSam James <sam@gentoo.org>2021-08-16 02:12:53 +0100
committerSam James <sam@gentoo.org>2021-08-16 02:58:08 +0100
commit40e58581693abc41314d828dae36b80f49267e8c (patch)
tree967b7eb2077560c46fad7dc23c91df800d527a75 /net-dns/dnscrypt-proxy
parentnet-analyzer/cbm: drop 0.3.1 (diff)
downloadgentoo-40e58581693abc41314d828dae36b80f49267e8c.tar.gz
gentoo-40e58581693abc41314d828dae36b80f49267e8c.tar.bz2
gentoo-40e58581693abc41314d828dae36b80f49267e8c.zip
net-dns/dnscrypt-proxy: add 2.1.0
Signed-off-by: Sam James <sam@gentoo.org>
Diffstat (limited to 'net-dns/dnscrypt-proxy')
-rw-r--r--net-dns/dnscrypt-proxy/Manifest1
-rw-r--r--net-dns/dnscrypt-proxy/dnscrypt-proxy-2.1.0.ebuild106
-rw-r--r--net-dns/dnscrypt-proxy/files/dnscrypt-proxy-2.1.0-config-full-paths.patch76
3 files changed, 183 insertions, 0 deletions
diff --git a/net-dns/dnscrypt-proxy/Manifest b/net-dns/dnscrypt-proxy/Manifest
index 6dc33183e09e..e799b8395ee6 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 000000000000..19acce661454
--- /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 000000000000..b0ab738a57e5
--- /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'
+
+