Edit:
We have now a temporary git repository at gitorious:
http://gitorious.org/replicant

Before starting * root your phone * Backup your current system!!! Setup the build system
Let's say that our build directory is ~/replicant

Check out the Dream Android repository : {{{
mkdir bin
cd bin
wget http://android.git.kernel.org/repo
chmod a+x repo
cd ..
mkdir replicant
cd replicant
../bin/repo init -u git://gitorious.org/replicant/manifest.git
../bin/repo sync
}}}
Each time you want to build something * open a new console * Then type: {{{
cd ~/replicant
export ANDROID_JAVA_HOME=$JAVA_HOME
lunch htc_dream-eng
make
}}} * The files to flash are in ~/replicant/out/target/product/dream,flash them and then clear the cache * boot and push the wifi firmware if you want it

If you want to build a particular project * open a new console * build everything if it was not done before * Then type: {{{
cd ~/replicant
source build/envsetup.sh
export ANDROID_JAVA_HOME=$JAVA_HOME
lunch htc_dream-eng
#go into the directory containing an Android.mk
mm
}}} Status * ril works more or less: * * calls should work(in/out) * * sms should work(in/out) * * hearphones not supported * sound works even with headphones(beware calls's sound don't work with headphones)