7 ms·
You can include BSD licensed code in GPL code, but not the other way around right?
by rubyist5eva 5y ago
You can include BSD licensed code in GPL code, but not the other way around right?
- danudey 5y agoThis is correct. The typical restrictions on BSD code are: 1. If you distribute source code you need to retain the copyright notice, the license conditions, and the disclaimer 2. If you distribute binaries you must include those in the documentation 3. (sometimes) You can't use the contributors to promote your software (e.g. "Powered by the fantastic LibreSSL library!")
- bonetruck 5y agoCorrect.
- JoshTriplett 5y agoBSD-licensed code yes. But LibreSSL and OpenSSL (pre-3.0) are not under a BSD license; they're under a custom license that's GPL-incompatible.
- rubyist5eva 5y agogood to know
- torstenvl 5y agoIncorrect. 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?
- deleted 5y ago[deleted]