summaryrefslogtreecommitdiff
path: root/net-dns/dnscrypt-proxy
diff options
context:
space:
mode:
authorV3n3RiX <venerix@redcorelinux.org>2017-11-10 00:43:02 +0000
committerV3n3RiX <venerix@redcorelinux.org>2017-11-10 00:43:02 +0000
commita5332b59346f7cbf0fdbd148b54aa8a84aaf8190 (patch)
treee6d8d3589fcd01fbc3f1286185639163daa81424 /net-dns/dnscrypt-proxy
parentfceeaf01a28ee71065cf3798b70b77d3bc4ef199 (diff)
gentoo resync : 10.11.2017
Diffstat (limited to 'net-dns/dnscrypt-proxy')
-rw-r--r--net-dns/dnscrypt-proxy/Manifest9
-rw-r--r--net-dns/dnscrypt-proxy/dnscrypt-proxy-1.9.5.ebuild72
-rw-r--r--net-dns/dnscrypt-proxy/files/dnscrypt-proxy.conf242
-rw-r--r--net-dns/dnscrypt-proxy/files/dnscrypt-proxy.confd-r11
-rw-r--r--net-dns/dnscrypt-proxy/files/dnscrypt-proxy.initd-r111
-rw-r--r--net-dns/dnscrypt-proxy/files/dnscrypt-proxy.service-r118
-rw-r--r--net-dns/dnscrypt-proxy/files/dnscrypt-proxy.socket-r19
-rw-r--r--net-dns/dnscrypt-proxy/metadata.xml19
8 files changed, 379 insertions, 2 deletions
diff --git a/net-dns/dnscrypt-proxy/Manifest b/net-dns/dnscrypt-proxy/Manifest
index bc4feecda92c..8b16afce1a28 100644
--- a/net-dns/dnscrypt-proxy/Manifest
+++ b/net-dns/dnscrypt-proxy/Manifest
@@ -1,8 +1,15 @@
+AUX dnscrypt-proxy.conf 8912 SHA256 8b3973816426746eda4f92847a75ecec0113a13b520bef78370186fd3dc3d545 SHA512 1e45f38a46383af14695cd44531335801ae315d819e9593e931be0fd513059c87ddfc9128158a532c6bc26cf113635c9630d8694764dff5a46a6a98c5ea8b42a WHIRLPOOL 966d99a709b82ccfdbf944fddaa48969810323ef8a2883adf5d610bb49c42fa4c3e8517abf9bcd2bbfd0c749065d1ef2968ba8e19c012949a37617d7f8fe6b58
AUX dnscrypt-proxy.confd 286 SHA256 11d635f9a504899e450e8f742952b3a736a5fc7da61eeff83eba416f3618c304 SHA512 7135d5fccf3b61981a1d085460f256d23cc63a28acf327f3b87ffed2ee3eb55ecad7703c9d4e4825bf5639d7469366933ff120ef0e7914cc756db829ce0f3d9d WHIRLPOOL 5d1938a9fade6a7e5f8dc0993a3dce6c46f47fde27badbc05d5dbda0273aacdfc861d36f5d82c351cb4214670b2d8113c5d70e0add2caa6492f63b3ef4ef19ba
+AUX dnscrypt-proxy.confd-r1 41 SHA256 38ef436a17975031974166b32fe98ccb78e13c901a753d0e1af5c73b8e1831be SHA512 2f381c21e92a8f74d47f6c5d3d18bcc32a2713d3b7d82f260d8e2770bfb6aea0a46f8d957796c64d02e6a0445f92c31b83b29724b8004ba9fcc7f6fcc93afaf3 WHIRLPOOL e55ce9cea3ffea31d098165699db000bf8c1535d02c6901c0799ad724d95b74c41d1ea0330c3ab12173dfefb3732cf286c0650a0055311677421867aa037c164
AUX dnscrypt-proxy.initd 1264 SHA256 48ea1cc31b5c13d3b4fd04cf1b16a8b6a565e5ec60a639a0290459874d3495a9 SHA512 c0aeb6410679ebd277c9c4788f244c8b0a3a8aa04603fb9ccec506fa324c16489cd9d25d8ebfa0aed7324abb018a19f126d8d57fb798cfedc55035dfc45c5d99 WHIRLPOOL fff54ab455eafa04774aa1302fcf2d93858dddc949adafc69c21c658add6158b7831f36f55554662bf71101afbbadd918ef4325ac438c8023e706d176ec526e3
+AUX dnscrypt-proxy.initd-r1 258 SHA256 f7dd88344479ebaa945eb9f01f14649e71ebfdba1ac56eeed7a46ea6c43c1f0a SHA512 700849b9a0b8a3a224d0c149091937f751461bb42c7ac4a4bccecf28d9a7b64dd2f47601bee1f8d5c08bdfad2defdcab0c0bc22c7393873612f56d78cd0edc6a WHIRLPOOL 311d5b2d223ca845ada6b0dcb1e64d2f2763cd505a1452c4f39322ad3fe174a77a14fbad9bcdc61329f94b38b9095a6e6a2885b104c1e9ff7b145c379de5c938
AUX dnscrypt-proxy.service 662 SHA256 85dc6e5dc60b2da75c891c0ea7670d9067886b9b71c6e310014d7676d7b5b453 SHA512 4e018ec5f586e60ad1b2c16719ad56dc63184122861032dcccbe599f2090869d7193ebe4e0c1845d6005627902a25bf13ab26b5ad0bdf2c3ef8ae7c57a187798 WHIRLPOOL cec5860a2dbed5be9b2c8f33d8094535207c0b93b7f49cbd29e50bf420ab0c6a90db055468ceeb44eb9a0087e304636f7395311b91a1a297a9f7010586076f73
+AUX dnscrypt-proxy.service-r1 445 SHA256 8b746ea12b1bd650efa011250a191420bbe1ab1f45a06caf98c4c34e2b8745d8 SHA512 ff226e1f6416de04b42828ab89a0df48b4eac1385f489ccad594b5e07cbceb57249006951f25237a55effdd2acaf8ce7e0fb2c36fc17799f963d506696b0cb4f WHIRLPOOL 6bb1857232730a2c48c2db065efca6bc2e56929b42d3278fb53432046659605d9a5e0a3f9678cb24d42ee7f668baaa71a6343ec14a02f26bb48827da6a5c38c2
+AUX dnscrypt-proxy.socket-r1 152 SHA256 108969567cecfb3b56b7b151fa070635242d6e863078cd69ed8269bcf227834a SHA512 920014c202344726e645f3bfa5def0f194c215cc0ce6e45750e82cee3434399497b9ad3fb5268afb1823689ced0fa8d177d6411b3153661b97fbd55984752a87 WHIRLPOOL 6481cdc11331af456debfc7a5ac4f09749c6ec7cc3276bd76c2c347ae594f08ca8fddbc13cf1793428d1b53132aa2b083f2da7a978b22de4b49e0fd39e473596
DIST dnscrypt-proxy-1.9.4.tar.gz 1660333 SHA256 40543efbcd56033ac03a1edf4581305e8c9bed4579ac55e6279644f07c315307 SHA512 b19103dc39655f199c85ec69daab949d07adc12e64411d2323308afb398e6ac6563bbc17f2e317bfe1e6c95c810487d8d62da3f4c7f7257bdcf837cd0390bfb0 WHIRLPOOL 4e9494c2765ecf9d625f7b44c0f58c40e491e1334a58552111730ecd3b95cba10667b2bfa2b29e291ccfa97a5678bbbc398dd14e888914bfddc6f7e61bac4a3a
+DIST dnscrypt-proxy-1.9.5.tar.bz2 1290573 SHA256 e89f5b9039979ab392302faf369ef7593155d5ea21580402a75bbc46329d1bb6 SHA512 84c0f7587521b3a198292cf20dd71cb592ccf8a9e003abbc62c5ca112f6c5ed27c49b1642cf91f403d52b4147e25f24af540b65cecfcf93814338329097df836 WHIRLPOOL dec0090456a36fcc2b6883c1510c09d7a17459f022b0957eccf5f48272a305f546a760f9fb5c598b3fe86747ff16fac9b6767e3422f999dfca5fb717cd926ea1
EBUILD dnscrypt-proxy-1.9.4-r1.ebuild 1449 SHA256 839d603cc0d1901169d5d64413d73537fdc513fdbf87f5c131b5741231b927e2 SHA512 c17b1b23bd87deb1d6167ca01920d3cd5f9b804a70606af0dc23060e7e9b568b9539fe6d06a92efbf6665b8d4cbbd485827c2ccc3ba82b93e6e944c26f190aa7 WHIRLPOOL bdbc4ebd9346210cce61cdc935ff4b16238d348f90ac9b31e7895718b0b5d43e3a3f7b37067fb43b5ac283dbc459a775149a5cd93425725a92c4ba673c63a7af
+EBUILD dnscrypt-proxy-1.9.5.ebuild 1815 SHA256 98e5a4e79c74b3ccaa7df2dc4eb43fb691421294edacc3197a955ec30706fd6b SHA512 85855f51faed4a97d8c43ae60dbdc643af9fdf04907e41bb71905ff34650a7a5cf3bfb628cdcc34358263aafec97190531706dfee0ae5afbd01ebe28a1717df8 WHIRLPOOL 0e0a13894e820f912c828a177c5e62601fa899ae6632f21c01bc0ba938fae4afb13c9e35af09bfb1d941d42fada0abe6a041e045b55fe208f80c7f2e53308930
MISC ChangeLog 4892 SHA256 a8bcfebf1b7b7a44dfeaeef7f9b72549c95c8161ade6eb5cc9926739177344b0 SHA512 2a2f487e3caffccfed8474d0ebcb743a67c05d1c014156c53dd30db8d46f9717c2f68d22e28abf456f37caa7326e76a7d0b9366a5edba7eee46e6acc41ddc174 WHIRLPOOL 8eed7a6671e7d5a96859e310efa37858b7ac96a732d29b4274f32fc3bc3a1530e5eaf062a034db3a70b41117eb089452d12a031b2d908adafa3ab4d46e1fe3c7
MISC ChangeLog-2015 666 SHA256 2b0c5a63391baf5c07350fc1313eb7e63f1ced626d2a0e8b682a9d013639dba5 SHA512 c3f372befcfb26fd816fedf422e3d56237e4c3a0a4c21aac865fc170683c994b4d53092cb15cc1e136ecd556d7dca35301636758f27b59854857ba58c1a05bbd WHIRLPOOL c5ee0cb599a1cc2fb40dea031b2858a506cdd5ba40d4929a599e78e2b423ad97e9b7579847ce75ab74aa087a5d975bf8763bbe6ca68e356f129787eac60a4012
-MISC metadata.xml 660 SHA256 190935b21a48bd5b8ed03dbc8eaf05503026564b34316eb71d8ed06188859f12 SHA512 e067fbb9bf3872f4f58f42ce389d950e3972bfafcdc22257ebc6b09ce8ed2770a11e1389b0c5885a5f39515f96337bdf1fc3c893e02e51d1cb7c980db7a30b54 WHIRLPOOL 7f1c614a9174bdfdbed48be155c42affc84c624dcb477a62d731c4e6580d3f33bdb458c158b5b938a0a7851711f09f07e72139265b73e426e871e582ae02698d
+MISC metadata.xml 1224 SHA256 cb6fe69fbc1f0d63c82605f8e59826c9caaa85f845231f0fef878ac50d6f227c SHA512 c0f3da90c86a751f65222503131f1ef1185f557946fba95fa52fc2c81777b65a22e1de687309ebab1b57ee12ae8dc91aeb1bce8484ec4d08faaacabf0ec7f9aa WHIRLPOOL 7d0e51cbddc88be1671de2f1f1044dfb2599f5becf6e70ed4cdd776fff7191753108c3d4b6a75750747a45a9c5bae3aac559ea3172787a97ac5c0e186470a2eb
diff --git a/net-dns/dnscrypt-proxy/dnscrypt-proxy-1.9.5.ebuild b/net-dns/dnscrypt-proxy/dnscrypt-proxy-1.9.5.ebuild
new file mode 100644
index 000000000000..ee775460c6db
--- /dev/null
+++ b/net-dns/dnscrypt-proxy/dnscrypt-proxy-1.9.5.ebuild
@@ -0,0 +1,72 @@
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=6
+
+inherit systemd user
+
+DESCRIPTION="A tool for securing communications between a client and a DNS resolver"
+HOMEPAGE="https://dnscrypt.org"
+SRC_URI="https://download.dnscrypt.org/${PN}/${P}.tar.bz2"
+
+LICENSE="ISC"
+SLOT="0"
+KEYWORDS="~amd64 ~arm ~x86"
+IUSE="hardened libressl +plugins ssl systemd"
+
+RDEPEND="
+ dev-libs/libsodium
+ net-libs/ldns
+ ssl? (
+ !libressl? ( dev-libs/openssl:0= )
+ libressl? ( dev-libs/libressl:0= )
+ )
+ systemd? ( sys-apps/systemd )"
+DEPEND="${RDEPEND}
+ virtual/pkgconfig"
+
+pkg_setup() {
+ enewgroup dnscrypt
+ enewuser dnscrypt -1 -1 /var/empty dnscrypt
+}
+
+src_configure() {
+ econf \
+ $(use_enable hardened pie) \
+ $(use_enable plugins) \
+ $(use_enable ssl openssl) \
+ $(use_with systemd)
+}
+
+src_install() {
+ local DOCS=( AUTHORS ChangeLog NEWS README* THANKS *txt )
+
+ default
+
+ newinitd "${FILESDIR}"/${PN}.initd-r1 ${PN}
+ newconfd "${FILESDIR}"/${PN}.confd-r1 ${PN}
+ systemd_newunit "${FILESDIR}"/${PN}.service-r1 ${PN}.service
+ systemd_newunit "${FILESDIR}"/${PN}.socket-r1 ${PN}.socket
+ insinto /etc
+ doins "${FILESDIR}"/${PN}.conf /etc
+}
+
+pkg_preinst() {
+ # ship working default configuration for systemd users
+ if use systemd; then
+ sed -i 's/Daemonize yes/Daemonize no/g' "${D}"/etc/${PN}.conf
+ fi
+}
+
+pkg_postinst() {
+ 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
+ use systemd && elog "with systemd dnscrypt-proxy ignores LocalAddress setting in the config file"
+ use systemd && elog "edit dnscrypt-proxy.socket if you need to change the defaults"
+ elog
+ elog "Also see https://github.com/jedisct1/dnscrypt-proxy#usage."
+}
diff --git a/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.conf b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.conf
new file mode 100644
index 000000000000..52487c09c878
--- /dev/null
+++ b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.conf
@@ -0,0 +1,242 @@
+######################################################
+# #
+# Sample configuration file for dnscrypt-proxy #
+# #
+######################################################
+
+
+############## Resolver settings ##############
+
+## [CHANGE THIS] Short name of the resolver to use
+## Usually the only thing you need to change in this configuration file.
+## This corresponds to the first column in the dnscrypt-resolvers.csv file.
+## Alternatively, "random" (without quotes) picks a random random resolver
+## accessible over IPv4, that doesn't log and supports DNSSEC.
+
+ResolverName random
+
+
+## Full path to the list of available DNSCrypt resolvers (dnscrypt-resolvers.csv)
+## An up-to-date list is available here:
+## https://download.dnscrypt.org/dnscrypt-proxy/dnscrypt-resolvers.csv
+## and the dnscrypt-update-resolvers.sh script can be used in order to
+## automatically download and verify updates.
+
+ResolversList /usr/share/dnscrypt-proxy/dnscrypt-resolvers.csv
+
+
+## Manual settings, only for a custom resolver not present in the CSV file
+
+#ProviderName 2.dnscrypt.some.provider.name.tld
+#ProviderKey 0000:1111:2222:3333:4444:5555:6666:7777:8888:9999:AAAA:BBBB:CCCC:DDDD:EEEE:FFFF
+#ResolverAddress 111.222.333.444:56789
+
+
+
+############## Process options ##############
+
+## [NOT AVAILABLE ON WINDOWS] Run the proxy as a background process.
+## Unless you are using systemd, you probably want to change this to "yes"
+## after having verified that the rest of the configuration works as expected.
+
+Daemonize yes
+
+
+## Write the PID number to a file
+
+PidFile /run/dnscrypt-proxy.pid
+
+
+## [NOT AVAILABLE ON WINDOWS] Start the process, bind the required ports, and
+## run the server as a less-privileged system user.
+## The value for this parameter is a user name.
+
+User dnscrypt
+
+
+############## Network/protocol settings ##############
+
+## Local address and port to listen to.
+## A 127.0.0.x address is recommended for local use, but 0.0.0.0 or
+## a specific interface address can be used on a router, or to
+## configure a single machine to act as a DNS proxy for different
+## devices.
+## If the socket is created by systemd, the proxy cannot change the address
+## using this option. You should edit systemd's dnscrypt-proxy.socket file
+## instead.
+
+LocalAddress 127.0.0.1:53
+
+
+## Cache DNS responses to avoid outgoing traffic when the same queries
+## are repeated multiple times in a row.
+
+LocalCache on
+
+
+## Creates a new key pair for every query.
+## This prevents logging servers from correlating client public keys with
+## IP addresses. However, this option implies extra CPU load, and is not
+## very useful with trusted/non-logging servers.
+
+EphemeralKeys off
+
+
+## Maximum number of active requests waiting for a response.
+## Keep it reasonable relative to the expected number of clients.
+
+# MaxActiveRequests 250
+
+
+## This is the maximum payload size allowed when using the UDP protocol.
+## The default is safe, and rarely needs to be changed.
+
+# EDNSPayloadSize 1252
+
+
+## Ignore the time stamps when checking the certificates
+## Do not enable this option ever, unless you know that you need it.
+
+# IgnoreTimestamps no
+
+
+## Do not send queries using UDP. Only use TCP.
+## Even if some resolvers mitigate this, DNS over TCP is almost always slower
+## than UDP and doesn't offer additional security.
+## Only enable this option if UDP doesn't work on your network.
+
+# TCPOnly no
+
+
+## Forward queries for specific zones to one or more non-DNSCrypt resolvers.
+## For instance, this can be used to redirect queries for local domains to
+## the router, or queries for an internal domain to an internal DNS server.
+## Multiple whitespace-delimited zones and IP addresses can be specified.
+## Do not enable this unless you absolutely know you need it.
+## If you see useless queries to these zones, you'd better block them with
+## the BlackList feature instead of sending them in clear text to the router.
+## This uses a plugin that requires dnscrypt-proxy to be compiled with
+## the ldns library.
+
+#Forward domains:"localdomain" to:"192.168.0.1"
+
+
+############## Logging ##############
+
+## Log the received DNS queries to a file, so you can watch in real-time what
+## is happening on the network.
+## The value for this parameter is a full path to the log file.
+## The file name can be prefixed with ltsv: in order to store logs using the
+## LTSV format (ex: ltsv:/tmp/dns-queries.log).
+
+# QueryLogFile /tmp/dns-queries.log
+
+
+## Log file to write server errors and information to.
+## If you use this tool for privacy, keeping logs of any kind is usually not
+## a good idea.
+
+# LogFile /var/log/dnscrypt-proxy.log
+
+
+## Don't log events with priority above this log level after the service has
+## been started up. Default is 6.
+## Valid values are between 0 (critical) to 7 (debug-level messages).
+
+# LogLevel 6
+
+
+## [NOT AVAILABLE ON WINDOWS] Send server logs to the syslog daemon
+## Log entries can optionally be prefixed with a string.
+
+Syslog on
+# SyslogPrefix dnscrypt
+
+
+
+############## Local filtering ##############
+
+## If your network doesn't support IPv6, chances are that your
+## applications are still constantly trying to resolve IPv6 addresses,
+## causing unnecessary slowdowns.
+## This causes the proxy to immediately reply to IPv6 requests,
+## without having to send a useless request to upstream resolvers, and
+## having to wait for a response.
+## This uses a plugin that requires dnscrypt-proxy to be compiled with
+## the ldns library.
+
+BlockIPv6 no
+
+
+## Want to filter ads, malware, sensitive or inappropriate websites and
+## domain names? This feature can block lists of IP addresses and names
+## matching a list of patterns. The list of rules remains private, and
+## the filtering process directly happens on your own network. In order
+## to filter IP addresses, the list of IPs has to be put into a text
+## file, with one IP address per line. Lists of domain names can also be
+## blocked as well. Put the list into a text file, one domain per line.
+## Domains can include wildcards (*) in order to match patterns. For
+## example *sex* will match any name that contains the sex substring, and
+## ads.* will match anything starting with ads. The Internet has plenty
+## of free feeds of IP addresses and domain names used for malware,
+## phishing and spam that you can use with this feature.
+##
+## This uses a plugin that requires dnscrypt-proxy to be compiled with
+## the ldns library.
+##
+## To enable, uncomment one of the following definitions:
+
+## Block query names matching the rules stored in that file:
+# BlackList domains:"/etc/dnscrypt-blacklist-domains.txt"
+
+## Block responses whose IP addresses match IPs stored in that file:
+# BlackList ips:"/etc/dnscrypt-blacklist-ips.txt"
+
+## Block both domain names and IP addresses:
+# BlackList domains:"/etc/dnscrypt-blacklist-domains.txt" ips:"/etc/dnscrypt-blacklist-ips.txt"
+
+## Same as the above + log the blocked queries in a file.
+## The log file can be prefixed with ltsv: (ex: ltsv:/tmp/log.txt) in order to
+## store logs using the LTSV format.
+# BlackList domains:"/etc/dnscrypt-blacklist-domains.txt" logfile:"/var/log/dnscrypt-blocked.log"
+# BlackList ips:"/etc/dnscrypt-blacklist-ips.txt" logfile:"/var/log/dnscrypt-blocked.log"
+# BlackList domains:"/etc/dnscrypt-blacklist-domains.txt" ips:"/etc/dnscrypt-blacklist-ips.txt" logfile:"/var/log/dnscrypt-blocked.log"
+
+
+
+############## User identification ##############
+
+## Use a client public key for identification
+## By default, the client uses a randomized key pair in order to make tracking
+## more difficult. This option does the opposite and uses a static key pair, so
+## that DNS providers can offer premium services to queries signed with a known
+## set of public keys. A client cannot decrypt the received responses without
+## also knowing the secret key.
+## The value for this property is the path to a file containing the secret key,
+## encoded as a hexadecimal string. The corresponding public key is computed
+## automatically.
+
+# ClientKey /etc/dnscrypt-client-secret.key
+
+
+
+############## Monitoring ##############
+
+## Do not actually start the proxy, but check that a valid certificate can be
+## retrieved from the server and that it will remain valid for the specified
+## time period. The process exit code is 0 if a valid certificate can be used,
+## 2 if no valid certificates can be used, 3 if a timeout occurred, and 4 if a
+## currently valid certificate is going to expire before the given margin.
+## Useful in a cron job to monitor your own dnscrypt-servers.
+## The margin is specified in minutes.
+
+# Test 2880
+
+
+
+############## Recursive configuration ##############
+
+## A configuration file can include other configuration files by inserting
+## the `Include` directive anywhere (the full path required, no quotes):
+
+# Include /etc/dnscrypt-proxy-common.conf
diff --git a/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.confd-r1 b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.confd-r1
new file mode 100644
index 000000000000..9137e1836fe0
--- /dev/null
+++ b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.confd-r1
@@ -0,0 +1 @@
+DNSCRYPT_OPTS="/etc/dnscrypt-proxy.conf"
diff --git a/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.initd-r1 b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.initd-r1
new file mode 100644
index 000000000000..08196ff1a7c9
--- /dev/null
+++ b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.initd-r1
@@ -0,0 +1,11 @@
+#!/sbin/openrc-run
+# Copyright 1999-2017 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+
+command="/usr/sbin/dnscrypt-proxy"
+command_args="${DNSCRYPT_OPTS}"
+pidfile="/run/${SVCNAME}.pid"
+
+depend() {
+ use net dns logger
+}
diff --git a/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.service-r1 b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.service-r1
new file mode 100644
index 000000000000..8cbf5f1a4143
--- /dev/null
+++ b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.service-r1
@@ -0,0 +1,18 @@
+[Unit]
+Description=DNSCrypt client proxy
+Documentation=man:dnscrypt-proxy(8)
+Requires=dnscrypt-proxy.socket
+After=network.target
+Before=nss-lookup.target
+
+[Install]
+Also=dnscrypt-proxy.socket
+WantedBy=multi-user.target
+
+[Service]
+Type=simple
+NonBlocking=true
+
+# Edit the configuration file appropriately, or the service will not start.
+# See https://dnscrypt.org for more information.
+ExecStart=/usr/sbin/dnscrypt-proxy /etc/dnscrypt-proxy.conf
diff --git a/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.socket-r1 b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.socket-r1
new file mode 100644
index 000000000000..5ee0e4502cf1
--- /dev/null
+++ b/net-dns/dnscrypt-proxy/files/dnscrypt-proxy.socket-r1
@@ -0,0 +1,9 @@
+[Unit]
+Description=dnscrypt-proxy listening socket
+
+[Socket]
+ListenStream=127.0.0.53:53
+ListenDatagram=127.0.0.53:53
+
+[Install]
+WantedBy=sockets.target
diff --git a/net-dns/dnscrypt-proxy/metadata.xml b/net-dns/dnscrypt-proxy/metadata.xml
index c07b954026a6..ab4b0b748fce 100644
--- a/net-dns/dnscrypt-proxy/metadata.xml
+++ b/net-dns/dnscrypt-proxy/metadata.xml
@@ -1,7 +1,24 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
<pkgmetadata>
- <!-- maintainer-needed -->
+ <maintainer type="person">
+ <email>amesists@gmail.com</email>
+ <name>Jiajun Wang</name>
+ </maintainer>
+ <maintainer type="person">
+ <email>ya@sysdump.net</email>
+ <name>Georgy Yakovlev</name>
+ <description>Proxied maintainer. Please assign bugs to him.</description>
+ </maintainer>
+ <maintainer type="person">
+ <email>polynomial-c@gentoo.org</email>
+ <name>Lars Wendler</name>
+ <description>Proxy maintainer of Georgy. Please CC on bugs.</description>
+ </maintainer>
+ <maintainer type="project">
+ <email>proxy-maint@gentoo.org</email>
+ <name>Proxy Maintainers</name>
+ </maintainer>
<longdescription lang="en">
dnscrypt-proxy provides local service which can be used directly as your
local resolver or as a DNS forwarder, encrypting and authenticating