I played around with this a bit more. The default start priority for gdm is 13
(this is what will result with update-rc.d -f remove gdm; dpkg-reconfigure gdm).
I tried moving the priority to 99, but it still doesn't work even then.
The only thing I can imagine is that there's something starting asynchronously
that has enough time to finish starting when I have to first log in and do a
sudo /etc/init.d/gdm start but not if gdm is started by init.
I played around with this a bit more. The default start priority for gdm is 13
(this is what will result with update-rc.d -f remove gdm; dpkg-reconfigure gdm).
I tried moving the priority to 99, but it still doesn't work even then.
The only thing I can imagine is that there's something starting asynchronously
that has enough time to finish starting when I have to first log in and do a
sudo /etc/init.d/gdm start but not if gdm is started by init.