1 <!--#include file="header.html" -->
5 <li><b>12 February 2008 -- BusyBox 1.9.1 (stable)</b>
6 <p><a href="http://busybox.net/downloads/busybox-1.9.1.tar.bz2">BusyBox 1.9.1</a>.
7 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_9_stable/">svn</a>,
8 <a href="http://busybox.net/downloads/fixes-1.9.1/">patches</a>,
9 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
11 <p>This is a bugfix-only release, with fixes to fsck,
12 iproute, mdev, mkswap, msh, nameif, stty, test, zcip.</p>
13 <p>hush has `command` expansion re-enabled for NOMMU, although it is
14 inherently unsafe (by virtue of NOMMU's use of vfork instead of fork).
15 The plan is to make this less likely to bite people in future versions.</p>
18 <li><b>24 December 2007 -- BusyBox 1.9.0 (unstable)</b>
19 <p><a href="http://busybox.net/downloads/busybox-1.9.0.tar.bz2">BusyBox 1.9.0</a>.
20 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_9_stable/">svn</a>,
21 <a href="http://busybox.net/downloads/fixes-1.9.0/">patches</a>,
22 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
24 <p>Sizes of busybox-1.8.2 and busybox-1.9.0 (with almost full config, static uclibc build):<pre>
25 text data bss dec hex filename
26 792796 978 9724 803498 c42aa busybox-1.8.2
27 783803 683 7508 791994 c15ba busybox-1.9.0
29 <p>Top 10 stack users:<pre>
30 busybox-1.8.2: busybox-1.9.0:
31 input_tab 10428 echo_dg 4116
32 umount_main 8252 bb_full_fd_action 4112
33 rtnl_talk 8240 discard_dg 4096
34 xrtnl_dump_filter 8240 echo_stream 4096
35 sendMTFValues 5316 discard_stream 4096
36 mainSort 4700 find_list_entry2 4096
37 mkfs_minix_main 4288 readlink_main 4096
38 grave 4260 ipaddr_list_or_flush 3900
39 unix_do_one 4156 iproute_list_or_flush 3680
40 parse_prompt 4132 insmod_main 3152
43 <p>lash is deleted from this release. hush can be configured down to almost
44 the same size, but it is significantly less buggy. It even works
45 on NOMMU machines (interactive mode and backticks are not working on NOMMU,
46 though). "lash" applet is still available, but it runs hush.
48 <p>init has some changes in this release, please report if it causes
51 <p>Changes since previous release:
53 <li>Build system improvements
54 <li>Testsuite additions
55 <li>Stack size reductions, code size reductions, data/bss reductions
56 <li>An option to prefer IPv4 address if host has both
57 <li>New applets: hd, sestatus
58 <li>Removed applets: lash
59 <li>hush: fixed a few bugs, wired up echo and test to be builtins
60 <li>init: simplify forking of children
61 <li>getty: special handling of '#' and '@' is removed
62 <li>[su]login: sanitize environment if called by non-root
63 <li>udhcpc: support "bad" servers which send oversized packets
64 (Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com>)
65 <li>udhcpc: -O option allows to specify which options to ask for
66 (Stefan Hellermann <stefan at the2masters.de>)
67 <li>udhcpc: optionally check whether given IP is really free (by ARP ping)
68 (Jonas Danielsson <jonas.danielsson at axis.com>)
69 <li>vi: now handles files with unlimited line length
70 <li>vi: speedup for huge line lengths
72 <li>sed: support GNUism '\t'
73 <li>cp/mv/install: optionally use bigger buffer for bulk copying
74 <li>line editing: don't eat stack like crazy
75 <li>passwd: follows symlinked /etc/passwd
76 <li>renice: accepts priority with +N too
77 <li>netstat: wide output mode
78 <li>nameif: extended matching (Nico Erfurth <masta at perlgolf.de>)
79 <li>test: become NOFORK applet
80 <li>find: -iname (Alexander Griesser <alexander.griesser at lkh-vil.or.at>)
81 <li>df: -i option (show inode info) (Pascal Bellard <pascal.bellard at ads-lu.com>)
82 <li>hexdump: -R option (Pascal Bellard <pascal.bellard at ads-lu.com>)
86 <li><b>23 November 2007 -- BusyBox 1.8.2 (stable), BusyBox 1.7.4 (stable)</b>
87 <p><a href="http://busybox.net/downloads/busybox-1.8.2.tar.bz2">BusyBox 1.8.2</a>.
88 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/">svn</a>,
89 <a href="http://busybox.net/downloads/fixes-1.8.2/">patches</a>,
90 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
91 <p><a href="http://busybox.net/downloads/busybox-1.7.4.tar.bz2">BusyBox 1.7.4</a>.
92 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/">svn</a>,
93 <a href="http://busybox.net/downloads/fixes-1.7.4/">patches</a>,
94 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
96 <p>These are bugfix-only releases.
97 1.8.2 contains fixes for inetd, lash, tar, tr, and build system.
98 1.7.4 contains a fix for inetd.</p>
101 <li><b>9 November 2007 -- BusyBox 1.8.1 (stable)</b>
102 <p><a href="http://busybox.net/downloads/busybox-1.8.1.tar.bz2">BusyBox 1.8.1</a>.
103 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/">svn</a>,
104 <a href="http://busybox.net/downloads/fixes-1.8.1/">patches</a>,
105 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
107 <p>This is a bugfix-only release, with fixes to login (PAM), modprobe, syslogd, telnetd, unzip.</p>
110 <li><b>4 November 2007 -- BusyBox 1.8.0 (unstable)</b>
111 <p><a href="http://busybox.net/downloads/busybox-1.8.0.tar.bz2">BusyBox 1.8.0</a>.
112 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_8_stable/">svn</a>,
113 <a href="http://busybox.net/downloads/fixes-1.8.0/">patches</a>,
114 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
116 <p>Note: this is probably the very last release with lash. It will be dropped. Please migrate to hush.
118 <p>Applets which had many changes since 1.7.x:
121 <li>does not clear environment, CGIs will see all environment variables which were set for httpd
122 <li>fix bug where we were trying to read more POSTDATA than content-length
123 <li>fix trivial bug (spotted by Alex Landau)
124 <li>optional support for partial downloads
125 <li>simplified CGI i/o loop (now it looks good to me)
126 <li>small auth and IPv6 fixes (Kim B. Heino <Kim.Heino at bluegiga.com>)
127 <li>support for proxying connection to other http server (by Alex Landau <landau_alex at yahoo.com>)
132 <li>TOPMEM feature - 's(how sizes)' command
133 <li>don't wait before final bailout (try top -b -n1)
134 <li>fix for command line wrapping
137 <p>Build system improvements: libbusybox mode restored (it was lost in transition to new makefiles).
139 <p>Code and data size in comparison with 1.7.3:<pre>
140 Equivalent .config, i386 uclibc static builds:
141 text data bss dec hex filename
142 768123 1055 10768 779946 be6aa busybox-1.7.3/busybox
143 759693 974 9420 770087 bc027 busybox-1.8.0/busybox</pre>
147 <li>microcom: new applet by Vladimir Dronnikov <dronnikov at gmail.ru>
148 <li>kbd_mode: new applet by Loic Grenie <loic.grenie at gmail.com>
149 <li>bzip2: port bzip2 1.0.4 to busybox, 9 kb of code
150 <li>pgrep, pkill: new applets by Loic Grenie <loic.grenie at gmail.com>
151 <li>setsebool: new applet (Yuichi Nakamura <ynakam at hitachisoft.jp>)
154 <p>Other changes since previous release (abridged):
156 <li>cp: -r and -R imply -d (coreutils compat)
157 <li>cp: detect and prevent infinite recursion
158 <li>cp: make it a bit closer to POSIX, but still refuse to open and overwrite symbolic link
159 <li>hdparm: reduce possibility of numeric overflow in -T
160 <li>hdparm: simplify timing measurement
161 <li>wget: -O FILE is allowed to overwrite existing file (compat)
162 <li>wget: allow dots in header field names
163 <li>telnetd: add -K option to close sessions as soon as child exits
164 <li>telnetd: don't SIGKILL child when closing the session, kernel will send SIGHUP for us
165 <li>ed: large cleanup, add line editing
166 <li>hush: feeble attempt at making it more NOMMU-friendly
168 <li>hush: stop doing manual accounting of open fd's, kernel can do it for us
169 <li>adduser: implement -S and fix uid selection
170 <li>ash: fix prompt expansion (Natanael Copa <natanael.copa at gmail.com>)
171 <li>ash: revert "cat | jobs" fix, it causes more problems than good
172 <li>find: fix -xdev behavior in the presence of two or more nested mount points
173 <li>grep: fix grep -F -e str1 -e str2 (was matching str2 only)
174 <li>grep: optimization: stop on first -e match
175 <li>gunzip: support concatenated gz files
176 <li>inetd: fix bug 1562 "inetd does not set argv[0] properly" (fix by Ilya Panfilov)
177 <li>install: 'support' (by ignoring) -v and -b
178 <li>install: fix bug in "install -c file dir" (tried to copy dir into dir too)
179 <li>ip: tunnel parameter parsing fix by Jean Wolter <jw5 at os.inf.tu-dresden.de>
180 <li>isrv: use monotonic_sec
181 <li>less: make 'f' key page forward
182 <li>libiproute: add missing break statements
183 <li>load_policy: update (Yuichi Nakamura <ynakam at hitachisoft.jp>)
184 <li>logger: fix a problem of losing all argv except first
185 <li>login: do reject wrong passwords with PAM auth
186 <li>losetup: support -f (Loic Grenie <loic.grenie at gmail.com>)
187 <li>fdisk: make fdisk compile on libc without llseek64
188 <li>libbb: by popular request allow PATH to be customized at build time
189 <li>mkswap: selinux support by KaiGai Kohei <kaigai at ak.jp.nec.com>
190 <li>mount: allow (and ignore) -i
191 <li>mount: ignore NFS bg option on NOMMU machines
192 <li>mount: mount helpers support (by Vladimir Dronnikov <dronnikov at gmail.ru>)
193 <li>passwd: handle Ctrl-C, restore termios on Ctrl-C
194 <li>passwd: SELinux support by KaiGai Kohei <kaigai at ak.jp.nec.com>
195 <li>ping: make -I ethN work too (-I addr already worked)
196 <li>ps: fix RSS parsing (rss field in /proc/PID/stat is in pages, not bytes)
197 <li>read_line_input: fix it to not do any fancy editing if echoing is disabled
198 <li>run_parts: make it sort executables by name (required by API)
199 <li>runsv: do not use clock_gettime if !MONOTONIC_CLOCK
200 <li>runsvdir: fix "linear wait time" bug
201 <li>sulogin: remove alarm handling, it is redundant there
202 <li>svlogd: compat: svlogd -tt should timestamp stderr too
203 <li>syslogd: bail out if you see null read from Unix socket
204 <li>syslogd: do not need to poll(), we can just block in read()
205 <li>tail: work correctly on /proc files (Kazuo TAKADA <kztakada at sm.sony.co.jp>)
206 <li>tar + gzip/bzip2/etc: support NOMMU machines (by Alex Landau <landau_alex at yahoo.com>)
207 <li>tar: strip leading '/' BEFORE memorizing hardlink's name
208 <li>tftp: fix infinite retry bug
209 <li>umount: support (by ignoring) -i; style fixes
210 <li>unzip: fix endianness bugs
211 <li>vi: don't wait 50 ms before reading ESC sequences
212 <li>watchdog: allow millisecond spec (-t 250ms)
213 <li>zcip: fix unaligned trap on ARM
219 <li><b>4 November 2007 -- BusyBox 1.7.3 (stable)</b>
220 <p><a href="http://busybox.net/downloads/busybox-1.7.3.tar.bz2">BusyBox 1.7.3</a>.
221 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/">svn</a>,
222 <a href="http://busybox.net/downloads/fixes-1.7.3/">patches</a>,
223 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
225 <p>This is a bugfix-only release, with fixes to ash, httpd, inetd, iptun, logger, login, tail.</p>
228 <li><b>30 September 2007 -- BusyBox 1.7.2 (stable)</b>
229 <p><a href="http://busybox.net/downloads/busybox-1.7.2.tar.bz2">BusyBox 1.7.2</a>.
230 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/">svn</a>,
231 <a href="http://busybox.net/downloads/fixes-1.7.2/">patches</a>,
232 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
234 <p>This is a bugfix-only release, with fixes to install, find, login, httpd, runsvdir, chcon, setfiles, fdisk and line editing.</p>
237 <li><b>16 September 2007 -- BusyBox 1.7.1 (stable)</b>
238 <p><a href="http://busybox.net/downloads/busybox-1.7.1.tar.bz2">BusyBox 1.7.1</a>.
239 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/">svn</a>,
240 <a href="http://busybox.net/downloads/fixes-1.7.1/">patches</a>,
241 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
243 <p>This is a bugfix-only release, with fixes to cp, runsv, tar, busybox --install and build system.</p>
246 <li><b>24 August 2007 -- BusyBox 1.7.0 (unstable)</b>
247 <p><a href="http://busybox.net/downloads/busybox-1.7.0.tar.bz2">BusyBox 1.7.0</a>.
248 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_7_stable/">svn</a>,
249 <a href="http://busybox.net/downloads/fixes-1.7.0/">patches</a>,
250 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
252 <p>Applets which had many changes since 1.6.x:
255 <li>works in standalone mode on NOMMU machines now (partly by Alex Landau <landau_alex at yahoo.com>)
256 <li>indexer example is rewritten in C
257 <li>optional support for error pages (by Pierre Metras <genepi at sympatico.ca>)
258 <li>stop reading headers using 1-byte reads
259 <li>new option -v[v]: prints client addresses, HTTP codes returned, URLs
260 <li>extended -p PORT to -p [IP[v6]:]PORT
261 <li>sendfile support (by Pierre Metras <genepi at sympatico.ca>)
262 <li>add support for Status: CGI header
263 <li>fix CGI handling bug (we were closing wrong fd)
264 <li>CGI I/O loop still doesn't look 100% ok to me...
269 <li>add -f "foreground" and -S "syslog" options
270 <li>fixed "ifupdown + udhcpc_without_pidfile_creation" bug
271 <li>new config option "Rewrite the lease file at every new acknowledge" (Mats Erik Andersson <mats at blue2net.com> (Blue2Net AB))
272 <li>consistently treat server_config.start/end IPs as host-order
273 <li>fix IP parsing for 64bit machines
274 <li>fix unsafe hton macro usage in read_opt()
275 <li>do not chdir to / when daemonizing
278 <p>top, ps, killall, pidof:
280 <li>simpler loadavg processing
281 <li>truncate usernames to 8 chars
282 <li>fix non-CONFIG_DESKTOP ps -ww (by rockeychu)
283 <li>improve /proc/PID/cmdinfo reading code
284 <li>use cmdline, not comm field (fixes problems with re-execed applets showing as processes with name "exe", and not being found by pidof/killall by applet name)
285 <li>reduce CPU usage in decimal conversion (optional) (corresponding speedup on kernel side is accepted in mainline Linux kernel, yay!)
286 <li>make percentile (0.1%) calculations configurable
287 <li>add config option and code for global CPU% display
288 <li>reorder columns, so that [P]PIDs are together and VSZ/%MEM are together - makes more sense
291 <p>Build system improvements: doesn't link against libraries we don't need,
292 generates verbose link output and map file, allows for custom link
293 scripts (useful for removing extra padding, among other things).
295 <p>Code and data size in comparison with 1.6.1:<pre>
296 Equivalent .config, i386 glibc dynamic builds:
297 text data bss dec hex filename
298 672671 2768 16808 692247 a9017 busybox-1.6.1/busybox
299 662948 2660 13528 679136 a5ce0 busybox-1.7.0/busybox
300 662783 2631 13416 678830 a5bae busybox-1.7.0/busybox.customld
302 Same .config built against static uclibc:
303 765021 1059 11020 777100 bdb8c busybox-1.7.0/busybox_uc</pre>
305 <p>Code/data shrink done in applets: crond, hdparm, dd, cal, od, nc, expr, uuencode,
306 test, slattach, diff, ping, tr, syslogd, hwclock, zcip, find, pidof, ash, uudecode,
311 <li>pscan, expand, unexpand (from Tito <farmatito at tiscali.it>)
312 <li>setfiles, restorecon (by Yuichi Nakamura <ynakam at hitachisoft.jp>)
313 <li>chpasswd (by Alexander Shishkin <virtuoso at slind.org>)
314 <li>slattach, ttysize
317 <p>Unfortunately, not much work is done on shells. This was mostly stalled
318 by lack of time (read: laziness) on my part to learn how to adapt existing
319 qemu-runnable image for a NOMMU architechture (available on qemu website)
320 for local testing of cross-compiled busybox on my machine.
322 <p>Other changes since previous release (abridged):
324 <li>addgroup: disallow addgroup -g num user group; make -g 0 work (Tito <farmatito at tiscali.it>)
325 <li>adduser: close /etc/{passwd,shadow} before calling passwd etc. Spotted by Natanael Copa <natanael.copa at gmail.com>
326 <li>arping: -i should be -I, fixed
327 <li>ash: make "jobs | cat" work like in bash (was giving empty output)
328 <li>ash: recognize -l as --login equivalent; do not recognize +-login
329 <li>ash: fix buglet in DEBUG code (Nguyen Thai Ngoc Duy <pclouds at gmail.com>)
330 <li>ash: fix SEGV if type has zero parameters
331 <li>awk: fix -F 'regex' bug (miscounted fields if last field is empty)
332 <li>catv: catv without arguments was trying to use environ as argv (Alex Landau <landau_alex at yahoo.com>)
333 <li>catv: don't die on open error (emit warning)
334 <li>chown/chgrp: completely match coreutils 6.8 wrt symlink handling
335 <li>correct_password: do not print "no shadow passwd..." message
336 <li>crond: don't start sendmail with absolute path, don't report obsolete version (report true bbox version)
337 <li>dd: fix bug where we assume count=INT_MAX when count is unspecified
338 <li>devfsd: sanitization by Tito <farmatito at tiscali.it>
339 <li>echo: fix non-fancy echo
340 <li>fdisk: make it work with big disks (read: typical today's disks) even if CONFIG_LFS is unset
341 <li>find: -context support for SELinux (KaiGai Kohei <kaigai at kaigai.gr.jp>)
342 <li>find: add conditional support for -maxdepth and -regex, make -size match GNU find
343 <li>find: fix build failure on certain configs (found by Cristian Ionescu-Idbohrn <cristian.ionescu-idbohrn at axis.com>)
344 <li>fsck_minix: make it print bb version, not it's own (outdated/irrelevant) one
345 <li>grep: implement -m MAX_MATCHES, fix buglets with context printing
346 <li>grep: fix selection done by FEATURE_GREP_EGREP_ALIAS (Maxime Bizon <mbizon at freebox.fr> (Freebox))
347 <li>hush: add missing dependencies (Maxime Bizon <mbizon at freebox.fr> (Freebox))
348 <li>hush: fix read builtin to not read ahead past EOL and to not use insane amounts of stack
349 <li>ifconfig: make it work with ifaces with interface no. > 255
350 <li>ifup/ifdown: make location of ifstate configurable
351 <li>ifupdown: make netmask parsing smaller and more strict (was accepting 255.0.255.0, 255.1234.0.0 etc...)
352 <li>install: fix -s (strip) option, fix install a b /a/link/to/dir
353 <li>libbb: consolidate ARRAY_SIZE macro (Walter Harms <wharms at bfs.de>)
354 <li>libbb: make /etc/network parsing configurable. -200 bytes when off
355 <li>libbb: nuke BB_GETOPT_ERROR, always die if there are mutually exclusive options
356 <li>libbb: xioctl and friends by Tito <farmatito at tiscali.it>
357 <li>login: optional support for PAM
358 <li>login: make /etc/nologin support configurable (-240 bytes)
359 <li>login: ask passwords even for wrong usernames
360 <li>md5_sha1_sum: fix mishandling when run as /bin/md5sum
361 <li>mdev: add support for firmware loading
362 <li>mdev: work even when CONFIG_SYSFS_DEPRECATED in kernel is off
363 <li>modprobe: add scanning of /lib/modules/`uname -r`/modules.symbols (by Yann E. MORIN <yann.morin.1998 at anciens.enib.fr>)
364 <li>more: fixes by Tristan Schmelcher <tpkschme at engmail.uwaterloo.ca>
365 <li>nc: make connecting to IPv4 from IPv6-enabled hosts easier (was requiring -s local_addr)
366 <li>passwd: fix bug "updating shadow even if user's record is in passwd"
367 <li>patch: fix -p -1 handling
368 <li>patch: fix bad line ending handling (Nguyen Thai Ngoc Duy <pclouds at gmail.com>)
369 <li>ping: display roundtrip times with 1/1000th of ms, not 1/10 ms precision.
370 <li>ping: fix incorrect handling of -I (Iouri Kharon <bc-info at styx.cabel.net>)
371 <li>ping: fix non-fancy ping6
372 <li>printenv: fix "printenv VAR1 VAR2" bug (spotted by Kalyanatejaswi Balabhadrapatruni <kalyanatejaswi at yahoo.co.in>)
373 <li>ps: fix -Z (by Yuichi Nakamura <ynakam at hitachisoft.jp>)
374 <li>rpm: add optional support for bz2 data. +50 bytes of code
375 <li>rpm: fix bogus "package is not installed" case
376 <li>sed: fix 'q' command handling (by Nguyen Thai Ngoc Duy <pclouds at gmail.com>)
377 <li>start_stop_daemon: NOMMU fixes by Alex Landau <landau_alex at yahoo.com>
378 <li>stat: fix option -Z SEGV
379 <li>strings: strings a b was processing a twice, fix that
380 <li>svlogd: fix timestamping, do not warn if config is missing
381 <li>syslogd, logread: get rid of head pointer, fix logread bug in the process
382 <li>syslogd: do not convert tabs to ^I, set syslog IPC buffer to mode 0644
383 <li>tar: improve OLDGNU compat, make old SUN compat configurable
384 <li>test: fix testing primary expressions like '"-u" = "-u"'
385 <li>uudecode: fix to base64 decode by Jorgen Cederlof <jcz at google.com>
386 <li>vi: multiple fixes by Natanael Copa <natanael.copa at gmail.com>
387 <li>wget: fix bug in base64 encoding (bug 1404). +10 bytes
388 <li>wget: lift 256 chars limitation on terminal width
389 <li>wget, zcip: use monotonic_sec instead of gettimeofday
394 <li><b>30 June 2007 -- BusyBox 1.6.1 (stable)</b>
395 <p><a href="http://busybox.net/downloads/busybox-1.6.1.tar.bz2">BusyBox 1.6.1</a>.
396 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_6_stable/">svn</a>,
397 <a href="http://busybox.net/downloads/fixes-1.6.1/">patches</a>,
398 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
400 <p>This is a bugfix-only release, with fixes to echo, hush, and wget.</p>
403 <li><b>1 June 2007 -- BusyBox 1.6.0 (unstable)</b>
404 <p><a href="http://busybox.net/downloads/busybox-1.6.0.tar.bz2">BusyBox 1.6.0</a>.
405 (<a href="http://busybox.net/cgi-bin/viewcvs.cgi/branches/busybox_1_6_stable/">svn</a>,
406 <a href="http://busybox.net/downloads/fixes-1.6.0/">patches</a>,
407 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
409 <p>Since this is a x.x.0 release, it probably does not deserve "stable"
410 label. Please help making 1.6.1 stable by testing 1.6.0.</p>
411 <p>Note that hush shell had many changes and (hopefully) is much improved now,
412 but there is a possibility that it regressed in some obscure cases. Please
413 report any such cases.</p>
414 <p>lash users please note: lash is going to be deprecated in busybox 1.7.0
415 and removed in the more distant future. Please migrate to hush.</p>
416 <p><a href="http://busybox.net/~vda/mem_usage-1.6.0.txt">Memory usage has decreased, but we can do better still</a></p>
417 <p>Other changes since previous release:
419 <li>NOFORK: audit small applets and mark some of them as NOFORK. Put big scary warnings in relevant places
420 <li>NOFORK: factor out NOFORK/NOEXEC code from find. Use NOFORK/NOEXEC in find and xargs
421 <li>NOFORK: remove potential xmalloc from NOFORK path in bb_full_fd_action
422 <li>NOMMU: random fixes; compressed --help now works for NOMMU
423 <li>SELinux: load_policy applet
424 <li>[u]mount: extend -t option (Roy Marples <uberlord at gentoo.org>)
425 <li>addgroup: clean up, fix adding users to existing groups and make it optional (Tito)
426 <li>adduser: don't bomb out if shadow password file doesn't exist (from Tito <farmatito at tiscali.it>)
427 <li>applet.c: do not even try to read config if run by real root; fix suid config handling
428 <li>ash: fix infinite loop on exit if tty is not there anymore
429 <li>ash: fix kill -l (by Mats Erik Andersson <mats.andersson64 at comhem.se>)
430 <li>ash: implement type -p, costs less than 10 bytes (patch by Mats Erik Andersson <mats.andersson64 at comhem.se>)
431 <li>awk: don't segfault on printf(%*s). Closes bug 1337
432 <li>awk: guard against empty environment
433 <li>awk: some 'lineno' vars were shorts, made them ints (code got smaller)
434 <li>cat: stop using stdio.h opens
435 <li>config system: clarify PREFER_APPLETS/SH_STANDALONE effects in help text
436 <li>cryptpw: new applet (by Thomas Lundquist <lists at zelow.no>)
437 <li>cttyhack: new applet
438 <li>dd: NOEXEC fix; fix skip= parse error (spotted by Dirk Clemens <develop at cle-mens.de>)
439 <li>deluser: add optional support for removing users from groups (by Tito <farmatito at tiscali.it>)
440 <li>diff: fix SEGV (NULL deref) in diff -N
441 <li>diff: fix segfault on empty dirs (Peter Korsgaard <peter.korsgaard at barco.com>)
442 <li>dnsd: fix several buglets, make smaller; openlog(), so that applet's name is logged
443 <li>dpkg: run_package_script() returns 0 if all ok and non-zero if failure. The result code was checked incorrectly in two places. (from Kim B. Heino <Kim.Heino at bluegiga.com>)
444 <li>dpkg: use bitfields which are a bit closer to typical short/char. Code size -800 bytes
445 <li>dumpleases: getopt32()-ization (from Mats Erik Andersson <mats.andersson64 at comhem.se>)
446 <li>e2fsprogs: stop using statics in chattr. Minor code shrinkage (-130 bytes)
447 <li>ether-wake: close bug 1317. Reorder fuctions to avoid forward refs while at it
448 <li>ether-wake: save a few more bytes of code
449 <li>find: -group, -depth (Natanael Copa <natanael.copa at gmail.com>)
450 <li>find: add support for -delete, -path (by Natanael Copa)
451 <li>find: fix -prune. Add big comment about it
452 <li>find: improve usage text (Natanael Copa <natanael.copa at gmail.com>)
453 <li>find: missed 'static' on const data; size and prune were mixed up; use index_in_str_array
454 <li>find: un-DESKTOPize (Kai Schwenzfeier <niteblade at gmx.net>)
455 <li>find_root_device: teach to deal with /dev/ subdirs (by Kirill K. Smirnov <lich at math.spbu.ru>)
456 <li>find_root_device: use lstat - don't follow links
457 <li>getopt32: fix llist_t options ordering. llist_rev is now unused
458 <li>getopt: use getopt32 for option parsing - inspired by patch by Mats Erik Andersson <mats.andersson64 at comhem.se>
459 <li>hdparm: fix multisector mode setting (from Toni Mirabete <amirabete at catix.cat>)
460 <li>hdparm: make -T -t code smaller (-194 bytes), and output prettier
461 <li>ifupdown: make it possible to use DHCP clients different from udhcp
462 <li>ifupdown: reread state file before rewriting it. Fixes "ifup started another ifup" state corruption bug. Patch by Natanael Copa <natanael.copa at gmail.com>
463 <li>ifupdown: small optimization (avoid doing useless work if we are not going to update state file)
464 <li>ip: fix compilation if FEATURE_TR_CLASSES is off
465 <li>ip: mv ip*_main into ip.c; use a dispatcher to save on needless duplication. Saves a minor 12b
466 <li>ip: rewrite the ip applet to be less bloaty. Convert to index_in_(sub)str_array()
467 <li>ip: set the scope properly. Thanks to Jean Wolter
468 <li>iplink: shrink iplink; sanitize libiproute a bit (-916 bytes)
469 <li>iproute: shrink a bit (-200 bytes)
470 <li>kill: know much more signals; make code smaller; use common code for kill applet and ash kill builtin
471 <li>klogd: remove dependency on syslogd
472 <li>lash: "forking" applets are actually can be treated the same way as "non-forked". Also save a bit of space on trailing NULL array elements.
473 <li>lash: fix kill buglet (didn't properly recognize ESRCH)
474 <li>lash: make -c work; crush buffer overrun and free of non-malloced ptr (from Mats Erik Andersson <mats.andersson64 at comhem.se>)
475 <li>lash: recognize and use NOFORK applets
476 <li>less: fix case when regex search finds nothing; fix very obscure memory corruption bug; fix less <HUGEFILE + [End] busy loop
477 <li>libbb: add xsendto, xunlink, xpipe
478 <li>libbb: fix segfault in reset_ino_dev_hashtable() when *hashtable was NULL
479 <li>libbb: make pidfile writing configurable
480 <li>libbb: make xsocket die with address family printed (if VERBOSE_RESOLUTION_ERRORS=y)
481 <li>libbb: rework NOMMU helper API so that it makes more sense and easier to use
482 <li>libiproute: audit callgraph, shortcut error paths into die() functions
483 <li>lineedit: do not try to open NULL history file
484 <li>lineedit: nuke two unused variables and code which sets them
485 <li>login: remove setpgrp call (makes it work from shell prompt again); sanitize stdio descriptors (we are suid, need to be careful!)
486 <li>login: shrink login and set_environment by ~100 bytes
487 <li>mount: fix incorrect usage of strtok (inadvertently used NULL sometimes)
488 <li>mount: fix mounting of symlinks (mount from util-linux allows that)
489 <li>msh: data/bss reduction (more than 9k of it); fix "underscore bug" (a_b=1111 didn't work); fix obscure case with backticks and closed fd 1
490 <li>nc: port nc 1.10 to busybox
491 <li>netstat: fix for bogus state value for raw sockets
492 <li>netstat: introduce -W: wide, ipv6-friendly output; shrink by ~500 bytes
493 <li>nmeter: should die if stdout doesn't like him anymore
494 <li>patch: do not try to delete same file twice
495 <li>ping: fix wrong sign extension of packet id (bug 1373)
496 <li>ps: add -o tty and -o rss support; make a bit smaller; work around libc bug: printf("%.*s\n", MAX_INT, buffer)
497 <li>run_parts: rewrite
498 <li>run_parts: do not check path portion of a name for "bad chars". Needed for ifupdown. Patch by Gabriel L. Somlo <somlo at cmu.edu>
499 <li>sed: fix escaped newlines in -f
500 <li>split: new applet
501 <li>stat: remove superfluous bss user (flags) and manually unswitch some areas
502 <li>stty: fix option parsing bug (spotted by Sascha Hauer <s.hauer at pengutronix.de>)
503 <li>svlogd: fix 'SEGV on uninitialized data' and make it honor TERM
504 <li>tail: fix SEGV on "tail -N"
505 <li>ipsvd: tcpsvd,udpsvd are new applets, GPL-ed 'clones' of Dan Bernstein's tcpserver. Author: Gerrit Pape <pape at smarden.org>, http://smarden.sunsite.dk/ipsvd/
506 <li>test: close bug 1371; plug a memory leak; code size reduction
507 <li>tftp: code diet, and I think retransmits were broken
508 <li>tr: fix bug where we did not reject invalid classes like '[[:alpha'. debloat while at it
509 <li>udhcp: MAC_BCAST_ADDR and blank_chaddr are in fact constant, move to rodata; use pipe instead of socketpair
510 <li>udhcp[cd]: stop using atexit magic fir pidfile removal; stop deleting our own pidfile if we daemonize
511 <li>xargs: shrink code, ~80 bytes; simplify word list management
512 <li>zcip: make it work on NOMMU (+ improve NOMMU support machinery)
517 <li><b>20 May 2007 -- BusyBox 1.5.1 (stable)</b>
518 <p><a href="http://busybox.net/downloads/busybox-1.5.1.tar.bz2">BusyBox 1.5.1</a>.
519 (<a href="http://busybox.net/downloads/fixes-1.5.1/">patches</a>,
520 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
522 <p>This is a bugfix-only release, with fixes to hdparm, hush, ifupdown, ps
526 <li><b>23 March 2007 -- BusyBox 1.5.0 (unstable)</b>
527 <p><a href="http://busybox.net/downloads/busybox-1.5.0.tar.bz2">BusyBox 1.5.0</a>.
528 (<a href="http://busybox.net/downloads/fixes-1.5.0/">patches</a>,
529 <a href="http://busybox.net/fix.html">how to add a patch</a>)</p>
531 <p>Since this is a x.x.0 release, it probably does not deserve "stable"
532 label. Please help making 1.5.1 stable by testing 1.5.0.</p>
533 <p>Notable changes since previous release:
535 <li>find: added support for -user, -not, fixed -mtime, -mmin, -perm
536 <li>[de]archivers: merge common logic into one module
537 <li>ping[6]: unified code for both
538 <li>less: regex search improved
539 <li>ash: more readable code, testsuite added
540 <li>sed: several very obscure bugs fixed
541 <li>chown: -H, -L, -P support (required by POSIX)
542 <li>tar: handle (broken) checksums a-la Sun; tar restores mode again
543 <li>grep: implement -w, "implement" -a and -I by ignoring them
544 <li>cp: more sane behavior when overwriting existing files
545 <li>init: stop doing silly things with the console (-400 bytes)
546 <li>httpd: make httpd usable for NOMMU CPUs; fix POSTDATA handling bugs
547 <li>httpd: run interpreter for configured file extensions in any dir,
548 not only in /cgi-bin/
550 <li>SELinux: SELinux-related code and -Z option added to several applets,
551 new SELinux-specific applets: chcon, runcon.
552 <li>Build system: produces link map, uses -Wwrite-strings to catch
553 improper usage of string constants.
554 <li>Data and bss section usage audited and reduced - should help NOMMU
556 <li>Applets with bug fixes: gunzip, vi, syslogd, dpkg, ls, adjtimex, resize,
557 sv, printf, diff, awk, sort, dpkg, diff, tftp
558 <li>Applets with usability improvements: swapon, more, ifup/ifdown, hwclock,
559 udhcpd, start_stop_daemon, cmp
560 <li>Applets with code cleaned up: telnet, fdisk, fsck_minix, mkfs_minix,
561 syslogd, swapon, runsv, svlogd, klogd
566 <li><b>18 March 2007 -- BusyBox 1.4.2 (stable)</b>
567 <p><a href="http://busybox.net/downloads/busybox-1.4.2.tar.bz2">BusyBox 1.4.2</a>.
570 <p>This release includes only trivial fixes accumulated since 1.4.1.
574 <li><b>25 January 2007 -- BusyBox 1.4.1 (stable)</b>
575 <p><a href="http://busybox.net/downloads/busybox-1.4.1.tar.bz2">BusyBox 1.4.1</a>.
576 (<a href="http://busybox.net/downloads/fixes-1.4.1/">patches</a>)</p>
578 <p>This release includes only trivial fixes accumulated since 1.4.0.
582 <li><b>20 January 2007 -- BusyBox 1.4.0 (stable)</b>
583 <p><a href="http://busybox.net/downloads/busybox-1.4.0.tar.bz2">BusyBox 1.4.0</a>.
584 (<a href="http://busybox.net/downloads/fixes-1.4.0/">patches</a>)</p>
586 <p>Since this is a x.x.0 release, it probably is a bit less "stable"
588 <p>Changes since previous release:
590 <li>e2fsprogs are mostly removed from busybox. Some smaller parts remain,
591 the rest of it sits disabled in e2fsprogs/old_e2fsprogs/*, because
592 it's too bloated. Really. I'm afraid it's about the only way we can
593 ever get e2fsprogs cleaned up.
594 <li>less: many improvements. Now can display binary files
595 (although I expect it to have trouble with displays where 8bit chars
596 don't have 1-to-1 char/glyph relationship). Regexp search is not buggy
597 anymore. Less does not read entire input up-front. Reads input
598 as it appears (yay!). Works rather nice as man pager. I recommend it
600 <li>IPv6: generic support is in place, many networking applets are
601 upgraded to be IPv6 capable. Probably some work remains, but it is
602 already much better than what we had previously.
603 <li>arp: new applet (thanks to Eric Spakman).
604 <li>fakeidentd: non-forking standalone server part was taking ~90%
605 of the applet. Factored it out (in fact, rewrote it).
606 <li>syslogd: mostly rewritten.
607 <li>decompress_unzip, gzip: sanitized a bit.
608 <li>sed: better hadling of NULs
609 <li>httpd: stop adding our own "Content-type:" to CGI output
610 <li>chown: user.grp works again.
611 <li>minor bugfixes to: passwd, date, tftp, start_stop_daemon, tar,
612 ps, ifupdown, time, su, stty, awk, ping[6], sort,...
617 <li><b>20 January 2007 -- BusyBox 1.3.2 (stable)</b>
618 <p><a href="http://busybox.net/downloads/busybox-1.3.2.tar.bz2">BusyBox 1.3.2</a>.</p>
620 <p>This release includes only one trivial fix accumulated since 1.3.1
624 <li><b>27 December 2006 -- BusyBox 1.3.1 (stable)</b>
625 <p><a href="http://busybox.net/downloads/busybox-1.3.1.tar.bz2">BusyBox 1.3.1</a>.
626 (<a href="http://busybox.net/downloads/fixes-1.3.1/">patches</a>)</p>
628 <p>Closing 2006 with new release. It includes only trivial fixes accumulated since 1.3.0
632 <li><b>14 December 2006 -- BusyBox 1.3.0 (stable)</b>
633 <p><a href="http://busybox.net/downloads/busybox-1.3.0.tar.bz2">BusyBox 1.3.0</a>.
634 (<a href="http://busybox.net/downloads/fixes-1.3.0/">patches</a>)</p>
636 <p>This release has CONFIG_DESKTOP option which enables features
637 needed for busybox usage on desktop machine. For example, find, chmod
638 and chown get several less frequently used options, od is significantly
639 bigger but matches GNU coreutils, etc. Intended to eventually make
640 busybox a viable alternative for "standard" utilities for slightly
641 adventurous desktop users.
642 <p>Changes since previous release:
644 <li>find: taking many more of standard options
645 <li>ps: POSIX-compliant -o implemented
647 <li>grep: added -r, fixed -h
648 <li>watch: make it exec child like standard one does (was totally
650 <li>tar: fix limitations which were preventing bbox tar usage
651 on big directories: long names and linknames, pax headers
652 (Linux kernel tarballs have that). Fixed a number of obscure bugs.
653 Raised max file limit (now 64Gb). Security fixes (/../ attacks).
654 <li>httpd: added -i (inetd), -f (foreground), support for
655 directory indexer CGI (example is included), bugfixes.
656 <li>telnetd: fixed/improved IPv6 support, inetd+standalone support,
657 other fixes. Useful IPv6 stuff factored out into libbb.
658 <li>runit/*: new applets adapted from http://smarden.sunsite.dk/runit/
659 (these are my personal favorite small-and-beautiful toys)
660 <li>minor bugfixes to: login, dd, mount, umount, chmod, chown, ln, udhcp,
661 fdisk, ifconfig, sort, tee, mkswap, wget, insmod.
663 <p>Note that GnuPG key used to sign this release is different.
664 1.2.2.1 is also signed post-factum now. Sorry for the mess.
668 <li><b>29 October 2006 -- BusyBox 1.2.2.1 (fix)</b>
669 <p><a href="http://busybox.net/downloads/busybox-1.2.2.1.tar.bz2">BusyBox 1.2.2.1</a>.</p>
671 <p>Added compile-time warning that static linking against glibc
672 produces buggy executables.
675 <li><b>24 October 2006 -- BusyBox 1.2.2 (stable)</b>
676 <p>It's a bit overdue, but
677 <a href="http://busybox.net/downloads/busybox-1.2.2.tar.bz2">here is
678 BusyBox 1.2.2</a>.</p>
680 <p>This release has dozens of fixes backported from the ongoing development
681 branch. There are a couple of bugfixes to sed, two fixes to documentation
682 generation (BusyBox.html shouldn't have USE() macros in it anymore), fix
683 umount to report the right errno on failure and to umount block devices by
684 name with newer kernels, fix mount to handle symlinks properly, make mdev
685 delete device nodes when called for hotplug remove, fix a segfault
686 in traceroute, a minor portability fix to md5sum option parsing, a build
687 fix for httpd with old gccs, an options parsing tweak to hdparm, make test
688 fail gracefully when getgroups() returns -1, fix a race condition in
689 modprobe when two instances run at once (hotplug does this), make "tar xf
690 foo.tar dir/dir" extract all subdirectories, make our getty initialize the
691 terminal more like mingetty, an selinux build fix, an endianness fix in
692 ping6, fix for zcip defending addresses, clean up some global variables in
693 gzip to save memory, fix sulogin -tNNN, a help text tweak, several warning
694 fixes and build fixes, fixup dnsd a bit, and a partridge in a pear tree.</p>
696 <p>As <a href="http://lwn.net/Articles/202106/">Linux Weekly News noted</a>,
697 this is my (Rob's) last release of BusyBox. The new maintainer is Denis
698 Vlasenko, I'm off to do <a href="http://landley.net/code">other things</a>.
702 <li><b>29 September 2006 -- New license email address.</b>
703 <p>The email address gpl@busybox.net is now the recommended way to contact
704 the Software Freedom Law Center to report BusyBox license violations.</p>
706 <li><b>31 July 2006 -- BusyBox 1.2.1 (stable)</b>
707 <p>Since nobody seems to have objected too loudly over the weekend, I
708 might as well point you all at
709 <a href="http://busybox.net/downloads/busybox-1.2.1.tar.bz2">Busybox
710 1.2.1</a>, a bugfix-only release with no new features.</p>
712 <p>It has three shell fixes (two to lash: going "var=value" without
713 saying "export" should now work, plus a missing null pointer check, and
714 one to ash when redirecting output to a file that fills up.) Fix three
715 embarassing thinkos in the new dmesg command. Two build tweaks
716 (dependencies for the compressed usage messages and running make in the
717 libbb subdirectory). One fix to tar so it can extract git-generated
718 tarballs (rather than barfing on the pax extensions). And a partridge
719 in a pear... Ahem.</p>
721 <p>But wait, there's more! A passwd changing fix so an empty
722 gecos field doesn't trigger a false objection that the new passwd contains
723 the gecos field. Make all our setuid() and setgid() calls check the return
724 value in case somebody's using per-process resource limits that prevent
725 a user from having too many processes (and thus prevent a process from
726 switching away from root, in which case the process will now _die_ rather
727 than continue with root privileges). A fix to adduser to make sure that
728 /etc/group gets updated. And a fix to modprobe to look for modules.conf
729 in the right place on 2.6 kernels.</p>
731 <li><b>30 June 2006 -- BusyBox 1.2.0</b>
732 <p>The -devel branch has been stabilized and the result is
733 <a href="http://busybox.net/downloads/busybox-1.2.0.tar.bz2">Busybox
734 1.2.0</a>. Lots of stuff changed, I need to work up a decent changelog
735 over the weekend.</p>
737 <p>I'm still experimenting with how long is best for the development
738 cycle, and since we've got some largeish projects queued up I'm going to
739 try a longer one. Expect 1.3.0 in December. (Expect 1.2.1 any time
740 we fix enough bugs. :)</p>
742 <p>Update: Here are <a href="http://busybox.net/downloads/busybox-1.2.0.fixes.patch">the first few bug fixes</a> that will go into 1.2.1.</p>
744 <li><b>17 May 2006 -- BusyBox 1.1.3 (stable)</b>
745 <p><a href="http://busybox.net/downloads/busybox-1.1.3.tar.bz2">BusyBox
746 1.1.3</a> is another bugfix release. It makes passwd use salt, fixes a
747 memory freeing bug in ls, fixes "build all sources at once" mode, makes
748 mount -a not abort on the first failure, fixes msh so ctrl-c doesn't kill
749 background processes, makes patch work with patch hunks that don't have a
750 timestamp, make less's text search a lot more robust (the old one could
751 segfault), and fixes readlink -f when built against uClibc.</p>
753 <p>Expect 1.2.0 sometime next month, which won't be a bugfix release.</p>
755 <li><b>10 April 2006 -- BusyBox 1.1.2 (stable)</b>
756 <p>You can now download <a href="http://busybox.net/downloads/busybox-1.1.2.tar.bz2">BusyBox 1.1.2</a>, a bug fix release consisting of 11 patches
757 backported from the development branch: Some build fixes, several fixes
758 for mount and nfsmount, a fix for insmod on big endian systems, a fix for
759 find -xdev, and a fix for comm. Check the file "changelog" in the tarball
762 <p>The next new development release (1.2.0) is slated for June. A 1.1.3
763 will be released before then if more bug fixes crop up. (The new plan is
764 to have a 1.x.0 new development release every 3 months, with 1.x.y stable
765 bugfix only releases based on that as appropriate.)</p>
767 <li><b>27 March 2006 -- Software Freedom Law Center representing BusyBox and uClibc</b>
768 <p>One issue Erik Andersen wanted to resolve when handing off BusyBox
769 maintainership to Rob Landley was license enforcement. BusyBox and
770 uClibc's existing license enforcement efforts (pro-bono representation
771 by Erik's father's law firm, and the
772 <a href="http://www.busybox.net/shame.html">Hall of Shame</a>), haven't
773 scaled to match the popularity of the projects. So we put our heads
774 together and did the obvious thing: ask Pamela Jones of
775 <a href="http://www.groklaw.net">Groklaw</a> for suggestions. She
776 referred us to the fine folks at softwarefreedom.org.</p>
778 <p>As a result, we're pleased to announce that the
779 <a href="http://www.softwarefreedom.org">Software Freedom Law Center</a>
780 has agreed to represent BusyBox and uClibc. We join a number of other
781 free and open source software projects (such as
782 <a href="http://lwn.net/Articles/141806/">X.org</a>,
783 <a href="http://lwn.net/Articles/135413/">Wine</a>, and
784 <a href="http://plone.org/foundation/newsitems/software-freedom-law-center-support/">Plone</a>
785 in being represented by a fairly cool bunch of lawyers, which is not a
786 phrase you get to use every day.</p>
788 <li><b>22 March 2006 -- BusyBox 1.1.1</b>
789 <p>The new maintainer is Rob Landley, and the new release is <a href="http://busybox.net/downloads/busybox-1.1.1.tar.bz2">BusyBox 1.1.1</a>. Expect a "what's new" document in a few days. (Also, Erik and I have have another announcement pending...)</p>
790 <p>Update: Rather than put out an endless stream of 1.1.1.x releases,
791 the various small fixes have been collected together into a
792 <a href="http://busybox.net/downloads/busybox-1.1.1.fixes.patch">patch</a>,
793 and new fixes will be appended to that as needed. Expect 1.1.2 around
796 <li><b>11 January 2006 -- 1.1.0 is out</b>
797 <p>The new stable release is
798 <a href="http://www.busybox.net/downloads/busybox-1.1.0.tar.bz2">BusyBox
799 1.1.0</a>. It has a number of improvements, including several new applets.
800 (It also has <a href="http://www.busybox.net/lists/busybox/2006-January/017733.html">a few rough spots</a>,
801 but we're trying out a "release early, release often" strategy to see how
802 that works. Expect 1.1.1 sometime in March.)</p>
804 <li><b>31 October 2005 -- 1.1.0-pre1</b>
805 <p>The development branch of busybox is stable enough for wider testing, so
807 <a href="http://www.busybox.net/downloads/busybox-1.1.0-pre1.tar.bz2">download</a>,
808 the first prerelease of 1.1.0. This prerelease includes a lot of
809 <a href="http://www.busybox.net/downloads/BusyBox.html">new
810 functionality</a>: new applets, new features, and extensive rewrites of
811 several existing applets. This prerelease should be noticeably more
812 <a href="http://www.opengroup.org/onlinepubs/009695399/">standards
813 compliant</a> than earlier versions of busybox, although we're
814 still working out the <a href="http://bugs.busybox.net">bugs</a>.</p>
816 <li><b>16 August 2005 -- 1.01 is out</b>
818 <p>A new stable release (<a href="http://www.busybox.net/downloads/busybox-1.01.tar.bz2">BusyBox
819 1.01</a>) is now available for download, containing over a hundred
820 <a href="http://www.busybox.net/lists/busybox/2005-August/015424.html">small
821 fixes</a> that have cropped up since the 1.00 release.</p>
823 <li><b>13 January 2005 -- Bug and Patch Tracking</b><p>
825 Bug reports sometimes get lost when posted to the mailing list. The
826 developers of BusyBox are busy people, and have only so much they can keep
827 in their brains at a time. In my case, I'm lucky if I can remember my own
828 name, much less a bug report posted last week... To prevent your bug report
829 from getting lost, if you find a bug in BusyBox, please use the
830 <a href="http://bugs.busybox.net/">shiny new Bug and Patch Tracking System</a>
831 to post all the gory details.
835 The same applies to patches... Regardless of whether your patch
836 is a bug fix or adds spiffy new features, please post your patch
837 to the Bug and Patch Tracking System to make certain it is
842 <li><b>13 October 2004 -- BusyBox 1.00 released</b><p>
844 When you take a careful look at nearly every embedded Linux device or
845 software distribution shipping today, you will find a copy of BusyBox.
846 With countless routers, set top boxes, wireless access points, PDAs, and
847 who knows what else, the future for Linux and BusyBox on embedded devices
848 is looking very bright.
852 It is therefore with great satisfaction that I declare each and every
853 device already shipping with BusyBox is now officially out of date.
854 The highly anticipated release of BusyBox 1.00 has arrived!
858 Over three years in development, BusyBox 1.00 represents a tremendous
859 improvement over the old 0.60.x stable series. Now featuring a Linux
860 KernelConf based configuration system (as used by the Linux kernel),
861 Linux 2.6 kernel support, many many new applets, and the development
862 work and testing of thousands of people from around the world.
866 If you are already using BusyBox, you are strongly encouraged to upgrade to
867 BusyBox 1.00. If you are considering developing an embedded Linux device
868 or software distribution, you may wish to investigate if using BusyBox is
869 right for your application. If you need help getting started using
870 BusyBox, if you wish to donate to help cover expenses, or if you find a bug
871 and need help reporting it, you are invited to visit the <a
872 href="FAQ.html">BusyBox FAQ</a>.
876 As usual you can <a href="downloads">download busybox here</a>.
881 <li><b>Old News</b><p>
882 <a href="/oldnews.html">Click here to read older news</a>
885 <li><b>16 August 2004 -- BusyBox 1.0.0-rc3 released</b><p>
887 Here goes release candidate 3...
889 The <a href="downloads/Changelog">changelog</a> has all the details.
890 And as usual you can <a href="downloads">download busybox here</a>.
895 <li><b>26 July 2004 -- BusyBox 1.0.0-rc2 released</b><p>
897 Here goes release candidate 2...
899 The <a href="downloads/Changelog">changelog</a> has all the details.
900 And as usual you can <a href="downloads">download busybox here</a>.
905 <li><b>20 July 2004 -- BusyBox 1.0.0-rc1 released</b><p>
907 Here goes release candidate 1... This fixes all (most?) of the problems
908 that have turned up since -pre10. In particular, loading and unloading of
909 kernel modules with 2.6.x kernels should be working much better.
912 I <b>really</b> want to get BusyBox 1.0.0 released soon and I see no real
913 reason why the 1.0.0 release shouldn't happen with things pretty much as
914 is. BusyBox is in good shape at the moment, and it works nicely for
915 everything that I'm doing with it. And from the reports I've been getting,
916 it works nicely for what most everyone else is doing with it as well.
917 There will eventually be a 1.0.1 anyway, so we might as well get on with
918 it. No, BusyBox is not perfect. No piece of software ever is. And while
919 there is still plenty that can be done to improve things, most of that work
920 is waiting till we can get a solid 1.0.0 release out the door....
923 Please do not bother to send in patches adding cool new features at this
924 time. Only bug-fix patches will be accepted. If you have submitted a
925 bug-fixing patch to the busybox mailing list and no one has emailed you
926 explaining why your patch was rejected, it is safe to say that your patch
927 has been lost or forgotten. That happens sometimes. Please re-submit your
928 bug-fixing patch to the BusyBox mailing list, and be sure to put "[PATCH]"
929 at the beginning of the email subject line!
932 The <a href="downloads/Changelog">changelog</a> has all the details.
933 And as usual you can <a href="downloads">download busybox here</a>.
938 On a less happy note, My 92 year old grandmother (my dad's mom) passed away
939 yesterday (June 19th). The funeral will be Thursday in a little town about
940 2 hours south of my home. I've checked and there is absolutely no way I
941 could be back in time for the funeral if I attend <a
942 href="http://www.linuxsymposium.org/2004/">OLS</a> and give my presentation
945 As such, it is with great reluctance and sadness that I have come
946 to the conclusion I will have to make my appologies and skip OLS
952 <li><b>13 April 2004 -- BusyBox 1.0.0-pre10 released</b><p>
954 Ok, I lied. It turns out that -pre9 will not be the final BusyBox
955 pre-release. With any luck however -pre10 will be, since I <b>really</b>
956 want to get BusyBox 1.0.0 released very soon. As usual, please do not
957 bother to send in patches adding cool new features at this time. Only
958 bug-fix patches will be accepted. It would also be <b>very</b> helpful if
959 people could continue to review the BusyBox documentation and submit
963 The <a href="downloads/Changelog">changelog</a> has all the details.
964 And as usual you can <a href="downloads">download busybox here</a>.
971 <li><b>6 April 2004 -- BusyBox 1.0.0-pre9 released</b><p>
973 Here goes the final BusyBox pre-release... This is your last chance for
974 bug fixes. With luck this will be released as BusyBox 1.0.0 later this
975 week. Please do not bother to send in patches adding cool new features at
976 this time. Only bug-fix patches will be accepted. It would also be
977 <b>very</b> helpful if people could help review the BusyBox documentation
978 and submit improvements. I've spent a lot of time updating the
979 documentation to make it better match reality, but I could really use some
980 assistance in checking that the features supported by the various applets
981 match the features listed in the documentation.
984 I had hoped to get this released a month ago, but
985 <a href="http://codepoet.org/gallery/baby_peter/img_1796">
986 another release on 1 March 2004</a> has kept me busy...
989 The <a href="downloads/Changelog">changelog</a> has all the details.
990 And as usual you can <a href="downloads">download busybox here</a>.
997 <li><b>23 February 2004 -- BusyBox 1.0.0-pre8 released</b><p>
999 Here goes yet another BusyBox pre-release... Please do not bother to send
1000 in patches supplying new features at this time. Only bug-fix patches will
1001 be accepted. If you have a cool new feature you would like to see
1002 supported, or if you have an amazing new applet you would like to submit,
1003 please wait and submit such things later. We really want to get a release
1004 out we can all be proud of. We are still aiming to finish off the -pre
1005 series in February and move on to the final 1.0.0 release... So if you
1006 spot any bugs, now would be an excellent time to send in a fix to the
1007 busybox mailing list. It would also be <b>very</b> helpful if people could
1008 help review the BusyBox documentation and submit improvements. It would be
1009 especially helpful if people could check that the features supported by the
1010 various applets match the features listed in the documentation.
1014 The <a href="downloads/Changelog">changelog</a> has all the details.
1015 And as usual you can <a href="downloads">download busybox here</a>.
1021 <li><b>4 February 2004 -- BusyBox 1.0.0-pre7 released</b><p>
1023 There was a bug in -pre6 that broke argument parsing for a
1024 number of applets, since a variable was not being zeroed out
1025 properly. This release is primarily intended to fix that one
1026 problem. In addition, this release fixes several other
1027 problems, including a rewrite by mjn3 of the code for parsing
1028 the busybox.conf file used for suid handling, some shell updates
1029 from vodz, and a scattering of other small fixes. We are still
1030 aiming to finish off the -pre series in February and move on to
1031 the final 1.0.0 release... If you see any problems, of have
1032 suggestions to make, as always, please feel free to email the
1033 busybox mailing list.
1037 The <a href="downloads/Changelog">changelog</a> has all
1038 the details. And as usual you can
1039 <a href="downloads">download busybox here</a>.
1046 <li><b>30 January 2004 -- BusyBox 1.0.0-pre6 released</b><p>
1048 Here goes the next pre-release for the new BusyBox stable
1049 series. This release adds a number of size optimizations,
1050 updates udhcp, fixes up 2.6 modutils support, updates ash
1051 and the shell command line editing, and the usual pile of
1052 bug fixes both large and small. Things appear to be
1053 settling down now, so with a bit of luck and some testing
1054 perhaps we can finish off the -pre series in February and
1055 move on to the final 1.0.0 release... If you see any
1056 problems, of have suggestions to make, as always, please
1057 feel free to email the busybox mailing list.
1061 People who rely on the <a href="downloads/snapshots/">daily BusyBox snapshots</a>
1062 should be aware that snapshots of the old busybox 0.60.x
1063 series are no longer available. Daily snapshots are now
1064 only available for the BusyBox 1.0.0 series and now use
1065 the naming scheme "busybox-<date>.tar.bz2". Please
1066 adjust any build scripts using the old naming scheme accordingly.
1070 The <a href="downloads/Changelog">changelog</a> has all
1071 the details. And as usual you can
1072 <a href="downloads">download busybox here</a>.
1079 <li><b>23 December 2003 -- BusyBox 1.0.0-pre5 released</b><p>
1081 Here goes the next pre-release for the new BusyBox stable
1082 series. The most obvious thing in this release is a fix for
1083 a terribly stupid bug in mount that prevented it from working
1084 properly unless you specified the filesystem type. This
1085 release also fixes a few compile problems, updates udhcp,
1086 fixes a silly bug in fdisk, fixes ifup/ifdown to behave like
1087 the Debian version, updates devfsd, updates the 2.6.x
1088 modutils support, add a new 'rx' applet, removes the obsolete
1089 'loadacm' applet, fixes a few tar bugs, fixes a sed bug, and
1090 a few other odd fixes.
1094 If you see any problems, of have suggestions to make, as
1095 always, please feel free to send an email to the busybox
1100 The <a href="downloads/Changelog">changelog</a> has all
1101 the details. And as usual you can
1102 <a href="downloads">download busybox here</a>.
1109 <li><b>10 December 2003 -- BusyBox 1.0.0-pre4 released</b><p>
1111 Here goes the fourth pre-release for the new BusyBox stable
1112 series. This release includes major rework to sed, lots of
1113 rework on tar, a new tiny implementation of bunzip2, a new
1114 devfsd applet, support for 2.6.x kernel modules, updates to
1115 the ash shell, sha1sum and md5sum have been merged into a
1116 common applet, the dpkg applets has been cleaned up, and tons
1117 of random bugs have been fixed. Thanks everyone for all the
1118 testing, bug reports, and patches! Once again, a big
1119 thank-you goes to Glenn McGrath (bug1) for stepping in and
1120 helping get patches merged!
1124 And of course, if you are reading this, you might have noticed
1125 the busybox website has been completely reworked. Hopefully
1126 things are now somewhat easier to navigate... If you see any
1127 problems, of have suggestions to make, as always, please feel
1128 free to send an email to the busybox mailing list.
1132 The <a href="downloads/Changelog">changelog</a> has all
1133 the details. And as usual you can
1134 <a href="downloads">download busybox here</a>.
1141 <li><b>12 Sept 2003 -- BusyBox 1.0.0-pre3 released</b><p>
1143 Here goes the third pre-release for the new BusyBox stable
1144 series. The last prerelease has held up quite well under
1145 testing, but a number of problems have turned up as the number
1146 of people using it has increased. Thanks everyone for all
1147 the testing, bug reports, and patches!
1151 If you have submitted a patch or a bug report to the busybox
1152 mailing list and no one has emailed you explaining why your
1153 patch was rejected, it is safe to say that your patch has
1154 somehow gotten lost or forgotten. That happens sometimes.
1155 Please re-submit your patch or bug report to the BusyBox
1160 The point of the "-preX" versions is to get a larger group of
1161 people and vendors testing, so any problems that turn up can be
1162 fixed prior to the final 1.0.0 release. The main feature
1163 (besides additional testing) that is still still on the TODO
1164 list before the final BusyBox 1.0.0 release is sorting out the
1165 modutils issues. For the new 2.6.x kernels, we already have
1166 patches adding insmod and rmmod support and those need to be
1167 integrated. For 2.4.x kernels, for which busybox only supports
1168 a limited number of architectures, we may want to invest a bit
1169 more work before we cut 1.0.0. Or we may just leave 2.4.x
1170 module loading alone.
1174 I had hoped this release would be out a month ago. And of
1175 course, it wasn't since Erik became busy getting a release of
1176 <a href="http://www.uclibc.org/">uClibc</a>
1177 out the door. Many thanks to Glenn McGrath (bug1) for
1178 stepping in and helping get a bunch of patches merged! I am
1179 not even going to state a date for releasing BusyBox 1.0.0
1180 -pre4 (or the final 1.0.0). We're aiming for late September...
1181 But if this release proves as to be exceptionally stable (or
1182 exceptionally unstable!), the next release may be very soon
1187 The <a href="downloads/Changelog">changelog</a> has all
1188 the details. And as usual you can
1189 <a href="downloads">download busybox here</a>.
1195 <li><b>30 July 2003 -- BusyBox 1.0.0-pre2 released</b><p>
1197 Here goes another pre release for the new BusyBox stable
1198 series. The last prerelease (pre1) was given quite a lot of
1199 testing (thanks everyone!) which has helped turn up a number of
1200 bugs, and these problems have now been fixed.
1204 Highlights of -pre2 include updating the 'ash' shell to sync up
1205 with the Debian 'dash' shell, a new 'hdparm' applet was added,
1206 init again supports pivot_root, The 'reboot' 'halt' and
1207 'poweroff' applets can now be used without using busybox init.
1208 an ifconfig buffer overflow was fixed, losetup now allows
1209 read-write loop devices, uClinux daemon support was added, the
1210 'watchdog', 'fdisk', and 'kill' applets were rewritten, there were
1211 tons of doc updates, and there were many other bugs fixed.
1214 If you have submitted a patch and it is not included in this
1215 release and Erik has not emailed you explaining why your patch
1216 was rejected, it is safe to say that he has lost your patch.
1217 That happens sometimes. Please re-submit your patch to the
1218 BusyBox mailing list.
1221 The point of the "-preX" versions is to get a larger group of
1222 people and vendors testing, so any problems that turn up can be
1223 fixed prior to the final 1.0.0 release. The main feature that
1224 is still still on the TODO list before the final BusyBox 1.0.0
1225 release is adding module support for the new 2.6.x kernels. If
1226 necessary, a -pre3 BusyBox release will happen on August 6th.
1227 Hopefully (i.e. unless some horrible catastrophic problem
1228 turns up) the final BusyBox 1.0.0 release will be ready by
1232 The <a href="downloads/Changelog">changelog</a> has all
1233 the details. As usual you can <a href="downloads">download busybox here</a>.
1239 <li><b>15 July 2003 -- BusyBox 1.0.0-pre1 released</b><p>
1241 The busybox development series has been under construction for
1242 nearly two years now. Which is just entirely too long... So
1243 it is with great pleasure that I announce the imminent release
1244 of a new stable series. Due to the huge number of changes
1245 since the last stable release (and the usual mindless version
1246 number inflation) I am branding this new stable series verison
1250 The point of "-preX" versions is to get a larger group of
1251 people and vendors testing, so any problems that turn up can be
1252 fixed prior to the magic 1.0.0 release (which should happen
1253 later this month)... I plan to release BusyBox 1.0.0-pre2 next
1254 Monday (July 21st), and, if necessary, -pre3 on July 28th.
1255 Hopefully (i.e. unless some horrible catastrophic problem turns
1256 up) the final BusyBox 1.0.0 release should be ready by the end
1260 If you have submitted patches, and they are not in this release
1261 and I have not emailed you explaining why your patch was
1262 rejected, it is safe to say that I have lost your patch. That
1263 happens sometimes. Please do <B>NOT</b> send all your patches,
1264 support questions, etc, directly to Erik. I get hundreds of
1265 emails every day (which is why I end up losing patches
1266 sometimes in the flood)... The busybox mailing list is the
1267 right place to send your patches, support questions, etc.
1270 I would like to especially thank Vladimir Oleynik (vodz), Glenn
1271 McGrath (bug1), Robert Griebl (sandman), and Manuel Novoa III
1272 (mjn3) for their significant efforts and contributions that
1273 have made this release possible.
1276 As usual you can <a href="downloads">download busybox here</a>.
1277 You don't really need to bother with the
1278 <a href="downloads/Changelog">changelog</a>, as the changes
1279 vs the stable version are way too extensive to easily enumerate.
1280 But you can take a look if you really want too.
1288 <li><b>26 October 2002 -- BusyBox 0.60.5 released</b><p>
1290 I am very pleased to announce that the BusyBox 0.60.5 (stable)
1291 is now available for download. This is a bugfix release for
1292 the stable series to address all the problems that have turned
1293 up since the last release. Unfortunately, the previous release
1294 had a few nasty bugs (i.e. init could deadlock, gunzip -c tried
1295 to delete source files, cp -a wouldn't copy symlinks, and init
1296 was not always providing controlling ttys when it should have).
1297 I know I said that the previous release would be the end of the
1298 0.60.x series. Well, it turns out I'm a liar. But this time I
1299 mean it (just like last time ;-). This will be the last
1300 release for the 0.60.x series -- all further development work
1301 will be done for the development busybox tree. Expect the development
1302 version to have its first real release very very soon now...
1305 The <a href="downloads/Changelog.full">changelog</a> has all
1306 the details. As usual you can <a href="downloads">download busybox here</a>.
1311 <li><b>18 September 2002 -- BusyBox 0.60.4 released</b><p>
1313 I am very pleased to announce that the BusyBox 0.60.4
1314 (stable) is now available for download. This is primarily
1315 a bugfix release for the stable series to address all
1316 the problems that have turned up since the last
1317 release. This will be the last release for the 0.60.x series.
1318 I mean it this time -- all further development work will be done
1319 on the development busybox tree, which is quite solid now and
1320 should soon be getting its first real release.
1323 The <a href="downloads/Changelog.full">changelog</a> has all
1324 the details. As usual you can <a href="downloads">download busybox here</a>.
1330 <li><b>27 April 2002 -- BusyBox 0.60.3 released</b><p>
1332 I am very pleased to announce that the BusyBox 0.60.3 (stable) is
1333 now available for download. This is primarily a bugfix release
1334 for the stable series. A number of problems have turned up since
1335 the last release, and this should address most of those problems.
1336 This should be the last release for the 0.60.x series. The
1337 development busybox tree has been progressing nicely, and will
1338 hopefully be ready to become the next stable release.
1341 The <a href="downloads/Changelog">changelog</a> has all
1342 the details. As usual you can <a href="downloads">download busybox here</a>.
1348 <li><b>6 March 2002 -- busybox.net now has mirrors!</b><p>
1350 Busybox.net is now much more available, thanks to
1351 the fine folks at <a href="http://i-netinnovations.com/">http://i-netinnovations.com/</a>
1352 who are providing hosting for busybox.net and
1353 uclibc.org. In addition, we now have two mirrors:
1354 <a href="http://busybox.linuxmagic.com/">http://busybox.linuxmagic.com/</a>
1356 <a href="http://busybox.csservers.de/">http://busybox.csservers.de/</a>
1357 in Germany. I hope this makes things much more
1358 accessible for everyone!
1362 <b>3 January 2002 -- Welcome to busybox.net!</b>
1364 <p>Thanks to the generosity of a number of busybox
1365 users, we have been able to purchase busybox.net
1366 (which is where you are probably reading this).
1367 Right now, busybox.net and uclibc.org are both
1368 living on my home system (at the end of my DSL
1369 line). I apologize for the abrupt move off of
1370 busybox.lineo.com. Unfortunately, I no longer have
1371 the access needed to keep that system updated (for
1372 example, you might notice the daily snapshots there
1373 stopped some time ago).</p>
1375 <p>Busybox.net is currently hosted on my home
1376 server, at the end of a DSL line. Unfortunately,
1377 the load on them is quite heavy. To address this,
1378 I'm trying to make arrangements to get busybox.net
1379 co-located directly at an ISP. To assist in the
1380 co-location effort, <a href=
1381 "http://www.codepoet.org/~markw">Mark Whitley</a>
1382 (author of busybox sed, cut, and grep) has donated
1384 "http://www.netwinder.org/">NetWinder</a> computer
1385 for hosting busybox.net and uclibc.org. Once this
1386 system is co-located, the current speed problems
1387 should be completely eliminated. Hopefully, too,
1388 some of you will volunteer to set up some mirror
1389 sites, to help to distribute the load a bit.</p>
1393 Click here to help support busybox.net!
1394 <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
1395 <input type="hidden" name="cmd" value="_xclick">
1396 <input type="hidden" name="business" value="andersen@codepoet.org">
1397 <input type="hidden" name="item_name" value="Support Busybox">
1398 <input type="hidden" name="image_url" value="https://codepoet-consulting.com/images/busybox2.jpg">
1399 <input type="hidden" name="no_shipping" value="1">
1400 <input type="image" src="images/donate.png" border="0" name="submit" alt="Make donation using PayPal">
1404 Since some people expressed concern over BusyBox
1405 donations, let me assure you that no one is getting
1406 rich here. All BusyBox and uClibc donations will be
1407 spent paying for bandwidth and needed hardware
1408 upgrades. For example, Mark's NetWinder currently
1409 has just 64Meg of memory. As demonstrated when
1410 google spidered the site the other day, 64 Megs in
1411 not enough, so I'm going to be ordering 256Megs of
1412 ram and a larger hard drive for the box today. So
1413 far, donations received have been sufficient to
1414 cover almost all expenses. In the future, we may
1415 have co-location fees to worry about, but for now
1416 we are ok. A <b>HUGE thank-you</b> goes out to
1417 everyone that has contributed!<br>
1422 <b>20 November 2001 -- BusyBox 0.60.2 released</b>
1424 <p>We am very pleased to announce that the BusyBox
1425 0.60.2 (stable) is now released to the world. This
1426 one is primarily a bugfix release for the stable
1427 series, and it should take care of most everyone's
1428 needs till we can get the nice new stuff we have
1429 been working on in CVS ready to release (with the
1430 wonderful new buildsystem). The biggest change in
1431 this release (beyond bugfixes) is the fact that msh
1432 (the minix shell) has been re-worked by Vladimir N.
1433 Oleynik (vodz) and so it no longer crashes when
1434 told to do complex things with backticks.</p>
1436 <p>This release has been tested on x86, ARM, and
1437 powerpc using glibc 2.2.4, libc5, and uClibc, so it
1438 should work with just about any Linux system you
1439 throw it at. See the <a href=
1440 "downloads/Changelog">changelog</a> for <small>most
1441 of</small> the details. The last release was
1442 <em>very</em> solid for people, and this one should
1445 <p>As usual BusyBox 0.60.2 can be downloaded from
1447 "downloads">http://www.busybox.net/downloads</a>.</p>
1453 <li> <b>18 November 2001 -- Help us buy busybox.net!</b>
1455 <!-- Begin PayPal Logo -->
1457 Click here to help buy busybox.net!
1458 <form action="https://www.paypal.com/cgi-bin/webscr" method="post">
1459 <input type="hidden" name="cmd" value="_xclick">
1460 <input type="hidden" name="business" value="andersen@codepoet.org">
1461 <input type="hidden" name="item_name" value="Support Busybox">
1462 <input type="hidden" name="image_url" value="https://busybox.net/images/busybox2.jpg">
1463 <input type="hidden" name="no_shipping" value="1">
1464 <input type="image" src="images/donate.png" border="0" name="submit" alt="Make donation using PayPal">
1467 <!-- End PayPal Logo -->
1469 I've contacted the current owner of busybox.net and he is willing
1470 to sell the domain name -- for $250. He also owns busybox.org but
1471 will not part with it... I will then need to pay the registry fee
1472 for a couple of years and start paying for bandwidth, so this will
1473 initially cost about $300. I would like to host busybox.net on my
1474 home machine (codepoet.org) so I have full control over the system,
1475 but to do that would require that I increase the level of bandwidth
1476 I am paying for. Did you know that so far this month, there
1477 have been over 1.4 Gigabytes of busybox ftp downloads? I don't
1478 even <em>know</em> how much CVS bandwidth it requires. For the
1479 time being, Lineo has continued to graciously provide this
1480 bandwidth, despite the fact that I no longer work for them. If I
1481 start running this all on my home machine, paying for the needed bandwidth
1482 will start costing some money.
1485 I was going to pay it all myself, but my wife didn't like that
1486 idea at all (big surprise). It turns out <insert argument
1487 where she wins and I don't> she has better ideas
1488 about what we should spend our money on that don't involve
1489 busybox. She suggested I should ask for contributions on the
1490 mailing list and web page. So...
1493 I am hoping that if everyone could contribute a bit, we could pick
1494 up the busybox.net domain name and cover the bandwidth costs. I
1495 know that busybox is being used by a lot of companies as well as
1496 individuals -- hopefully people and companies that are willing to
1497 contribute back a bit. So if everyone could please help out, that
1502 <li> <b>23 August 2001 -- BusyBox 0.60.1 released</b>
1505 This is a relatively minor bug fixing release that fixes
1506 up the bugs that have shown up in the stable release in
1507 the last few weeks. Fortunately, nothing <em>too</em>
1508 serious has shown up. This release only fixes bugs -- no
1509 new features, no new applets. So without further ado,
1510 here it is. Come and get it.
1513 <a href="downloads/Changelog">changelog</a> has all
1514 the details. As usual BusyBox 0.60.1 can be downloaded from
1515 <a href="downloads">http://busybox.net/downloads</a>.
1520 <li> <b>2 August 2001 -- BusyBox 0.60.0 released</b>
1522 I am very pleased to announce the immediate availability of
1523 BusyBox 0.60.0. I have personally tested this release with libc5, glibc,
1524 and <a href="http://uclibc.org/">uClibc</a> on
1525 x86, ARM, and powerpc using linux 2.2 and 2.4, and I know a number
1526 of people using it on everything from ia64 to m68k with great success.
1527 Everything seems to be working very nicely now, so getting a nice
1528 stable bug-free(tm) release out seems to be in order. This releases fixes
1529 a memory leak in syslogd, a number of bugs in the ash and msh shells, and
1530 cleans up a number of things.
1534 Those wanting an easy way to test the 0.60.0 release with uClibc can
1535 use <a href="http://user-mode-linux.sourceforge.net/">User-Mode Linux</a>
1536 to give it a try by downloading and compiling
1537 <a href="ftp://busybox.net/buildroot.tar.gz">buildroot.tar.gz</a>.
1538 You don't have to be root or reboot your machine to run test this way.
1539 Preconfigured User-Mode Linux kernel source is also on busybox.net.
1541 Another cool thing is the nifty <a href="downloads/tutorial/index.html">
1542 BusyBox Tutorial</a> contributed by K Computing. This requires
1543 a ShockWave plugin (or standalone viewer), so you may want to grab the
1544 the GPLed shockwave viewer from <a href="http://www.swift-tools.com/Flash/flash-0.4.10.tgz">here</a>
1545 to view the tutorial.
1548 Finally, In case you didn't notice anything odd about the
1549 version number of this release, let me point out that this release
1550 is <em>not</em> 0.53, because I bumped the version number up a
1551 bit. This reflects the fact that this release is intended to form
1552 a new stable BusyBox release series. If you need to rely on a
1553 stable version of BusyBox, you should plan on using the stable
1554 0.60.x series. If bugs show up then I will release 0.60.1, then
1555 0.60.2, etc... This is also intended to deal with the fact that
1556 the BusyBox build system will be getting a major overhaul for the
1557 next release and I don't want that to break products that people
1558 are shipping. To avoid that, the new build system will be
1559 released as part of a new BusyBox development series that will
1560 have some not-yet-decided-on odd version number. Once things
1561 stabilize and the new build system is working for everyone, then
1562 I will release that as a new stable release series.
1566 <a href="downloads/Changelog">changelog</a> has all
1567 the details. As usual BusyBox 0.60.0 can be downloaded from
1568 <a href="downloads">http://busybox.net/downloads</a>.
1573 <li> <b>7 July 2001 -- BusyBox 0.52 released</b>
1576 I am very pleased to announce the immediate availability of
1577 BusyBox 0.52 (the "new-and-improved rock-solid release"). This
1578 release is the result of <em>many</em> hours of work and has tons
1579 of bugfixes, optimizations, and cleanups. This release adds
1580 several new applets, including several new shells (such as hush, msh,
1585 <a href="downloads/Changelog">changelog</a> covers
1586 some of the more obvious details, but there are many many things that
1587 are not mentioned, but have been improved in subtle ways. As usual,
1588 BusyBox 0.52 can be downloaded from
1589 <a href="downloads">http://busybox.net/downloads</a>.
1594 <li> <b>10 April 2001 - Graph of Busybox Growth </b>
1596 The illustrious Larry Doolittle has made a PostScript chart of the growth
1597 of the Busybox tarball size over time. It is available for downloading /
1598 viewing <a href="busybox-growth.ps"> right here</a>.
1600 <p> (Note that while the number of applets in Busybox has increased, you
1601 can still configure Busybox to be as small as you want by selectively
1602 turning off whichever applets you don't need.)
1606 <li> <b>10 April 2001 -- BusyBox 0.51 released</b>
1609 BusyBox 0.51 (the "rock-solid release") is now out there. This
1610 release adds only 2 new applets: env and vi. The vi applet,
1611 contributed by Sterling Huxley, is very functional, and is only
1612 22k. This release fixes 3 critical bugs in the 0.50 release.
1613 There were 2 potential segfaults in lash (the busybox shell) in
1614 the 0.50 release which are now fixed. Another critical bug in
1615 0.50 which is now fixed: syslogd from 0.50 could potentially
1616 deadlock the init process and thereby break your entire system.
1619 There are a number of improvements in this release as well. For
1620 one thing, the wget applet is greatly improved. Dmitry Zakharov
1621 added FTP support, and Laurence Anderson make wget fully RFC
1622 compliant for HTTP 1.1. The mechanism for including utility
1623 functions in previous releases was clumsy and error prone. Now
1624 all utility functions are part of a new libbb library, which makes
1625 maintaining utility functions much simpler. And BusyBox now
1626 compiles on itanium systems (thanks to the Debian itanium porters
1627 for letting me use their system!).
1630 <a href="downloads/Changelog">changelog</a> for
1631 complete details. BusyBox 0.51 can be downloaded from
1632 <a href="downloads">http://busybox.net/downloads</a>.
1636 <li> <b>Busybox Boot-Floppy Image</b>
1638 <p>Because you asked for it, we have made available a <a href=
1639 "downloads/busybox.floppy.img"> Busybox boot floppy
1640 image</a>. Here's how you use it:
1644 <li> <a href="downloads/busybox.floppy.img">
1645 Download the image</a>
1647 <li> dd it onto a floppy like so: <tt> dd if=busybox.floppy.img
1648 of=/dev/fd0 ; sync </tt>
1650 <li> Pop it in a machine and boot up.
1654 <p> If you want to look at the contents of the initrd image, do this:
1657 mount ./busybox.floppy.img /mnt -o loop -t msdos
1658 cp /mnt/initrd.gz /tmp
1660 gunzip /tmp/initrd.gz
1661 mount /tmp/initrd /mnt -o loop -t minix
1665 <li> <b>15 March 2001 -- BusyBox 0.50 released</b>
1668 This release adds several new applets including ifconfig, route, pivot_root, stty,
1669 and tftp, and also fixes tons of bugs. Tab completion in the
1670 shell is now working very well, and the shell's environment variable
1671 expansion was fixed. Tons of other things were fixed or made
1672 smaller. For a fairly complete overview, see the
1673 <a href="downloads/Changelog">changelog</a>.
1675 lash (the busybox shell) is still with us, fixed up a bit so it
1676 now behaves itself quite nicely. It really is quite usable as
1677 long as you don't expect it to provide Bourne shell grammer.
1678 Standard things like pipes, redirects, command line editing, and
1679 environment variable expansion work great. But we have found that
1680 this shell, while very usable, does not provide an extensible
1681 framework for adding in full Bourne shell behavior. So the first order of
1682 business as we begin working on the next BusyBox release will be to merge in the new shell
1683 currently in progress at
1684 <a href="http://doolittle.faludi.com/~larry/parser.html">Larry Doolittle's website</a>.
1688 <li> <b>27 January 2001 -- BusyBox 0.49 released</b>
1691 Several new applets, lots of bug fixes, cleanups, and many smaller
1692 things made nicer. Several cleanups and improvements to the shell.
1693 For a list of the most interesting changes
1694 you might want to look at the <a href="downloads/Changelog">changelog</a>.
1696 Special thanks go out to Matt Kraai and Larry Doolittle for all their
1697 work on this release, and for keeping on top of things while I've been
1700 <em>Special Note</em><br>
1702 BusyBox 0.49 was supposed to have replaced lash, the BusyBox
1703 shell, with a new shell that understands full Bourne shell/Posix shell grammer.
1704 Well, that simply didn't happen in time for this release. A new
1705 shell that will eventually replace lash is already under
1706 construction. This new shell is being developed by Larry
1707 Doolittle, and could use all of our help. Please see the work in
1708 progress on <a href="http://doolittle.faludi.com/~larry/parser.html">Larry's website</a>
1709 and help out if you can. This shell will be included in the next
1713 <li> <b>13 December 2000 -- BusyBox 0.48 released</b>
1716 This release fixes lots and lots of bugs. This has had some very
1717 rigorous testing, and looks very, very clean. The usual tar
1718 update of course: tar no longer breaks hardlinks, tar -xzf is
1719 optionally supported, and the LRP folks will be pleased to know
1720 that 'tar -X' and 'tar --exclude' are both now in. Applets are
1721 now looked up using a binary search making lash (the busybox
1722 shell) much faster. For the new debian-installer (for Debian
1723 woody) a .udeb can now be generated.
1725 The curious can get a list of some of the more interesting changes by reading
1726 the <a href="downloads/Changelog">changelog</a>.
1728 Many thanks go out to the many many people that have contributed to
1729 this release, especially Matt Kraai, Larry Doolittle, and Kent Robotti.
1731 <p> <li> <b>26 September 2000 -- BusyBox 0.47 released</b>
1734 This release fixes lots of bugs (including an ugly bug in 0.46
1735 syslogd that could fork-bomb your system). Added several new
1736 apps: rdate, wget, getopt, dos2unix, unix2dos, reset, unrpm,
1737 renice, xargs, and expr. syslogd now supports network logging.
1738 There are the usual tar updates. Most apps now use getopt for
1739 more correct option parsing.
1740 See the <a href="downloads/Changelog">changelog</a>
1741 for complete details.
1744 <p> <li> <b>11 July 2000 -- BusyBox 0.46 released</b>
1747 This release fixes several bugs (including a ugly bug in tar,
1748 and fixes for NFSv3 mount support). Added a dumpkmap to allow
1749 people to dump a binary keymaps for use with 'loadkmap', and a
1750 completely reworked 'grep' and 'sed' which should behave better.
1751 BusyBox shell can now also be used as a login shell.
1752 See the <a href="downloads/Changelog">changelog</a>
1753 for complete details.
1756 <p> <li> <b>21 June 2000 -- BusyBox 0.45 released</b>
1759 This release has been slow in coming, but is very solid at this
1760 point. BusyBox now supports libc5 as well as GNU libc. This
1761 release provides the following new apps: cut, tr, insmod, ar,
1762 mktemp, setkeycodes, md5sum, uuencode, uudecode, which, and
1763 telnet. There are bug fixes for just about every app as well (see
1764 the <a href="downloads/Changelog">changelog</a> for
1767 Also, some exciting infrastructure news! Busybox now has its own
1768 <a href="lists/busybox/">mailing list</a>,
1769 publically browsable
1770 <a href="/cgi-bin/viewcvs.cgi/trunk/busybox/">CVS tree</a>,
1772 <a href="cvs_anon.html">CVS access</a>, and
1773 for those that are actively contributing there is even
1774 <a href="cvs_write.html">CVS write access</a>.
1775 I think this will be a huge help to the ongoing development of BusyBox.
1777 Also, for the curious, there is no 0.44 release. Somehow 0.44 got announced
1778 a few weeks ago prior to its actually being released. To avoid any confusion
1779 we are just skipping 0.44.
1781 Many thanks go out to the many people that have contributed to this release
1782 of BusyBox (esp. Pavel Roskin)!
1785 <p> <li> <b>19 April 2000 -- syslogd bugfix</b>
1787 Turns out that there was still a bug in busybox syslogd.
1788 For example, with the following test app:
1790 #include <syslog.h>
1792 int do_log(char* msg, int delay)
1794 openlog("testlog", LOG_PID, LOG_DAEMON);
1796 syslog(LOG_ERR, "%s: testing one, two, three\n", msg);
1810 it should be logging stuff from both "A" and "B". As released in 0.43 only stuff
1811 from "A" would have been logged. This means that if init tries to log something
1812 while say ppp has the syslog open, init would block (which is bad, bad, bad).
1814 Karl M. Hegbloom has created a fix for the problem.
1818 <p> <li> <b>18 April 2000 -- BusyBox 0.43 released (finally!)</b>
1820 I have finally gotten everything into a state where I feel pretty
1821 good about things. This is definitely the most stable, solid release
1822 so far. A lot of bugs have been fixed, and the following new apps
1823 have been added: sh, basename, dirname, killall, uptime,
1824 freeramdisk, tr, echo, test, and usleep. Tar has been completely
1825 rewritten from scratch. Bss size has also been greatly reduced.
1826 More details are available in the
1827 <a href="downloads/Changelog">changelog</a>.
1828 Oh, and as a special bonus, I wrote some fairly comprehensive
1829 <em>documentation</em>, complete with examples and full usage information.
1832 Many thanks go out to the fine people that have helped by submitting patches
1833 and bug reports; particularly instrumental in helping for this release were
1834 Karl Hegbloom, Pavel Roskin, Friedrich Vedder, Emanuele Caratti,
1835 Bob Tinsley, Nicolas Pitre, Avery Pennarun, Arne Bernin, John Beppu, and Jim Gleason.
1836 There were others so if I somehow forgot to mention you, I'm very sorry.
1839 You can grab BusyBox 0.43 tarballs <a href="downloads">here</a>.
1841 <p> <li> <b>9 April 2000 -- BusyBox 0.43 pre release</b>
1843 Unfortunately, I have not yet finished all the things I want to
1844 do for BusyBox 0.43, so I am posting this pre-release for people
1845 to poke at. This contains my complete rewrite of tar, which now weighs in at
1846 5k (7k with all options turned on) and works for reading and writing
1847 tarballs (which it does correctly for everything I have been able to throw
1848 at it). Tar also (optionally) supports the "--exclude" option (mainly because
1849 the Linux Router Project folks asked for it). This also has a pre-release
1850 of the micro shell I have been writing. This pre-release should be stable
1851 enough for production use -- it just isn't a release since I have some structural
1852 changes I still want to make.
1854 The pre-release can be found <a href="downloads">here</a>.
1855 Please let me know ASAP if you find <em>any</em> bugs.
1857 <p> <li> <b>28 March 2000 -- Andersen Baby Boy release</b>
1859 I am pleased to announce that on Tuesday March 28th at 5:48pm, weighing in at 7
1860 lbs. 12 oz, Micah Erik Andersen was born at LDS Hospital here in Salt Lake City.
1861 He was born in the emergency room less then 5 minutes after we arrived -- and
1862 it was such a relief that we even made it to the hospital at all. Despite the
1863 fact that I was driving at an amazingly unlawful speed and honking at everybody
1864 and thinking decidedly unkind thoughts about the people in our way, my wife
1865 (inconsiderate of my feelings and complete lack of medical training) was lying
1866 down in the back seat saying things like "I think I need to start pushing now"
1867 (which she then proceeded to do despite my best encouraging statements to the
1870 Anyway, I'm glad to note that despite the much-faster-than-we-were-expecting
1871 labor, both Shaunalei and our new baby boy are doing wonderfully.
1873 So now that I am done with my excuse for the slow release cycle...
1874 Progress on the next release of BusyBox has been slow but steady. I expect
1875 to have a release sometime during the first week of April. This release will
1876 include a number of important changes, including the addition of a shell, a
1877 re-write of tar (to accommodate the Linux Router Project), and syslogd can now
1878 accept multiple concurrent connections, fixing lots of unexpected blocking
1882 <p> <li> <b>11 February 2000 -- BusyBox 0.42 released</b>
1885 This is the most solid BusyBox release so far. Many, many
1886 bugs have been fixed. See the
1887 <a href="downloads/Changelog">changelog</a> for details.
1889 Of particular interest, init will now cleanly unmount
1890 filesystems on reboot, cp and mv have been rewritten and
1891 behave much better, and mount and umount no longer leak
1892 loop devices. Many thanks go out to Randolph Chung,
1893 Karl M. Hegbloom, Taketoshi Sano, and Pavel Roskin for
1894 their hard work on this release of BusyBox. Please pound
1895 on it and let me know if you find any bugs.
1897 <p> <li> <b>19 January 2000 -- BusyBox 0.41 released</b>
1900 This release includes bugfixes to cp, mv, logger, true, false,
1901 mkdir, syslogd, and init. New apps include wc, hostid,
1902 logname, tty, whoami, and yes. New features include loop device
1903 support in mount and umount, and better TERM handling by init.
1904 The changelog can be found <a href="downloads/Changelog">here</a>.
1906 <p> <li> <b>7 January 2000 -- BusyBox 0.40 released</b>
1909 This release includes bugfixes to init (now includes inittab support),
1910 syslogd, head, logger, du, grep, cp, mv, sed, dmesg, ls, kill, gunzip, and mknod.
1911 New apps include sort, uniq, lsmod, rmmod, fbset, and loadacm.
1912 In particular, this release fixes an important bug in tar which
1913 in some cases produced serious security problems.
1914 As always, the changelog can be found <a href="downloads/Changelog">here</a>.
1916 <p> <li> <b>11 December 1999 -- BusyBox Website</b>
1918 I have received permission from Bruce Perens (the original author of BusyBox)
1919 to set up this site as the new primary website for BusyBox. This website
1920 will always contain pointers to the latest and greatest, and will also
1921 contain the latest documentation on how to use BusyBox, what it can do,
1922 what arguments its apps support, etc.
1924 <p> <li> <b>10 December 1999 -- BusyBox 0.39 released</b>
1926 This release includes fixes to init, reboot, halt, kill, and ls, and contains
1927 the new apps ping, hostname, mkfifo, free, tail, du, tee, and head. A full
1928 changelog can be found <a href="downloads/Changelog">here</a>.
1929 <p> <li> <b>5 December 1999 -- BusyBox 0.38 released</b>
1931 This release includes fixes to tar, cat, ls, dd, rm, umount, find, df,
1932 and make install, and includes new apps syslogd/klogd and logger.
1938 <!--#include file="footer.html" -->