Package searchplugins into langpack chrome and load from there
authorWolfgang Rosenauer <wr@rosenauer.org>
Fri, 12 Nov 2010 09:11:22 +0100
changeset 198 447791e42c9b
parent 197 582eab35a712
child 199 5baba178b43c
Package searchplugins into langpack chrome and load from there
MozillaFirefox/MozillaFirefox.spec
MozillaFirefox/firefox-multilocale-chrome.patch
firefox-multilocale-chrome.patch
series
--- a/MozillaFirefox/MozillaFirefox.spec	Thu Nov 11 12:55:40 2010 +0100
+++ b/MozillaFirefox/MozillaFirefox.spec	Fri Nov 12 09:11:22 2010 +0100
@@ -51,17 +51,18 @@
 Source8:        firefox-mimeinfo.xml
 Source9:        firefox-lockdown.js
 Source10:       compare-locales.tar.bz2
-Source16:       firefox.1
-Patch3:         toolkit-download-folder.patch
-Patch4:         firefox-linkorder.patch
-Patch5:         firefox-browser-css.patch
-Patch6:         firefox-cross-desktop.patch
-Patch8:         firefox-appname.patch
-Patch9:         firefox-kde.patch
-Patch10:        firefox-ui-lockdown.patch
-Patch11:        firefox-no-sync-l10n.patch
-Patch12:        firefox-libxulsdk-locales.patch
-Patch13:        firefox-no-default-ualocale.patch
+Source11:       firefox.1
+Patch1:         toolkit-download-folder.patch
+Patch2:         firefox-linkorder.patch
+Patch3:         firefox-browser-css.patch
+Patch4:         firefox-cross-desktop.patch
+Patch5:         firefox-appname.patch
+Patch6:         firefox-kde.patch
+Patch7:        firefox-ui-lockdown.patch
+Patch8:        firefox-no-sync-l10n.patch
+Patch9:        firefox-libxulsdk-locales.patch
+Patch10:        firefox-no-default-ualocale.patch
+Patch11:        firefox-multilocale-chrome.patch
 BuildRoot:      %{_tmppath}/%{name}-%{version}-build
 Requires(post):   coreutils shared-mime-info desktop-file-utils
 Requires(postun): shared-mime-info desktop-file-utils
@@ -150,20 +151,21 @@
 %prep
 %setup -q -n mozilla -b 7 -b 10
 cd $RPM_BUILD_DIR/mozilla
+%patch1 -p1
+%patch2 -p1
 %patch3 -p1
 %patch4 -p1
 %patch5 -p1
+%if %suse_version >= 1110
 %patch6 -p1
-%patch8 -p1
-%if %suse_version >= 1110
-%patch9 -p1
 # install kde.js
 install -m 644 %{SOURCE6} browser/app/profile/kde.js
 %endif
-#%patch10 -p1
+#%patch7 -p1
+%patch8 -p1
+%patch9 -p1
+%patch10 -p1
 %patch11 -p1
-%patch12 -p1
-%patch13 -p1
 
 %build
 export MOZ_BUILD_DATE=%{releasedate}
