toybox

About Download Development
Toybox Status

How are we doing on implementing stuff so far?

Legend: [posix] <lsb> (development) {android} =klibc= #sash# @sbase@ *beastiebox* +request+ other implemented

All commands

+acpi+ #ar# +arp+ +arping+ [at] [awk] [basename] [bc] +blkid+ +blockdev+ +bootchartd+ +brctl+ (bunzip2) (bzcat) (bzip2) [cal] [cat] +catv+ #chattr# <chfn> [chgrp] [chmod] [chown] (chroot) <chsh> @chvt@ [cksum] +clear+ [cmp] [comm] +count+ [cp] (cpio) +crond+ +crontab+ [csplit] [cut] [date] [dd] +deluser+ [df] [diff] +dig+ [dirname] <dmesg> (dnsdomainname) +dos2unix+ [du] +dumpleases+ [echo] #ed# <egrep> +eject+ [env] [expand] [expr] +factor+ +fallocate+ [false] *fdisk* <fgrep> [file] [find] [fold] +free+ +freeramdisk+ *fsck* +fsfreeze+ =fstype= (ftpd) (ftpget) (ftpput) [fuser] [getconf] {getevent} {getprop} *getty* [grep] <groupadd> <groupdel> <groupmod> <groups> <gunzip> <gzip> =halt= {hd} [head] +help+ +hexdump+ <hostname> +hwclock+ [id] (ifconfig) {iftop} (init) +inotifyd+ {insmod} <install> {ioctl} {ionice} +ipaddr+ =ipconfig= +iplink+ +iproute+ +iwconfig+ +iwlist+ [join] [kill] <killall> +killall5+ =kinit= +klogd+ +last+ (less) [link] [ln] {log} {logcat} [logger] +login+ [logname] {logwrapper} (losetup) [ls] #lsattr# {lsmod} {lsof} +lspci+ {lsusb} +makedevs+ [man] {md5} <md5sum> (mdev) [mkdir] [mkfifo] <mknod> +mkpasswd+ *mksh* +mkswap+ <mktemp> +modinfo+ +modprobe+ [more] <mount> (mountpoint) [mv] {nandread} +nbd-client+ (nc) +netcat+ {netstat} {newfs_msdos} [newgrp] =nfsmount= [nice] [nl] [nohup] {notify} +ntpd+ [od] +oneit+ +partprobe+ <passwd> [paste] [patch] [pathchk] (pgrep) <pidof> *ping* +ping6+ =pivot_root= (pkill) +pmap+ =poweroff= {printenv} [printf] [ps] [pwd] +pwdx+ {r} +rdate+ +readahead+ (readlink) +realpath+ {reboot} [renice] =resume= +rev+ +rfkill+ [rm] [rmdir] {rmmod} (route) +rpm2cpio+ {schedtop} [sed] {sendevent} <sendmail> <seq> {setconsole} {setprop} +setsid+ +sfdisk+ [sh] (sha1sum) <shutdown> [sleep] {smd} [sort] [split] {start} (stat) {stop} +strings+ [stty] <su> +sudo+ +sulogin+ #sum# +swapoff+ +swapon+ (switch_root) <sync> *sysctl* +syslogd+ [tabs] (tac) [tail] <tar> +taskset+ +tcpsvd+ [tee] +telnet+ +telnetd+ [test] +tftpd+ [time] +timeout+ {top} [touch] [tput] [tr] +tracepath+ *traceroute* [true] +truncate+ [tty] <umount> [uname] [unexpand] [uniq] +unix2dos+ [unlink] +unshare+ +unzip+ {uptime} <useradd> <userdel> <usermod> +usleep+ [uudecode] [uuencode] +vconfig+ [vi] {vmstat} +w+ +watch+ {watchdogd} {watchprops} [wc] (wget) (which) [who] (whoami) {wipe} [xargs] (yes) [zcat] +zip+

TODO

