diff options
Diffstat (limited to 'x11/gdm')
-rw-r--r-- | x11/gdm/Makefile | 17 | ||||
-rw-r--r-- | x11/gdm/distinfo | 6 | ||||
-rw-r--r-- | x11/gdm/files/gdm.in | 2 | ||||
-rw-r--r-- | x11/gdm/files/gdm.pam.in | 2 | ||||
-rw-r--r-- | x11/gdm/files/patch-configure | 109 | ||||
-rw-r--r-- | x11/gdm/files/patch-daemon-gdm-xdmcp-display-factory.c | 42 | ||||
-rw-r--r-- | x11/gdm/files/patch-daemon_gdm-display-access-file.c | 12 | ||||
-rw-r--r-- | x11/gdm/files/patch-daemon_gdm-session-worker.c | 20 | ||||
-rw-r--r-- | x11/gdm/files/patch-gui_simple-greeter_gdm-greeter-login-window.c | 155 | ||||
-rw-r--r-- | x11/gdm/files/patch-gui_simple-greeter_gdm-languages.c | 28 | ||||
-rw-r--r-- | x11/gdm/files/patch-gui_simple-greeter_gdm-user-manager.c | 25 | ||||
-rw-r--r-- | x11/gdm/files/patch-gui_simple-greeter_gdm-user.c | 12 | ||||
-rw-r--r-- | x11/gdm/files/patch-hal-keyboard | 31 | ||||
-rw-r--r-- | x11/gdm/pkg-install | 4 | ||||
-rw-r--r-- | x11/gdm/pkg-plist | 14 |
15 files changed, 351 insertions, 128 deletions
diff --git a/x11/gdm/Makefile b/x11/gdm/Makefile index 9a6e1a7baf58..0d362dad07d7 100644 --- a/x11/gdm/Makefile +++ b/x11/gdm/Makefile @@ -3,12 +3,12 @@ # Whom: Joe Marcus Clarke <marcus@FreeBSD.org> # # $FreeBSD$ -# $MCom: ports-stable/x11/gdm/Makefile,v 1.8 2009/04/15 23:39:01 kwm Exp $ +# $MCom: ports/x11/gdm/Makefile,v 1.164 2009/11/28 05:59:03 mezz Exp $ # PORTNAME= gdm -PORTVERSION= 2.26.1 -PORTREVISION= 7 +PORTVERSION= 2.28.1 +PORTREVISION= 1 CATEGORIES= x11 gnome MASTER_SITES= GNOME DIST_SUBDIR= gnome2 @@ -18,8 +18,10 @@ COMMENT= GNOME 2 version of xdm display manager BUILD_DEPENDS= zenity:${PORTSDIR}/x11/zenity LIB_DEPENDS= ck-connector.0:${PORTSDIR}/sysutils/consolekit \ + polkit-gtk-1.0:${PORTSDIR}/sysutils/polkit-gnome \ execinfo:${PORTSDIR}/devel/libexecinfo \ - hal.1:${PORTSDIR}/sysutils/hal + hal.1:${PORTSDIR}/sysutils/hal \ + canberra-gtk.0:${PORTSDIR}/audio/libcanberra RUN_DEPENDS= zenity:${PORTSDIR}/x11/zenity \ ${LOCALBASE}/libexec/gnome-settings-daemon:${PORTSDIR}/sysutils/gnome-settings-daemon \ gnome-session:${PORTSDIR}/x11/gnome-session @@ -35,8 +37,8 @@ INSTALLS_ICONS= yes USE_RC_SUBR= gdm USE_GNOME_SUBR= yes USE_GMAKE= yes -USE_GNOME= gnomehack intlhack gnomehier libgnomeui librsvg2 gnomedocutils \ - gnomeprefix gnomepanel +USE_GNOME= gnomehack intlhack gnomehier gconf2 libglade2 librsvg2 \ + gnomedocutils gnomeprefix gnomepanel GCONF_SCHEMAS= gdm-simple-greeter.schemas GNU_CONFIGURE= yes CONFIGURE_ARGS= --with-working-directory=${PREFIX}/etc/gdm/home @@ -81,6 +83,8 @@ post-patch: ${WRKSRC}/data/session-setup.entries @${REINPLACE_CMD} -e 's|/usr/X11R6|${LOCALBASE}|g' \ ${WRKSRC}/configure ${WRKSRC}/daemon/*.c ${WRKSRC}/po/*.po + @${REINPLACE_CMD} -e 's|/usr/lib|${LOCALBASE}/lib|g' \ + ${WRKSRC}/data/greeter-autostart/*.desktop.in* post-install: ${INSTALL_DATA} ${WRKSRC}/data/gconf.path \ @@ -94,7 +98,6 @@ post-install: ${PREFIX}/etc/gdm/custom.conf.default ${MKDIR} ${PREFIX}/share/xsessions ${INSTALL_DATA} ${WRKDIR}/gdm.pam ${PREFIX}/etc/pam.d/gdm - @${MKDIR} ${PREFIX}/etc/gdm/Sessions @${SED} -e 's|%%PREFIX%%|${PREFIX}|g' < ${PKGDIR}/pkg-message \ | /usr/bin/fmt 75 79 > ${PKGMESSAGE} @${CAT} ${PKGMESSAGE} diff --git a/x11/gdm/distinfo b/x11/gdm/distinfo index e0eb9e84b26e..c2b797f0de19 100644 --- a/x11/gdm/distinfo +++ b/x11/gdm/distinfo @@ -1,3 +1,3 @@ -MD5 (gnome2/gdm-2.26.1.tar.bz2) = c2c15f8b741962f278fa7e790aaa9a2b -SHA256 (gnome2/gdm-2.26.1.tar.bz2) = 34abc69bdfd1b6bb6d1f64dd1e34652c61310dc69305712d7aeec6203678fa4c -SIZE (gnome2/gdm-2.26.1.tar.bz2) = 2526832 +MD5 (gnome2/gdm-2.28.1.tar.bz2) = 917dc80f5ef6adcdc15193de238476db +SHA256 (gnome2/gdm-2.28.1.tar.bz2) = da77a6fd9d4cc76b68dd4354839f953f8df5fb7921c7777b80256916533a3e7a +SIZE (gnome2/gdm-2.28.1.tar.bz2) = 2332716 diff --git a/x11/gdm/files/gdm.in b/x11/gdm/files/gdm.in index a6a0a8d70eec..7190a891e9ac 100644 --- a/x11/gdm/files/gdm.in +++ b/x11/gdm/files/gdm.in @@ -1,6 +1,6 @@ #!/bin/sh # $FreeBSD$ -# $MCom$ +# $MCom: ports/x11/gdm/files/gdm.in,v 1.38 2009/09/26 13:42:01 marcus Exp $ # PROVIDE: gdm # REQUIRE: LOGIN cleanvar moused syscons dbus hald diff --git a/x11/gdm/files/gdm.pam.in b/x11/gdm/files/gdm.pam.in index 014d6c8151e9..1f16ea8e8ca2 100644 --- a/x11/gdm/files/gdm.pam.in +++ b/x11/gdm/files/gdm.pam.in @@ -1,6 +1,6 @@ # # $FreeBSD$ -# $MCom$ +# $MCom: ports/x11/gdm/files/gdm.pam.in,v 1.8 2009/09/26 13:42:01 marcus Exp $ # # PAM configuration for the "gdm" service # diff --git a/x11/gdm/files/patch-configure b/x11/gdm/files/patch-configure index baa14aa863dd..220aa1cb6ac2 100644 --- a/x11/gdm/files/patch-configure +++ b/x11/gdm/files/patch-configure @@ -1,68 +1,137 @@ ---- configure.orig 2009-05-02 22:45:53.000000000 -0400 -+++ configure 2009-05-02 22:47:16.000000000 -0400 -@@ -19163,15 +19163,18 @@ if test -n "$DAEMON_CFLAGS"; then - if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dbus-glib-1 >= \$DBUS_GLIB_REQUIRED_VERSION +--- configure.orig 2009-09-22 12:26:34.000000000 +0200 ++++ configure 2009-09-22 12:29:51.000000000 +0200 +@@ -22494,10 +22494,12 @@ + { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dbus-glib-1 >= \$DBUS_GLIB_REQUIRED_VERSION gobject-2.0 >= \$GLIB_REQUIRED_VERSION + gio-2.0 >= \$GLIB_REQUIRED_VERSION + hal \"") >&5 ($PKG_CONFIG --exists --print-errors "dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION + hal ") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + echo "$as_me:$LINENO: \$? = $ac_status" >&5 +@@ -22519,10 +22521,12 @@ + { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dbus-glib-1 >= \$DBUS_GLIB_REQUIRED_VERSION + gobject-2.0 >= \$GLIB_REQUIRED_VERSION + gio-2.0 >= \$GLIB_REQUIRED_VERSION ++ hal + \"") >&5 + ($PKG_CONFIG --exists --print-errors "dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION + gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION ++ hal + ") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 +@@ -22530,6 +22534,7 @@ + pkg_cv_COMMON_LIBS=`$PKG_CONFIG --libs "dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION + gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION ++ hal + " 2>/dev/null` + else + pkg_failed=yes +@@ -22551,11 +22556,13 @@ + COMMON_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION + gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION ++ hal + " 2>&1` + else + COMMON_PKG_ERRORS=`$PKG_CONFIG --print-errors "dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION + gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION ++ hal + " 2>&1` + fi + # Put the nasty error message in config.log where it belongs +@@ -22564,6 +22571,7 @@ + { { echo "$as_me:$LINENO: error: Package requirements (dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION + gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION ++ hal + ) were not met: + + $COMMON_PKG_ERRORS +@@ -22578,6 +22586,7 @@ + echo "$as_me: error: Package requirements (dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION + gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION ++ hal + ) were not met: + + $COMMON_PKG_ERRORS +@@ -22634,10 +22643,12 @@ + { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dbus-glib-1 >= \$DBUS_GLIB_REQUIRED_VERSION + gobject-2.0 >= \$GLIB_REQUIRED_VERSION + gio-2.0 >= \$GLIB_REQUIRED_VERSION ++ hal + \"") >&5 + ($PKG_CONFIG --exists --print-errors "dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION + gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION ++ hal + ") 2>&5 + ac_status=$? + echo "$as_me:$LINENO: \$? = $ac_status" >&5 +@@ -22645,6 +22656,7 @@ pkg_cv_DAEMON_CFLAGS=`$PKG_CONFIG --cflags "dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION + hal " 2>/dev/null` else pkg_failed=yes -@@ -19185,15 +19188,18 @@ if test -n "$DAEMON_LIBS"; then - if test -n "$PKG_CONFIG" && \ - { ($as_echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dbus-glib-1 >= \$DBUS_GLIB_REQUIRED_VERSION +@@ -22659,10 +22671,12 @@ + { (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"dbus-glib-1 >= \$DBUS_GLIB_REQUIRED_VERSION gobject-2.0 >= \$GLIB_REQUIRED_VERSION + gio-2.0 >= \$GLIB_REQUIRED_VERSION + hal \"") >&5 ($PKG_CONFIG --exists --print-errors "dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION + hal ") 2>&5 ac_status=$? - $as_echo "$as_me:$LINENO: \$? = $ac_status" >&5 - (exit $ac_status); }; then + echo "$as_me:$LINENO: \$? = $ac_status" >&5 +@@ -22670,6 +22684,7 @@ pkg_cv_DAEMON_LIBS=`$PKG_CONFIG --libs "dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION + hal " 2>/dev/null` else pkg_failed=yes -@@ -19214,10 +19220,12 @@ fi - if test $_pkg_short_errors_supported = yes; then +@@ -22691,11 +22706,13 @@ DAEMON_PKG_ERRORS=`$PKG_CONFIG --short-errors --print-errors "dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION + hal " 2>&1` else DAEMON_PKG_ERRORS=`$PKG_CONFIG --print-errors "dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION + hal " 2>&1` fi # Put the nasty error message in config.log where it belongs -@@ -19225,6 +19233,7 @@ fi - - { { $as_echo "$as_me:$LINENO: error: Package requirements (dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION +@@ -22704,6 +22721,7 @@ + { { echo "$as_me:$LINENO: error: Package requirements (dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION + hal ) were not met: $DAEMON_PKG_ERRORS -@@ -19238,6 +19247,7 @@ See the pkg-config man page for more det - " >&5 - $as_echo "$as_me: error: Package requirements (dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION +@@ -22718,6 +22736,7 @@ + echo "$as_me: error: Package requirements (dbus-glib-1 >= $DBUS_GLIB_REQUIRED_VERSION gobject-2.0 >= $GLIB_REQUIRED_VERSION + gio-2.0 >= $GLIB_REQUIRED_VERSION + hal ) were not met: diff --git a/x11/gdm/files/patch-daemon-gdm-xdmcp-display-factory.c b/x11/gdm/files/patch-daemon-gdm-xdmcp-display-factory.c index 63fb5db1c176..692c275167b8 100644 --- a/x11/gdm/files/patch-daemon-gdm-xdmcp-display-factory.c +++ b/x11/gdm/files/patch-daemon-gdm-xdmcp-display-factory.c @@ -1,5 +1,5 @@ ---- daemon/gdm-xdmcp-display-factory.c.orig 2009-03-16 16:12:08.000000000 -0400 -+++ daemon/gdm-xdmcp-display-factory.c 2009-05-16 18:17:26.000000000 -0400 +--- daemon/gdm-xdmcp-display-factory.c.orig 2009-07-20 03:09:09.000000000 +0200 ++++ daemon/gdm-xdmcp-display-factory.c 2009-07-20 09:54:25.000000000 +0200 @@ -35,6 +35,7 @@ #include <netdb.h> #include <arpa/inet.h> @@ -46,7 +46,7 @@ if (bind (sock, ai->ai_addr, ai->ai_addrlen) < 0) { g_warning ("bind: %s", g_strerror (errno)); close (sock); -@@ -833,7 +849,7 @@ gdm_xdmcp_send_willing (GdmXdmcpDisplayF +@@ -835,7 +851,7 @@ gdm_xdmcp_send_willing (GdmXdmcpDisplayF XdmcpFlush (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)gdm_address_peek_sockaddr_storage (address), @@ -55,7 +55,7 @@ g_free (status.data); } -@@ -877,7 +893,7 @@ gdm_xdmcp_send_unwilling (GdmXdmcpDispla +@@ -879,7 +895,7 @@ gdm_xdmcp_send_unwilling (GdmXdmcpDispla XdmcpFlush (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)gdm_address_peek_sockaddr_storage (address), @@ -64,7 +64,7 @@ last_time = time (NULL); } -@@ -986,7 +1002,7 @@ gdm_xdmcp_send_forward_query (GdmXdmcpDi +@@ -988,7 +1004,7 @@ gdm_xdmcp_send_forward_query (GdmXdmcpDi XdmcpFlush (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)gdm_address_peek_sockaddr_storage (ic->chosen_address), @@ -73,7 +73,7 @@ g_free (port.data); g_free (addr.data); -@@ -1689,7 +1705,7 @@ gdm_xdmcp_really_send_managed_forward (G +@@ -1691,7 +1707,7 @@ gdm_xdmcp_really_send_managed_forward (G XdmcpFlush (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)gdm_address_peek_sockaddr_storage (address), @@ -82,7 +82,7 @@ g_free (addr.data); } -@@ -1770,7 +1786,7 @@ gdm_xdmcp_send_got_managed_forward (GdmX +@@ -1772,7 +1788,7 @@ gdm_xdmcp_send_got_managed_forward (GdmX XdmcpFlush (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)gdm_address_peek_sockaddr_storage (address), @@ -91,7 +91,7 @@ } static gboolean -@@ -1943,7 +1959,7 @@ gdm_xdmcp_send_decline (GdmXdmcpDisplayF +@@ -1945,7 +1961,7 @@ gdm_xdmcp_send_decline (GdmXdmcpDisplayF XdmcpFlush (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)gdm_address_peek_sockaddr_storage (address), @@ -100,7 +100,7 @@ /* Send MANAGED_FORWARD to indicate that the connection * reached some sort of resolution */ -@@ -2091,7 +2107,7 @@ gdm_xdmcp_send_accept (GdmXdmcpDisplayFa +@@ -2093,7 +2109,7 @@ gdm_xdmcp_send_accept (GdmXdmcpDisplayFa XdmcpFlush (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)gdm_address_peek_sockaddr_storage (address), @@ -109,25 +109,7 @@ host = NULL; gdm_address_get_numeric_info (address, &host, NULL); -@@ -2309,8 +2325,6 @@ gdm_xdmcp_handle_request (GdmXdmcpDispla - authorization_data.data = (CARD8 *) cookie->data; - authorization_data.length = cookie->len; - -- g_array_free (cookie, TRUE); -- - /* the addrs are NOT copied */ - gdm_xdmcp_send_accept (factory, - address, -@@ -2319,6 +2333,8 @@ gdm_xdmcp_handle_request (GdmXdmcpDispla - &authentication_data, - &authorization_name, - &authorization_data); -+ -+ g_array_free (cookie, TRUE); - } - } - } else { -@@ -2422,7 +2438,7 @@ gdm_xdmcp_send_failed (GdmXdmcpDisplayFa +@@ -2424,7 +2440,7 @@ gdm_xdmcp_send_failed (GdmXdmcpDisplayFa XdmcpFlush (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)gdm_address_peek_sockaddr_storage (address), @@ -136,7 +118,7 @@ } static void -@@ -2446,7 +2462,7 @@ gdm_xdmcp_send_refuse (GdmXdmcpDisplayFa +@@ -2448,7 +2464,7 @@ gdm_xdmcp_send_refuse (GdmXdmcpDisplayFa XdmcpFlush (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)gdm_address_peek_sockaddr_storage (address), @@ -145,7 +127,7 @@ /* * This was from a forwarded query quite apparently so -@@ -2717,7 +2733,7 @@ gdm_xdmcp_send_alive (GdmXdmcpDisplayFac +@@ -2719,7 +2735,7 @@ gdm_xdmcp_send_alive (GdmXdmcpDisplayFac XdmcpFlush (factory->priv->socket_fd, &factory->priv->buf, (XdmcpNetaddr)gdm_address_peek_sockaddr_storage (address), diff --git a/x11/gdm/files/patch-daemon_gdm-display-access-file.c b/x11/gdm/files/patch-daemon_gdm-display-access-file.c deleted file mode 100644 index 0f54784eca16..000000000000 --- a/x11/gdm/files/patch-daemon_gdm-display-access-file.c +++ /dev/null @@ -1,12 +0,0 @@ ---- daemon/gdm-display-access-file.c.orig 2009-04-16 01:32:41.000000000 +0200 -+++ daemon/gdm-display-access-file.c 2009-04-16 01:33:17.000000000 +0200 -@@ -41,6 +41,9 @@ - #include "gdm-display-access-file.h" - #include "gdm-common.h" - -+/* OpenBSD defines 255, glibc defines 64. */ -+#define HOST_NAME_MAX 64 -+ - struct _GdmDisplayAccessFilePrivate - { - char *username; diff --git a/x11/gdm/files/patch-daemon_gdm-session-worker.c b/x11/gdm/files/patch-daemon_gdm-session-worker.c index 0c56d5da4419..362a116eaa79 100644 --- a/x11/gdm/files/patch-daemon_gdm-session-worker.c +++ b/x11/gdm/files/patch-daemon_gdm-session-worker.c @@ -1,5 +1,5 @@ ---- daemon/gdm-session-worker.c.orig 2009-04-14 10:01:14.000000000 -0400 -+++ daemon/gdm-session-worker.c 2009-05-31 15:52:10.000000000 -0400 +--- daemon/gdm-session-worker.c.orig 2009-09-21 22:05:27.000000000 +0200 ++++ daemon/gdm-session-worker.c 2009-09-22 12:33:59.000000000 +0200 @@ -31,6 +31,9 @@ #include <errno.h> #include <grp.h> @@ -8,9 +8,9 @@ +#include <login_cap.h> +#endif - #include <security/pam_appl.h> - -@@ -332,7 +335,7 @@ gdm_session_execute (const char *file, + #ifdef HAVE_LOGINDEVPERM + #include <libdevinfo.h> +@@ -340,7 +343,7 @@ gdm_session_execute (const char *file, * what to search if PATH is unset. POSIX may, dunno. */ @@ -19,8 +19,8 @@ } len = strlen (file) + 1; -@@ -1757,11 +1760,12 @@ gdm_session_worker_start_user_session (G - char **environment; +@@ -1995,15 +1998,16 @@ gdm_session_worker_start_user_session (G + char *cachedirname; char *home_dir; int fd; +#ifdef HAVE_LOGINCAP @@ -28,6 +28,10 @@ + struct passwd *pwent = getpwnam (login); +#endif + /* Make sure cachedir gets created before we drop to user */ + cachedirname = gdm_session_worker_create_cachedir (worker); + g_free (cachedirname); + - if (setuid (worker->priv->uid) < 0) { - g_debug ("GdmSessionWorker: could not reset uid - %s", g_strerror (errno)); - _exit (1); @@ -36,7 +40,7 @@ if (setsid () < 0) { g_debug ("GdmSessionWorker: could not set pid '%u' as leader of new session and process group - %s", -@@ -1769,6 +1773,28 @@ gdm_session_worker_start_user_session (G +@@ -2011,6 +2015,28 @@ gdm_session_worker_start_user_session (G _exit (2); } diff --git a/x11/gdm/files/patch-gui_simple-greeter_gdm-greeter-login-window.c b/x11/gdm/files/patch-gui_simple-greeter_gdm-greeter-login-window.c new file mode 100644 index 000000000000..55f6d7ec8bd2 --- /dev/null +++ b/x11/gdm/files/patch-gui_simple-greeter_gdm-greeter-login-window.c @@ -0,0 +1,155 @@ +--- gui/simple-greeter/gdm-greeter-login-window.c.orig 2009-10-24 20:05:24.000000000 -0400 ++++ gui/simple-greeter/gdm-greeter-login-window.c 2009-10-24 20:11:02.000000000 -0400 +@@ -56,10 +56,6 @@ + #include <dbus/dbus-glib.h> + #include <dbus/dbus-glib-lowlevel.h> + +-#ifdef HAVE_DEVICEKIT_POWER +-#include <devkit-power-gobject/devicekit-power.h> +-#endif +- + #include "gdm-settings-client.h" + #include "gdm-settings-keys.h" + #include "gdm-profile.h" +@@ -83,6 +79,10 @@ + #define CK_SEAT_INTERFACE "org.freedesktop.ConsoleKit.Seat" + #define CK_SESSION_INTERFACE "org.freedesktop.ConsoleKit.Session" + ++#define GPM_DBUS_NAME "org.freedesktop.PowerManagement" ++#define GPM_DBUS_PATH "/org/freedesktop/PowerManagement" ++#define GPM_DBUS_INTERFACE "org.freedesktop.PowerManagement" ++ + #define GLADE_XML_FILE "gdm-greeter-login-window.glade" + + #define KEY_GREETER_DIR "/apps/gdm/simple-greeter" +@@ -477,22 +477,46 @@ adjust_other_login_visibility(GdmGreeter + } + } + +-#ifdef HAVE_DEVICEKIT_POWER + static gboolean + can_suspend (GdmGreeterLoginWindow *login_window) + { +- gboolean ret; +- DkpClient *dkp_client; ++ DBusGConnection *connection; ++ DBusGProxy *proxy; ++ GError *error; ++ gboolean ret; ++ gboolean res; ++ ++ error = NULL; ++ connection = dbus_g_bus_get (DBUS_BUS_SESSION, &error); ++ if (error != NULL) { ++ g_warning ("Couldn't connect to power manager: %s", error->message); ++ g_error_free (error); ++ return FALSE; ++ } ++ proxy = dbus_g_proxy_new_for_name (connection, ++ GPM_DBUS_NAME, ++ GPM_DBUS_PATH, ++ GPM_DBUS_INTERFACE); ++ ++ ret = FALSE; ++ ++ res = dbus_g_proxy_call (proxy, "CanSuspend", ++ &error, ++ G_TYPE_INVALID, ++ G_TYPE_BOOLEAN, ++ &ret, ++ G_TYPE_INVALID); ++ if (!res) { ++ if (error != NULL) { ++ g_warning ("Could not ask power manager if user can suspend: %s", ++ error->message); ++ g_error_free (error); ++ } ++ ret = FALSE; ++ } + +- /* use DeviceKit-power to get data */ +- dkp_client = dkp_client_new (); +- g_object_get (dkp_client, +- "can-suspend", &ret, +- NULL); +- g_object_unref (dkp_client); +- return ret; ++ return ret; + } +-#endif + + static void + remove_sensitize_power_buttons_timeout (GdmGreeterLoginWindow *login_window) +@@ -544,11 +568,7 @@ switch_mode (GdmGreeterLoginWindow *logi + + show_restart_buttons = get_show_restart_buttons (login_window); + +-#ifdef HAVE_DEVICEKIT_POWER + show_suspend_button = can_suspend (login_window); +-#else +- show_suspend_button = FALSE; +-#endif + + /* we want to run this even if we're supposed to + be in the mode already so that we reset everything +@@ -634,25 +654,39 @@ do_disconnect (GdmGreeterLoginWindow *lo + gtk_main_quit (); + } + +-#ifdef HAVE_DEVICEKIT_POWER + static void + do_suspend (GdmGreeterLoginWindow *login_window) + { +- gboolean ret; +- DkpClient *dkp_client; +- GError *error = NULL; +- +- /* use DeviceKit-power to get data */ +- dkp_client = dkp_client_new (); +- ret = dkp_client_suspend (dkp_client, &error); +- if (!ret) { ++ GError *error; ++ DBusGConnection *connection; ++ DBusGProxy *proxy; ++ ++ g_debug ("GdmGreeterLoginWindow: Suspend button clicked"); ++ ++ error = NULL; ++ connection = dbus_g_bus_get (DBUS_BUS_SESSION, &error); ++ if (error != NULL) { + g_warning ("Couldn't suspend: %s", error->message); + g_error_free (error); + return; + } +- g_object_unref (dkp_client); ++ proxy = dbus_g_proxy_new_for_name (connection, ++ GPM_DBUS_NAME, ++ GPM_DBUS_PATH, ++ GPM_DBUS_INTERFACE); ++ error = NULL; ++ dbus_g_proxy_call (proxy, ++ "Suspend", ++ &error, ++ G_TYPE_INVALID, ++ G_TYPE_INVALID); ++ if (error != NULL) { ++ g_warning ("Couldn't suspend: %s", error->message); ++ g_error_free (error); ++ return; ++ } ++ g_object_unref (proxy); + } +-#endif + + static void + delete_entry_text (GtkWidget *entry) +@@ -971,9 +1005,7 @@ static void + suspend_button_clicked (GtkButton *button, + GdmGreeterLoginWindow *login_window) + { +-#ifdef HAVE_DEVICEKIT_POWER + do_suspend (login_window); +-#endif + } + + diff --git a/x11/gdm/files/patch-gui_simple-greeter_gdm-languages.c b/x11/gdm/files/patch-gui_simple-greeter_gdm-languages.c index 9116dc917a64..675925aa926b 100644 --- a/x11/gdm/files/patch-gui_simple-greeter_gdm-languages.c +++ b/x11/gdm/files/patch-gui_simple-greeter_gdm-languages.c @@ -1,5 +1,5 @@ ---- gui/simple-greeter/gdm-languages.c.orig 2008-11-22 17:16:42.000000000 -0500 -+++ gui/simple-greeter/gdm-languages.c 2008-11-22 17:29:05.000000000 -0500 +--- gui/simple-greeter/gdm-languages.c.orig 2009-07-20 03:09:09.000000000 +0200 ++++ gui/simple-greeter/gdm-languages.c 2009-07-20 10:02:41.000000000 +0200 @@ -168,13 +168,13 @@ gdm_parse_language_name (const char *nam *codesetp = NULL; } @@ -16,7 +16,16 @@ } if (modifierp != NULL) { -@@ -353,7 +353,7 @@ add_locale (const char *language_name) +@@ -314,7 +314,7 @@ language_name_has_translations (const ch + const char *name; + gboolean has_translations; + +- path = g_build_filename (GNOMELOCALEDIR, language_name, "LC_MESSAGES", NULL); ++ path = g_build_filename ("/usr/share/locale", language_name, "LC_MESSAGES", NULL); + + has_translations = FALSE; + dir = g_dir_open (path, 0, NULL); +@@ -352,7 +352,7 @@ add_locale (const char *language_name) if (language_name_is_utf8 (language_name)) { name = g_strdup (language_name); } else { @@ -25,20 +34,11 @@ if (!language_name_is_utf8 (name)) { g_free (name); -@@ -482,7 +482,7 @@ select_dirs (const struct dirent *dirent - struct stat st; - char *path; - -- path = g_build_filename (GNOMELOCALEDIR, dirent->d_name, NULL); -+ path = g_build_filename ("/usr/share/locale", dirent->d_name, NULL); - if (g_stat (path, &st) == 0) { - mode = st.st_mode; - } -@@ -502,7 +502,7 @@ collect_locales_from_directory (void) +@@ -501,7 +501,7 @@ collect_locales_from_directory (void) int ndirents; int cnt; -- ndirents = scandir (GNOMELOCALEDIR, &dirents, select_dirs, alphasort); +- ndirents = scandir (LIBLOCALEDIR, &dirents, select_dirs, alphasort); + ndirents = scandir ("/usr/share/locale", &dirents, select_dirs, alphasort); for (cnt = 0; cnt < ndirents; ++cnt) { diff --git a/x11/gdm/files/patch-gui_simple-greeter_gdm-user-manager.c b/x11/gdm/files/patch-gui_simple-greeter_gdm-user-manager.c index d666bc1fd826..d0a5d73f5e47 100644 --- a/x11/gdm/files/patch-gui_simple-greeter_gdm-user-manager.c +++ b/x11/gdm/files/patch-gui_simple-greeter_gdm-user-manager.c @@ -1,12 +1,20 @@ ---- gui/simple-greeter/gdm-user-manager.c.orig 2008-04-29 13:38:43.000000000 -0400 -+++ gui/simple-greeter/gdm-user-manager.c 2008-05-03 13:27:52.000000000 -0400 -@@ -1269,17 +1269,23 @@ reload_passwd (GdmUserManager *manager) - GSList *old_users; +--- gui/simple-greeter/gdm-user-manager.c.orig 2009-09-21 16:05:27.000000000 -0400 ++++ gui/simple-greeter/gdm-user-manager.c 2009-10-14 12:58:37.000000000 -0400 +@@ -65,6 +65,8 @@ + + #ifdef __sun + #define DEFAULT_MINIMAL_UID 100 ++#elif defined(__FreeBSD__) ++#define DEFAULT_MINIMAL_UID 1000 + #else + #define DEFAULT_MINIMAL_UID 500 + #endif +@@ -1366,17 +1368,24 @@ reload_passwd (GdmUserManager *manager) GSList *new_users; GSList *list; -- FILE *fp; + GSList *dup; +#ifndef __FreeBSD__ -+ FILE *fp; + FILE *fp; +#endif old_users = NULL; @@ -15,6 +23,7 @@ +#ifdef __FreeBSD__ + setpwent (); +#else ++ errno = 0; fp = fopen (PATH_PASSWD, "r"); if (fp == NULL) { @@ -25,7 +34,7 @@ g_hash_table_foreach (manager->priv->users, listify_hash_values_hfunc, &old_users); g_slist_foreach (old_users, (GFunc) g_object_ref, NULL); -@@ -1292,7 +1298,11 @@ reload_passwd (GdmUserManager *manager) +@@ -1390,7 +1399,11 @@ reload_passwd (GdmUserManager *manager) } } @@ -37,7 +46,7 @@ GdmUser *user; user = NULL; -@@ -1355,7 +1365,11 @@ reload_passwd (GdmUserManager *manager) +@@ -1461,7 +1474,11 @@ reload_passwd (GdmUserManager *manager) out: /* Cleanup */ diff --git a/x11/gdm/files/patch-gui_simple-greeter_gdm-user.c b/x11/gdm/files/patch-gui_simple-greeter_gdm-user.c index 049b75b42036..fae89ec079d8 100644 --- a/x11/gdm/files/patch-gui_simple-greeter_gdm-user.c +++ b/x11/gdm/files/patch-gui_simple-greeter_gdm-user.c @@ -1,14 +1,14 @@ ---- gui/simple-greeter/gdm-user.c.orig 2009-05-16 17:52:57.000000000 -0400 -+++ gui/simple-greeter/gdm-user.c 2009-05-16 18:08:08.000000000 -0400 -@@ -412,6 +412,7 @@ _gdm_user_update (GdmUser *u +--- gui/simple-greeter/gdm-user.c.orig 2009-07-20 03:09:09.000000000 +0200 ++++ gui/simple-greeter/gdm-user.c 2009-07-20 10:09:41.000000000 +0200 +@@ -427,6 +427,7 @@ _gdm_user_update (GdmUser *u /* Display Name */ if (pwent->pw_gecos && pwent->pw_gecos[0] != '\0') { gchar *first_comma; + gchar *ampersand; + gchar *real_name_utf8; - first_comma = strchr (pwent->pw_gecos, ','); - if (first_comma) { -@@ -425,6 +426,23 @@ _gdm_user_update (GdmUser *u + real_name_utf8 = g_locale_to_utf8 (pwent->pw_gecos, -1, NULL, NULL, NULL); +@@ -443,6 +444,23 @@ _gdm_user_update (GdmUser *u g_free (real_name); real_name = NULL; } diff --git a/x11/gdm/files/patch-hal-keyboard b/x11/gdm/files/patch-hal-keyboard index a712f04a128a..904f1cdaccaa 100644 --- a/x11/gdm/files/patch-hal-keyboard +++ b/x11/gdm/files/patch-hal-keyboard @@ -1,6 +1,5 @@ -diff -up gdm-2.25.2/daemon/gdm-session-direct.c.system-keyboard gdm-2.25.2/daemon/gdm-session-direct.c ---- daemon/gdm-session-direct.c.system-keyboard 2008-08-26 15:04:00.000000000 -0400 -+++ daemon/gdm-session-direct.c 2009-02-24 22:55:02.656566009 -0500 +--- daemon/gdm-session-direct.c.orig 2009-07-20 03:09:09.000000000 +0200 ++++ daemon/gdm-session-direct.c 2009-07-20 10:14:45.000000000 +0200 @@ -45,6 +45,8 @@ #include <dbus/dbus-glib.h> #include <dbus/dbus-glib-lowlevel.h> @@ -10,7 +9,7 @@ diff -up gdm-2.25.2/daemon/gdm-session-direct.c.system-keyboard gdm-2.25.2/daemo #include "gdm-session-direct.h" #include "gdm-session.h" #include "gdm-session-private.h" -@@ -595,14 +597,66 @@ get_default_language_name (GdmSessionDir +@@ -597,14 +599,66 @@ get_default_language_name (GdmSessionDir return setlocale (LC_MESSAGES, NULL); } @@ -80,23 +79,19 @@ diff -up gdm-2.25.2/daemon/gdm-session-direct.c.system-keyboard gdm-2.25.2/daemo } static char * -@@ -1971,9 +2025,10 @@ setup_session_environment (GdmSessionDir +@@ -1953,8 +2007,8 @@ setup_session_environment (GdmSessionDir "GDM_LANG", get_language_name (session)); -- gdm_session_direct_set_environment_variable (session, -- "GDM_KEYBOARD_LAYOUT", -- get_layout_name (session)); -+ if (g_strcmp0 (get_layout_name (session), get_system_default_layout (session)) != 0) -+ gdm_session_direct_set_environment_variable (session, -+ "GDM_KEYBOARD_LAYOUT", -+ get_layout_name (session)); - - gdm_session_direct_set_environment_variable (session, - "DISPLAY", -diff -up gdm-2.25.2/daemon/gdm-session-settings.c.system-keyboard gdm-2.25.2/daemon/gdm-session-settings.c ---- daemon/gdm-session-settings.c.system-keyboard 2008-08-26 15:04:00.000000000 -0400 -+++ daemon/gdm-session-settings.c 2009-02-24 22:51:00.158815919 -0500 +- if (strcmp (get_layout_name (session), +- get_default_layout_name (session)) == 0) { ++ if (g_strcmp0 (get_layout_name (session), ++ get_default_layout_name (session)) != 0) { + gdm_session_direct_set_environment_variable (session, + "GDM_KEYBOARD_LAYOUT", + get_layout_name (session)); +--- daemon/gdm-session-settings.c.orig 2009-05-19 17:18:12.000000000 +0200 ++++ daemon/gdm-session-settings.c 2009-07-20 10:10:15.000000000 +0200 @@ -149,8 +149,7 @@ gdm_session_settings_set_layout_name (Gd { g_return_if_fail (GDM_IS_SESSION_SETTINGS (settings)); diff --git a/x11/gdm/pkg-install b/x11/gdm/pkg-install index 4adf27abbb43..97ae6b4832be 100644 --- a/x11/gdm/pkg-install +++ b/x11/gdm/pkg-install @@ -17,6 +17,9 @@ POST-INSTALL) ${MKDIR} -p /var/run/gdm ${CHOWN} root:${GROUP} /var/run/gdm ${CHMOD} 1777 /var/run/gdm + ${MKDIR} -p /var/cache/gdm + ${CHMOD} 1755 /var/cache/gdm + ${CHOWN} root:${GROUP} /var/cache/gdm ${CHOWN} root:wheel ${PKG_PREFIX}/share/gdm ${CHMOD} 0755 ${PKG_PREFIX}/share/gdm ${MKDIR} -p ${PKG_PREFIX}/etc/gdm/home @@ -29,6 +32,7 @@ POST-INSTALL) ${CHMOD} 1750 ${PKG_PREFIX}/etc/gdm/home/.gconf.mandatory ${CHMOD} 1640 ${PKG_PREFIX}/etc/gdm/home/.gconf.mandatory/*.xml + ${MKDIR} -p ${PKG_PREFIX}/etc/gdm/Sessions ${MKDIR} -p ${PKG_PREFIX}/etc/dm/Sessions exit 0 ;; diff --git a/x11/gdm/pkg-plist b/x11/gdm/pkg-plist index cfe404abd8bd..95025aa6c2aa 100644 --- a/x11/gdm/pkg-plist +++ b/x11/gdm/pkg-plist @@ -35,6 +35,7 @@ sbin/gdm-stop %%DATADIR%%/autostart/LoginWindow/gok.desktop %%DATADIR%%/autostart/LoginWindow/metacity.desktop %%DATADIR%%/autostart/LoginWindow/orca-screen-reader.desktop +%%DATADIR%%/autostart/LoginWindow/polkit-gnome-authentication-agent-1.desktop %%DATADIR%%/gconf.path %%DATADIR%%/gdb-cmd %%DATADIR%%/gdm-greeter-login-window.glade @@ -43,6 +44,7 @@ share/gnome-2.0/ui/GNOME_FastUserSwitchApplet.xml share/gnome/help/gdm/C/gdm.xml share/gnome/help/gdm/C/legal.xml share/gnome/help/gdm/de/gdm.xml +share/gnome/help/gdm/el/gdm.xml share/gnome/help/gdm/en_GB/gdm.xml share/gnome/help/gdm/es/gdm.xml share/gnome/help/gdm/fr/gdm.xml @@ -66,8 +68,10 @@ share/locale/be@latin/LC_MESSAGES/gdm.mo share/locale/bg/LC_MESSAGES/gdm.mo share/locale/bn/LC_MESSAGES/gdm.mo share/locale/bn_IN/LC_MESSAGES/gdm.mo +share/locale/br/LC_MESSAGES/gdm.mo share/locale/bs/LC_MESSAGES/gdm.mo share/locale/ca/LC_MESSAGES/gdm.mo +share/locale/ca@valencia/LC_MESSAGES/gdm.mo share/locale/crh/LC_MESSAGES/gdm.mo share/locale/cs/LC_MESSAGES/gdm.mo share/locale/cy/LC_MESSAGES/gdm.mo @@ -77,6 +81,7 @@ share/locale/dz/LC_MESSAGES/gdm.mo share/locale/el/LC_MESSAGES/gdm.mo share/locale/en_CA/LC_MESSAGES/gdm.mo share/locale/en_GB/LC_MESSAGES/gdm.mo +share/locale/eo/LC_MESSAGES/gdm.mo share/locale/es/LC_MESSAGES/gdm.mo share/locale/et/LC_MESSAGES/gdm.mo share/locale/eu/LC_MESSAGES/gdm.mo @@ -97,6 +102,7 @@ share/locale/is/LC_MESSAGES/gdm.mo share/locale/it/LC_MESSAGES/gdm.mo share/locale/ja/LC_MESSAGES/gdm.mo share/locale/ka/LC_MESSAGES/gdm.mo +share/locale/kk/LC_MESSAGES/gdm.mo share/locale/kn/LC_MESSAGES/gdm.mo share/locale/ko/LC_MESSAGES/gdm.mo share/locale/ku/LC_MESSAGES/gdm.mo @@ -148,6 +154,7 @@ share/locale/zh_TW/LC_MESSAGES/gdm.mo share/locale/zu/LC_MESSAGES/gdm.mo share/omf/gdm/gdm-C.omf share/omf/gdm/gdm-de.omf +share/omf/gdm/gdm-el.omf share/omf/gdm/gdm-en_GB.omf share/omf/gdm/gdm-es.omf share/omf/gdm/gdm-fr.omf @@ -200,6 +207,7 @@ share/pixmaps/nohost.png @dirrm share/gnome/help/gdm/fr @dirrm share/gnome/help/gdm/es @dirrm share/gnome/help/gdm/en_GB +@dirrm share/gnome/help/gdm/el @dirrm share/gnome/help/gdm/de @dirrm share/gnome/help/gdm/C @dirrm share/gnome/help/gdm @@ -222,6 +230,8 @@ share/pixmaps/nohost.png @unexec /bin/rm -rf /var/gdm 2>/dev/null || /usr/bin/true @unexec /bin/rm -rf /var/log/gdm 2>/dev/null || /usr/bin/true @unexec /bin/rm -rf /var/run/gdm 2>/dev/null || /usr/bin/true +@unexec rmdir /var/cache/gdm 2>/dev/null || /usr/bin/true +@unexec rmdir /var/cache 2>/dev/null || /usr/bin/true @dirrmtry share/locale/zu/LC_MESSAGES @dirrmtry share/locale/zu @dirrmtry share/locale/zh_HK/LC_MESSAGES @@ -256,6 +266,8 @@ share/pixmaps/nohost.png @dirrmtry share/locale/mai @dirrmtry share/locale/ku/LC_MESSAGES @dirrmtry share/locale/ku +@dirrmtry share/locale/kk/LC_MESSAGES +@dirrmtry share/locale/kk @dirrmtry share/locale/hy/LC_MESSAGES @dirrmtry share/locale/hy @dirrmtry share/locale/fur/LC_MESSAGES @@ -264,6 +276,8 @@ share/pixmaps/nohost.png @dirrmtry share/locale/dz @dirrmtry share/locale/crh/LC_MESSAGES @dirrmtry share/locale/crh +@dirrmtry share/locale/ca@valencia/LC_MESSAGES +@dirrmtry share/locale/ca@valencia @dirrmtry share/locale/bn_IN/LC_MESSAGES @dirrmtry share/locale/bn_IN @dirrmtry share/locale/be@latin/LC_MESSAGES |