New year didn't start so well at work. My Ubuntu box (12.04) wouldn't start any graphical desktops. /var/log/lightdm/x-0-greeter.log showed errors like:
** (at-spi2-registryd:2036): WARNING **: Failed to register client: GDBus.Error:org.freedesktop.DBus.Error.ServiceUnknown: The name org.gnome.SessionManager was not provided by any .service files
** (at-spi2-registryd:2036): WARNING **: Unable to register client with session manager
CRITICAL: g_error_free: assertion `error != NULL' failed
WARNING: IndicatorObject class does not have an accessible description.
WARNING: Getting layout failed: GDBus.Error:org.freedesktop.DBus.Error.UnknownMethod: No such interface `com.canonical.dbusmenu' on object at path /com/canonical/indicator/users/menu
CRITICAL: ido_calendar_menu_item_set_date: assertion `IDO_IS_CALENDAR_MENU_ITEM(menuitem)' failed
MESSAGE: Couldn't find primary device
WARNING: invalid cast from `GtkMenuItem' to `IndicatorMenuItem'
Turned out that for some reason ~/.Xauthority was now owned by root. Looked like this was changed during an upgrade I made on Dec 14th. I chowned it back to myself and that solved the issue.