1{ 2 lib, 3 pkgs, 4 buildPythonPackage, 5 rustPlatform, 6 callPackage, 7}: 8 9buildPythonPackage { 10 pname = "uv-build"; 11 pyproject = true; 12 13 inherit (pkgs.uv) 14 version 15 src 16 cargoDeps 17 cargoBuildFlags 18 ; 19 20 nativeBuildInputs = [ 21 rustPlatform.cargoSetupHook 22 rustPlatform.maturinBuildHook 23 ]; 24 25 buildAndTestSubdir = "crates/uv-build"; 26 27 # $src/.github/workflows/build-binaries.yml#L139 28 maturinBuildFlags = [ "--profile=minimal-size" ]; 29 30 pythonImportsCheck = [ "uv_build" ]; 31 32 # The package has no tests 33 doCheck = false; 34 35 # Run the tests of a package built by `uv_build`. 36 passthru.tests.built-by-uv = callPackage ./built-by-uv.nix { inherit (pkgs) uv; }; 37 38 meta = { 39 description = "A minimal build backend for uv"; 40 homepage = "https://docs.astral.sh/uv/reference/settings/#build-backend"; 41 inherit (pkgs.uv.meta) changelog license; 42 maintainers = with lib.maintainers; [ bengsparks ]; 43 }; 44}