pixi
pixi copied to clipboard
pixi environment are recognised as "global" by pip
Checks
-
[X] I have checked that this issue has not already been reported.
-
[X] I have confirmed this bug exists on the latest version of pixi, using
pixi --version
.
Reproducible example
$ pixi run pip --require-virtualenv freeze
ERROR: Could not find an activated virtualenv (required).
Issue description
With --require-virtualenv
flag, pip refuses most operation unless a virtual environment is detected, such as to avoid installing stuff globally by mistake.
This issue happened to me because:
- I have
PIP_REQUIRE_VIRTUALENV=1
set globally. -
maturin develop
calls into pip behind the scenes
Workaround: explicitly set PIP_REQUIRE_VIRTUALENV
to zero (which is easy enough for us as the maturin
call is actually behind a task).
Expected behavior
Ideally, pip would think it's ok to install stuff in pixi-managed environments (though there might obviously be implications that I ignore).
It is an issue with any conda environment, and not only pixi ones. See for instance https://stackoverflow.com/questions/54263894/how-do-i-allow-pip-inside-anaconda3-venv-when-pip-set-to-require-virtualenv
Using tasks seems like a good way around the issue.
This issue is inherent to conda environments as explained by @olivier-lacroix . Closing this for now as won't fix.