EeePC 購入。

今まで使っていた CASIO MPC-206 がいよいよ壊れたので新しく NotePC を新調する必要が出てきたので、一番安い NotePC である EeePC を購入した。

何はなくとも FreeBSD を動作させる必要があるのでずが、このネタはのその足跡を書き留めてみたいと思います。きっとシリーズになることでしょう。

今回はその第一回目;-)。

SSD が 4GB しか無いのでそこに WindowsXP が入っているけど、今回はそれについては手つかずの状態にしておいた。これとは別に SO-DIMM 2GB と SDHC 16GB を購入。メインはこっちを利用する予定。メモリが 2GB もあるので SWAP も必要ないでしょ。状態に;-)。

さて、FreeBSD は USB 接続された 2.5 インチの HDD にインストール。インストールメディアは USB 接続の DVD-ROM から行ったのだけど、FreeBSD のインストーラが CD を認識してくれなかったので 2.5 インチ HDD と DVD-ROM を他の PC に接続して FreeBSD 7.0-RELEASE をインストールして、インストール後に EeePC に接続してから ESC キーで USB HDD を指定してブートした。

つまり 2.5 インチ HDD への FreeBSD のインストールは他の PC で行い、その HDD を EeePC に接続した。と言うことですね。早くも挫折感が漂っているのですけど・・。

FreeBSD 7.0-RELEASE は無事に起動しました。が、しかしっ!! NIC が全然使えません。10/100BASE NIC と ath0 な a/b/g 無線 NIC が利用できないのです。10/100BASE NIC は NetBSD では動くみたいですが、 FreeBSD ではダメなのは事前調査で分かっていました。 ath0 が動かないのはまいったちゃん。けど、まぁ、ダメだろうとは思っていたので USB NIC を接続しました。現在は aue0 が接続されています。

さて、以下に情報を付けておきます。

dmesg
pciconf -lv
sysctl -a

GENERIC カーネルの情報ですが、サウンドカードは snd_hda.ko をロードしました。しかし、本当に音が出るかは試していません。あ、言い忘れましたが、この PC はサーバ用途で利用する予定なので X を起動する予定はありません。音も鳴らす予定もありません。

pcm0: [ITHREAD]
pcm0: <HDA Codec: Realtek (Unknown)>
pcm0: <HDA Driver Revision: 20071129_0050>

 
Codec: Realtek (Unknown) となっているので音がちゃんと出るのかが不安ですが・・。

後、ath0 ですが、pciconf -lv を満て頂ければどんなカードか解るかと思いますが、こいつは以下のようになりやはり動きません。

ath0: unable to attach hardware; HAL status 13

 
これは、/usr/src/sys/contrib/dev/ath/ah.h に書いてあるのですが、「Hardware revision not supported」だそうなので、まだ動く気配がなさそうです・・。

と、言うことで当分は USB NIC のお世話になる必要がありそうです・・。

さてと、今回のネタはここまで。これから少しずつ格闘していきたいと思います。今はまだ 2.5 インチ HDD(この HDD の容量は 20GB) にインストールしているのですが、もう少し落ち着いたら 16GB の SDHC で試してみたいと思います。

つづく。

あ。最後に。キーボードですが、キータッチ・大きさは MPC-206 と一緒です。DEL キーの場所がちょっと違いますけど、ASUS はMPC-206 のキーボードをパクってビクターの PC を作ったのですが、今回はさらにそのキーボードを使い回ししているようですね。さすがは ASUS;-)。

ちなみに壊れた MPC-206 のキーボード使おうかな。とか思ったのだけど、MPC-206 にはマウスのポインタがあるので再利用できないとこを発見;-|。

Firefox のフォントの大きさ。

NotePC で KDE3 を使っていて、Firefox を利用すると、メニューバーのフォントや Submit ボタンのフォントがでかすぎて全然美しくない。

なぜ、NotePC 上でかと言うと、デスクトップで KDE3+Firefox の場合だと、画面が広いので普段から大きなフォントを使っているので気にならないんだけど、NotePC の場合、画面が狭いのでついついコンテンツを表示するフォントを小さくしてしまう。

そーなるともー、メニューバーのフォントの大きさがきになってしかたがない。なので小さく表示してくれるように設定することにした。Google で探したらそれなりに見付かったけどねぇ;-)。

設定に必要なファイルは二つ。~/.mozilla/firefox/乱数ディレクトリ/chrome/ の下に以下の二つのファイルを用意する必要があります。

・userChrome.css 主にメニューバー・ツールバーを設定するファイル
・userContent.css 主に Submit ボタンなどコンテンツ上の設定をするファイル

では早速設定を見て行くことにしましょう。まずは userChrome.css です。

