{ lib , buildGoModule , fetchFromGitHub , installShellFiles , kubeone , testers }: buildGoModule rec { pname = "kubeone"; version = "1.7.4"; src = fetchFromGitHub { owner = "kubermatic"; repo = "kubeone"; rev = "v${version}"; hash = "sha256-GK5SEQjQb553MypcRpTfmewVhucP1fRldpXhfLERkMo="; }; vendorHash = "sha256-pt3EWohdXOBgE3SfEEODUi1uX/X+jJ2JrBbLFIXDbwY="; ldflags = [ "-s" "-w" "-X k8c.io/kubeone/pkg/cmd.version=${version}" "-X k8c.io/kubeone/pkg/cmd.date=unknown" ]; nativeBuildInputs = [ installShellFiles ]; postInstall = '' installShellCompletion --cmd kubeone \ --bash <($out/bin/kubeone completion bash) \ --zsh <($out/bin/kubeone completion zsh) ''; passthru.tests.version = testers.testVersion { package = kubeone; command = "kubeone version"; }; meta = with lib; { description = "Automate cluster operations on all your cloud, on-prem, edge, and IoT environments"; homepage = "https://kubeone.io/"; changelog = "https://github.com/kubermatic/kubeone/releases/tag/v${version}"; license = licenses.asl20; maintainers = with maintainers; [ lblasc ]; }; }