2008-08-06 Ghee Teo <
[email protected]>
Bum up to 2.23.6 and reworked some of the patches.
* SUNWgnome-session.spec: hacked LD_FLAGS to include -lXrender for now
* base-specs/gnome-session.spec: bumped to 2.23.6, disable-docbook-docs
* patches/gnome-session-01-gnome-atom.diff:
* patches/gnome-session-02-gnome-about.diff:
* patches/gnome-session-03-wait-for-postrun.diff:
--- a/ChangeLog Wed Aug 06 13:29:24 2008 +0000
+++ b/ChangeLog Wed Aug 06 15:28:54 2008 +0000
@@ -1,3 +1,12 @@
+2008-08-06 Ghee Teo <[email protected]>
+
+ Bum up to 2.23.6 and reworked some of the patches.
+ * SUNWgnome-session.spec: hacked LD_FLAGS to include -lXrender for now
+ * base-specs/gnome-session.spec: bumped to 2.23.6, disable-docbook-docs
+ * patches/gnome-session-01-gnome-atom.diff:
+ * patches/gnome-session-02-gnome-about.diff:
+ * patches/gnome-session-03-wait-for-postrun.diff:
+
2008-08-06 Christian Kelly <[email protected]
* base-specs/gvfs.spec: bump to 0.99.4
--- a/SUNWgnome-session.spec Wed Aug 06 13:29:24 2008 +0000
+++ b/SUNWgnome-session.spec Wed Aug 06 15:28:54 2008 +0000
@@ -70,7 +70,7 @@
%build
export PKG_CONFIG_PATH=%{_pkg_config_path}
-export LDFLAGS="%_ldflags -L/usr/X11/lib -R/usr/X11/lib -L/usr/sfw/lib -R/usr/sfw/lib -L/usr/openwin/lib -R/usr/openwin/lib"
+export LDFLAGS="%_ldflags -lXrender -L/usr/X11/lib -R/usr/X11/lib -L/usr/sfw/lib -R/usr/sfw/lib -L/usr/openwin/lib -R/usr/openwin/lib"
export CFLAGS="%optflags -I/usr/X11/include"
export RPM_OPT_FLAGS="$CFLAGS"
--- a/base-specs/gnome-session.spec Wed Aug 06 13:29:24 2008 +0000
+++ b/base-specs/gnome-session.spec Wed Aug 06 15:28:54 2008 +0000
@@ -11,7 +11,7 @@
Name: gnome-session
License: GPL
Group: System/GUI/GNOME
-Version: 2.23.5
+Version: 2.23.6
Release: 3
Distribution: Java Desktop System
Vendor: Sun Microsystems, Inc.
@@ -88,17 +88,17 @@
%endif
%patch3 -p1
%if %option_with_sun_branding
-%patch5 -p1
+#%patch5 -p1
cp %SOURCE1 data/gnome-splash.png
%endif
%patch6 -p1
-%patch7 -p1
+#%patch7 -p1
%if %option_with_indiana_branding
cp %SOURCE4 gnome-session/gnome-splash.png
-%patch8 -p1
+#%patch8 -p1
%endif
-%patch10 -p1
-%patch11 -p1
+#%patch10 -p1
+#%patch11 -p1
%patch12 -p1
%build
@@ -138,7 +138,8 @@
--sysconfdir=%{_sysconfdir} \
--mandir=%{_mandir} \
--with-halt-command=%poweroff \
- --with-reboot-command=%reboot
+ --with-reboot-command=%reboot \
+ --disable-docbook-docs
make -j $CPUS
%install
--- a/patches/gnome-session-01-gnome-atom.diff Wed Aug 06 13:29:24 2008 +0000
+++ b/patches/gnome-session-01-gnome-atom.diff Wed Aug 06 15:28:54 2008 +0000
@@ -1,30 +1,30 @@
---- gnome-session-2.23.4/gnome-session/main.c 2008-06-03 23:38:18.000000000 +0800
-+++ gnome-session-2.23.4/gnome-session/main.c.new 2008-06-19 15:42:50.161585000 +0800
-@@ -15,6 +15,7 @@
+--- gnome-session-2.23.6/gnome-session/main.c 2008-08-05 01:18:42.000000000 +0100
++++ gnome-session-2.23.6/gnome-session/main.c.new 2008-08-06 10:48:01.178640000 +0100
+@@ -29,6 +29,7 @@
#include <glib/gi18n.h>
#include <glib/goption.h>
+#include <gdk/gdkx.h>
- #include <gtk/gtkmain.h>
- #include <gtk/gtkmessagedialog.h>
-
-@@ -91,6 +92,8 @@
- struct sigaction sa;
- GError *err = NULL;
- char *display_str;
-+ Display *xdisp;
-+ GdkDisplay *gdisp;
+ #include <gtk/gtk.h>
- bindtextdomain (GETTEXT_PACKAGE, LOCALE_DIR);
- bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
-@@ -115,6 +118,10 @@
- g_setenv ("DISPLAY", display_str, TRUE);
- g_free (display_str);
+ #include <dbus/dbus.h>
+@@ -162,6 +163,8 @@
+ struct sigaction sa;
+ GError *error;
+ char *display_str;
++ Display *xdisp;
++ GdkDisplay *gdisp;
+ GsmManager *manager;
+ GsmStore *client_store;
+ GsmXsmpServer *xsmp_server;
+@@ -191,6 +194,10 @@
+ gsm_util_setenv ("DISPLAY", display_str);
+ g_free (display_str);
-+ gdisp = gdk_display_get_default ();
-+ xdisp = gdk_x11_display_get_xdisplay (gdisp);
-+ XInternAtom (xdisp, "GNOME_SM_DESKTOP", FALSE);
++ gdisp = gdk_display_get_default ();
++ xdisp = gdk_x11_display_get_xdisplay (gdisp);
++ XInternAtom (xdisp, "GNOME_SM_DESKTOP", FALSE);
+
- /* Start up gconfd and dbus-daemon (in parallel) if they're not
- * already running. This requires us to initialize XSMP too, because
- * we want $SESSION_MANAGER to be set before launching dbus-daemon.
+ client_store = gsm_store_new ();
+
+
--- a/patches/gnome-session-02-gnome-about.diff Wed Aug 06 13:29:24 2008 +0000
+++ b/patches/gnome-session-02-gnome-about.diff Wed Aug 06 15:28:54 2008 +0000
@@ -1,40 +1,48 @@
-diff -urN session.orig/gnome-session/session.c session.new/gnome-session/session.c
---- session.orig/gnome-session/session.c 2008-08-05 13:11:56.645264000 +0100
-+++ session.new/gnome-session/session.c 2008-08-05 13:42:35.726774000 +0100
-@@ -636,12 +636,36 @@
- end_phase (session);
- }
+--- gnome-session-2.23.6/gnome-session/gsm-manager.c 2008-08-05 04:46:44.000000000 +0100
++++ gnome-session-2.23.6/gnome-session/gsm-manager.c.new 2008-08-06 11:28:56.733523000 +0100
+@@ -318,6 +318,23 @@
+
+ static void start_phase (GsmManager *manager);
+#define ABOUT_PROMPT_KEY "/desktop/gnome/session/sun_extensions/viewed_about_jds_three"
+
+static gint
+show_gnome_about (gpointer data)
+{
-+ int status;
++ int status;
+
-+ if (g_spawn_command_line_async("gnome-about", NULL))
-+ {
-+ GConfClient *gconf_client = gconf_client_get_default ();
-+ gconf_client_set_bool (gconf_client, ABOUT_PROMPT_KEY, TRUE, NULL);
-+ g_object_unref (gconf_client);
-+ }
++ if (g_spawn_command_line_async("gnome-about", NULL))
++ {
++ GConfClient *gconf_client = gconf_client_get_default ();
++ gconf_client_set_bool (gconf_client, ABOUT_PROMPT_KEY, TRUE, NULL);
++ g_object_unref (gconf_client);
++ }
+
-+ return FALSE;
++ return FALSE;
+}
+
- void
- gsm_session_start (GsmSession *session)
+ static void
+ end_phase (GsmManager *manager)
{
-+ gboolean show_about;
-+ GConfClient *gconf_client;
+@@ -970,6 +988,9 @@
+ void
+ gsm_manager_start (GsmManager *manager)
+ {
++ gboolean show_about;
++ GConfClient *gconf_client;
+
- session->phase = GSM_SESSION_PHASE_INITIALIZATION;
+ g_debug ("GsmManager: GSM starting to manage");
- start_phase (session);
+ g_return_if_fail (GSM_IS_MANAGER (manager));
+@@ -977,6 +998,11 @@
+ manager->priv->phase = GSM_MANAGER_PHASE_INITIALIZATION;
+
+ start_phase (manager);
+
-+ gconf_client = gconf_client_get_default ();
-+ show_about = gconf_client_get_bool (gconf_client, ABOUT_PROMPT_KEY, NULL);
-+ if (!show_about) gtk_timeout_add (4000, show_gnome_about, NULL);
++ gconf_client = gconf_client_get_default ();
++ show_about = gconf_client_get_bool (gconf_client, ABOUT_PROMPT_KEY, NULL);
++ if (!show_about) gtk_timeout_add (4000, show_gnome_about, NULL);
++
}
- GsmSessionPhase
+ static gboolean
--- a/patches/gnome-session-03-wait-for-postrun.diff Wed Aug 06 13:29:24 2008 +0000
+++ b/patches/gnome-session-03-wait-for-postrun.diff Wed Aug 06 15:28:54 2008 +0000
@@ -1,91 +1,88 @@
---- gnome-session-2.23.4/gnome-session/main.c.orig 2008-07-02 15:51:07.591127812 +0800
-+++ gnome-session-2.23.4/gnome-session/main.c 2008-07-02 16:37:25.519775505 +0800
-@@ -16,6 +16,9 @@
+--- gnome-session-2.23.6/gnome-session/main.c 2008-08-06 11:30:51.031968000 +0100
++++ gnome-session-2.23.6/gnome-session/main.c.new 2008-08-06 11:46:50.482731000 +0100
+@@ -30,6 +30,9 @@
#include <glib/gi18n.h>
#include <glib/goption.h>
#include <gdk/gdkx.h>
+#include <gtk/gtklabel.h>
+#include <gtk/gtkvbox.h>
+#include <gtk/gtkprogressbar.h>
- #include <gtk/gtkmain.h>
- #include <gtk/gtkmessagedialog.h>
+ #include <gtk/gtk.h>
-@@ -86,6 +89,69 @@
- gtk_main_quit ();
+ #include <dbus/dbus.h>
+@@ -156,6 +159,67 @@
+
+ return TRUE;
}
-
+static gboolean
+postrun_progress_update (gpointer data)
+{
-+ int status = 0;
-+ static int count = 0;
-+ GError *error = NULL;
-+ gtk_progress_bar_pulse (GTK_PROGRESS_BAR (data));
++ int status = 0;
++ static int count = 0;
++ GError *error = NULL;
++ gtk_progress_bar_pulse (GTK_PROGRESS_BAR (data));
+
-+ if (count == 30) {
-+ g_spawn_command_line_sync ("/usr/lib/postrun-query -c JDS_wait -e",
++ if (count == 30) {
++ g_spawn_command_line_sync ("/usr/lib/postrun-query -c JDS_wait -e",
+ NULL, NULL, &status, &error);
-+ count = 0;
-+ }
++ count = 0;
++ }
+
-+ if (status == 0) {
-+ count++;
-+ return TRUE;
-+ }
++ if (status == 0) {
++ count++;
++ return TRUE;
++ }
+
-+ gtk_main_quit ();
-+ return FALSE;
++ gtk_main_quit ();
++ return FALSE;
+}
+
+static void
+gsm_wait_for_unfinished_postrun ()
+{
-+ int status = 0;
-+ GError *error = NULL;
-+
-+ if (!g_spawn_command_line_sync ("/usr/lib/postrun-query -c JDS_wait -e",
-+ NULL, NULL, &status, &error)) {
-+ /* no postrun-query? WTF? bail out and hope for the best :) */
-+ return;
-+ }
++ int status = 0;
++ GError *error = NULL;
+
-+ if (status == 0) {
-+ GtkWidget *window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
-+ GtkWidget *vbox = gtk_vbox_new (TRUE, 10);
-+ GtkWidget *progress = gtk_progress_bar_new ();
-+ GtkWidget *label;
-+ gint func_ref;
++ if (!g_spawn_command_line_sync ("/usr/lib/postrun-query -c JDS_wait -e",
++ NULL, NULL, &status, &error)) {
++ /* no postrun-query? WTF? bail out and hope for the best :) */
++ return;
++ }
+
-+ /* SUN_BRANDING */
-+ label = gtk_label_new (_("Completing post install setup..."));
++ if (status == 0) {
++ GtkWidget *window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
++ GtkWidget *vbox = gtk_vbox_new (TRUE, 10);
++ GtkWidget *progress = gtk_progress_bar_new ();
++ GtkWidget *label;
++ gint func_ref;
+
-+ gtk_container_add (GTK_CONTAINER (window), vbox);
-+ gtk_container_set_border_width (GTK_CONTAINER (window), 10);
-+ gtk_box_pack_start_defaults (GTK_BOX (vbox), label);
-+ gtk_progress_bar_pulse (GTK_PROGRESS_BAR (progress));
-+ func_ref = g_timeout_add (100, postrun_progress_update, progress);
-+ gtk_box_pack_start_defaults (GTK_BOX (vbox), progress);
++ /* SUN_BRANDING */
++ label = gtk_label_new (_("Completing post install setup..."));
+
-+ gtk_window_set_position (GTK_WINDOW (window), GTK_WIN_POS_CENTER);
++ gtk_container_add (GTK_CONTAINER (window), vbox);
++ gtk_container_set_border_width (GTK_CONTAINER (window), 10);
++ gtk_box_pack_start_defaults (GTK_BOX (vbox), label);
++ gtk_progress_bar_pulse (GTK_PROGRESS_BAR (progress));
++ func_ref = g_timeout_add (100, postrun_progress_update, progress);
++ gtk_box_pack_start_defaults (GTK_BOX (vbox), progress);
+
-+ gtk_widget_show_all (window);
-+ gtk_main ();
++ gtk_window_set_position (GTK_WINDOW (window), GTK_WIN_POS_CENTER);
++
++ gtk_widget_show_all (window);
++ gtk_main ();
+
-+ gtk_widget_destroy (window);
-+ g_source_remove (func_ref);
-+ }
++ gtk_widget_destroy (window);
++ g_source_remove (func_ref);
++ }
+}
-+
-+
+
int
main (int argc, char **argv)
- {
-@@ -122,6 +188,8 @@
- xdisp = gdk_x11_display_get_xdisplay (gdisp);
- XInternAtom (xdisp, "GNOME_SM_DESKTOP", FALSE);
+@@ -198,6 +262,7 @@
+ xdisp = gdk_x11_display_get_xdisplay (gdisp);
+ XInternAtom (xdisp, "GNOME_SM_DESKTOP", FALSE);
-+ gsm_wait_for_unfinished_postrun ();
-+
- /* Start up gconfd and dbus-daemon (in parallel) if they're not
- * already running. This requires us to initialize XSMP too, because
- * we want $SESSION_MANAGER to be set before launching dbus-daemon.
++ gsm_wait_for_unfinished_postrun ();
+ client_store = gsm_store_new ();
+
+