オープンソースソフトウェアの歴史
1990年代中程以降、GNUプロジェクトの創始者であるリチャード・ストールマンはLinuxを「Linux」ではなく「GNU/Linux」と呼ぶことをDebianを含むLinux関連ソフトウェアベンダーに依頼していた。他者の開発するソフトウェアの名称を指定する名称変更の依頼は賛成派と反対派に分かれるGNU/Linux名称論争となり、LinuxディストリビューションやLinux向けソフトウェアを開発する利用者がどのような名称でLinuxを扱うかの論争となった。
フリーソフトウェア財団はフリーソフトウェアおよびGNUプロジェクトの啓蒙のためのGNU/Linuxの名称を使用していることを明言し、その上でそれがフリーソフトウェア運動として意味のあることと主張している。リチャード・ストールマンは名称変更運動が自己中心主義または個人な感情から生じているという指摘に対し、個人の名声ではなくGNUプロジェクトへの名声のために名称変更を主張していると述べている。
Linuxの開発者であるリーナス・トーバルズはGNU/Linuxという名称の存在は否定しないが、それはGNUプロジェクトのLinuxディストリビューションに与えられる名称であり、 Linux全般をGNU/Linuxと呼ぶことは適切ではない述べている。『Linux Journal』はリチャード・ストールマンのは名称変更の啓蒙活動は、「リーナスが、ストールマンがしたかったことで称賛を得た」ことに対するフラストレーションに起因するのではないかと推測している。
1955年に設立したSHARE(英語版)ユーザーグループは自由に利用できるソフトウェアを収集し、頒布していた。SHAREの最も古いドキュメント頒布物は1955年10月17日に遡り、『SHARE Program Library Agency』で磁気テープの情報とソフトウェアがまとめられていた。IBMがメインフレームのOSのソースコードとしてリリースしたものを、SHAREユーザーグループは小さなローカルの機能追加、修正をし、他の利用者と共有した。SHAREプログラムライブラリとそれが育んだ分散開発のプロセスは、オープンソースソフトウェアの主要な起源の1つとなった。
Ubuntuは2004年にユーザビリティの高いLinuxディストリビューションとなることを目標としてDebianから派生して開発された。従来Linuxはコンピュータにある程度詳しいホビイスト、ハッカーが利用するOSだったが、Ubuntuはコンピュータにさほど詳しくない利用者でも利用できるようインストール方法にLiveCDを採用し、GUIもWindows相当に利便化した環境を提供した。2010代初頭には、ユーザーエージェントから判断する限りでは、インターネットトラフィックの0.5%から0.65%の割合を占めていた。また、2014年にUbuntu Touchをタッチパネルデバイス用に開発した。
Googleは2005年にAndroid Inc.を買収し、OSとしてLinux、アプリケーション実行環境としてJava仮想マシンDalvik仮想マシンを採用したAndroidの開発を始め、2008年にHTC製タッチパネルスマートフォンHTC Dreamを発売した。また、Googleは2009年にウェブブラウザChromeの技術をベースにクラウドにアプリケーションとユーザーデータを保存するChrome OSの開発を発表した。
Nokiaは2010年にSymbianがクローズドソースで開発、販売していたSymbian OSをオープンソースソフトウェアで公開した。LiMo Foundationは2010年にLinuxベースのモバイル向けOSであるMeeGoをリリースした。Symbian、MeeGoは日本ではMOAP(S)、MOAP(L)として2000年代のフィーチャーフォンで採用されていた。
その会議では名称について混乱を引き起こし、マイケル・ティーマンは新しく「sourceware」を主張し、エリック・レイモンドは「open source」を主張した。集まった開発者たちは投票を行い、同日午後に勝者である「open source」が記者会見で公表された。5日後の4月12日、エリック・レイモンドはフリーソフトウェアコミュニティへ新しい用語の「open source」の受け入れの発表をした。その後すぐ、同月末に「オープンソース・イニシアティブ(OSI)」が設立された。
オープンソース・イニシアティブは1998年に「オープンソースの定義」を発表した。オープンソースの定義では、オープンソースは利用者がそのソースコードを商用、非商用の目的を問わず利用、修正、頒布することを許し、それを利用する個人や団体の努力や利益を遮ることがないこととした。「オープンソースの定義」では「フリーソフトウェアの定義」のコピーレフトのようなプロプライエタリに用いてはいけないこと、ローカル・コモンズへの貢献を呼び掛けることはしなかった。オープンソース・イニシアティブはオープンソースの定義に従ったソフトウェアライセンスをオープンソースライセンスとして公認して、オープンソースのソフトウェアのブランド化を図った。
ただし、後からリーナス・トーバルズは承諾している。1992年にモノリシックカーネルを採用したLinux開発者のリーナス・トーバルズとマイクロカーネルを採用したMINIX開発者のアンドリュー・タネンバウムは、ニュースグループ「comp.os.minix」でカーネルの在り方やその他多岐に渡り議論をした。カーネルの在り方は一長一短であり良し悪しを明確に決着することなく、激論を交わしたものの両者は良好な関係でいる。
初期のLinuxは商用利用を禁じたプロプライエタリなライセンスであったが、1992年1月5日にリリースしたバージョン0.12のリリースノートでGPLへのライセンス変更の意向が宣言され、1992年12月にリリースしたバージョン0.99でGPLに変更された。
自由な利用が可能となったLinuxのソースコードは多くのLinuxディストリビューションとして派生し、1993年にパトリック・ボルカディング(英語版)のSlackware、イアン・マードックのDebianへ、1994年にレッドハットのRed Hat Linux、Software and Systems Development CorporationのS.u.S.Eへと派生していった。
1982年にリチャード・ストールマンはフリーソフトウェアのみで構成された完全なOSを実装する「GNUプロジェクト」を開始した。GNUプロジェクトはEmacs、デバッガ、Yacc互換パーサー、リンカーの実装から始まり、多くのUNIXユーティリティソフトウェアを実装した。GNUプロジェクトの始動させた動機に、利用者にソースコードの提供がなされなかっために問題を解決できなかった厄介なプリンターの存在があった。
1985年、GNUプロジェクトの目的の概要とフリーソフトウェアの重要性を説いた「GNU宣言」を発表した。GNUプロジェクトの可能性とGNU宣言は、シンボリックス社が更新したMITのソースコードをベースにしたLISPマシンをMITが利用するケースにおいて、リチャード・ストールマンとシンボリックス社は合意することはできなかった。
1986年2月、リチャード・ストールマンはフリーソフトウェアの在り方を定義した「フリーソフトウェアの定義」を発表した。1986年のフリーソフトウェアの定義は2つの要点からなり、フリーソフトウェアのフリー(自由)の意義と優位性についてシンプルな言葉で表した。フリーソフトウェアの定義は時代にあわせて逐次更新され、1996年に3条項からなるフリー(自由)の定義とそれを補足する文章となり、1999年に第0条を追加した4条項となった。