diff --git a/pkgs/by-name/ca/cargo-typify/package.nix b/pkgs/by-name/ca/cargo-typify/package.nix new file mode 100644 index 000000000000000..6d62df94c517d30 --- /dev/null +++ b/pkgs/by-name/ca/cargo-typify/package.nix @@ -0,0 +1,31 @@ +{ lib, rustfmt, rustPlatform, fetchFromGitHub }: + +rustPlatform.buildRustPackage rec { + pname = "cargo-typify"; + version = "0.0.14"; + + src = fetchFromGitHub { + owner = "oxidecomputer"; + repo = "typify"; + rev = "v${version}"; + hash = "sha256-Clwm5hRjPPPRB6xpO8YOGpqnyNFtsSMkPbWBY3etPCI="; + }; + + cargoHash = "sha256-balx5xOtrWwMOFeGQkYQ2f+lcGMCJvdPqE8rH9adkfU="; + + cargoBuildFlags = [ "-p" "cargo-typify" ]; + + nativeCheckInputs = [ rustfmt ]; + + preCheck = '' + # cargo-typify depends on rustfmt-wrapper, which requires RUSTFMT: + export RUSTFMT="${lib.getExe rustfmt}" + ''; + + meta = with lib; { + description = "JSON Schema to Rust type converter"; + homepage = "https://github.com/oxidecomputer/typify"; + license = with licenses; [ asl20 ]; + maintainers = with maintainers; [ david-r-cox ]; + }; +}