{ lib, buildGo122Module, fetchFromGitHub, installShellFiles }: buildGo122Module rec { pname = "talosctl"; version = "1.7.5"; src = fetchFromGitHub { owner = "siderolabs"; repo = "talos"; rev = "v${version}"; hash = "sha256-lmDLlxiPyVhlSPplYkIaS5Uw19hir6XD8MAk8q+obhY="; }; passthru = { updateScript = ./update.sh; }; vendorHash = "sha256-8UIey+r1tdVRN1RBK5xxcAzaHb0VFdgenUXSFgoWh1g="; ldflags = [ "-s" "-w" ]; env.GOWORK = "off"; subPackages = [ "cmd/talosctl" ]; nativeBuildInputs = [ installShellFiles ]; postInstall = '' installShellCompletion --cmd talosctl \ --bash <($out/bin/talosctl completion bash) \ --fish <($out/bin/talosctl completion fish) \ --zsh <($out/bin/talosctl completion zsh) ''; doCheck = false; # no tests meta = with lib; { description = "CLI for out-of-band management of Kubernetes nodes created by Talos"; mainProgram = "talosctl"; homepage = "https://www.talos.dev/"; license = licenses.mpl20; maintainers = with maintainers; [ flokli ]; }; }