arq5x / bedtools2

bedtools - the swiss army knife for genome arithmetic
MIT License
940 stars 287 forks source link

How to incorporate part of bedtools2 (under GPLv2) into a project under GPLv3+? #10

Closed timflutre closed 5 years ago

timflutre commented 10 years ago

Hello,

I am developing a C++ package doing eQTL detection and I licensed it under GPLv3+ (the "+" meaning "or any later version"). By looking at the README.md or the source code (say "bedFile.h"), bedtools is licensed under GPLv2. Thus, I can't use code from bedtools2 into my package, see here.

Maybe you could switch to GPLv3+. But I can understand that you want to keep GPLv2, as switching can disrupt things for other developers. However, would it be possible to unambiguously specify in bedtools2 that you allow usage of the code under GPLv2 as well as later versions? That is, to switch to GPLv2+?

In fact, this is suggested in the LICENSE file itself, in section 9. Practically, this would require adding "or any later version" in the README.md file (and also in the header of the source files, to avoid confusion).

Thanks, Tim

arq5x commented 10 years ago

We have been considering a wholesale switch to MIT license. Would this be sufficient?

timflutre commented 10 years ago

From what I know (by reading over the internet), there is no such thing as the "MIT license", but I guess you're referring to the X.11 license. In such a case, yes, it would be sufficient. However, the link above mentions other things. In the case of a large project such as bedtools, it makes some sense to use a copyleft license, such as GPL2+ as I proposed initially, or GPL3+ (see this letter from Stallman for people working at a University). In the case where you don't want that, then the Free Software Foundation recommends the Apache License 2.0, but it is only compatible with the GPL3, not with GPL2. Yet another option is dual licensing, but it seems to be a bit weird in the case of MIT/X.11 and GPL, as explained here. Anyway, I don't know much about all this and my opinion may not be worth a lot, but I would be glad to know what made you decide in the end.

arq5x commented 10 years ago

I was referring to this: http://opensource.org/licenses/MIT

timflutre commented 10 years ago

Yes, that would do. But then, why not GPL2+ or GPL3+?

diekhans commented 6 years ago

Has any more thought been put into changing the license or dual licensing? Leaving politics out of it, GPL is very problematic for those of us work in an environment that is not strictly GPL. This very much impacts those of us in academic research groups who have to deal with software with multiple open source licenses. Those who actually believe one should honor license are stuck with trying to figure out a project is derivative. Many just ignore the license and release software that could be seen as `derived' from GPL-ed code under other licenses.

It seems many developers believe GPL forces commercial entities to `give back' to the community. This is true when the commercial entity is in the business of selling software. However, biotechs that take open source software, modify it, and then make tons of money off of some drug they develop are not required to give anything back.

It would make the life of many of us in open source bioinformatics a lot easier if great package like bedtools, especially those with libraries, had non-viral license. While Apache seems to become very popular, even LGPL is fine, since the goal is to do research and make source available, not fight licensing battles.

arq5x commented 6 years ago

Planning to move to MIT this summer.

awz commented 5 years ago

Were you ever able to revisit this? Apache 2 provides more certainty around software patents (which is appreciated by many.) MIT would address incompatibility with more licenses without the patent certainty, unfortunately.

arq5x commented 5 years ago

MIT license now.