Here is exactly what I did, assuming I remember to put all the details in.
First, I copied .xinitrc.fluxbox to my home directory for the user using fluxbox. I then renamed it to .xinitrc (actually, I made a link, because sometimes I switch WMs. For instance, I have been running BadWM for the past month - however, you don't need to do that necessarily).
Now, you need to edit .xinitrc.
# $XConsortium: xinitrc.cpp,v 1.4 91/08/22 11:41:34 rws Exp $
# merge in defaults and keymaps
if [ -f $sysresources ]; then
xrdb -merge $sysresources
if [ -f $sysmodmap ]; then
if [ -f $userresources ]; then
xrdb -merge $userresources
if [ -f $usermodmap ]; then
# Start the window manager:
exec /usr/local/bin/wmclockmon &
exec /usr/local/bin/wmcpuload &
#exec /usr/local/bin/wmmemmon &
exec /usr/local/bin/wmmemload &
exec /usr/local/bin/wmdiskmon -p /dev/hdb1 -p /dev/hdb5 &
exec /usr/local/bin/wmnetload &
exec /usr/local/bin/wmupmon &
#exec /usr/local/bin/fbpager -w &
exec /usr/local/bin/wmblob &
exec /usr/local/bin/wminet &
exec /home/will/apps/wmget dock&
That is what my .xinitrc looks like. Lines that I don't want to run are commented out with a #. Programs I want to run are prefixed by the word "exec", and followed by a & (to tell the system to run this in the background). I give the full path to the binary - I can't remember why, but I always have
The most important thing to remember is to make sure all the stuff you want to run at the start of x is launched BEFORE the window manager.