Почему pip3 устанавливается в ~/.local в Debian?

Lo que sigue es una solución que no necesita cambiar la política de seguridad.

Ignoraré la parte su, ya que podemos usar la opción --userde sudo.

Queremos pasar variables de entorno a un commandejecutado a través de sudo. Sin embargo, sudono permitirá que las variables de entorno se pasen a un comando (. Hay una razón de seguridad válida para esto, algunas variables pueden ser peligrosas ). Se puede usar un shell para establecer variables de entorno, y sudopuede ejecutar un shell con un script que se le pasa. Por lo tanto, dígale a sudoque ejecute un script que establezca las variables de entorno.

var_a=someThing
var_b=someOtherThing

sudo bash -c "
    export var_a=\"${var_a}\"
    export var_b=\"${var_b}\"

    the_command some_args
"
4
17.07.2019, 12:14
1 ответ

В Debianpip3по умолчанию используется пользовательская схема при запуске вне виртуальных окружений, а файлы устанавливаются в ~/.local.

Если вы хотите установить систему инструментов -с широким использованием pip3в Debian и производных версиях, вы все равно можете использовать

pip3 install --system...

для использования схемы системы.

(Стоит проверить, доступен ли рассматриваемый инструмент в виде пакета Debian; В Debian 10 добавлено много пакетов...)

Как указывает муру , виртуальные оболочки во многих случаях являются лучшим подходом. Вся тема установки инструментов Python вызывает множество дискуссий, даже среди основных разработчиков Python !

5
27.01.2020, 20:47

Теги

Похожие вопросы