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# [at] [awk] [basename] [bc] +blkid+ (bunzip2) (bzcat) (bzip2) [cal] [cat] +catv+ #chattr# <chfn> [chgrp] [chmod] [chown] (chroot) <chsh> @chvt@ [cksum] +clear+ [cmp] [comm] +count+ [cp] (cpio) [csplit] [cut] [date] [dd] [df] [diff] +dig+ [dirname] <dmesg> (dnsdomainname) +dos2unix+ [du] [echo] #ed# <egrep> +eject+ [env] [expand] [expr] [false] *fdisk* <fgrep> [file] [find] [fold] +free+ +freeramdisk+ *fsck* =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) {insmod} <install> {ioctl} {ionice} =ipconfig= +iwconfig+ +iwlist+ [join] [kill] <killall> =kinit= +klogd+ (less) [link] [ln] {log} {logcat} [logger] +login+ [logname] {logwrapper} (losetup) [ls] #lsattr# {lsmod} {lsof} {lsusb} [man] {md5} <md5sum> (mdev) [mkdir] [mkfifo] <mknod> *mksh* +mkswap+ <mktemp> +modinfo+ +modprobe+ [more] <mount> (mountpoint) [mv] {nandread} (nc) +netcat+ {netstat} {newfs_msdos} [newgrp] =nfsmount= [nice] [nl] [nohup] {notify} +ntpd+ [od] +oneit+ <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+ [rm] [rmdir] {rmmod} (route) {schedtop} [sed] {sendevent} <sendmail> <seq> {setconsole} {setprop} +setsid+ +sfdisk+ [sh] (sha1sum) <shutdown> [sleep] {smd} [sort] [split] {start} (stat) {stop} [stty] <su> +sudo+ #sum# +swapoff+ +swapon+ (switch_root) <sync> *sysctl* +syslogd+ [tabs] (tac) [tail] <tar> +taskset+ [tee] +telnet+ +telnetd+ [test] [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+ {watchdogd} {watchprops} [wc] (wget) (which) [who] (whoami) {wipe} [xargs] (yes) [zcat] +zip+

TODO

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

Done

+acpi+ [basename] +blkid+ (bunzip2) (bzcat) [cal] [cat] +catv+ [chgrp] [chmod] [chown] (chroot) @chvt@ [cksum] +clear+ [cmp] [comm] +count+ [cp] [cut] [date] [df] [dirname] <dmesg> +dos2unix+ [du] [echo] <egrep> +eject+ [env] [expand] [false] <fgrep> +free+ =fstype= [grep] <groups> =halt= [head] +help+ <hostname> [id] (ifconfig) {insmod} [kill] <killall> [link] [ln] +login+ [logname] (losetup) [ls] {lsmod} {lsusb} <md5sum> (mdev) [mkdir] [mkfifo] <mknod> +mkswap+ <mktemp> +modinfo+ (mountpoint) [mv] (nc) +netcat+ [nice] [nl] [nohup] [od] +oneit+ <passwd> [paste] [patch] <pidof> =pivot_root= +pmap+ =poweroff= {printenv} [pwd] +pwdx+ +readahead+ (readlink) +realpath+ {reboot} [renice] +rev+ [rm] [rmdir] {rmmod} <seq> +setsid+ (sha1sum) [sleep] [sort] [split] (stat) <su> +swapoff+ +swapon+ (switch_root) <sync> (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)

bzcat patch rmdir uname =<[zcat]>= [awk] bzip2 cut date #={[dd]}=# @[diff]@ @[expr]@ #[find]# #=<gzip>=# head id <install> ln readlink *[sed]* *#=[sh]=#* tail *#<tar>#* touch @[tr]@ wget xargs #=<gunzip>=# *less* [man] *@[test]@* bunzip2 chroot =cpio= dnsdomainname ftpd ftpget ftpput #=<gunzip>=# ifconfig *init* *less* [man] mdev *#={<mount>}=#* mountpoint nc pgrep pkill *{route}* switch_root *[vi]*

<lsb>

chfn chsh groupadd groupdel groupmod #=(gunzip)=# #=(gzip)=# (install) mknod *#={(mount)}=#* passwd pidof sendmail shutdown *#(tar)#* useradd userdel usermod =([zcat])=

@sbase_cmd@

cut ([diff]) du expand ([expr]) id printenv [printf] readlink rmdir *([test])* ([tr]) [unexpand] who

+request+

dig freeramdisk *getty* hexdump hwclock klogd modprobe *ping* ping6 sfdisk sudo syslogd telnet telnetd tracepath *traceroute* unzip vconfig zip free login modinfo unshare netcat help w ntpd iwconfig iwlist rdate

=klibc_cmd=

chroot kill ln readlink switch_root uname (cpio) #{([dd])}# *{[ps]}* *#{(<mount>)}#* nfsmount *#([sh])#* #(<gunzip>)# #(<gzip>)# (<[zcat]>) kinit ipconfig resume

[posix]

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

*beastiebox_cmd*

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

{toolbox}

date #=([dd])=# du getevent getprop hd id ifconfig iftop insmod ioctl ionice kill ln log logcat logwrapper lsof lsusb md5 *#=(<mount>)=#* nandread netstat newfs_msdos notify printenv *=[ps]=* r rmdir rmmod *(route)* schedtop sendevent setconsole setprop smd start stop top touch uptime vmstat watchprops watchdogd wipe

#sash_cmd#

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

pending

bzcat bunzip2 chroot cut date du expand free head help id ifconfig insmod kill ln login lsusb mdev mknod modinfo mountpoint nc netcat passwd patch pidof printenv readlink rmdir rmmod switch_root tail touch uname unshare uptime vconfig vmstat w who xargs

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

These commands are reasonably finished:

basename cal cat catv chgrp chmod chown chvt cksum clear cmp comm count cp df dirname dmesg dos2unix echo egrep env false fgrep hostname grep groups killall link logname losetup ls lsmod md5sum mkdir mkfifo mkswap mktemp mv nice nohup od oneit paste pivot_root pmap pwd readahead realpath renice rev rm seq setsid sha1sum sleep sort split stat swapoff swapon sync tac taskset tee time timeout true truncate tty uniq unix2dos unlink usleep uudecode uuencode wc which whoami yes acpi blkid eject nl pwdx reboot su umount fstype halt poweroff

These commands are implemented but have pending todo items remaining:

bzcat bunzip2 chroot cut date du expand free head help hostname id ifconfig insmod kill ln login lsusb mdev mknod modinfo mountpoint nc netcat passwd patch pidof printenv readlink rmdir rmmod switch_root tail touch uname unshare uptime vconfig vmstat w who xargs

Work on these is underway, but not usable yet:

bzip2 mke2fs more mount umount sed tar sh grep/egrep/fgrep

See the todo list for details.