mamba-org / mamba

The Fast Cross-Platform Package Manager
https://mamba.readthedocs.io
BSD 3-Clause "New" or "Revised" License
6.57k stars 343 forks source link

mamba pip install packages into wrong directory (it uses .local site instead of environment site) #3284

Open anki-code opened 2 months ago

anki-code commented 2 months ago

Troubleshooting docs

Anaconda default channels

How did you install Mamba?

Micromamba

Search tried in issue tracker

mamba pip install site

Latest version of Mamba

Tried in Conda?

I didn't try

Describe your issue

# I have a directory for user site-packages:
ls ~/.local/lib/python3.10  
# site-packages

# I have micromamba with "default" environment:
ls ~/.micromamba  
# envs  micromamba  pkgs

export MAMBA_ROOT_PREFIX=/home/user/.micromamba
export PATH=/home/user/.micromamba:$PATH
echo 'eval "$(micromamba shell hook --shell bash)'
micromamba activate default

echo $PATH
# /home/user/.micromamba/envs/default/bin
# :/home/user/.micromamba/condabin
# :/home/user/.local/bin
# :/home/user/.micromamba
# :/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/snap/bin

which python
# /home/user/.micromamba/envs/default/bin/python

which pip
# /home/user/.micromamba/envs/default/bin/pip

env | grep PIP
# no

env | grep PY
# no

python -m site
# sys.path = [
#    '/home/user',
#    '/home/user/.micromamba/envs/default/lib/python310.zip',
#    '/home/user/.micromamba/envs/default/lib/python3.10',
#    '/home/user/.micromamba/envs/default/lib/python3.10/lib-dynload',
#    '/home/user/.local/lib/python3.10/site-packages',  # -------------- before mamba
#    '/home/user/.micromamba/envs/default/lib/python3.10/site-packages', 
#    '/home/user/__editable__.fschat-0.2.31.finder.__path_hook__',
#    '__editable__.fschat-0.2.31.finder.__path_hook__',
#]
#USER_BASE: '/home/user/.local' (exists) # ----------- wtf?
#USER_SITE: '/home/user/.local/lib/python3.10/site-packages' (exists) # --------- wtf?
#ENABLE_USER_SITE: True  # --------- wtf?

Expected - install lolcat into default mamba environment:

pip install lolcat
# Successfully install lolcat

Actual:

pip uninstall lolcat
# Uninstalling lolcat-1.4:
#   Would remove:
#     /home/user/.local/bin/lolcat
#     /home/user/.local/lib/python3.10/site-packages/lolcat-1.4.dist-info/*

mamba info / micromamba info

libmamba version : 1.5.8
     micromamba version : 1.5.8
           curl version : libcurl/8.6.0 OpenSSL/3.2.1 zlib/1.2.13 zstd/1.5.5 libssh2/1.11.0 nghttp2/1.58.0
     libarchive version : libarchive 3.7.2 zlib/1.2.13 bz2lib/1.0.8 libzstd/1.5.5
       envs directories : /home/user/.micromamba/envs
          package cache : /home/user/.micromamba/pkgs
                          /home/user/.mamba/pkgs
            environment : default (active)
           env location : /home/user/.micromamba/envs/default
      user config files : /home/user/.mambarc
 populated config files : /home/user/.condarc
       virtual packages : __unix=0=0
                          __linux=5.15.0=0
                          __glibc=2.31=0
                          __archspec=1=x86_64-v4
               channels : https://conda.anaconda.org/conda-forge/linux-64
                          https://conda.anaconda.org/conda-forge/noarch
                          https://conda.anaconda.org/nodefaults/linux-64
                          https://conda.anaconda.org/nodefaults/noarch
       base environment : /home/user/.micromamba
               platform : linux-64

For community

⬇️ Please click the 👍 reaction instead of leaving a +1 or 👍 comment

anki-code commented 2 months ago

The similar for conda - https://github.com/conda/conda/issues/12323

anki-code commented 2 months ago

Related How to disable site.ENABLE_USER_SITE for an environment?