microsoft / MixedRealityToolkit-Unity

This repository is for the legacy Mixed Reality Toolkit (MRTK) v2. For the latest version of the MRTK please visit https://github.com/MixedRealityToolkit/MixedRealityToolkit-Unity
https://aka.ms/mrtkdocs
MIT License
6.01k stars 2.12k forks source link

License file placement and top level folder structure are incompatible #374

Closed yoDon closed 7 years ago

yoDon commented 7 years ago

ex-msft here, always had good experiences dealing with LCA on licensing when I was there and I'm optimistic this is easy to resolve...

The repo is designed to look like a Unity project, which is great, but you've placed the License.txt file at the root of the Unity project. That placement means any dev who downloads the project is faced with a Catch-22 of unacceptable situations in which they either leave the license file where it is (respecting your wishes) at the cost of unintentionally declaring that their entire project MIT licenses because there's an MIT license block at the top of their project OR deleting the license block so their project's non-MIT status is correctly reflected at the cost of not having a copy of the license terms for your MIT licensed code inside their project (and hence being out of compliance with your license). Obviously neither scenario is OK.

Suggestion: (1) Move the current contents of the HoloToolkit-Unity folder into a subdirectory. (2) Place a License.txt file at the top of the repo (above the subdirectory) demonstrating that everything below is MIT licensed and making it easy for visitors to find the license (3) (Optional) Move the files currently in Assets/ to Assets/HoloToolkit-Unity (or similar) so all the HoloToolkit files are in one place once they get imported into a user's project (this isn't a legal issue, it's just a polite best practice to avoid polluting the top of your user's Asset folder with tons of files) (4) Copy the License.txt file into the new Assets/HoloToolkit-Unity folder (or whatever you call it) to make sure there is a properly-located copy of the license file on the user's machine after they import your code into their project (5) Repeat steps (3) and (4) for the External/ folder (6) please don't repeat steps (3) and (4) for the ProjectSettings/ folder, as that folder contains tons of stock Unity files that are user-generated and that would break if you grouped the contents into a sub folder.

StephenHodgson commented 7 years ago

Related to https://github.com/Microsoft/HoloToolkit-Unity/issues/133

StephenHodgson commented 7 years ago

The License at the top level is fine because no one should be basing their entire project off of the master, but instead be importing the unity asset package. Adding a duplicate license file at the root of the HoloToolkit folder should fix this issue and ensure there's a license file when users import the asset package.