1{ lib
2, rustPlatform
3, fetchFromGitHub
4, pkg-config
5, openssl
6, stdenv
7, Security
8, SystemConfiguration
9}:
10
11rustPlatform.buildRustPackage rec {
12 pname = "cargo-clone";
13 version = "1.1.0";
14
15 src = fetchFromGitHub {
16 owner = "janlikar";
17 repo = pname;
18 rev = "v${version}";
19 sha256 = "1lfg47kw07k4r795n0iixl5cnrb13g74hqlbp8jzbypr255bc16q";
20 };
21
22 cargoSha256 = "sha256-rJcTl5fe3vkNNyLRvm7q5KmzyJXchh1/JuzK0GFhHLk=";
23
24 nativeBuildInputs = [ pkg-config ];
25
26 buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [
27 Security
28 SystemConfiguration
29 ];
30
31 # requires internet access
32 doCheck = false;
33
34 meta = with lib; {
35 description = "A cargo subcommand to fetch the source code of a Rust crate";
36 homepage = "https://github.com/janlikar/cargo-clone";
37 changelog = "https://github.com/janlikar/cargo-clone/blob/v${version}/CHANGELOG.md";
38 license = with licenses; [ asl20 mit ];
39 maintainers = with maintainers; [ figsoda matthiasbeyer ];
40 };
41}