nixpkgs/pkgs/development/tools/kustomize/default.nix
2023-12-08 11:45:54 +00:00

47 lines
1.4 KiB
Nix

{ lib, buildGoModule, fetchFromGitHub, installShellFiles }:
buildGoModule rec {
pname = "kustomize";
version = "5.3.0";
ldflags = let t = "sigs.k8s.io/kustomize/api/provenance"; in
[
"-s"
"-X ${t}.version=${version}"
"-X ${t}.gitCommit=${src.rev}"
];
src = fetchFromGitHub {
owner = "kubernetes-sigs";
repo = pname;
rev = "kustomize/v${version}";
hash = "sha256-TleO28Q6JaOz1OAJKbvLhN99a841FEhHL15NTMhS1Oc=";
};
# avoid finding test and development commands
modRoot = "kustomize";
proxyVendor = true;
vendorHash = "sha256-6+8cwRH37lkQvnHBUlSqyNrZMfDpKbeUNJS4YMflBq0=";
nativeBuildInputs = [ installShellFiles ];
postInstall = ''
installShellCompletion --cmd kustomize \
--bash <($out/bin/kustomize completion bash) \
--fish <($out/bin/kustomize completion fish) \
--zsh <($out/bin/kustomize completion zsh)
'';
meta = with lib; {
description = "Customization of kubernetes YAML configurations";
longDescription = ''
kustomize lets you customize raw, template-free YAML files for
multiple purposes, leaving the original YAML untouched and usable
as is.
'';
homepage = "https://github.com/kubernetes-sigs/kustomize";
license = licenses.asl20;
maintainers = with maintainers; [ carlosdagos vdemeester periklis zaninime Chili-Man saschagrunert ];
};
}