New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conda installer does not enable site isolation #5
Comments
This seems like a broken pip installation.
|
That's a standard Debian pip that works perfectly well for everything else. If I run What's the point of using all the awful conda stuff if you're still going to stick with system pip, anyway? |
I don't use conda, I manage the binary dependencies with the system package manager (I use arch, most stable stuff is in the repos and we have https://github.com/FFY00/symbiflow-arch-pkgs for AFAIK conda works in virtual environments. If Btw, the whole point of running I can install everything fine here:
I just created a virtual environment and run pip, everything seems to be working as expected. To me, it seems like you have a bad conda environment set up, or conda is just even worse than I thought 😛. |
I didn't set up a conda environment. I would never use conda voluntarily. I downloaded the installer provided by QuickLogic, which uses conda internally, and evidently that installer did not set a good conda environment, which is exactly what I'm reporting! |
Oh, and fasm is not the problem--Yosys and VPR are, since those can't be simply installed from PyPI but have to be built from sources. |
Ah, right. Sorry.
I install all that from source. Even if I need to package it myself, it is significantly easier than dealing with conda. I can add quicklogic yosys & vtr to my arch nightly repo, should be fairly easy. But you are running debian so it probably wouldn't be very helful to you. |
Indeed. I'd like to eventually provide builds as a part of YoWASP but that requires the Yosys bits to get upstream first. |
@whitequark : Most of the posts shows by uninstalling pip and re-installing would fix this. Below link has few suggestions, hope it helps. |
@kkumar23 Why does the conda installer care about the system pip? What if I don't have a system pip at all? |
Something very weird is going on there -- you are correct that conda shouldn't be looking at the system pip. Could you give me the output of any Python related environment variables (like |
I don't have any:
|
@whitequark did you manage to get any more debug info? |
Sort of. I discovered that although I had no conda environments still present, I had a |
@whitequark -- Frustratingly, at the moment there is no way to prevent conda from reading and modifying of |
Okay, I figured out what the problem is. The problem is that the Symbiflow conda installation is intended to be an isolated environment, but it is not, and as a result, running pip from the conda environment loads random modules from The proper fix is to apply this patch to the --- conda_build_install_package.sh.orig 2020-11-07 16:14:29.613111775 +0000
+++ conda_build_install_package.sh 2020-11-07 16:08:52.019547039 +0000
@@ -19,6 +19,7 @@
wget https://repo.continuum.io/miniconda/Miniconda3-latest-Linux-x86_64.sh -O conda_installer.sh
bash conda_installer.sh -b -p $INSTALL_DIR/conda && rm conda_installer.sh
source "$INSTALL_DIR/conda/etc/profile.d/conda.sh"
+echo "include-system-site-packages=false" >> $INSTALL_DIR/conda/pyvenv.cfg
conda config --set always_yes yes --set changeps1 no
conda config --add channels conda-forge
conda config --add channels quicklogic-corp/label/ql I couldn't find where this file is generated or I would have sent a PR. The workaround for the time being is to |
* Exclude a users `site.py` using `PYTHONNOUSERSITE`. * Create a pyvenv.cfg file to exclude system-site-packages. See [this stackoverflow post for more information](https://stackoverflow.com/questions/51525072/global-pip-referenced-within-a-conda-environment). Issue was discovered by @whitequark and reported in QuickLogic-Corp/quicklogic-fpga-toolchain#5 (comment)
* Exclude a users `site.py` using `PYTHONNOUSERSITE`. * Create a pyvenv.cfg file to exclude system-site-packages. See [this stackoverflow post for more information](https://stackoverflow.com/questions/51525072/global-pip-referenced-within-a-conda-environment). Issue was discovered by @whitequark and reported in QuickLogic-Corp/quicklogic-fpga-toolchain#5 (comment) Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
* Exclude a users `site.py` using `PYTHONNOUSERSITE`. * Create a pyvenv.cfg file to exclude system-site-packages. See [this stackoverflow post for more information](https://stackoverflow.com/questions/51525072/global-pip-referenced-within-a-conda-environment). Issue was discovered by @whitequark and reported in QuickLogic-Corp/quicklogic-fpga-toolchain#5 (comment) Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
* Exclude a users `site.py` using `PYTHONNOUSERSITE`. * Create a pyvenv.cfg file to exclude system-site-packages. See [this stackoverflow post for more information](https://stackoverflow.com/questions/51525072/global-pip-referenced-within-a-conda-environment). Issue was discovered by @whitequark and reported in QuickLogic-Corp/quicklogic-fpga-toolchain#5 (comment) Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
* Exclude a users `site.py` using `PYTHONNOUSERSITE`. * Create a pyvenv.cfg file to exclude system-site-packages. See [this stackoverflow post for more information](https://stackoverflow.com/questions/51525072/global-pip-referenced-within-a-conda-environment). Issue was discovered by @whitequark and reported in QuickLogic-Corp/quicklogic-fpga-toolchain#5 (comment) Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
* Exclude a users `site.py` using `PYTHONNOUSERSITE`. * Create a pyvenv.cfg file to exclude system-site-packages. See [this stackoverflow post for more information](https://stackoverflow.com/questions/51525072/global-pip-referenced-within-a-conda-environment). Issue was discovered by @whitequark and reported in QuickLogic-Corp/quicklogic-fpga-toolchain#5 (comment) Signed-off-by: Tim 'mithro' Ansell <me@mith.ro>
@whitequark : I have updated with "+echo "include-system-site-packages=false" >> $INSTALL_DIR/conda/pyvenv.cfg" . Please verify with v1.3.0 |
I believe this issue is fixed. |
I'm installing the v1.0.0 release on Debian 10 buster with Python 3.7.3 and pip 18.1. This does not work because conda pip is trying to load something from system pip:
The text was updated successfully, but these errors were encountered: