find: improve usage text (Natanael Copa <natanael.copa@gmail.com>)
[oweals/busybox.git] / docs / busybox.net / license.html
index 0e27c395645783784853cccb0ba8d9ea38e64129..76358bc65b3e636dd42239e8b81b079ea06e30ab 100644 (file)
 <!--#include file="header.html" -->
 
-
-<h3>The GPL BusyBox license</h3>
-
-There has been some confusion in the past as to exactly what is
-required to safely distribute GPL'd software such as BusyBox as
-part of a product.  To ensure that there is no confusion
-whatsoever, this page attempts to summarize what you should do to
-ensure you do not accidentally violate the law.
-
-<p>
-
-<p>
-
-BusyBox is licensed under the GNU General Public License , which
-is generally just abbreviated simply as the GPL license, or
-just the GPL.  <a href="/products.html">Anyone thinking of shipping
-BusyBox as part of a product</a> should be familiar with the
-licensing terms under which they are allowed to use and
-distribute BusyBox.  You are advised to take a look over the
-
-<ul>
-<li><a href="http://www.gnu.org/licenses/gpl.html">full text of
-the GNU General Public License</a>, and
-<li><a href="http://www.gnu.org/licenses/gpl-faq.html">
-Frequently Asked Questions about the GNU GPL</a>
-</ul>
-to be sure you (and your lawyers) fully understand them.
-
-<p>
-
-The following is a quick summary for the impatient.  If you
-carefully follow these steps, it will ensure that you are 100%
-authorized to ship BusyBox with your product, and have no reason
-to worry about lawsuits or being listed on the <a
-href="/shame.html">BusyBox Hall of Shame</a> page.  You will be
-able to sleep peacefully at night knowing you have fulfilled all
-your licensing obligations.
-
-<p>
-
-If you distribute a product, it should either be accompanied by
-<b>full source for all GPL'd products</b> (including BusyBox)
-and/or a <b>written offer</b> to supply the source for all
-GPL'd products for the cost of shipping and handling.  The source
-has to be in its preferred machine readable form, so you cannot
-encrypt or obfuscate it.  You are not required to provide full
-source for all the closed source applications that happen to be
-part of the system with BusyBox, though you can certainly do so
-if you feel like it.  But providing source for the GPL licensed
-applications such as BusyBox is mandatory.
-
 <p>
