Questions about licenses

Denys Vlasenko vda.linux at googlemail.com
Sun Dec 2 04:17:07 UTC 2007


On Saturday 01 December 2007 19:46, Lu Zhou wrote:
> Hi, Denis Vlasenko,
>
> 1, Do I have to open my source codes for a commercial product if my file
> system includes busybox? 2, Actually I want to keep my source codes
> private. What options do I have? 3, I subscribed Timesys' BSP that includes
> Busybox. Is that OK that I use it in my commercial product?

I am not a lawyer, and my answer is not authoritative.

My understanding is that if you use busybox in your device,
you have to provide users with means to build the same busybox
from source.

For example, you may do it by placing the following text somewhere
on the company's web site:

"This device's firmware includes open-source components:
* ...
* Busybox:
  We are using patched version of busybox 1.6.2.
  In order to rebuild it from source, download
  http://company.site.com/firmware/source/busybox-1.6.2.tar.gz,
  unpack it to an empty directory,
  download
  http://company.site.com/firmware/source/busybox-1.6.2-patch.
  to the same directory and apply it with this command:
    patch -p1 <busybox-1.6.2-patch
  Now you can build busybox with these commands:
    export ARCH=arm
    make CROSS_COMPILE=arm-linux-uclibc-
  After successful build, you will have busybox binary
  in this directory.
  If make command fails with the message
    "arm-linux-uclibc-gcc: command not found"
  you need to install suitable cross-compiler for ARM processor first.
  ARM cross-compilers are widely available both from commercial vendors
  and from open-source projects.
* ...
* ..."

Adjust the text to suit your actual situation.

You have to make the page easily accessible.
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 - binaries
may slightly vary because of different compilers/linkers used.

--
vda



More information about the busybox mailing list