Вообще я делал примерно так:
[pre]
case "$sess" in
failsafe)
exec xterm -geometry 80x24-0-0 $*
;;
WindowMaker)
sess=wmaker
;;
IceWM)
sess=icewm
;;
""|default)
if test -x $HOME/.xsession; then
exec $HOME/.xsession $*
else
sess=kde
fi
;;
esac
[/pre]
а строчками ниже идет всякие штуки, которые пускают это дело либо как start$sess, либо просто $sess.
Забыл сказать, что в кде-контрол центре в Login Manager добавлял эти сессии WindowMaker, IceWM etc. Либо можно ручками прописать в файлик /usr/local/share/config/kdm/kdmrc в строчку SessionTypes=default,kde,WindowMaker,IceWM,failsafe. Дефолтом там только прописаны default,kde,failsafe. Кстати, если выбрать default, то загрузиться то, что прописано в $HOME/.xsession
У меня например там написано,
[pre]
[ ! -d $HOME/GNUstep/Library/WindowMaker ] && /usr/X11R6/bin/wmaker.inst
exec /usr/X11R6/bin/wmaker
[/pre]
Без первой строчки WindowMaker работать не должен (имеется ввиду первый раз), когда создаться иерархия каталогов $HOME/GNUStep/* ее можно будет убрать.
ps. Странное какое-то расположение у твоего wmaker'а
у меня он лежит в /usr/X11R6/bin/wmaker может поэтому?