{ lib , stdenv , rustPlatform , fetchFromGitHub , cmake , darwin }: rustPlatform.buildRustPackage rec { pname = "subxt"; version = "0.37.0"; src = fetchFromGitHub { owner = "paritytech"; repo = "subxt"; rev = "v${version}"; hash = "sha256-GD4P+SXl9hyv0CxOximOMz+Gzi85kPahsiz0wHRqSWk="; }; cargoHash = "sha256-luKtu9g+NtlwRhC1icpIxkBvP3GtggpKoj7Sx4anLAM="; # Only build the command line client cargoBuildFlags = [ "--bin" "subxt" ]; # Needed by wabt-sys nativeBuildInputs = [ cmake ]; buildInputs = lib.optionals stdenv.hostPlatform.isDarwin [ darwin.apple_sdk.frameworks.Security ]; # Requires a running substrate node doCheck = false; meta = with lib; { homepage = "https://github.com/paritytech/subxt"; description = "Submit transactions to a substrate node via RPC"; mainProgram = "subxt"; license = with licenses; [ gpl3Plus asl20 ]; maintainers = [ maintainers.FlorianFranzen ]; }; }