-
Notifications
You must be signed in to change notification settings - Fork 2
ソースコードライセンス
本アプリはソースコードを公開していますが、プログラムの動作を完全に再現するために十分なソースコードを公開していません。
別途README.mdで指定された方法に従うことでソースコードをビルド/実行できますが、その動作は不完全なものになり、一部機能が正しく動作しません。これはソースコードの一部を「依存の注入」という考え方を応用して隠蔽しているものであり、オープンソースの精神に反します。本アプリは一部機能を他人の作ったプログラムに依存していますが、その仕様を非公開にすることを義務つけられているためです。(KSC投票プラグイン連携ロジック/JRA-VANの用意したC#ラッパー)また、私のアイデアの一部についても、意図的に非公開にしている部分があります。(タイム偏差値の計算式)
ですが、本アプリは一般的なオープンソースになるべく性格を近づけ、非公開部分を除くすべての部分をこのGitHubにて公開しています。これは、このアプリのほとんどの機能を、ソースコードをビルドすることでどなたでも利用できることを意味します。これらソースコードのライセンスは、GitHubで公開している部分に限りMIT Licenseを適用します。あなたは本アプリのソースコードを自由にフォークし、自分のソフトウェアを作成して頒布するか、またはプロプライエタリとして有償で販売することが可能ですが、ソースコードを改変した場合、ビルド済みバイナリまたはドキュメントに私(KMY/別名義:雪あすか)のクレジットを記載することが義務付けられます。また、本アプリの利用、ソースコードの利用によって発生するいかなる損害も、私は責任を負いません。
また、別途公開している本アプリのビルド済みバイナリには一部の非公開ロジックが含まれていますが、これも仕様を非公開にすること以外は特に義務を課されていないため、どなたでもMITライセンスに従い自由に再頒布することが可能です。これはJV-Link、UmaConn、KSCプラグイン、その他関連ソフトウェアの再頒布を私の責任のもとで許可するものではありません。
本アプリは上記の通り、GitHubにて公開されているソースコードに限りMITライセンスが擬似的に適用されます。ご存知の通り、コンパイル済バイナリのソースコードの一部を隠蔽することはオープンソースの理念とは相容れません。しかし、MITライセンス擬似適用部分においては、下記のライセンスが適用されます。これらのほとんどは私が決めたものではなく、世間一般のMITライセンスに対する理解を分かりやすく言語化したものと考えております。以下と実際のMITライセンスとで表現や内容に競合部分があった場合は、以下の記述が優先されます。
あなたは本アプリのバイナリを自由に逆コンパイル・逆アセンブルして、KmyKeiba.Models.Injection.Private名前空間を除き公開することが可能です。本アプリが利用しているKSC投票プラグイン、JV-Link、UmaConnなどの逆コンパイル・逆アセンブルに関しては、個人利用であれば日本の法律で禁止することは不可能であるものの、それぞれのソフトウェアの利用規約に敬意を払うよう努力することを願います。
あなたは本アプリを改変して公開することができますが、私の名前とともにあなた自身の著作権表記を明記し、私の作ったアプリと区別できることを求めます。例えば、あなたが私のアプリをさらに素晴らしいものにしたとしても、もしそれを私が作ったと偽り、あなた自身のクレジットを表記せずにいるのであれば、ライセンス違反とします。逆にあなたが私のクレジットを記載せず、全てあなたが作ったかのように振る舞うのもライセンス違反となります。私のクレジットは、コンパイル済バイナリのバージョン情報、説明書の表面または第2ページ目など、ユーザーがすぐ見て分かる場所に記載してください。また、本アプリのソースコードやコンパイル済バイナリを頒布する場合は、KMY競馬をフォークしたものであることを、ストアの商品ページまたはあなたが独自に用意した公式サイトの主要な説明文、および説明書の両方に記述しなければいけません。
日本の法律では著作権を放棄することはできませんが、私は本アプリを第三者が自由に複製再頒布することに関して、上のライセンスが守られている限り著作権を行使しません。これは、個人情報収集、銀行のパスワード収集などの公共良俗に反したプログラム、または私のソースコードをほとんどまたは完全に改変しないまま有償で販売する場合であっても、ライセンスによって義務付けられた著作権表記が適切になされている限り原則として著作権を行使しないことを意味します。ただしこれは、著作権の話に及ばない範囲で警察や弁護士などへの相談、利用者への注意喚起など、日本国内の法律や過去判例による社会通念上ソフトウェア製作者に求められる義務を放棄するものではありません。オープンソースを原理主義的に適用すると、善悪にかかわらず特定の利用者の権利を侵害することは不可能ですが、現実的には国内の法律や判例によって多少は制限されることをご了承ください。
私が自身または代理をたててストアに登録した場合を除き、第三者が頒布する一切のソフトウェアのサポートを、私はいかなる場合であっても(頒布者が一切の改変をしていないと主張する場合も含む)放棄する権利を有します。これはユーザーにとっては不利益になることがありますが、開発者による自由な開発と発展を促進するというオープンソースの精神が部分的とはいえ適用されており、本アプリが万が一多くの人々に受容されるようなことがあれば、その発展が最終的にユーザーにとって大きな利益になると考えます。
ただし「KMY競馬」やそれに準じた語句の商標登録など、本アプリのソースコード公開やオープンソースコミュニティの健全な運営に支障をきたす事態が発生した場合は自由に著作権に関する訴訟や申立など法的手続きをとる権利を有します。
あなたは本アプリの改善のためにプルリクエストを送ることができます。それは私の責任において適切に承認し、ソースコードに反映します。なお、プルリクエストを送った時点で、私がMITライセンスを擬似的に適用して公開するソースコードの一部になり、私とこのライセンスのもとで管理されることをあなたはあらかじめ承諾したものとみなします。あなたはあなたが作成しプルリクエストを送信したソースコードを第三者が自由に複製・改変することを拒んではいけません。一度承認されたプルリクエストは半恒久的にgitリポジトリに残留すること、全てのローカルリポジトリの管理は技術的に不可能であることを忘れてはいけません。
それとは別に、上のライセンスに従えば自由にフォークしたものを再頒布することが可能です。それらのソースコードの扱いに関しては、プロプライエタリにすることも可能です。MIT以外のライセンスをつけることも許可されていますが、あなたがJV-LinkやUmaConnを利用する限り、GPL系のライセンスをつけることには慎重になるべきです。重ねて言いますが、上述した著作権表記を適切におこなうことがフォークの前提となります。