Currently for one of my machines, I have it automatically starting X using rc.local. E.g by putting in the following line.
su -l myusername -c "xinit twm &"
Whilst this works pretty well, I seem to not be able to type anything on the keyboard (keypresses go to the ttyC0 console underneath instead). To hack around this I have to write a script that waits 10 seconds and then runs 'xinit twm'. With this then it seems to have expected behavior.
Can anyone suggest a reason for this?