スキップしてメイン コンテンツに移動

投稿

6月, 2013の投稿を表示しています

dev-lang/python と /usr/lib/portage/pym

昨日の投稿で、gentwoo が上手く動かないのは python と eselect のせい、と書いた。 dev-lang/python は 2.7.3-r3 から 2.7.4 の間に何が変わったのか、ということを調べてみた。 昨日書いたように、portage.util の ImportError が第一の原因なので、それを見てみる。 python-2.7.3-r3 では sys.path に ${EPREFIX}/usr/lib/portage/pym が含まれているが、python-2.7.4 では含まれない。 では、python-2.7.3-r3 ではどこでこのパスを設定しているのか。 それは site.py の中である。 site.py にそれを書き加えているのはパッチ tar ボールの中の 03_all_add_portage_search_path.patch である。 python-2.7.4 ではこのパッチが消えている。 おお、これだ。 だがちょっと待て。 だとすると、普通に Gentoo Linux を使っている人も同じ症状になってしまわないか? ということで、VirtualBox に Gentoo Linux 環境をお手軽に用意するために liveDVD イメージをダウンロードして、起動。 最新の liveDVD とはいえ昨年末のなので、python のバージョンは 2.7.3 である。 当然、emerge --sync して emerge -1 =python-2.7.5 で 2.7.5 に上げる。 python2.7 を立ち上げて、import sys; print sys.path。 うん、なぜか /usr/lib/portage/pym がちゃんと含まれている。 パッチは消えたのだから、site.py には設定されていない。 環境変数? python -E で環境変数を無視して立ち上げると確かに pym のパスは消える。 $ env | grep pym PYTHONPATH="/usr/lib/portage/pym" そう、環境変数 PYTHONPATH で設定しているんだ。 環境変数自体は /etc/env.d/05portage で定義されていた。 翻って Prefix 環境で調べてみると、確か...

gentwoo と python と eselect と

Gentoo の portage の機能として、make.conf で PORTAGE_ELOG_COMMAND にログ出力用の任意のコマンドを指定して実行させる仕組みがある。 gentwoo はそれを利用したログ収集のサイトで、そこにログを送るために betagarden overlay の app-portage/gentwoo をインストールして PORTAGE_ELOG_SYSTEM="custom:* save" PORTAGE_ELOG_COMMAND="gentwoo '${PACKAGE}' '${LOGFILE}'" といった行を make.conf に書き加えてある。 最近、といってももう3週間ぐらい、この gentwoo の呼び出しでエラーが発生するのである。 二種類のパターンがある。 一つめは gentwoo-2.7 という(Python 2.7 で実行される)スクリプト本体で発生するエラー。 Traceback (most recent call last): File "/Users/tetsushi/Gentoo/usr/bin/gentwoo-2.7", line 11, in from portage.util import getconfig ImportError: No module named portage.util !!! PORTAGE_ELOG_COMMAND failed with exitcode 1 二つめは gentwoo というラッパーシェルスクリプトで発生するエラー。 /Users/tetsushi/Gentoo/usr/bin/gentwoo: Execution of 'eselect python show --python2' failed !!! PORTAGE_ELOG_COMMAND failed with exitcode 1 どちらのエラーも portage がインストールする ${EPREFIX}/usr/lib/portage/pym/portage/elog/mod_custom.py で spawn_bash の引数に env=os.env...

人間ドック

初人間ドック。 バリウム飲んでぐるぐる回されると話には聞いていたが、なるほどぐるぐる回らされた。 バリウムが飲みにくいとか言われたが、ラッシーと変わらないぐらいじゃないの。 今日は身長が169センチ台の半ばだった。 いつもは168センチ台後半ぐらいなので、微妙に高めに出ている。 眼底検査の時に「睫毛が長くて邪魔」とか言われたが、ごめんなさい生えてる向きがわりと下向きなだけだと思います。 裸眼視力は相変わらず1.5あった。 腹囲を測るときに「ズボンのウエストサイズより太めに出るかもしれません」とか医者が言ったが、(私にとっては)逆です、先生。 いわゆる"メタボ"体型を念頭に置いて検査が出来上がっているんだな、と。 そんなこんなで検査が終わって、バリウムを排出するために下剤を飲んで下さい、という指示に素直に従った。 そして、飯を食って会社に向かう電車の中で腹痛が始まった。 何が印象に残ったって、もう何よりもこの腹痛による消耗した気分だった。