I was thinking a lot about software licensing lately, because I would like to do some coding. I’m not an expert in all those licenses, so I came up with my own idea, and before I will put in on paper, I would like to make sure that I didn’t reinvent a wheel, so maybe I would be able to use something that exists.
Main idea behind my license is to guarantee freedom of use the software, but not “freedom to” (positive) (e.g. freedom to having source code), but “freedom from” (negative) (strictly from legal actions against you). It would be “viral” copyleft license.
You would be able to without fear do everything you want with the software (and binaries e.g. reverse engineering), as long as You will include information about author and/or authors, and all derivative works will be distributed with the same license. I’m not interested in anything that would restrict a freedom of company to do something like “tivoization”. I’m just trying to accomplish something that would block any legal actions of user and developer, targeted against each other, with the exception of basic attribution.
Does exist something like that?
5
This all uppercase part of the BSD license is pretty much what you are saying. Full text here:
http://opensource.org/licenses/bsd-license.php
THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS “AS IS” AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
4
I don’t think it’s legally possible for a license to prevent any legal action against you. However, almost any free/open source license will include a warranty disclaimer that will prevent you from being held responsible for what is done with your software, which is about the most a license can do.
Other than that what you are describing sounds a lot like either a BSD-style license or GPLv2 depending on what you mean by “all derivative works will be distributed with the same license”.
1
Well, if you do not care what is done with your product provided that you are properly attributed for your part in it, maybe you could go with a Creative Commons: Attribution license.
It is not designed for software, but for a more generic concept of “work”. However, according to your question you do not care about source redistribution, or any other restriction other than you being properly attributed. CC:By would give you that.
The fact that it is not a software license per se is what I think makes it suit your needs best. Any software license will contain software-specific restrictions, and you seem not to want any of those.
GPL does exactly what you’re asking, with the exception that it mandates source distribution. Source distribution, with GPL, is necessary to achieve the “freedom to” part: without sources, users cannot freely modify the software, which is the primary goal of the GPL.
Alternatively, BSD-style licenses (including other liberal licenses such as MIT, Apache, Mozilla, etc.) also do exactly what you want, except for the viral part. They basically instate the “freedom from” part (i.e., the user can do anything with the software they want, except sue the author and claim that it’s their own, and the author can’t restrict the user any more than that).
Both licenses allow selling the software for money, putting DRM on it (although that’s pointless, since the source is freely available), reverse-engineering binaries, etc.
A halfway solution like you propose is problematic, and not very useful either: if you make it viral, then that’s already a large enough obstacle for many corporate users, and whether the modified source has to be published or not is relatively meaningless (more so if you explicitly allow reverse engineering); at the same time, you miss out on the actual benefit of a GPL-like license, namely that it encourages users to publish their changes so that they can be merged upstream.
Considering all this, you should think very hard whether the world needs yet another software license; most likely, it does not. There’s a whole zoo of both viral and non-viral licenses, and some of them have even been held up in court.
TL;DR: A license like you propose has no benefits over either BSD or GPL; decide for one of them and live with the downsides.
1
That sounds just like GPL to me but for some reason you don’t want to give away the source code. As far as I can see you don’t technically have to give away the source code under GPL however there isn’t really any reason not to do so when you say you want the users to be able to do anything they want with their program and that you want a copy-left licence.
5