aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CVSROOT/modules2
-rw-r--r--MOVED1
-rw-r--r--x11-themes/gnome-splashscreen-manager/Makefile2
-rw-r--r--x11/Makefile2
-rw-r--r--x11/gnome-session/Makefile3
-rw-r--r--x11/gnome2-lite/Makefile2
-rw-r--r--x11/gnome2/Makefile2
-rw-r--r--x11/gnomesession/Makefile57
-rw-r--r--x11/gnomesession/distinfo6
-rw-r--r--x11/gnomesession/files/patch-dbus429
-rw-r--r--x11/gnomesession/files/patch-gnome-session_Makefile.in37
-rw-r--r--x11/gnomesession/files/patch-gnome-session_gsm-at-startup.c10
-rw-r--r--x11/gnomesession/files/patch-gnome-session_gsm-xrandr.c10
-rw-r--r--x11/gnomesession/pkg-descr2
-rw-r--r--x11/gnomesession/pkg-plist110
15 files changed, 7 insertions, 668 deletions
diff --git a/CVSROOT/modules b/CVSROOT/modules
index 6331e0bfc81d..2c241d97d38f 100644
--- a/CVSROOT/modules
+++ b/CVSROOT/modules
@@ -3278,6 +3278,7 @@ gnome-pkgview ports/sysutils/gnome-pkgview
gnome-print ports/print/gnome-print
gnome-schedule ports/sysutils/gnome-schedule
gnome-screensaver ports/x11/gnome-screensaver
+gnome-session ports/x11/gnome-session
gnome-speech ports/accessibility/gnome-speech
gnome-spell ports/textproc/gnome-spell
gnome-splashscreen-manager ports/x11-themes/gnome-splashscreen-manager
@@ -3321,7 +3322,6 @@ gnomemm ports/x11-toolkits/gnomemm
gnomephotoprinter ports/print/gnomephotoprinter
gnomepm ports/finance/gnomepm
gnomermind ports/games/gnomermind
-gnomesession ports/x11/gnomesession
gnomesu ports/sysutils/gnomesu
gnomesudoku ports/games/gnomesudoku
gnomesword ports/misc/gnomesword
diff --git a/MOVED b/MOVED
index c189c2d10029..3b79a546fdf2 100644
--- a/MOVED
+++ b/MOVED
@@ -2345,3 +2345,4 @@ net-im/gnomeicu2|net-im/gnomeicu|2006-05-28|Use unversioned name
x11/gnomelibs|x11/gnome-libs|2006-05-28|Renamed to use real vendor package name
x11/gnomepanel|x11/gnome-panel|2006-05-28|Renamed to use real vendor package name
x11/gnomepanel-reference|x11/gnome-panel-reference|2006-05-28|Renamed to use real vendor package name
+x11/gnomesession|x11/gnome-session|2006-05-28|Renamed to use real vendor package name
diff --git a/x11-themes/gnome-splashscreen-manager/Makefile b/x11-themes/gnome-splashscreen-manager/Makefile
index 4ea9eb27ce26..d91c5d952f65 100644
--- a/x11-themes/gnome-splashscreen-manager/Makefile
+++ b/x11-themes/gnome-splashscreen-manager/Makefile
@@ -15,7 +15,7 @@ DISTNAME= gnome-art-${PORTVERSION}
MAINTAINER= ahze@FreeBSD.org
COMMENT= Gnome splash screen manager
-BUILD_DEPENDS= gnome-session:${PORTSDIR}/x11/gnomesession \
+BUILD_DEPENDS= gnome-session:${PORTSDIR}/x11/gnome-session \
ruby-glade-create-template:${PORTSDIR}/devel/ruby-libglade2 \
${RUBY_SITEARCHLIBDIR}/gnome2.so:${PORTSDIR}/x11/ruby-gnome2 \
${RUBY_SITEARCHLIBDIR}/gconf2.so:${PORTSDIR}/devel/ruby-gconf2
diff --git a/x11/Makefile b/x11/Makefile
index ae1351bbdfd5..e67cc8c1a848 100644
--- a/x11/Makefile
+++ b/x11/Makefile
@@ -70,12 +70,12 @@
SUBDIR += gnome-panel
SUBDIR += gnome-panel-reference
SUBDIR += gnome-screensaver
+ SUBDIR += gnome-session
SUBDIR += gnome-swallow
SUBDIR += gnome2
SUBDIR += gnome2-fifth-toe
SUBDIR += gnome2-lite
SUBDIR += gnome2-power-tools
- SUBDIR += gnomesession
SUBDIR += gnometerminal
SUBDIR += gpctool
SUBDIR += grabc
diff --git a/x11/gnome-session/Makefile b/x11/gnome-session/Makefile
index fcdee9b27fe1..60d477865df1 100644
--- a/x11/gnome-session/Makefile
+++ b/x11/gnome-session/Makefile
@@ -6,7 +6,7 @@
# $MCom: ports/x11/gnomesession/Makefile,v 1.83 2006/04/24 03:18:23 marcus Exp $
#
-PORTNAME= gnomesession
+PORTNAME= gnome-session
PORTVERSION= 2.14.1
PORTREVISION= 2
CATEGORIES= x11 gnome
@@ -15,7 +15,6 @@ MASTER_SITES= ${MASTER_SITE_GNOME} \
http://people.FreeBSD.org/~adamw/images/gnome_splashes/2.12/:local
MASTER_SITE_SUBDIR= sources/gnome-session/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} \
adamw/:local
-DISTNAME= gnome-session-${PORTVERSION}
DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \
${SPLASHES}:local
DIST_SUBDIR= gnome2
diff --git a/x11/gnome2-lite/Makefile b/x11/gnome2-lite/Makefile
index 802d4cd852d8..22548300ae79 100644
--- a/x11/gnome2-lite/Makefile
+++ b/x11/gnome2-lite/Makefile
@@ -18,7 +18,7 @@ RUN_DEPENDS= ${X11BASE}/libexec/gweather-applet-2:${PORTSDIR}/x11/gnome-applets
eog:${PORTSDIR}/graphics/eog \
gedit:${PORTSDIR}/editors/gedit \
gnome-terminal:${PORTSDIR}/x11/gnometerminal \
- gnome-session:${PORTSDIR}/x11/gnomesession \
+ gnome-session:${PORTSDIR}/x11/gnome-session \
gnome-system-monitor:${PORTSDIR}/sysutils/gnome-system-monitor \
nautilus:${PORTSDIR}/x11-fm/nautilus2 \
yelp:${PORTSDIR}/x11/yelp \
diff --git a/x11/gnome2/Makefile b/x11/gnome2/Makefile
index 3c6274bb2dd8..5a6db31a77a3 100644
--- a/x11/gnome2/Makefile
+++ b/x11/gnome2/Makefile
@@ -25,7 +25,7 @@ RUN_DEPENDS?= ${X11BASE}/libexec/gweather-applet-2:${PORTSDIR}/x11/gnome-applets
gnect:${PORTSDIR}/games/gnome-games \
gedit:${PORTSDIR}/editors/gedit \
gnome-terminal:${PORTSDIR}/x11/gnometerminal \
- gnome-session:${PORTSDIR}/x11/gnomesession \
+ gnome-session:${PORTSDIR}/x11/gnome-session \
bug-buddy:${PORTSDIR}/devel/bug-buddy \
gnome-system-monitor:${PORTSDIR}/sysutils/gnome-system-monitor \
nautilus:${PORTSDIR}/x11-fm/nautilus2 \
diff --git a/x11/gnomesession/Makefile b/x11/gnomesession/Makefile
deleted file mode 100644
index fcdee9b27fe1..000000000000
--- a/x11/gnomesession/Makefile
+++ /dev/null
@@ -1,57 +0,0 @@
-# New ports collection makefile for: gnomesession
-# Date created: 08 May 2002
-# Whom: Joe Marcus Clarke <marcus@FreeBSD.org>
-#
-# $FreeBSD$
-# $MCom: ports/x11/gnomesession/Makefile,v 1.83 2006/04/24 03:18:23 marcus Exp $
-#
-
-PORTNAME= gnomesession
-PORTVERSION= 2.14.1
-PORTREVISION= 2
-CATEGORIES= x11 gnome
-MASTER_SITES= ${MASTER_SITE_GNOME} \
- ${MASTER_SITE_LOCAL:S/$/:local/} \
- http://people.FreeBSD.org/~adamw/images/gnome_splashes/2.12/:local
-MASTER_SITE_SUBDIR= sources/gnome-session/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} \
- adamw/:local
-DISTNAME= gnome-session-${PORTVERSION}
-DISTFILES= ${DISTNAME}${EXTRACT_SUFX} \
- ${SPLASHES}:local
-DIST_SUBDIR= gnome2
-EXTRACT_ONLY= ${DISTNAME}${EXTRACT_SUFX}
-
-MAINTAINER= gnome@FreeBSD.org
-COMMENT= Session component for the GNOME 2 desktop
-
-USE_GETTEXT= yes
-USE_BZIP2= yes
-USE_X_PREFIX= yes
-USE_GNOME= gnomeprefix gnomehack intlhack gnomedesktop
-GNOME_DESKTOP_VERSION=2
-USE_GMAKE= yes
-GNU_CONFIGURE= yes
-CONFIGURE_ENV= CPPFLAGS="-I${LOCALBASE}/include -I${X11BASE}/include" \
- LDFLAGS="-L${LOCALBASE}/lib -L${X11BASE}/lib"
-
-MAN1= gnome-session.1 gnome-wm.1 session-properties.1 \
- gnome-session-save.1
-MAN5= default.session.5
-GCONF_SCHEMAS= gnome-session.schemas
-
-SPLASHES= freebsd-splashes-gnome-2.12.1.tar
-
-post-extract:
- cd ${WRKDIR} && ${TAR} xf ${DISTDIR}/${DIST_SUBDIR}/${SPLASHES}
-
-post-install:
- ${INSTALL_DATA} ${WRKSRC}/gnome-session/gnome-splash.png \
- ${PREFIX}/share/gnome/pixmaps/splash/original-gnome-splash.png
-# ${INSTALL_DATA} ${WRKDIR}/freebsd-splashes-gnome-2.12/domix-splash-2.12.png \
-# ${PREFIX}/share/gnome/pixmaps/splash/gnome-splash.png
-.for splash in MaMBaNgGaoX-2.12.png adamw-piggy-2.12.png adamw-trophy-2.12.png andreas-slogan-2.12.png andreas-splash-2.12.png domix-splash-2.12.png domix-splash2-2.12.png mumija-2.12.png mumija2-2.12.png mumija3-2.12.png tremulant-2.12.png tremulant-blood-2.12.png tremulant-brushed-metal-2.12.png
- ${INSTALL_DATA} ${WRKDIR}/freebsd-splashes-gnome-2.12/${splash} \
- ${PREFIX}/share/gnome/pixmaps/splash
-.endfor
-
-.include <bsd.port.mk>
diff --git a/x11/gnomesession/distinfo b/x11/gnomesession/distinfo
deleted file mode 100644
index f516a270fc4e..000000000000
--- a/x11/gnomesession/distinfo
+++ /dev/null
@@ -1,6 +0,0 @@
-MD5 (gnome2/gnome-session-2.14.1.tar.bz2) = 0b7a0fa918f7d0565d6487d06fa4489d
-SHA256 (gnome2/gnome-session-2.14.1.tar.bz2) = 5ff345552ed7f71540abbe1753e650c2a5bfad50f1acce958f664bf3a9d7e9c2
-SIZE (gnome2/gnome-session-2.14.1.tar.bz2) = 655320
-MD5 (gnome2/freebsd-splashes-gnome-2.12.1.tar) = 4a098f0f2295c3333acff185d4bed5aa
-SHA256 (gnome2/freebsd-splashes-gnome-2.12.1.tar) = c7008fc8f43cf07e3d84cbf0bd9b2846fa31aaf37d4f97993b185b4155f8ee27
-SIZE (gnome2/freebsd-splashes-gnome-2.12.1.tar) = 1280000
diff --git a/x11/gnomesession/files/patch-dbus b/x11/gnomesession/files/patch-dbus
deleted file mode 100644
index edd18bfec916..000000000000
--- a/x11/gnomesession/files/patch-dbus
+++ /dev/null
@@ -1,429 +0,0 @@
---- gnome-session/main.c.orig Tue Mar 21 12:37:40 2006
-+++ gnome-session/main.c Sun Apr 23 23:05:38 2006
-@@ -43,6 +43,7 @@
- #include "command.h"
- #include "splash-widget.h"
- #include "util.h"
-+#include "gsm-dbus.h"
- #include "gsm-sound.h"
- #include "gsm-gsd.h"
- #include "gsm-keyring.h"
-@@ -334,6 +335,7 @@ main (int argc, char *argv[])
- char *display_str;
- char **versions;
- GConfClient *gconf_client;
-+ gboolean dbus_daemon_owner;
-
- if (getenv ("GSM_VERBOSE_DEBUG"))
- gsm_set_verbose (TRUE);
-@@ -415,6 +417,7 @@ main (int argc, char *argv[])
- fprintf (stderr, "SESSION_MANAGER=%s\n", getenv ("SESSION_MANAGER"));
- gnome_window_icon_set_default_from_file (GNOME_ICONDIR"/gnome-session.png");
-
-+ dbus_daemon_owner = gsm_dbus_daemon_start ();
-
- /* Make sure children see the right value for DISPLAY. This is
- useful if --display was specified on the command line. */
-@@ -495,6 +498,9 @@ main (int argc, char *argv[])
- gsm_sound_logout ();
-
- gsm_keyring_daemon_stop ();
-+
-+ if (dbus_daemon_owner)
-+ gsm_dbus_daemon_stop ();
-
- g_object_unref (gconf_client);
- gsm_shutdown_gconfd ();
---- gnome-session/gsm-dbus.h.orig Sun Apr 23 23:01:47 2006
-+++ gnome-session/gsm-dbus.h Sun Apr 23 23:00:53 2006
-@@ -0,0 +1,27 @@
-+/* gsm-dbus.h - Handle the dbus-daemon process.
-+ *
-+ * Copyright (c) 2006 Julio M. Merino Vidal <jmmv@NetBSD.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2, or (at your option)
-+ * any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-+ * 02111-1307, USA.
-+ */
-+
-+#ifndef GSM_DBUS_H
-+#define GSM_DBUS_H
-+
-+gboolean gsm_dbus_daemon_start (void);
-+void gsm_dbus_daemon_stop (void);
-+
-+#endif /* GSM_DBUS_H */
---- gnome-session/gsm-dbus.c.orig Sun Apr 23 23:09:40 2006
-+++ gnome-session/gsm-dbus.c Sun Apr 23 23:10:21 2006
-@@ -0,0 +1,360 @@
-+/* gsm-dbus.c - Handle the dbus-daemon process.
-+ *
-+ * Copyright (c) 2006 Julio M. Merino Vidal <jmmv@NetBSD.org>
-+ *
-+ * This program is free software; you can redistribute it and/or modify
-+ * it under the terms of the GNU General Public License as published by
-+ * the Free Software Foundation; either version 2, or (at your option)
-+ * any later version.
-+ *
-+ * This program is distributed in the hope that it will be useful,
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-+ * GNU General Public License for more details.
-+ *
-+ * You should have received a copy of the GNU General Public License
-+ * along with this program; if not, write to the Free Software
-+ * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA
-+ * 02111-1307, USA.
-+ */
-+
-+#if HAVE_CONFIG_H
-+#include "config.h"
-+#endif
-+
-+#include <sys/wait.h>
-+
-+#include <errno.h>
-+#include <fcntl.h>
-+#include <limits.h>
-+#include <signal.h>
-+#include <stdlib.h>
-+#include <unistd.h>
-+
-+#include <glib.h>
-+#include <glib/gprintf.h>
-+
-+#include "gsm-dbus.h"
-+
-+static pid_t dbus_daemon_pid = 0;
-+
-+static gboolean have_dbus_daemon (void);
-+static gboolean have_running_instance (void);
-+static int read_line (int, char *, ssize_t);
-+static void start_child (int, int);
-+static void start_parent (int, int, pid_t);
-+
-+/* ---------------------------------------------------------------------
-+ * PUBLIC INTERFACE
-+ * --------------------------------------------------------------------- */
-+
-+/*
-+ * Starts the dbus-daemon if not already running and attaches it to the
-+ * current environment by defining DBUS_SESSION_BUS_ADDRESS. Returns
-+ * true if we launch a new dbus-daemon so that we know if we have to call
-+ * gsm_dbus_daemon_stop later on or not.
-+ *
-+ * This function can only be called if dbus-daemon is not already running
-+ * (i.e., if gnome-session is starting up or if gsm_dbus_daemon_stop was
-+ * previously called).
-+ */
-+gboolean
-+gsm_dbus_daemon_start (void)
-+{
-+ int address_pipe[2];
-+ int pid_pipe[2];
-+ pid_t tmp_pid;
-+
-+ g_assert (dbus_daemon_pid == 0);
-+
-+ if (have_running_instance ())
-+ return FALSE;
-+ if (! have_dbus_daemon ())
-+ return FALSE;
-+
-+ /*
-+ * At this point, dbus-daemon is not running for the current session
-+ * and the binary exists. Spawn it.
-+ */
-+
-+ if (pipe (address_pipe) == -1)
-+ {
-+ g_printerr ("Cannot create address pipe for dbus-daemon\n");
-+ return FALSE;
-+ }
-+
-+ if (pipe (pid_pipe) == -1)
-+ {
-+ close (address_pipe[0]);
-+ close (address_pipe[1]);
-+ g_printerr ("Cannot create pid pipe for dbus-daemon\n");
-+ return FALSE;
-+ }
-+
-+ tmp_pid = fork ();
-+ if (tmp_pid == -1)
-+ {
-+ close (address_pipe[0]);
-+ close (address_pipe[1]);
-+ close (pid_pipe[0]);
-+ close (pid_pipe[1]);
-+ g_printerr ("Cannot create child process for dbus-daemon\n");
-+ return FALSE;
-+ }
-+ else if (tmp_pid == 0)
-+ {
-+ close (address_pipe[0]);
-+ close (pid_pipe[0]);
-+ start_child (address_pipe[1], pid_pipe[1]);
-+ /* NOTREACHED */
-+ }
-+ else
-+ {
-+ close (address_pipe[1]);
-+ close (pid_pipe[1]);
-+ start_parent (address_pipe[0], pid_pipe[0], tmp_pid);
-+ }
-+
-+ g_assert (dbus_daemon_pid != 0);
-+ return TRUE;
-+}
-+
-+/*
-+ * Stops the running dbus-daemon. Can only be called if we own the process;
-+ * i.e., if gsm_dbus_daemon_start returned true.
-+ */
-+void
-+gsm_dbus_daemon_stop (void)
-+{
-+ g_assert (dbus_daemon_pid != 0);
-+
-+ if (kill (dbus_daemon_pid, SIGTERM) == -1)
-+ g_printerr ("Failed to kill dbus-daemon (pid %d)\n",
-+ dbus_daemon_pid);
-+ else
-+ {
-+ dbus_daemon_pid = 0;
-+ g_unsetenv ("DBUS_SESSION_BUS_ADDRESS");
-+ }
-+}
-+
-+/* ---------------------------------------------------------------------
-+ * PRIVATE FUNCTIONS
-+ * --------------------------------------------------------------------- */
-+
-+/*
-+ * Check whether the dbus-daemon binary is in the path and raise an
-+ * appropriate error message if it is not.
-+ */
-+static gboolean
-+have_dbus_daemon (void)
-+{
-+ gboolean result;
-+ gchar *file_name;
-+
-+ file_name = g_find_program_in_path ("dbus-daemon");
-+ if (file_name == NULL)
-+ g_printerr ("Cannot locate dbus-daemon\n");
-+ result = file_name != NULL;
-+ g_free (file_name);
-+
-+ return result;
-+}
-+
-+/*
-+ * Check whether there is a dbus-daemon session instance currently running
-+ * (not spawned by us). If there is, do nothing and return TRUE.
-+ */
-+static gboolean
-+have_running_instance (void)
-+{
-+ const gchar *address_str;
-+
-+ g_assert (dbus_daemon_pid == 0);
-+
-+ address_str = g_getenv ("DBUS_SESSION_BUS_ADDRESS");
-+ return address_str != NULL;
-+}
-+
-+/*
-+ * Reads a single line from the given file descriptor and stores it in the
-+ * buffer pointed to by 'buf'.
-+ *
-+ * After finding the first new line character, the function returns. This
-+ * is to avoid reading dbus' pid multiple times from its file descriptor.
-+ */
-+static int
-+read_line (int fd, char *buf, ssize_t bufsize)
-+{
-+ gboolean discard, done;
-+ ssize_t bytes;
-+
-+ bytes = 0;
-+ discard = FALSE;
-+ done = FALSE;
-+ do
-+ {
-+ ssize_t i, result;
-+
-+ result = read (fd, &buf[bytes], bufsize - bytes);
-+ if (result < 0)
-+ return -1;
-+ else if (result > 0 && !discard)
-+ {
-+ if (bytes + result < bufsize)
-+ bytes += result;
-+ else
-+ bytes = bufsize - 1;
-+ }
-+ else
-+ done = TRUE;
-+
-+ for (i = 0; !discard && i < bytes; i++)
-+ if (buf[i] == '\n')
-+ {
-+ buf[i] = '\0';
-+ discard = TRUE;
-+ }
-+ }
-+ while (!done);
-+
-+ g_assert (bytes >= 0 && bytes < bufsize);
-+ buf[bytes] = '\0';
-+
-+ return bytes;
-+}
-+
-+/*
-+ * Code run by the child process after the fork to launch dbus-demon.
-+ *
-+ * As the child, this execs dbus-daemon, connecting it to the appropriate
-+ * file descriptors.
-+ */
-+static void
-+start_child (int address_fd, int pid_fd)
-+{
-+ gchar address_str[16];
-+ gchar pid_str[16];
-+ int fd;
-+ long open_max;
-+
-+ open_max = sysconf (_SC_OPEN_MAX);
-+ for (fd = 0; fd < open_max; fd++)
-+ {
-+ if (fd != STDIN_FILENO && fd != STDOUT_FILENO && fd != STDERR_FILENO &&
-+ fd != address_fd && fd != pid_fd)
-+ fcntl (fd, F_SETFD, FD_CLOEXEC);
-+ }
-+
-+ g_snprintf (address_str, sizeof (address_str), "%d", address_fd);
-+ g_snprintf (pid_str, sizeof (pid_str), "%d", pid_fd);
-+
-+ execlp ("dbus-daemon",
-+ "dbus-daemon",
-+ "--fork",
-+ "--print-address", address_str,
-+ "--print-pid", pid_str,
-+ "--session",
-+ NULL);
-+
-+ g_printerr ("Could not launch dbus-daemon\n");
-+
-+ exit (EXIT_FAILURE);
-+}
-+
-+/*
-+ * Code run by the parent process after the fork to launch dbus-demon.
-+ *
-+ * As the parent, this waits until dbus-daemon forks itself again and
-+ * fetches its address and pid to later take its ownership.
-+ */
-+static void
-+start_parent (int address_fd, int pid_fd, pid_t child)
-+{
-+ char address_str[256];
-+ char pid_str[256];
-+ char *tmp_ep;
-+ int exitstat;
-+ unsigned long tmp_num;
-+ ssize_t bytes;
-+
-+ g_assert (child > 0);
-+
-+ /*
-+ * dbus-daemon --fork causes our child process to exit prematurely
-+ * because it is not the real daemon. See if it worked correctly
-+ * and clean it up to avoid a zombie.
-+ *
-+ * Life could be much easier if dbus-daemon had a --no-fork flag.
-+ * But, as it hasn't it, we cannot assume that it will not fork,
-+ * because we have no control over its configuration file.
-+ */
-+ if (waitpid (child, &exitstat, 0) == -1)
-+ {
-+ close (address_fd);
-+ close (pid_fd);
-+
-+ g_printerr ("Failed to get dbus-daemon status\n");
-+ return;
-+ }
-+ if (!WIFEXITED (exitstat) || WEXITSTATUS (exitstat) != EXIT_SUCCESS)
-+ {
-+ close (address_fd);
-+ close (pid_fd);
-+
-+ g_printerr ("dbus-daemon exited unexpectedly\n");
-+ return;
-+ }
-+
-+ /*
-+ * Fetch dbus-daemon address.
-+ */
-+ bytes = read_line (address_fd, address_str, sizeof (address_str));
-+ if (bytes == -1 || bytes == 0)
-+ {
-+ close (address_fd);
-+ close (pid_fd);
-+
-+ g_printerr ("Failed to get dbus-daemon's address\n");
-+ return;
-+ }
-+
-+ /*
-+ * Fetch dbus-daemon pid.
-+ */
-+ bytes = read_line (pid_fd, pid_str, sizeof (pid_str));
-+ if (bytes == -1 || bytes == 0)
-+ {
-+ close (address_fd);
-+ close (pid_fd);
-+
-+ g_printerr ("Failed to get dbus-daemon's pid\n");
-+ return;
-+ }
-+
-+ close (address_fd);
-+ close (pid_fd);
-+
-+ /*
-+ * Convert the string printed in pid_fd to a pid value. Do the usual
-+ * strtoul dance to check for a valid number.
-+ */
-+ errno = 0;
-+ tmp_num = strtoul(pid_str, &tmp_ep, 10);
-+ if (pid_str[0] == '\0' || *tmp_ep != '\0')
-+ {
-+ g_printerr ("dbus-daemon pid invalid (not a number)\n");
-+ return;
-+ }
-+ if (errno == ERANGE && tmp_num == ULONG_MAX)
-+ {
-+ g_printerr ("dbus-daemon pid invalid (out of range)\n");
-+ return;
-+ }
-+ dbus_daemon_pid = tmp_num;
-+
-+ /*
-+ * All right! Tell our future children about the new born dbus-daemon.
-+ */
-+ g_setenv ("DBUS_SESSION_BUS_ADDRESS", address_str, TRUE);
-+}
diff --git a/x11/gnomesession/files/patch-gnome-session_Makefile.in b/x11/gnomesession/files/patch-gnome-session_Makefile.in
deleted file mode 100644
index a80f576a42a3..000000000000
--- a/x11/gnomesession/files/patch-gnome-session_Makefile.in
+++ /dev/null
@@ -1,37 +0,0 @@
---- gnome-session/Makefile.in.orig Sun Apr 23 23:01:30 2006
-+++ gnome-session/Makefile.in Sun Apr 23 23:06:41 2006
-@@ -67,7 +67,7 @@ am_gnome_session_OBJECTS = manager.$(OBJ
- remote.$(OBJEXT) logout.$(OBJEXT) splash-widget.$(OBJEXT) \
- gsm-xrandr.$(OBJEXT) gsm-keyring.$(OBJEXT) gsm-gsd.$(OBJEXT) \
- gsm-protocol.$(OBJEXT) gsm-remote-desktop.$(OBJEXT) \
-- gsm-sound.$(OBJEXT) gsm-at-startup.$(OBJEXT) \
-+ gsm-sound.$(OBJEXT) gsm-at-startup.$(OBJEXT) gsm-dbus.$(OBJEXT) \
- gsm-multiscreen.$(OBJEXT) gsm-typebuiltins.$(OBJEXT) \
- gdm-logout-action.$(OBJEXT) util.$(OBJEXT) $(am__objects_1)
- gnome_session_OBJECTS = $(am_gnome_session_OBJECTS)
-@@ -310,7 +310,7 @@ sharedstatedir = @sharedstatedir@
- sysconfdir = @sysconfdir@
- target_alias = @target_alias@
- NULL =
--defaultdir = $(datadir)/gnome
-+defaultdir = $(datadir)
- INCLUDES = \
- $(GNOME_SESSION_CFLAGS) \
- $(STANDARD_PROPERTIES_CFLAGS) \
-@@ -386,6 +386,8 @@ gnome_session_SOURCES = \
- splash-widget.h \
- gsm-xrandr.c \
- gsm-xrandr.h \
-+ gsm-dbus.c \
-+ gsm-dbus.h \
- gsm-keyring.c \
- gsm-keyring.h \
- gsm-gsd.c \
-@@ -610,6 +612,7 @@ distclean-compile:
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gsm-sound.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gsm-typebuiltins.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gsm-xrandr.Po@am__quote@
-+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gsm-dbus.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ice.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/logout-test.Po@am__quote@
- @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/logout.Po@am__quote@
diff --git a/x11/gnomesession/files/patch-gnome-session_gsm-at-startup.c b/x11/gnomesession/files/patch-gnome-session_gsm-at-startup.c
deleted file mode 100644
index da4950d05c95..000000000000
--- a/x11/gnomesession/files/patch-gnome-session_gsm-at-startup.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- gnome-session/gsm-at-startup.c.orig Mon Apr 17 18:00:38 2006
-+++ gnome-session/gsm-at-startup.c Mon Apr 17 18:00:57 2006
-@@ -2,6 +2,7 @@
- #include <string.h>
-
- #include "gsm-at-startup.h"
-+#include "util.h"
-
- #include <gdk/gdk.h>
- #include <libgnome/libgnome.h>
diff --git a/x11/gnomesession/files/patch-gnome-session_gsm-xrandr.c b/x11/gnomesession/files/patch-gnome-session_gsm-xrandr.c
deleted file mode 100644
index 8eae88069c51..000000000000
--- a/x11/gnomesession/files/patch-gnome-session_gsm-xrandr.c
+++ /dev/null
@@ -1,10 +0,0 @@
---- gnome-session/gsm-xrandr.c.orig Mon Apr 17 17:59:38 2006
-+++ gnome-session/gsm-xrandr.c Mon Apr 17 17:59:50 2006
-@@ -3,6 +3,7 @@
- #include <gconf/gconf-client.h>
-
- #include "gsm-xrandr.h"
-+#include "util.h"
-
- #ifdef HAVE_RANDR
- #include <stdio.h>
diff --git a/x11/gnomesession/pkg-descr b/x11/gnomesession/pkg-descr
deleted file mode 100644
index 50986ef910b2..000000000000
--- a/x11/gnomesession/pkg-descr
+++ /dev/null
@@ -1,2 +0,0 @@
-This provides session management for the GNOME 2 desktop, and
-provides the tools used to start the desktop.
diff --git a/x11/gnomesession/pkg-plist b/x11/gnomesession/pkg-plist
deleted file mode 100644
index 882701bbd503..000000000000
--- a/x11/gnomesession/pkg-plist
+++ /dev/null
@@ -1,110 +0,0 @@
-bin/gnome-session
-bin/gnome-session-properties
-bin/gnome-session-remove
-bin/gnome-session-save
-bin/gnome-wm
-share/gnome/applications/session-properties.desktop
-share/gnome/default.session
-share/gnome/default.wm
-share/gnome/pixmaps/splash/MaMBaNgGaoX-2.12.png
-share/gnome/pixmaps/splash/adamw-piggy-2.12.png
-share/gnome/pixmaps/splash/adamw-trophy-2.12.png
-share/gnome/pixmaps/splash/andreas-slogan-2.12.png
-share/gnome/pixmaps/splash/andreas-splash-2.12.png
-share/gnome/pixmaps/splash/domix-splash-2.12.png
-share/gnome/pixmaps/splash/domix-splash2-2.12.png
-share/gnome/pixmaps/splash/gnome-splash.png
-share/gnome/pixmaps/splash/mumija-2.12.png
-share/gnome/pixmaps/splash/mumija2-2.12.png
-share/gnome/pixmaps/splash/mumija3-2.12.png
-share/gnome/pixmaps/splash/original-gnome-splash.png
-share/gnome/pixmaps/splash/tremulant-2.12.png
-share/gnome/pixmaps/splash/tremulant-blood-2.12.png
-share/gnome/pixmaps/splash/tremulant-brushed-metal-2.12.png
-share/locale/af/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/am/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ar/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/az/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/be/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/bg/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/bn/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/bs/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ca/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/cs/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/cy/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/da/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/de/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/dz/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/el/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/en_CA/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/en_GB/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/eo/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/es/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/et/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/eu/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/fa/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/fi/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/fr/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ga/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/gl/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/gu/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/he/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/hi/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/hr/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/hu/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/hy/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/id/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/is/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/it/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ja/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ka/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/kn/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ko/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ku/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/lt/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/lv/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/mi/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/mk/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ml/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/mn/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/mr/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ms/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/nb/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ne/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/nl/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/nn/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/no/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/nso/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/pa/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/pl/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/pt/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/pt_BR/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ro/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ru/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/sk/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/sl/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/sq/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/sr/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/sr@Latn/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/sv/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/ta/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/th/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/tk/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/tr/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/uk/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/rw/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/vi/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/wa/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/xh/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/zh_CN/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/zh_HK/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/zh_TW/LC_MESSAGES/gnome-session-2.0.mo
-share/locale/zu/LC_MESSAGES/gnome-session-2.0.mo
-@dirrmtry share/locale/zh_HK/LC_MESSAGES
-@dirrmtry share/locale/zh_HK
-@dirrmtry share/locale/ku/LC_MESSAGES
-@dirrmtry share/locale/ku
-@dirrmtry share/locale/hy/LC_MESSAGES
-@dirrmtry share/locale/hy
-@dirrmtry share/locale/dz/LC_MESSAGES
-@dirrmtry share/locale/dz