On 26 Feb 2023, at 20:42, Victor Westerhuis <victor@westerhu.is> wrote:
Barry Scott <barry@barrys-emacs.org> schreef op 26 februari 2023 21:36:20 CET:
On 26 Feb 2023, at 14:06, Danial Behzadi دانیال بهزادی <dani.behzi@ubuntu.com> wrote:
That's the new intended behavior. I you want non-debian python packages, install them in a non-debian python via virtual environments.
The idea is to prevent installing into /usr not preventing install in $USER I hope.
According to the PEP it's both, and it actually makes sense. Python does not distinguish between packages in system-wide and user-specific locations.
Allowing non-virtualized installation of Python packages into the user-specific location could therefore break Python programs and libraries installed by apt/dpkg.
On Fedora they use the -s option for all system apps that use python to prevent breakage from user installed packages.
I have been living in that happy world where pip install --user was safe to use.
Virtualized installations do not cause issues and are still allowed using, for example, pipx or raw venvs.
I am aware of that, but don't reach for venv for simple stuff. Clearly I'm going to have to figure out how to do this for my use case now.
Barry I think this is a major bug.
Barry
در ۲۶ فوریهٔ ۲۰۲۳ ۱۰:۰۴:۲۰ (UTC)، Barry Scott <barry@barrys-emacs.org> نوشت:
I have been using the following to add useful python based commands to my user locally:
$ python3 -m pip install --user <package>
For install I get this:
$ python3 -m pip install --user colour-text error: externally-managed-environment
× This environment is externally managed ╰─> To install Python packages system-wide, try apt install python3-xyz, where xyz is the package you are trying to install.
If you wish to install a non-Debian-packaged Python package, create a virtual environment using python3 -m venv path/to/venv. Then use path/to/venv/bin/python and path/to/venv/bin/pip. Make sure you have python3-full installed.
If you wish to install a non-Debian packaged Python application, it may be easiest to use pipx install xyz, which will manage a virtual environment for you. Make sure you have pipx installed.
See /usr/share/doc/python3.11/README.venv for more information.
note: If you believe this is a mistake, please contact your Python installation or OS distribution provider. You can override this, at the risk of breaking your Python installation or OS, by passing --break-system-packages. hint: See PEP 668 for the detailed specification.
This look wrong to me as I am not installing into the systems site-packages.
Barry
-- Groet, Regards,Victor Westerhuis
|