2008-03-09 (日)
■ Mac OS X の環境整備
MacBook Pro をちょっと重いWindowsノートパソコンとして使い続けていたのは、 Java + Eclipse + Word の環境が必要だったから。 それが一段落したので、いよいよ本格的に Mac OS X を使う。 まずは参考にしたページ。
以下、やったことを覚えている範囲で。
- Firefox 入れた。ブックマークや検索時の挙動がことごとく Sleipnir と逆で困る。同じウィンドウで開くので書きかけのフォームデータが消える。
- Tab Mix Plus という拡張機能を入れて解決。他に入れたのは Firebug とふぉくすけテーマだけ。
- Ctrl+Space を使って Spotlight 経由でアプリを起動できるので、 Dock のアイコンを一気に減らした。
- Spotlight より QuickSilver が便利らしい。もう少し Spotlight を堪能してから試してみる。
- キーボードの設定で、「F1、F2などのすべてのキーを標準のファンクションキーとして使用」を有効に。
- これで日本語入力中に F10 を押せば英数になる。
- ことえりを Windows 風キーバインドに設定。
- Shift + アルファベットで自動的に英数に切り替わるので便利。
- でも、英数からひらがなに戻るときの方法がちょっと違って戸惑う。
- Mac だとクリップボードとのやりとりが Command キーとのコンビネーションなので押しにくい。caps lock キーを Command キーに割当た。
- 他の Windows マシンにつなぐために Remote Desktop Connection をインストール。まだ使ってない。
- 付属のインストールDVD (Disc1) から xcodetools を入れた。 MacPort を入れるために必要。
- MacPort 経由で wget, trac, ruby をインストール。 Gentoo の emerge みたいにインストール時にコンパイルするみたい。
- MacPort の RubyGems が 0.9.4 だったので、Webから最新版を取得した。
- Rails は RubyGems を使ってインストールした。
それから、ターミナルの設定。
- ターミナル → 環境設定を開いてテーマを Pro に設定。背景色が黒になった。
- アンチエイリアスとボールドフォントをオフに設定。
- 詳細を開いて Delete キーで Ctrl-H を送信にチェック。非 ASCII 入力をエスケープは Off 。
- ターミナルのタブ機能は使わずに screen + zsh を使う。 ubuntu の rc ファイルをそのまま使えた。
ここまでで結構快適になった。
■ Trac で OpenID を使う
Trac は標準で Basic 認証や Digest 認証に対応しているけど、これを OpenID 認証にしてみる。 ちょっと前までは OpenidPluginという Trac のプラグインがあったらしいけど、今はメンテされていないらしい。 代わりにAuthOpenIdPluginというプラグインが使える。 以下、簡単に手順のまとめ。OS は Mac OS X だけど、 Ubuntu とかでも同じようにいけると思う。
Trac のインストール
AuthOpenIdPlugin は Trac 0.11 のみに対応している。 んで、 Trac は依存ライブラリが多いので、 Port で一気に関連パッケージを入れちゃう。
$ sudo port install trac
これで Trac 0.10.4 と関連パッケージ (Python とか SQLite3 とか) がインストールされる。 Trac 本体はいらないので、すぐにアンインストール。
$ sudo port uninstall trac
ちょっと強引かなぁ。ちなみに ubuntu だと build-dep を使ったりする。 port にも似たような方法があるかも。
$ sudo apt-get build-dep trac
次に Trac のページから 0.11b1 をダウンロードする。 アーカイブを展開して、 setup.py でインストール。
$ sudo python setup.py build $ sudo python setup.py install
Python-OpenID ライブラリ
次は Python 用の OpenID ライブラリ。 これも setup.py を使うので、 Trac と同じ方法で OK 。
AuthOpenIdPlugin
Trac 用の OpenID 認証プラグイン。困ったことに、これは Mercurial とかいうソースコード管理ツールがないと取得できない。 最初は ports を使ってインストールしようと思ったけど、 Python のバージョンが 2.4 だった(入っているのは 2.5 )ので、公式サイトからバイナリを直接インストールした。 Mercurial という名前なのに、コマンドはなぜか hg なのね。 ダウンロードは以下のコマンド。なかなか clone を使えばいいことに気がつかなかった。
$ /usr/local/bin/hg clone http://hg.sandbox.lt/authopenid-plugin/ authopenid
setup.py を使って egg ファイルを生成。
$ python setup.py bdist_egg
これを Trac のディレクトリ (initenv で指定するところ) に存在する plugin ディレクトリにコピーする。
$ cp dist/TracAuthOpenId-0.1dev-py2.5.egg ~/trac/plugin
あとは trac.ini でモジュールを有効にして完了。
[components] trac.web.auth.* = disabled authopenid.* = enabled
これで Trac を起動すると、 "OpenID Login" というリンクが追加されている。 試してみたけど、はてなではログインできた。 coderepos.org はなぜか真っ白な画面になる。この時の URL は http://openid.coderepos.org/auth 。
問題
Trac を単体で使うならこれでいいんだけど、 Subversion と連携させようと思ったら結局パスワードが必要になっちゃうんだよねぇ。