diff options
author | Profpatsch <mail@profpatsch.de> | 2018-07-27 09:10:10 +0200 |
---|---|---|
committer | Profpatsch <mail@profpatsch.de> | 2018-07-27 17:48:32 +0200 |
commit | abcc849c9ef8587b97c35d23bf79b2400a69512a (patch) | |
tree | 42687b38847c578caa8988c4e2d93ad05fceacba /pkgs/tools/networking/s6-networking | |
parent | 9a95c136d8c554b4bd239e98f671434cd3d16215 (diff) | |
download | nixlib-abcc849c9ef8587b97c35d23bf79b2400a69512a.tar nixlib-abcc849c9ef8587b97c35d23bf79b2400a69512a.tar.gz nixlib-abcc849c9ef8587b97c35d23bf79b2400a69512a.tar.bz2 nixlib-abcc849c9ef8587b97c35d23bf79b2400a69512a.tar.lz nixlib-abcc849c9ef8587b97c35d23bf79b2400a69512a.tar.xz nixlib-abcc849c9ef8587b97c35d23bf79b2400a69512a.tar.zst nixlib-abcc849c9ef8587b97c35d23bf79b2400a69512a.zip |
s6-networking: add ssl support (libressl by default)
For now there’s only support for libressl, but it is built in a way that makes adding support for e.g. bearssl trivial.
Diffstat (limited to 'pkgs/tools/networking/s6-networking')
-rw-r--r-- | pkgs/tools/networking/s6-networking/default.nix | 30 |
1 files changed, 25 insertions, 5 deletions
diff --git a/pkgs/tools/networking/s6-networking/default.nix b/pkgs/tools/networking/s6-networking/default.nix index c70e8273163a..1971bbffa406 100644 --- a/pkgs/tools/networking/s6-networking/default.nix +++ b/pkgs/tools/networking/s6-networking/default.nix @@ -1,10 +1,25 @@ -{ stdenv, execline, fetchgit, s6, s6-dns, skalibs }: +{ stdenv, execline, fetchgit, s6, s6-dns, skalibs + +# Whether to build the TLS/SSL tools and what library to use +# acceptable values: "libressl", false +# TODO: add bearssl +, sslSupport ? "libressl" , libressl +}: let + inherit (stdenv) lib; version = "2.3.0.2"; -in stdenv.mkDerivation rec { + sslSupportEnabled = sslSupport != false; + sslLibs = { + "libressl" = libressl; + }; + +in +assert sslSupportEnabled -> sslLibs ? ${sslSupport}; + +stdenv.mkDerivation rec { name = "s6-networking-${version}"; @@ -41,7 +56,12 @@ in stdenv.mkDerivation rec { "--with-dynlib=${s6.out}/lib" "--with-dynlib=${s6-dns.lib}/lib" ] - ++ (stdenv.lib.optional stdenv.isDarwin "--build=${stdenv.system}"); + ++ (lib.optionals sslSupportEnabled [ + "--enable-ssl=${sslSupport}" + "--with-include=${lib.getDev sslLibs.${sslSupport}}/include" + "--with-lib=${lib.getLib sslLibs.${sslSupport}}/lib" + ]) + ++ (lib.optional stdenv.isDarwin "--build=${stdenv.system}"); postInstall = '' mkdir -p $doc/share/doc/s6-networking/ @@ -51,8 +71,8 @@ in stdenv.mkDerivation rec { meta = { homepage = http://www.skarnet.org/software/s6-networking/; description = "A suite of small networking utilities for Unix systems"; - platforms = stdenv.lib.platforms.all; - license = stdenv.lib.licenses.isc; + platforms = lib.platforms.all; + license = lib.licenses.isc; maintainers = with stdenv.lib.maintainers; [ pmahoney Profpatsch ]; }; |