View Single Post
Posts: 111 | Thanked: 31 times | Joined on Nov 2007
#1
NB: I'm starting a new thread to focus the discussion back on busybox.

Busybox is a lightweight toolkit of standard linux command line tools. See http://busybox.net for more information.

Every nokia tablet ships with busybox installed. However, the nokia supplied version includes only a subset of the available tools (referred to as applets) often without all of the available features. I have created some alternative "testing" packages with many more applets and features available here:

http://garage.maemo.org/projects/busybox-test/
(note that you install and run these packages at your own risk, including the risk of needing to reflash your tablet -- i recommend keeping an eye on the thread or the project page if you install them)

to try out the alternative packages, goto the files section and download the deb with the appropriate OS version (OS2007 or OS2008) flagged with "ALTERNATE". Note that you cannot uninstall busybox because it would break the system. To get the original busybox back, download the appropriate OS versioned deb flagged with "ORIGINAL".

Sources for both versions are checked into the subversion repository (kind of redundant because my changes are minor). The OS2007 version is based on busybox 1.4.1 and the 2008 ver is based on 1.6.1. Both include Nokia patches.

Why?

Having acess to a full featured busybox is useful in its own right. More importantly, Nokia developers are willing to consider adding more applets to the busybox that ships with the OS (Eero Tamminen asked for a bug report with a detailed request, which I will get to after i get some feedback here). They are most likely to add a handful of core utils because they would rather provide the option to download full versions of non-core utils as separate packages than lock people into limited busybox versions. You can look at the file debian/config-deb in the sources to figure out what is core.

Community help is appreciated. Anyone can help by:
* testing the extra busybox applets to see which ones work well and which ones don't
* listing "must have" applets
* contributing to packaging newer versions busybox or version with different applet mixes
* report package issues
* report errors in this post

If anyone wants write access to the project repo let me know.


Notes

1. You may need to uninstall some packages that supply commands that the "testing" version of busybox also supplies (for e.g. wget and less)

2. The "testing" busybox package uses a slightly different version string to the original. This will generate dpkg/apt warnings because one package depends explicitly on the original version: .
Code:
You might want to run `apt-get -f install' to correct these.
The following packages have unmet dependencies:
osso-software-version: Depends: busybox (= 3:1.6.1.legal-1osso7) but 3:1.6.1.legal-1osso7.max is installed
I'll look into a resolution for this.

3. For some applets you need to be root for them to work (for example, ping - but this is also true in full versions of ping AFAICT). The busybox sanctioned workaround is the set the SUID bit on busybox with:
Code:
chmod 4777 busybox
I have not done this in the package because of potential security issues (effectively you are giving the entire binary root access and not necessarily the ones that need it -- busybox claims to restrict root access to only those applets that need it, but I'm leaving it off to be safe for now)

Last edited by cripes; 2008-01-06 at 12:50.