#ar# +arp+ +arping+ [at] [awk] [bc] +bootchartd+ +brctl+ (bunzip2) (bzip2) <chfn> <chsh> +crond+ +crontab+ [csplit] [dd] +deluser+ [diff] +dig+ (dnsdomainname) +dumpleases+ #ed# [expr] *fdisk* [file] [fold] *fsck* (ftpd) (ftpget) (ftpput) [fuser] [getconf] {getevent} {getprop} *getty* <groupadd> <groupdel> <groupmod> <gunzip> <gzip> {hd} +hexdump+ +hwclock+ {iftop} (init) {ioctl} {ionice} +ipaddr+ =ipconfig= +iplink+ +iproute+ +iwconfig+ +iwlist+ [join] =kinit= +klogd+ +last+ (less) {log} {logcat} [logger] {logwrapper} {lsof} [man] {md5} (mdev) *mksh* +modprobe+ [more] {nandread} {netstat} {newfs_msdos} [newgrp] =nfsmount= {notify} +ntpd+ [pathchk] (pgrep) *ping* +ping6+ (pkill) [printf] [ps] {r} +rdate+ =resume= (route) +rpm2cpio+ {schedtop} [sed] {sendevent} <sendmail> {setconsole} {setprop} +sfdisk+ [sh] <shutdown> {smd} {start} {stop} [stty] +sudo+ +sulogin+ #sum# +syslogd+ [tabs] <tar> +tcpsvd+ +telnet+ +telnetd+ [test] +tftpd+ {top} [tput] [tr] +tracepath+ *traceroute* [unexpand] +unzip+ <useradd> <userdel> <usermod> [vi] +watch+ {watchdogd} {watchprops} (wget) {wipe} [zcat] +zip+

Done

+acpi+ [basename] +blkid+ +blockdev+ (bzcat) [cal] [cat] +catv+ #chattr# [chgrp] [chmod] [chown] (chroot) @chvt@ [cksum] +clear+ [cmp] [comm] +count+ [cp] (cpio) [cut] [date] [df] [dirname] <dmesg> +dos2unix+ [du] [echo] <egrep> +eject+ [env] [expand] +factor+ +fallocate+ [false] <fgrep> [find] +free+ +freeramdisk+ +fsfreeze+ =fstype= [grep] <groups> =halt= [head] +help+ <hostname> [id] (ifconfig) +inotifyd+ {insmod} <install> [kill] <killall> +killall5+ [link] [ln] +login+ [logname] (losetup) [ls] #lsattr# {lsmod} +lspci+ {lsusb} +makedevs+ <md5sum> [mkdir] [mkfifo] <mknod> +mkpasswd+ +mkswap+ <mktemp> +modinfo+ <mount> (mountpoint) [mv] +nbd-client+ (nc) +netcat+ [nice] [nl] [nohup] [od] +oneit+ +partprobe+ <passwd> [paste] [patch] <pidof> =pivot_root= +pmap+ =poweroff= {printenv} [pwd] +pwdx+ +readahead+ (readlink) +realpath+ {reboot} [renice] +rev+ +rfkill+ [rm] [rmdir] {rmmod} <seq> +setsid+ (sha1sum) [sleep] [sort] [split] (stat) +strings+ <su> +swapoff+ +swapon+ (switch_root) <sync> *sysctl* (tac) [tail] +taskset+ [tee] [time] +timeout+ [touch] [true] +truncate+ [tty] <umount> [uname] [uniq] +unix2dos+ [unlink] +unshare+ {uptime} +usleep+ [uudecode] [uuencode] +vconfig+ {vmstat} +w+ [wc] (which) [who] (whoami) [xargs] (yes)


Categories of remaining todo items

(development)

=<[zcat]>= [awk] bzip2 cut #={[dd]}=# @[diff]@ @[expr]@ #=<gzip>=# *[sed]* *#=[sh]=#* *#<tar>#* touch @[tr]@ wget xargs #=<gunzip>=# *less* [man] *@[test]@* bunzip2 chroot dnsdomainname ftpd ftpget ftpput #=<gunzip>=# *init* *less* [man] mdev mountpoint pgrep pkill *{route}* *[vi]*

