37 lines
1.1 KiB
Nix
37 lines
1.1 KiB
Nix
{ lib, buildGoModule, fetchFromGitHub }:
|
|
|
|
buildGoModule rec {
|
|
pname = "spire";
|
|
version = "1.9.1";
|
|
|
|
outputs = [ "out" "agent" "server" ];
|
|
|
|
src = fetchFromGitHub {
|
|
owner = "spiffe";
|
|
repo = pname;
|
|
rev = "v${version}";
|
|
sha256 = "sha256-+IIT2y4TJDhxxEFiaefgiHVSzO4sVQ3oPO1aMEoBQTU=";
|
|
};
|
|
|
|
vendorHash = "sha256-X8/R2u7mAJuwfltIZV5NrgbzR0U6Ty092Wlbs3u9oIw=";
|
|
|
|
subPackages = [ "cmd/spire-agent" "cmd/spire-server" ];
|
|
|
|
# Usually either the agent or server is needed for a given use case, but not both
|
|
postInstall = ''
|
|
mkdir -vp $agent/bin $server/bin
|
|
mv -v $out/bin/spire-agent $agent/bin/
|
|
mv -v $out/bin/spire-server $server/bin/
|
|
|
|
ln -vs $agent/bin/spire-agent $out/bin/spire-agent
|
|
ln -vs $server/bin/spire-server $out/bin/spire-server
|
|
'';
|
|
|
|
meta = with lib; {
|
|
description = "The SPIFFE Runtime Environment";
|
|
homepage = "https://github.com/spiffe/spire";
|
|
changelog = "https://github.com/spiffe/spire/releases/tag/v${version}";
|
|
license = licenses.asl20;
|
|
maintainers = with maintainers; [ jonringer fkautz ];
|
|
};
|
|
}
|