# HG changeset patch # User Rob Landley # Date 1167346658 18000 # Node ID 2b66e5d3ae797a399f3d5806bf825f31658b44b9 # Parent c2becd45f162722f58a13c69cdfff40e8ea3b36f More website updates. diff -r c2becd45f162 -r 2b66e5d3ae79 www/design.html --- a/www/design.html Thu Dec 28 17:21:05 2006 -0500 +++ b/www/design.html Thu Dec 28 17:57:38 2006 -0500 @@ -2,6 +2,10 @@

The Firmware Linux build process

+

Firmware Linux is an embedded Linux distribution builder, which creates a +bootable single file Linux system based on uClibc and BusyBox/toybox. It's +basically a shell script that builds a complete Linux system from source code.

+

FWL builds a cross-compiler and then uses it to build a minimal system containing a native compiler, BusyBox and uClibc. Then it runs this minimal system under an emulator (QEMU) to natively build the final system. Finally it diff -r c2becd45f162 -r 2b66e5d3ae79 www/footer.html --- a/www/footer.html Thu Dec 28 17:21:05 2006 -0500 +++ b/www/footer.html Thu Dec 28 17:57:38 2006 -0500 @@ -1,7 +1,7 @@


- +
Copyright 2006 Rob Landley
Copyright 2006 Rob Landley <rob@landley.net>
diff -r c2becd45f162 -r 2b66e5d3ae79 www/header.html --- a/www/header.html Thu Dec 28 17:21:05 2006 -0500 +++ b/www/header.html Thu Dec 28 17:57:38 2006 -0500 @@ -5,19 +5,29 @@ - +
- +

Firmware Linux

+
About + diff -r c2becd45f162 -r 2b66e5d3ae79 www/history.html --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/www/history.html Thu Dec 28 17:57:38 2006 -0500 @@ -0,0 +1,40 @@ + + +

History

+ +

I've been working on this project on and off since 1999; it's what +got me into BusyBox and uClibc and compilers and so on. Now it's where I put +together everything else I'm doing (like toybox and the relocatable gcc +wrapper) to see what actually works and give it a good stress-test. (Eating +your own dogfood, and all that.)

+ +

When the Firmware Linux project started, busybox applets like sed and sort +weren't powerful enough to handle the "./configure; make; make install" of +packages like binutils or gcc. Busybox was usable in an embedded router or +rescue floppy, but trying to get real work done with it revealed numerous +bugs and limitations. (It hung, it segfaulted, produced the wrong output, +refused to run due to unrecognized command line options... You name it.)

+ +

So I spent about 3 years improving Busybox (and pestering other people into +improving their bits), and along the way accidentally become the BusyBox +maintainer (at least until the project's crazy-uncle founder showed up and +drove me away again). The result +is that in Firmware Linux, Busybox now functions as an effective replacement +for bzip2, coreutils, diffutils, e2fsprogs, file, findutils, gawk, grep, +inetutils, less, modutils, net-tools, patch, procps, sed, shadow, sysklogd, +sysvinit, tar, util-linux, and vim. I was in the process of writing a new +shell to replace bash with when I left.

+ +

Firmware Linux stalled while I was BusyBox maintainer (2005-2006) due to +lack of time, and since that ended most of my spare programming time has gone +into launching toybox. But one of the main goals of toybox is to replace +BusyBox in Firmware Linux, so as toybox matures it'll naturally lead to more +of my time spent working on FWL.

+ +

The server behind this website does not currently run on Firmware Linux. +Making it do so is a TODO item. After that, I'd like to get it to the point +where I can use it on my laptop. :)

+ +

A snapshot of the old website is available here.

+ + diff -r c2becd45f162 -r 2b66e5d3ae79 www/index.html --- a/www/index.html Thu Dec 28 17:21:05 2006 -0500 +++ b/www/index.html Thu Dec 28 17:57:38 2006 -0500 @@ -1,8 +1,4 @@ - -Firmware Linux - -

Firmware Linux

- +

News

Changeset 27 builds a relocatable armv4l cross-compile toolchain! Download the tarball, @@ -10,18 +6,6 @@ directory and use "bin/armv4l-unknown-linux-gnu-gcc" out of that (which I admit is a bit of a mouthful, for which I blame the FSF).

-

What is it?

- -

Firmware Linux is an embedded Linux distribution builder that creates a -bootable single file Linux system, based on uClibc and BusyBox/toybox. It's -basically a shell script that builds a complete Linux system from source code.

- -

FWL builds a cross-compiler and then uses it to build a minimal system -containing a native compiler, BusyBox and uClibc. Then it runs this minimal -system under an emulator (QEMU) and natively builds the final system. Finally -it packages the resulting system (kernel, initramfs, and root filesystem) into -one big bootable file.

-

Here is a description of the design of Firmware Linux. That's the new (QEMU-based, capable of cross-compiling for non-x86) design I'm working on now. The old (UML-based, x86 only) design is described @@ -93,5 +77,4 @@

I need to reorganize this web page.

- - +