summary refs log tree commit diff
path: root/pkgs/tools/networking/dnscrypt-proxy
diff options
context:
space:
mode:
authorJoachim Fasting <joachifm@fastmail.fm>2017-03-16 14:57:07 +0100
committerJoachim Fasting <joachifm@fastmail.fm>2017-03-16 16:15:33 +0100
commit0526467494476586a715e75c1ac37c5a800df011 (patch)
tree031619ae9cbe2a30d3285ac5513fb61d086a39dc /pkgs/tools/networking/dnscrypt-proxy
parentc317e5c85dd5bb239622ba6846b9ad5cec4c91da (diff)
downloadnixlib-0526467494476586a715e75c1ac37c5a800df011.tar
nixlib-0526467494476586a715e75c1ac37c5a800df011.tar.gz
nixlib-0526467494476586a715e75c1ac37c5a800df011.tar.bz2
nixlib-0526467494476586a715e75c1ac37c5a800df011.tar.lz
nixlib-0526467494476586a715e75c1ac37c5a800df011.tar.xz
nixlib-0526467494476586a715e75c1ac37c5a800df011.tar.zst
nixlib-0526467494476586a715e75c1ac37c5a800df011.zip
dnscrypt-proxy: enable additional plugins
Adding ldns builds additional plugins for rewriting DNS queries,
such as blocking and forwarding.

For example, to use a custom domain blocklist, you can do
```nix
let
  myBlockListFile = writeText "blocked-domains" ''
    *.example.com
  '';
in
{
  services.dnscrypt-proxy.extraArgs = [
    "-X libdcplugin_example_ldns_blocking.so,--domains=${myBlockListFile}"
  ];
}
```
Diffstat (limited to 'pkgs/tools/networking/dnscrypt-proxy')
-rw-r--r--pkgs/tools/networking/dnscrypt-proxy/default.nix5
1 files changed, 3 insertions, 2 deletions
diff --git a/pkgs/tools/networking/dnscrypt-proxy/default.nix b/pkgs/tools/networking/dnscrypt-proxy/default.nix
index 24aa3d4b829b..03d217440957 100644
--- a/pkgs/tools/networking/dnscrypt-proxy/default.nix
+++ b/pkgs/tools/networking/dnscrypt-proxy/default.nix
@@ -1,4 +1,4 @@
-{ stdenv, fetchurl, pkgconfig, libsodium, systemd }:
+{ stdenv, fetchurl, pkgconfig, libsodium, ldns, openssl, systemd }:
 
 with stdenv.lib;
 
@@ -15,7 +15,8 @@ stdenv.mkDerivation rec {
 
   nativeBuildInputs = [ pkgconfig ];
 
-  buildInputs = [ libsodium ] ++ optional stdenv.isLinux systemd;
+  # <ldns/ldns.h> depends on <openssl/ssl.h>
+  buildInputs = [ libsodium openssl.dev ldns ] ++ optional stdenv.isLinux systemd;
 
   postInstall = ''
     # Previous versions required libtool files to load plugins; they are