1{ stdenv, fetchFromGitHub, makeWrapper, coreutils, openssh, gnupg
2, perl, procps, gnugrep, gawk, findutils, gnused
3, withProcps ? stdenv.isLinux }:
4
5stdenv.mkDerivation rec {
6 name = "keychain-${version}";
7 version = "2.8.0";
8
9 src = fetchFromGitHub {
10 owner = "funtoo";
11 repo = "keychain";
12 rev = "1c8eaba53a7788d12d086b66ac3929810510f73a";
13 sha256 = "0ajas58cv8mp5wb6hn1zhsqiwfxvx69p4f91a5j2as299rxgrxlp";
14 };
15
16 buildInputs = [ makeWrapper perl ];
17
18 installPhase = ''
19 mkdir -p $out/{bin,share/man/man1}
20 cp keychain $out/bin/keychain
21 cp keychain.1 $out/share/man/man1
22 wrapProgram $out/bin/keychain \
23 --prefix PATH ":" "${coreutils}/bin" \
24 --prefix PATH ":" "${openssh}/bin" \
25 --prefix PATH ":" "${gnupg}/bin" \
26 --prefix PATH ":" "${gnugrep}/bin" \
27 --prefix PATH ":" "${gnused}/bin" \
28 --prefix PATH ":" "${findutils}/bin" \
29 --prefix PATH ":" "${gawk}/bin" \
30 ${if withProcps then ("--prefix PATH \":\" ${procps}/bin") else ""}
31 '';
32
33 meta = {
34 description = "Keychain management tool";
35 homepage = "http://www.funtoo.org/Keychain";
36 license = stdenv.lib.licenses.gpl2;
37 # other platforms are untested (AFAIK)
38 platforms =
39 with stdenv.lib;
40 platforms.linux ++ platforms.darwin;
41 };
42}