【こぴーれふと】

コピーレフト とは?

最終更新:
💡 自由を守るために、自由を義務にした逆転の発想

ソフトウェアを自由に利用・改変・再配布できるようにしつつ、改変版や拡張版を配布するときにも同じ自由を保つことを求めるライセンスの考え方。GPLが代表的なコピーレフトライセンス。

📌 このページのポイント
コピーレフト vs パーミッシブライセンス コピーレフト(GPL等) 元のOSSソフトウェア(GPL) 改変 派生ソフトを配布するならGPLで 配布先にソースコードも提供する 自分だけで使う改変は対象外 パーミッシブ(MIT等) 元のOSSソフトウェア(MIT) 改変 派生ソフトのライセンスは選べる ソース非公開での配布もできる 制約が少ない
コピーレフトとパーミッシブライセンスの違い
ひよこ ひよこ
コピーレフトってオープンソースとは違うの?
ペンギン先生 ペンギン先生
オープンソースのライセンスにはいろいろな種類があって、コピーレフトはその中でも「改変版を配るときの条件」が強いタイプなんだ。改変して作ったソフトを配布するなら、同じライセンスで、ソースコードも受け取った人に提供しなきゃいけないよ
ひよこ ひよこ
それって何のためにそうなってるの?
ペンギン先生 ペンギン先生
自由なソフトウェアが、改変されたあとに自由でなくなるのを防ぐためだよ。GNUプロジェクトは「プロプライエタリなソフトの開発者は著作権を使って利用者の自由を奪う。私たちは著作権を使って自由を保証する」と説明している。たとえばLinuxカーネルはGPLバージョン2で提供されているから、改良版を配布する人は、改良部分のソースコードも同じ条件で提供することになるんだ
ひよこ ひよこ
じゃあ、改変したら必ずインターネットで公開しなきゃいけないの?
ペンギン先生 ペンギン先生
それはよくある誤解だよ。GPLでは、自分や組織の中だけで使う改変版を一般公開する義務はない。外の人に配布したときに、受け取る人へ対応するソースコードをGPLで提供する条件が生まれるよ。ただしAGPLは別で、改変版をネットワーク経由で使わせる場合にも、その利用者が対応するソースコードを入手できるようにする必要がある。社内向けのサービスでも条文を確認しようね
ひよこ ひよこ
感染性があるって聞いたけど、怖くない?
ペンギン先生 ペンギン先生
GPLのライブラリにリンクしたプログラムを配布する場合、組み合わせた全体にGPLの条件が適用されるんだ。これを俗に「感染性」と呼ぶことがあるよ。一方で、別々のプログラムを同じ媒体にまとめて配るだけ(単なる集積)なら対象にならないし、GPLのエディタやコンパイラを使って書いたコードにもGPLは及ばない。どこまでが1つのプログラムかの判断は難しいことがあるから、製品に組み込むときは会社の法務や専門家に確認しよう
ひよこ ひよこ
リチャード・ストールマンって人が関係してるんだよね?
ペンギン先生 ペンギン先生
そう、GNUプロジェクトを始めた人だよ。1983年9月にGNUプロジェクトを発表して、1984年1月から開発を始めたんだ。コピーレフトという方法を実際のライセンスの形にしたのが、GNUプロジェクトのGNU GPLなんだよ。コピーレフトではないMITライセンス(Expat License)のような、条件のゆるいパーミッシブなライセンスもあるから、使うソフトのライセンスの種類を確認する習慣が大事だね
ペンギン
まとめ:ざっくりこれだけ覚えればOK!
「コピーレフト」って出てきたら「自由に使えるけど、改変版を配るときは同じ条件で配る必要があるライセンスの考え方」と思えればだいたいOK!
📖 おまけ:英語の意味
「Copyleft」 = コピーライト(著作権)をもじった造語
💬 Copyright(著作権)の「right」を、鏡に映した向きの「left」に置き換えた言葉遊びだよ。GNUプロジェクトは、このleftは「残す(leave)」の意味ではなく、rightの反対の向きという意味だと説明しているんだ

参考資料

← 用語集にもどる