diff options
Diffstat (limited to 'gnome-base/gdm')
-rw-r--r-- | gnome-base/gdm/Manifest | 16 | ||||
-rw-r--r-- | gnome-base/gdm/files/3.2.1.1/gdm | 11 | ||||
-rw-r--r-- | gnome-base/gdm/files/3.2.1.1/gdm-autologin | 10 | ||||
-rw-r--r-- | gnome-base/gdm/files/3.2.1.1/gdm-fingerprint | 14 | ||||
-rw-r--r-- | gnome-base/gdm/files/3.2.1.1/gdm-password | 11 | ||||
-rw-r--r-- | gnome-base/gdm/files/3.2.1.1/gdm-smartcard | 15 | ||||
-rw-r--r-- | gnome-base/gdm/files/3.2.1.1/gdm-welcome | 9 | ||||
-rw-r--r-- | gnome-base/gdm/files/3.2.1.1/gdm.service | 11 | ||||
-rw-r--r-- | gnome-base/gdm/files/gdm-2.32.0-automagic-libxklavier-support.patch | 60 | ||||
-rw-r--r-- | gnome-base/gdm/files/gdm-2.32.0-fix-daemonize-regression.patch | 126 | ||||
-rw-r--r-- | gnome-base/gdm/files/gdm-2.32.0-fix-vt-problems.patch | 195 | ||||
-rw-r--r-- | gnome-base/gdm/files/gdm-2.32.0-selinux-remove-attr.patch | 27 | ||||
-rw-r--r-- | gnome-base/gdm/files/gdm-2.32.0-xinitrc-ssh-agent.patch | 32 | ||||
-rw-r--r-- | gnome-base/gdm/files/gdm-3.2.1.1-custom-session.patch | 51 | ||||
-rw-r--r-- | gnome-base/gdm/files/gdm-3.3.92.1-disable-accessibility.patch | 30 | ||||
-rw-r--r-- | gnome-base/gdm/gdm-3.5.2.ebuild | 262 |
16 files changed, 0 insertions, 880 deletions
diff --git a/gnome-base/gdm/Manifest b/gnome-base/gdm/Manifest deleted file mode 100644 index 8ee6519..0000000 --- a/gnome-base/gdm/Manifest +++ /dev/null @@ -1,16 +0,0 @@ -AUX 3.2.1.1/gdm 274 RMD160 88c235b0e1907829a38a1be9c8f0fdc262b042d7 SHA1 3b08e4022e421417cb1fd9a03fd01c1ddedb27d5 SHA256 4c26f02021ffa41500fa98aeda61dde6d059243f027cf93f8fb00fde39a9edd3 -AUX 3.2.1.1/gdm-autologin 369 RMD160 2adb17241b378ad4ca10e6241cb21b5a679c0973 SHA1 8372a199f5e00fb0d9d2630d0ced060f190d2af2 SHA256 e964a100e72a8eccea4ed8e1558ae70cbe5b7cbea67415651d0c0bdcea2d06c8 -AUX 3.2.1.1/gdm-fingerprint 466 RMD160 3f63354ccce1de0dacc3c4b304673fa56fb35e4e SHA1 6e2d0d67e4c9cbff1efe3de5f57b1ace137c3314 SHA256 3af315d6abe928dd769f2cc9896d536e187ab373b29667c185e452ac6063d9cc -AUX 3.2.1.1/gdm-password 274 RMD160 88c235b0e1907829a38a1be9c8f0fdc262b042d7 SHA1 3b08e4022e421417cb1fd9a03fd01c1ddedb27d5 SHA256 4c26f02021ffa41500fa98aeda61dde6d059243f027cf93f8fb00fde39a9edd3 -AUX 3.2.1.1/gdm-smartcard 573 RMD160 6e1655b9b6d6cb1710cf052bcf45e0f305ecd244 SHA1 19d459d5970e53ac9a40abdedd183873309b37bf SHA256 9c548668770aa68e730e5d5159d77067dbd0795dae2b7ba6d6ee347f88e90062 -AUX 3.2.1.1/gdm-welcome 326 RMD160 c69bf97510ca352e0da904e9b922c9eadebe7bde SHA1 f626c04e40c838a795f6be599bf01481e16eb854 SHA256 9325241dfd722e58e93dd1dc81714bef4b3b211f4fb8551f39a698415722934a -AUX 3.2.1.1/gdm.service 202 RMD160 0192b184238f97e2060f4462bd6a9dcb0e2ec2f3 SHA1 f457a6f0c9e6e842eb1a8193ca4e27412e4b484b SHA256 21b105f56bc90178e05806583e3be5e74857c02ec6443318669f9ab6f947bb79 -AUX gdm-2.32.0-automagic-libxklavier-support.patch 2069 RMD160 805e7bfd5b2429c8fb5aeac397c2d564620ae41c SHA1 80bb72815646d40eb6a750a7be52d8e4f399d840 SHA256 91fdd46ab5ad1b4071cb798499ddd98bee47c67961906d1db0ee47cd4919fac5 -AUX gdm-2.32.0-fix-daemonize-regression.patch 4048 RMD160 4219fec833f0e62a10e52dee89ef5d1a8618d1c1 SHA1 69c5ed6869d5a467e64249f3afe695796c17c463 SHA256 e95e1ebfcfe2c896130e4925fa6f23911bcfe4db27e2a6788229538c6bb2a59d -AUX gdm-2.32.0-fix-vt-problems.patch 6156 RMD160 7c739dd278194e1a30672635e35b05f798ec9996 SHA1 6428abdc3c493c4b9f69fcaef8dcb88a910f4d14 SHA256 12da81b8085d76ce3099f1af0ec588c07c3f020f341f825683f4855c9303731e -AUX gdm-2.32.0-selinux-remove-attr.patch 851 RMD160 10dc29802fb29047188bff7aafe979a5e15e030a SHA1 d78bde425b7a141c91767c3e639ee0011feddadc SHA256 ad13d4b1253dca7d5ac362bcce9f5861c2830a3df32e5370a5a0d975c32ec258 -AUX gdm-2.32.0-xinitrc-ssh-agent.patch 863 RMD160 6ea58bdc1fa24d41f3c51fc7cdbabc05417053f0 SHA1 ad98258168b84c80d581085804b61649ac67e4d5 SHA256 71231d08baf41ee7b91c33c3d8a731c078d1d29328e09223efb1f579bacdaffe -AUX gdm-3.2.1.1-custom-session.patch 1317 RMD160 20a1dd5608f4154fe53fae4def03f509769da878 SHA1 4acf8ed9b11eb531505c0c58805f1b37948fcb77 SHA256 75bd1bdc0d396fee71ff41c2657f922a4c8e290c891cc72f47647ab832d0c285 -AUX gdm-3.3.92.1-disable-accessibility.patch 779 RMD160 559fac385732f3a97bbd5222e0fd94ba3b879a99 SHA1 a6874897dd36210b51497d7d9606b5ade04ce624 SHA256 a32bddeb5e57086df41b9db433152ae290a405d23c39f0ff497d61544f343528 -DIST gdm-3.5.2.tar.xz 1615452 RMD160 aa36b84ef62ffbbbe9d03f72b6091449db8be842 SHA1 fe921682759180939728b49bc397ab784417d559 SHA256 610dc3945b3aafc1aacc2fe574d34565bb6370e8e9efc207344241f4daee930d -EBUILD gdm-3.5.2.ebuild 8230 RMD160 b5478777266631dc823264e361c738faa2fc8330 SHA1 01a05a5e8ab8b12df19561b284d5fa4458152671 SHA256 91692870725f5094cf5c365980b0d325a5934a6cef570b403f3798cdd85e5e0e diff --git a/gnome-base/gdm/files/3.2.1.1/gdm b/gnome-base/gdm/files/3.2.1.1/gdm deleted file mode 100644 index d965eca..0000000 --- a/gnome-base/gdm/files/3.2.1.1/gdm +++ /dev/null @@ -1,11 +0,0 @@ -#%PAM-1.0 -auth optional pam_env.so -auth include system-login -auth required pam_nologin.so - -account include system-login - -password include system-login - -session include system-auth -#Keyring=session optional pam_gnome_keyring.so auto_start diff --git a/gnome-base/gdm/files/3.2.1.1/gdm-autologin b/gnome-base/gdm/files/3.2.1.1/gdm-autologin deleted file mode 100644 index 9d165d6..0000000 --- a/gnome-base/gdm/files/3.2.1.1/gdm-autologin +++ /dev/null @@ -1,10 +0,0 @@ -#%PAM-1.0 -auth optional pam_env.so -auth required pam_nologin.so -auth required pam_permit.so -account include system-login -password include system-login -session include system-auth -# For the keyring to unlock with autologin, you need to set an empty -# password on the keyring. -#Keyring=session optional pam_gnome_keyring.so auto_start diff --git a/gnome-base/gdm/files/3.2.1.1/gdm-fingerprint b/gnome-base/gdm/files/3.2.1.1/gdm-fingerprint deleted file mode 100644 index 7d38de9..0000000 --- a/gnome-base/gdm/files/3.2.1.1/gdm-fingerprint +++ /dev/null @@ -1,14 +0,0 @@ -#%PAM-1.0 -# Note: no pam_gnome_keyring.so support since the login password is not used -auth optional pam_env.so -auth required pam_tally2.so onerr=succeed -auth required pam_shells.so -auth required pam_nologin.so -auth required pam_fprintd.so -auth optional pam_permit.so - -account include system-login - -password required pam_deny.so - -session include system-auth diff --git a/gnome-base/gdm/files/3.2.1.1/gdm-password b/gnome-base/gdm/files/3.2.1.1/gdm-password deleted file mode 100644 index d965eca..0000000 --- a/gnome-base/gdm/files/3.2.1.1/gdm-password +++ /dev/null @@ -1,11 +0,0 @@ -#%PAM-1.0 -auth optional pam_env.so -auth include system-login -auth required pam_nologin.so - -account include system-login - -password include system-login - -session include system-auth -#Keyring=session optional pam_gnome_keyring.so auto_start diff --git a/gnome-base/gdm/files/3.2.1.1/gdm-smartcard b/gnome-base/gdm/files/3.2.1.1/gdm-smartcard deleted file mode 100644 index 5cf884d..0000000 --- a/gnome-base/gdm/files/3.2.1.1/gdm-smartcard +++ /dev/null @@ -1,15 +0,0 @@ -#%PAM-1.0 -auth optional pam_env.so -auth required pam_tally2.so onerr=succeed -auth required pam_shells.so -auth required pam_nologin.so -auth [success=done ignore=ignore default=die] pam_pkcs11.so wait_for_card card_only -auth optional pam_permit.so - -account include system-login - -password optional pam_pkcs11.so -password required pam_cracklib.so difok=2 minlen=8 dcredit=2 ocredit=2 retry=3 -password optional pam_permit.so - -session include system-auth diff --git a/gnome-base/gdm/files/3.2.1.1/gdm-welcome b/gnome-base/gdm/files/3.2.1.1/gdm-welcome deleted file mode 100644 index 932eefe..0000000 --- a/gnome-base/gdm/files/3.2.1.1/gdm-welcome +++ /dev/null @@ -1,9 +0,0 @@ -#%PAM-1.0 -auth required pam_env.so -auth required pam_permit.so -account required pam_nologin.so -account include system-services -password include system-services -session required pam_loginuid.so -session optional pam_keyinit.so force revoke -session include system-services diff --git a/gnome-base/gdm/files/3.2.1.1/gdm.service b/gnome-base/gdm/files/3.2.1.1/gdm.service deleted file mode 100644 index 63bb08e..0000000 --- a/gnome-base/gdm/files/3.2.1.1/gdm.service +++ /dev/null @@ -1,11 +0,0 @@ -[Unit] -Description=GNOME Display Manager -After=systemd-user-sessions.service - -[Service] -ExecStart=/usr/bin/gdm --nodaemon -Type=dbus -BusName=org.gnome.DisplayManager - -[Install] -WantedBy=graphical.target diff --git a/gnome-base/gdm/files/gdm-2.32.0-automagic-libxklavier-support.patch b/gnome-base/gdm/files/gdm-2.32.0-automagic-libxklavier-support.patch deleted file mode 100644 index 90c1cef..0000000 --- a/gnome-base/gdm/files/gdm-2.32.0-automagic-libxklavier-support.patch +++ /dev/null @@ -1,60 +0,0 @@ -From 481fe43b653b443ecfa8d4f3aa88d734d17cccd5 Mon Sep 17 00:00:00 2001 -From: Gilles Dartiguelongue <eva@gentoo.org> -Date: Tue, 2 Nov 2010 23:21:27 +0100 -Subject: [PATCH 6/6] fix libxklavier automagic support - -libxklavier support is optional, make that fact explicit. ---- - configure.ac | 28 +++++++++++++++++++--------- - 1 files changed, 19 insertions(+), 9 deletions(-) - -diff --git a/configure.ac b/configure.ac -index 71d0247..10dbb72 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -129,17 +129,26 @@ SIMPLE_GREETER_LIBS="$SIMPLE_GREETER_LIBS -lm" - AC_SUBST(SIMPLE_GREETER_CFLAGS) - AC_SUBST(SIMPLE_GREETER_LIBS) - --PKG_CHECK_MODULES(LIBXKLAVIER, -- libxklavier >= $LIBXKLAVIER_REQUIRED_VERSION, -- have_libxklavier=yes, -- have_libxklavier=no) --if test "x$have_libxklavier" = "xyes" ; then -- AC_DEFINE(HAVE_LIBXKLAVIER, [], [Define if we have libxklavier]) -+AC_ARG_ENABLE([libxklavier], -+ AS_HELP_STRING([--enable-libxklavier], -+ [Enable libxklavier support @<:@default=yes@:>@]), -+ enable_libxklavier=$enableval, -+ enable_libxklavier=yes) -+have_libxklavier=no -+if test "x$enable_libxklavier" = "xyes"; then -+ PKG_CHECK_MODULES(LIBXKLAVIER, -+ libxklavier >= $LIBXKLAVIER_REQUIRED_VERSION, -+ have_libxklavier=yes, -+ have_libxklavier=no) -+ if test "x$have_libxklavier" = "xyes" ; then -+ AC_DEFINE(HAVE_LIBXKLAVIER, [], [Define if we have libxklavier]) -+ fi -+ AC_SUBST(HAVE_LIBXKLAVIER) -+ AC_SUBST(LIBXKLAVIER_CFLAGS) -+ AC_SUBST(LIBXKLAVIER_LIBS) - fi -+ - AM_CONDITIONAL(HAVE_LIBXKLAVIER, test x$have_libxklavier = xyes) --AC_SUBST(HAVE_LIBXKLAVIER) --AC_SUBST(LIBXKLAVIER_CFLAGS) --AC_SUBST(LIBXKLAVIER_LIBS) - - PKG_CHECK_MODULES(SIMPLE_CHOOSER, - dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION -@@ -1467,5 +1476,6 @@ echo \ - SELinux support: ${with_selinux} - ConsoleKit support: ${use_console_kit} - UPower support: ${have_upower} -+ Libxklavier support: ${have_libxklavier} - Build with RBAC: ${msg_rbac_shutdown} - " --- -1.7.3.1 - diff --git a/gnome-base/gdm/files/gdm-2.32.0-fix-daemonize-regression.patch b/gnome-base/gdm/files/gdm-2.32.0-fix-daemonize-regression.patch deleted file mode 100644 index 2ae7f61..0000000 --- a/gnome-base/gdm/files/gdm-2.32.0-fix-daemonize-regression.patch +++ /dev/null @@ -1,126 +0,0 @@ -From 7f5104b242e6b36e6143183b14582d362763ff2a Mon Sep 17 00:00:00 2001 -From: Gilles Dartiguelongue <eva@gentoo.org> -Date: Tue, 2 Nov 2010 23:16:51 +0100 -Subject: [PATCH 2/6] daemonize so that the boot process can continue - -Gentoo bug: #236701 - -Originally from: Dan Nicholson <dbn.lists@gmail.com> - -Fork gdm-binary, except when -nodaemon is used - -gdm-binary now forks and the parent terminates, except when the --nodaemon or --nodaemon options are used. This provides compatibility -with xdm. Fixes bug #550170. - ---- - daemon/main.c | 64 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ - 1 files changed, 64 insertions(+), 0 deletions(-) - -diff --git a/daemon/main.c b/daemon/main.c -index 5b8d66b..191b6e3 100644 ---- a/daemon/main.c -+++ b/daemon/main.c -@@ -513,6 +513,56 @@ is_debug_set (void) - return debug; - } - -+static void -+dup_dev_null (int fd, int flags) -+{ -+ int nullfd; -+ int dupfd; -+ -+ VE_IGNORE_EINTR (nullfd = open ("/dev/null", flags)); -+ if (G_UNLIKELY (nullfd < 0)) { -+ gdm_fail (_("Cannot open /dev/null: %s!"), -+ strerror (errno)); -+ exit (EXIT_FAILURE); -+ } -+ -+ VE_IGNORE_EINTR (dupfd = dup2 (nullfd, fd)); -+ if (G_UNLIKELY (dupfd < 0)) { -+ gdm_fail (_("Cannot duplicate /dev/null: %s!"), -+ strerror (errno)); -+ exit (EXIT_FAILURE); -+ } -+ -+ VE_IGNORE_EINTR (close (nullfd)); -+} -+ -+static void -+daemonify (void) -+{ -+ pid_t pid; -+ -+ pid = fork (); -+ -+ /* terminate the parent */ -+ if (pid > 0) -+ exit (EXIT_SUCCESS); -+ -+ if (G_UNLIKELY (pid < 0)) { -+ gdm_fail (_("fork () failed: %s!"), strerror (errno)); -+ exit (EXIT_FAILURE); -+ } -+ -+ if (G_UNLIKELY (setsid () < 0)) { -+ gdm_fail (_("setsid () failed: %s!"), strerror (errno)); -+ exit (EXIT_FAILURE); -+ } -+ -+ /* reopen stdin, stdout, stderr with /dev/null */ -+ dup_dev_null (STDIN_FILENO, O_RDONLY); -+ dup_dev_null (STDOUT_FILENO, O_RDWR); -+ dup_dev_null (STDERR_FILENO, O_RDWR); -+} -+ - int - main (int argc, - char **argv) -@@ -523,14 +573,17 @@ main (int argc, - DBusGConnection *connection; - GError *error; - int ret; -+ int i; - gboolean res; - gboolean xdmcp_enabled; - GdmSignalHandler *signal_handler; - static gboolean do_timed_exit = FALSE; - static gboolean print_version = FALSE; - static gboolean fatal_warnings = FALSE; -+ static gboolean no_daemon = FALSE; - static GOptionEntry entries [] = { - { "fatal-warnings", 0, 0, G_OPTION_ARG_NONE, &fatal_warnings, N_("Make all warnings fatal"), NULL }, -+ { "nodaemon", 0, 0, G_OPTION_ARG_NONE, &no_daemon, N_("Do not fork into the background"), NULL }, - { "timed-exit", 0, 0, G_OPTION_ARG_NONE, &do_timed_exit, N_("Exit after a time (for debugging)"), NULL }, - { "version", 0, 0, G_OPTION_ARG_NONE, &print_version, N_("Print GDM version"), NULL }, - -@@ -547,6 +600,14 @@ main (int argc, - - g_type_init (); - -+ /* preprocess the arguments to support the xdm style -+ * -nodaemon option -+ */ -+ for (i = 0; i < argc; i++) { -+ if (strcmp (argv[i], "-nodaemon") == 0) -+ argv[i] = "--nodaemon"; -+ } -+ - context = g_option_context_new (_("GNOME Display Manager")); - g_option_context_add_main_entries (context, entries, NULL); - g_option_context_set_ignore_unknown_options (context, TRUE); -@@ -617,6 +678,9 @@ main (int argc, - exit (-1); - } - -+ if (no_daemon == FALSE) -+ daemonify (); -+ - /* pid file */ - delete_pid (); - write_pid (); --- -1.7.3.1 - diff --git a/gnome-base/gdm/files/gdm-2.32.0-fix-vt-problems.patch b/gnome-base/gdm/files/gdm-2.32.0-fix-vt-problems.patch deleted file mode 100644 index f219a14..0000000 --- a/gnome-base/gdm/files/gdm-2.32.0-fix-vt-problems.patch +++ /dev/null @@ -1,195 +0,0 @@ -From 64002e623fea54ab10040206d164c5fdee4a43d2 Mon Sep 17 00:00:00 2001 -From: Nirbheek Chauhan <nirbheek@gentoo.org> -Date: Fri, 15 Apr 2011 22:13:44 +0530 -Subject: [PATCH] Fix VT grab race with getty causing X to grab the wrong VT - -On bootup, if X is spawned without any args, it'll take up the first unused VT. -If GDM starts up before gettys are spawned, X takes up VT1 or VT2 depending on -the init system and bootsplash. - -This is problematic because afterwards getty will come up underneath X, and -cause keyboard problems and eventually crash X. - -So we read /etc/inittab, check for open VTs, compare the two values, and take -the conservative one. ---- - configure.ac | 4 ++ - daemon/Makefile.am | 1 + - daemon/gdm-server.c | 106 ++++++++++++++++++++++++++++++++++++++++++++++++++- - 3 files changed, 110 insertions(+), 1 deletions(-) - -diff --git a/configure.ac b/configure.ac -index ca0f8bb..b9e7462 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -302,6 +302,10 @@ AC_CHECK_TYPE(socklen_t,, - AC_CHECK_HEADERS(sys/sockio.h) - AC_CHECK_FUNCS([setresuid setenv unsetenv clearenv]) - -+dnl Needed for querying the kernel for free VTs -+AC_CHECK_HEADERS(sys/vt.h) -+AC_CHECK_HEADERS(sys/ioctl.h) -+ - dnl checks needed for Darwin compatibility to linux **environ. - AC_CHECK_HEADERS(crt_externs.h) - AC_CHECK_FUNCS(_NSGetEnviron) -diff --git a/daemon/Makefile.am b/daemon/Makefile.am -index da18835..c1b6bda 100644 ---- a/daemon/Makefile.am -+++ b/daemon/Makefile.am -@@ -14,6 +14,7 @@ AM_CPPFLAGS = \ - -DLIBEXECDIR=\"$(libexecdir)\" \ - -DLOGDIR=\"$(logdir)\" \ - -DSBINDIR=\"$(sbindir)\" \ -+ -DSYSCONFDIR=\""$(sysconfdir)"\" \ - -DGNOMELOCALEDIR=\""$(datadir)/locale"\" \ - -DGDM_XAUTH_DIR=\"$(GDM_XAUTH_DIR)\" \ - -DGDM_SCREENSHOT_DIR=\"$(GDM_SCREENSHOT_DIR)\" \ -diff --git a/daemon/gdm-server.c b/daemon/gdm-server.c -index 339f3cc..29d16dc 100644 ---- a/daemon/gdm-server.c -+++ b/daemon/gdm-server.c -@@ -26,6 +26,8 @@ - #include <unistd.h> - #include <string.h> - #include <sys/types.h> -+#include <sys/ioctl.h> -+#include <sys/vt.h> - #include <sys/wait.h> - #include <errno.h> - #include <ctype.h> -@@ -42,6 +44,7 @@ - #include <glib/gi18n.h> - #include <glib/gstdio.h> - #include <glib-object.h> -+#include <gio/gio.h> - - #include <X11/Xlib.h> /* for Display */ - -@@ -54,6 +57,8 @@ extern char **environ; - - #define GDM_SERVER_GET_PRIVATE(o) (G_TYPE_INSTANCE_GET_PRIVATE ((o), GDM_TYPE_SERVER, GdmServerPrivate)) - -+#define INITTAB SYSCONFDIR"/inittab" -+ - /* These are the servstat values, also used as server - * process exit codes */ - #define SERVER_TIMEOUT 2 /* Server didn't start */ -@@ -674,6 +679,105 @@ gdm_server_spawn (GdmServer *server, - } - - /** -+ * Parse the inittab file used by getty to spawn VTs to find unused ttys -+ */ -+static int -+get_free_vt_from_inittab () -+{ -+ GFile *gfile; -+ GFileInputStream *contents; -+ GDataInputStream *dstream; -+ GRegex *getty; -+ GMatchInfo *tty_match = NULL; -+ GSList *tty_list = NULL; -+ GError *error = NULL; -+ gchar *temp = NULL; -+ int vtno = 0; -+ -+ gfile = g_file_new_for_path (INITTAB); -+ contents = g_file_read (gfile, NULL, &error); -+ g_object_unref (gfile); -+ if (!contents) { -+ if (error) { -+ g_debug ("Unable to open file %s", INITTAB); -+ g_error_free (error); -+ } -+ goto out; -+ } -+ -+ dstream = g_data_input_stream_new (G_INPUT_STREAM (contents)); -+ getty = g_regex_new ("^c[0-9]+:.+getty.+tty([0-9]+)", 0, 0, NULL); -+ g_object_unref (contents); -+ -+ while (1) { -+ temp = g_data_input_stream_read_line (dstream, NULL, NULL, &error); -+ if (!temp) -+ break; -+ if (!g_regex_match (getty, temp, 0, &tty_match)) -+ continue; -+ g_free (temp); -+ temp = g_match_info_fetch (tty_match, 1); -+ if (!temp) -+ continue; -+ tty_list = g_slist_insert_sorted (tty_list, temp, (GCompareFunc)g_strcmp0); -+ g_match_info_free (tty_match); -+ } -+ -+ if (error) { -+ g_debug ("Unable to read line from %s", INITTAB); -+ g_error_free (error); -+ goto free; -+ } -+ -+ /* Ignore holes in vt allocation, just take the last one */ -+ temp = g_slist_last (tty_list)->data; -+ if (temp) -+ vtno = (int) g_ascii_strtoull (temp, NULL, 10) + 1; -+ -+free: -+ g_object_unref (dstream); -+ g_regex_unref (getty); -+ g_slist_free_full (tty_list, g_free); -+ g_free (error); -+out: -+ return vtno; -+} -+ -+/** -+ * Query the VT_* kernel ioctls to find an empty tty -+ */ -+static int -+get_free_vt_from_kernel() -+{ -+ int fd, vtno = 0; -+ -+ fd = open ("/dev/tty0", O_WRONLY, 0); -+ if ((ioctl(fd, VT_OPENQRY, &vtno) < 0) || (vtno == -1)) { -+ vtno = 0; -+ g_debug ("Unable to find a free vt, falling back to Xorg autodetect"); -+ } -+ return vtno; -+} -+ -+static gchar* -+get_free_vt () -+{ -+ int inittab_vtno, kernel_vtno; -+ gchar* vt = NULL; -+ -+ inittab_vtno = get_free_vt_from_inittab(); -+ if (inittab_vtno > 0) -+ g_debug ("Inittab says vt%i is free\n", inittab_vtno); -+ kernel_vtno = get_free_vt_from_kernel(); -+ if (kernel_vtno > 0) -+ g_debug ("Kernel says vt%i is free\n", kernel_vtno); -+ /* Select the greater of the two because getty will use the others */ -+ if (kernel_vtno != 0 && inittab_vtno != 0) -+ vt = g_strdup_printf ("vt%i", kernel_vtno > inittab_vtno ? kernel_vtno : inittab_vtno); -+ return vt; -+} -+ -+/** - * gdm_server_start: - * @disp: Pointer to a GdmDisplay structure - * -@@ -686,7 +790,7 @@ gdm_server_start (GdmServer *server) - gboolean res; - - /* fork X server process */ -- res = gdm_server_spawn (server, NULL); -+ res = gdm_server_spawn (server, get_free_vt()); - - return res; - } --- -1.7.3.4 - diff --git a/gnome-base/gdm/files/gdm-2.32.0-selinux-remove-attr.patch b/gnome-base/gdm/files/gdm-2.32.0-selinux-remove-attr.patch deleted file mode 100644 index e563aa4..0000000 --- a/gnome-base/gdm/files/gdm-2.32.0-selinux-remove-attr.patch +++ /dev/null @@ -1,27 +0,0 @@ -From 41badd6d2ca652a875fec3eea420ae876023076d Mon Sep 17 00:00:00 2001 -From: Gilles Dartiguelongue <eva@gentoo.org> -Date: Tue, 2 Nov 2010 23:15:54 +0100 -Subject: [PATCH 1/6] remove unneeded linker directive for selinux - -Gentoo bug: #41022 - ---- - configure.ac | 2 +- - 1 files changed, 1 insertions(+), 1 deletions(-) - -diff --git a/configure.ac b/configure.ac -index ed07dce..71d0247 100644 ---- a/configure.ac -+++ b/configure.ac -@@ -873,7 +873,7 @@ if test "x$with_selinux" = "xyes" ; then - AC_CHECK_LIB(selinux,setexeccon,/bin/true) - AC_CHECK_LIB(selinux,is_selinux_enabled,/bin/true) - AC_DEFINE(HAVE_SELINUX, 1, [Define if have selinux]) -- EXTRA_DAEMON_LIBS="$EXTRA_DAEMON_LIBS -lselinux -lattr" -+ EXTRA_DAEMON_LIBS="$EXTRA_DAEMON_LIBS -lselinux" - fi - - dnl --------------------------------------------------------------------------- --- -1.7.3.1 - diff --git a/gnome-base/gdm/files/gdm-2.32.0-xinitrc-ssh-agent.patch b/gnome-base/gdm/files/gdm-2.32.0-xinitrc-ssh-agent.patch deleted file mode 100644 index b1cddf1..0000000 --- a/gnome-base/gdm/files/gdm-2.32.0-xinitrc-ssh-agent.patch +++ /dev/null @@ -1,32 +0,0 @@ -From 1cb1841da3a8fedc1671637e2828d5e361af21fa Mon Sep 17 00:00:00 2001 -From: Gilles Dartiguelongue <eva@gentoo.org> -Date: Tue, 2 Nov 2010 23:19:31 +0100 -Subject: [PATCH 5/6] ssh-agent handling must be done at xinitrc.d - -Gentoo bug: #220603 ---- - data/Xsession.in | 8 -------- - 1 files changed, 0 insertions(+), 8 deletions(-) - -diff --git a/data/Xsession.in b/data/Xsession.in -index 0da187d..aa49b90 100755 ---- a/data/Xsession.in -+++ b/data/Xsession.in -@@ -189,14 +189,6 @@ if [ -d /etc/X11/xinit/xinitrc.d ]; then - done - fi - --# add ssh-agent if found --sshagent="`gdmwhich ssh-agent`" --if [ -n "$sshagent" ] && [ -x "$sshagent" ] && [ -z "$SSH_AUTH_SOCK" ]; then -- command="$sshagent -- $command" --elif [ -z "$sshagent" ] ; then -- echo "$0: ssh-agent not found!" --fi -- - echo "$0: Setup done, will execute: $command" - - eval exec $command --- -1.7.3.1 - diff --git a/gnome-base/gdm/files/gdm-3.2.1.1-custom-session.patch b/gnome-base/gdm/files/gdm-3.2.1.1-custom-session.patch deleted file mode 100644 index 0642f7c..0000000 --- a/gnome-base/gdm/files/gdm-3.2.1.1-custom-session.patch +++ /dev/null @@ -1,51 +0,0 @@ -From b96c19976b6876648fd91949f78f06cf5d269b18 Mon Sep 17 00:00:00 2001 -From: Gilles Dartiguelongue <eva@gentoo.org> -Date: Tue, 2 Nov 2010 23:19:07 +0100 -Subject: [PATCH] make custom session work - -Gentoo bug: #216984 - -fix custom sessions not doing sourcing in the proper order. ---- - data/Xsession.in | 18 +++++++++--------- - 1 files changed, 9 insertions(+), 9 deletions(-) - -diff --git a/data/Xsession.in b/data/Xsession.in -index 118518c..201be92 100755 ---- a/data/Xsession.in -+++ b/data/Xsession.in -@@ -155,15 +155,6 @@ fi - - xhost +si:localuser:`id -un` || : - --# run all system xinitrc shell scripts. --if [ -d /etc/X11/xinit/xinitrc.d ]; then -- for i in /etc/X11/xinit/xinitrc.d/* ; do -- if [ -x "$i" -a ! -d "$i" ]; then -- . "$i" -- fi -- done --fi -- - if [ "x$command" = "xcustom" ] ; then - if [ -x "$HOME/.xsession" ]; then - command="$HOME/.xsession" -@@ -191,6 +182,15 @@ if [ "x$command" = "xdefault" ] ; then - fi - fi - -+# run all system xinitrc shell scripts. -+if [ -d /etc/X11/xinit/xinitrc.d ]; then -+ for i in /etc/X11/xinit/xinitrc.d/* ; do -+ if [ -x "$i" -a ! -d "$i" ]; then -+ . "$i" -+ fi -+ done -+fi -+ - # add ssh-agent if found - sshagent="`gdmwhich ssh-agent`" - if [ -n "$sshagent" ] && [ -x "$sshagent" ] && [ -z "$SSH_AUTH_SOCK" ]; then --- -1.7.7 - diff --git a/gnome-base/gdm/files/gdm-3.3.92.1-disable-accessibility.patch b/gnome-base/gdm/files/gdm-3.3.92.1-disable-accessibility.patch deleted file mode 100644 index 1df7e58..0000000 --- a/gnome-base/gdm/files/gdm-3.3.92.1-disable-accessibility.patch +++ /dev/null @@ -1,30 +0,0 @@ -diff -Naur gdm-3.3.92.1//data/00-upstream-settings gdm-3.3.92.1.new//data/00-upstream-settings ---- gdm-3.3.92.1//data/00-upstream-settings 2012-02-08 04:50:32.000000000 +0530 -+++ gdm-3.3.92.1.new//data/00-upstream-settings 2012-03-25 14:24:01.387842352 +0530 -@@ -7,7 +7,7 @@ - # - - [org/gnome/desktop/a11y/keyboard] --enable=true -+enable=false - - [org/gnome/desktop/background] - show-desktop-icons=false -@@ -16,7 +16,7 @@ - exec='/bin/true' - - [org/gnome/desktop/interface] --toolkit-accessibility=true -+toolkit-accessibility=false - - [org/gnome/desktop/lockdown] - disable-application-handlers=true -@@ -35,7 +35,7 @@ - event-sounds=true - - [org/gnome/settings-daemon/plugins/a11y-keyboard] --active=true -+active=false - - [org/gnome/settings-daemon/plugins/a11y-settings] - active=false diff --git a/gnome-base/gdm/gdm-3.5.2.ebuild b/gnome-base/gdm/gdm-3.5.2.ebuild deleted file mode 100644 index 55abda0..0000000 --- a/gnome-base/gdm/gdm-3.5.2.ebuild +++ /dev/null @@ -1,262 +0,0 @@ -# Copyright 1999-2012 Gentoo Foundation -# Distributed under the terms of the GNU General Public License v2 -# $Header: $ - -EAPI="4" -GNOME2_LA_PUNT="yes" - -inherit autotools eutils gnome2 pam systemd - -DESCRIPTION="GNOME Display Manager" -HOMEPAGE="http://www.gnome.org/projects/gdm/" - -LICENSE="GPL-2" -SLOT="0" -KEYWORDS="~amd64 ~sh ~x86" - -IUSE="accessibility +consolekit +fallback fprint +gnome-shell ipv6 gnome-keyring +introspection plymouth selinux smartcard systemd tcpd test xinerama +xklavier" - -# NOTE: x11-base/xorg-server dep is for X_SERVER_PATH etc, bug #295686 -# nspr used by smartcard extension -# dconf, dbus and g-s-d are needed at install time for dconf update -COMMON_DEPEND=" - >=dev-libs/dbus-glib-0.74 - >=dev-libs/glib-2.29.3:2 - >=x11-libs/gtk+-2.91.1:3 - >=x11-libs/pango-1.3 - dev-libs/nspr - >=dev-libs/nss-3.11.1 - >=media-libs/fontconfig-2.5.0 - >=media-libs/libcanberra-0.4[gtk3] - >=x11-misc/xdg-utils-1.0.2-r3 - >=sys-power/upower-0.9 - >=sys-apps/accountsservice-0.6.12 - - gnome-base/dconf - >=gnome-base/gnome-settings-daemon-3.1.4 - gnome-base/gsettings-desktop-schemas - sys-apps/dbus - - app-text/iso-codes - - x11-base/xorg-server - x11-libs/libXi - x11-libs/libXau - x11-libs/libX11 - x11-libs/libXdmcp - x11-libs/libXext - x11-libs/libXft - x11-libs/libXrandr - x11-apps/sessreg - - virtual/pam - consolekit? ( sys-auth/consolekit ) - - accessibility? ( x11-libs/libXevie ) - gnome-keyring? ( >=gnome-base/gnome-keyring-2.22[pam] ) - introspection? ( >=dev-libs/gobject-introspection-0.9.12 ) - plymouth? ( sys-boot/plymouth ) - selinux? ( sys-libs/libselinux ) - systemd? ( >=sys-apps/systemd-39 ) - tcpd? ( >=sys-apps/tcp-wrappers-7.6 ) - xinerama? ( x11-libs/libXinerama ) - xklavier? ( >=x11-libs/libxklavier-4 )" -DEPEND="${COMMON_DEPEND} - test? ( >=dev-libs/check-0.9.4 ) - xinerama? ( x11-proto/xineramaproto ) - app-text/docbook-xml-dtd:4.1.2 - sys-devel/gettext - x11-proto/inputproto - x11-proto/randrproto - >=dev-util/intltool-0.40.0 - >=app-text/scrollkeeper-0.1.4 - >=app-text/gnome-doc-utils-0.3.2 - virtual/pkgconfig" -# XXX: These deps are from session and desktop files in data/ directory -# at-spi:1 is needed for at-spi-registryd (spawned by simple-chooser) -# fprintd is used via dbus by gdm-fingerprint-extension -RDEPEND="${COMMON_DEPEND} - >=gnome-base/gnome-session-2.91.92 - x11-apps/xhost - x11-themes/gnome-icon-theme-symbolic - - accessibility? ( - app-accessibility/gnome-mag - app-accessibility/gok - app-accessibility/orca - gnome-extra/at-spi:1 ) - consolekit? ( gnome-extra/polkit-gnome ) - fallback? ( x11-wm/metacity ) - fprint? ( - sys-auth/fprintd - sys-auth/pam_fprint ) - gnome-shell? ( >=gnome-base/gnome-shell-3.1.90 ) - !gnome-shell? ( x11-wm/metacity ) - smartcard? ( - app-crypt/coolkey - sys-auth/pam_pkcs11 ) - - !gnome-extra/fast-user-switch-applet" - -pkg_setup() { - DOCS="AUTHORS ChangeLog NEWS README TODO" - - # PAM is the only auth scheme supported - # even though configure lists shadow and crypt - # they don't have any corresponding code. - # --with-at-spi-registryd-directory= needs to be passed explicitly because - # of https://bugzilla.gnome.org/show_bug.cgi?id=607643#c4 - G2CONF="${G2CONF} - --disable-schemas-install - --disable-static - --localstatedir=${EPREFIX}/var - --with-xdmcp=yes - --enable-authentication-scheme=pam - --with-pam-prefix=${EPREFIX}/etc - --with-at-spi-registryd-directory=${EPREFIX}/usr/libexec - $(use_with accessibility xevie) - $(use_enable ipv6) - $(use_enable xklavier libxklavier) - $(use_with consolekit console-kit) - $(use_with plymouth) - $(use_with selinux) - $(use_with systemd) - $(use_with tcpd tcp-wrappers) - $(use_with xinerama)" - - enewgroup gdm - enewgroup video # Just in case it hasn't been created yet - enewuser gdm -1 -1 /var/lib/gdm gdm,video - - # For compatibility with certain versions of nvidia-drivers, etc., need to - # ensure that gdm user is in the video group - if ! egetent group video | grep -q gdm; then - # FIXME XXX: is this at all portable, ldap-safe, etc.? - # XXX: egetent does not have a 1-argument form, so we can't use it to - # get the list of gdm's groups - local g=$(groups gdm) - elog "Adding user gdm to video group" - usermod -G video,${g// /,} gdm || die "Adding user gdm to video group failed" - fi -} - -src_prepare() { - # remove unneeded linker directive for selinux, bug #41022 - epatch "${FILESDIR}/${PN}-2.32.0-selinux-remove-attr.patch" - - # daemonize so that the boot process can continue, bug #236701 - epatch "${FILESDIR}/${PN}-2.32.0-fix-daemonize-regression.patch" - - # GDM grabs VT2 instead of VT7, bug 261339, bug 284053, bug 288852 - epatch "${FILESDIR}/${PN}-2.32.0-fix-vt-problems.patch" - - # make custom session work, bug #216984 - epatch "${FILESDIR}/${PN}-3.2.1.1-custom-session.patch" - - # ssh-agent handling must be done at xinitrc.d, bug #220603 - epatch "${FILESDIR}/${PN}-2.32.0-xinitrc-ssh-agent.patch" - - # fix libxklavier automagic support - epatch "${FILESDIR}/${PN}-2.32.0-automagic-libxklavier-support.patch" - - # don't load accessibility support at runtime when USE=-accessibility - use accessibility || epatch "${FILESDIR}/${PN}-3.3.92.1-disable-accessibility.patch" - - # make gdm-fallback session the default if USE=-gnome-shell - if ! use gnome-shell; then - sed -e "s:'gdm-shell':'gdm-fallback':" \ - -i data/00-upstream-settings || die "sed failed" - fi - - mkdir -p "${S}"/m4 - intltoolize --force --copy --automake || die "intltoolize failed" - eautoreconf - - gnome2_src_prepare -} - -src_install() { - gnome2_src_install - - # Install the systemd unit file - systemd_dounit "${FILESDIR}/3.2.1.1/gdm.service" - - # gdm-binary should be gdm to work with our init (#5598) - rm -f "${ED}/usr/sbin/gdm" - ln -sfn /usr/sbin/gdm-binary "${ED}/usr/sbin/gdm" - # our x11's scripts point to /usr/bin/gdm - ln -sfn /usr/sbin/gdm-binary "${ED}/usr/bin/gdm" - - # log, etc. - keepdir /var/log/gdm - - # install XDG_DATA_DIRS gdm changes - echo 'XDG_DATA_DIRS="/usr/share/gdm"' > 99xdg-gdm - doenvd 99xdg-gdm - - # install PAM files - mkdir "${T}/pam.d" || die "mkdir failed" - cp "${FILESDIR}/3.2.1.1"/gdm{,-autologin,-password,-fingerprint,-smartcard,-welcome} \ - "${T}/pam.d" || die "cp failed" - use gnome-keyring && sed -i "s:#Keyring=::g" "${T}/pam.d"/* - dopamd "${T}/pam.d"/* -} - -pkg_postinst() { - gnome2_pkg_postinst - - dbus-launch dconf update || die "'dconf update' failed" - - ewarn - ewarn "This is an EXPERIMENTAL release, please bear with its bugs and" - ewarn "visit us on #gentoo-desktop if you have problems." - ewarn - - elog "To make GDM start at boot, edit /etc/conf.d/xdm" - elog "and then execute 'rc-update add xdm default'." - elog "If you already have GDM running, you will need to restart it." - - elog - elog "GDM ignores most non-localization environment variables. If you" - elog "need GDM to launch gnome-session with a particular environment," - elog "you need to use pam_env.so in /etc/pam.d/gdm-welcome; see" - elog "the pam_env man page for more information." - elog - - if use gnome-keyring; then - elog "For autologin to unlock your keyring, you need to set an empty" - elog "password on your keyring. Use app-crypt/seahorse for that." - fi - - if [ -f "/etc/X11/gdm/gdm.conf" ]; then - elog "You had /etc/X11/gdm/gdm.conf which is the old configuration" - elog "file. It has been moved to /etc/X11/gdm/gdm-pre-gnome-2.16" - mv /etc/X11/gdm/gdm.conf /etc/X11/gdm/gdm-pre-gnome-2.16 - fi - - # https://bugzilla.redhat.com/show_bug.cgi?id=513579 - # Lennart says this problem is fixed, but users are still reporting problems - # XXX: Do we want this elog? -# if has_version "media-libs/libcanberra[pulseaudio]" ; then -# elog -# elog "You have media-libs/libcanberra with the pulseaudio USE flag" -# elog "enabled. GDM will start a pulseaudio process to play sounds. This" -# elog "process should automatically terminate when a user logs into a" -# elog "desktop session. If GDM's pulseaudio fails to terminate and" -# elog "causes problems for users' audio, you can prevent GDM from" -# elog "starting pulseaudio by editing /var/lib/gdm/.pulse/client.conf" -# elog "so it contains the following two lines:" -# elog -# elog "autospawn = no" -# elog "daemon-binary = /bin/true" -# fi -} - -pkg_postrm() { - gnome2_pkg_postrm - - if rc-config list default | grep -q xdm; then - elog "To remove GDM from startup please execute" - elog "'rc-update del xdm default'" - fi -} |