diff --git a/pkgs/by-name/uv/uv/package.nix b/pkgs/by-name/uv/uv/package.nix index d8e53eb32fba0..027dc511fb9bf 100644 --- a/pkgs/by-name/uv/uv/package.nix +++ b/pkgs/by-name/uv/uv/package.nix @@ -4,16 +4,14 @@ fetchFromGitHub, installShellFiles, pkg-config, - python3Packages, rustPlatform, versionCheckHook, nix-update-script, }: -python3Packages.buildPythonApplication rec { +rustPlatform.buildRustPackage rec { pname = "uv"; version = "0.5.4"; - pyproject = true; src = fetchFromGitHub { owner = "astral-sh"; @@ -22,17 +20,13 @@ python3Packages.buildPythonApplication rec { hash = "sha256-Kieh76RUrDEwdL04mvCXOqbXHasMMpXRqp0LwMOIHdM="; }; - cargoDeps = rustPlatform.fetchCargoVendor { - inherit pname version src; - hash = "sha256-ZhHUKotXVDdwJs2kqIxME5I1FitWetx7FrQtluuIUWo="; - }; + useFetchCargoVendor = true; + cargoHash = "sha256-ZhHUKotXVDdwJs2kqIxME5I1FitWetx7FrQtluuIUWo="; nativeBuildInputs = [ cmake installShellFiles pkg-config - rustPlatform.cargoSetupHook - rustPlatform.maturinBuildHook ]; dontUseCmakeConfigure = true; @@ -42,6 +36,8 @@ python3Packages.buildPythonApplication rec { "uv" ]; + doCheck = false; + postInstall = '' export HOME=$TMPDIR installShellCompletion --cmd uv \ @@ -50,8 +46,6 @@ python3Packages.buildPythonApplication rec { --zsh <($out/bin/uv --generate-shell-completion zsh) ''; - pythonImportsCheck = [ "uv" ]; - nativeCheckInputs = [ versionCheckHook ]; diff --git a/pkgs/development/python-modules/uv/default.nix b/pkgs/development/python-modules/uv/default.nix new file mode 100644 index 0000000000000..529b3b782bc97 --- /dev/null +++ b/pkgs/development/python-modules/uv/default.nix @@ -0,0 +1,32 @@ +{ + buildPythonPackage, + installShellFiles, + pkg-config, + rustPlatform, + pkgs, +}: + +buildPythonPackage { + inherit (pkgs.uv) + pname + version + src + cargoDeps + dontUseCmakeConfigure + meta + cargoBuildFlags + postInstall + versionCheckProgramArg + ; + + nativeBuildInputs = [ + pkgs.cmake + installShellFiles + pkg-config + rustPlatform.cargoSetupHook + rustPlatform.maturinBuildHook + ]; + + pyproject = true; + pythonImportsCheck = [ "uv" ]; +} diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix index 86f156f8cffbf..679f9e689e6b0 100644 --- a/pkgs/top-level/python-packages.nix +++ b/pkgs/top-level/python-packages.nix @@ -17395,9 +17395,7 @@ self: super: with self; { uuid6 = callPackage ../development/python-modules/uuid6 { }; - uv = toPythonModule (pkgs.uv.override { - python3Packages = self; - }); + uv = callPackage ../development/python-modules/uv { }; uvcclient = callPackage ../development/python-modules/uvcclient { };