Last I tried (admittedly a few weeks ago), firstboot didn't work
without rhgb enabled.
One possible race condition on this codepath in firstboot seemed to be
that if xrdb finishes running before the window manager connects to
the X server, the X server may terminate ('last client has
disconnected') and not be there when firstboot needs it to be.
Works for me in a quick test. The text mode bits work too.