# # Description: Do not show system users in the "frequent users" list # Ubuntu: https://launchpad.net/bugs/395281 # Upstream: http://bugzilla.gnome.org/show_bug.cgi?id=587708 # diff -Nur -x '*.orig' -x '*~' gdm-2.27.90/gui/simple-greeter/gdm-user-manager.c gdm-2.27.90.new/gui/simple-greeter/gdm-user-manager.c --- gdm-2.27.90/gui/simple-greeter/gdm-user-manager.c 2009-08-25 05:31:18.000000000 +1000 +++ gdm-2.27.90.new/gui/simple-greeter/gdm-user-manager.c 2009-08-25 14:35:01.000000000 +1000 @@ -1160,6 +1160,7 @@ gboolean res; char *username; gulong frequency; + struct passwd *pwent; GdmUser *user; frequency = 0; @@ -1175,6 +1176,18 @@ return; } + /* do not show system users; we cannot use gdm_user_manager_get_user() + * here since this creates/signals users as a side effect */ + pwent = getpwnam (username); + if (pwent == NULL) { + g_warning ("Unable to lookup user name %s: %s", username, g_strerror (errno)); + return; + } + if (pwent->pw_uid < DEFAULT_MINIMAL_UID) { + g_debug ("GdmUserManager: excluding user '%s'", username); + return; + } + user = gdm_user_manager_get_user (manager, username); if (user == NULL) { g_debug ("GdmUserManager: unable to lookup user '%s'", username);