diff options
author | Profpatsch <mail@profpatsch.de> | 2018-09-02 23:31:26 +0200 |
---|---|---|
committer | Profpatsch <mail@profpatsch.de> | 2018-09-06 11:53:22 +0200 |
commit | 0071ae1d4f1a18542b19a815d06d2b7bbf292dd4 (patch) | |
tree | b6c94409341b69786743eeef397e2ab86c315585 /pkgs/tools/networking/s6-networking | |
parent | 57b431590b3c555469f4ebeffa2dc524ef806293 (diff) |
skawarePackages: factor out the common parts
Introduce a `skawarePackages.buildPackage` function that contains the
common setup, removing a lot of duplication.
In particular, we require that the build directory has to be empty
after the `fixupPhase`, to make sure every relevant file is moved to
the outputs.
A next step would be to deduplicate the `configureFlags` attributes
and only require a `skawareInputs` field.
Diffstat (limited to 'pkgs/tools/networking/s6-networking')
-rw-r--r-- | pkgs/tools/networking/s6-networking/default.nix | 41 |
1 files changed, 14 insertions, 27 deletions
diff --git a/pkgs/tools/networking/s6-networking/default.nix b/pkgs/tools/networking/s6-networking/default.nix index d96cff167d90..032287ece835 100644 --- a/pkgs/tools/networking/s6-networking/default.nix +++ b/pkgs/tools/networking/s6-networking/default.nix @@ -1,4 +1,4 @@ -{ stdenv, execline, fetchgit, s6, s6-dns, skalibs +{ stdenv, skawarePackages # Whether to build the TLS/SSL tools and what library to use # acceptable values: "libressl", false @@ -6,11 +6,9 @@ , sslSupport ? "libressl" , libressl }: +with skawarePackages; let inherit (stdenv) lib; - - version = "2.3.0.3"; - sslSupportEnabled = sslSupport != false; sslLibs = { "libressl" = libressl; @@ -19,25 +17,18 @@ let in assert sslSupportEnabled -> sslLibs ? ${sslSupport}; -stdenv.mkDerivation rec { - name = "s6-networking-${version}"; +buildPackage { + pname = "s6-networking"; + version = "2.3.0.3"; + sha256 = "06kv2l31ch0zw538bpivgnwymb056x5hpmqafglffgkbq3izp7wc"; - src = fetchgit { - url = "git://git.skarnet.org/s6-networking"; - rev = "refs/tags/v${version}"; - sha256 = "06kv2l31ch0zw538bpivgnwymb056x5hpmqafglffgkbq3izp7wc"; - }; + description = "A suite of small networking utilities for Unix systems"; outputs = [ "bin" "lib" "dev" "doc" "out" ]; - dontDisableStatic = true; - - enableParallelBuilding = true; - # TODO: nsss support configureFlags = [ - "--enable-absolute-paths" "--libdir=\${lib}/lib" "--libexecdir=\${lib}/libexec" "--dynlibdir=\${lib}/lib" @@ -61,20 +52,16 @@ stdenv.mkDerivation rec { "--enable-ssl=${sslSupport}" "--with-include=${lib.getDev sslLibs.${sslSupport}}/include" "--with-lib=${lib.getLib sslLibs.${sslSupport}}/lib" - ]) - ++ (lib.optional stdenv.isDarwin "--build=${stdenv.hostPlatform.system}"); + "--with-dynlib=${lib.getLib sslLibs.${sslSupport}}/lib" + ]); postInstall = '' - mkdir -p $doc/share/doc/s6-networking/ + # remove all s6 executables from build directory + rm $(find -name "s6-*" -type f -mindepth 1 -maxdepth 1 -executable) + rm minidentd + rm libs6net.* libstls.* + mv doc $doc/share/doc/s6-networking/html ''; - meta = { - homepage = http://www.skarnet.org/software/s6-networking/; - description = "A suite of small networking utilities for Unix systems"; - platforms = lib.platforms.all; - license = lib.licenses.isc; - maintainers = with stdenv.lib.maintainers; [ pmahoney Profpatsch ]; - }; - } |