diff --git a/pkgs/development/tools/rust/cargo-make/default.nix b/pkgs/development/tools/rust/cargo-make/default.nix new file mode 100644 index 00000000000..056ecd0ca68 --- /dev/null +++ b/pkgs/development/tools/rust/cargo-make/default.nix @@ -0,0 +1,43 @@ +{ stdenv, fetchurl, runCommand, fetchFromGitHub, rustPlatform, Security }: + +rustPlatform.buildRustPackage rec { + pname = "cargo-make"; + version = "0.19.1"; + + src = + let + source = fetchFromGitHub { + owner = "sagiegurari"; + repo = pname; + rev = version; + sha256 = "1bv5gv5zd9h0yw7wb28r0c4z9wqa6n7ac4ipd855apwz1v7sm9n3"; + }; + cargo-lock = fetchurl { + url = "https://gist.githubusercontent.com/xrelkd/e4c9c7738b21f284d97cb7b1d181317d/raw/8a12a07cafeff4ef4a01983f5243dd8c95d10c48/cargo-make-0.19.1-Cargo.lock"; + sha256 = "0v2hygkpsyjcpzrgyzl5mah0y8gmprfbnz7kn4hh6zfhz2lhqqwm"; + }; + in + runCommand "cargo-make-src" {} '' + cp -R ${source} $out + chmod +w $out + cp ${cargo-lock} $out/Cargo.lock + ''; + + buildInputs = stdenv.lib.optionals stdenv.isDarwin [ Security ]; + + cargoSha256 = "0j7gyg6l428gypjpfgdz082vz8m86cx1wy2r47az3sc3skl6dhkq"; + + # Some tests fail because they need network access. + # However, Travis ensures a proper build. + # See also: + # https://travis-ci.org/sagiegurari/cargo-make + doCheck = false; + + meta = with stdenv.lib; { + description = "A Rust task runner and build tool"; + homepage = https://github.com/sagiegurari/cargo-make; + license = licenses.asl20; + maintainers = with maintainers; [ xrelkd ]; + platforms = platforms.all; + }; +} diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix index 00fc451b035..fd3cc0fe4d2 100644 --- a/pkgs/top-level/all-packages.nix +++ b/pkgs/top-level/all-packages.nix @@ -4889,7 +4889,7 @@ in ola = callPackage ../applications/misc/ola { }; - olive-editor = libsForQt5.callPackage ../applications/video/olive-editor { + olive-editor = libsForQt5.callPackage ../applications/video/olive-editor { inherit (darwin.apple_sdk.frameworks) CoreFoundation; }; @@ -7943,6 +7943,9 @@ in cargo-bloat = callPackage ../development/tools/rust/cargo-bloat { }; cargo-expand = callPackage ../development/tools/rust/cargo-expand { }; cargo-fuzz = callPackage ../development/tools/rust/cargo-fuzz { }; + cargo-make = callPackage ../development/tools/rust/cargo-make { + inherit (darwin.apple_sdk.frameworks) Security; + }; cargo-sweep = callPackage ../development/tools/rust/cargo-sweep { }; cargo-xbuild = callPackage ../development/tools/rust/cargo-xbuild { };