about summary refs log tree commit diff
path: root/pkgs/tools/security/monkeysphere
diff options
context:
space:
mode:
authorMichael Weiss <dev.primeos@gmail.com>2018-09-07 12:22:56 +0200
committerMichael Weiss <dev.primeos@gmail.com>2018-09-07 12:24:41 +0200
commit52d3fc4780dc8ba92627474118e8aaf2edfdde2c (patch)
tree627373a5575f92a24a31cc2209c9686f6d02d2c7 /pkgs/tools/security/monkeysphere
parentd710765f52f71e0cc6cf331678677a36aabfda1c (diff)
downloadnixlib-52d3fc4780dc8ba92627474118e8aaf2edfdde2c.tar
nixlib-52d3fc4780dc8ba92627474118e8aaf2edfdde2c.tar.gz
nixlib-52d3fc4780dc8ba92627474118e8aaf2edfdde2c.tar.bz2
nixlib-52d3fc4780dc8ba92627474118e8aaf2edfdde2c.tar.lz
nixlib-52d3fc4780dc8ba92627474118e8aaf2edfdde2c.tar.xz
nixlib-52d3fc4780dc8ba92627474118e8aaf2edfdde2c.tar.zst
nixlib-52d3fc4780dc8ba92627474118e8aaf2edfdde2c.zip
monkeysphere: Wrap all relevant programs
Diffstat (limited to 'pkgs/tools/security/monkeysphere')
-rw-r--r--pkgs/tools/security/monkeysphere/default.nix37
1 files changed, 22 insertions, 15 deletions
diff --git a/pkgs/tools/security/monkeysphere/default.nix b/pkgs/tools/security/monkeysphere/default.nix
index badea48cec48..bafe8cdf500b 100644
--- a/pkgs/tools/security/monkeysphere/default.nix
+++ b/pkgs/tools/security/monkeysphere/default.nix
@@ -1,5 +1,6 @@
 { stdenv, fetchurl, makeWrapper
-, perl, perlPackages, libassuan, libgcrypt
+, perl, libassuan, libgcrypt
+, perlPackages, lockfileProgs, gnupg
 }:
 
 stdenv.mkDerivation rec {
@@ -11,27 +12,33 @@ stdenv.mkDerivation rec {
     sha256 = "0jz7kwkwgylqprnl8bwvl084s5gjrilza77ln18i3f6x48b2y6li";
   };
 
-  buildInputs = [ makeWrapper perl libassuan libgcrypt ];
-
   patches = [ ./monkeysphere.patch ];
 
+  nativeBuildInputs = [ makeWrapper ];
+  buildInputs = [ perl libassuan libgcrypt ];
+
   makeFlags = ''
     PREFIX=/
     DESTDIR=$(out)
   '';
 
-  postInstall = ''
-    wrapProgram $out/bin/openpgp2ssh --prefix PERL5LIB : \
-      "${with perlPackages; stdenv.lib.makePerlPath [
-        CryptOpenSSLRSA
-        CryptOpenSSLBignum
-      ]}"
-    wrapProgram $out/bin/monkeysphere --prefix PERL5LIB :\
-      "${with perlPackages; stdenv.lib.makePerlPath [
-        CryptOpenSSLRSA
-        CryptOpenSSLBignum
-      ]}"
-  '';
+  postFixup =
+    let wrapMonkeysphere = runtimeDeps: program:
+          "wrapProgram $out/bin/${program} --prefix PERL5LIB : "
+            + (with perlPackages; stdenv.lib.makePerlPath [
+                CryptOpenSSLRSA
+                CryptOpenSSLBignum
+              ])
+            + stdenv.lib.optionalString
+                (builtins.length runtimeDeps > 0)
+                " --prefix PATH : ${stdenv.lib.makeBinPath runtimeDeps}"
+            + "\n";
+        wrapPrograms = runtimeDeps: programs: stdenv.lib.concatMapStrings
+          (wrapMonkeysphere runtimeDeps)
+          programs;
+    in wrapPrograms [ gnupg ] [ "monkeysphere-authentication" "monkeysphere-host" ]
+      + wrapPrograms [ ] [ "../share/monkeysphere/keytrans" "openpgp2ssh" ]
+      + wrapPrograms [ lockfileProgs ] [ "monkeysphere" ];
 
   meta = with stdenv.lib; {
     homepage = http://web.monkeysphere.info/;