Difference between revisions of "Busybox replacement project"

From eLinux.org
Jump to: navigation, search
(Description: add version 1.0 release command list)
(Scope)
Line 23: Line 23:
 
One additional area of commands which is outside the traditional busybox coverage area, is Android tools provided by toolbox.  Toolbox is a non-GPL multi-tool program provided as part of the Android Open Source Project, and used in Android devices.  It is limited in functionality, however, compared to busybox, and so many developers install busybox in their Android devices to supplement the command set.  Google has a goal of reducing the amount of GPL software in user-space for Android devices.  A busybox replacement that implemented the toolbox commands could useful to avoid having Android developer adopt busybox by default.  But more importantly, a replacement that just focused on the weaknesses of toolbox could serve this tool supplementation role that busybox fills, with very little effort.
 
One additional area of commands which is outside the traditional busybox coverage area, is Android tools provided by toolbox.  Toolbox is a non-GPL multi-tool program provided as part of the Android Open Source Project, and used in Android devices.  It is limited in functionality, however, compared to busybox, and so many developers install busybox in their Android devices to supplement the command set.  Google has a goal of reducing the amount of GPL software in user-space for Android devices.  A busybox replacement that implemented the toolbox commands could useful to avoid having Android developer adopt busybox by default.  But more importantly, a replacement that just focused on the weaknesses of toolbox could serve this tool supplementation role that busybox fills, with very little effort.
  
It is expected that it will require about 6 months of part-time developer work to achieve a first milestone for the project.
+
It is expected that it will require about 6 months of part-time developer work to achieve the first major milestone for the project.
  
 
== Contractor Candidates ==
 
== Contractor Candidates ==

Revision as of 19:24, 11 January 2012

Work on Tiny Linux Kernel

Summary
Write a non-GPL replacement for Busybox
Proposer
Tim Bird

Description

Busybox is a widely used program which implements several Linux command line utilities in a single, multi-tool binary. It is provided under the GPL license. Due to it's utility and ubiquity, it has been used in a very large number of embedded devices. This includes use by companies who are not as diligent about their GPL commitments as they should be.

Busybox is arguably the most litigated piece of GPL software in the world. Unfortunately, it is unclear what the remedy should be when a GPL violation occurs with busybox. Litigants have sometimes requested remedies outside the scope of busybox itself, such as review authority over unrelated products, or right of refusal over non-busybox modules. This causes concern among chip vendors and suppliers.

The purpose of this project is to produce a program that is as capable and useful as busybox for a large majority of embedded Linux projects, such that busybox is easy to replace in existing products and can be supplanted as the default choice for a multi-tool program in most new projects.

Supported Commands

It is expected that the first major milestone release (version 1.0) of the busybox replacement program will include the following commands: [add command list here]

Scope

The scope of the project is dependent on the target use cases that are envisioned for the replacement tool. Busybox is currently used in a very large number of places, and it is impractical to replace it's full functionality in a short time. However, busybox as it currently stands includes very many non-essential programs and features. The overall goal would be to provide essential busybox functionality (e.g. with that contained in busybox version 1.0).

One additional area of commands which is outside the traditional busybox coverage area, is Android tools provided by toolbox. Toolbox is a non-GPL multi-tool program provided as part of the Android Open Source Project, and used in Android devices. It is limited in functionality, however, compared to busybox, and so many developers install busybox in their Android devices to supplement the command set. Google has a goal of reducing the amount of GPL software in user-space for Android devices. A busybox replacement that implemented the toolbox commands could useful to avoid having Android developer adopt busybox by default. But more importantly, a replacement that just focused on the weaknesses of toolbox could serve this tool supplementation role that busybox fills, with very little effort.

It is expected that it will require about 6 months of part-time developer work to achieve the first major milestone for the project.

Contractor Candidates

Rob Landley

Related work

Comments