KubuntuによるタブレットPC制御の挫折報告

Linuxと言えば、旧式のハードウェアや特殊なプラットフォームでも充分に動作する(最低でもなんとか動く)ことが知られている。そこで今回私は、Kubuntu Dapper Drake(6.10)Compaq TC1000 Tablet PCにインストールすることを試みてみた。その結果判明したのは、確かにLinuxはほとんどすべてのプラットフォームにインストールでき、たいていはプロプライエタリ系の競合OSよりも高速に動作するのだが、すべての環境において最善な選択肢になるとは限らない、という事実である。

今回用いたTC1000は2003年にリリースされたもので、そのスペックは、Transmeta Crusoeプロセッサ-1.0GHz、RAM-384MB(ここでの使用機種は256MBからのアップグレード品)、ハードドライブ-30GB、802.11bワイヤレス、Intel e100 10/100 NIC、10.8インチディスプレイ、ペンデジタイザという構成である。この機種には、スクリーンの上側(1024×768/横長モード)ないし右側(768×1024/縦長モード)にボタン群が配置されており、上/下、Ctrl-Alt-Del、Enter、Esc、Tabおよび、2個のユーザ設定ボタン(それぞれ電子メールアイコンおよびQと刻印)に速やかにアクセスできるのが特長だ。私のお気に入りは上/下のトグルキー(スイッチを押し込むことでEnterキーを兼用)で、これらはWebのブラウジングをする際に非常に重宝する。特にWebページの場合、タブレットを縦長モードで使用すると、コンテンツが非常に読みやすい。1つ難点を挙げるとすれば、このモードでは横幅が768ピクセルしかないため、たいていのWebページは横にはみ出てしまうことである。もっとも、スリムな印刷用バージョンが用意されているページに限れば、それほど不自由はしないはずだ。

Kubuntuのインストール

このタブレットPCにプレインストールされているのはWindows XP ProfessionalのTablet Editionである。今回Linuxのインストールを試してみたのは、オリジナル状態での動作速度が、私の好みからするとかなり遅めであるのがその理由の1つだ。最近私はKubuntuを使い始めたところなので、今回はそのDapper Drakeリリースをインストールすることにした。

まずはUSBフラッシュドライブを用意して、事前にマスタブートレコードへのGRUBのインストールをしておいてから、Kubuntu 6.06のインストールカーネルおよびイニシャルramdiskファイルをコピーする。そして各種のパラメータ設定が済むと、Kubuntuインストールカーネルがインストレーションアプリケーションをダウンロードして、自動的に通常のネットワークインストールが開始される。こうしたTC1000マシンへのKubuntuのインストール自体は、比較的簡単な作業であった。ところがインストール終了後、先に便利だと紹介したこのタブレット機の固有機能を設定する際に、解決困難な問題が出現したのである。

インストールの終了したタブレットPCは、ごく正常に機能するLinuxマシンとなっていた。例えばKubuntuは、搭載グラフィックカードがNvidia GeForce 2 Goであると認識し、オープンソースのXorgモジュールも正しく読み込まれていた。またタブレットPCの側面に外部接続したUSBキーボードも正常に反応した。カーネルモジュールについても、Intel e100 NICおよびVIA AC’97オンボードサウンドシステム用に適切なものが読み込まれていた。こうして私は、OpenLDAPサーバ認証用のPAM設定をした後、ホームディレクトリをNFS経由でマウントできたのである。

次に行うべきは、このタブレット機に固有なペンデジタイザ、802.11bワイヤレス、タブレット側面にあるエクストラボタン群などに関する各種の設定である。

初めに遭遇したのは、ワイヤレスカードに関する問題であった。このカードはAtmelモデルで、ファームウェアの読み込みを必要としたのだ。そこで私は最初、Atmelのファームウェアをダウンロードしてインストールを実行するという方法を試した。この作業自体は問題なかったが、結果としてワイヤレスカードは動作しなかった。最終的に、Kubuntuはファームウェアを認識してapt-getできる所までは進んでいることを確認できた。ところが、パッケージをインストールし、modprobeを用いてatmel_pciモジュールを読み込んだ後、ワイヤレスインタフェースの設定が行われないのである。これはあまり推奨されない方法かもしれないが、pre-upステートメントを/etc/network/interfacesに追加したところ、ワイヤレスカードは動作してくれた。この場合、pre-upステートメントの追加が効いたのか、何か別の操作が功を奏したのかは不明である。もっとも、リビングルームのど真ん中を這い回っていたイーサーネットケーブルを片づけることができたので、我が奥方殿の機嫌を直せたことだけは確かなようだ。

