Импорт либ из venv

Я не хочу засорять свою систему миллионом pip installов разных библиотек разных версий, поэтому создал окружение в /path/env/... и устанавливаю туда все либы. Также у меня есть кедовский хоткей на вызов idle (обычный idle-python3.9 -> /usr/bin/idle-python3.9).

Проблема в том, что либы из env'а я не могу получить в не-env'овской идлешке. Как выход для меня - поменять хоткей idle-python3.9 на source /path/env/bin/activate && python -m idlelib, но тут другая проблема - такой подход не работает :) Точнее, из терминала эта команда работает, а при запуске на хоткее - нет.

setsid source /home/t/wf/env/bin/activate && python -m idlelib выдаёт Команда «python» не найдена. . Видимо, setsid выполняет скрипт входа в env, но не сохраняет окружение.

Как мне сделать, чтобы idle'шка вызывалась из env'а? Либо, чтобы не ставить ударопрочное стекло в микроскоп, как изменить запуск idle хоткеем на idle-python3.9, чтобы я мог импортировать либы окружения?

P.S. Я также создавал скрипт, в который по-разному клал вызов source /home/t/wf/env/bin/activate && python -m idlelib, но результата это не дало, вызывалась системная ошибка, и, судя по всему, причина та же, что и с setsid ....


Ответы (1 шт):

Автор решения: eri

Питон 3 сам отлично определяет энв, поэтому можно просто

/home/t/wf/env/bin/python -m idlelib

Не запустится только если её там вообще нет. Но раз с консоли работает - должно сработать

Также окружение можно задать переменной PYTHON_PATH.

→ Ссылка