getdns, stubby: update 1.6.0 -> 1.7.0, 0.3.0 -> 0.4.0

This commit is contained in:
Emery Hemingway 2021-06-05 17:21:31 +02:00 committed by ehmry
parent caec9da44d
commit b679d2d97d
3 changed files with 83 additions and 67 deletions

View file

@ -1,37 +1,87 @@
{ lib, stdenv, fetchurl, unbound, libidn2, openssl, doxygen, cmake }:
# Getdns and Stubby are released together, see https://getdnsapi.net/releases/
stdenv.mkDerivation rec {
pname = "getdns";
version = "1.6.0";
versionRewrite = builtins.splitVersion version;
src = fetchurl {
url = "https://getdnsapi.net/releases/${pname}-${
builtins.concatStringsSep "-" versionRewrite
}/${pname}-${version}.tar.gz";
sha256 = "0jhg7258wz287kjymimvdvv04n69lwxdc3sb62l2p453f5s77ra0";
};
nativeBuildInputs = [ cmake ];
buildInputs = [ unbound libidn2 openssl doxygen ];
meta = with lib; {
description = "A modern asynchronous DNS API";
longDescription = ''
getdns is an implementation of a modern asynchronous DNS API; the
specification was originally edited by Paul Hoffman. It is intended to make all
types of DNS information easily available to application developers and non-DNS
experts. DNSSEC offers a unique global infrastructure for establishing and
enhancing cryptographic trust relations. With the development of this API the
developers intend to offer application developers a modern and flexible
interface that enables end-to-end trust in the DNS architecture, and which will
inspire application developers to implement innovative security solutions in
their applications.
'';
homepage = "https://getdnsapi.net";
{ lib, stdenv, fetchurl, cmake, darwin, doxygen, libidn2, libyaml, openssl
, systemd, unbound, yq }:
let
metaCommon = with lib; {
maintainers = with maintainers; [ leenaars ehmry ];
license = licenses.bsd3;
platforms = platforms.all;
};
in rec {
getdns = stdenv.mkDerivation rec {
pname = "getdns";
version = "1.7.0";
outputs = [ "out" "dev" "lib" "man" ];
src = fetchurl {
url = "https://getdnsapi.net/releases/${pname}-${
with builtins;
concatStringsSep "-" (splitVersion version)
}/${pname}-${version}.tar.gz";
sha256 = "sha256-6ocTzl4HesdrFBjOtq/SXm1OOelgD29egdOjoTpg9lI=";
};
nativeBuildInputs = [ cmake doxygen ];
buildInputs = [ libidn2 openssl unbound ];
postInstall = "rm -r $out/share/doc";
meta = with lib;
metaCommon // {
description = "A modern asynchronous DNS API";
longDescription = ''
getdns is an implementation of a modern asynchronous DNS API; the
specification was originally edited by Paul Hoffman. It is intended to make all
types of DNS information easily available to application developers and non-DNS
experts. DNSSEC offers a unique global infrastructure for establishing and
enhancing cryptographic trust relations. With the development of this API the
developers intend to offer application developers a modern and flexible
interface that enables end-to-end trust in the DNS architecture, and which will
inspire application developers to implement innovative security solutions in
their applications.
'';
homepage = "https://getdnsapi.net";
};
};
stubby = stdenv.mkDerivation rec {
pname = "stubby";
version = "0.4.0";
outputs = [ "out" "man" "stubbyExampleJson" ];
inherit (getdns) src;
sourceRoot = "${getdns.name}/stubby";
nativeBuildInputs = [ cmake doxygen yq ];
buildInputs = [ getdns libyaml openssl systemd ]
++ lib.optionals stdenv.isDarwin [ darwin.Security ];
postInstall = ''
rm -r $out/share/doc
yq \
< $NIX_BUILD_TOP/$sourceRoot/stubby.yml.example \
> $stubbyExampleJson
'';
passthru.settingsExample = with builtins;
fromJSON (readFile stubby.stubbyExampleJson);
meta = with lib;
metaCommon // {
description = "A local DNS Privacy stub resolver (using DNS-over-TLS)";
longDescription = ''
Stubby is an application that acts as a local DNS Privacy stub
resolver (using RFC 7858, aka DNS-over-TLS). Stubby encrypts DNS
queries sent from a client machine (desktop or laptop) to a DNS
Privacy resolver increasing end user privacy. Stubby is developed by
the getdns team.
'';
homepage = "https://dnsprivacy.org/wiki/x/JYAT";
};
};
}

View file

@ -1,33 +0,0 @@
{ lib, stdenv, fetchFromGitHub, getdns, doxygen, libyaml, darwin, cmake, systemd }:
stdenv.mkDerivation rec {
pname = "stubby";
version = "0.3.0";
src = fetchFromGitHub {
owner = "getdnsapi";
repo = pname;
rev = "v${version}";
sha256 = "04izd1v4fv9l7r75aafkrp6svczbx4cvv1vnfyx5n9105pin11mx";
};
nativeBuildInputs = [ cmake libyaml ];
buildInputs = [ doxygen getdns systemd ]
++ lib.optionals stdenv.isDarwin [ darwin.Security ];
meta = with lib; {
description = "A local DNS Privacy stub resolver (using DNS-over-TLS)";
longDescription = ''
Stubby is an application that acts as a local DNS Privacy stub
resolver (using RFC 7858, aka DNS-over-TLS). Stubby encrypts DNS
queries sent from a client machine (desktop or laptop) to a DNS
Privacy resolver increasing end user privacy. Stubby is developed by
the getdns team.
'';
homepage = "https://dnsprivacy.org/wiki/x/JYAT";
downloadPage = "https://github.com/getdnsapi/stubby";
maintainers = with maintainers; [ leenaars ehmry ];
license = licenses.bsd3; platforms = platforms.all;
};
}

View file

@ -9782,8 +9782,6 @@ with pkgs;
stremio = qt5.callPackage ../applications/video/stremio { };
stubby = callPackage ../tools/networking/stubby { };
sunwait = callPackage ../applications/misc/sunwait { };
surface-control = callPackage ../applications/misc/surface-control { };
@ -16496,7 +16494,8 @@ with pkgs;
getdata = callPackage ../development/libraries/getdata { };
getdns = callPackage ../development/libraries/getdns { };
inherit (callPackages ../development/libraries/getdns { })
getdns stubby;
gettext = callPackage ../development/libraries/gettext { };