次に遭遇したのは、ペンデジタイザに関する問題である。何しろ、スクリーン上での操作に反応しないタブレットPCほど使いづらいものは無い。実のところ、ペンデジタイザ用のドライバをインストールするのは、OSインストール後の作業で一番簡単な処理であった。まずはデジタイザ用のカーネルモジュールソース(fpi2002)をダウンロードし、現状のカーネルに統合させる。次に行ったのはtc1k Xorgドライバのダウンロードとコンパイルで、これによりデバイスがマウスイベントをXorgに渡すことができるようになった。なお今回はsetserial /dev/ttyS0 autoconfigという行をrc.bootに追加して、/dev/ttyS0シリアルポートの自動設定を行えるようにしておいた。またこの作業時にプロプライエタリ系のNvidiaビデオドライバをインストールしたところ、グラフィック処理能力にかなりの向上が見られた。

今回の作業で一番確保したかったのは、スクリーンの回転機能の再現である。Windows XP Professional Tablet Editionの環境下では、横長モードから縦長モードへはシームレスに切り換えることができた。状況に応じてスクリーンを回転させ、USBキーボードを差し込んでテキスト入力をするという操作は、やってみると非常に便利なのである。実のところ、スクリーンキーボードや手書き認識で大量のテキスト入力するのは簡単ではなく、例えばパスワードフィールドのように入力中の文字を確認できない場合は特に不便だ。そして私としては、座ったまま画面を眺めつつ、上/下のトグルキーを操作しながら、思いのままに横長モード(机の上での作業時など)から縦長モードに切り換えるという、クールな操作感を満喫したいのである。

ところがKubuntu環境下に置かれたペンデジタイザはスクリーンの回転を認識できず、本来あるべき位置から90度ずれた座標を返してしまうのだ。この現象については、xorg.confファイルに異なる名前で複数のスクリーン設定を登録しておき、startxによるXorg起動時に該当するレイアウトのスクリーン名を指定するということで、一応の回避ができた。ただし、当然のことながらXorgサーバの再起動をすると、表示状態にあるXプロセスはすべて終了されてしまう。この点は、今回の試みにおける挫折の1つであった。

最後に残されたのは、このタブレット機に固有な特殊キーに関する設定である。私にはLinuxでカスタムキーの設定を行った経験がなかったため、結果的にこの作業には最大の時間を費やすことになった。ここではまずスタートアップ時に、特殊キーのキーコードを設定した上で、カーネルキーの名前に対するマップを読み込ませるようにしておく。こうしておくと、KDEに関する設定として、特定のイベントに対して個別のキー割り当てをすることができる(この場合は、KMailに対して電子メールアイコンのキー、ウィンドウの切り換えに対してQキーなど)。

残念ながら今回の試みでは、どうしても再現できない機能が残された。Windows XP環境下の場合、上/下のトグルキーを一定方向に押し下げると(具体的には下方向でのWebページのスクロールダウン)、OSはこの状態を下矢印キーの連続押し下げと同じだと判断してくれる。ところがKubuntuの場合、これと同じ操作が下矢印キーのクリック1回分と見なされてしまうのだ。そのため長めのWebページをスクロールさせようと思うと、何度もトグルキーを押さなければ、奥の方にあるページにたどり着けないのである。私にとってこれは、容認しがたい問題として残された。

その他の問題としては、見栄えの良いオンスクリーンのキーボードアプリケーションが見つからなかったことも不満な点として挙げられる。確かに汎用のXキーボード(xvkbd)は見栄えも悪くないし、gokという選択肢も存在はしているが、いずれもWindows XP版の付属キーボードと同様に、OS本体のルックアンドフィールとマッチしないのだ。なおWindows XP環境下だと、アプリケーションを最大化した場合に、入力エリアと重ならないようオンスクリーンキーボードが自動的に調整をしてくれる(Remote Desktop Connectionは例外) 。

Windows XPへの回帰

結局私は、低速なプロプライエタリ系OSだが、付属アプリケーションの出来も悪くなく、ルックアンドフィールもまあまあで、使える機能も豊富なオリジナル状態に復帰することを決意し、Windows XP Professional Tablet Editionを再インストールすることにした。だが、この復帰作業も一筋縄では行かなかった。と言うのも、外付け式のUSB CD-ROMドライブを接続して、ブートCDを挿入したのだが、タブレットが起動しないのである。BIOSのブートオーダーを確認したところ、CD-ROMドライブが組み込まれていなかった。そんなバカな! 最新版のBIOSにしてあったのに!

この問題については数日悩んだ末、Microsoft Remote Installation Services(RIS)サーバを所有する友人の1人に助けを求め、正常なOSの再インストールに協力してもらうことにした。結果、USBフラッシュドライブ経由でドライバ類をコピーすることで、ネットワーク接続が再確立できたのである。その後はFirefoxやPuttyなど、過去に使って気に入っていたWindows用オープンソースユーティリティをインストールするだけであった。仮に今後もWindows XP Professional Tablet Editionで動かし続けるとしても、アプリケーションだけは使い勝手のいいものが揃えてある、という次第である。

NewsForge.com 原文