Mercurial > hg > aboriginal
annotate www/index.html @ 12:bed493dc4358
Missing a close tag.
author | Rob Landley <rob@landley.net> |
---|---|
date | Thu, 30 Nov 2006 17:02:46 -0500 |
parents | f8c588578fa1 |
children | 3e2c3a3095d8 |
rev | line source |
---|---|
0 | 1 <html> |
5
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
2 <title>Firmware Linux</title> |
0 | 3 <body> |
5
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
4 <h1>Firmware Linux</h1> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
5 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
6 <b><h2>What is it?</h2></b> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
7 |
7
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
8 <p>Firmware Linux is an embedded Linux distribution builder that creates a |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
9 bootable single file Linux system, based on uClibc and BusyBox/toybox. It's |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
10 basically a shell script that builds a complete Linux system from source code.</p> |
5
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
11 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
12 <p>FWL builds a cross-compiler and then uses it to build a minimal system |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
13 containing a native compiler, BusyBox and uClibc. Then it runs this minimal |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
14 system under an emulator (QEMU) and natively builds the final system. Finally |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
15 it packages the resulting system (kernel, initramfs, and root filesystem) into |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
16 one big bootable file.</p> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
17 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
18 <p>Here is a description of <a href=design.html>the design of Firmware |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
19 Linux</a>. That's the new (QEMU-based, capable of cross-compiling for non-x86) |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
20 design I'm working on now. The old (UML-based, x86 only) design is described |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
21 below.</p> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
22 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
23 <b><h2>Download</h2></b> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
24 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
25 <p>The current stuff is available from <a href=/hg/firmware>the mercurial |
12 | 26 repository</a>. That's the new (QEMU-based, capable of cross-compiling for |
5
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
27 different hardware platforms) design I'm working on now, and where new |
7
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
28 development happens. To use it, download the tarball and run "./build.sh".</p> |
5
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
29 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
30 <p>The old (UML-based, x86 only) design is still available from <a href=old>the |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
31 old website</a>, which is hideously out of date but contains a working |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
32 (ancient) version.</p> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
33 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
34 <b><h2>Documentation</h2></b> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
35 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
36 <p>Here's a quick <a href=build-process.html>overview of the Firmware Linux |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
37 build process</a>.</p> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
38 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
39 <p>Here is a description of <a href=design.html>the design of Firmware |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
40 Linux</a>.</p> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
41 |
7
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
42 <p>As always, read <a href=/notes.html>my development log</a> to see what I've |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
43 been up to on this project. |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
44 |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
45 <b><h2>History</h2></b> |
5
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
46 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
47 <p>I've been working on this project on and off since 1999, it's what |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
48 got me into BusyBox and uClibc and compilers and so on. Now it's where I put |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
49 together everything else I'm doing (like toybox and tinygcc) to see what |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
50 actually works and give it a good stress-test. (Eating your own dogfood, |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
51 and all that.)</p> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
52 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
53 <p>When the Firmware Linux project started, busybox applets like sed and sort |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
54 weren't powerful enough to handle the "./configure; make; make install" of |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
55 packages like binutils or gcc. Busybox was usable in an embedded router or |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
56 rescue floppy, but trying to get real work done with it revealed numerous |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
57 bugs and limitations.</p> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
58 |
7
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
59 <p>So I spent about 3 years improving Busybox (and pestering other people into |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
60 improving their bits), and along the way accidentally become the BusyBox |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
61 maintainer (at least until the project's crazy-uncle founder showed up and |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
62 <a href=http://lwn.net/Articles/202106/>drove me away again</a>). The result |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
63 is that in Firmware Linux, Busybox now functions as an effective replacement |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
64 for bzip2, coreutils, diffutils, e2fsprogs, file, findutils, gawk, grep, |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
65 inetutils, less, modutils, net-tools, patch, procps, sed, shadow, sysklogd, |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
66 sysvinit, tar, util-linux, and vim. I was in the process of writing a new |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
67 shell to replace bash with when I left.</p> |
5
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
68 |
7
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
69 <p>Firmware Linux stalled while I was BusyBox maintainer (2005-2006) due to |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
70 lack of time, and since that ended most of my spare programming time has gone |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
71 into launching toybox. But one of the main goals of toybox is to replace |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
72 BusyBox in Firmware Linux, so as toybox matures it'll naturally lead to more |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
73 of my time spent working on FWL.</p> |
5
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
74 |
7
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
75 <p>My server does not currently run on Firmware Linux. Making it do so |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
76 is a TODO item. After that, I'd like to get it to the point where I can |
f8c588578fa1
Finish shuffling old website material into new website.
Rob Landley <rob@landley.net>
parents:
6
diff
changeset
|
77 use it on my laptop. :)</p> |
5
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
78 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
79 <h2>Contact</h2> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
80 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
81 <p>My name is Rob Landley and my email address is rob@landley.net. |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
82 My <a href=notes.html>development log</a> is probably the best way to keep |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
83 track of what I'm working on, although I'll start a mailing list if enough |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
84 people pester me.</p> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
85 |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
86 </body> |
2907d5193cf6
A real web page, and description of the build process.
Rob Landley <rob@landley.net>
parents:
4
diff
changeset
|
87 </html> |