Как я могу получить размытие, чтобы хорошо играть с виртуальными виртуальными машинами Python?

Diffuse установлен на моей рабочей станции и хорошо работает с Mercurial, поэтому я часто использую его для разграничения. Тем не менее, я также использую виртуальный виджет Python для использования некоторых разных модулей в более контролируемой настройке (проще отправить другим людям). Когда я пытаюсь запустить Diffuse из моего virtualenv (здесь называется sandbox), он pukes:

(sandbox)nickt@aiguadassi:/home/codes/nickt/Tape-Worms/Code
$ diffuse bread.py # fail...
Traceback (most recent call last):
  File "/usr/bin/diffuse", line 124, in <module>
    import pygtk
ImportError: No module named pygtk

Снаружи он работает просто отлично ...

(sandbox)nickt@aiguadassi:/home/codes/nickt/Tape-Worms/Code
$ deactivate 
nickt@aiguadassi:/home/codes/nickt/Tape-Worms/Code
$ diffuse bread.py # works fine.

Предполагаю Diffuse - приложение Python и полагается на поиск модулей в среде; есть ли способ использовать глобальную среду (например, через псевдоним)? Я не уверен, что программа делает в отношении среды ... это поиск через PATH для модулей, пытаясь использовать все, что which python появляется ...

1
задан 15 May 2013 в 04:13

1 ответ

Если первая строка из /usr/bin/diffuse выглядит так:

#!/usr/bin/env python

, она будет запущена в Python внутри вашего виртуального. Большинство приложений Python должны установить его на:

#!/usr/bin/python

, который запустит его с помощью системы Python. Если это неверно, это может быть ошибка в Diffuse или в его упаковке в Debian / Ubuntu.

5
ответ дан 24 May 2018 в 22:11
  • 1
    Так просто; Я продолжал думать, что это двоичный код, потому что он был в bin / facepalm. – Nick T 17 May 2013 в 02:21
  • 2
    Ну, это будет иметь смысл. Но теперь bin просто означает исполняемый файл, включая скрипты. – Thomas K 17 May 2013 в 03:32

Другие вопросы по тегам:

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