about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/development/libraries/getdns/default.nix4
-rw-r--r--pkgs/development/nim-packages/getdns/default.nix25
-rw-r--r--pkgs/top-level/nim-packages.nix3
3 files changed, 31 insertions, 1 deletions
diff --git a/pkgs/development/libraries/getdns/default.nix b/pkgs/development/libraries/getdns/default.nix
index 3691dc164077a..00a15e831ae71 100644
--- a/pkgs/development/libraries/getdns/default.nix
+++ b/pkgs/development/libraries/getdns/default.nix
@@ -1,7 +1,7 @@
 # Getdns and Stubby are released together, see https://getdnsapi.net/releases/
 
 { lib, stdenv, fetchurl, cmake, darwin, doxygen, libidn2, libyaml, openssl
-, systemd, unbound, yq }:
+, systemd, unbound, yq, nimPackages }:
 let
   metaCommon = with lib; {
     maintainers = with maintainers; [ leenaars ehmry ];
@@ -38,6 +38,8 @@ in rec {
 
     postInstall = "rm -r $out/share/doc";
 
+    passthru.tests.nim = nimPackages.getdns;
+
     meta = with lib;
       metaCommon // {
         description = "A modern asynchronous DNS API";
diff --git a/pkgs/development/nim-packages/getdns/default.nix b/pkgs/development/nim-packages/getdns/default.nix
new file mode 100644
index 0000000000000..035770da98be0
--- /dev/null
+++ b/pkgs/development/nim-packages/getdns/default.nix
@@ -0,0 +1,25 @@
+{ lib, buildNimPackage, fetchFromSourcehut, pkg-config, getdns }:
+
+buildNimPackage rec {
+  pname = "getdns";
+  version = "20221222";
+  src = fetchFromSourcehut {
+    owner = "~ehmry";
+    repo = pname + "-nim";
+    rev = version;
+    hash = "sha256-y7yzY1PcodIK2kC9409FuTpLn0TsWHGiEPnrULrob+k=";
+  };
+
+  propagatedNativeBuildInputs = [ pkg-config ];
+  propagatedBuildInputs = [ getdns ];
+
+  doCheck = true;
+  checkPhase = "nim c tests/test_example_synchronous";
+    # The test requires network but check if it builds.
+
+  meta = {
+    inherit (getdns.meta) homepage license platforms;
+    description = "Nim wrapper over the getdns library";
+    maintainers = with lib.maintainers; [ ehmry ];
+  };
+}
diff --git a/pkgs/top-level/nim-packages.nix b/pkgs/top-level/nim-packages.nix
index a666177a92f1e..2277a1f1b7b41 100644
--- a/pkgs/top-level/nim-packages.nix
+++ b/pkgs/top-level/nim-packages.nix
@@ -26,6 +26,9 @@ lib.makeScope newScope (self:
 
     frosty = callPackage ../development/nim-packages/frosty { };
 
+    getdns = callPackage ../development/nim-packages/getdns {
+      inherit (pkgs) getdns; };
+
     hts-nim = callPackage ../development/nim-packages/hts-nim { };
 
     jester = callPackage ../development/nim-packages/jester { };