5 ms·
You're pulling at straws here. If I'm writing a program under GPL, and I want to incorporate a component with a BSD license, I can do that and continue to lice
by bscphil 5y ago
You're pulling at straws here.
If I'm writing a program under GPL, and I want to incorporate a component with a BSD license, I can do that and continue to license the entire program to my users under the GPL.
If I'm writing a program under BSD, and I want to incorporate a component with a GPL license, I can't do that and continue to license the entire program to my users under the BSD. That's the difference, and surely that's what the OP is referring to.
Suppose someone comes along and finds my program, and wants to modify it and release it without providing the source. Before, when I could license the whole program as BSD, they could do that. After I incorporated a single file's worth of GPL code, they can't do that. Because it's no longer possible for me to license my program as BSD.
Also, note that there's absolutely no guarantee that users can "take that library from your source repository and use it for their own purposes without abiding by the GPL". I am under no obligation to provide a BSD-licensed copy of the original library. If I make modifications to the library before I push it to my repository, I do still have to keep the copyright notice intact, but I am not providing anyone with a BSD library. My modified version of it is only GPL.
- torstenvl 5y agoYou are laboring under false beliefs. It is common for software folks to think that they are experts in the law. They are not.
- pessimizer 5y agoAs far as I can tell, you're saying that if a piece of GPL software includes unchanged BSD code, anyone can download that unchanged BSD code from the repository for the GPL'd piece of software and use it under the BSD license. This is not a situation that anyone is discussing. What is being said is that I can take a piece of BSD code, modify it as I see fit, and relicense the assemblage as GPL (or as my personal property for that matter) as long as I include the BSD license and acknowledgements when I redistribute it. I cannot take a piece of GPL code, modify it as I see fit, and relicense it as BSD. If you disagree with this, explain why, but don't bring up some situation that is as vanishingly rare as to possibly have never happened. If you're desperate for a piece of BSD code, and the only place to get it is within the repo of a GPLed piece of software that includes it untouched, nobody is going to claim that code becomes GPLed from being distributed alongside GPLed software. But if I go through that code and add the prefix "GPLisbetter-" to every variable name, can you use it under BSD?
- torstenvl 5y ago> This is not a situation that anyone is discussing. It's exactly the situation that was articulated. Or at least the most plausible version of what was said. > What is being said is that I can take a piece of BSD code, modify it as I see fit, and relicense the assemblage as GPL That is probably false. The BSD code itself cannot be relicensed, since nothing grants you that permission. Courts have not expanded the idea of compilation copyright to software linking, so far as I know, so that is an open question. However, even if the "whole assemblage" had a compilation copyright separate and apart from its independent components, it would not change the fact that the BSD-licensed component is BSD-licensed. > if I go through that code and add the prefix "GPLisbetter-" to every variable name, can you use it under BSD? Yes. We call this kind of thought process "jailhouse lawyering" and it is almost universally disastrous for the proponent. Courts readily see through arrogant people's attempts to outsmart their own common sense. CTRL+H will not provide you the magical ability to relicense a copyrighted work you do not own.
- bscphil 5y ago> it would not change the fact that the BSD-licensed component is BSD-licensed. That's correct, as far as I know. But it completely misses the point. I'm not required under the BSD to provide anyone with access to the original, BSD licensed code. That's the whole reason people can distribute modified closed source BSD code as they see fit. If I modify a BSD licensed source file and include it in my program, I am free to license the whole thing to anyone as GPL. This does not "change" the licensing of the original component - but I am not providing the original component. Of course, most of the interest is in going the other direction. If I include a GPL licensed source file in my program, the entire program becomes GPL even if I don't want it to be. Unless the recipient of the software painstakingly removes all GPL components, they must abide by the GPL's requirements for the whole of the software.
- torstenvl 5y ago> But it completely misses the point. No. It does not. As demonstrated by your continued misunderstanding. > I'm not required under the BSD to provide anyone with access to the original, BSD licensed code. True. But I don't think that's relevant to this discussion, as nobody has claimed you had to provide such access. > If I modify a BSD licensed source file and include it in my program, I am free to license the whole thing to anyone as GPL. No, you are not. Nothing in copyright law or the BSD license allows you to do so (again, probably, unless a court in the future expands the idea of a "compilation" to software). > This does not "change" the licensing of the original component - but I am not providing the original component. Your modified file would still have a big ol' BSD license attached to it, unless you violate the BSD license by removing it. What exactly is your plan for convincing a judge that you really licensed that file under the GPL despite publishing it with a BSD license statement? > If I include a GPL licensed source file in my program, the entire program becomes GPL even if I don't want it to be. Um. No. It's hard to figure out what confusion of ideas could possibly lead someone to this conclusion. > Unless the recipient of the software painstakingly removes all GPL components, they must abide by the GPL's requirements for the whole of the software. Abjectly false. There is no requirement to abide by the GPL for a work that is licensed under the BSD license, and there is also no possibility of changing it so that such a component is not BSD-licensed.
- caf 5y agoIf I'm writing a program under BSD, and I want to incorporate a component with a GPL license, I can't do that and continue to license the entire program to my users under the BSD. That's the difference, and surely that's what the OP is referring to. You can continue to offer your work to users under a BSD license, you just also have to offer the complete work to them under the GPL as well if they want - ie. your work can be "Dual BSD/GPL" license. Obviously this doesn't make other authors GPL bits you've used BSD - if someone wants to make use of rights reserved under copyright law in respect to those parts, they still need a valid license from the original author who is presumably only offering GPL.
- bscphil 5y ago> you just also have to offer the complete work to them under the GPL as well The "as well" is where your comment introduces a slight inaccuracy, because it suggests that you could offer the whole work under BSD if you wanted to. You can not. The whole reason that people who prefer permissive licenses do not use GPL code is that they want to be able to license the whole work under a permissive license, in order to be able to provide their licensees with additional freedoms.
- caf 5y agoBy "your work" I mean "everything you have authored". - The parts you've written can continue to be available under the permissive license (as can any parts you've copied from elsewhere under a permissive license); - The GPL code you didn't write can't be re-licensed by you and continues to be available under the GPL; - The complete derived work has to be made available by you under the terms of the GPL. (By "as well" I mean "as well as offering the code you wrote under whatever other license you would like").
- dpark 5y ago> If I'm writing a program under GPL, and I want to incorporate a component with a BSD license, I can do that and continue to license the entire program to my users under the GPL. If “the entire program” includes the BSD component, then this is not correct. You cannot change the license for a work if you do not hold the copyright for that work. Your license applies only to the code you hold the copyright to. I agree with torstenvl here. This is not a meaningless distinction. You can distribute BSD components with your GPL software but they retain their own license and you must abide by the license (hence all the attribution notes you’ll find in software that uses others’ components).