5 ms·
Incorrect. You may distribute BSD-licensed code alongside GPL code, and you can release your modifications to a BSD-licensed work under the GPL, but there is no
by torstenvl 5y ago
Incorrect. You may distribute BSD-licensed code alongside GPL code, and you can release your modifications to a BSD-licensed work under the GPL, but there is no possibility of subsuming the BSD-licensed code in the GPL-licensed code. Any attempt to do so would constitute copyright infringement against the original authors.
An example may be illustrative. If your GPL project uses a BSD-licensed single-header-file library, and you distribute that library's source with your source, downstream users are free to take that library from your source repository and use it for their own purposes without abiding by the GPL. Nor may you change the license and copyright notice in the header file in order to claim that the library is GPL, because if you do so you will be violating the conditions of the BSD license, leaving you with no right to use or distribute the software at all.
- bscphil 5y agoYou'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.
- 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).