@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* set default namespace to XUL */
* {
    font-size: 12px !important;
}

 
全てのメニューのフォントを 12 ピクセルにすると言う設定です。”*” が「全ての」と言う意味です。個別に toolbar とか urlbar とかも指定できますが、まぁ、良いでしょ「全て」で(^^;;。

また、普段は [表示]→[ツールバー]→[カスタマイズ] で表示される画面で自分好みのツールバーにカスタマイズすると思いますが、その設定もこのファイルに記述できます。ただ、ここには書きませんけど・・(^^;;。

このファイルを作成し firefox を再起動すると設定が有効になったかと思います。けど、Submit ボタンはまだまだ大きいままでかっちょ良くないんですよー。

なので、次に userContent.css を用意します。このファイルはコンテンツの中で firefox が制御する部分の設定を行います。

.searchbar-textbox {
    font-size: 12px !important;
}
input {
    line-height:1.0 !important;
    font-size: 12px !important;
}
select {
    line-height:1.0 !important;
    font-size: 12px !important;
}
textarea {
    line-height:1.0 !important;
    font-size: 12px !important;
}

 
まぁ、FORM 入力部分の表示の制御がメインになるかと思うのですが、select タグや textarea タグなどのフォントサイズが変更できたりします。Submit ボタンは INPUT タグなので input 項でそのサイズを指定してあげることになります。

さて、再度再起動してみましょう。これで十分にきれいで均等の取れた firefox になったでしょうか。

僕はなりました。めでたいことです;-)。

agp.ko と acpi_video.koと /dev/agpgart の関係。

カーネルモジュールのお話。特に DELL 製 NotePC 系でのお話。xorg.conf のお話。なんか、いろんなことが絡んでいるなぁ・・。

xorg が 7.2 になったので合せて色々なものが動く様になったり動かない様になったり、目に付くようになった今日このごろ、僕の持っている DELL X1 の NotePC において /var/log/Xorg.0.log を眺めていると、 /dev/agpgart が無いゼイッって怒られている行が合った。

/dev/agpgart が無いとどうなるのかと言うと drm が動かないので mplayer がフル画面で表示してくれないとか 3D が遅いかもとか言った弊害が出てくる。まぁ、そんなに大した問題では無いのだけどね(^^;;。

では、どうして /dev/agpgart が出来ないのか? どうやらカーネルモジュールをロードする時に問題がありそうだ。acpi_video.ko を先にロードしてから agp.ko、drm.ko、i915.ko をロードすると /dev/agpgart が生えてこないみたい。

そして、acpi_video.ko をロードしないようにすると /dev/agpgart が無事に生えてくる。この辺り、pciconf -lv するとデバイスの認識状況が楽しかったりします;-)。

それにしても、/dev/agpgart が生えてこないんだったら acpi_video.ko をロードしなければいいじゃん。となるんだけど、これがまたねぇ・・。DELL X1 は中途半端に suspend/redume するもんだから acpi_video.ko をロードしておかないとディスプレーのリセットとかできなくなってします。

解り易いのは acpi_video.ko をロードした時としない時の sysctl -a | grep video の違いを見れば一目瞭然。

前者の場合、外部ディスプレー出力にも対応しているのに対して、後者の場合は video 周りの ACPI (と言うか sysctl の MIB) は何も無い状態。その状態で acpiconf -s3 なんざ叩いたらマシンがあっと言う間に凍りついてしまう。

mplayer をフル画面で見たいがため、もしくは Xorg.0.log からエラーメッセージを除去したいがために acpi_video.ko をロードしないのはあまりにもナンセンスだ・・。

と、言うか、agp.ko と acpi_video.ko で drm 辺りが競合してしまうのに問題があると言うか、なんちゅーか本中華・・。

デスクトップの i915 だったら無条件で acpi_video.ko をロードしないと言う選択枝が取れるんだけどねぇ。NotePC の場合は悩ましい。

さて、あなたはどっちを選択しますか!?

hw.acpi.video.out0.activeが消えてしまった。

僕はDELL Latitude X1を持っているんだけど、現在 FreeBSD は 6.2-STABLE を追いかけている。

ports は ports-current を追いかけているんだけど、 xorg が 7.2 になったからなのか、最新の STABLE で 変更が入ったからなのか、 sysctl から hw.acpi.video.out0.active が消えてしまった・・。

DELL X1 は 一応 S1 っぽい S3 の suspend/resume ができるのだけど、今までは以下のようにすれば、 resume からの復活でディスプレーのバックライトが点いていたんだけど、この sysctl のパラメータが無くなってしまった・・。

# sysctl -w hw.acpi.video.crt0.active=0
sysctl -w hw.acpi.video.out0.active=0
sysctl -w hw.acpi.video.out0.active=1

 
なので resume から目覚めてもバックライトが点灯しないので画面は真っ暗・・。あぁ・・。どうしよう。多分原因と言うか、手が入ったのは acpi_video.ko だと思うのだけどねぇ。しばらくは調査の日々が続きそうです・・。

まだ、原因が特定できていないし回避策も見つかってはいません・・。

あ、後、良い事も一つあって、レジューム後は CPU 速度が自動的に可変に動作するようになりました。今までは ntpd をリスタートしないと CPU 速度が固定だったのだけどねぇ。

DELL X1 の詳細については DELL Latitude X1(7-CURRENT) もご覧下さい。ちょっと古いんですけど・・。