Mercurial > hg > toybox
annotate www/roadmap.html @ 797:36b43eafab38
Wrong closing tag in roadmap.html.
author | Rob Landley <rob@landley.net> |
---|---|
date | Thu, 31 Jan 2013 04:05:56 -0600 |
parents | 4094f14c47a2 |
children | 0db28494d17d |
rev | line source |
---|---|
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
1 <!--#include file="header.html" --> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
2 <title>Toybox Roadmap</title> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
3 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
4 <h2>Goals and use cases</h2> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
5 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
6 <p>We have several potential use cases for a new set of command line |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
7 utilities, and are using those to determine which commands to implement |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
8 for Toybox's 1.0 release.</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
9 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
10 <p>Our current candidate list combines the commands toybox already implements, |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
11 the development environment command list, the toolbox standard commands, |
736
e7694c640f36
Update link to posix in docs (open group broke their website).
Rob Landley <rob@landley.net>
parents:
693
diff
changeset
|
12 various vendor configurations of busybox, a selected subset of the POSIX/SUSv4 |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
13 standard, a couple of the less-insane bits of LSB, a few outright requests, |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
14 plus additional to-be-determined shell functionality.</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
15 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
16 <p>See the <a href=status.html>status page</a> for the combined list |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
17 and progress towards implementing it.</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
18 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
19 <hr /> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
20 <a name="standards"> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
21 <h2>Use case: standards compliance.</h2> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
22 |
693
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
678
diff
changeset
|
23 <h3><a name=susv4 /><a href="#susv4">POSIX-2008/SUSv4</a></h3> |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
24 <p>The best standards are the kind that describe reality, rather than |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
25 attempting to impose a new one. (I.E. a good standard should document, not |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
26 legislate.)</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
27 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
28 <p>The kind of standards which describe existing reality tend to be approved by |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
29 more than one standards body, such ANSI and ISO both approving C. That's why |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
30 the IEEE POSIX committee's 2008 standard, the Single Unix Specification version |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
31 4, and the Open Group Base Specification edition 7 are all the same standard |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
32 from three sources.</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
33 |
736
e7694c640f36
Update link to posix in docs (open group broke their website).
Rob Landley <rob@landley.net>
parents:
693
diff
changeset
|
34 <p>The <a href="http://pubs.opengroup.org/onlinepubs/9699919799/idx/utilities.html">"utilities" |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
35 section</a> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
36 of these standards is devoted to the unix command line, and are the best such |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
37 standard for our purposes. (My earlier work on BusyBox was implemented with |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
38 regard to SUSv3, an earlier version of this standard.)</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
39 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
40 <h3>Problems with the standard</h3> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
41 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
42 <p>Unfortunately, these standards describe a subset of reality, lacking any |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
43 mention of commands such as init, login, or mount required to actually boot a |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
44 system. It provides ipcrm and ipcs, but not ipcmk, so you can use System V IPC |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
45 resources but not create them.</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
46 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
47 <p>These standards also contain a large number of commands that are |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
48 inappropriate for toybox to implement in its 1.0 release. (Perhaps some of |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
49 these could be reintroduced in later releases, but not now.)</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
50 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
51 <p>Starting with the full "utilities" list, we first remove generally obsolete |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
52 commands (compess ed ex pr uncompress uccp uustat uux), commands for the |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
53 pre-CVS "SCCS" source control system (admin delta get prs rmdel sact sccs unget |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
54 val what), fortran support (asa fort77), and batch processing support (batch |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
55 qalter qdel qhold qmove qmsg qrerun qrls qselect qsig qstat qsub).</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
56 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
57 <p>Some commands are for a compiler toolchain (ar c99 cflow ctags cxref gencat |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
58 iconv lex m4 make nm strings strip tsort yacc), which is outside of toybox's |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
59 mandate and should be supplied externally. (Again, some of these may be |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
60 revisited later, but not for toybox 1.0.)</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
61 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
62 <p>Some commands are part of a command shell, and cannot be implemented as |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
63 separate executables (alias bg cd command fc fg getopts hash jobs kill read |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
64 type ulimit umask unalias wait). These may be revisited as part of a built-in |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
65 toybox shell, but are not exported into $PATH via symlinks. (If you fork a |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
66 child process and have it "cd" then exit, you've accomplished nothing.)</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
67 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
68 <p>A few other commands are judgement calls, providing command-line |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
69 internationalization support (iconv locale localedef), System V inter-process |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
70 communication (ipcrm ipcs), and cross-tty communication from the minicomputer |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
71 days (talk mesg write). The "pax" utility was supplanted by tar, "mailx" is |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
72 a command line email client, and "lp" submits files for printing to... what |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
73 exactly? (cups?) The standard defines crontab but not crond.</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
74 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
75 <p>Removing all of that leaves the following commands, which toybox should |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
76 implement:</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
77 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
78 <blockquote><b> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
79 <span id=posix> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
80 at awk basename bc cal cat chgrp chmod chown cksum cmp comm cp |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
81 csplit cut date dd df diff dirname du echo env expand expr false file find |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
82 fold fuser getconf grep head id join kill link ln logger logname ls man |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
83 mkdir mkfifo more mv newgrp nice nl nohup od paste patch pathchk printf ps |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
84 pwd renice rm rmdir sed sh sleep sort split stty tabs tail tee test time |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
85 touch tput tr true tty uname unexpand uniq unlink uudecode uuencode vi wc |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
86 who xargs zcat |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
87 </span> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
88 </b></blockquote> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
89 |
693
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
678
diff
changeset
|
90 <h3><a name=sigh /><a href="#sigh">Linux Standard Base</a></h3> |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
91 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
92 <p>One attempt to supplement POSIX towards an actual usable system was the |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
93 Linux Standard Base. Unfortunately, the quality of this "standard" is |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
94 fairly low.</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
95 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
96 <p>POSIX allowed its standards process to be compromised |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
97 by leaving things out, thus allowing IBM mainframes and Windows NT to drive |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
98 a truck through the holes and declare themselves compilant. But it means what |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
99 they DID standardize tends to be respected.</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
100 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
101 <p>The Linux Standard Base's failure mode is different, they respond to |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
102 pressure by including special-case crap, such as allowing Red Hat to shoehorn |
736
e7694c640f36
Update link to posix in docs (open group broke their website).
Rob Landley <rob@landley.net>
parents:
693
diff
changeset
|
103 RPM on the standard even though all sorts of distros (Debian, Slackware, Arch, |
e7694c640f36
Update link to posix in docs (open group broke their website).
Rob Landley <rob@landley.net>
parents:
693
diff
changeset
|
104 Gentoo) don't use it and probably never will. This means anything in the LSB is |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
105 at best a suggestion: arbitrary portions of this standard are widely |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
106 ignored.</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
107 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
108 <p>The LSB does specify a <a href=http://refspecs.linuxfoundation.org/LSB_4.1.0/LSB-Core-generic/LSB-Core-generic/cmdbehav.html>list of command line |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
109 utilities</a>:</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
110 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
111 <blockquote><b> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
112 ar at awk batch bc chfn chsh col cpio crontab df dmesg du echo egrep |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
113 fgrep file fuser gettext grep groupadd groupdel groupmod groups |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
114 gunzip gzip hostname install install_initd ipcrm ipcs killall lpr ls |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
115 lsb_release m4 md5sum mknod mktemp more mount msgfmt newgrp od passwd |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
116 patch pidof remove_initd renice sed sendmail seq sh shutdown su sync |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
117 tar umount useradd userdel usermod xargs zcat |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
118 </b></blockquote> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
119 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
120 <p>Where posix specifies one of those commands, LSB's deltas tend to be |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
121 accomodations for broken tool versions which aren't up to date with the |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
122 standard yet. (See <a href=http://refspecs.linuxfoundation.org/LSB_4.1.0/LSB-Core-generic/LSB-Core-generic/more.html>more</a> and <a href=http://refspecs.linuxfoundation.org/LSB_4.1.0/LSB-Core-generic/LSB-Core-generic/xargs.html>xargs</a> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
123 for examples.)</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
124 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
125 <p>Since we've already committed to using our own judgement to skip bits of |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
126 POSIX, and LSB's "judgement" in this regard is purely bug workarounds to declare |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
127 various legacy tool implementations "compliant", this means we're mostly |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
128 interested in the set of tools that aren't specified in posix at all.</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
129 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
130 <p>Of these, gettext and msgfmt are internationalization, install_initd and |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
131 remove_initd aren't present on ubuntu 10.04, lpr is out of scope, and |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
132 lsb_release is a distro issue (it's a nice command, but the output of |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
133 lsb_release -a is the name and version number of the linux distro you're |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
134 running, which toybox doesn't know).</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
135 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
136 <p>This leaves:</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
137 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
138 <blockquote><b> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
139 <span id=lsb> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
140 chfn chsh dmesg egrep fgrep groupadd groupdel groupmod groups |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
141 gunzip gzip hostname install killall md5sum |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
142 mknod mktemp mount passwd pidof sendmail seq shutdown |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
143 su sync tar umount useradd userdel usermod zcat |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
144 </span> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
145 </b></blockquote> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
146 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
147 <hr /> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
148 <a name="dev_env"> |
693
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
678
diff
changeset
|
149 <h2><a href="#dev_env">Use case: provide a self-hosting development environment</a></h2> |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
150 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
151 <p>The following commands are enough to build the Aboriginal Linux development |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
152 environment, boot it to a shell prompt, and build Linux From Scratch 6.8 under |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
153 it. (Aboriginal Linux currently uses BusyBox for this, thus provides a |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
154 drop-in test environment for toybox. We install both implementations side |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
155 by side, redirecting the symlinks a command at a time until the older |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
156 package is no longer used, and can be removed.)</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
157 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
158 <p>This use case includes running init scripts and other shell scripts, running |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
159 configure, make, and install in each package, and providing basic command line |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
160 facilities such as a text editor. (It does not include a compiler toolchain or |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
161 C library, those are outside the scope of this project.)</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
162 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
163 <blockquote><b> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
164 <span id=development> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
165 bzcat cat cp dirname echo env patch rmdir sha1sum sleep sort sync |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
166 true uname wc which yes zcat |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
167 awk basename bzip2 chmod chown cmp cut date dd diff |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
168 egrep expr find grep gzip head hostname id install ln ls |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
169 mkdir mktemp mv od readlink rm sed sh tail tar touch tr uniq |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
170 wget whoami xargs chgrp comm gunzip less logname man split |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
171 tee test time bunzip2 chgrp chroot comm cpio dmesg |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
172 dnsdomainname ftpd ftpget ftpput gunzip ifconfig init less |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
173 logname losetup man mdev mount mountpoint nc pgrep pkill |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
174 pwd route split stat switch_root tac umount vi |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
175 </span> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
176 </b></blockquote> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
177 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
178 <p>Note: Aboriginal Linux installs bash 2.05b as #!/bin/sh and its scripts |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
179 require bash extensions not present in shells such as busybox ash. |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
180 This means that toysh needs to supply several bash extensions _and_ work |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
181 when called under the name "bash".</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
182 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
183 <hr /> |
693
4a5a250e0633
Announce release, add anchor tags to roadmap, tweak downloads in header (new bin directory pointing to downloads/binaries/$CURRENT).
Rob Landley <rob@landley.net>
parents:
678
diff
changeset
|
184 <h2><a name=android /><a href="#android">Use case: Replacing Android Toolbox</a></h2> |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
185 |
678
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
186 <p>Android has a policy against GPL in userspace, so even though BusyBox |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
187 predates Android by many years, they couldn't use it. Instead they grabbed |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
188 an old version of ash and implemented their own command line utility set |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
189 called "toolbox".</p> |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
190 |
678
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
191 <p>Toolbox doesn't have its own repository, instead it's part of Android's |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
192 <a href=https://android.googlesource.com/platform/system/core>system/core |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
193 git repository</a> (this analysis looked at commit 51ccef27cab58).</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
194 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
195 <h3>Toolbox commands:</h3> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
196 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
197 <p>According to core/toolbox/Android.mk the toolbox directory builds the |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
198 following commands:</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
199 |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
200 <blockquote><b> |
678
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
201 ls mount cat ps kill ln insmod rmmod lsmod ifconfig setconsole |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
202 rm mkdir rmdir reboot getevent sendevent date wipe sync umount |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
203 start stop notify cmp dmesg route hd dd df getprop setprop watchprops |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
204 log sleep renice printenv smd chmod chown newfs_msdos netstat ioctl |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
205 mv schedtop top iftop id uptime vmstat nandread ionice touch lsof md5 r |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
206 </b></blockquote> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
207 |
678
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
208 <p>If selinux is enabled, you also get:</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
209 <blockquote><b> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
210 getenforce setenforce chcon restorecon runcon getsebool setsebool load_policy |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
211 </b></blockquote> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
212 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
213 <p>The Android.mk file also refers to dynarray.c and toolbox.c as library |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
214 code. This leaves the following apparently unused C files in toolbox/*.c, each |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
215 of which has a command_main() function and seems to implement a standalone |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
216 command:</p> |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
217 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
218 <blockquote><b> |
678
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
219 alarm exists lsusb readtty rotatefb setkey syren |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
220 </b></blockquote> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
221 |
678
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
222 <h3>Command shell (ash)</h3> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
223 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
224 <p>The core/sh subdirectory contains a fork of ash 1.17, and sucks in |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
225 liblinenoise to provide command line history/editing.</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
226 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
227 <h3>Other Android core commands</h3> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
228 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
229 <p>Other than the toolbox and sh directories, the currently interesting |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
230 subdirectories in the core repository are fs_mgr, gpttool, init, |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
231 logcat, logwrapper, mkbootimg, netcfg, run-as, and sdcard.</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
232 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
233 <ul> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
234 <li><b>fs_mgr</b> - subset of mount</li> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
235 <li><b>gpttool</b> - subset of fdisk</li> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
236 <li><b>init</b> - Android's PID 1</li> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
237 <li><b>logcat</b> - read android log format</li> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
238 <li><b>logwrapper</b> - redirect stdio to android log</li> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
239 <li><b>mkbootimg</b> - create signed boot image</li> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
240 <li><b>netcfg</b> - network configuration (sucks in libnetutils)</li> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
241 <li><b>run-as</b> - subset of sudo</li> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
242 <li><b>sdcard</b> - FUSE wrapper to squash UID/GID/permissions to what FAT supports.</li> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
243 </ul> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
244 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
245 <p>Almost all of these reinvent an existing wheel with less functionality and a |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
246 different user interface. We may want to provide that interface, but |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
247 implementing the full commands (mount, fdisk, init, ifconfig with dhcp, |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
248 and sudo) come first.</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
249 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
250 <p>Although logcat/logwrapper also reinvent a wheel, Android did so in the |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
251 kernel and these provide an interface to that.</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
252 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
253 <p>Also, gpttool and mkbootimg are install tools, and sdcard looks like a |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
254 testing tool. These aren't a priority if android wants to use its own |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
255 bespoke code to install itself.</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
256 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
257 <h3>Analysis</h3> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
258 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
259 <p>For reference, combining everything listed above, we get:</p> |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
260 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
261 <blockquote><b> |
678
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
262 alarm ash cat chcon chmod chown cmp date dd df dmesg exists fs_mgr getenforce |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
263 getevent getprop getsebool gpttool hd id ifconfig iftop init insmod ioctl |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
264 ionice kill ln load_policy log logcat logwrapper ls lsmod lsof lsusb md5 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
265 mkbootimg mkdir mount mv nandread netcfg netstat newfs_msdos notify printenv |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
266 ps r readtty reboot renice restorecon rm rmdir rmmod rotatefb route run-as |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
267 runcon schedtop sdcard sendevent setconsole setenforce setkey setprop setsebool |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
268 sleep smd start stop sync syren top touch umount uptime vmstat watchprops wipe |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
269 </b></blockquote> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
270 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
271 <p>We may eventually implement all of that, but for toybox 1.0 we need to |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
272 focus a bit. For our first pass, let's ignore selinux, strip out the "unlisted" |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
273 commands except lsusb, and grab just logcat and logwrapper from the "core" |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
274 commands (since the rest have some full/standard version providing that |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
275 functionality, which we can implement a shim interface for later).</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
276 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
277 <p>This means toybox should implement:</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
278 <blockquote><b> |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
279 <span id=toolbox> |
678
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
280 cat chmod chown cmp date dd df dmesg getevent getprop hd id ifconfig iftop |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
281 insmod ioctl ionice kill ln log logcat logwrapper ls lsmod lsof lsusb md5 mkdir |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
282 mount mv nandread |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
283 netstat newfs_msdos notify printenv ps r reboot renice rm rmdir rmmod route |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
284 schedtop sendevent setconsole setprop sleep smd start stop sync top touch |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
285 umount uptime vmstat watchprops wipe |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
286 </span> |
797
36b43eafab38
Wrong closing tag in roadmap.html.
Rob Landley <rob@landley.net>
parents:
757
diff
changeset
|
287 </b></blockquote> |
678
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
288 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
289 <p>The following Toolbox commands are already covered in previous |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
290 sections of this analysis:</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
291 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
292 <blockquote><b> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
293 cat chmod chown cmp date dd df dmesg id ifconfig insmod kill ln ls lsmod |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
294 mkdir mount mv ps renice rm rmdir rmmod route sleep sync top touch umount |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
295 </b></blockquote> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
296 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
297 <p>Which leaves the following commands as new from Toolbox:</p> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
298 |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
299 <blockquote><b> |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
300 getevent getprop hd iftop ioctl ionice log lsof nandread netstat |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
301 newfs_msdos notify printenv r reboot schedtop sendevent setconsole |
ae3455c2989b
Update roadmap/status with new toolbox analysis based on android system/core git repo.
Rob Landley <rob@landley.net>
parents:
639
diff
changeset
|
302 setprop smd start stop top uptime vmstat watchprops wipe |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
303 </b></blockquote> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
304 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
305 <hr /> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
306 <h2>Requests:</h2> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
307 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
308 <p>The following additional commands have been requested by various users:</p> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
309 <blockquote><b> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
310 <span id=request> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
311 freeramdisk getty halt hexdump hwclock klogd modprobe ping ping6 pivot_root |
757
4094f14c47a2
Update mkstatus.py, roadmap.html, and status.html.
Rob Landley <rob@landley.net>
parents:
736
diff
changeset
|
312 poweroff rev sfdisk sudo syslogd taskset telnet telnetd tracepath traceroute |
4094f14c47a2
Update mkstatus.py, roadmap.html, and status.html.
Rob Landley <rob@landley.net>
parents:
736
diff
changeset
|
313 unzip usleep vconfig zip free login modinfo unshare netcat help w |
639
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
314 </span> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
315 </b></blockquote> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
316 |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
317 <!-- #include "footer.html" --> |
3c591e7a367d
More web page roadmap/status update stuff.
Rob Landley <rob@landley.net>
parents:
diff
changeset
|
318 |