@@ -218,6 +220,7 @@
 # copy tree into RPM_BUILD_ROOT
 mkdir -p $RPM_BUILD_ROOT/%{progdir}
 cp -rf $RPM_BUILD_DIR/obj/dist/firefox/* $RPM_BUILD_ROOT/%{progdir}
+mkdir -p $RPM_BUILD_ROOT%{progdir}/searchplugins
 # install additional locales
 %if %localize
 rm -f %{_tmppath}/translations.*
@@ -238,8 +241,6 @@
 	      $RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@firefox.mozilla.org
 	# remove prefs and profile defaults from langpack
 	rm -rf $RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@firefox.mozilla.org/defaults
-	# remove langpack searchplugins for now (bmo#601899)
-	rm -rf $RPM_BUILD_ROOT%{progdir}/extensions/langpack-$locale@firefox.mozilla.org/searchplugins
 	# check against the fixed common list and sort into the right filelist
 	_matched=0
 	for _match in ar ca cs da de en-GB es-AR es-CL es-ES fi fr hu it ja ko nb-NO nl pl pt-BR pt-PT ru sv-SE zh-CN zh-TW; do
@@ -269,7 +270,7 @@
 cp %{SOURCE8} $RPM_BUILD_ROOT%{_datadir}/mime/packages/%{progname}.xml
 # install man-page
 mkdir -p $RPM_BUILD_ROOT%{_mandir}/man1/
-cp %{SOURCE16} $RPM_BUILD_ROOT%{_mandir}/man1/%{progname}.1
+cp %{SOURCE11} $RPM_BUILD_ROOT%{_mandir}/man1/%{progname}.1
 ##########
 # ADDONS
 #
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/MozillaFirefox/firefox-multilocale-chrome.patch	Fri Nov 12 09:11:22 2010 +0100
@@ -0,0 +1,1 @@
+../firefox-multilocale-chrome.patch
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/firefox-multilocale-chrome.patch	Fri Nov 12 09:11:22 2010 +0100
@@ -0,0 +1,95 @@
+# HG changeset patch
+# User Wolfgang Rosenauer <wr@rosenauer.org>
+# Parent 80550b99f4e1c3bfe561edf396dec27d47bf1696
+Add searchplugins to chrome packaging for proper localization
+
+diff --git a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js
+--- a/browser/app/profile/firefox.js
++++ b/browser/app/profile/firefox.js
+@@ -319,16 +319,20 @@ pref("browser.download.manager.scanWhenD
+ pref("browser.download.manager.resumeOnWakeDelay", 10000);
+ 
+ // search engines URL
+ pref("browser.search.searchEnginesURL",      "https://addons.mozilla.org/%LOCALE%/%APP%/search-engines/");
+ 
+ // pointer to the default engine name
+ pref("browser.search.defaultenginename",      "chrome://browser-region/locale/region.properties");
+ 
++// Tell the search service to load search plugins from the locale JAR
++pref("browser.search.loadFromJars", true);
++pref("browser.search.jarURIs", "chrome://browser/locale/searchplugins/");
++
+ // disable logging for the search service by default
+ pref("browser.search.log", false);
+ 
+ // Ordering of Search Engines in the Engine list. 
+ pref("browser.search.order.1",                "chrome://browser-region/locale/region.properties");
+ pref("browser.search.order.2",                "chrome://browser-region/locale/region.properties");
+ pref("browser.search.order.3",                "chrome://browser-region/locale/region.properties");
+ 
+diff --git a/browser/locales/Makefile.in b/browser/locales/Makefile.in
+--- a/browser/locales/Makefile.in
++++ b/browser/locales/Makefile.in
+@@ -169,31 +169,44 @@ libs:: $(addprefix $(LOCALE_SRCDIR)/prof
+ install:: $(DESTDIR)$(mozappdir)/defaults/profile/bookmarks.html ;
+ 
+ install:: $(addprefix generic/profile/,$(PROFILE_FILES))
+ 	$(SYSINSTALL) $(IFLAGS1) $^ $(DESTDIR)$(mozappdir)/defaults/profile
+ 
+ install:: $(addprefix $(LOCALE_SRCDIR)/profile/chrome/,$(PROFILE_CHROME))
+ 	$(SYSINSTALL) $(IFLAGS1) $^ $(DESTDIR)$(mozappdir)/defaults/profile/chrome
+ 
+-SEARCH_PLUGINS = $(shell cat $(LOCALE_SRCDIR)/searchplugins/list.txt)
++SEARCH_PLUGINS = $(shell cat \
++  $(firstword $(wildcard $(LOCALE_SRCDIR)/searchplugins/list.txt) \
++       @srcdir@/en-US/searchplugins/list.txt ) )
+ 
+-libs:: $(addsuffix .xml,$(SEARCH_PLUGINS))
+-	$(SYSINSTALL) $(IFLAGS1) $^ $(FINAL_TARGET)/searchplugins
++tmp-search.jar.mn::
++	printf "$(AB_CD).jar:" > $@
++	printf "$(foreach plugin,$(SEARCH_PLUGINS),$(subst __PLUGIN_SUBST__,$(plugin), \n locale/browser/searchplugins/__PLUGIN_SUBST__.xml (__PLUGIN_SUBST__.xml)))" >>  $@
++	@echo   >> $@
+ 
+-install:: $(addsuffix .xml,$(SEARCH_PLUGINS))
+-	$(SYSINSTALL) $(IFLAGS1) $^ $(DESTDIR)$(mozappdir)/searchplugins
++searchplugins: tmp-search.jar.mn
++	$(PYTHON) $(MOZILLA_DIR)/config/JarMaker.py \
++	  $(QUIET) -j $(FINAL_TARGET)/chrome \
++	  -s $(topsrcdir)/$(relativesrcdir)/en-US/searchplugins \
++	  -s $(LOCALE_SRCDIR)/searchplugins \
++	  $(MAKE_JARS_FLAGS) tmp-search.jar.mn
++
++export:: searchplugins
++
++GARBAGE += tmp-search.jar.mn
+ 
+ 
+ libs-%:
+ 	$(NSINSTALL) -D $(DIST)/install
+ 	@$(MAKE) -C ../../toolkit/locales libs-$* BOTH_MANIFESTS=1
+ ifdef MOZ_SERVICES_SYNC
+ 	@$(MAKE) -C ../../services/sync/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1
+ endif
++	@$(MAKE) -B searchplugins AB_CD=$* XPI_NAME=locale-$*
+ 	@$(MAKE) -C ../../extensions/spellcheck/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1
+ 	@$(MAKE) libs AB_CD=$* XPI_NAME=locale-$* PREF_DIR=defaults/pref BOTH_MANIFESTS=1
+ 	@$(MAKE) -C $(DEPTH)/$(MOZ_BRANDING_DIRECTORY)/locales AB_CD=$* XPI_NAME=locale-$* BOTH_MANIFESTS=1
+ 
+ 
+ repackage-win32-installer: WIN32_INSTALLER_OUT="$(_ABS_DIST)/$(PKG_INST_PATH)$(PKG_INST_BASENAME).exe"
+ repackage-win32-installer: $(WIN32_INSTALLER_IN) $(SUBMAKEFILES)
+ 	@echo "Repackaging $(WIN32_INSTALLER_IN) into $(WIN32_INSTALLER_OUT)."
+diff --git a/browser/locales/jar.mn b/browser/locales/jar.mn
+--- a/browser/locales/jar.mn
++++ b/browser/locales/jar.mn
+@@ -87,8 +87,9 @@
+ % override chrome://global/locale/netError.dtd chrome://browser/locale/netError.dtd
+ % override chrome://global/locale/appstrings.properties chrome://browser/locale/appstrings.properties
+ % override chrome://mozapps/locale/downloads/settingsChange.dtd chrome://browser/locale/downloads/settingsChange.dtd
+ #if MOZ_UPDATE_CHANNEL == beta
+ % locale testpilot @AB_CD@ %locale/feedback/
+     locale/feedback/main.dtd                       (%feedback/main.dtd)
+     locale/feedback/main.properties                (%feedback/main.properties)
+ #endif
++    locale/browser/searchplugins/list.txt   (%searchplugins/list.txt)
--- a/series	Thu Nov 11 12:55:40 2010 +0100
+++ b/series	Fri Nov 12 09:11:22 2010 +0100
@@ -24,3 +24,4 @@
 firefox-no-sync-l10n.patch
 firefox-libxulsdk-locales.patch
 firefox-no-default-ualocale.patch
+firefox-multilocale-chrome.patch