Question

So let’s say I make a script/small app that has a ton of my own code, and only a small section of it is comprised of a utility from someone else (let’s say a simple operation like sending files to the trash, or sending a notification), which uses a license, like MIT.

Now, I want my script/app to be public domain (or MIT licensed, let’s take two examples).

  1. How do I make the distinction for this in my code? How do I exactly explain “this part of the code is encumbered by this license, and this other part is my license”?
  2. Every copy of it I distribute needs to include the license? That seems really idiotic/cumbersome, having to pass a dumb text file around.
  3. Do I then have to include both files (theirs and mine)?

Number 3 is my biggest doubt, how do I reliably and clearly point each portion of the code to each specific license? I won’t go on a rant about this, but it is honestly the most stressful part of programming, to me, can’t we just happily share code amongst peers? In the examples above, none of those apps are “mission critical”, but they are nice additions, and not including them because of the confusion/limitations it causes is a real shame.

Was it helpful?

Solution

In the example you give, the MIT license, it says

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

So, if your software contains theirs then "The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software".

That's all there is to it.

It's a good idea to put the licensed software in it's own directory, along with the license. Your main license files should highlight which parts are yours and which have another license.

The main directory where you hold documents such as the license (maybe the root directory of the project, or a Documentation directory), will contain files such as README.TXT or LICENSE.TXT. One of those should contain a section something like

This software includes third party open source software components: Foo, Bar, and Whatsit. Each of these software components have their own license. Please see ./Foo/License.txt, ./Bar/License.txt, and ./Whatsit/License.txt.

The main thing is to make clear that those parts have their own license, and since open source products nearly always require that the source must be available, provide a link to the source project, and/or the source itself.

Just make sure that anyone who looks can see that you are complying with the licenses.

Licensed under: CC-BY-SA with attribution
scroll top