diff --git a/pkgs/tools/security/cliam/default.nix b/pkgs/tools/security/cliam/default.nix new file mode 100644 index 00000000000..7b7ee342a12 --- /dev/null +++ b/pkgs/tools/security/cliam/default.nix @@ -0,0 +1,48 @@ +{ lib +, buildGoModule +, fetchFromGitHub +, installShellFiles +}: + +buildGoModule rec { + pname = "cliam"; + version = "1.0.0"; + + src = fetchFromGitHub { + owner = "securisec"; + repo = pname; + rev = version; + hash = "sha256-bq7u6pknokyY4WwO1qMYPuY86UZlDgeYEa1AJpk8d+4="; + }; + + vendorSha256 = "sha256-aGBA97EvIUv9myqcrtltiVxh1/0VtrQy2j9GU6r197g="; + + nativeBuildInputs = [ + installShellFiles + ]; + + ldflags = [ + "-s" + "-w" + "-X github.com/securisec/cliam/cli/version.Version=${version}" + ]; + + postBuild = '' + # should be called cliam + mv $GOPATH/bin/{cli,cliam} + ''; + + postInstall = '' + installShellCompletion --cmd cliam \ + --bash <($out/bin/cliam completion bash) \ + --fish <($out/bin/cliam completion fish) \ + --zsh <($out/bin/cliam completion zsh) + ''; + + meta = with lib; { + description = "Cloud agnostic IAM permissions enumerator"; + homepage = "https://github.com/securisec/cliam"; + license = licenses.gpl3Only; + maintainers = with maintainers; [ fab ]; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index e20bd7f46c7..6c9a00c0f1b 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -2967,6 +2967,8 @@ with pkgs; cli-visualizer = callPackage ../applications/misc/cli-visualizer { }; + cliam = callPackage ../tools/security/cliam { }; + clickclack = callPackage ../tools/misc/clickclack { }; clickgen = with python3Packages; toPythonApplication clickgen;