about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--maintainers/maintainer-list.nix6
-rw-r--r--pkgs/by-name/cr/crossplane-cli/package.nix42
2 files changed, 48 insertions, 0 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index ebbd427476f4..ef2a95c6a143 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -16323,6 +16323,12 @@
     githubId = 4927883;
     matrix = "@seirl:matrix.org";
   };
+  selfuryon = {
+    name = "Sergei Iakovlev";
+    email = "siakovlev@pm.me";
+    github = "selfuryon";
+    githubId = 2993917;
+  };
   sellout = {
     email = "greg@technomadic.org";
     github = "sellout";
diff --git a/pkgs/by-name/cr/crossplane-cli/package.nix b/pkgs/by-name/cr/crossplane-cli/package.nix
new file mode 100644
index 000000000000..252b8ed84b2f
--- /dev/null
+++ b/pkgs/by-name/cr/crossplane-cli/package.nix
@@ -0,0 +1,42 @@
+{ lib
+, buildGoModule
+, fetchFromGitHub
+, nix-update-script
+}:
+
+buildGoModule rec {
+  pname = "crossplane-cli";
+  version = "1.14.3";
+
+  src = fetchFromGitHub {
+    owner = "crossplane";
+    repo = "crossplane";
+    rev = "v${version}";
+    hash = "sha256-rxN0Zi1UgQjDOkY2OJlG6826ARBzlEObJk4nDEc9784=";
+  };
+
+  vendorHash = "sha256-vkXvnEstD/czBDxmI96TIQB/L4jxhMwIS1XpHqVtxqY=";
+
+  ldflags = [
+    "-s"
+    "-w"
+    "-X github.com/crossplane/crossplane/internal/version.version=v${version}"
+  ];
+
+  subPackages = [ "cmd/crank" ];
+
+  postInstall = ''
+    mv $out/bin/crank $out/bin/crossplane
+  '';
+
+  passthru.updateScript = nix-update-script { };
+
+  meta = with lib; {
+    homepage = "https://www.crossplane.io/";
+    changelog = "https://github.com/crossplane/crossplane/releases/tag/v${version}";
+    description = "Utility to make using Crossplane easier";
+    mainProgram = "crossplane";
+    license = licenses.asl20;
+    maintainers = with maintainers; [ selfuryon ];
+  };
+}