ライセンスファイルを作成するCLIツール「mklicense」



ライセンスファイルを発行するコマンドラインツール「mklicense」の紹介です。

mklicenseで出来ること

- コマンド一発でライセンス情報を記載したファイルが作成出来る

* 対応ライセンス : ( MIT, Apache 2.0, MPL 2.0, GNU LGPL 3.0, GNU GPL 3.0, GNU AGPL 3.0 )

* mklicense


mklicenseのインストール

 mklicense は node.js で作られたコマンドラインツールなので、' npm ' コマンドを使ってインストールします。

# npmコマンドで mklicense をインストール
npm i -g mklicense


mklicenseの使い方

 mklicenseのは ターミナル上で ' mklicense ' コマンドを使うと起動し、対話式な操作でライセンスファイルが作成できます。また、ライセンスファイルはコマンドを実行したカレントディレクトリ上に作成されます。
( node.js の '4.*', '5.*' 系のバージョンで テストされていますが、' 8.2.1 ' でも問題なく動作しました )

1. mklicenseを実行 ( ライセンスを選択 )

2. ライセンスの開始年の選択 ( MITライセンス を選択しました )

3. 開発者の名前を入力 (  これでディレクトリ上に " LICENCE " というファイルが作成されます ) 

作成されたライセンスファイル

* 作成可能なライセンスの説明 ( wikipediaより抜粋 )

MIT ライセンス

 このソフトウェアを誰でも無償で無制限に扱って良い。ただし、著作権表示および本許諾表示をソフトウェアのすべての複製または重要な部分に記載しなければならない。作者または著作権者は、ソフトウェアに関してなんら責任を負わない。

* MITライセンスは " jQuery ",  " .NET Core " , " Ruby on Rails " などで 採用されています

Apache 2.0

他のフリーソフトウェア向けライセンスと同様、Apache Licenseではユーザーがそのソフトウェアの使用や頒布、修正、派生版の頒布をすることを制限しない。

 Apache Licenseは、頒布される二次的著作物が同じライセンスで提供されたり、フリーソフトウエア、オープンソースソフトウェアとして頒布されることを要求しない。要求するのは、ユーザーがそのソフトウェアにApache Licenseのコードが使われていることを知らせる文言を入れることだけである。

* Apache 2.0 ライセンスは " Android ", " Apache ", " Swift " などで採用されています。

MPL 2.0 ( Mozilla Public License )

 特許を含まない場合、MPLでライセンスされたコードの利用、改変、再頒布を自由に行うことができる。特許で保護されたコードの場合には、利用、譲渡、販売は可能であるが改変は特別な許可がない限り認められない。また、MPLでは被許諾者に対して貢献者の商標に関する権利は何ら付与されない。

* MPL ライセンスは " Firefox " や " Mozilla Thunderbird " で採用されています。

GNU LGPL 3.0

 LGPLはLGPLに従う限り、プログラム自身にコピーレフトの「保護」を与えるが、単にLGPLで保護されたプログラムとリンクする、他のソフトウェアへこれら「制限」を適用することはない。しかしながら、当該ソフトウェアへ影響を与えるある種のその他の「制限」は存在する。

GNU GPL 3.0

1 .プログラムの実行
2. プログラムの動作を調べ、それを改変すること
3. 複製物の再頒布
4. プログラムを改良し、改良を公衆にリリースする権利

* GNU GPL 3.0 は " GIMP " や " Bash " で採用されています。

GNU AGPL 3.0

 GNU GPLにコンピュータネットワーク上でのソフトウェアの使用についての条項を加えたライセンス。その追加条項では、AGPLライセンスの著作物のネットワークユーザーに対して、完全なソースコードを提供可能にしておくことを要求する。

* GNU AGPL 3.0 は " MongoDB " で採用されています。


Summary

以上が mklicense の紹介でした。npm や pip, composerなど ライブラリを オープンソースで公開する時に使うと便利そうです。特に GitHub上にライブラリを公開する人にはオススメです。

GitHub : cezaraugusto/mklicense

 

この記事のカテゴリ
プログラミング

この記事のタグ