-
-<b>Accompanied by source</b> generally means you place the full
-source code for all GPL'd products such as BusyBox on a driver CD
-somewhere.  Full source code includes the BusyBox ".config" file
-used when your shipping BusyBox binary was compiled.
-
-<p>
-
-<b>A written offer</b> generally means that somewhere in the
-docs for your product, you write something like
-
-<blockquote>
-The GPL source code contained in this product is available as a
-free download from http://blah.blah.blah/
-</blockquote>
-Or you can offer source by writing
-somewhere in the docs for your product something like
-<blockquote>
-If you would like a copy of the GPL source code in this product
-on a CD, please send $9.99 to &lt;address&gt; for the costs of
-preparing and mailing a CD to you.
-</blockquote>
-<p>
-
-Keep in mind though that if you distribute GPL'd binaries online
-(as is often done when supplying firmware updates), it is highly
-recommended that you make the corresponding source available online
-at the same place.  Regardless, you <b>must</b> either make source
-available online (i.e. <b>accompanied by source</b>) and/or inform
-those downloading firmware updates of their right to obtain source
-(i.e. <b>a written offer</b>).  Failure to do so is a violation of
-your licensing obligations.
-
-
-<p>
-
-Some people have the mistaken understanding that if they use unmodified
-GPL'd source code, they do not need to distribute anything.  This belief
-is not correct, and is not supported by the
-<a href="http://www.gnu.org/licenses/gpl.html">text of GPL</a>.
-Please do re-read it -- you will find there is no such provision.
-If you distribute any GPL'd binaries, you must also make source available
-as discussed on this webpage.
-
-<p>
-
-These days, <a href="http://www.linksys.com/">Linksys</a> is
+<h3>BusyBox is licensed under the GNU General Public License, version 2</h3>
+
+<p>BusyBox is licensed under <a href="http://www.gnu.org/licenses/gpl.html#SEC1">the
+GNU General Public License</a> version 2, which is often abbreviated as GPLv2.
+(This is the same license the Linux kernel is under, so you may be somewhat
+familiar with it by now.)</p>
+
+<p>A complete copy of the license text is included in the file LICENSE in
+the BusyBox source code.</p>
+
+<p><a href="/products.html">Anyone thinking of shipping BusyBox as part of a
+product</a> should be familiar with the licensing terms under which they are
+allowed to use and distribute BusyBox.  Read the full test of the GPL (either
+through the above link, or in the file LICENSE in the busybox tarball), and
+also read the <a href="http://www.gnu.org/licenses/gpl-faq.html">Frequently
+Asked Questions about the GPL</a>.</p>
+
+<p>Basically, if you distribute GPL software the license requires that you also
+distribute the source code to that GPL-licensed software.  So if you distribute
+BusyBox without making the source code to the version you distribute available,
+you violate the license terms, and thus infringe on the copyrights of BusyBox.
+(This requirement applies whether or not you modified BusyBox; either way the
+license terms still apply to you.)  Read the license text for the details.</p>
+
+<h3>A note on GPL versions</h3>
+
+<p>Version 2 of the GPL is the only version of the GPL which current versions
+of BusyBox may be distributed under.  New code added to the tree is licensed
+GPL version 2, and the project's license is GPL version 2.</p>
+
+<p>Older versions of BusyBox (versions 1.2.2 and earlier, up through about svn
+16112) included variants of the recommended "GPL version 2 or (at your option)
+later versions" boilerplate permission grant.  Ancient versions of BusyBox
+(before svn 49) did not specify any version at all, and section 9 of GPLv2
+(the most recent version at the time) says those old versions may be
+redistributed under any version of GPL (including the obsolete V1).  This was
+conceptually similar to a dual license, except that the different licenses were
+different versions of the GPL.</p>
+
+<p>However, BusyBox has apparently always contained chunks of code that were
+licensed under GPL version 2 only.  Examples include applets written by Linus
+Torvalds (util-linux/mkfs_minix.c and util_linux/mkswap.c) which stated they
+"may be redistributed as per the Linux copyright" (which Linus clarified in the
+2.4.0-pre8 release announcement in 2000 was GPLv2 only), and Linux kernel code
+copied into libbb/loop.c (after Linus's announcement).  There are probably
+more, because all we used to check was that the code was GPL, not which
+version.  (Before the GPLv3 draft proceedings in 2006, it was a purely
+theoretical issue that didn't come up much.)</p>
+
+<p>To summarize: every version of BusyBox may be distributed under the terms of
+GPL version 2.  New versions (after 1.2.2) may <b>only</b> be distributed under
+GPLv2, not under other versions of the GPL.  Older versions of BusyBox might
+(or might not) be distributable under other versions of the GPL.  If you
+want to use a GPL version other than 2, you should start with one of the old
+versions such as release 1.2.2 or SVN 16112, and do your own homework to
+identify and remove any code that can't be licensed under the GPL version you
+want to use.  New development is all GPLv2.</p>
+
+<h3>License enforcement</h3>
+
+<p>BusyBox's copyrights are enforced by the <a
+href="http://www.softwarefreedom.org">Software Freedom Law Center</a>
+(you can contact them at gpl@busybox.net), which
+"accepts primary responsibility for enforcement of US copyrights on the
+software... and coordinates international copyright enforcement efforts for
+such works as necessary."  If you distribute BusyBox in a way that doesn't
+comply with the terms of the license BusyBox is distributed under, expect to
+hear from these guys.  Their entire reason for existing is to do pro-bono
+legal work for free/open source software projects.  (We used to list people who
+violate the BusyBox license in <a href="/shame.html">The Hall of Shame</a>,
+but these days we find it much more effective to hand them over to the
+lawyers.)</p>
+
+<p>Our enforcement efforts are aimed at bringing people into compliance with
+the BusyBox license.  Open source software is under a different license from
+proprietary software, but if you violate that license you're still a software
+pirate and the law gives the vendor (us) some big sticks to play with.  We
+don't want monetary awards, injunctions, or to generate bad PR for a company,
+unless that's the only way to get somebody that repeatedly ignores us to comply
+with the license on our code.</p>
+
+<h3>A Good Example</h3>
+
+<p>These days, <a href="http://www.linksys.com/">Linksys</a> is
 doing a good job at complying with the GPL, they get to be an
 example of how to do things right.  Please take a moment and
 check out what they do with
-<a href="http://www.linksys.com/download/firmware.asp?fwid=178">
+<a href="http://www.linksys.com/servlet/Satellite?c=L_Content_C1&childpagename=US%2FLayout&cid=1115416836002&pagename=Linksys%2FCommon%2FVisitorWrapper">
 distributing the firmware for their WRT54G Router.</a>
-Following their example would be a fine way to ensure you have
-fulfilled your licensing obligations.
-
+Following their example would be a fine way to ensure that you
+have also fulfilled your licensing obligations.</p>
 
 <!--#include file="footer.html" -->