# Copyright 2022-2024 Gentoo Authors # Distributed under the terms of the GNU General Public License v2 EAPI=8 inherit git-r3 DESCRIPTION="Chinese-specific configuration to improve your favorite DNS server." HOMEPAGE="https://github.com/felixonmars/dnsmasq-china-list" EGIT_REPO_URI="https://github.com/felixonmars/dnsmasq-china-list.git" EGIT_MIN_CLONE_TYPE=shallow LICENSE="WTFPL-2" SLOT="0" IUSE="+dnsmasq smartdns dnscrypt-proxy" RDEPEND=" ${DEPEND} dnsmasq? ( net-dns/dnsmasq ) smartdns? ( net-dns/smartdns ) dnscrypt-proxy? ( net-dns/dnscrypt-proxy ) " src_compile() { if use smartdns; then make smartdns SERVER=china rm bogus-nxdomain.china.smartdns.conf fi if use dnscrypt-proxy; then # dnscrypt-proxy won't cache the forwarded domain # recommend to use systemd-resolved extra stub listener # for caching china domains make SERVER="127.0.0.1:5335" dnscrypt-proxy fi } src_install() { if use dnsmasq; then insinto /etc/dnsmasq.d/ dobin dnsmasq-update-china-list doins *.china.conf fi if use smartdns; then insinto /etc/smartdns/ doins *.china.smartdns.conf fi if use dnscrypt-proxy; then insinto /etc/dnscrypt-proxy/ newins dnscrypt-proxy-forwarding-rules.txt forwarding-rules.txt fi } pkg_postinst() { ewarn "If you want systemd-resolved to act as a cache for dnscrypt-proxy domestic domains" ewarn "edit /etc/systemd/resolved.conf.d/dnscrypt-proxy.conf:" ewarn "[Resolve]" ewarn "DNS=" ewarn "DNSStubListener=no" ewarn "DNSStubListenerExtra=udp:127.0.0.1:5335" }