Add --install-dir arg to uv python install and uninstall (#7920)

## Summary

This PR adds `--install-dir` argument for the following commands:
- `uv python install`
- `uv python uninstall`

The `UV_PYTHON_INSTALL_DIR` env variable can be used to set it
(previously it was also used internally).

Any more commands we would want to add this to? 

## Test Plan

For now just manual test (works on my machine hehe)

```
❯ ./target/debug/uv python install --install-dir /tmp/pythons 3.8.12
Searching for Python versions matching: Python 3.8.12
Installed Python 3.8.12 in 4.31s
 + cpython-3.8.12-linux-x86_64-gnu
❯ /tmp/pythons/cpython-3.8.12-linux-x86_64-gnu/bin/python --help
usage: /tmp/pythons/cpython-3.8.12-linux-x86_64-gnu/bin/python [option] ... [-c cmd | -m mod | file | -] [arg] ...
```

Open to add some tests after the initial feedback.

---------

Co-authored-by: Zanie Blue <contact@zanie.dev>
This commit is contained in:
Daniel Gafni
2024-12-10 19:04:31 +02:00
committed by GitHub
parent b751648bfe
commit d0ccc9a16f
13 changed files with 76 additions and 19 deletions
+2 -2
View File
@@ -74,7 +74,7 @@ fn python_install() {
error: the following required arguments were not provided:
<TARGETS>...
Usage: uv python uninstall <TARGETS>...
Usage: uv python uninstall --install-dir <INSTALL_DIR> <TARGETS>...
For more information, try '--help'.
"###);
@@ -209,7 +209,7 @@ fn python_install_preview() {
error: the following required arguments were not provided:
<TARGETS>...
Usage: uv python uninstall <TARGETS>...
Usage: uv python uninstall --install-dir <INSTALL_DIR> <TARGETS>...
For more information, try '--help'.
"###);