English [en]   català [ca]   Deutsch [de]   español [es]   français [fr]   עברית [he]   Bahasa Indonesia [id]   日本語 [ja]   Nederlands [nl]   polski [pl]   português do Brasil [pt-br]   русский [ru]  

Thanks to your support, 2015 marks 30 years of the FSF! In the next 30 years, we want to do even more to defend computer user rights. To kick off in that direction, we're setting our highest-ever fundraising goal of $525,000 by January 31st. Read more.

$525K
28% (145K)
Count me in

The BSD License Problem

The two major categories of free software license are copyleft and non-copyleft . Copyleft licenses such as the GNU GPL insist that modified versions of the program must be free software as well. Non-copyleft licenses do not insist on this. We recommend copyleft, because it protects freedom for all users, but non-copylefted software can still be free software, and useful to the free software community.

There are many variants of simple non-copyleft free software licenses, such as the Expat license, FreeBSD license, X10 license, the X11 license, and the two BSD (Berkeley Software Distribution) licenses. Most of them are equivalent except for details of wording, but the license used for BSD until 1999 had a special problem: the “obnoxious BSD advertising clause”. It said that every advertisement mentioning the software must include a particular sentence:

3. All advertising materials mentioning features or use of this software
   must display the following acknowledgement:
     This product includes software developed by the University of
     California, Berkeley and its contributors.

Initially the obnoxious BSD advertising clause was used only in the Berkeley Software Distribution. That did not cause any particular problem, because including one sentence in an ad is not a great practical difficulty.

If other developers who used BSD-like licenses had copied the BSD advertising clause verbatim—including the sentence that refers to the University of California—then they would not have made the problem any bigger.

But, as you might expect, other developers did not copy the clause verbatim. They changed it, replacing “University of California” with their own institution or their own names. The result is a plethora of licenses, requiring a plethora of different sentences.

When people put many such programs together in an operating system, the result is a serious problem. Imagine if a software system required 75 different sentences, each one naming a different author or group of authors. To advertise that, you would need a full-page ad.

This might seem like extrapolation ad absurdum, but it is actual fact. In a 1997 version of NetBSD, I counted 75 of these sentences. (Fortunately NetBSD has decided to stop adding them, and to remove those it could.)

To address this problem, in my “spare time” I talk with developers who have used BSD-style licenses, asking them if they would please remove the advertising clause. Around 1996 I spoke with the developers of FreeBSD about this, and they decided to remove the advertising clause from all of their own code. In May 1998 the developers of Flick, at the University of Utah, removed this clause.

Dean Hal Varian at the University of California took up the cause, and championed it with the administration. In June 1999, after two years of discussions, the University of California removed this clause from the license of BSD.

Thus, there is now a new BSD license which does not contain the advertising clause. Unfortunately, this does not eliminate the legacy of the advertising clause: similar clauses are still present in the licenses of many packages which are not part of BSD. The change in license for BSD has no effect on the other packages which imitated the old BSD license; only the developers who made them can change them.

But if they followed Berkeley's lead before, maybe Berkeley's change in policy will convince some of them to change. It's worth asking.

So if you have a favorite package which still uses the BSD license with the advertising clause, please ask the maintainer to look at this web page, and consider making the change.

And if you want to release a program as non-copylefted free software, please don't use the advertising clause. Thus, instead of copying the BSD license from some released package—which might still have the old version of the license in it—please use one of the other permissive licenses, such as Expat or FreeBSD.

You can also help spread awareness of the issue by not using the term “BSD-style”, and not saying “the BSD license” which implies there is only one. You see, when people refer to all non-copyleft free software licenses as “BSD-style licenses”, some new free software developer who wants to use a non-copyleft free software license might take for granted that the place to get it is from BSD. He or she might copy the license with the advertising clause, not by specific intention, just by chance.

If you would like to cite one specific example of a non-copyleft license, and you have no particular preference, please pick an example which has no particular problem. For instance, if you talk about “X11-style licenses”, you will encourage people to copy the license from X11, which avoids the advertising clause for certain, rather than take a risk by randomly choosing one of the BSD licenses.

Or you could mention the non-copyleft license which we recommend over the other non-copyleft licenses: the Apache 2.0 license, which has a clause to prevent treachery with patents.

When you want to refer specifically to one of the BSD licenses, please always state which one: the “original BSD license” or the “revised BSD license”.

 [FSF logo] “Our mission is to preserve, protect and promote the freedom to use, study, copy, modify, and redistribute computer software, and to defend the rights of Free Software users.”

The Free Software Foundation is the principal organizational sponsor of the GNU Operating System. Support GNU and the FSF by buying manuals and gear, joining the FSF as an associate member, or making a donation, either directly to the FSF or via Flattr.

back to top