株式会社ホコサキ

あなたのターミナルはRMSが作った——リチャード・ストールマンという人

天京祐輔
天京祐輔
あなたのターミナルはRMSが作った——リチャード・ストールマンという人

リチャード・ストールマン(RMS)という名前を聞いたことはあっても、「何をした人か」を一言で説明できるエンジニアは意外と少ない。でも、あなたが毎日叩いているターミナルのコマンド群、使っているコンパイラ、そしてOSSの世界を支えるライセンスの仕組み——その相当な部分は、この一人の人物の執念から生まれています。

偉人伝を書きたいわけではありません。「自分が毎日使っているものの源流にこんな人がいた」という実感と、フリーソフトウェア運動が今日の開発にどう繋がっているかを、一緒に辿ってみたいのです。

プリンタドライバ一枚が、すべての始まりだった

1970年代のMIT人工知能研究所(AI Lab)は、ハッカー文化の揺籃の地だった。コードは自由に共有され、誰かが書いたプログラムを別の誰かが改良し、またコミュニティに戻す——そういう空気が当たり前のように根付いていた。

RMSはその文化の中で育ち、Emacsの原型を書き、Lisp Machineのオペレーティングシステムに関わり、コンパイラやデバッガを手がけた。コードを共有することは、彼にとって倫理以前の「普通のこと」だった。

その「普通」が崩れる瞬間が来た。ラボに新しいXeroxのレーザープリンタが導入されたとき、RMSはあることに気づく。このプリンタは印刷キューが詰まっても通知を出さない。以前のプリンタではソースコードを入手して自分でその機能を追加できたが、Xeroxは新機種のドライバのソースコードを提供しなかった。

ソースコードがなければ、自分の道具を自分で直せない。問題がどこにあるかすら調べられない。それは道具を「所有」しているようで、実際には道具に「支配されている」状態だ——RMSはそう受け取った。この体験が、後の思想の核心になる。

同じ頃、もう一つの出来事がRMSの気質を際立たせる。MIT AIラボのハッカーたちが商業会社Symbolicsに引き抜かれ、ラボのLisp Machineのコードがプロプライエタリ化されていった。RMSは一人で、Symbolicsのエンジニアチーム全体が書いたコードに相当する量を書き続け、競合のLisp Machines Incorporated(LMI)に提供し続けた。

「Symbolicsを罰してやる、それが最後の仕事になっても」と彼は言ったとされる。妥協しない、という言葉では足りない。RMSにとってコードの自由は、交渉の余地がある「方針」ではなく、曲げられない「原則」だった。プリンタドライバの一件はその原則を言語化させ、Symbolicsとの戦いはその原則を行動で証明した。1983年、彼はその原則を世界に向けて宣言することになる。

あなたのターミナルにあるGNUを確認する

1983年9月、RMSはネットニュースに一つの投稿を送った。GNUプロジェクトの開始宣言だ。GNUはUnix互換のフリーなオペレーティングシステムを作るプロジェクトで、名前は「GNU's Not Unix」の再帰的略語——これ自体がハッカー的なユーモアの塊だ。

なぜUnix互換なのか。当時Unixは広く使われていたが、プロプライエタリなライセンスに縛られていた。Unixの設計思想(小さなツールを組み合わせる哲学)は優れているが、そのソフトウェア自体は自由ではない。だからRMSは「互換性のある、しかし完全にフリーな」システムを一から作ることにした。

結果として生まれたものは、現代の開発環境の骨格を成している。手元のターミナルで確認してみてほしい。たとえばこんな出力が返ってくる(バージョンは環境によって異なる)。

$ gcc --version
gcc (GCC) 13.2.0
Copyright (C) 2023 Free Software Foundation, Inc.

$ ls --version
ls (GNU coreutils) 9.4
Copyright (C) 2023 Free Software Foundation, Inc.

$ make --version
GNU Make 4.4.1
Built for x86_64-pc-linux-gnu
Copyright (C) 1988-2023 Free Software Foundation, Inc.

Free Software Foundation という文字列が見えるはずだ。これがGNUプロジェクトの成果物であるサインだ。macOSの場合、デフォルトのツールはApple独自のものに置き換わっていることが多いが、Homebrewで gcccoreutils を入れていれば同様に確認できる。

GNUプロジェクトの主要な成果物を整理すると、次のようになる。

  • GCC(GNU Compiler Collection): C、C++、Fortranなど多言語に対応するコンパイラ。Linuxカーネルのビルドにも長く使われてきた
  • GNU Emacs: RMSが「神の座」に就くエディタ。単なるテキストエディタを超えたLisp実行環境
  • GNU Coreutils: lscpmvcat など、シェルで毎日使うコマンド群
  • GDB(GNU Debugger): C/C++開発者が頼るデバッガの定番
  • GNU Make: Makefile駆動のビルド自動化ツール。今もCIパイプラインの随所にいる

カーネル以外はほぼ揃えた、というのが1990年代初頭の状況だった。そして肝心のカーネル——GNU Hurd——は、現時点でも実用レベルには達していない。

Linuxカーネルが1991年にLinus Torvaldsによって登場し、GNUのツール群と組み合わさって「動くシステム」が生まれた。RMSが10年近くかけて積み上げたピースが、別の人物が書いたカーネルによって完成した。この皮肉な経緯が、後の「GNU/Linux」呼称問題に繋がっていく。

GPLという発明——著作権で著作権の独占を防ぐ逆説

GNUプロジェクトが進む中で、RMSはもう一つの問題に直面した。フリーなコードを書いても、誰かがそれをプロプライエタリなソフトウェアに組み込んで「閉じて」しまえば、自由は一方通行で失われていく。

直接の引き金になったのはGosling Emacs事件だ。James GoslingがC言語で書いたEmacsのコードを、RMSは許可を得て自分のEmacsに取り込んでいた。ところがそのコードの権利がUniPressに移り、UniPressはRMSに対してそのコードの配布停止を求めた。フリーだと思っていたコードが、突然「所有者」を持ち、使用を禁じられた。

RMSの応答は法的な反撃ではなく、仕組みの発明だった。コピーレフトという概念と、それを実装した**GPL(GNU General Public License)**だ。

仕組みの核心は逆説的だ。著作権法は本来、著作者が複製・改変・配布を制限するための道具だ。GPLはその著作権を使って「自由を守る」ために制限をかける。具体的には「このソフトウェアを改変・再配布するなら、同じGPLで公開しなければならない」という条件を課す。自由を広げるために、制限を使う。

RMSが定義したフリーソフトウェアの「4つの自由」は、GPLの思想的な土台だ。

  • 自由0: プログラムを、どんな目的でも実行する自由
  • 自由1: プログラムがどのように動いているかを研究し、自分の必要に合わせて改変する自由(ソースコードへのアクセスが前提)
  • 自由2: 隣人を助けるために、コピーを再配布する自由
  • 自由3: 改変したバージョンを配布する自由(コミュニティ全体が改良の恩恵を受けられるように)

現代の実務では、OSSライセンスの選択はプロジェクトの性質を決める重要な判断だ。MITやApache 2.0は「使ったコードをGPLで公開しなくていい」という意味で商用製品に組み込みやすい。一方GPLは「GPLのコードを使ったソフトウェアはGPLで公開する義務がある」という伝播性を持つ。この違いを理解せずにOSSを組み込むと、後から法務問題になる。

RMSが設計したこの「感染する自由」の仕組みは、30年以上経った今も、あなたのライセンス選択に直接影響を与えている。

「GNU/Linux」と呼べ——偉大さと厄介さは同じ根から生えている

LinuxカーネルとGNUのツール群が組み合わさって動くシステムを、世間は「Linux」と呼ぶ。RMSはこれを「GNU/Linux」と呼ぶべきだと主張し続けている。

単なる名誉欲に見えるかもしれないが、彼の主張の論理は一貫している。カーネルだけではOSとして動かない。シェル、コンパイラ、コアユーティリティ——それらGNUのツール群があって初めてシステムとして機能する。そして重要なのは、それらがGPLというフリーソフトウェアの理念のもとで作られたという事実だ。「Linux」と呼ぶことで、その背後にある思想的文脈が見えなくなる——RMSにとって、それは単なる呼称の問題ではなく、フリーソフトウェア運動の可視化の問題だ。

このこだわりは、彼の人物像を象徴している。RMSはEmacs上に「Church of Emacs(エマックス教会)」という架空の宗教を冗談として作り、自らを「聖IGNUcius」と名乗った。「viを使うことは罪か?」という問いに対して「フリーなviを使うことは罪ではない。それは苦行だ」と答えた。

ネクタイについては「原則として所有しない」と宣言しており、その理由を「上司への媚びの象徴だから」と説明している。食事は菜食主義で、生活スタイルも徹底して自分の原則に従っている。これらの逸話を「変人エピソード」として消費するのは簡単だ。しかし別の見方もできる——思想と生活を一致させようとする一貫性の表れでもある。

コードの自由を主張しながら自分の生活はプロプライエタリな慣習に従う、という矛盾を彼は許容しない。その徹底ぶりが、GPLという仕組みを生んだ原動力でもある。

2019年、MITのメーリングリストへの投稿が流出し、ジェフリー・エプスタイン問題に関連する発言が問題視された。RMSはFSF(フリーソフトウェアファウンデーション)の代表を辞任し、MITの職も離れた。その後2021年にFSFの理事として復帰したことを自ら発表したが、多くのコミュニティメンバーや企業から反発の声が上がった。何が正しかったのか、ここで判断を押しつけるつもりはない。ただ、偉大さと厄介さが同じ人物の中に同居しているという事実は、正直に書いておく必要がある。

フリーソフトウェアオープンソースの違いも、ここで整理しておきたい。1998年にEric Raymondらがオープンソース・イニシアティブ(OSI)を立ち上げたとき、RMSはその動きを支持しなかった。オープンソースは「ソースコードを公開することで開発効率が上がる」という実用的な主張だ。フリーソフトウェアは「ユーザーの自由という倫理的な問題だ」という主張だ。RMSにとって、実用性の話にすり替えることは、本質を見失うことを意味した。

妥協しないことがGPLを生み、GNUを生み、現代のOSSエコシステムの土台を作った。同時に、その妥協しなさが摩擦を生み、コミュニティとの断絶を招いた。どちらも同じ根から生えている。

今日あなたが使ったコマンドのうち、何本に GNU という文字が入っていたか。--version を一度叩いてみれば、その答えが出る。


株式会社ホコサキは、山口県宇部を拠点にWeb制作・業務システム開発・AI活用支援・DX推進に取り組んでいます。技術的な判断や開発の進め方について相談したい方は、お問い合わせページからお気軽にどうぞ。

    あなたのターミナルはRMSが作った——リチャード・ストールマンという人 | 株式会社ホコサキ