I want to license a project made by me. MIT License would be sufficient, but I want any future work to be linked back to the sourcecode. Similar to the MPL where you always have to link back to the original sourcecode of any compiled or non compiled code you use.

Can I just extend the MIT License with one or two sentences or is there a better alternative?

  • 1
    If someone takes your work, modifies and redistributes it, do you want them to have to link back to the source of the modified work, or always back to your original work? – MadHatter May 30 '20 at 12:51
  • @MadHatter that's actually a good question. I mean I am propably overthinking this but. If there was a chain of modified redistributions it should chain back. I hope you understand what I mean – Leslie May 30 '20 at 12:53
  • 1
    I do, but I don't think the MPL requires that. I don't know of any licence that requires that, not least because a lot of it's outside the control of any given distributor. – MadHatter May 30 '20 at 12:59
  • What do you mean by "link back"? Do you mean like a hyperlink on a web page? What if the application is not a Web application? – Brandin Jun 5 '20 at 10:42

There is no free licence that requires a redistributor to link back through all previous versions, or to make them available on demand. Nor is there likely to be, because it would fail what the Debian folks call the Desert Island test: a group working on a derivative of a piece of free software in isolation can't meet the requirement. If the requirement is to link, and one of the earlier repositories moves, how are they, without internet, to know? And if the requirement is to distribute, how are they to get hold of (say) a library that they are later told was once part of what they're currently working on but was removed before they made a copy and went to the island?

So if we step back to a licence that requires a link to the source of the work as-distributed, I would urge you not to start adding extra clauses to existing licences. The community refers to these as crayon licences, and there is ample reason to think them a bad idea.

I don't know why you've avoided the idea of a strong copyleft licence. Perhaps it's the requirement that derivatives be bound by the same licence? Unfortunately, for what you want, that's necessary: without it, I can use your code and not provide source to my users, by getting a friend to take a copy of your code, and distribute it to me without the additional clause, which MIT+clause doesn't forbid.

So it seems to me that you might as well use the GPL. Version 3 requires that the source be linked to when the distribution itself is over a network (s6d), and it requires that derivatives be published under the same terms (s5c); version 2 has similar language. You could also use the MPL, since you mention it, but it makes your code less-useful for reuse, because the requirements for combining it with GPL code are a bit baroque.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.