←back to thread

741 points chirau | 1 comments | | HN request time: 0.378s | source
Show context
6ak74rfy ◴[] No.44358674[source]
UV is fast, like FAST. Plus, it removes the need for pyenv (for managing different Python versions) and pip for me. Plus, no need to activate env or anything, `uv run ...` automatically runs your code through the env.

It's a nice software.

replies(1): >>44358815 #
nomel ◴[] No.44358815[source]
> Plus, it removes the need for pyenv

I don't see a way to change current and global versions of python/venvs to run scripts, so that when I type "python" it uses that, without making an alias.

replies(3): >>44359039 #>>44360892 #>>44361369 #
1. zbentley ◴[] No.44360892[source]
Two options other than aliases:

1. Modify your PATH:

    export PATH="$(uv run python -BISc 'import sys; print(sys.base_exec_prefix)')/bin:$PATH"
2. Put this in an executable file called "python" early in your PATH:

    #!/bin/sh
    exec uv run python $*
Those are basically what pyenv does (via a symlink and PATH entry).

The second option will always pick up the Python local to the project directory you're in, if any. The former (if you put it in your shell profile) will not.