I'm going out now. I may be some time.

Denis Vlasenko vda.linux at googlemail.com
Sun Oct 1 15:45:08 UTC 2006


On Saturday 30 September 2006 22:17, Rob Landley wrote:
> Bruce [expletive delted] Perens sucked all the fun out of this project for me, 
> and at the moment I really don't want to work on it anymore.  He may have 
> lost the licensing dispute, but he did manage to suck out all my enthusiasm 
> for working on any project he can take credit for.

Fortunately, I am not going to pay attention to such silly distractions
at all. All new code which I will commit to svn will be GPLv2 only.
It's that simple.

> I think this is long and rambling enough.  Denis wanted to make sure I'd stay 
> subscribed to the list, so I will, but I'm not planning on posting much.

Okay, I need to explain what I intend to do now.

I believe that busybox now is mature enough to be almost usable
on ordinary desktop machines. So I actually did that - replaced
most of applicable /bin/* with links to busybox.
I expect some fallout. I will try to fix it.

Few examples: (1) Midnight Commander uses -v option when it calls
g[un]zip. It is of course fixable in MC, but the goal is to make
bbox usable on _unmodified_ desktop system!
(2) od -t is used in bbox's own build system, but bbox od doesn't
handle -t.
(3) bbox build started to produce larger (+100k) executable
from the same source tree and .config. Wow...
Did not track down which applet affects this, and how...

(1) and (2) are good examples of cases which do not matter for
embedded world but are needed on desktop.

Busybox should not lose its position of embedded device tool.
I think it makes sense to introduce CONFIG_DESKTOP and put
all such things under it. I will add such thing with gunzip -v fix.
Non-DESKTOP bbox will silently ignore -v,
DESKTOP one will print statistics.

I know that increased attention to destop needs will inevibably
lead to _some_ increases in size even for non DESKTOP case.

Please think also about positive side: with such move there is
a chance that bbox will get much wider userbase and therefore
will bring some sanity into desktop world.

Of course contributions and corrections (and even rants about
bloat) from embedded people are still accepted
and encouraged.

P.S. below sig: the list of applets I added to /bin on my box.
Need to check whether it will at least boot correctly now ;)
--
vda

ln -sf /app/busybox-1.2.1.svn/busybox /bin/basename	# exists: /bin/basename and /usr/bin/basename
ln -sf /app/busybox-1.2.1.svn/busybox /bin/bunzip2	# exists: /bin/bunzip2 and /usr/bin/bunzip2
ln -sf /app/busybox-1.2.1.svn/busybox /bin/bzcat	# exists: /bin/bzcat and /usr/bin/bzcat
ln -sf /app/busybox-1.2.1.svn/busybox /bin/cal	# exists: /bin/cal
ln -sf /app/busybox-1.2.1.svn/busybox /bin/cat	# exists: /bin/cat and /usr/bin/cat
ln -sf /app/busybox-1.2.1.svn/busybox /bin/chgrp	# exists: /bin/chgrp and /usr/bin/chgrp
ln -sf /app/busybox-1.2.1.svn/busybox /bin/chmod	# exists: /bin/chmod and /usr/bin/chmod
ln -sf /app/busybox-1.2.1.svn/busybox /bin/chown	# exists: /bin/chown and /usr/bin/chown
ln -sf /app/busybox-1.2.1.svn/busybox /bin/chroot	# exists: /bin/chroot and /usr/bin/chroot
ln -sf /app/busybox-1.2.1.svn/busybox /bin/cksum	# exists: /bin/cksum and /usr/bin/cksum
ln -sf /app/busybox-1.2.1.svn/busybox /bin/cp	# exists: /bin/cp and /usr/bin/cp
ln -sf /app/busybox-1.2.1.svn/busybox /bin/cut	# exists: /bin/cut and /usr/bin/cut
ln -sf /app/busybox-1.2.1.svn/busybox /bin/date	# exists: /bin/date and /usr/bin/date
ln -sf /app/busybox-1.2.1.svn/busybox /bin/dd	# exists: /bin/dd and /usr/bin/dd
ln -sf /app/busybox-1.2.1.svn/busybox /bin/df	# exists: /bin/df and /usr/bin/df
ln -sf /app/busybox-1.2.1.svn/busybox /bin/dirname	# exists: /bin/dirname and /usr/bin/dirname
ln -sf /app/busybox-1.2.1.svn/busybox /bin/dmesg	# exists: /bin/dmesg
ln -sf /app/busybox-1.2.1.svn/busybox /bin/du	# exists: /bin/du and /usr/bin/du
ln -sf /app/busybox-1.2.1.svn/busybox /bin/echo	# exists: /bin/echo and /usr/bin/echo
ln -sf /app/busybox-1.2.1.svn/busybox /bin/egrep	# exists: /bin/egrep and /usr/bin/egrep
ln -sf /app/busybox-1.2.1.svn/busybox /bin/env	# exists: /bin/env and /usr/bin/env
ln -sf /app/busybox-1.2.1.svn/busybox /bin/false	# exists: /bin/false and /usr/bin/false
ln -sf /app/busybox-1.2.1.svn/busybox /bin/fdisk	# exists: /bin/fdisk
ln -sf /app/busybox-1.2.1.svn/busybox /bin/fgrep	# exists: /bin/fgrep and /usr/bin/fgrep
ln -sf /app/busybox-1.2.1.svn/busybox /bin/find	# exists: /bin/find and /usr/bin/find
ln -sf /app/busybox-1.2.1.svn/busybox /bin/fold	# exists: /bin/fold and /usr/bin/fold
ln -sf /app/busybox-1.2.1.svn/busybox /bin/free	# exists: /bin/free
ln -sf /app/busybox-1.2.1.svn/busybox /bin/fuser	# exists: /bin/fuser and /usr/bin/fuser
ln -sf /app/busybox-1.2.1.svn/busybox /bin/getopt	# exists: /bin/getopt
ln -sf /app/busybox-1.2.1.svn/busybox /bin/grep	# exists: /bin/grep and /usr/bin/grep
ln -sf /app/busybox-1.2.1.svn/busybox /bin/gunzip	# exists: /bin/gunzip and /usr/bin/gunzip
ln -sf /app/busybox-1.2.1.svn/busybox /bin/gzip	# exists: /bin/gzip and /usr/bin/gzip
ln -sf /app/busybox-1.2.1.svn/busybox /bin/head	# exists: /bin/head and /usr/bin/head
ln -sf /app/busybox-1.2.1.svn/busybox /bin/hexdump	# exists: /bin/hexdump
ln -sf /app/busybox-1.2.1.svn/busybox /bin/hostid	# exists: /bin/hostid and /usr/bin/hostid
ln -sf /app/busybox-1.2.1.svn/busybox /bin/hostname	# exists: /bin/hostname and /usr/bin/hostname
ln -sf /app/busybox-1.2.1.svn/busybox /bin/hwclock	# exists: /bin/hwclock
ln -sf /app/busybox-1.2.1.svn/busybox /bin/id	# exists: /bin/id and /usr/bin/id
ln -sf /app/busybox-1.2.1.svn/busybox /bin/insmod	# exists: /bin/insmod
ln -sf /app/busybox-1.2.1.svn/busybox /bin/install	# exists: /bin/install and /usr/bin/install
ln -sf /app/busybox-1.2.1.svn/busybox /bin/ipcrm	# exists: /bin/ipcrm
ln -sf /app/busybox-1.2.1.svn/busybox /bin/ipcs	# exists: /bin/ipcs
ln -sf /app/busybox-1.2.1.svn/busybox /bin/kill	# exists: /bin/kill and /usr/bin/kill
ln -sf /app/busybox-1.2.1.svn/busybox /bin/killall	# exists: /bin/killall and /usr/bin/killall
ln -sf /app/busybox-1.2.1.svn/busybox /bin/last	# exists: /bin/last
ln -sf /app/busybox-1.2.1.svn/busybox /bin/ln	# exists: /bin/ln and /usr/bin/ln
ln -sf /app/busybox-1.2.1.svn/busybox /bin/logger	# exists: /bin/logger
ln -sf /app/busybox-1.2.1.svn/busybox /bin/logname	# exists: /bin/logname and /usr/bin/logname
ln -sf /app/busybox-1.2.1.svn/busybox /bin/ls	# exists: /bin/ls and /usr/bin/ls
ln -sf /app/busybox-1.2.1.svn/busybox /bin/lsmod	# exists: /bin/lsmod
ln -sf /app/busybox-1.2.1.svn/busybox /bin/md5sum	# exists: /bin/md5sum and /usr/bin/md5sum
ln -sf /app/busybox-1.2.1.svn/busybox /bin/mesg	# exists: /bin/mesg
ln -sf /app/busybox-1.2.1.svn/busybox /bin/mkdir	# exists: /bin/mkdir and /usr/bin/mkdir
ln -sf /app/busybox-1.2.1.svn/busybox /bin/mkfifo	# exists: /bin/mkfifo and /usr/bin/mkfifo
ln -sf /app/busybox-1.2.1.svn/busybox /bin/mknod	# exists: /bin/mknod and /usr/bin/mknod
ln -sf /app/busybox-1.2.1.svn/busybox /bin/mkswap	# exists: /bin/mkswap
ln -sf /app/busybox-1.2.1.svn/busybox /bin/modprobe	# exists: /bin/modprobe
ln -sf /app/busybox-1.2.1.svn/busybox /bin/more	# exists: /bin/more
ln -sf /app/busybox-1.2.1.svn/busybox /bin/mount	# exists: /bin/mount
ln -sf /app/busybox-1.2.1.svn/busybox /bin/mv	# exists: /bin/mv and /usr/bin/mv
ln -sf /app/busybox-1.2.1.svn/busybox /bin/nc	# exists: /bin/nc and /usr/bin/nc
ln -sf /app/busybox-1.2.1.svn/busybox /bin/nice	# exists: /bin/nice and /usr/bin/nice
ln -sf /app/busybox-1.2.1.svn/busybox /bin/nohup	# exists: /bin/nohup and /usr/bin/nohup
ln -sf /app/busybox-1.2.1.svn/busybox /bin/od	# exists: /bin/od and /usr/bin/od
ln -sf /app/busybox-1.2.1.svn/busybox /bin/ping	# exists: /bin/ping and /usr/bin/ping
ln -sf /app/busybox-1.2.1.svn/busybox /bin/ping6	# exists: /bin/ping6 and /usr/bin/ping6
ln -sf /app/busybox-1.2.1.svn/busybox /bin/pivot_root	# exists: /bin/pivot_root
ln -sf /app/busybox-1.2.1.svn/busybox /bin/printenv	# exists: /bin/printenv and /usr/bin/printenv
ln -sf /app/busybox-1.2.1.svn/busybox /bin/printf	# exists: /bin/printf and /usr/bin/printf
ln -sf /app/busybox-1.2.1.svn/busybox /bin/ps	# exists: /bin/ps
ln -sf /app/busybox-1.2.1.svn/busybox /bin/pwd	# exists: /bin/pwd and /usr/bin/pwd
ln -sf /app/busybox-1.2.1.svn/busybox /bin/readlink	# exists: /bin/readlink and /usr/bin/readlink
ln -sf /app/busybox-1.2.1.svn/busybox /bin/readprofile	# exists: /bin/readprofile
ln -sf /app/busybox-1.2.1.svn/busybox /bin/renice	# exists: /bin/renice
ln -sf /app/busybox-1.2.1.svn/busybox /bin/rm	# exists: /bin/rm and /usr/bin/rm
ln -sf /app/busybox-1.2.1.svn/busybox /bin/rmdir	# exists: /bin/rmdir and /usr/bin/rmdir
ln -sf /app/busybox-1.2.1.svn/busybox /bin/rmmod	# exists: /bin/rmmod
ln -sf /app/busybox-1.2.1.svn/busybox /bin/rpm	# exists: /bin/rpm and /usr/bin/rpm
ln -sf /app/busybox-1.2.1.svn/busybox /bin/sed	# exists: /bin/sed and /usr/bin/sed
ln -sf /app/busybox-1.2.1.svn/busybox /bin/seq	# exists: /bin/seq and /usr/bin/seq
ln -sf /app/busybox-1.2.1.svn/busybox /bin/setsid	# exists: /bin/setsid
ln -sf /app/busybox-1.2.1.svn/busybox /bin/sha1sum	# exists: /bin/sha1sum and /usr/bin/sha1sum
ln -sf /app/busybox-1.2.1.svn/busybox /bin/sleep	# exists: /bin/sleep and /usr/bin/sleep
ln -sf /app/busybox-1.2.1.svn/busybox /bin/sort	# exists: /bin/sort and /usr/bin/sort
ln -sf /app/busybox-1.2.1.svn/busybox /bin/stat	# exists: /bin/stat and /usr/bin/stat
ln -sf /app/busybox-1.2.1.svn/busybox /bin/stty	# exists: /bin/stty and /usr/bin/stty
ln -sf /app/busybox-1.2.1.svn/busybox /bin/su	# exists: /bin/su and /usr/bin/su
ln -sf /app/busybox-1.2.1.svn/busybox /bin/sum	# exists: /bin/sum and /usr/bin/sum
ln -sf /app/busybox-1.2.1.svn/busybox /bin/swapoff	# exists: /bin/swapoff
ln -sf /app/busybox-1.2.1.svn/busybox /bin/swapon	# exists: /bin/swapon
ln -sf /app/busybox-1.2.1.svn/busybox /bin/sync	# exists: /bin/sync and /usr/bin/sync
ln -sf /app/busybox-1.2.1.svn/busybox /bin/sysctl	# exists: /bin/sysctl
ln -sf /app/busybox-1.2.1.svn/busybox /bin/tail	# exists: /bin/tail and /usr/bin/tail
ln -sf /app/busybox-1.2.1.svn/busybox /bin/tar	# exists: /bin/tar
ln -sf /app/busybox-1.2.1.svn/busybox /bin/tee	# exists: /bin/tee and /usr/bin/tee
ln -sf /app/busybox-1.2.1.svn/busybox /bin/test	# exists: /bin/test and /usr/bin/test
ln -sf /app/busybox-1.2.1.svn/busybox /bin/top	# exists: /bin/top
ln -sf /app/busybox-1.2.1.svn/busybox /bin/touch	# exists: /bin/touch and /usr/bin/touch
ln -sf /app/busybox-1.2.1.svn/busybox /bin/tr	# exists: /bin/tr and /usr/bin/tr
ln -sf /app/busybox-1.2.1.svn/busybox /bin/true	# exists: /bin/true and /usr/bin/true
ln -sf /app/busybox-1.2.1.svn/busybox /bin/tty	# exists: /bin/tty and /usr/bin/tty
ln -sf /app/busybox-1.2.1.svn/busybox /bin/umount	# exists: /bin/umount
ln -sf /app/busybox-1.2.1.svn/busybox /bin/uname	# exists: /bin/uname and /usr/bin/uname
ln -sf /app/busybox-1.2.1.svn/busybox /bin/uniq	# exists: /bin/uniq and /usr/bin/uniq
ln -sf /app/busybox-1.2.1.svn/busybox /bin/uptime	# exists: /bin/uptime and /usr/bin/uptime
ln -sf /app/busybox-1.2.1.svn/busybox /bin/watch	# exists: /bin/watch
ln -sf /app/busybox-1.2.1.svn/busybox /bin/wc	# exists: /bin/wc and /usr/bin/wc
ln -sf /app/busybox-1.2.1.svn/busybox /bin/who	# exists: /bin/who and /usr/bin/who
ln -sf /app/busybox-1.2.1.svn/busybox /bin/whoami	# exists: /bin/whoami and /usr/bin/whoami
ln -sf /app/busybox-1.2.1.svn/busybox /bin/xargs	# exists: /bin/xargs and /usr/bin/xargs
ln -sf /app/busybox-1.2.1.svn/busybox /bin/yes	# exists: /bin/yes and /usr/bin/yes
ln -sf /app/busybox-1.2.1.svn/busybox /bin/zcat	# exists: /bin/zcat and /usr/bin/zcat



More information about the busybox mailing list