FreeBSD のパッケージ管理には portupgrade を使うのが(少し前まで)メジャーでしたが、
これ、実は ruby スクリプトなんです。
portupgrade, portversion, portinstall など、便利なコマンドがまとまっていたんです。
で、ruby-1.8.7.160,1 のバグによって、それらのコマンドが一斉に死亡。
$ sudo portupgrade ruby-1.8.7.160,1 ** Stale lock file was found. Removed. [Updating the portsdb <format:bdb1_btree> in /var/db/pkg ... - 20379 port entries found ** Database file locked. Waiting.
ぅぉぃ!!!!バージョンアップもできないのかよ。
お話になりませんので試しに入れておいた portmaster。
$ sudo portmaster -dp ruby
portmaster 自体がまだ枯れてないので少し不安になりながらティータイムをしてると
Install them as occasion demands. ===>>> Done displaying pkg-message files ===>>> The following actions were performed: Installation of devel/m4 (m4-1.4.13,1) Installation of devel/p5-Locale-gettext (p5-gettext-1.05_2) Installation of misc/help2man (help2man-1.36.4_3) Installation of devel/autoconf-wrapper (autoconf-wrapper-20071109) Installation of devel/autoconf262 (autoconf-2.62) Installation of devel/automake-wrapper (automake-wrapper-20071109) Installation of devel/automake110 (automake-1.10.1) Upgrade of ruby-1.8.7.160,1 to ruby+nopthreads-1.8.7.160_3,1 $ _
あ、終わった。
何をしたのか一覧で出してくれるのは少しうれしい。
なるほどなるほど。
1.8.7.160_3,1 で問題解決。一安心。
これを機に webserver 以外の ruby は一掃しよう。
- 7/11 20:09追記
- 1.8.7.160_2 で対策パッチが入った模様。本家のマージは未だかなぁ。