License World: Understanding BSD Licenses

    Recently, I wrote an article The World of Licenses: Understanding the GNU GPL , in which I tried to summarize the basic information about the GPL, briefly talk about the history of the license, its versions and the compatibility of other licenses with the GPL. In the comments to the article, several questions arose and, to answer some of them, I made a partial translation of the official GPL FAQ.

    As often happens, the first article became the cause of lengthy debate, the essence of which boiled down to one question: "what is better (for people, programs, the world, the future) GPL or BSD licenses?". In my opinion, this debate is akin to the question “from which end to break an egg?” And does not have one definite answer. The use of a specific license is everyone’s business and their diversity is only a positive factor, which gives developers (and authors) more freedom and opportunity to distribute their work.

    In this article I will try to consider the second side of the disputes - BSD licenses, their differences, history and derivatives. In addition, I will try to compare the GPL and BSD and explain why the original BSD license is not compatible with the GPL.

    UPD: sections "Original BSD license" and "ISC license (OpenBSD license)" are updated


    Probably everyone knows that BSD stands for Berkeley Software Distribution. This is the name of the software package that Bill Joy, a graduate of the University of California, Berkeley, compiled as an appendix to the sixth version of the UNIX operating system. In 1983, according to the wiki, 2.9BSD was not just a software package, but a full-fledged operating system, which was a modified UNIX v7. Thus, "BSD" began to mean "BSD UNIX" and in this sense this abbreviation has survived to the present day.

    BSD Licenses

    A curious story is associated with the BSD license, the description of which is located here . In short, already in 1986, 4.3BSD contained references to the BSD license in the form of comments in the source code. But, for some reason, the license text itself was not attached to the project tree. And only 4.4BSD released in 1994 contained the full text of the original BSD license, which (according to the source) dates back to 1990.

    However, another source reports that the license was used back in 1980. Be that as it may, today there are several options for BSD licenses.

    Original BSD license

    This is the first version of the license, which is usually called a license of 4 points (according to the number of clauses in the text). The license allowed the free use and distribution of source or binary codes with or without modifications, but with the conditions listed in these four paragraphs. These conditions stated :
    1. Distributed copies of the source code must contain the copyrights indicated above, this list of conditions and the disclaimer listed below.
    2. Distributed copies of the binary code must reproduce the copyrights specified above, this list of conditions and disclaimer specified below in the documentation and / or other materials supplied with the distributed package.
    3. All promotional materials referencing the features or use of this software must display the following notice: This product includes software developed by the University of California, Berkeley and assisted individuals. [1]
    4. Neither the name of the University, nor the names of partners can be entered or used to promote products manufactured on the basis of this software without special prior written permission.

    This version of the license has been criticized by Richard Stallman, author of the GPL license. Unfortunately, the third paragraph led to the fact that different developers, releasing their products under the BSD license, replaced the words in it with their organization. Thus, the compilation of several, sometimes many, diverse pieces of code in one project led to a large list of mandatory links to copyrights of different companies and developers when placing advertisements (there is evidence that the number of such mandatory copyrights reached 75 pieces). It is because of the third paragraph that the original BSD license is not compatible with GPL licenses and the codes released under it cannot be used in a GPL project.

    Revisited BSD license

    The problem with the third paragraph has been solved in 1999, when July 22 was released on appeal by William Hoskins, Director of Licensing at the University of Berkeley, which abolished the third clause BSD license for all products. According to this document, it was no longer required to include a link to the University of Berkeley in its promotional materials.

    Thus, a revised BSD license arose, also known as a 3-point license. This version of the license became compatible with the GPL, which undoubtedly had important consequences. Now, the codes of both licenses, assembled together, could be released in one product under one GPL license.

    Clear BSD license

    This type of license is based on the Revisited BSD license and contains one additional clause that says that the license does not grant any rights to patents. Clear BSD was created by MetaCarta, which explains the modification by the desire to eliminate ambiguity with respect to patents in BSD licenses. The difference in licenses is this line: “NO EXPRESS OR IMPLIED LICENSES TO ANY PARTY'S PATENT RIGHTS ARE GRANTED BY THIS LICENSE.” [2]. Clear BSD is compatible with GPLv2 and GPLv3.

    Freebsd license

    This license is also known as a 2-point license. Compared to the modified BSD license, the Berkeley University clause has been removed from this license. The license was born during the development of the FreeBSD project, a UNIX-based operating system. The license is compatible with the GNU GPL.

    ISC license (OpenBSD license)

    In 1995 there was another variation of UNIX, which the founders called OpenBSD . For its distribution, a license was created by the Internet Software Consortium, which was similar to the BSD two-point license (FreeBSD), but essentially removed these two points, since according to the Berne Convention for the Protection of Literary and Artistic Works , which entered into forcein the USA since March 1, 1989, they were no longer required. As a result, the license began to represent, in addition to the disclaimer, one proposal “Permission to use, copy, modify, and distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. " This simplest license is compatible with GPL licenses.

    GPL and BSD, instead of concluding

    At its core, all BSD licenses are not copyleft licenses . That is, they do not require derived code to be free. All licenses, with the exception of the very first original, are compatible with GPL licenses, but this does not stop the debate over which of the forms of licenses is better or worse, which license is freer or which has a better impact on the world and has a future.

    The GPL and BSD represent two points of view on the world of free software. The first believes that software should be free and generate free software. “Freedom or Death” - Stallman's slogan reflects the meaning of this point of view in the best possible way. The second point of view suggests that freedom must also consist in making proprietary software. This is a more liberal point of view. In fact, the philosophical question arises here: is it possible to consider freedom as a permission to restrict freedom.

    In fact, it’s good that most developers don’t get carried away and approach the question simply: if they want to see parts of their software only in such free products, then they choose the GPL, if they do not carethen they often choose BSD licenses. It is indifference to the fate of its software that characterizes a different approach to freedom from the GPL.

    Personally, I do not see any contradictions to the fact that these two approaches exist simultaneously and are used by different developers. In my opinion, such a variety of approaches to the development and distribution of their software only reflects how diverse our world is and its views on it. The more views in society, the more diverse and diverse it is, the more options there will be for licensing and distribution of software. And that’s great. Do not be conservatives, look at the world wider, be tolerant and accept diversity as one of the properties of the world.


    [1] BSD License
    [2] The Clear BSD: Introduction

    please, if you find an inaccuracy or mistake in the article, please let me know in the comments or to my personal mail

    Also popular now: