Yesterday, I decided to upgrade my xmonad installation to the latest from the Darcs repository. There were no problems compiling the new version, but when I restarted X, xmonad wouldn’t start. After digging in the log files, I found this error:
xmonad-i386-linux: getProcessStatus: does not exist
Very strange, and not much help on Google either. After fiddling around a little, I remembered that xmonad compiles the ~/.xmonad/xmonad.hs config file into a new executable, which is called xmonad-i386-linux, and is placed in ~/.xmonad. Remove the file and everything will work again.
The problem seems to be that a new patch in the repository changes the way xmonad launches child processes, but xmonad does not automatically detect that the configuration should also be recompiled.