Определение того, какой менеджер пакетов использовался для установки пакета Python


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

Я могу придумать следующие способы:

  • Источник загрузки
    • distutils
    • распределить
    • SetupTools
  • менеджеры пакетов Python
    • EasyInstall
    • PyPM
    • Пип
  • apt-get

Есть ли способ определить, как он был установлен? Я думаю, что мне нужна эта информация, чтобы безопасно и правильно снимите их.

1 3

1 ответ:

Каждое средство установки может хранить отдельный индекс пакетов, о которых оно знает/установило. Все, что Python заботится о том, чтобы файлы были на месте. Так что в принципе, если вы думаете, что он может быть установлен с определенным инструментом, вам придется спросить инструмент.

Для apt/dpkg можно проверить, отображается ли пакет в списке dpkg -l. Я не знаю, так ли легко доступен индекс pip, но вы можете просто попробовать запустить pip uninstall package-name, он должен жаловаться, если он не установил пакет. Я не знаю о PyPM, но если вы установили из исходного кода или с помощью easy_install, вам просто нужно будет отследить и удалить файлы, пакет нигде не указан.