biome: 1.9.2 -> 1.9.3
[NixPkgs.git] / pkgs / tools / virtualization / kubevirt / default.nix
blobefe4a7ffb018180d7bc769bc457e204ccc9b8769
1 { buildGoModule
2 , fetchFromGitHub
3 , installShellFiles
4 , lib
5 , testers
6 , kubevirt
7 }:
9 buildGoModule rec {
10   pname = "kubevirt";
11   version = "1.3.1";
13   src = fetchFromGitHub {
14     owner = "kubevirt";
15     repo = "kubevirt";
16     rev = "v${version}";
17     hash = "sha256-t6lIHuMvo8iqYkZ1mYVU6fgOP3Q6sqWaTcFLTqAIm5c=";
18   };
20   vendorHash = null;
22   subPackages = [ "cmd/virtctl" ];
24   tags = [ "selinux" ];
26   ldflags = [
27     "-X kubevirt.io/client-go/version.gitCommit=v${version}"
28     "-X kubevirt.io/client-go/version.gitTreeState=clean"
29     "-X kubevirt.io/client-go/version.gitVersion=v${version}"
30   ];
32   nativeBuildInputs = [ installShellFiles ];
34   postInstall = ''
35     installShellCompletion --cmd virtctl \
36       --bash <($out/bin/virtctl completion bash) \
37       --fish <($out/bin/virtctl completion fish) \
38       --zsh <($out/bin/virtctl completion zsh)
39   '';
41   passthru.tests.version = testers.testVersion {
42     package = kubevirt;
43     command = "virtctl version --client";
44     version = "v${version}";
45   };
47   meta = with lib; {
48     description = "Client tool to use advanced features such as console access";
49     homepage = "https://kubevirt.io/";
50     license = licenses.asl20;
51     maintainers = with maintainers; [ haslersn ];
52     mainProgram = "virtctl";
53   };