Установка пакетов в virtualenv при не активированном питоне - PullRequest
0 голосов
/ 02 февраля 2019

У меня установлен virtualenv в ~/bot/ (в подпапке venv).

Недавно я заметил, что установка пакетов с pip install --user или даже sudo pip install устанавливает на этот virtualenv, дажепосле перезапуска.Python, похоже, не видит ~/bot/~ в python -m site:

$ python -m site
sys.path = [
    '/home/modelmat',
    '/usr/lib/python37.zip',
    '/usr/lib/python3.7',
    '/usr/lib/python3.7/lib-dynload',
    '/home/modelmat/.local/lib/python3.7/site-packages',
    '/usr/lib/python3.7/site-packages',
    '/usr/lib/python3.7/site-packages/keyrings.alt-3.0-py3.7.egg',
    '/usr/lib/python3.7/site-packages/zgitignore-0.8.0-py3.7.egg',
    '/usr/lib/python3.7/site-packages/urllib3-1.22-py3.7.egg',
    '/usr/lib/python3.7/site-packages/SecretStorage-2.3.1-py3.7.egg',
    '/usr/lib/python3.7/site-packages/requests-2.18.4-py3.7.egg',
    '/usr/lib/python3.7/site-packages/python_dateutil-2.7.0-py3.7.egg',
    '/usr/lib/python3.7/site-packages/pycparser-2.18-py3.7.egg',
    '/usr/lib/python3.7/site-packages/psutil-5.4.3-py3.7-linux-x86_64.egg',
    '/usr/lib/python3.7/site-packages/onedrivesdk-1.1.8-py3.7.egg',
    '/usr/lib/python3.7/site-packages/keyring-11.0.0-py3.7.egg',
    '/usr/lib/python3.7/site-packages/inotify_simple-1.1.7-py3.7.egg',
    '/usr/lib/python3.7/site-packages/idna-2.6-py3.7.egg',
    '/usr/lib/python3.7/site-packages/cryptography-2.1.4-py3.7-linux-x86_64.egg',
    '/usr/lib/python3.7/site-packages/colorama-0.3.9-py3.7.egg',
    '/usr/lib/python3.7/site-packages/click-6.7-py3.7.egg',
    '/usr/lib/python3.7/site-packages/cffi-1.11.5-py3.7-linux-x86_64.egg',
    '/usr/lib/python3.7/site-packages/certifi-2018.1.18-py3.7.egg',
    '/usr/lib/python3.7/site-packages/bidict-0.13.1-py3.7.egg',
    '/usr/lib/python3.7/site-packages/onedriveClient-2.0.1-py3.7.egg',
    '/usr/lib/python3.7/site-packages/six-1.11.0-py3.7.egg',
]
USER_BASE: '/home/modelmat/.local' (exists)
USER_SITE: '/home/modelmat/.local/lib/python3.7/site-packages' (exists)
ENABLE_USER_SITE: True

Тем не менее, вот что показывают пакеты:

$ pip show websocket-client
Name: websocket-client
Version: 0.54.0
Summary: WebSocket client for Python. hybi13 is supported.
Home-page: https://github.com/websocket-client/websocket-client.git
Author: liris
Author-email: liris.pp@gmail.com
License: BSD
Location: /home/modelmat/NormoBot/venv/lib/python3.7/site-packages
Requires: six
Required-by: 

Переустановка:

$ sudo pip uninstall websocket-client
Uninstalling websocket-client-0.54.0:
  Would remove:
    /home/modelmat/bot/venv/bin/wsdump.py
    /home/modelmat/bot/venv/lib/python3.7/site-packages/websocket/*
    /home/modelmat/bot/venv/lib/python3.7/site-packages/websocket_client-0.54.0.dist-info/*
Proceed (y/n)? y
  Successfully uninstalled websocket-client-0.54.0
$ sudo pip install websocket-client
Collecting websocket-client
  Using cached https://files.pythonhosted.org/packages/26/2d/f749a5c82f6192d77ed061a38e02001afcba55fe8477336d26a950ab17ce/websocket_client-0.54.0-py2.py3-none-any.whl
Requirement already satisfied: six in ./bot/venv/lib/python3.7/site-packages (from websocket-client) (1.11.0)
Installing collected packages: websocket-client
Successfully installed websocket-client-0.54.0

Показывает то же, что и предыдущий pip show.Точно то же самое происходит с pip install --user.

Я действительно не уверен, как это исправить, кажется, все установлено внутри моего virtualenv.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...