diff --git a/pkgs/by-name/fl/flutter_rust_bridge_codegen/package.nix b/pkgs/by-name/fl/flutter_rust_bridge_codegen/package.nix new file mode 100644 index 000000000000..096368cba962 --- /dev/null +++ b/pkgs/by-name/fl/flutter_rust_bridge_codegen/package.nix @@ -0,0 +1,41 @@ +{ + lib, + fetchFromGitHub, + rustPlatform, + cargo-expand, +}: +rustPlatform.buildRustPackage rec { + pname = "flutter_rust_bridge_codegen"; + version = "2.6.0"; + + src = fetchFromGitHub { + owner = "fzyzcjy"; + repo = "flutter_rust_bridge"; + rev = "v${version}"; + hash = "sha256-SGbl1l2jtANO9QMNz9GDXI794RY/K+ldpmDxLkqAa+Y="; + fetchSubmodules = true; + }; + + cargoHash = "sha256-b+duVR3vn1HrhUcVucHfzjTDhbru3+IYVNS3ji6LGto="; + cargoBuildFlags = "--package flutter_rust_bridge_codegen"; + cargoTestFlags = "--package flutter_rust_bridge_codegen"; + + # needed to get tests running + nativeBuildInputs = [ cargo-expand ]; + + # needed to run text (see https://github.com/fzyzcjy/flutter_rust_bridge/blob/ae970bfafdf80b9eb283a2167b972fb2e6504511/frb_codegen/src/library/utils/logs.rs#L43) + logLevel = "debug"; + checkFlags = [ + # Disabled because these tests need a different version of anyhow than the package itself + "--skip=tests::test_execute_generate_on_frb_example_dart_minimal" + "--skip=tests::test_execute_generate_on_frb_example_pure_dart" + ]; + + meta = { + mainProgram = "flutter_rust_bridge_codegen"; + description = "Flutter/Dart <-> Rust binding generator, feature-rich, but seamless and simple"; + homepage = "https://fzyzcjy.github.io/flutter_rust_bridge"; + license = lib.licenses.mit; + maintainers = [ lib.maintainers.eymeric ]; + }; +}