<lsb>

chfn chsh groupadd groupdel groupmod #=(gunzip)=# #=(gzip)=# sendmail shutdown *#(tar)#* useradd userdel usermod =([zcat])=

@sbase_cmd@

cut ([diff]) du expand ([expr]) [printf] *([test])* ([tr]) [unexpand]

+request+

dig *getty* hexdump hwclock klogd modprobe *ping* ping6 sfdisk sudo syslogd telnet telnetd tracepath *traceroute* unzip vconfig zip login modinfo ntpd iwconfig iwlist rdate sulogin bootchartd arp crond crontab deluser last watch ipaddr iplink iproute rpm2cpio arping brctl dumpleases *fsck* tcpsvd tftpd

=klibc_cmd=

chroot #{([dd])}# *{[ps]}* nfsmount *#([sh])#* #(<gunzip>)# #(<gzip>)# (<[zcat]>) kinit ipconfig resume

[posix]

at (awk) bc csplit cut #={(dd)}=# @(diff)@ du expand @(expr)@ #file# fold fuser getconf join logger (man) *#more#* newgrp pathchk @printf@ *={ps}=* *(sed)* *#=(sh)=#* *stty* tabs *@(test)@* touch tput @(tr)@ @unexpand@ *(vi)* xargs =(<zcat>)=

*beastiebox_cmd*

fdisk +fsck+ +getty+ (init) (less) mksh #[more]# +ping+ ={[ps]}= {(route)} ([sed]) #=([sh])=# [stty] #(<tar>)# @([test])@ +traceroute+ ([vi])

{toolbox}

#=([dd])=# du getevent getprop hd iftop ioctl ionice log logcat logwrapper lsof md5 nandread netstat newfs_msdos notify *=[ps]=* r *(route)* schedtop sendevent setconsole setprop smd start stop top touch vmstat watchprops watchdogd wipe

#sash_cmd#

ar ={([dd])}= ed [file] =(<gunzip>)= =(<gzip>)= *[more]* *=([sh])=* sum *(<tar>)*

pending

vmstat login du vconfig mountpoint chroot cut touch modinfo expand xargs

The current status of toybox (as of 0.5.0 release):

These commands are reasonably finished (in defconfig):

acpi basename blkid blockdev bzcat cal cat catv chattr chgrp chmod chown chvt cksum clear cmp comm count cp cpio date df dirname dmesg dos2unix echo egrep eject env factor fallocate false fgrep find free freeramdisk fsfreeze fstype grep groups halt head help hostname id ifconfig inotifyd insmod install kill killall killall5 link ln logname losetup ls lsattr lsmod lspci lsusb makedevs md5sum mkdir mkfifo mknod mkpasswd mkswap mktemp mount mv nbd-client nc netcat nice nl nohup od oneit partprobe passwd paste patch pidof pivot_root pmap poweroff printenv pwd pwdx readahead readlink realpath reboot renice rev rfkill rm rmdir rmmod seq setsid sha1sum sleep sort split stat strings su swapoff swapon switch_root sync sysctl tac tail taskset tee time timeout true truncate tty umount uname uniq unix2dos unlink unshare uptime usleep uudecode uuencode w wc which who whoami yes

These commands are at least partially implemented (in toys/pending) but have todo items remaining:

ar arp arping bc bootchartd brctl compress crond dhcp dhcpd diff dumpleases expr fdisk fold fsck ftpget getty groupadd groupdel host iconv init ip ipcs kexec klogd last logger mdev mix mke2fs modprobe more netstat openvt p9d pgrep ping printf ps reset route sh sulogin syslogd tar tcpsvd telnet telnetd test tftpd top traceroute tr useradd userdel watch xzcat

These commands predate the pending directory but also have unfinished todo items:

vmstat login du vconfig mountpoint chroot cut touch modinfo expand xargs

There is also a todo list, but development's moved on a bit since it was written.