nixpkgs/pkgs/tools/security/vault/default.nix

44 lines
1.2 KiB
Nix
Raw Normal View History

{ stdenv, fetchFromGitHub, go, gox, removeReferencesTo }:
2016-06-04 14:13:30 -07:00
stdenv.mkDerivation rec {
2016-06-04 14:13:30 -07:00
name = "vault-${version}";
version = "1.0.1";
2016-06-04 14:13:30 -07:00
src = fetchFromGitHub {
owner = "hashicorp";
repo = "vault";
2016-09-23 10:34:51 -07:00
rev = "v${version}";
sha256 = "17gyl8hb72gwb3vy7nrp3cj9lrj0zgb8xja0bgwqpv511hg1qwwf";
2016-09-23 10:34:51 -07:00
};
nativeBuildInputs = [ go gox removeReferencesTo ];
2018-08-11 05:47:54 -07:00
preBuild = ''
2017-08-29 09:30:35 -07:00
patchShebangs ./
substituteInPlace scripts/build.sh --replace 'git rev-parse HEAD' 'echo ${src.rev}'
2017-12-04 00:13:07 -08:00
sed -i s/'^GIT_DIRTY=.*'/'GIT_DIRTY="+NixOS"'/ scripts/build.sh
2018-08-11 05:47:54 -07:00
mkdir -p .git/hooks src/github.com/hashicorp
ln -s $(pwd) src/github.com/hashicorp/vault
2018-08-11 05:47:54 -07:00
export GOPATH=$(pwd)
2016-09-23 10:34:51 -07:00
'';
installPhase = ''
mkdir -p $out/bin $out/share/bash-completion/completions
cp pkg/*/* $out/bin/
find $out/bin -type f -exec remove-references-to -t ${go} '{}' +
echo "complete -C $out/bin/vault vault" > $out/share/bash-completion/completions/vault
2016-12-11 05:59:14 -08:00
'';
2016-09-23 10:34:51 -07:00
meta = with stdenv.lib; {
homepage = https://www.vaultproject.io;
description = "A tool for managing secrets";
2017-02-16 11:47:30 -08:00
platforms = platforms.linux ++ platforms.darwin;
2016-09-23 10:34:51 -07:00
license = licenses.mpl20;
2018-08-11 05:47:54 -07:00
maintainers = with maintainers; [ rushmorem lnl7 offline pradeepchhetri ];
2016-06-04 14:13:30 -07:00
};
}