@@ 0,0 1,84 @@
+(define-module (ruther packages stubby)
+ #:use-module ((guix licenses) #:prefix license:)
+ #:use-module (guix packages)
+ #:use-module (guix build-system cmake)
+ #:use-module (guix git-download)
+ #:use-module (guix download)
+
+ #:use-module (gnu packages tls)
+ #:use-module (gnu packages dns)
+ #:use-module (gnu packages libidn)
+ #:use-module (gnu packages documentation)
+ #:use-module (gnu packages libevent)
+ #:use-module (gnu packages check)
+ #:use-module (gnu packages serialization)
+ )
+
+(define-public getdns
+ (let ((revision "f8c95b4f150a7b42153a380fea05ed6ad5ce9826"))
+ (package
+ (name "getdns")
+ (version (git-version "1.7.3" "0" revision))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/getdnsapi/getdns")
+ (commit revision)
+ (recursive? #t)))
+ (sha256
+ (base32 "0xj46zrbry9chn1i7x5wf19lgcwzpfkq5gzngmckfhcjna79a7wh"))))
+ (build-system cmake-build-system)
+ (native-inputs
+ (list
+ doxygen
+ check))
+ (inputs
+ (list
+ openssl
+ unbound
+ libidn2
+ libevent
+ libuv
+ libev))
+ (arguments
+ `(#:tests? #f)) ; no internet access. The tests use internet.
+ (synopsis "getdns is a modern asynchronous DNS API.")
+ (description "getdns is a modern asynchronous DNS API.
+ It implements DNS entry points from a design developed and vetted by application developers,
+ in an API specification. The open source C implementation of getdns is developed and maintained
+ in collaboration by NLnet Labs, Sinodun and No Mountain Software.
+ This implementation is licensed under the New BSD License.")
+ (home-page "https://getdnsapi.net/")
+ (license license:bsd-3))))
+
+(define-public stubby
+ (package
+ (name "stubby")
+ (version "0.4.3")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/getdnsapi/stubby")
+ (commit (string-append "v" version))))
+ (sha256
+ (base32 "1d3lnvi1hc5ghlna08s1mx2q3qcmw1z1hrcz4824x1xcywm80ik2"))))
+ (build-system cmake-build-system)
+ (inputs
+ (list
+ openssl
+ getdns
+ libyaml))
+ (arguments
+ `(#:tests? #f)) ; no internet access. The tests use internet.
+ (synopsis "getdns is a modern asynchronous DNS API.")
+ (description "getdns is a modern asynchronous DNS API.
+ It implements DNS entry points from a design developed and vetted by application developers,
+ in an API specification. The open source C implementation of getdns is developed and maintained
+ in collaboration by NLnet Labs, Sinodun and No Mountain Software.
+ This implementation is licensed under the New BSD License.")
+ (home-page "https://getdnsapi.net/")
+ (license license:bsd-3)))
+
+stubby