GNOME Bugzilla – Bug 695081
GDM Crashes on login screen if empty file /var/lib/gdm/run-initial-setup is present
Last modified: 2013-05-28 20:11:57 UTC
While tweaking around with a Fedora 19 Rawhide upgrade, I managed to break GDM 3.7.90 (it was working until I installed the gnome-initial-setup package) to the point where it would not start at all when my computer started (would either show a "Oh no!" message with a sad computer face, or simply wait a a blank screen with an "X" for the cursor). After uninstalling gnome-initial-setup, the problem persisted. What I found was, after a few hours worth of searching, that an empty file, /var/lib/gdm/run-initial-setup, was still present, and deleting that file caused GDM to work again.
On one level, this is a packaging bug: the gnome-initial-setup package should not leave that file behind. But gdm should be more robust here.
Ray, Jasper - are we reasonably sure that gnome-initial-setup will not produce systems where one can't log in ?
after talking to ray, that is the case.
So one thing we don't handle, is we assuem gnome-initial-setup is always available. When it isn't available and we need it, then we crash. We should make it optional.
Created attachment 245473 [details] [review] daemon: Don't run initial-setup if initial-setup is not installed Right now, we always assume gnome-initial-setup is installed and there to use to create the initial user if necessary. This isn't always true, and our failure mode is to crash. This commit makes us more resiliant to a missing gnome-initial-setup.
Review of attachment 245473 [details] [review]: ... ::: daemon/gdm-simple-slave.c @@ +67,2 @@ #define INITIAL_SETUP_USERNAME "gnome-initial-setup" +#define GNOME_SESSION_SESSIONS_PATH DATADIR "/gnome-session/sessions" I guess to be completely correct we would need to narf this function: https://git.gnome.org/browse/gnome-session/tree/gnome-session/gsm-session-fill.c?id=3.8.2.1#n208 Not sure it's worth the code, though.
I'm going to go ahead and push this, but if anyone has any comments on the patch I'm happy to address them in follow up commits. This combined with the changes for bug 697292 means we can probably close this bug out. Attachment 245473 [details] pushed as 52b43e5 - daemon: Don't run initial-setup if initial-setup is not installed