diff --git a/MozillaFirefox.changes b/MozillaFirefox.changes
index a769f01..e655aab 100644
--- a/MozillaFirefox.changes
+++ b/MozillaFirefox.changes
@@ -1,3 +1,23 @@
+-------------------------------------------------------------------
+Wed Aug 22 17:53:03 CEST 2007 - maw@suse.de
+
+- Merge changes from the build service (thanks, Wolfgang):
+ + Provide locale dependency information (#302288)
+ + Add x11-session.patch, supporting X11 session management
+ (#227047)
+ + Update to version 2.0.0.6
+ * MFSA 2007-26 Privilege escalation through chrome-loaded
+ about:blank windows
+ * MFSA 2007-27 Unescaped URIs passed to external programs
+ (only relevant on Windows)
+- Use %fdupes.
+
+-------------------------------------------------------------------
+Tue Aug 21 09:45:35 CEST 2007 - aj@suse.de
+
+- Adjust bookmarks: Add news.opensuse.org, use new software.o.o
+ page.
+
-------------------------------------------------------------------
Thu Aug 16 14:57:27 CEST 2007 - mauro@suse.de
diff --git a/MozillaFirefox.spec b/MozillaFirefox.spec
index cc3958f..d693df0 100644
--- a/MozillaFirefox.spec
+++ b/MozillaFirefox.spec
@@ -1,5 +1,5 @@
#
-# spec file for package MozillaFirefox (Version 2.0.0.5)
+# spec file for package MozillaFirefox (Version 2.0.0.6)
#
# Copyright (c) 2007 SUSE LINUX Products GmbH, Nuernberg, Germany.
# This file and all modifications and additions to the pristine
@@ -17,6 +17,9 @@ BuildRequires: dbus-1-devel
%else
BuildRequires: dbus-1-glib-devel
%endif
+%if %suse_version > 1020
+BuildRequires: fdupes
+%endif
License: GPL v2 or later, LGPL v2 or later, We have explicit permission to use the trademark.
Provides: web_browser
Provides: firefox
@@ -25,8 +28,8 @@ Obsoletes: MozillaFirebird <= 1.0.7
%if %sles_version == 10
Obsoletes: mozilla
%endif
-Version: 2.0.0.5
-Release: 15
+Version: 2.0.0.6
+Release: 1
Summary: Mozilla Firefox Web Browser
URL: http://www.mozilla.org/
Group: Productivity/Networking/Web/Browsers
@@ -93,6 +96,7 @@ Patch34: skin-selection.patch
Patch36: greasemonkey.patch
Patch37: make-perl.patch
Patch38: tango-maxversion.patch
+Patch39: x11-session.patch
# pango-cairo.patch dbus.patch startup.patch
Patch100: configure.patch
BuildRoot: %{_tmppath}/%{name}-%{version}-build
@@ -166,6 +170,7 @@ Authors:
%package translations
Summary: Translations for MozillaFirefox
+Provides: locale(MozillaFirefox:af;ar;bg;be;ca;cs;da;de;el;en_GB;es_AR;es_ES;eu;fi;fr;fy_NL;ga_IE;gu_IN;he;hu;it;ja;ka;ko;ku;lt;mk;mn;nb_NO;nl;nn_NO;pa_IN;pl;pt_BR;pt_PT;ro;ru;sk;sl;sv_SE;tr;zh_CN;zh_TW)
Group: Productivity/Networking/Web/Browsers
PreReq: %{name} = %{version}
@@ -218,6 +223,7 @@ cd $RPM_BUILD_DIR/mozilla
pushd $RPM_BUILD_DIR
%patch38
popd
+%patch39 -p1
%patch100
%if %has_system_nss
#%patch101
@@ -420,6 +426,10 @@ chmod 755 %{my_requires}
%define __find_requires %{my_requires}
%endif
%find_gconf_schemas
+%if %suse_version > 1020
+
+%fdupes $RPM_BUILD_ROOT
+%endif
%clean
rm -rf $RPM_BUILD_ROOT
@@ -551,6 +561,20 @@ exit 0
%endif
%changelog
+* Wed Aug 22 2007 - maw@suse.de
+- Merge changes from the build service (thanks, Wolfgang):
+ + Provide locale dependency information (#302288)
+ + Add x11-session.patch, supporting X11 session management
+ (#227047)
+ + Update to version 2.0.0.6
+ * MFSA 2007-26 Privilege escalation through chrome-loaded
+ about:blank windows
+ * MFSA 2007-27 Unescaped URIs passed to external programs
+ (only relevant on Windows)
+- Use %%fdupes.
+* Tue Aug 21 2007 - aj@suse.de
+- Adjust bookmarks: Add news.opensuse.org, use new software.o.o
+ page.
* Thu Aug 16 2007 - mauro@suse.de
- Revert previous change.
* Tue Aug 14 2007 - mauro@suse.de
diff --git a/bookmarks.html.suse b/bookmarks.html.suse
index 4683c88..b68d597 100644
--- a/bookmarks.html.suse
+++ b/bookmarks.html.suse
@@ -4,7 +4,7 @@
DO NOT EDIT! -->
Bookmarks
-Bookmarks
+Bookmarks
- Get Bookmark Add-ons
@@ -15,7 +15,8 @@
openSUSE
- openSUSE
-
- openSUSE Download
+
- openSUSE Download
+
- openSUSE News
- Novell / Linux
- SUSE Linux Cool Solutions
- SUSE Linux Support
diff --git a/firefox-2.0.0.5-source.tar.bz2 b/firefox-2.0.0.5-source.tar.bz2
deleted file mode 100644
index 10f1193..0000000
--- a/firefox-2.0.0.5-source.tar.bz2
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:7b1f3d372b4eb37d51bb4cbc099ee15c66380c0b8970c1d6f2430c1da1d40e68
-size 37622492
diff --git a/firefox-2.0.0.6-source.tar.bz2 b/firefox-2.0.0.6-source.tar.bz2
new file mode 100644
index 0000000..8ec2da5
--- /dev/null
+++ b/firefox-2.0.0.6-source.tar.bz2
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:b5ce09c6e3a31f419bd3117a9cb569d5ebfab7dab9221dbca0a73eaedee80197
+size 37624026
diff --git a/l10n-2.0.0.5.tar.bz2 b/l10n-2.0.0.5.tar.bz2
deleted file mode 100644
index b5f6f3a..0000000
--- a/l10n-2.0.0.5.tar.bz2
+++ /dev/null
@@ -1,3 +0,0 @@
-version https://git-lfs.github.com/spec/v1
-oid sha256:7a1c21611cf11d3ef67409cf19c23f02b0866f7bfe9f872a2eb065cc8726d684
-size 10102680
diff --git a/l10n-2.0.0.6.tar.bz2 b/l10n-2.0.0.6.tar.bz2
new file mode 100644
index 0000000..0b4257f
--- /dev/null
+++ b/l10n-2.0.0.6.tar.bz2
@@ -0,0 +1,3 @@
+version https://git-lfs.github.com/spec/v1
+oid sha256:4e8d2aed30c2163ea932c012d9f992a411c145696408dca628ddaf1ca9912f7b
+size 10101106
diff --git a/x11-session.patch b/x11-session.patch
new file mode 100644
index 0000000..40e860b
--- /dev/null
+++ b/x11-session.patch
@@ -0,0 +1,236 @@
+From: upstream
+Subject: Support X11 session management
+References:
+https://bugzilla.novell.com/show_bug.cgi?id=227047
+https://bugzilla.mozilla.org/show_bug.cgi?id=93789
+
+diff --git a/toolkit/xre/Makefile.in b/toolkit/xre/Makefile.in
+index e3dd8d9..4371882 100644
+--- a/toolkit/xre/Makefile.in
++++ b/toolkit/xre/Makefile.in
+@@ -137,21 +137,25 @@ ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_
+ CPPSRCS += nsNativeAppSupportMac.cpp
+ else
+ ifeq ($(MOZ_WIDGET_TOOLKIT),os2)
+ CPPSRCS += nsNativeAppSupportOS2.cpp
+ else
+ ifeq ($(MOZ_WIDGET_TOOLKIT),beos)
+ CPPSRCS += nsNativeAppSupportBeOS.cpp
+ else
++ifeq ($(MOZ_WIDGET_TOOLKIT),gtk2)
++CPPSRCS += nsNativeAppSupportUnix.cpp
++else
+ CPPSRCS += nsNativeAppSupportDefault.cpp
+ endif
+ endif
+ endif
+ endif
++endif
+
+ ifneq (,$(filter mac cocoa,$(MOZ_WIDGET_TOOLKIT)))
+ CMSRCS = MacLaunchHelper.m
+ CPPSRCS += nsCommandLineServiceMac.cpp
+ LOCAL_INCLUDES += -I$(topsrcdir)/xpfe/bootstrap/appleevents
+ OS_CXXFLAGS += -fexceptions
+ SHARED_LIBRARY_LIBS += $(DEPTH)/xpfe/bootstrap/appleevents/$(LIB_PREFIX)appleevents_s.$(LIB_SUFFIX)
+ endif
+diff --git a/toolkit/xre/nsNativeAppSupportUnix.cpp b/toolkit/xre/nsNativeAppSupportUnix.cpp
+new file mode 100644
+index 0000000..ad73f4c
+--- /dev/null
++++ b/toolkit/xre/nsNativeAppSupportUnix.cpp
+@@ -0,0 +1,194 @@
++/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
++/* ***** BEGIN LICENSE BLOCK *****
++ * Version: MPL 1.1/GPL 2.0/LGPL 2.1
++ *
++ * The contents of this file are subject to the Mozilla Public License Version
++ * 1.1 (the "License"); you may not use this file except in compliance with
++ * the License. You may obtain a copy of the License at
++ * http://www.mozilla.org/MPL/
++ *
++ * Software distributed under the License is distributed on an "AS IS" basis,
++ * WITHOUT WARRANTY OF ANY KIND, either express or implied. See the License
++ * for the specific language governing rights and limitations under the
++ * License.
++ *
++ * The Original Code is Unix Native App Support.
++ *
++ * The Initial Developer of the Original Code is
++ * Mozilla Corporation.
++ * Portions created by the Initial Developer are Copyright (C) 2007
++ * the Initial Developer. All Rights Reserved.
++ *
++ * Contributor(s):
++ * Michael Wu (original author)
++ *
++ * Alternatively, the contents of this file may be used under the terms of
++ * either the GNU General Public License Version 2 or later (the "GPL"), or
++ * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
++ * in which case the provisions of the GPL or the LGPL are applicable instead
++ * of those above. If you wish to allow use of your version of this file only
++ * under the terms of either the GPL or the LGPL, and not to allow others to
++ * use your version of this file under the terms of the MPL, indicate your
++ * decision by deleting the provisions above and replace them with the notice
++ * and other provisions required by the GPL or the LGPL. If you do not delete
++ * the provisions above, a recipient may use your version of this file under
++ * the terms of any one of the MPL, the GPL or the LGPL.
++ *
++ * ***** END LICENSE BLOCK ***** */
++
++#include "nsNativeAppSupportBase.h"
++#include "nsCOMPtr.h"
++#include "nsXPCOM.h"
++#include "nsISupportsPrimitives.h"
++#include "nsIObserverService.h"
++#include "nsIAppStartup.h"
++#include "nsServiceManagerUtils.h"
++#include "prlink.h"
++
++#include
++#include
++
++typedef struct _GnomeProgram GnomeProgram;
++typedef struct _GnomeModuleInfo GnomeModuleInfo;
++typedef struct _GnomeClient GnomeClient;
++
++typedef enum {
++ GNOME_SAVE_GLOBAL,
++ GNOME_SAVE_LOCAL,
++ GNOME_SAVE_BOTH
++} GnomeSaveStyle;
++
++typedef enum {
++ GNOME_INTERACT_NONE,
++ GNOME_INTERACT_ERRORS,
++ GNOME_INTERACT_ANY
++} GnomeInteractStyle;
++
++typedef enum {
++ GNOME_DIALOG_ERROR,
++ GNOME_DIALOG_NORMAL
++} GnomeDialogType;
++
++typedef GnomeProgram * (*_gnome_program_init_fn)(const char *, const char *,
++ const GnomeModuleInfo *, int,
++ char **, const char *, ...);
++typedef const GnomeModuleInfo * (*_libgnomeui_module_info_get_fn)();
++typedef GnomeClient * (*_gnome_master_client_fn)(void);
++typedef void (*GnomeInteractFunction)(GnomeClient *, gint, GnomeDialogType,
++ gpointer);
++typedef void (*_gnome_client_request_interaction_fn)(GnomeClient *,
++ GnomeDialogType,
++ GnomeInteractFunction,
++ gpointer);
++typedef void (*_gnome_interaction_key_return_fn)(gint, gboolean);
++
++static _gnome_client_request_interaction_fn gnome_client_request_interaction;
++static _gnome_interaction_key_return_fn gnome_interaction_key_return;
++
++void interact_cb(GnomeClient *client, gint key,
++ GnomeDialogType type, gpointer data)
++{
++ nsCOMPtr obsServ =
++ do_GetService("@mozilla.org/observer-service;1");
++ nsCOMPtr cancelQuit =
++ do_CreateInstance(NS_SUPPORTS_PRBOOL_CONTRACTID);
++
++ cancelQuit->SetData(PR_FALSE);
++
++ obsServ->NotifyObservers(cancelQuit, "quit-application-requested", nsnull);
++
++ PRBool abortQuit;
++ cancelQuit->GetData(&abortQuit);
++
++ gnome_interaction_key_return(key, abortQuit);
++}
++
++gboolean save_yourself_cb(GnomeClient *client, gint phase,
++ GnomeSaveStyle style, gboolean shutdown,
++ GnomeInteractStyle interact, gboolean fast,
++ gpointer user_data)
++{
++ if (interact == GNOME_INTERACT_ANY)
++ gnome_client_request_interaction(client, GNOME_DIALOG_NORMAL,
++ interact_cb, nsnull);
++ return TRUE;
++}
++
++void die_cb(GnomeClient *client, gpointer user_data)
++{
++ nsCOMPtr obsServ =
++ do_GetService("@mozilla.org/observer-service;1");
++ nsCOMPtr appService =
++ do_GetService("@mozilla.org/toolkit/app-startup;1");
++
++ if (obsServ)
++ obsServ->NotifyObservers(nsnull, "quit-application-granted", nsnull);
++
++ if (appService)
++ appService->Quit(nsIAppStartup::eForceQuit);
++}
++
++class nsNativeAppSupportUnix : public nsNativeAppSupportBase
++{
++public:
++ NS_IMETHOD Start(PRBool* aRetVal);
++};
++
++NS_IMETHODIMP
++nsNativeAppSupportUnix::Start(PRBool *aRetVal)
++{
++ *aRetVal = PR_TRUE;
++
++ PRLibrary *gnomeuiLib = PR_LoadLibrary("libgnomeui-2.so.0");
++ if (!gnomeuiLib)
++ return NS_OK;
++
++ PRLibrary *gnomeLib = PR_LoadLibrary("libgnome-2.so.0");
++ if (!gnomeLib) {
++ PR_UnloadLibrary(gnomeuiLib);
++ return NS_OK;
++ }
++
++ _gnome_program_init_fn gnome_program_init =
++ (_gnome_program_init_fn)PR_FindFunctionSymbol(gnomeLib, "gnome_program_init");
++ _libgnomeui_module_info_get_fn libgnomeui_module_info_get = (_libgnomeui_module_info_get_fn)PR_FindFunctionSymbol(gnomeuiLib, "libgnomeui_module_info_get");
++ if (!gnome_program_init || !libgnomeui_module_info_get) {
++ PR_UnloadLibrary(gnomeuiLib);
++ PR_UnloadLibrary(gnomeLib);
++ return NS_OK;
++ }
++
++ char *argv[2] = { "gecko", "--disable-crash-dialog" };
++ gnome_program_init("Gecko", "1.0", libgnomeui_module_info_get(), 2, argv, NULL);
++
++ // Careful! These libraries cannot be unloaded after this point because
++ // gnome_program_init causes atexit handlers to be registered. Strange
++ // crashes will occur if these libraries are unloaded.
++
++ gnome_client_request_interaction = (_gnome_client_request_interaction_fn)
++ PR_FindFunctionSymbol(gnomeuiLib, "gnome_client_request_interaction");
++ gnome_interaction_key_return = (_gnome_interaction_key_return_fn)
++ PR_FindFunctionSymbol(gnomeuiLib, "gnome_interaction_key_return");
++
++ _gnome_master_client_fn gnome_master_client = (_gnome_master_client_fn)
++ PR_FindFunctionSymbol(gnomeuiLib, "gnome_master_client");
++
++ GnomeClient *client = gnome_master_client();
++ g_signal_connect(client, "save-yourself", G_CALLBACK(save_yourself_cb), NULL);
++ g_signal_connect(client, "die", G_CALLBACK(die_cb), NULL);
++
++ return NS_OK;
++}
++
++nsresult
++NS_CreateNativeAppSupport(nsINativeAppSupport **aResult)
++{
++ nsNativeAppSupportBase* native = new nsNativeAppSupportUnix();
++ if (!native)
++ return NS_ERROR_OUT_OF_MEMORY;
++
++ *aResult = native;
++ NS_ADDREF(*aResult);
++
++ return NS_OK;
++}