astral-sh / uv

An extremely fast Python package and project manager, written in Rust.
https://docs.astral.sh/uv
Apache License 2.0
22.41k stars 652 forks source link

Feature: Provide a Debian package #8047

Open jondo opened 1 day ago

jondo commented 1 day ago

I am on Linux Mint, and I would like to start using uv, but I have been taught not to trust arbitrary installer scripts like your https://astral.sh/uv/install.sh . Also, I would like to avoid pip install uv, since I cannot be sure this keeps my local Python environment stable.

So I would like to humbly ask for a Debian uv package.

(This might only make sense at a 1.0 release. Is there a road map for 1.0? According to this closed milestone, uv is already feature complete.)

(I will use the pip installation for now.)

zanieb commented 1 day ago

I don't think we can maintain this — someone from the Debian package repository would need to.

jondo commented 1 day ago

That's a pity.

Hmm, I can only use pip within a virtualenv, otherwise I get error: externally-managed-environment (even with pip install --user uv). However I have the feeling that I should be able to use uv instead of virtualenv (+piptools), not in addition to it.

konstin commented 1 day ago

By default, uv doesn't install pip into the virtualenv. You can use uv pip or alternatively create the venv with pip by using uv venv --seed.

jondo commented 1 day ago

@konstin , sorry, I think you misunderstood. My comment was about how to use pip in a venv to install uv, not about how to use uv to create a venv with the pip package installed within.

konstin commented 1 day ago

I'm not sure why pip install --user uv is failing, that is not something we control.

To come back to the original post:

but I have been taught not to trust arbitrary installer scripts like your astral.sh/uv/install.sh

If you are looking for a download without running a script, you can get an archive from https://github.com/astral-sh/uv/releases/latest. You can also download and inspect the installer script before running it.

zanieb commented 1 day ago

More details on all that in https://docs.astral.sh/uv/getting-started/installation/

I think there's also a snap available for uv on Debian. I wouldn't recommend snap personally, but it might be what you want.

mescanne commented 1 day ago

Comment on this -

I recommend using pipx. It is distributed with debian (apt-get install pipx) and allows you to install arbitrary pip-delivered CLI tools. So pipx install uv will put uv in $HOME/.local/bin.

The benefit is that you can upgrade (pipx upgrade uv) when and how you'd like to the latest, without being constrainted by Debian's release cycle.