Snow Leopardのeasy_installにはまる
プロキシ環境でeasy_installを使ってtracのプラグインをインストールしてみる。Windows XPでは問題なくインストール出来たのに、Snow Leopard (MacOS X 10.6.3) では何故か失敗してしまう。プロキシは環境変数に既に設定済みだ。
$ export http_proxy=http://proxy.server:8080/
出力を見ていると、subversionがプロキシサーバを越えられないようだ。
$ sudo easy_install http://trac-hacks.org/svn/tocmacro/0.11 Downloading http://trac-hacks.org/svn/tocmacro/0.11 Doing subversion checkout from http://trac-hacks.org/svn/tocmacro/0.11 to /var/folders/GP/GPGC2n-dFY0AYFMT+CkRTT+++TI/-Tmp-/easy_install-iXb0p1/0.11 svn: OPTIONS (URL: 'http://trac-hacks.org/svn/tocmacro/0.11'): サーバに接続できませんでした (http://trac-hacks.org) Processing 0.11 error: Couldn't find a setup script in /var/folders/GP/GPGC2n-dFY0AYFMT+CkRTT+++TI/-Tmp-/easy_install-iXb0p1/0.11
そこで、~/.subversion/serversを開き、下記の設定を追記してみる。
http-proxy-host = proxy.server http-proxy-port = 8080
今度はサーバにアクセス出来た。プラグインがダウンロードされ、インストールも出来たようだ。
$ sudo easy_install http://trac-hacks.org/svn/tocmacro/0.11 Downloading http://trac-hacks.org/svn/tocmacro/0.11 Doing subversion checkout from http://trac-hacks.org/svn/tocmacro/0.11 to /tmp/easy_install-Ws6bfU/0.11 Processing 0.11 Running setup.py -q bdist_egg --dist-dir /tmp/easy_install-Ws6bfU/0.11/egg-dist-tmp-d9DuZv unrecognized .svn/entries format in zip_safe flag not set; analyzing archive contents... TracTocMacro 11.0.0.3 is already the active version in easy-install.pth Installed /Library/Python/2.6/site-packages/TracTocMacro-11.0.0.3-py2.6.egg Processing dependencies for TracTocMacro==11.0.0.3 Finished processing dependencies for TracTocMacro==11.0.0.3
でも、インストール先のパスがおかしい。MacPortsでインストールしたtracを使っているのだから、MacPorts側のPythonにインストールされるべきだ。どのeasy_installを使っていたのだろう?
$ which easy_install /usr/bin/easy_install
これではなくて、MacPortsのeasy_installを使うべきだ。該当するeasy_installを指定してみる。
$ sudo /opt/local/bin/easy_install-2.6 http://trac-hacks.org/svn/tocmacro/0.11 Downloading http://trac-hacks.org/svn/tocmacro/0.11 Doing subversion checkout from http://trac-hacks.org/svn/tocmacro/0.11 to /tmp/easy_install-ZqxL83/0.11 Processing 0.11 Running setup.py -q bdist_egg --dist-dir /tmp/easy_install-ZqxL83/0.11/egg-dist-tmp-ggYr2G zip_safe flag not set; analyzing archive contents... TracTocMacro 11.0.0.3 is already the active version in easy-install.pth Installed /opt/local/Library/Frameworks/Python.framework/Versions/2.6/lib/python2.6/site-packages/TracTocMacro-11.0.0.3-py2.6.egg Processing dependencies for TracTocMacro==11.0.0.3 Finished processing dependencies for TracTocMacro==11.0.0.3
今度は正しくインストールされて、tracの管理画面にプラグインが表示されるようになった。そんな訳で今回の教訓。
- easy_installをプロキシ環境で使う場合、http_proxyの環境変数を指定するだけでは不充分。別途、subversion用にもプロキシサーバを指定する必要がある。
- MacPortsで導入したtrac用にプラグインを追加する場合、/usr/local/bin/ではなく/opt/local/bin/に入っているeasy_installを使う必要がある。
関連