Wrote some notes on Aider's unconventional but kind of brilliant installation mechanism, which solves the "isolated Python virtual environment" problem by bundling uv as a dependency! https://simonwillison.net/2025/Mar/6/aider-using-uv-as-an-installer/
@simon The biggest problem I think people have and possibly will continue to have is "where do I get my Python". The system python is not a good thing to use for random stuff.
I haven't looked much into how `uv` handles installing and managing Python versions for you, but if it's halfway decent, then you probably don't want to abstract over that anyway, you want to tell people, "Install `uv` as a system package, then use it to install `aider`".
@pganssle that's what I think is clever about the Aider trick: if you DO have at least something that runs when you type "python" it can bootstrap a Python 3.12 that works well from that
There are other options (including curl script one) provided too, but the uv dependency one is a particularly neat way of NOT having to teach people about system packages, uv, environments etc
@brettcannon @pganssle that sounds like it could be a very impactful project!
@simon I agree, hence why it's #8 on my personal Python "Big Plans" list.
@brettcannon @pganssle @simon if somebody starts working on this, pypy has been doing this for years on a bunch of platforms, we'd be happy to help out
@brettcannon I'm a cpy core dev too, so I have access anyway 😊 @pganssle @simon
@brettcannon @pganssle @simon I think that would be a splendid thing! Where can I participate and help with this?
@jezdez @cfbolz Zanie from Astral is working to upstream some of the patches from https://github.com/astral-sh/python-build-standalone, you could contact them there or in the Astral Discord.
@hugovk @cfbolz @brettcannon @pganssle @simon That makes sense
@pganssle @simon If it were me, I'd bootstrap it with UV and let it pick up the version of Python you want. You could even bootstrap it or shebang it if you needed a more complex build.