last modified on [2003-02-18 23.43 (JST: GMT+0900) @655]
1st appeared on 7th April, 2002 mixed and updated from the previous appearance as "LS introduction (1) on 10th May, 2000;
Revised on [18th-19th February, 2003].
Acknowledgement: thanks to ayamame, Fizz.oO, Fuji, hideh, Toshiyuki Itakura, Naoto Kanzaki, ken, Ks, ManiMani, Yusuke Mizukoshi, N&R, Hirohisa Teramoto, Taro "O_SAKANA" Todoroki, and especially to the LiteStep Documentation Effort Team, and chiharu fukada (machine owner, hehe)
Copyright©2000-2003 by Takayuki KAWAMOTO.
Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.1 or any later version published by the Free Software Foundation; with the Invariant Sections being LIST THEIR TITLES, with the Front-Cover Texts being LIST, and with the Back-Cover Texts being LIST.
A copy of the license is included in the section entitled "GNU Free Documentation License" [translation in ja].
LiteStep は、もともとフランシス・ガステル(Francis Gastellu, also known as Lone Runner)というフランス人のプログラマーが、Linux で使われているウインドウ・マネージャのデスクトップがもつ見た目や使い勝手を Windows で再現するために、Borland の C++Builder を使って書いたソフトウェアでした(*1)。その雛形になったウインドウ・マネージャは AfterSTEP と言って、この AfterSTEP 自体も、元々は一時アップルを追い出されたスティーブ・ジョブズが作った会社から発売されていた NEXT というコンピュータに搭載された NEXTSTEP (or OPENSTEP) という OS の GUI を模倣したものです(*2)。
ちなみに、フランシスさんは現在 Windows 用のメディア・プレイヤー(特に MP3)として有名な Winamp の開発チームでプログラマーとしてがんばってるみたいです。
*1 2000 年以降、開発チームがソース・コードをコンパイルする開発環境は Microsoft Visual C++ (TM) になりました。しかし Visual C++ で作ったプログラムを好まない人たちは、他のコンパイラで PureLS のように異なるヴァージョンの LiteStep を発表しています。
*2 ときおり "NeXTSTEP" という綴りを見ますが、或る人によると、"NEXTSTEP" と綴るのが正しいそうです。公式サイトでもそう綴ってます。
ちなみに、"LiteStep" の "step" という言葉は、以上のように NEXTSTEP, AfterSTEP の "step" から来ています。"Lite" の方は、もちろん "light" つまりエクスプローラよりも「軽快に」動作するシェルだという意味でしょう。ところで、なぜ "lite" と綴っているのでしょうか? これは話をアメリカの独立宣言(1776 年)にまで戻す必要があります。イギリス植民地だったアメリカがこの宣言を布告してから 2 年後に、米語の辞書を編纂した人物としてよく知られているノア・ウェブスターが「言語の独立」を説いて、イギリスとは違う英語を普及させようとしました。その当時からさまざまな地域の出身者が集まっていたアメリカでは、人種や出身地の違いから数多くの方言が入り乱れていたので、「アメリカ人」として団結するためには言語を統一する必要があると彼は考えたのです。彼はそのために幾つか方針を立てましたが、その一つは「単語を発音通りに綴る」ということでした。 "right" の "gh" や "knowledge" の "k", "d" といった発音されない文字を省こうとしたわけです。そうして綴り直された単語の多くは普及しませんでしたが、いまでも彼の考え方の影響が、例えば "got to" を "gotta" と書いたり、あるいは "going to" を "gonna" と書いたりするところに残っています。同じく、コマーシャルなどでは "right" を "rite"、"tonight" を "tonite" と書くことがあるようです。ですから、"light" を "lite" と書くのは間違いではなく、寧ろウェブスターの考えにしたがえば「正しい綴り方」ということになるのでしょう(ヴァネッサ・ハーディー、加藤恭子,『英語の世界・米語の世界』, 講談社現代新書, 1996, p.96ff)。
で、ガステルさんは LiteStep の基本となるコードを一人で書き上げて、知人たちへベータ版(試験版)を 1997 年 12 月 14 日に発表しています。そしてその後の 4 ヶ月間にわたって彼がプログラムを修正し続けるうちに、次第に多くの人々の注目を集めるようになりました。はじめは、UNIX あるいは GNU/Linux システムのユーザーでありながら仕事などの理由で Windows を使わなければならないような人たちの注目を集めたようです。実際 AfterSTEP の日本語メーリングリストでも、1998 年頃に LiteStep へ言及しているメールがありました。
そうして 1998 年 3 月 25 日に、LiteStep はようやく公開ベータ版としてリリースされ、誰でも使って試せるようになりました。ガステルさんは多忙な中で、公開ベータ版を発表した後も暫くはプログラムに手を加え続けていましたが、時期が来たと判断したのか、LiteStep のソース・コードを GPL: GNU Public License というライセンス形態で一般の人にも公開し、自身は開発から手を引くことにしたようです(*3)。GPL を簡単に説明すると、プログラムの作者は誰にでもプログラムを改変もしくは再配布できるように、ソース・コードの全てを公開しなくてはなりません。そのかわり、GPL によって公開されたソース・コードを参照して改変するなり新しくプログラムを書いた人は、プログラムを配布する際に他のコードを改変もしくは参照して書いたソース・コードも一緒に公開する義務があります(*4)。有料のソフトウェアであっても、GPL に従ってソースコードが公開されていれば「フリーソフトウェア」となります。
*3 昔は http://tinomen.pimpin.net/nlitestep.html に出典がありました。現在のドメインである desktopian.org では公開されていないようです。
*4 ちなみにこのウェブサイトでは、readme ファイルの翻訳を一種の改変と理解しています。但し、ウェブページはファイルを直に配布しているわけではありませんから、元の原文(英語)へのアクセスは当然ながらリンクという形で保証しています。その後、2000 年になって FSF のリチャード・ストールマン氏は、ドキュメントや画像に関する別のライセンスとして GNU Free Documentation License を発表しました。しかしこちらはまだ普及していないようですし、上記のように解釈すれば GPL でも対応できると考えます・・・と最初は書いてたんですが、現在はこのチュートリアルも GFDL で公開しています。過去の GPL で公開されていたモジュールなどの readme は、作者から翻訳の許可を取っているものについては問題ありませんが、これから取り扱うものについては「モジュールが GPL で公開されている場合に readme を GFDL で公開されたものと解釈してよいかどうか」が論点になると思います。
なお、このウェブサイトでは GPL に従って配布されているソフトウェアだけを「フリーソフトウェア」と呼びます。従って、無料かつ無保証ではあってもソース・コードを公開していない「フリーウェア」と区別しますのでご注意下さい。「無料体験版("free trial", "free downloads")」は検索エンジンに "free, download" というキーワードで引っ掛けさせるためのトリックに過ぎないので、最初から論外とします。
このようにしてソース・コードが公開されると、ただちに有志のプログラマーが集まって LiteStep を更に修正したり新しい機能を加えたりして開発し続けていこうということになりました。これが、ブランドン・ウィリアムズ(Brandon Williams also known as Floach)さんをはじめとする、初期の LiteStep Development Team (LSDEV team) (開発チーム)でした。このチームも、Linux や Mozilla など幾つかの開発チームと同様に無報酬の有志からなっており、多くはアメリカ合衆国の方ですが、アフリカやヨーロッパに住むメンバーもいて、ネットを介して情報交換をしています。その方法は多岐に渡っていて、IRC や ICQ あるいはメールなどで個人的にもやりとりしているようです。
この LSDEV team により、初期のソース・コードはガステルさんが使っていた C++Builder という開発ソフトに依存しない形で修正されました。それゆえガステルさんのコードは LiteStep の version 0.23x と呼ばれるのに対し、LSDEV team が 1998 年 10 月に発表したものは version 0.24x と呼ばれています。またその後、LSDEV team の主任開発者はブライアン・キリアン(Bryan Kilian also known as MicroftHolmesIV)さんへと引き継がれ、その次にはチャールズ・オリバー・ナッター(Charles Oliver Nutter also known as Headius Maximus)さんへと引き継がれました。また、LiteStep は正式な配布形態だけでなく "daily Build (development build)" と呼ばれる開発者向けのベータ版もたくさん出回っていますので、初めて LiteStep を使われる方はその中でも安定した(とは言えない場合もありますが)版を使うのがよいでしょう。日本では、mzks.org の mizu さんが "mzks build" を公開されていますし、他にもオリジナルの LiteStep が公開されています。
開発チームはたびたび人が入れ替わりますから、[Litestep] メーリングリストなど英語のメーリングリストやウェブサイトを見ていないと状況がなかなかつかめません。また、残念なことに LiteStep 関連のウェブサイトは移転や盛衰が激しくメジャーなサイトでもすぐに閉鎖してしまうので、ウェブページなどは見たときにすぐ保存しておく方がよいでしょう。
2001 年の末頃に LiteStep が GPL で公開されているので違うヴァージョンを出したいという人が現れ、sourceforge.net で Retrostep というのを公開していました。また、LiteStep を異なる仕方で開発している例は、C 言語で開発されている PureLS などもあります。このチュートリアルでは、これら「LiteStep 互換のシェル」は扱いません。
さて 2002 年 3 月になって、これまで続いてきた開発チームは一旦全ての開発者がリタイアしています。その後、新しい開発チームが結成され、前の開発チームで熱心に働いていた Message さんがオブザーバーとして加わっていました。このチームは次のヴァージョンである 0.24.7 の公開を目指していたようですが、身勝手なユーザーからの文句や要望を斥けるために最初は構成メンバーを明かさないというスタンスで組織されていました。現在はメンバーが公開されていますが、具体的な活動の内容も不明なまま開発チームはビルドを一つも公開しないうち、2002 年の秋ごろに解散してしまったようです。
現行の LiteStep は、0.24.6 というリヴィジョン(版数)がついています。これは、いま開発を継続している Independent LiteStep(インディーズ版 LiteStep)の開発チームが公開している LiteStep のことだと考えてよいでしょう。実際には 0.24.6 というリヴィジョンは 2000 年 6 月からついていたのですが、0.24.5 と 0.24.6 の間に正式なヴァージョンアップの告示はありませんでした。
このようなわけで、同じ 0.24.6 でも時期によって機能に大きな違いがあります。0.24.5 と 0.24.6 の主な違いは、後者が Microsoft の Visual C++ 6.0 を使って書かれていること、step.rc と呼ばれる設定ファイルのパーサ(解釈用のルーチン)が stepsets.dll というモジュールとして独立したことなど多岐にわたります。自分でコンパイルしたりソースコードを改変する方はご注意下さい。また 0.24.6 以降は、Visual C++ 6.0 で制作されたプログラムを使うための MSVCP60.dll(環境によっては MSVCRT.dll も)というライブラリの最新版を用意しなくてはなりません。これについては LiteStep を入手する方法について述べたページを参照して下さい。