|author||Denys Vlasenko <email@example.com>||2010-02-11 02:46:10 (GMT)|
|committer||Denys Vlasenko <firstname.lastname@example.org>||2010-02-11 02:46:10 (GMT)|
FAQ: add "I want to use BusyBox as part of firmware" section
Signed-off-by: Denys Vlasenko <email@example.com>
1 files changed, 64 insertions, 0 deletions
@@ -20,6 +20,7 @@ have additions to this FAQ document, we would love to add them,
<li><a href="#demanding">I demand that you to add <favorite feature> right now! How come you don't answer all my questions on the mailing list instantly? I demand that you help me with all of my problems <em>Right Now</em>!</a></li>
<li><a href="#helpme">I need help with BusyBox! What should I do?</a></li>
<li><a href="#contracts">I need you to add <favorite feature>! Are the BusyBox developers willing to be paid in order to fix bugs or add in <favorite feature>? Are you willing to provide support contracts?</a></li>
+<li><a href="#commercial_use">I want to use BusyBox as part of the Linux-based firmware for a new device. Will it create any license issues in future?</a></li>
@@ -349,6 +350,69 @@ or not the result would do anything useful is an open question.</p></li>
+<h2><a name="commercial_use">I want to use BusyBox as part of the Linux-based firmware for a new device. Will it create any license issues in future?</a></h2>
+If you use busybox binary in your device's firmware, and if you
+(or the company you work for) is providing this device to others
+(selling, giving for free, etc), you have to provide users
+with means to build the same busybox binary from source.
+For example, you may do it by placing the following, or similar,
+text somewhere on the company's web site:
+ This device's firmware includes the following open-source components:<br>
+ We are using patched version of busybox 1.6.2.<br>
+ In order to rebuild it from source, download<br>
+ unpack it to an empty directory,<br>
+ to the same directory and apply the patch with this command:<br>
+ patch -p1 <busybox-1.6.2.patch<br>
+ Now you can build busybox with these commands:<br>
+ export ARCH=arm<br>
+ make CROSS_COMPILE=arm-linux-uclibc-<br>
+ After successful build, you will have busybox binary<br>
+ in this directory.<br>
+ If make command fails with the message<br>
+ "arm-linux-uclibc-gcc: command not found"<br>
+ you need to install suitable cross-compiler for ARM processor first.<br>
+ ARM cross-compilers are widely available both from commercial vendors<br>
+ and from open-source projects.<br>
+Adjust the text to suit your actual situation.
+You have to make the page easily accessible.
+In other words, users should not be forced to guess the URL.
+The most sensible choice is to put this text
+on the page where users normally download updated
+binary firmware images.
+If you want to be extra nice, you may provide URLs to places
+where people may get ARM toolchains or read HOWTOs explaining
+how to build one. You may even provide the toolchain.
+You may explain how to download newly built busybox binary
+into the device. But these "extra nice" things are not required
+by license. License also does not require you to provide
+any support for users which use firmware (or part of it)
+built from source.
+What license does require, though, is that busybox
+source which you provide actually can be built and that
+it will match busybox binary which is found in your binary firmware.
+Match is meant as "functional match", not byte-by-byte match -
+binaries may slightly differ because of different compilers/linkers used.