about summary refs log tree commit diff
path: root/pkgs/development/tools/rust/cargo-about/default.nix
diff options
context:
space:
mode:
Diffstat (limited to 'pkgs/development/tools/rust/cargo-about/default.nix')
-rw-r--r--pkgs/development/tools/rust/cargo-about/default.nix31
1 files changed, 31 insertions, 0 deletions
diff --git a/pkgs/development/tools/rust/cargo-about/default.nix b/pkgs/development/tools/rust/cargo-about/default.nix
new file mode 100644
index 0000000000000..8b98858e823b9
--- /dev/null
+++ b/pkgs/development/tools/rust/cargo-about/default.nix
@@ -0,0 +1,31 @@
+{ lib, rustPlatform, fetchFromGitHub, pkg-config, zstd, stdenv }:
+
+rustPlatform.buildRustPackage rec {
+  pname = "cargo-about";
+  version = "0.5.1";
+
+  src = fetchFromGitHub {
+    owner = "EmbarkStudios";
+    repo = "cargo-about";
+    rev = version;
+    sha256 = "sha256-T8Hhody0jMmZb6/xMkSvKCv4STZPbcrf/UB3APspYDM=";
+  };
+
+  # enable pkg-config feature of zstd
+  cargoPatches = [ ./zstd-pkg-config.patch ];
+
+  cargoSha256 = "sha256-x/HzDYNy0FDxJmhjSUUEiyahM7Sw27aC+ULP/Ii0X/8=";
+
+  nativeBuildInputs = [ pkg-config ];
+
+  buildInputs = [ zstd ];
+
+  meta = with lib; {
+    description = "Cargo plugin to generate list of all licenses for a crate";
+    homepage = "https://github.com/EmbarkStudios/cargo-about";
+    changelog = "https://github.com/EmbarkStudios/cargo-about/blob/${version}/CHANGELOG.md";
+    license = with licenses; [ mit /* or */ asl20 ];
+    maintainers = with maintainers; [ evanjs figsoda ];
+    broken = stdenv.isDarwin;
+  };
+}