Licenseの種類,多すぎ!
私のようにバリバリのプログラマーではない人は一度は通る道
ライセンス何にすればええねん(唐突な関西弁)
ちょっとしたプログラムをGitに公開するときとか,プログラムを配布するときとか。
悩みますよね。
というわけで今回はプログラミング初心者私と一緒によく使うOSLについて考えてみましょう。
そもそもOpen Source License(OSL)とは?
まずこれを理解しないと後々苦しむことになります(多分)
Wikipediaが言うには
ザックリまとめると
ということです。
オープンソースが分からない方はこちらのサイトを参照してください。
分かりやすいです。
コピーレフトとは
というわけです。
他に言う事はありませんが知っておくとちょっと楽です。
色々なライセンス
MIT License
有名なライセンスの中でもそこそこ自由度の高いライセンスです。
このライセンスの特徴を一言でいうと
「何してもいいけどこのライセンス文の表示と著作権表示は絶対してね!」
というライセンスです。
非コピーレフトなのでオープンソース化する必要はありません。
「自由に使ってほしい!」っていう場合にはオススメかも…?
Apache License 2.0
こちらも結構有名なライセンスです。
MIT Licenseと似ていますがこのライセンスの特徴を一言でいうと
「自由に使ってもいいけど商標(ロゴとか)は改変しないでね!」
というライセンスです。
こちらも非コピーレフトなのでオープンソース化する必要はありません。
このライセンスは一言で言う事が難しいのでもう少し詳しく解説します。
Apache License 2.0はMIT Licenseに加えて
が決められています。
変更点の明記は
Apache-2.0が付いたものを改変するときは改変した場所を書いといてね!
ということです。
「自由に使ってほしいけどMITじゃちょっと軽すぎるなぁ…」
というときにオススメかも…?
GNU General Public License v3.0
こちらのライセンスは理解に苦しむタイプのライセンスです。
このライセンスの大きな特徴は
「ライセンスの継承」
です。
GPL v3.0が付いたものを改変して再頒布する場合,改変したものにはGPL v3.0を付けなければなりません。
また,GPL v3.0が付いているものを使ったものもGPL v3.0を付けなければなりません。
また,コピーレフトなのでオープンソース化する必要があります。
有名なソフトウェアはGPLがついてるイメージですね。
GNU Lesser General Public License
このライセンスはGPLの「GPLが付いたものを使ったものはGPLにしないといけない」という制限を若干緩和したものです。
GPLは何でもかんでも使えば継承でしたが,LGPLは「組み込んだ場合」は継承しないといけません。呼び出すだけならLGPLにする必要はありません。
ライブラリ系にLGPLは向いています。
SIL Open Font License
このライセンスはフォントに付けることができるライセンスです。
源ノ角ゴシックとかもSILです。
このライセンスの特徴を一言で言うと
「自由に使ってもいいけど人に渡すときや組み込むときはこのライセンスも一緒に記載してね。あと派生するときは予約フォント名使わないでね」
というライセンスです。
予約フォント名は大体著作権が明記されたファイルに書いてあります。
源ノ角ゴシックのライセンスにはこう書いてあります
あとQuicksandはこう。
フォントを公開したい人は大体これ使っとけばok
Berkeley Software Distribution License 2-clause
簡単に言えば「何してもいい」っていうライセンスです。
これを見てわかるように「自己責任」と「ライセンスの表示」さえ守っとけば自由に使ってもいいライセンスです。
つまり,何が起きてもいい覚悟でこのライセンスを付けなければいけません。
「MITよりもっと自由に!」っていうものにはオススメかも…?
まとめ
個人的にはメインApacheで小さいものはMITという風に使い分けています。
Creative Commomsというものもありますが公式がOSSには向いてないよ!と言っているのでOSL選べばいいと思います。
正直OSLは個人の裁量なので…
しかし,ApacheとMITは十分使えるライセンスなのでしっかり使っていきましょう。
報告
間違いや,追記してほしいことがあればコメントでお知らせください。
書き加えてほしいライセンスがあればコメントでお知らせください。