digitalmars.D - copyright - are version(GPL) libs acceptable?
- Adam D. Ruppe (18/18) Jun 08 2011 Thinking about third party libraries, some useful libs are under
- Daniel Gibson (20/45) Jun 08 2011 Dunno.. probably it's ok as long as no binaries are redistributed.
- Daniel Gibson (17/30) Jun 08 2011 Hmm this could be misunderstood. I meant: If you compile the GPL stuff
- Adam Ruppe (2/3) Jun 09 2011 That's all I had in mind - it's just meant to reduce the barrier
- Daniel Gibson (10/14) Jun 09 2011 Ah ok, I thought you wanted to bundle the libs themselves.
- David Nadlinger (3/5) Jun 08 2011 Just write a nice package manager for D? ;)
- Adam Ruppe (5/6) Jun 09 2011 I already did! (a little 100 line program based on the same idea
- Kagamin (2/7) Jun 08 2011 GPL doesn't define the notion of derivation and leaves its interpretatio...
Thinking about third party libraries, some useful libs are under licenses like the GPL. I'm usually among those who reject them out of hand for Phobos, since tainting it's copyright is not acceptable. But, suppose we wrapped all that in a version(GPL):. If the end user wants to use that stuff, he has to say dmd myapp.d -version=GPL Thus he's the one doing the combining. Yes, dmd.zip includes the GPL'd header file, but it isn't compiled into Phobos except by the end user. (then again, does the gpl then viral it's way into dmd.zip as a whole? I wouldn't consider it a derivative work but I'm no lawyer.) I've seen other apps do this kind of thing to avoid their code from being GPL. If the user does the final linking, it seems ok. Would it work for D? I'm looking for easy ways to expand the newbie sense of "batteries included" while leveraging the C interface... the biggest hurdle to that I believe to be copyright, and if that's explicit on the user end, I *think* we'd be in the clear.
Jun 08 2011
Am 09.06.2011 05:04, schrieb Adam D. Ruppe:Thinking about third party libraries, some useful libs are under licenses like the GPL. I'm usually among those who reject them out of hand for Phobos, since tainting it's copyright is not acceptable. But, suppose we wrapped all that in a version(GPL):. If the end user wants to use that stuff, he has to say dmd myapp.d -version=GPL Thus he's the one doing the combining. Yes, dmd.zip includes the GPL'd header file, but it isn't compiled into Phobos except by the end user. (then again, does the gpl then viral it's way into dmd.zip as a whole? I wouldn't consider it a derivative work but I'm no lawyer.)I don't think so.I've seen other apps do this kind of thing to avoid their code from being GPL. If the user does the final linking, it seems ok.Dunno.. probably it's ok as long as no binaries are redistributed. I guess in other cases it's more like "if you compile the GPL stuff in the whole code is implicitly GPL". But note that GPL != LGPL and linking (shared) LGPL libraries doesn't go viral on the program that links them. Fortunately most libraries use LGPL and not "normal" GPL.Would it work for D? I'm looking for easy ways to expand the newbie sense of "batteries included" while leveraging the C interface... the biggest hurdle to that I believe to be copyright, and if that's explicit on the user end, I *think* we'd be in the clear.Besides legal problems I think including a bunch of 3rd party libs causes some maintaining overhead.. imagine one of the included libs has a critical security vulnerability - you'd have to release an updated dmd distribution.. Maybe(!) it's better to just supply interfaces (which would also prevent legal problems because it's questionable if you can even copyright headers and D ports of them shouldn't be a problem at all) and let the user provide the libraries. On Linux this probably is relatively painless (e.g. let the deb package suggest/recommend the appropriate libs), but I guess on Windows it's not as painless, because the user would have to find and install the libs himself. Dunno about OSX.
Jun 08 2011
Am 09.06.2011 05:12, schrieb Daniel Gibson:Am 09.06.2011 05:04, schrieb Adam D. Ruppe:Hmm this could be misunderstood. I meant: If you compile the GPL stuff in (or link a GPL, *not* LGPL, lib), you have to redistribute the binary under GPL terms, i.e. you need to provide the source etc. But it doesn't mean that you have to change the license of the other source files to GPL - this may in fact be illegal if you don't own the copyright, but someone else released them under BSD license or something. So if your rip the GPL stuff out afterwards you should still be able to distribute the rest of the code unter whatever license you (or the original author) chose before (like boost for Phobos, BSD license or whatever). This implies that the rest of the code uses a license that's compatible to the GPL - some licenses, like CDDL, are not, even though they're free software licenses. But I'm neither an expert on this nor a lawyer, this is just what I've seen being done in software or read about in articles about licensing issues.I've seen other apps do this kind of thing to avoid their code from being GPL. If the user does the final linking, it seems ok.Dunno.. probably it's ok as long as no binaries are redistributed. I guess in other cases it's more like "if you compile the GPL stuff in the whole code is implicitly GPL".But note that GPL != LGPL and linking (shared) LGPL libraries doesn't go viral on the program that links them. Fortunately most libraries use LGPL and not "normal" GPL.
Jun 08 2011
Maybe(!) it's better to just supply interfacesThat's all I had in mind - it's just meant to reduce the barrier to entry a little.
Jun 09 2011
Am 09.06.2011 15:03, schrieb Adam Ruppe:Ah ok, I thought you wanted to bundle the libs themselves. Just providing the interfaces should be fine, I think - probably even without version(GPL) - because 1. AFAIK the "threshold of originiality" for a Copyright isn't met with just headers/the interfaces (at least in Germany) 2. We wouldn't even use their own headers but newly-written D interfaces that are equivalent to them. Cheers, - DanielMaybe(!) it's better to just supply interfacesThat's all I had in mind - it's just meant to reduce the barrier to entry a little.
Jun 09 2011
On 6/9/11 5:04 AM, Adam D. Ruppe wrote:Would it work for D? I'm looking for easy ways to expand the newbie sense of "batteries included" while leveraging the C interface...Just write a nice package manager for D? ;) David
Jun 08 2011
David Nadlinger wrote:Just write a nice package manager for D? ;)I already did! (a little 100 line program based on the same idea as rdmd, but adding automatic http downloads for missing imports) It does everything I'd want, but not enough for most other people, so I'm looking for a simple step for them.
Jun 09 2011
Adam D. Ruppe Wrote:Thus he's the one doing the combining. Yes, dmd.zip includes the GPL'd header file, but it isn't compiled into Phobos except by the end user. (then again, does the gpl then viral it's way into dmd.zip as a whole? I wouldn't consider it a derivative work but I'm no lawyer.)GPL doesn't define the notion of derivation and leaves its interpretation to the lawyer. Though, non-viral derivations are allowed, e.g. if phobos and libmysql are different packages just put into one archive, it's ok. If it's not ok and Oracle asks you to remove the library, it can be easily fixed by removing libmysql because (and if) phobos doesn't depend on it. So generally there's no problem if they're different packages.
Jun 08 2011