heads-up
- Flash9 works on FreeBSD
current - 2008年10月4日
(協定世界時)、 Flash9を動作させるためのパッチが8-currentにマージされ、 FreeBSDでLinux Flash9が動作するようになりました。パッチが公開されてからかなり早い段階でのマージとなります。切望されていたようすがわかります。 動作させるための手順を簡単にまとめます。動作環境として次のバージョンとアプリケーションを使います。
- FreeBSD 8-CURRNET
(2008年10月6日付け) - linux_
base-fc-4_ 13 (emulators/ linux_ base-fc4) - firefox-3.
0,3. 1 (www/ firefox3) - linux-flashplugin-9.
0r124_ 1 (www/ linux-flashplugin9) - nspluginwrapper-1.
0.0 (www/ nspluginwrapper)
FreeBSDをFlash9パッチがマージされた以降の8-CURRENTにアップグレードします。上記アプリケーションや環境をインストールします。Linuxバイナリ互換機能を有効にする設定を/etc/
rc. confに追加する他、 /etc/ fstabにlinprocfsをマウントするための行を追加してシステムを再起動します。 Linux Flash9プラグインをインストールします。
すでにLinux Flash7プラグインをインストールしてある場合、
次のように先にLinux Flash7プラグインを削除してからインストールを実施します。Linux Flash9プラグインとLinux Flash7プラグインを同時にインストールすることはできません。Linux Flash9プラグインのportは執筆現在ではIGNORE指定されているので、 直接Makefileを編集して指定を無効にするか、 次のように-DNO_ IGNOREを指定してインストールを実施します。 Flash9を使いたいユーザごとにnspluginwrapper(1)コマンドを次のように実行して、
インストールしたLinux Flash9プラグインを使えるようにします。 FreeBSDでFlash9が動作している様子を次に示します。
Flash7と比べると若干不安定なシーンがありますが、
Flash9の反応がなくなった場合には簡単には 「pkill npviewer. bin」 のようにnpviewer. binを終了させることでFirefoxの制御が戻ってくるようになります。最近は最低でもFlash9を要求するWebサイトやサービスが増えていました。Flash9が動作するようになったことはデスクトップでFreeBSDを活用しているユーザや今後のPC-BSDにとって朗報です。 コミットログや動作報告によれば、
今回の改善でFlash9はcompat. linux. osreleaseが2. 6.16でも2. 4.2でも動作するほか、 Linuxベースはlinux_ base-fc4でもlinux_ base-f8でも動作するようです。1週間後にSTABLEへのマージが計画されています。このままいけばFreeBSD 7. 1-RELEASEではFlash9が動作するようになります。 - FreeBSD 8-CURRNET
src
- sys/
compat/ linprocfs/ linprocfs. c
sys/fs/ procfs/ procfs_ map. c
sys/compat/ linux/ linux_ misc. c current - 2008年10月4日
(協定世界時)、 linprocfsの 「プロセスID/ maps」 およびprocfs の 「プロセスID/ map」 のハンドリングにuiomoveを実行する代わりにsbufを使うように変更が加えられました。この変更によってオフセットが非ゼロの値からの読み込みであっても動作するようになりました。 また同日、
linux_ fooaffinity()エミュレーションの動作が変更されました。FreeBSDのaffinityシステムコールは32から128までの範囲でのビットマップサイズを想定していますが、 古いglibcでは常にサイズとして1024が仮定されていました。新しいglibcでは適切なサイズを検索しますが、 最初の値は1024になっています。今回の変更でビットマップサイズパラメータにFreeBSDのcpuset_ tのサイズが使われるようになり、 ユーザスペースビットマップがcpuset_ tのサイズよりも小さい場合にEINVALが戻っていくようになりました。この2つの変更によって、 FreeBSD-currentにおいてFlash9が動作するようになりました。これら変更のうちマージできるものは1週間後にstable系へのマージが計画されています。
ports
- emulators/
linux_ base-f8 Fedora 8 Linux互換プラットフォームにkeyutils-libsが追加されました。これはlibkrb5に必要になるもので、
とくに先日公開されたFlash9パッチとともにFlash9が動作するようにするための変更です。最新のCURRENTにアップデートするか個別にFlash9パッチを適用してFlash9を動作させる場合、 互換環境としてlinux_ base-f8を使いたいのであればlinux_ base-f8_ 6以降をインストールしてください。またはデフォルトのemulators/ linux_ base-fc4 (linux_ base-fc-4_ 13) を使ってください。