comparison www/index.html @ 226:6aac63925eff

Update web pages.
author Rob Landley <rob@landley.net>
date Sat, 05 Jan 2008 18:09:49 -0600
parents cf3b2b8a371b
children
comparison
equal deleted inserted replaced
225:b4ec652305df 226:6aac63925eff
1 <!--#include file="header.html" --> 1 news.html
2 <p><b>January 2, 2008</b> - And <a href=downloads/toybox-0.0.4.tar.bz2>toybox-0.0.4.tar.bz2</a> is out. New applets include patch, touch, and sha1sum.</p>
3
4 <p><b>December 12, 2007</b> - Updated the list of implemented applications,
5 put up a <a href=todo.txt>todo list</a> and <a href=code.html>infrastructure
6 documentation</a>. Expect another release towards the end of the month.</p>
7
8 <p><b>June 18, 2007</b> - Put out
9 <a href=downloads/toybox-0.0.3.tar.bz2>toybox-0.0.3.tar.bz2</a> since it's
10 been too long since I did something like that. This one implements
11 catv, count, df, echo, false, oneit, pwd, sleep, sync, toysh, true, which,
12 and yes (which is what "make defconfig" enables). There are several other
13 commands not enabled by defconfig, because they don't really work yet.</p>
14
15 <p>Most of the general infrastructure's there now, although lots of tweaking
16 and optimizing is still needed. The test suite is skeletal and not entirely
17 checked in yet, but I'm working on that.</p>
18
19 <p>I don't have nearly as much time to work on this as I'd like, but I'm making
20 a little progress.</p>
21
22 <p><b>January 31, 2007</b> -
23 Screwing up the web page a bit, adding an index bar along the side
24 which doesn't properly connect up to anything yet. (Busy implementing
25 mke2fs and gene2fs.)</p>
26
27 <p>Warning: lots of this page is about what I plan to do, not what I've
28 already done. See <a href="#status>status</a> or <a href="/notes.html>my
29 development blog</a>, or <a href="/hg/toybox">browse the mercurial
30 archive</a>.</p>
31
32 <h2><a name="what" />What is ToyBox?</h2>
33
34 <p>The goal of the Toybox project is to create simple implementations of all
35 the important Linux command line utilities. These implementations should
36 be small (the entire project should total less than a megabyte, uncompressed),
37 fast, simple, and correctly implemented (which is related to standards
38 compliance, but isn't quite the same thing). Click for
39 <a href="design.html">more about the design goals</a></p>
40
41 <p>Toybox has configurable levels of functionality, and should scale from tiny
42 embedded systems up to full general purpose desktop and development
43 environments. The author plans to run it on his laptop, and the
44 <a href=/code/firmware>Firmware Linux</a> project is trying to get a complete
45 Linux system to rebuild itself from source code using toybox.</p>
46
47 <p>Toybox is <a href=license.html>Licensed under GPL version 2</a>.</p>
48
49 <p>Toybox can be built as a single "swiss army knife" executable (ala BusyBox
50 or Red Hat's Nash), or each command can be built as a traditional independent
51 executable.</p>
52
53 <h2><a name="commands" />Which commands are planned?</h2>
54
55 <b><h3>Relevant Standards</h3></b>
56
57 <p>Most commands are implemented according to
58 <a href=http://www.opengroup.org/onlinepubs/009695399/idx/utilities.html>The
59 Single Unix Specification version 3</a>. This does not mean that Toybox is
60 implementing every SUSv3 utility: some such as SCCS and ed are obsolete, while
61 others such as c99 are outside the scope of the project. Toybox also isn't
62 implementing full internationalization support: it should be 8-bit clean and
63 handle UTF-8, but otherwise we leave this to X11 and higher layers. And
64 some things (like $CDPATH support in "cd") await a good explanation of why
65 to bother with them.</p>
66
67 <p>The other major sources of commands are the Linux man pages, and testing
68 the behavior of existing commands (although not generally looking at their
69 source code).</p>
70
71 <b><h2><a name="status" />What commands are implemented?</h2></b>
72
73 <p>The following commands are currently implemented: basename, catv, chroot,
74 count, df, dirname, dmesg, echo, false, hello, mkfifo, oneit, pwd, sha1sum,
75 sleep, sync, true, tty, which, yes.</p>
76
77 <p>The following commands are partly implemented, in a somewhat usable but not
78 necessarily complete state: bzcat/bunzip2, help, mke2fs, netcat/nc, sh/toysh,
79 mdev, touch, readlink.</p>
80
81 <p>The following are partially implemented commands that don't actually do
82 anything yet: mke2fs, md5sum.</p>
83
84 <p>For more information, see <a href=todo.txt>the todo list</a>.</p>
85
86 <b><h3>Command Shell</h3></b>
87 <p>The Toybox Shell (toysh) aims to be a reasonable bash replacement. It
88 implements the "sh" and "toysh" commands, plus the built-in commands "cd" and
89 "exit". This is the largest single sub-project in toybox.</p>
90
91 <p>The following additional commands may be built into the shell (but not as
92 separate executables): cd, exit, if, while, for, function, fg, bg, jobs, source,
93 <a href="http://www.opengroup.org/onlinepubs/009695399/utilities/alias.html">alias</a>,
94 export, set, unset, read, trap, and exec. (Note: not done yet.)</p>
95
96 </ul>
97
98 <b><h2><a name="downloads" />Download</h2></b>
99
100 <p>This project is maintained as a mercurial archive. To get a copy of the
101 current development version, either use mercurial (hg clone
102 http://landley.net/toybox) or click on one of the zip/gz/bz2 links
103 at the top of the <a href=/hg/toybox>mercurial archive browser</a> page to get
104 an archive of the appropriate version. Click
105 <a href="/hg/toybox?cmd=tags">tags</a> to the tagged release versions ("tip"
106 is the current development version).</p>
107
108
109 <p>My <a href=/notes.html>development log</a> is currently the best way to
110 track what's going on with this project. There's also a
111 <a href=http://www2.them.com:8080/cgi-bin/mailman/listinfo/toybox>mailing list</a> for toybox development.</p>
112
113 <!--#include file="footer.html" -->