「なぜ“デスクトップLinux”は普及しなかったのか?」について記憶を辿ってみる(1)--2000年頃
- 公開日: 2018/12/04(火) 19:56[JST]
ITmediaエンタープライズの「なぜ“デスクトップLinux”は普及しなかったのか?」という記事を読んだ。著者は大越 章司氏であり、著者プロフィールによれば営業・マーケティング畑のキャリアを歩んでおり、記事にもあるように2006-07年にはレッドハットでデスクトップLinuxを使用していたこともあったようだ。
デスクトップLinuxが普及しなかった理由として、大越氏は以下の通り結論づけている。
Microsoft Officeが無かったこと
デバイスドライバが少なかったこと
UI/UXがいまいちだったこと
1.は間違いなく一因だったとは思う。2.については多分違う。大越氏は「プリンタやオーディオボードなどのドライバは、ベンダーが用意するものですが」としているがLinuxにおいてはドライバはコミュニティで開発しているものも多く、またプリンタについては少なくとも2006-07年であれば各社Linux用ドライバを供給しておりさして困る状況でもなかったはず。DellやブラザーのレーザープリンタはPostscript対応なのでドライバなしでも使えたし。
ではなぜ普及しなかったのか?(実際にはかつてUNIXワークステーションの独壇場だったエンジニアリング向けワークステーションの市場をWindowsと分け合う程度には普及しており、プリンタ等のサポートも続いていることから相応の普及はしているとは思うが)
私自身は2000からずっとメインの作業用PCはLinux又はFreeBSDであり、デスクトップOSとしていいところもダメなところも一通りは体験しているつもりなので、当時の記憶を思い出してみようと思う。
2000年頃はチャンスではあった
当時、マイクロソフトはマニア層からとにかく嫌われていた。マイクロソフトはOS、オフィスアプリケーションの双方で独占企業となっていた(今でもそうだけど)。独占企業はとかく嫌われるものである。また、後述するようにソフトの出来も抜群に優れていたとはいえない状況であり、にも関わらず競合ソフト(Wordperfect、Lotus1-2-3、一太郎などのオフィスアプリケーションやNetscape Webブラウザ)を次々と駆逐していったこともアンチマイクロソフトに拍車をかけることになった。
Windows95や98はUIこそ大幅に向上し、多数のソフトが流通していたのでメインOSとして使えるレベルになっていたが、非常に不安定でしょっちゅうOSが固まっていて、Ctrl+Alt+Deleteを二回押してOSを強制終了させるのが日常だった(それすらできないことも)。加えて、基本的にはシングルユーザOSで管理者と一般ユーザを区別していないのでセキュリティ的にも問題の多いOSではある。
一方でWindows NT(当時は4.0でWindows2000が出る直前)は安定していたが、企業で使うならともかく個人用途で使うにはちと高く(実売でも40000円台)、デバイスドライバも十分に用意されているとは言い難い状況だった。Linuxを使う前はWindows NT4.0を使っていたのだが、当時は特にスキャナ(SCSI接続)が満足に使えずそこが不満だった。また、Windows NT4.0はWindows95のソフトも(ゲーム以外なら)ある程度は動作するのだが、Windows95用のソフトは基本的にユーザの権限とか考慮していないので管理者以外では動作させることができないものも多かった。
このように、当時のWindowsには難も多く、かつアンチマイクロソフトが一つの風潮だったので、適切な代替OSがあればマニア層が乗り換える可能性は十分にあった。そしてLinuxはその最右翼であるとみなされていた。Macについては(iMacがヒットしていたが)OSXはまだパブリックベータの段階であり、一方Classic MacOS(OS9)は安定性・セキュリティ共にWindows98といい勝負だったためこの時点ではまだ選択肢にならなかったと思われる。
何よりも力不足
ということで、PC系雑誌メディアなどで盛んにLinuxが喧伝されていて(毎年のように「今年こそLinuxデスクトップ元年」という煽りが出ていた)、インストールを試みたユーザも多かったのではないかと思うのだが、(元々大学や職場でUNIXワークステーションを使用していた層を除けば)彼らの多くはWindowsに戻っていった。当時を思い出すと、やはりデスクトップ用途としては力不足だったのではないか、と思う。
同梱ソフトが少ない
まずはこれ。当時は定額制インターネット接続が登場したばかりであり利用者もまだ少なかった。そのためLinuxの入手手段は商用パッケージ版(商用ソフトやサポートを含むもの。一万円以下で売っていた)を買うか、雑誌や書籍付録のフリー版CD-ROMを使うというのが一般的だった。
UNIXやLinuxではあるソフトを動かすために別のソフトが必要で、そのソフトを動かすためには又別のソフトが必要になり…というのがしばしばあるため、特殊なものを除けばアプリケーションソフトもディストリビューション側でコンパイルしたものを用意するというのが一般的である。で、当時はまだ個人で使うようなソフトをディストリビューション側で十分にカバーできないことが多く、インストールしただけではちょっと使えなかった。(Debianはそうでもなかったらしいけど当時はRed Hat系に比べるとあまり情報がなかったと記憶している。また、Debianは安定志向のディストリビューションでいったんメジャーバージョンがリリースされた後は次のメジャーリリースまでパッケージの更新は基本セキュリティフィックスのみとなる。サーバ用途ならともかく日進月歩で進化・増加するデスクトップ環境でこれはちときつい)
で、どうしたかというと、別のディストリビューションのパッケージを流用したり(当時はRed Hat Linux6系が標準でこれの派生ディストリビューションも色々出ていて、同系列のディストリビューションならパッケージをある程度は流用できた)、誰かがビルドしたパッケージをネットから拾ってインストールしたり、ソースから自分用のパッケージを作ったりして補っていた。当時再インストールの為に取っておいたMOディスクの内容を見ると、以下のものが不足していたようだ。
- BookView
EPWING形式の電子辞書を検索するソフト。今だとEBViewを使うことが多いかな?
- NDTPD
電子辞書サーバ。
- TiMidity++
ソフトシンセ。当時はまだ音楽の配布手段といえばMIDIファイル。
- GUS Patch
Gravis UltraSoundというウェーブテーブル音源カード用の音色データ。TiMidity++と組み合わせて使う。
- 88pro設定ファイル
SYUUHOU氏による、GUS Patchを使ってTiMidity++をローランドのSC-88pro相当にするための設定ファイル。
- Plugger
様々な形式のコンテンツをNetscape Navigatorで扱えるようにするためのプラグイン集
- Ghostscript VFlib版
UNIXの世界ではPostscriptプリンタが標準。Ghostscriptを使うとPostscriptプリンタ向けのデータを各社のプリンタ制御コマンドに変換して印刷させることができる。ただ、元々Postsriptはプリンタ側にもフォントが用意されていることが前提であり、多くのディストリビューションに付属のGhostscriptは、Windows環境のようにTruetypeフォント等を使って印刷することは想定されていない。そのような印刷を行いたい場合は、フォントをベクタ画像に変換してプリンタに送る必要があり、VFlib版のGhostscriptはそのような場合に必要となる。というかPostscriptじゃないプリンタで普通に印刷するために必須。
- dynMotif版Netscape4
後述
描画が遅い
2000年当時標準のX Window SystemはXFree86 3.3。これの描画がとにかく遅く、動画再生とかには全然使い物にならなかった。次期バージョンのXFree86 4でようやく実用レベルとなるのだが、これをインストールできるのはRed Hat Linux 7やその派生ディストリビューションから。で、これらのディストリビューションにはまた別の問題が起こったのである。
Webブラウザの致命的なバグ
当時LinuxのX Window Systemで使えるWebブラウザといえばNetscape Navigator4。ところが、当時各ディストリビューションに付属のものは、静的リンクされたMotifツールキットのバグにより「日本語入力をしようとすると落ちる」という致命的な欠陥があった。この問題を回避する為には、上で挙げたdynMotif版Netscape4(その名の通り別途インストールしたMotif(実際は互換品のLessTif)ツールキットを動的リンクして使用するもの)を代わりに使用する。
テキストエディタがちょっと
歴史的な事情から、日本語の文字エンコーディングは互換性の無い複数の規格が併用されていた。
- シフトJIS
DOS、Windows、Macで標準のエンコーディング。これらの機種向けの日本語に対応していない古いブラウザではシフトJISしか使用できなかったこともあり、個人のホームページなどではシフトJISでHTMLを書くのが普通。ちなみに規格上はUS-ASCIIと英数部分に互換性がなく(バックスラッシュ→円記号、チルダ→オーバーライン)、それが上に挙げたKHTMLでの挙動に影響を与えていた。Windowsの標準は厳密にいうとWindows-31Jというエンコーディングであり、こっちはUS-ASCII上位互換(円記号のような字形だけどコード上はバックスラッシュ、というアクロバティック的手法を採用)。
- EUC-JP
UNIXやLinuxで当時標準だったエンコーディング。Webサイトで掲示板とか作る場合はこのエンコーディング。当時はYahoo Japanがこのエンコーディングだった。2000年代にUTF-8に取って代わられることになる。
- ISO-2022-JP
電子メールでは7bitエンコーディングが仕様だったのでこのエンコーディングが用いられる。日本語化された最初期のブラウザ(InfoMosaicだったかな?)ではこのエンコーディングを前提としていたらしい。
特にWebサイトを作っているとこれら3種類のエンコーディングを適宜使い分ける必要があり、秀丸エディタ等Windows用のエディタでもこれら3種類のエンコーディングのテキストを編集することができた。LinuxだとEmacsのマルチリンガル版であるMULEが対応していたが操作性がWindows用のエディタとはかなり違うのが(Windowsからの移行者にとっては)ボトルネック。
操作性がWindowsライクで複数のエンコーディングに対応していたLinux用テキストエディタというと、Kondara/MNU Linuxで開発されていたMGEditというのがあり一時期これを使っていた。当然他のディストリビューションには含まれていない。
プリンタの設定が大変
すごく大変で試行錯誤を繰り返していた記憶がある。ぐぐってみてヒットしたHiroshi Takekawa氏による「プリンタの設定メモ」を一読してああそうだったなと思い出す。
Vflib版のGhostscriptをインストールする
Ghostscript標準で対応していないプリンタなら、プリンタドライバ(Ghostscriptフィルタ)を入手する(エプソンは子会社のエプソンコーワ(現・エプソンアヴァシス)を通じて当時から割と積極的にLinuxドライバを出していた)。
フィルタスクリプトの作成
/etc/printcapの編集
lpdの起動
Ghostscriptに付属のpostscriptファイルを使って印刷テスト
一発でうまくいくことはまれなのでlpqコマンドとかを使ってどこがおかしいのかチェック
CUPSが実用レベルになってから本当に楽になった。
Red Hat Linux7とGCC2.96の問題
2000年9月に登場したRed Hat Linux7はXFree86 4を採用し、それまでの描画が遅いという問題が解消された。しかし、それまでのバージョンから多くの変更があったため、既存の(コンパイル済みの)パッケージは動作しないことが多かった。なら自分でコンパイルしよう、と思ったのだが標準のコンパイラであるGCCのバージョンが2.95から2.96に変わってしまった。この2.96というのは開発者であるGNU自身の主張によれば、GCC3への開発バージョンであり、2.95とも3とも互換性がない非推奨のバージョンとのことである。
実際、上で挙げたソフトの多くはGCC2.96ではコンパイルできなかった。TurboLinuxやLaser5 Linux等のRed Hat派生ディストリビューションもRed Hat 7系になったため同様である。
例外的にVine Linuxのみは追従せず(GCCではなく派生版のEGCSを採用していた)、Vine Seedというα版のパッケージでXFree86 4をインストールすることができた。そのため、私自身は2001年一杯はVine Linux 2.1を使っていた(年末からFreeBSDに移行)。当時はまだ自宅のインターネット接続が64kbpsのISDNだったので何時間もかけて数十もの必要なパッケージをダウンロードしてはインストールを繰り返し、使える環境が出来上がるまで非常に苦労した記憶がある。
そうこうしているうちにWindows XPが出た
2001年後半に登場したWindows XPはホビー用途としてもまずまず使え、そしてWindows95/98/Meよりははるかに安定していた。その結果、LinuxとWindowsとの差はますます広がることになった。この傾向が多少なりとも改善されるのはubuntuが登場する2004年になってからである。
要するに、Linuxは自分でゴニョゴニョするスキルがなければ使い物にならないと。そりゃ普及するはずもなし。
「うちは無料ですけど何も提供しません。食べたかったら自分で作ってね」なんてレストラン、誰が行くというのか(笑)