Clone of https://github.com/NixOS/nixpkgs.git (to stress-test knotserver)
1{
2 lib,
3 rustPlatform,
4 fetchFromGitHub,
5 pkg-config,
6 libgit2,
7 openssl,
8 stdenv,
9 curl,
10 git,
11}:
12
13rustPlatform.buildRustPackage rec {
14 pname = "cargo-release";
15 version = "0.25.18";
16
17 src = fetchFromGitHub {
18 owner = "crate-ci";
19 repo = "cargo-release";
20 tag = "v${version}";
21 hash = "sha256-1CHUkXjb8+wOFQWo/04KcLaJcv/dLiDYwPrSnzWucXI=";
22 };
23
24 cargoHash = "sha256-ESaESon1oJAlvsv6+TIb/lLsOQmjgheQWm82Lr0mJOE=";
25
26 nativeBuildInputs = [
27 pkg-config
28 ];
29
30 buildInputs = [
31 libgit2
32 openssl
33 ]
34 ++ lib.optionals stdenv.hostPlatform.isDarwin [
35 curl
36 ];
37
38 nativeCheckInputs = [
39 git
40 ];
41
42 # disable vendored-libgit2 and vendored-openssl
43 buildNoDefaultFeatures = true;
44
45 meta = {
46 description = ''Cargo subcommand "release": everything about releasing a rust crate'';
47 mainProgram = "cargo-release";
48 homepage = "https://github.com/crate-ci/cargo-release";
49 changelog = "https://github.com/crate-ci/cargo-release/blob/v${version}/CHANGELOG.md";
50 license = with lib.licenses; [
51 asl20 # or
52 mit
53 ];
54 maintainers = with lib.maintainers; [
55 figsoda
56 gerschtli
57 ];
58 };
59}