Shuttle SG31G2 FreeBSD Box #7
FLASH9
7.x-STABLEでも、安定的にFlash9が動くようになってるらしい。ということで、Shuttleでやってみることにした。
情報を総合すると、安定的にFlash9が動かすためには、
- linux emulationはlinuxカーネルで2.6.16が望ましい。これは7.x-STABLEではデフォルトではない。8.0-CURRENTではデフォルト。
- FreeBSDのportsでいうと、Flash4はemulators/linux_base-fc4(たぶんFedora Core 4のことだろう)で動いていたが、Flash9はemulators/linux_base-f8(たぶんFedora 8)にした方が望ましい。
- emulators/linux_base-fc4では、glib2が別port(devel/linux-glib2)になっていたが、emulators/linux_base-f8では、glib2が含まれているのでdevel/linux-glib2は必要ない。
- が、そのへんのportsの依存関係が完璧じゃない。
んんん〜〜。portsの依存関係がくるうのはうれしくないな〜と思いつつ、メーリングリストなどを読むと、みなさん、portupgradeを駆使して、やってるみたい。しかし、僕としては、ばっさりとlinux-*をいったん全部削除して、linux_base-f8をベースにインストールし直すことにした。
linux-*が必要なのは、Flashとacroread。ports関係が完璧じゃないとすると、Acrobat Readerが使えなくなるかもしれない。KDE 4.1のPDFリーダは、かなり良くなっていて、Acrobat Readerがなくても、ドキュメントが読めなくなることはない。でも、webをみていて、PDFファイルをダウンロードするのは、ちょっとしんどいな〜とは思いつつも、せっかくだし、やってみよ〜。
linux 2.6.16
# sysctl compat.linux.osrelease=2.6.16
/etc/sysctl.confにも
compat.linux.osrelease=2.6.16
と書いておく。
/etc/make.conf
/etc/make.confに
OVERRIDE_LINUX_BASE_PORT=f8
を追加する。
emulators/linux_base-f8
これで、www/linux-flashplugin9をmake installすれば良いはずだが、いちおう、emulators/linux_base-f8にいってmake installする。
www/linux-flashplugin9
をmake install
www/nspluginwrapper
をmake install
nspluginwrapper
で、プラグインを作成。id:footnote:20081103:1225673305で書いたとおり、NFSな/homeではうまく作成されないので、rootで作ってコピーする。
# nspluginwrapper -v -i /usr/local/lib/npapi/linux-flashplugin/libflashplayer.so Install plugin /usr/local/lib/npapi/linux-flashplugin/libflashplayer.so into /usr/local/lib/browser_plugins/npwrapper.libflashplayer.so
が、インストールされた場所が分からない場合は、
# nspluginwrapper -v -a -i
とするといいらしい。ただし、後述するArcobat Readerのプラグインを見つけてくれない。この時点では、Acrobat Readerはインストールされていないので、このまま進む。
linprocfs
がないと、動かない。これではまった。普通の人とは違うところではまるみたいです。
/etc/fstabに、
linproc /compat/linux/proc linprocfs rw 0 0
を追加して、再起動。
Acrobat Reader の再インストール
さて、Acrobatである。とりあえずjapanese/acroread8にいってmake installすると、なにかがdevel/linux-glib2を入れようとして、止まる。止まらず、入れられてしまうと、それはそれで、気持ちが悪いのだが。
でも、devel/linux-glib2は、ようするにいらなくなったんでしょ??ってことで、何とかなるはずと思う。
メーリングリストによると、x11-toolkits/linux-gtk2とかは、ちゃんとしてくれたと書いてある。Makefileを読むと、OVERRIDE_LINUX_BASE_PORTが定義されていない場合は、devel/linux-glib2を入れて、定義されていればemulators/linux_base-f8(とか、f7とか、f6)を入れることになってるらしい。
で、今問題になってるのは、www/linux-nvuというやつなのだが、これはwww/seamonkeyのMakefile.commonをインクルードしてるっぽい。と、気づいたところで、id:yukimura_bsd:20081130:1228016838のエントリを見つけて、パッチが書かれていました。みんな、同じとこで悩んでるんだろな〜
www/seamonkey/Makefile.commonを書き換えて、make install!
で、雪村さんのパッチをコピペして、patch < どか〜ん、と行きたかったのだが、どうもtabとスペースの関係で、うまくいかなかった。が、ようするに、
RUN_DEPENDS?= ${LINUXBASE}/usr/lib/libgtk-x11-2.0.so.0:${PORTSDIR}/x11-toolkits/linux-gtk2 \ ${LINUXBASE}/usr/lib/libatk-1.0.so.0:${PORTSDIR}/accessibility/linux-atk \ ${LINUXBASE}/usr/lib/libpangoxft-1.0.so.0:${PORTSDIR}/x11-toolkits/linux-pango\ ${LINUXBASE}/usr/lib/libgobject-2.0.so.0:${PORTSDIR}/devel/linux-glib2 \ ${LINUXBASE}/usr/lib/libfontconfig.so.1:${PORTSDIR}/x11-fonts/linux-fontconfig \ ${LINUXBASE}/usr/share/icons/hicolor/index.theme:${PORTSDIR}/x11-themes/linux-hicolor-icon-theme
の部分のdevel/linux-glib2の行を、もしOVERRIDE_LINUX_BASE_PORT=f8と定義されていたら、
${LINUXBASE}/lib/libgobject-2.0.so.0:${PORTSDIR}/emulators/linux_base-f8 \
に置き換えて欲しいわけです。なので、上のブロックを、まるまる
.if ${OVERRIDE_LINUX_BASE_PORT}!=f8 RUN_DEPENDS?= ${LINUXBASE}/usr/lib/libgtk-x11-2.0.so.0:${PORTSDIR}/x11-toolkits/linux-gtk2 \ ${LINUXBASE}/usr/lib/libatk-1.0.so.0:${PORTSDIR}/accessibility/linux-atk \ ${LINUXBASE}/usr/lib/libpangoxft-1.0.so.0:${PORTSDIR}/x11-toolkits/linux-pango\ ${LINUXBASE}/usr/lib/libgobject-2.0.so.0:${PORTSDIR}/devel/linux-glib2 \ ${LINUXBASE}/usr/lib/libfontconfig.so.1:${PORTSDIR}/x11-fonts/linux-fontconfig \ ${LINUXBASE}/usr/share/icons/hicolor/index.theme:${PORTSDIR}/x11-themes/linux-hicolor-icon-theme .else RUN_DEPENDS?= ${LINUXBASE}/usr/lib/libgtk-x11-2.0.so.0:${PORTSDIR}/x11-toolkits/linux-gtk2 \ ${LINUXBASE}/usr/lib/libatk-1.0.so.0:${PORTSDIR}/accessibility/linux-atk \ ${LINUXBASE}/usr/lib/libpangoxft-1.0.so.0:${PORTSDIR}/x11-toolkits/linux-pango\ ${LINUXBASE}/lib/libgobject-2.0.so.0:${PORTSDIR}/emulators/linux_base-f8 \ ${LINUXBASE}/usr/lib/libfontconfig.so.1:${PORTSDIR}/x11-fonts/linux-fontconfig \ ${LINUXBASE}/usr/share/icons/hicolor/index.theme:${PORTSDIR}/x11-themes/linux-hicolor-icon-theme .endif
と書き換えてしまっているようです。linux_base-f8が大前提です。
で、japanese/acroread8にもどってmake install。Acrobat Reader 8も、再インストールされた。
acroread8のpluginを作成
再度プラグインを作成する。
# nspluginwrapper -v -i /usr/local/Adobe/Reader8/JPN/Adobe/Reader8/Browser/intellinux/nppdf.so Install plugin /usr/local/Adobe/Reader8/JPN/Adobe/Reader8/Browser/intellinux/nppdf.so into /usr/local/lib/browser_plugins/npwrapper.nppdf.so
Firefox でみる
しあわせになりました。