about summary refs log tree commit diff
path: root/pkgs/development/skaware-packages/s6-networking
diff options
context:
space:
mode:
authorAndersonTorres <torres.anderson.85@protonmail.com>2022-10-28 01:13:45 -0300
committerAndersonTorres <torres.anderson.85@protonmail.com>2022-10-28 11:30:49 -0300
commita76bd5509036cad8af42c534757085dbbd254d6f (patch)
treeee30c647a96c3bc3b5c80c0b3f00a2aa5f18e954 /pkgs/development/skaware-packages/s6-networking
parent8130028c96168d0187e6ac24abde58685f205f31 (diff)
skawarePackages: move all of them to development/skaware-packages
Diffstat (limited to 'pkgs/development/skaware-packages/s6-networking')
-rw-r--r--pkgs/development/skaware-packages/s6-networking/default.nix65
1 files changed, 65 insertions, 0 deletions
diff --git a/pkgs/development/skaware-packages/s6-networking/default.nix b/pkgs/development/skaware-packages/s6-networking/default.nix
new file mode 100644
index 0000000000000..6eae406fa22a5
--- /dev/null
+++ b/pkgs/development/skaware-packages/s6-networking/default.nix
@@ -0,0 +1,65 @@
+{ lib, skawarePackages
+
+# Whether to build the TLS/SSL tools and what library to use
+# acceptable values: "bearssl", "libressl", false
+, sslSupport ? "bearssl" , libressl, bearssl
+}:
+
+with skawarePackages;
+let
+  sslSupportEnabled = sslSupport != false;
+  sslLibs = {
+    libressl = libressl;
+    bearssl = bearssl;
+  };
+
+in
+assert sslSupportEnabled -> sslLibs ? ${sslSupport};
+
+
+buildPackage {
+  pname = "s6-networking";
+  version = "2.5.1.1";
+  sha256 = "sha256-esedTePZwTUy5ESrdJfE4ErQ+nIp1QKYTZ3H1IqmRBg=";
+
+  description = "A suite of small networking utilities for Unix systems";
+
+  outputs = [ "bin" "lib" "dev" "doc" "out" ];
+
+  # TODO: nsss support
+  configureFlags = [
+    "--libdir=\${lib}/lib"
+    "--libexecdir=\${lib}/libexec"
+    "--dynlibdir=\${lib}/lib"
+    "--bindir=\${bin}/bin"
+    "--includedir=\${dev}/include"
+    "--with-sysdeps=${skalibs.lib}/lib/skalibs/sysdeps"
+    "--with-include=${skalibs.dev}/include"
+    "--with-include=${execline.dev}/include"
+    "--with-include=${s6.dev}/include"
+    "--with-include=${s6-dns.dev}/include"
+    "--with-lib=${skalibs.lib}/lib"
+    "--with-lib=${execline.lib}/lib"
+    "--with-lib=${s6.out}/lib"
+    "--with-lib=${s6-dns.lib}/lib"
+    "--with-dynlib=${skalibs.lib}/lib"
+    "--with-dynlib=${execline.lib}/lib"
+    "--with-dynlib=${s6.out}/lib"
+    "--with-dynlib=${s6-dns.lib}/lib"
+  ]
+  ++ (lib.optionals sslSupportEnabled [
+       "--enable-ssl=${sslSupport}"
+       "--with-include=${lib.getDev sslLibs.${sslSupport}}/include"
+       "--with-lib=${lib.getLib sslLibs.${sslSupport}}/lib"
+       "--with-dynlib=${lib.getLib sslLibs.${sslSupport}}/lib"
+     ]);
+
+  postInstall = ''
+    # remove all s6 executables from build directory
+    rm $(find -name "s6-*" -type f -mindepth 1 -maxdepth 1 -executable)
+    rm libs6net.* libstls.* libs6tls.* libsbearssl.*
+
+    mv doc $doc/share/doc/s6-networking/html
+  '';
+
+}