{ lib , rustPlatform , fetchFromGitHub , pkg-config , openssl , stdenv , libiconv , darwin , nix-update-script }: rustPlatform.buildRustPackage rec { pname = "reindeer"; version = "unstable-2023-05-31"; src = fetchFromGitHub { owner = "facebookincubator"; repo = pname; rev = "9971d473177b26e7ba8cae2a42501f433e5d62b4"; sha256 = "sha256-RaPYy6ansK/JXEfz7KWDeVSGr6pZH5T1oQRuZW4ZqzI="; }; cargoLock = { lockFile = ./Cargo.lock; }; postPatch = '' ln -s ${./Cargo.lock} Cargo.lock ''; nativeBuildInputs = [ pkg-config ]; buildInputs = [ openssl ] ++ lib.optionals stdenv.isDarwin [ libiconv darwin.apple_sdk.frameworks.Security darwin.apple_sdk.frameworks.CoreServices ]; passthru.updateScript = nix-update-script { extraArgs = [ "--version" "branch" ]; }; meta = with lib; { description = "Reindeer is a tool which takes Rust Cargo dependencies and generates Buck build rules"; homepage = "https://github.com/facebookincubator/reindeer"; license = with licenses; [ mit ]; maintainers = with maintainers; [ nickgerace ]; }; }