Mercurial > hg > aboriginal
changeset 1321:4c0a2018502c
Clean up old references to impactlinux.com, add a FAQ explaining why that site went away, and start the long and winding process of redoing documentation.hmtl.
author | Rob Landley <rob@landley.net> |
---|---|
date | Fri, 07 Jan 2011 01:15:01 -0600 |
parents | c93eb8e54015 |
children | 39830acaaf90 |
files | www/FAQ.html www/about.html www/documentation.html www/news.html |
diffstat | 4 files changed, 82 insertions(+), 73 deletions(-) [+] |
line wrap: on
line diff
--- a/www/FAQ.html Mon Jan 03 02:08:33 2011 -0600 +++ b/www/FAQ.html Fri Jan 07 01:15:01 2011 -0600 @@ -38,6 +38,8 @@ <li><p><a href=#ubuntu_mispackaged_qemu>Q: ./run-emulator.sh says qemu-system-mips isn't found, but I installed qemu. Why isn't this working?</a></p></li> <li><p><a href=#windows>Q: Do you care about windows?</a></p></li> + +<li><p><a href=#impactlinux>Q: What happened to impactlinux.com?</a></p></li> </ul> </ul> @@ -87,9 +89,9 @@ <p>To grab the latest development version of the build scripts out of the source control system, go to the -<a href=http://impactlinux.com/hg/aboriginal>mercurial archive</a>. +<a href=/hg/aboriginal>mercurial archive</a>. If you don't want to install mercurial, you can grab a -<a href=http://impactlinux.com/hg/aboriginal/archive/tip.tar.bz2>tarball</a> of the current code at +<a href=/hg/aboriginal/archive/tip.tar.bz2>tarball</a> of the current code at any time.</p> </li> @@ -574,7 +576,16 @@ act involving ceremonial headgear and animal sacrifice just to get it to fail the same way twice.</p> +<hr /><a name=impactlinux /><h2>Q: What happened to impactlinux.com?</h2> +<p>In 2007 Mark Miller and I set up a small Linux consulting company, +but after a couple years (and the recession at the end of the second +Bush administration) we went on to other things.</p> + +<p>I kept the project hosted on the impactlinux.com website (which was +higher bandwidth than landley.net), but Mark shut down the website in +2010 when the corporation expired. Due to a miscommunication, this caught +me by surprise, and the mailing list archives and subscribers were lost.<p> <!--#include file="footer.html" --> </html>
--- a/www/about.html Mon Jan 03 02:08:33 2011 -0600 +++ b/www/about.html Fri Jan 07 01:15:01 2011 -0600 @@ -152,7 +152,7 @@ </blockquote> -<b><h1><a href=http://impactlinux.com/hg/aboriginal>Development</a></h1></b> +<b><h1><a href=http://landley.net/hg/aboriginal>Development</a></h1></b> <blockquote> <table border=1><tr><td bgcolor="#c0c0ff"> @@ -183,15 +183,14 @@ dependencies. Each layer can be either omitted or replaced with something else. The list of layers is in the <a href=README>source README</a>.</p> -<p>The project maintains a <a href=http://impactlinux.com/hg/aboriginal>development repository</a> +<p>The project maintains a <a href=http://landley.net/hg/aboriginal>development repository</a> using the Mercurial source control system. This includes RSS feeds for -<a href=http://impactlinux.com/hg/aboriginal/rss-log>each checkin</a> -and for <a href=http://impactlinux.com/hg/aboriginal/rss-tags>new releases</a>.</p> +<a href=http://landley.net/hg/aboriginal/rss-log>each checkin</a> +and for <a href=http://landley.net/hg/aboriginal/rss-tags>new releases</a>.</p> <p>Questions about Aboriginal Linux should be addressed to the project's -<a href=http://lists.impactlinux.com/listinfo.cgi/firmware-impactlinux.com>mailing -list</a>, or the IRC channel #edev on irc.freenode.org. The project -maintainer's <a href=http://landley.net/notes.html>blog</a> often includes +maintainer (rob at landley dot net), who has a +<a href=http://landley.net/notes.html>blog</a> that often includes notes about ongoing Aboriginal Linux development.</p> </blockquote>
--- a/www/documentation.html Mon Jan 03 02:08:33 2011 -0600 +++ b/www/documentation.html Fri Jan 07 01:15:01 2011 -0600 @@ -1,41 +1,44 @@ <!--#include file="header.html" --> -<h1>Documentation for Firmware Linux</h1> +<h1>Documentation for Aboriginal Linux</h1> <ul> -<li><a href="#what_is_it">What is Firmware Linux?</a></li> +<li><a href="#what_is_it">What is Aboriginal Linux?</a></li> <li><a href="#how_system_image">How do I use system images?</a></li> <li><a href="#how_build_source">How do I build my own customized system images from source code?</a></li> -<li><a href="#how_implemented">How is Firmware Linux implemented?</a></li> +<li><a href="#how_implemented">How is Aboriginal Linux implemented?</a></li> <li><a href="#why">Why do things this way?</a></li> <li><a href="#new_platform">Adding a new target platform</a></li> </ul> <hr /> -<a name="what_is_it"><h1>What is Firmware Linux?</h1></a> +<a name="what_is_it"><h1>What is Aboriginal Linux?</h1></a> -<p>Firmware Linux is a toolkit for building custom virtual machines. +<p>Aboriginal Linux is a toolkit for building custom virtual machines. It lets you boot virtual PowerPC, ARM, MIPS and other exotic systems on your x86 laptop, and do development in them.</p> -<p>The name "Firmware Linux" reflects FWL's origins as a tool for -embedded development. It provides an easy way to get started with -that, building your own code against uClibc and testing it on various -hardware platforms. But it has other uses as well, including -cross-platform regression testing, portability auditing, and toolchain -debugging.</p> +<p>The name "Aboriginal Linux" describes the project's goal of bootstrapping +a new Linux for a new target, doing all the cross compiling necessary to +transition to fully native development in the new environment. This new +Linux system can then be upgraded or replaced in-situ.</p> -<p>This documentation uses the name "Firmware Linux" (or abbreviation -"FWL") to refer to the <a href=downloads>build system</a>, and calls -the output of the build a "<a -href=downloads/binaries>system image</a>". The build -system is implemented as a series of bash scripts and configuration -files which compile a Linux development environment for the specified -target system and package it into a bootable binary image.</p> +<p>Aboriginal Linux provides an easy way to get started with embedded +development. It also lets you build your own code against uClibc and +test it on various hardware platforms, and even perform +cross-platform regression testing or portability auditing.</p> + +<p>This documentation uses the name "Aboriginal Linux" +to refer to the <a href=downloads>build system</a> consisting of a series +of bash scripts and configurationo files which download and compile software. +The output of that build system is referred to as a "<a +href=downloads/binaries>system image</a>". The build system +compiles a Linux development environment for the specified +target system, and packages it into a bootable binary system image.</p> <p>The base development environment is built from seven source packages: busybox, uClibc, gcc, binutils, make, bash, and the Linux -kernel. This is the smallest environment that can rebuild itself +kernel. This is the smallest and simplest environment that can rebuild itself entirely from source code, and thus the minimum a host system must cross compile in order to create a fully independent native development environment for a target.</p> @@ -46,28 +49,28 @@ commodity PC hardware. You can then build and install additional packages (zlib, bison, openssl...) within the virtual machine's native development environment, without having to do any additional cross -compiling.</p> +compiling. Several <a href=downloads/binaries/control-images>build control +images</a> are provided to automate this task, and you're welcome to +create your own from those examples.</p> -<p>FWL currently includes full support for arm, mips, powerpc, x86, +<p>Aboriginal Linux currently includes full support for arm, mips, powerpc, x86, x86-64 targets, and several other more exotic platforms; see the <a href=screenshots>screenshots page</a> for a complete list. The goal -for the FWL 1.0 release is to support every target QEMU can emulate in -"system" mode.</p> +project is to support every target QEMU can emulate in "system" mode.</p> -<p>Firmware Linux is licensed under GPL version 2. Its component packages are +<p>Aboriginal Linux is licensed under GPL version 2. Its component packages are redistributed under their respective licenses (mostly GPL and LGPL).</p> <h2>Optional extras</h2> <p>Intermediate stages of the build (such as the cross compiler and the -unpackaged root filesystem directory) may also be useful to Linux developers, +the raw root filesystem directory) may also be useful to Linux developers, so tarballs of them are saved during the build.</p> -<p>By default the build cross-compiles some optional extra packages (toybox, -distcc, uClibc++) and preinstalls them into the target filesystem. This is +<p>By default the build cross-compiles some optional extra packages (distcc +and uClibc++) and preinstalls them into the target filesystem. This is just a convenience; these packages build and install natively within the -minimal development system image just fine.<!-- TODO: experimentally confirm -that, make it configurable, add genext2fs and strace to the list? -->)</p> +minimal development system image just fine.</p> <hr /> <a name="how_system_image"><h1>Using system images</h1></a> @@ -81,14 +84,14 @@ <h2>system-image-*.tar.bz2</h2> <p>System images boot a complete linux system under an emulator. Each -system-image tarball contains an ext2 root filesystem image, a Linux kernel -configured to run under the emulator <a href=http://bellard.org/qemu/>QEMU</a>, -and scripts launch the virtual system under the emulator in various +system-image tarball contains a squashfs root filesystem image, a Linux kernel +configured to run under the emulator <a href=http://qemu.org>QEMU</a>, +and scripts to launch the virtual system under the emulator in various configurations.</p> <p>The steps to test boot a system image under QEMU are:</p> <ul> -<li>install QEMU 0.12.4 or later</li> +<li>install QEMU</li> <li>download the appropriate <a href=downloads/binaries>prebuilt binary tarball</a> for the target you're interested in</li> <li>extract it: <b>tar -xvjf system-image-$TARGET.tar.bz2</b></li> @@ -100,18 +103,23 @@ the emulated Linux's /dev/console hooked to stdin and stdout of the emulator process. (I.E. the shell prompt the script gives you after the boot messages scroll past is for a shell running inside the emulator. This lets you pipe -the output of other programs into the emulator, and capture the emulator's -output.)</p> +the output of other programs into the emulator, capture the emulator's +output with "tee", cut and paste in the terminal window, etc.)</p> <p>Type "cat /proc/cpuinfo" to confirm you're running in the emulator, then play around and have fun. Type "exit" when done.</p></li> -<p>Inside a system image, you generally wget source code from some URL and -compile it. (For example, you can wget the FWL build, extract it, and run it -inside one of its own system images to trivially prove it can rebuild itself.) -If you run a web server on your host's loopback interface, you an access it -inside QEMU using the special address "10.0.2.2". Example build scripts -are available in the /usr/src directory.</p> +<p>Inside a system image, you generally wget a source code package from a URL +and compile it. (You can even wget the Aboriginal Linux build scripts and +run them inside one of the system images to trivially prove the project +can rebuild itself.)</p> + +<p>Inside QEMU you can access the host system's loopback interface using the +special address "10.0.2.2". The build control images use this to run +busybox's FTP server on the host's loopack address, allowing the system +image to upload its results to the host at the end of the build. You can +also run web servers and ssh servers on the host's loopback, and the system +image can connect to them.</p> <h3>Extra space and speed</h3> @@ -478,16 +486,7 @@ <li><p><b>PREFERRED_MIRROR</b> - Tells download.sh to try to download packages from this URL first, before falling back to the normal mirror list. -For example, "PREFERRED_MIRROR=http://impactlinux.com/fwl/mirror".</p></li> - -<li><p><b>USE_TOYBOX</b> - Tells the host-tools.sh and mini-native.sh to -install the <a href=http://impactlinux.com/code/toybox>toybox</a> implementation -of commands (where available) instead of the busybox versions. This is an -alternate (simpler) implementation of many commands.</p> - -<p>Currently FWL always uses the toybox "patch" command, because the busybox -version can't apply patches at offsets.</p> -</li> +For example, "PREFERRED_MIRROR=http://landley.net/aboriginal/mirror".</p></li> <li><p><b>USE_UNSTABLE</b> - Lists packages to build alternate "unstable" versions for.</p> @@ -727,7 +726,7 @@ source package to fetch. If this source tarball cannot be fetched from this location, the download function tries to download the file from a series of fallback mirrors (stored in the variable MIRROR_LIST, set in include.sh). -The primary mirror is http://impactlinux.com/firmware/mirror +The primary mirror is http://landley.net/aboriginal/mirror which should have every source tarball used by the build.</p></li> <p>The package name is the filename at the end of URL minus any version
--- a/www/news.html Mon Jan 03 02:08:33 2011 -0600 +++ b/www/news.html Fri Jan 07 01:15:01 2011 -0600 @@ -10,7 +10,7 @@ <p>It's a month late, but <a href=downloads/aboriginal-1.0.1.tar.bz2>Aboriginal Linux 1.0.1</a> is finally out, -based on <a href=http://impactlinux.com/hg/firmware/shortlog/1318>hg commit +based on <a href=/hg/firmware/shortlog/1318>hg commit 1318</a>, using Linux 2.6.36, uClibc 0.9.31, and BusyBox 1.18.0.</p> <b><h3>Automated native build control images</h3></b> @@ -147,7 +147,7 @@ out to do. And thus:</p> <p><a href=downloads/aboriginal-1.0.0.tar.bz2>Aboriginal Linux 1.0</a> is out, -based on <a href=http://impactlinux.com/hg/firmware/shortlog/1238>hg commit +based on <a href=/hg/firmware/shortlog/1238>hg commit 1238</a>, using Linux 2.6.35, uClibc 0.9.31, and BusyBox 1.17.2.</p> <p>Yes, it's been over five months since the last release. I didn't want to @@ -389,7 +389,7 @@ <hr> <h2><a name="05-02-2010" />May 2, 2010</h2> <p>The name of the project is changing from Firmware Linux to Aboriginal -Linux. The new URL is "http://impactlinux.com/aboriginal".</p> +Linux. The new URL is "http://landley.net/aboriginal".</p> <p>Some reasons to move away from the old name are <a href=http://lists.impactlinux.com/pipermail/firmware-impactlinux.com/2009-October/000374.html>listed here</a>, @@ -402,7 +402,7 @@ <hr> <h2><a name="03-29-2010" />March 29, 2010</h2> <p><a href=downloads/firmware-0.9.11.tar.bz2>Version 0.9.11</a> is out, -based on <a href=http://impactlinux.com/hg/firmware/shortlog/1020>hg commit +based on <a href=/hg/firmware/shortlog/1020>hg commit 1020</a>. We're closing in on a 1.0 release, but not quite there yet.</p> <p>This version upgrades to Linux 2.6.33, uClibc 0.9.30.3, and BusyBox @@ -515,7 +515,7 @@ <h2><a name="02-02-2010" />February 2, 2010</h2> <p><a href=downloads/firmware-0.9.10.tar.bz2>Version 0.9.10</a> is out, -based on <a href=http://impactlinux.com/hg/firmware/shortlog/966>hg +based on <a href=/hg/firmware/shortlog/966>hg commit 966</a>.</p> <p>Yeah, I know 1.0 is overdue for a release, here's a resync point @@ -551,7 +551,7 @@ time and instead autodetecting the presence of libgcc_s.so vs libgcc.a and behaving appropriately. A largeish cleanup/refactoring of the compiler build (described in -<a href=http://impactlinux.com/hg/firmware/shortlog/944>commit 944</a>) +<a href=/hg/firmware/shortlog/944>commit 944</a>) added a new "native-compiler.sh" script, which handles building the improved "cross-compiler" tarball that includes thread support and uClibc++ and is statically linked against uClibc on the host. @@ -579,7 +579,7 @@ <hr> <h2><a name="12-08-2009" />December 8, 2009</h2> <p><a href=downloads/firmware-0.9.9.tar.bz2>Version 0.9.9</a> is out, -based on <a href=http://impactlinux.com/hg/firmware/shortlog/921>hg commit 921</a>.</p> +based on <a href=/hg/firmware/shortlog/921>hg commit 921</a>.</p> <p>Just a checkpoint on the way to 1.0, which is still planned for around new years, but there's been some schedule slippage already.</p> @@ -649,7 +649,7 @@ <h2><a name=11-07-2009 />November 7, 2009</h2> <p><a href=downloads/firmware-0.9.8.tar.bz2>Version 0.9.8</a> is out, based on hg commit 876. (If you want to see all the changes in this release, -look at <a href=http://impactlinux.com/hg/firmware/shortlog/876>commits 810 through 876</a>.)</p> +look at <a href=/hg/firmware/shortlog/876>commits 810 through 876</a>.)</p> <p.The current plan is to cut one more release at the end of the month, and then have the 1.0 release around new year's. This could be considered a @@ -823,7 +823,7 @@ release notes are a bit long.</p> <p>This release is based on -<a href=http://impactlinux.com/hg/firmware/log/807>mercurial version 807</a> +<a href=/hg/firmware/log/807>mercurial version 807</a> of the build scripts, and includes <b>Linux 2.6.30.4</b> and <b>BusyBox 1.14.3</b>. No new uClibc release is out since last time.</p> @@ -1179,7 +1179,7 @@ <hr> <h2><a name=08-06-2008 />August 6, 2008</h2> <p><a href=downloads/firmware-0.9.0.tar.bz2>Version 0.9.0</a> is out -(<a href=http://landley.net/hg/firmware/shortlog/378>changeset 378</a>) +(<a href=/hg/firmware/shortlog/378>changeset 378</a>) and can rebuild itself under itself. (The packaging step still requires User Mode Linux to create ext2 images, which only works on x86 and x86-64 hosts. The next release should replace that with something more portable.) @@ -1232,7 +1232,7 @@ <hr> <h2><a name=06-06-2008 />June 6, 2008</h2> <p><a href=downloads/firmware-0.4.0.tar.bz2>Version 0.4.0</a> is out -(<a href=http://landley.net/hg/firmware/shortlog/345>changeset 345</a>), +(<a href=/hg/firmware/shortlog/345>changeset 345</a>), with kernel 2.6.25.4 and the "distcc trick" working out of the box.</p> <p>The distcc trick accelerates a native build by calling out to the @@ -1265,7 +1265,7 @@ <hr> <h2><a name=01-29-2008 />January 29, 2008</h2> <p><a href=downloads/firmware-0.3.1.tar.bz2>Version 0.3.1</a> is out -(<a href=http://landley.net/hg/firmware/shortlog/275>changeset 275</a>), with +(<a href=/hg/firmware/shortlog/275>changeset 275</a>), with kernel 2.6.24. The <a href=downloads/images>images</a> are now tarballs each containing the ext2, zImage, and run script files. The run scripts now run qemu-setup.sh by default so /proc, /sys, /dev