summary refs log tree commit diff
path: root/pkgs/servers/dns
diff options
context:
space:
mode:
authorPeter Hoeg <peter@hoeg.com>2022-08-14 20:06:59 +0800
committerPeter Hoeg <peter@hoeg.com>2022-08-17 10:25:31 +0800
commitf0ec7d76983f5d4118a74bf9e1c10888f3dce8a8 (patch)
tree8bdd6e541a050a3c5edcc493a8e0ba174276c288 /pkgs/servers/dns
parentc4a0efdd5a728e20791b8d8d2f26f90ac228ee8d (diff)
https-dns-proxy: 2021-03-29 -> 2022-05-05
Diffstat (limited to 'pkgs/servers/dns')
-rw-r--r--pkgs/servers/dns/https-dns-proxy/default.nix31
1 files changed, 24 insertions, 7 deletions
diff --git a/pkgs/servers/dns/https-dns-proxy/default.nix b/pkgs/servers/dns/https-dns-proxy/default.nix
index 5e2efae8a2878..12793747e8610 100644
--- a/pkgs/servers/dns/https-dns-proxy/default.nix
+++ b/pkgs/servers/dns/https-dns-proxy/default.nix
@@ -1,24 +1,40 @@
 { lib, stdenv, fetchFromGitHub, cmake, gtest, c-ares, curl, libev }:
 
+let
+  # https-dns-proxy supports HTTP3 if curl has support, but as of 2022-08 curl doesn't work with that enabled
+  # curl' = (curl.override { http3Support = true; });
+  curl' = curl;
+
+in
 stdenv.mkDerivation rec {
   pname = "https-dns-proxy";
   # there are no stable releases (yet?)
-  version = "unstable-2021-03-29";
+  version = "unstable-2022-05-05";
 
   src = fetchFromGitHub {
     owner = "aarond10";
     repo = "https_dns_proxy";
-    rev = "bbd9ef272dcda3ead515871f594768af13192af7";
-    sha256 = "sha256-r+IpDklI3vITK8ZlZvIFm3JdDe2r8DK2ND3n1a/ThrM=";
+    rev = "d310a378795790350703673388821558163944de";
+    hash = "sha256-On4SKUeltPhzM/x+K9aKciKBw5lmVySxnmLi2tnKr3Y=";
   };
 
+  postPatch = ''
+    substituteInPlace https_dns_proxy.service.in \
+      --replace "\''${CMAKE_INSTALL_PREFIX}/" ""
+    substituteInPlace munin/https_dns_proxy.plugin \
+      --replace '--unit https_dns_proxy.service' '--unit https-dns-proxy.service'
+  '';
+
   nativeBuildInputs = [ cmake gtest ];
 
-  buildInputs = [ c-ares curl libev ];
+  buildInputs = [ c-ares curl' libev ];
 
-  installPhase = ''
-    install -Dm555 -t $out/bin https_dns_proxy
-    install -Dm444 -t $out/share/doc/${pname} ../{LICENSE,README}.*
+  postInstall = ''
+    install -Dm444 -t $out/share/doc/${pname} ../{LICENSE,*.md}
+    install -Dm444 -t $out/share/${pname}/munin ../munin/*
+    # the systemd service definition is garbage, and we use our own with NixOS
+    mv $out/lib/systemd $out/share/${pname}
+    rmdir $out/lib
   '';
 
   # upstream wants to add tests and the gtest framework is in place, so be ready
@@ -30,5 +46,6 @@ stdenv.mkDerivation rec {
     license = licenses.mit;
     maintainers = with maintainers; [ peterhoeg ];
     platforms = platforms.linux;
+    mainProgram = "https_dns_proxy";
   };
 }