nixos/unl0kr: add a `package` option (#361865)
[NixPkgs.git] / pkgs / development / tools / kustomize / 4.nix
blob9b3b73e04868400070e40429b37ee2484e312dfb
1 { lib, buildGoModule, fetchFromGitHub, installShellFiles }:
3 buildGoModule rec {
4   pname = "kustomize_4";
5   version = "4.5.7";
7   src = fetchFromGitHub {
8     owner = "kubernetes-sigs";
9     repo = "kustomize";
10     rev = "kustomize/v${version}";
11     hash = "sha256-AHDUwXcYkI04nOBY8jScf+OE6k9Z5OqzhtWExK1rrKg=";
12   };
14   # rev is the commit of the tag, mainly for kustomize version command output
15   rev = "56d82a8378dfc8dc3b3b1085e5a6e67b82966bd7";
16   ldflags = let t = "sigs.k8s.io/kustomize/api/provenance"; in
17     [
18       "-s"
19       "-X ${t}.version=${version}"
20       "-X ${t}.gitCommit=${rev}"
21     ];
23   # avoid finding test and development commands
24   modRoot = "kustomize";
25   proxyVendor = true;
26   vendorHash = "sha256-9+k0Me5alZDNC27Mx0Q6vp0B2SEa+Qy0FoLSr/Rahkc=";
28   nativeBuildInputs = [ installShellFiles ];
30   postInstall = ''
31     installShellCompletion --cmd kustomize \
32       --bash <($out/bin/kustomize completion bash) \
33       --fish <($out/bin/kustomize completion fish) \
34       --zsh <($out/bin/kustomize completion zsh)
35   '';
37   meta = with lib; {
38     description = "Customization of kubernetes YAML configurations";
39     mainProgram = "kustomize";
40     longDescription = ''
41       kustomize lets you customize raw, template-free YAML files for
42       multiple purposes, leaving the original YAML untouched and usable
43       as is.
44     '';
45     homepage = "https://github.com/kubernetes-sigs/kustomize";
46     license = licenses.asl20;
47     maintainers = with maintainers; [ carlosdagos vdemeester periklis zaninime Chili-Man saschagrunert ];
48   };