Пакет Pip не запустится, если я не буду использовать sudo при установке - PullRequest
0 голосов
/ 25 марта 2019

Итак, у меня есть небольшой пакет в pip, и я хочу его установить. Давайте назовем это Ноти. Проблема в том, что если я установлю его с sudo pip3 install noty программа будет работать, но если я установлю ее с помощью pip3 install noty каждый раз, когда я попытаюсь набрать в терминал ноти, это просто не будет работать. Любое решение? Заранее спасибо. Я также включаю некоторые строки в мой файл setup.py, если это как-то помогает.

entry_points='''
        [console_scripts]
        noty=noty.noty:cli
    ''',

Ответы [ 2 ]

1 голос
/ 25 марта 2019

Требуется Sudo, иначе эти каталоги (например, / usr / lib / python / site-packages /) не будут доступны для записи.

0 голосов
/ 25 марта 2019

Я предлагаю создать виртуальную среду (для этого я предлагаю pew https://github.com/berdario/pew) и установить в нее нужный пакет. Точки входа поддерживаются в виртуальных средах.

Возможенальтернатива - полагаться на pipx: https://github.com/pipxproject/pipx

И последнее, но не менее важное: вы можете устанавливать пакеты с помощью pip в «режиме пользователя»: пакеты будут установлены в вашем каталоге пользователя (например, pip install noty --user)К сожалению, почти ни один из «общих дистрибутивов» не поддерживает точки входа таким образом (потому что они установлены в «~ / .local / bin»), если вы не добавите эту папку в PATH:

export PATH=~/.local/bin:$PATH

ThisСтрока может быть добавлена ​​в «~ / .bash_profile», чтобы она автоматически загружалась при запуске (и если вы не хотите ждать следующего запуска, просто выполните source ~/.bash_profile).

...