ports CURRENT の editors/emacs が emacs-22.3 から emacs-23.1 になったようだけど、japanese/ の下の emacs は相変わらず emacs-22.3 ぽいので、以前このブログに掲載した emacs-canna の ports を作ってみました。
基本的には editors/emacs を japanese/ にコピーして Canna for GNU Emacs23 からパッチを取って来て make している感じです。なので、ベースは emacs-23.1 で、インストールされるものも editors/emacs とまるっきり一緒のはずです。
以下の URL に転がしておいたのでもしよろしければ使ってみてください。
http://www.icmpv6.org/Prog/FreeBSD_ports/ports-emacs-canna-20091221.tgz
この ports について、その筋の人に色々お聞きしてみたのですが、一番多い意見が send-pr すればぁ。ってヤツでしたが、正しくその通りだとは思います。が、まぁ、自分で使っている分にはどーでもよいかぁ。みたいな感じで(^^;;。
後、ports の editors/emacs に吸収してもらえばぁ。って意見も頂いて、これは確かに「なるほどー。」とか思いましたね。 options に WITH_CANNA=yes とか指定できれば、 Canna for GNU Emacs23 からパッチをダウンロードして来て適用する。ってので済むのでこれは確かにラクチンだし、emacs の ports があちこちにできなくて済むのでそれはそれで嬉しいのだけどねぇ・・。
とまぁ、そんなそんなことは思っても結局はどっかそのへんに転がしておいて終ってしまいそうな予感なんですけどね(^^;;。
以前は cvsup(net/cvsup-without-gui) を利用していたのだけど、最近は csup(1) を利用して ports とか STABLE の最新のソースを持ってくるようになった。
csup(1) は IPv6 に対応しているのだけど、 cvsupd(net/cvsup-mirror) が IPv6 に対応していないくて、IPv4 でしか応えてくれないので、csup の一発目は必ずエラーになる。
あ。僕は自宅のサーバに cvsupd を起動しているので cvsup3.jp.freebsd.org とかから定期的に持ってきているので、自宅の FreeBSD は自宅で起動している cvsupd なサーバから持ってきています。cvsup.icmpv6.org がそれになるわけですけども;-)。
で、自宅のネットワークには IPv6 があってウェブとかメールサーバは IPv6 に対応しているのに cvsupd が IPv6 に対応していないのは非常に悲しいので、今回 cvsupd を IPv6 に対応させてみたいと思います。ただ、net/cvsup-mirror のソースコードを改変して IPv6 対応するのは非常に大変なので、今回はネットワーク的に IPv6 への到達性を確保します。IPv6->IPv4 トランスレータ機能を利用します。お題目は以下です;-)。
faith0 インターフェースと faithd を利用して cvsupd を IPv6 対応にしてみましょう。
まぁ、まずは何はなくとも man faithd と叩いてみましょう。そこから始まりますが、man を読んで解った事は、アドレスプレフィックス部分の /96 と IPv4 アドレス部分の /32 に分かれていて、IPv4 部分で IPv4 サーバを特定してそこにパケットを投げますよ。みたいな感じです。
では早速設定を見ていきましょう。今回のネットワーク構成はこんな感じにしてみました。
以下にちょっと箇条書きにしてみます。
- 今回ターゲットとなる cvsupd は IPv4/IPv6 のデュアルスタックなサーバ上で動作します。
- IPv4 ルータは PPPoE などでグローバルあドレスが付きますがサーバは NAT されています。ポート 5999 は cvsupd サーバにポートフォワードされています。
- IPv6 ルータは外部のグローバル IPv6 ネットワークに接続しています。
- cvsupd へは rtadvd により IPv6 のグローバルアドレスを払い出しています。
- IPv4 は 192.168.0/24 です。
- IPv6 は 2001:200:161:1400::/64 です。
- トランスレータ用のプレフィックスは 2001:200:161:1400:5999::/96 です。
さてと。これだけでほぼ準備が整いました;-)。
まず、cvsupd サーバでの設定ですが、 faith0 インターフェースに飲み込まれる IPv6 プレフィックスを route(8) で設定します。その後、faithd を起動して特定のポートを faith0 に飲み込むようにします。
起動スクリプトは以下になります。rcNG ではなくて申しわけないですが(^^;;。
|
まず最初に sysctl で必要な mib のステータスを変更します。 ifconfig faith0 up した後に route add してから route change します。この時、プレフィックスは /96 です。残りの /32 は IPv4 アドレスになります。
今回の cvsupd サーバは 192.168.1.2 が付いているので、それを IPv6 に直すと以下になります。
2001:200:161:1400:5999::c0a8:102
この IPv6 アドレスを DNS に登録します。すると、csup コマンドを叩いた時に supfile の *default host 行に FQDN を書けば IPv6 でアクセスが可能になります。
と、思いきや・・。外部の FreeBSD からだとアクセスできないですね。 IPv6 ルータは 2001:200:161:1400::/64 ではルーテイングが設定してあるのですが、2001:200:161:1400:5999::/96 のルーティングができていないので IPv6 ルータに対して route add コマンドで 2001:200:161:1400:5999::/96 を cvsupd が起動しているサーバのリンクローカルアドレスに向けて上げます。
|
これで設定は全て完了です。外部の IPv6 機器から接続できるか確認してみましょう。
トラブルシューティングですが、まず、cvsupd サーバのローカルホストから telnet cvsup.icmpv6.org 5999 などと FQDN で指定し cvsupd に接続できるか確認してみましょう。
そこで問題があれば、指定したプレフィックスが /96 になっているか、IPv4->IPv6 の変換時の IP アドレスや DNS の設定、faithd 、sysctl mib などを見直してみましょう。
外部から接続ができない場合、DNS のアドレスの設定の確認と、IPv6 ルータでの /96 のルーティングの設定を確認しょう。
今回は faith0 と faithd の設定を見てきましたが、これらは tcp しか通過できません。 udp には対応していないんですね。そもそも faithd は KAME のリファレンスコードなので「tcp は実装するけど、他のプロトコルは自分で書いてね。」的要素が強いのかな?などと、僕個人的には思っています。
tcp しか通らないので、当然 ping や traceroute も通りません。tcping は IPv4 にしか対応していないし・・。とわいえ、ume さん が tcping の IPv6 対応パッチを書いてくださったのでそれを適用した tcping を利用すると良いかと思われます。以下の URL にパッチを転がしておきます;-)。ports の net/tcping で利用してください。
http://icmpv6.org/Prog/FreeBSD_ports/tcping-ipv6.diff
さてと。これで cvsupd サーバは IPv6 Ready になりました。このサーバ上で IPv4 にしか対応していない色々なデーモンを起動すればなんでも IPv6 Ready になります。では、IPv4 にしか対応していないデーモンは一体何が?とハタと考えた場合、古いソースコード(バージョン)で運用しているデーモンとか位しか思い浮かばなかったのですが、DSS(net/DarwinStreamingServer) なんかは IPv4 にしか対応してないので、こう言ったものを IPv6 Ready にすることが可能です。その場合、必要なポートを指定して faithd を起動する必要があります。DSS であれば以下のように感じでしょうか。上記のスクリプトに加筆します。
/usr/sbin/faithd 554
/usr/sbin/faithd 5000
/usr/sbin/faithd 5100
などなど、必要そうなポートにたいして faithd を起動するとそのポートに来たパケットは faith0 に突っ込んでくれるようになります;-)。
で、ここでまた、ハタと考えた・・。Apple 謹製の QiuckTime Player は IPv6 に対応しているのかぁ? あぁ。multimedia/mplayer で試せば良いかぁ。みたいな(^^;;。
大体こんな感じで faith0 と faithd を使えば比較的楽に楽しく利用できるかなぁ。と思った次第です。本来であれば IPv6->IPv4 トランスレータとして、dns/totd と組み合わせて使う大掛かりなルータってイメージがあるんだけど、ローカルホストのために利用する faith0 と faithd というのもまたアリかなぁ。と言う感じがあるのであります;-)。
MacOSX Snow Leopard(以降 “MacOSX SL” と記述します) の BootCamp パーティションに Windows7 Professional x86 をインストールしてみました。また、BootCamp パーティションにインストールした Windows7 はその後、VMware Fusion 2.0.6 から参照することもできました。その件についてチロっと書いてみたいと思います。
まず、今までは BootCamp パーティションには WindowsXP Home Edition が入っていたのですが、これを「Boot Camp アシスタント」でサクっと消します。その後、再度 32GB 程生成してから DVD を突っ込んでリブートします。
最初 DVD は x64 のを用意したのだけど DVD ブートしなかったので x86 用メディアで再度トライしました。すると、x86 版はサクっとブートしたので後はひたすらインストールです。この作業はフツーの PC にインストールするのと同じ雰囲気で作業終了。
あ。インストール時のパーティション選択ですが、Mac 側の「Boot Camp アシスタント」で BootCamp 用パーティションを生成すると FAT32 になります。しかし、Windows7 は NTFS にしかインストールできないので、BootCamp パーティションを削除して Windows7 をインストールするパーティションを生成してフォーマットしてあげる必要があります。ここが第一の関門。って感じでしょうか。失敗すると MacOSX 自体をつぶしてしまうので、しっかり BOOTCAMP と書いてあるパーティションを消しましょう。
何回かの再起動の後、無事に Windows7 のインストールは完了するので次に MacOSX SL の DVD を突っ込んでドライバをインストールしますが、この作業もあっけないほど、何もバタバタ慌てることも無く無事に終了。全自動でやってくれました。
簡単に MakBook で Windows7 Professional x86 が起動したのでありました;-)。
続いて MacOSX SL をブートして VMware Fusion 側から BootCamp パーティションの Windows7 を利用することにします。僕の VMware Fusion は 2.0.6 ですが、これを起動します。
しかし、以前利用していた BootCamp のディスクイメージと言うか情報が残っていて、新しくインストールした Windows7 がブートできませんでした。いったん VMware Fusion を消して再インストールしたのですが、仮想マシンの情報は削除されないみたいなので、手で消す必要がります。また、”削除” メニューからは BootCamp パーティションの情報は削除できません。
なお、「仮想マシン」がある場所は非常に解りづらいです。以下にあるので、良く選んでからサクっと消すようにしましょう;-)。
/Users/takachan/Library/Application Support/VMware Fusion/Virtual Machines/
ちなみに僕は VMware Fusion で利用していた仮想マシンは BootCamp 上の WindowsXP HomeEdition と Windows7 RC だけだったので、どっちの情報もサクっと消してしまいました;-)。
消した後、VMware Fusion を起動すると新たに BootCamp の情報を読み込んでくれるので後は「起動」すれば良いだけです。
VMware Fusion 上で Windows7 が起動したら VMware ツールをインストールします。必要なドライバをドドドとインストールしてくれるので特に苦もなく完了。と、非常に簡単に全作業の行程が終了してしまったのでありました;-)。
ちなみに VMware Fusion からはシリアルドライバが認識されていません。まぁ、特に必要ないかなぁ。などと思っていて深く追っていませんが;-)。
後、BootCamp 上の Windows は「スリープ」はできないのですが「休止状態」は利用できるので最悪それで良いかなぁ。と言う感じはしています。
さてと。使用感を少々書いておきます。僕の MacBook は CPU が Core2Duo 2GHz、メモリ3GB の状態で Windows7 Professional x86 に 1 個の CPU と 1GB のメモリを上げているのですが、もっさり感が非常にあるかなー。NotePC にインストールしたヤツのほうが快適に動いている気がします。
まぁ、BootCamp 上のは Windows7 Professional でも良いかもしれないんだけど、ちょっとサクっと使う時(「ちょっとサクっと検証する時」か;-)用に必要なものとして、ホンモノの仮想マシンとしては Windows7 Starter のほうが良いかなぁ。などと思ってしまいました。なのでそちらもインストールして試してみたいと思っています。
そもそも、EeePC を持っているのですが、ここには Windows7 Starter を入れる予定なんだけどねぇ;-)。
遅まきながら、我が家にも Windows7 がやってきました。PC で地デジが見たいよー。と思っても WindowsXP x64 では不可能なので、Windows7 の x64 にしてみた。と言うのが実情ですが。でもって、今回は、まず NotePC にインストールしてみました。 DELL の X1 と言うもうずいぶんと古い PC です。
CPU は PentiumM の 900MHz なので、Starter にしようか Professional にしようか悩んだのですが、ちょっと Professional で様子を見てみようと言うことにしました。なのでアクティベーションはなし。重かったら Starter に変更かなぁ。と言う感じです。あぁ。PentiumM は x86 Only です;-)。
で、インストールですが、今まで WindowsXP が入っていたパーティション(FAT32)をぶっつぶして NTFS で Windows7 をインストールしますが、いとも簡単に終わり、その段階では画面のドライバ(i915だと思うんだけどねぇ)が見あたらなかったのだけど、 update したら画面のドライバがインストールされた。後はサウンドチップ(FreeBSD 的に言うと SigmaTel STAC9752/53 AC97 Codec)のドライバだけど、これは DELL のサイトから Windows Vista 32bit ドライバを持ってきたら動作したので全然問題はありませんでした。
まぁ、Windows はどうせ検証のためだけ(の予定)でインストールしたのでここまで。この後 FreeBSD をブートしようとするんだけど、これがまた大変だったのでありました・・。
google などで検索すると、色々なサイトで bcdedit で情報書き込んでブートしようねぇ。と書かれているのですが Windows Vista 版のがほとんどなのねぇ。僕の Windows7 では以下のように打たないと FreeBSD は起動しませんでした。
|
{ID} ってのは /create したときに表示されるやつを指定します。
後、Windows Vista の bcdedit の場合って device boot って指定しようね。って、検索すると色々なサイトで書かれているのだけど Windows7 の場合、これではダメで、ブートセレクトで FreeBSD を選択した後に 0xc000000f なエラーコードで FreeBSD が起動してくれなかったりする。Windows7 の bcdedit では device partition=c: と指定するのが正しいみたいです。
bcdedit をオプションなしで実行すると起動設定が見えるので、Windows のブート情報と一緒にしてあげれば良いかなー。
ちなみに freebsd.pbr は /boot/boot1 を持ってくるんだけど、これまた当たり前で FreeBSD/i386 や FreeBSD/amd64 のどっちから持ってきても大丈夫です。md5 のチェックサムはどっちも一緒でした。手元に FreeBSD/i386 しかなくて、起動したいのは FreeBSD/amd64 ってときでも FreeBSD/i368 から /boot/boot1 を持ってきて c:¥freebsd.pbr にリネームして置けば大丈夫です。
で、FreeBSD はブートするんだけど、考えてみると Windows7 てパーティション二つ利用するのでブートメニューから FreeBSD が起動すると /etc/fstab の情報が一個ずれてしまうので Windows7 をインストールする前に FreeBSD の /etc/fstab は編集しておいたほうがラクチンかも;-)。まぁ、ufs:ad0s3a とかしてブートしてから /etc/fstab を直しても良いとは思うけど;-)。
今までは /dev/ad0s1 が Windows で /dev/ad0s2a が FreeBSD だった場合、 Windows7 をインストールした後は /dev/ad0s3a が FreeBSD の root になります。
とまぁ、今回は一番はまったのが bcdedit かなぁ。 これが一番時間がかかった・・。ふぅ。
と、言うことで NotePC での検証環境ができたので明日はメインで利用しているデスクトップに Windows7 の検証環境でも作るかなぁ。
ちょっと前に正式にリリースされた Thunderbird-3.0 ですが、今日 ports を csup したら登場したみたいなので早速利用してみました。
Thunderbird-2.0 と微妙に違うのですが、メールボツクスの並び方が MacOSX の Mail.App みたいに、受信ボックスごととか、ゴミ箱ごとに並ぶようになったのでそれはそれで嬉しいなぁ。と思い、WindowsXP と会社の FreeBSD/i386 7.2-STABLE、後自宅の FreeBSD/i386 7.2-STABLE と FreeBSD/amd64 7.2-STABLE にインストールしました。
僕の使い方としては、Thunderbird を imap4 で利用して spam フィルタとして利用した後、emacs+mew で POP して来ると言う感じなたんだけどねぇ。けど、その横では MacOSX の Mail.App からやはり imap4 でアクセスする。と言う結構複雑な状況;-)。
さて。Thunderbird-3.0 ですが FreeBSD/i386 ではちゃんと動くんだけど FreeBSD/amd64 ではcore dump して動作しない。よくよく調べてみると Firefox35 も Flash があるとやはり core dump して動作しない。
flashplugin 周りの ports を入れたり消したり devel にたりしたけど、やはり core dump する・・。
後、驚いたのが Thunderbird-3.0 は Firefox のプラグインも参照するのね。考えてみると /usr/local/lib/npapi/linux-flashplugin なんてディレクトリはないさー。/usr/local/lib/npapi/linux-f8-flashplugin ならあるんだけどね。大丈夫なのか・・。環境をもう一度見直す必要があるのかな?
で、結局 plugin 周りをいじったのだけど、だめだった。相変わらず core dump の嵐。ゲームセンター嵐。なんのこっちゃ;-P。
Thunderbird とか Firefox には -g と言うgdb 経由の起動オプシンがあるのですが、それで確認してみると以下のメッセージが・・。
|
ふむー。pango 辺りで起きているのね・・。インストールされているバージョンは pango-1.26.1 。これを再インストールしたけど、治らない・・。
で、google で探してみたら以下の URL を発見・・。orz
http://forums.freebsd.org/showthread.php?t=8859
よくよく読んでみると pango を 1.24.5 にすれば動作するらしい。かなしぃなぁ・・。
僕は gnome ではなく KDE4 を利用しているので pango を入れ替えた時のダメージが大きいのでどうしようか悩み中。あ、どんなダメージがあるのか想像ついてないです。もしかしたら全然大丈夫なのかもしれませんけど。
FreeBSD/amd64 は自宅で利用しているデスクトップ機でメモリ 8GByte 積んだマシンなのよ。最近は Mac でメール見たりするので無理して Thunderbird と Firefox 使わなくても良いかなぁ・・。KDE4 には konqueror があるしなぁ・・。
それにしてもまいった。pango のバージョン落とすか、もう少し待って Thunderbird と Firefox が対応してくれるのを待つかですね。
8.0-RELEASE がリリースされたみたいなので、自宅の PC にインストールしてみました。色々新しいデバイスドライバが使えるみたい。ってのもあるんですけどね.
最近は MacOSX をメインで使うようになって本当に FreeBSD へのモチベーションは下がりつつあるのですが、けど、おっかけないと・・。感があるわけです。
とはいいつつ、普段利用しているデスクトップとかサーバにはまだまだインストールする勇気が無いので、今は「キッチンのパソコン」と利用している EeePC にインストールしてみました。以前にもこのブログに書いているのですが、久しぶりに引っ張り出してみました;-)。
で、EeePC に USB 経由で 2.5 インチ HDD をつけて、その HDD には 7.2-STABLE が入っているわけだけど、これを cvsup で 8.0-STABLE にしたわけです。
自分でカーネル config を作成して、make installkernel して、さてと 8.0-STABLE ブートだ。と思ったら・・。あんれまぁ。USB に接続した HDD からはブートしませんでした・・。
手元に 8.0-STABLE が動作している PC が他に無いのでなんとも言えないのですが、カーネルのブート時に USB デバイスを一切認識してくれない状態。カーネルロードモジュールでは usb.ko とか umass.ko をロードしているのだけど、ブート時には USB デバイスとかチップを一切認識しないので、USB に接続した 2.5 インチ HDD、/dev/da0s1a になるわけですが、これが見えない。
なので、vfs.root.mountfrom 以前の問題だぁ・・。
http://www.mail-archive.com/freebsd-stable@freebsd.org/msg105670.html
この辺りのスレッドを見ると USB 機器からブートしないぜい。ってのがあるんだけど、これ、僕の現象とはちょっと違うよなぁ・・。
どうして USB デバイスが一切認識されないのだろう・・。まだまだ格闘は続くのであります;-)。
久々に書きます。最近、ネタなかったのよー。けど、KDE-4.3.4 もリリースされたし、ちょっと書くことが出てきたかも;-)。
と、いうことで、今回は、あの「google日本語入力」についてです;-)。
会社で利用している WindowsXP には MS IME 2003 しか入ってなくて、変換効率がいまいちだったので入れてみました。ただ、あいにく日本語入力の機会に恵まれていないのでまだ、いまいち良くわかりません。
このドキュメントは Mac 上て書いています。「google 日本語入力」を利用して;-)。こうして、使い方を確認している最中です。
ここでは何回も書いていますが、僕はそもそも「かな入力」の人なので、「google 日本語入力」でも「かな入力」に対応していて助かります。などと思っていたら・・。「ー」全角ハイホン、”ラーメン”の真ん中の棒の部分の扱いが違うので驚きました。
「google 日本語入力」では「へ」キーの右側のキーをふつーに押すと「¥」yen マークが表示されてしまいます。あいたたた・・。orz。
全角ハイホンを出すにはシフトキーを押さないと表示されないんですね。これは結構ショックでかい・・。yenマークを押す機会なんてのはそんなにないのでキーバインドを逆にしてほしいものです。設定画面を見てもキーバインドの変更設定は無いのでこれは本当に痛いところです。
きっと「かな入力」の人にしか解らない悩みだとは思うのですけどねぇ・・(^^;;。
それにしても入力モードに「ことえり」というのがあるので助かります。Mac 上では当然必要な機能なんですが、その設定が Windows でも利用できるのは大きい;-)。
僕は昔から Canna を使っていた(NEC の EWS4800 のころから;-)し、しかも「かな入力」だったので C-n というのはすごーく重要(Canna をかな入力で利用したことのある人しか解らないであろう;-)なんだけど、「ことえり」の C-;,l,k,j がある意味似たような機能をしてくれているので Mac の日本語入力にもすんなり入っていけたんだけどねぇ。
それが Windows 上でも利用できるようになる。というのは非常に有難いことです。その昔、Canna for Win32 というのを Windows 上で試したこともありましたけどねぇ;-)。
インストールについてですいが、Mac 版はインストールしたあと、直ぐに利用できるのだけど、設定メニューが表示されません。一旦ログアウトしてから、再度ログインするとメニューバーのプルダウンに環境設定メニューが表示されるようになります。
さてと。僕的にはここまで書いたことが重要であって、他の記事やブログに書かれている変換効率などについてですが、上にも書いた通り、僕はずっと変換効率がおバカな Canna を使っていたせいで「連文節変換」と濁点や口読点で変換する。という文化は無くて、ほぼ単語単位で変換していたので特に気にはなりません;-)。
とある語句を変換した時に一番最初に表示される語句が怪しいとは思ってもスペースキーを叩いたり、TABキーを押したりすれば良いのでまぁ、僕的には十分かなぁ。という感じはします。
ATOK for Mac はまだお試し期間中なんだけど、どうしようか悩み中。四国の小さい会社が潰れそうなので月額 300yen 払っても良いかなぁ。とは思うのですけども、ATOK for Mac にはバグがあるですよ。
「かな入力」の時にとある語句を入力していると日本語入力がいきなりオフになる。例えば「たかのです。」と打つと「たqtkw@r>」となってしまう。”た”か”か”で日本語入力オン/オフのトングルに引っかかるんでしょうな。明らかにバグっぽい。ATOK for Mac 2008 ではその症状は出なかったので 2009 でエンバグしたのでしょうなぁ。
ATOK の関係者もしくは近い人がいましたらご対応頂ければと思います;-)。
さてとー。今回のこの記事を書いてみましたがやはり「ー」キーの扱いがボトルネックかなぁ。という気はしますが、慣れかなぁ。けど、考えてみると Canna も「を」や「ろ」きーが変なところにあったりするなぁ;-)。そー考えれば良いか。
もう少し使い込んでみることにしましょう;-)。