nixpkgs/pkgs/by-name/do/doppler/package.nix
2024-11-19 02:01:22 +00:00

54 lines
1.3 KiB
Nix

{ buildGoModule
, doppler
, fetchFromGitHub
, installShellFiles
, lib
, testers
, stdenv
}:
buildGoModule rec {
pname = "doppler";
version = "3.69.2";
src = fetchFromGitHub {
owner = "dopplerhq";
repo = "cli";
rev = version;
hash = "sha256-65DKCmAzGEKbB/R9NlkTa2lBEcfX0iBXJQWH8OXfemc=";
};
vendorHash = "sha256-NUHWKPszQH/pvnA+j65+bJ6t+C0FDRRbTviqkYztpE4=";
ldflags = [
"-s -w"
"-X github.com/DopplerHQ/cli/pkg/version.ProgramVersion=v${version}"
];
nativeBuildInputs = [ installShellFiles ];
postInstall = ''
mv $out/bin/cli $out/bin/doppler
'' + lib.optionalString (stdenv.buildPlatform.canExecute stdenv.hostPlatform) ''
export HOME=$TMPDIR
mkdir $HOME/.doppler # to avoid race conditions below
installShellCompletion --cmd doppler \
--bash <($out/bin/doppler completion bash) \
--fish <($out/bin/doppler completion fish) \
--zsh <($out/bin/doppler completion zsh)
'';
passthru.tests.version = testers.testVersion {
package = doppler;
version = "v${version}";
};
meta = with lib; {
description = "Official CLI for interacting with your Doppler Enclave secrets and configuration";
mainProgram = "doppler";
homepage = "https://doppler.com";
license = licenses.asl20;
maintainers = with maintainers; [ lucperkins ];
};
}