diff options
author | aleksana <me@aleksana.moe> | 2024-05-24 12:55:30 +0800 |
---|---|---|
committer | aleksana <me@aleksana.moe> | 2024-05-24 16:49:09 +0800 |
commit | 05e3b4fa4d4f347355a7489366f77afa46c82f34 (patch) | |
tree | 426d1e7e8fa0a32928fc1834dad2982501f4e8a7 /pkgs/by-name/uv | |
parent | 2098d845d76f8a21ae4fe12ed7c7df49098d3f15 (diff) |
uv: build with python builder to include python module
Diffstat (limited to 'pkgs/by-name/uv')
-rw-r--r-- | pkgs/by-name/uv/uv/package.nix | 16 |
1 files changed, 14 insertions, 2 deletions
diff --git a/pkgs/by-name/uv/uv/package.nix b/pkgs/by-name/uv/uv/package.nix index 7b2b589ac5db2..ad7c4d67698d7 100644 --- a/pkgs/by-name/uv/uv/package.nix +++ b/pkgs/by-name/uv/uv/package.nix @@ -3,16 +3,19 @@ , darwin , fetchFromGitHub , installShellFiles +, libiconv , openssl , pkg-config +, python3Packages , rustPlatform , stdenv , nix-update-script }: -rustPlatform.buildRustPackage rec { +python3Packages.buildPythonApplication rec { pname = "uv"; version = "0.1.45"; + pyproject = true; src = fetchFromGitHub { owner = "astral-sh"; @@ -21,7 +24,7 @@ rustPlatform.buildRustPackage rec { hash = "sha256-PJeUndpD7jHcpM66dMIyXpDx95Boc01rzovS0Y7io7w="; }; - cargoLock = { + cargoDeps = rustPlatform.importCargoLock { lockFile = ./Cargo.lock; outputHashes = { "async_zip-0.0.17" = "sha256-Q5fMDJrQtob54CTII3+SXHeozy5S5s3iLOzntevdGOs="; @@ -33,14 +36,19 @@ rustPlatform.buildRustPackage rec { cmake installShellFiles pkg-config + rustPlatform.cargoSetupHook + rustPlatform.maturinBuildHook ]; buildInputs = [ + libiconv openssl ] ++ lib.optionals stdenv.isDarwin [ darwin.apple_sdk.frameworks.SystemConfiguration ]; + dontUseCmakeConfigure = true; + cargoBuildFlags = [ "--package" "uv" ]; # Tests require network access @@ -58,6 +66,10 @@ rustPlatform.buildRustPackage rec { --zsh <($out/bin/uv --generate-shell-completion zsh) ''; + pythonImportsCheck = [ + "uv" + ]; + passthru.updateScript = nix-update-script { }; meta = with lib; { |