つい先日リリースしたFirefox 3.0ですが、Linuxだとbzipされたtarボールしかなくてインストールがメンドイ。ほら、こういうアップデートが頻繁なプログラムって、いちいち削除するのがダルイからrpmとかのパッケージマネージャで管理するのがもう当たり前になってきてるからさ。サーバプログラムに関してはrpmがあろうとtarボールから直にmakeすることが多いんだけど。できればspec丸ごと書いてrpmに全て丸め込んでおくのが最善なんだろうとは思うんだけど、サーバはあんまり頻繁に更新しねぇしな。
閑話休題。で、Firefoxもrpmに丸めてみるわけですよ。ただ、落としてきたtar.bz2をいかにしてまとめるかっちゅー話で、specファイルとかを一から書くのは更にメンドイからFedoraNews.orgのところから必要なものをゲットしておくこと。具体的には2.0のところからspec、desktop、pngファイルを全て落としておく。ちなみにspecとかdesktopはただの平文テキストファイルだから、ダウンロードする時は右クリックから対象を保存するべし。これらのおかげで、Linuxのデスクトップメニュー内にFirefoxが表示されるようになるわけですよ。いちいちターミナルから$ firefox を起動しなくてもいいわけだ。
ダウンロードしたファイルは/usr/src/{distribution}/以下、SOURCESにFirefox本体のfirefox-3.0.tar.bz2、firefox.desktop、firefox.pngを置き、SPECSにfirefox.specを置く。redhatディレクトリは、FedoraやRedhatなどのみ。他のディストリでは勿論名前が異なるので注意。
# mv firefox-3.0.tar.bz firefox.desktop firefox.png /usr/src/redhat/SOURCES # mv firefox.spec /usr/src/redhat/SPECS
んで、specファイルはもともと2.0向けに作られているので幾つか変更点がある。修正点はそれほど多くない。firefox.3.0.patchを保存しておく。で、specファイルと同階層にてpatch適用。
# mv firefox.3.0.patch /usr/src/redhat/SPECS # cd /usr/src/redhat/SPECS # patch < firefox.3.0.patch
するとspecファイルに対し、自動で必要な変更が加えられる。patchについて知りたい人はpatchとdiff辺りを勉強すればOK。
あとはrpmbuildでrpmにまとめれば終了。/usr/src/{distribution}/RPMS/i386辺りにビルドされたrpmが入っている。
# rpmbuild -bb firefox.spec # cd ../RPMS/i386 # rpm -ivh firefox-3.0-1.i386.rpm
Firefox 3.0の使い勝手の評価は……まだなんとも言い難いね。既にGMail系のアドオンとかが対応済みだからアドオンに関しては特に困らなかったけど、"爆速"かと言われればちょっと疑問符。まぁその言葉に期待しすぎた感もあるので、落胆するほどではないけども。細かいインターフェースの改良のほうがむしろ好感触ってとこだなぁ。
Comment