cseed / knotkit

knot theory and computational algebra software
35 stars 7 forks source link

Please clarify the license #2

Open miguelmarco opened 7 years ago

miguelmarco commented 7 years ago

I would be interested in adapting this software as a library to be called from external programs (in particular, I am rhinking about Sagemath). In order to do so, I would need to be sure about the license of the software.

I have found no license or copyright file. Some header files state that they are under GPLv3+, but it is not entirely clear wether this implies that the whole bundle should be considered a derivative work of GPL code.

Could you please clarify this point? Adding a License or copyright file would be great.

Best,

Miguel Marco

martinvahi commented 6 years ago

Same question from me.

batson commented 6 years ago

We'd be happy to license this properly. What license would make this most useful to each of you?

@cseed what licenses would be possible (given our dependencies)?

miguelmarco commented 6 years ago

From my part, GPLv3 or any other more permissive license (which basically includes every usual free/open source license) would be ok.

martinvahi commented 6 years ago

I guess, what is "proper", can be a tough/complex question, but my use case scenario is that I work as a freelance software developer and to keep project price and delivery time to at least somewhat bearable levels, REUSE IS MANDATORY. So my deliverables to my clients consist of 2 parts: "business logic" specific parts for what the paying client owns the copyright and an open source part that does not limit the client from using the ordered project as a whole as a closed source project. Hence my own open source components tend to be under BSD, MIT and "public domain", but for me the Apache and Mozilla licenses will also do. The GNU library license or some similar scheme, where it's OK to use the open source library in a closed source project as long as only modifications to the open source library have to be contributed back, is also OK.

Basically, I aim to make my own creations that are not client project "business logic" specific open source so that they can be used in closed source projects without restrictions (by me and by other freelancers, who care to download my work) and to do that I need the dependencies of my components to also allow closed source use without any license costs and without any modification restrictions other than the requirement to contribute back the modifications.

That being said, I do believe that lawyers make some greater distinctions between the Mozilla license, Apache license and the BSD license. My approach is that the difference between BSD license and the MIT license is that the BSD license requires "academic style" citing and forbids trolls from decorating their crappy projects with the names/trademarks of proper developers, whereas the MIT license just says that do whatever You want as long as we are not responsible for any losses that come from the use of our creations.

Of course, with the exception of the somewhat derogatory language, the http://www.wtfpl.net/ (archival copy: https://archive.is/T5Io8 ) is also fine by me. Thank You for reading my comment :-)

martinvahi commented 6 years ago

I forgot to add that the licenses that I find usable do not contain any restrictions on the use cases of the projects that the licensed component will be part of. For example, one 3D engine once had a license that was "free as free beer", even for closed source projects, offered open source, but the license explicitly restricted the use of the 3D engine to games, forbidding the use of the 3D engine at simulations and military software("serious games"). Another failing example is/was one project that explicitly allowed the use of the open source software, without license fees, in commercial products, EXCEPT database engines, even if the database engines themselves were open source.

Those 2 examples illustrate, how to fail to meet my requirements. Usually academics come up with such nonsense. On one hand they want to obtain fame, want people to read and cite their scientific papers, but at the same time they restrict people from freely using the software that would make their scientific papers WORTH STUDYING, RELEVANT IN PRACTICE. (Scientific paper as documentation of the theory that the software component uses.)