summaryrefslogtreecommitdiff
path: root/libre/icecat
diff options
context:
space:
mode:
authorJoshua Ismael Haase Hernandez <hahj87@gmail.com>2011-04-15 18:31:32 -0700
committerJoshua Ismael Haase Hernandez <hahj87@gmail.com>2011-04-15 18:31:32 -0700
commitffb3ebbe0c98853f03a79b95cfff0f525df7d1fe (patch)
tree9879cb74f4d2f8ab4652b4277b7f66c212766ab0 /libre/icecat
parent833e63b6728e7fe38ea0e77303623efa6bdef48c (diff)
parentc931fbbe5ae1246b69e2c61452f7c3d7632d98c9 (diff)
Merge branch 'master' of vparabola:~/projects/abslibre
Conflicts: .gitignore
Diffstat (limited to 'libre/icecat')
-rw-r--r--libre/icecat/PKGBUILD90
-rw-r--r--libre/icecat/firefox-version.patch12
-rw-r--r--libre/icecat/firefox.js331
-rw-r--r--[-rwxr-xr-x]libre/icecat/icecat-safe.desktop0
-rw-r--r--[-rwxr-xr-x]libre/icecat/icecat.desktop0
-rw-r--r--[-rwxr-xr-x]libre/icecat/icecat.install2
-rw-r--r--libre/icecat/mozconfig57
-rw-r--r--[-rwxr-xr-x]libre/icecat/xulrunner-copy-stub.patch0
8 files changed, 331 insertions, 161 deletions
diff --git a/libre/icecat/PKGBUILD b/libre/icecat/PKGBUILD
index 6fb517f35..cc408f55f 100644
--- a/libre/icecat/PKGBUILD
+++ b/libre/icecat/PKGBUILD
@@ -1,5 +1,7 @@
-# Contributor: figue <ffigue at gmail>
+# Maintainer: Figue <ffigue at gmail>
+# Contributor: Figue <ffigue at gmail>
# Contributor (Parabola): fauno <fauno@kiwwwi.com.ar>
+# Contrubutor (Parabola): vando <facundo@esdebian.org>
# Thank you very much to the older contributors:
# Contributor: evr <evanroman at gmail>
# Contributor: Muhammad 'MJ' Jassim <UnbreakableMJ@gmail.com>
@@ -17,27 +19,27 @@
# * Disabled ContentHandlers and other Google/Yahoo! related services
pkgname=icecat
-pkgver=3.6.15
-_pkgver=3.6
+pkgver=4.0
+_pkgver=4.0
pkgrel=1
-_xulver=1.9.2.15
+_xulver=2.0
pkgdesc="GNU version of the Firefox browser. SafeBrowsing and other Google services disabled!"
-arch=(i686 x86_64)
+arch=('i686' 'x86_64')
url="http://www.gnu.org/software/gnuzilla/"
license=('GPL2' 'MPL' 'LGPL')
-depends=("xulrunner=$_xulver" 'desktop-file-utils' 'mime-types' 'shared-mime-info' 'libnotify')
-makedepends=('unzip' 'zip' 'pkg-config' 'diffutils' 'python2' 'wireless_tools' 'autoconf2.13')
+depends=("xulrunner=${_xulver}" 'desktop-file-utils')
+makedepends=('zip' 'pkg-config' 'diffutils' 'python2' 'wireless_tools' 'yasm' 'mesa')
provides=('firefox')
conflicts=('firefox')
-replaces=("firefox=$pkgver")
+replaces=("firefox=${_pkgver}")
install=icecat.install
-source=(http://ftp.gnu.org/gnu/gnuzilla/${pkgver}/${pkgname}-${pkgver}.tar.xz
+#source=(http://ftp.gnu.org/gnu/gnuzilla/${pkgver}/${pkgname}-${pkgver}.tar.xz
+source=(ftp://ftp.gnu.org/gnu/gnuzilla/${_pkgver}/${pkgname}-${_pkgver}.tar.bz2
mozconfig
icecat.desktop
icecat-safe.desktop
mozilla-firefox-1.0-lang.patch
xulrunner-copy-stub.patch
- python2.7.patch
# Search engines
arch-linux-wiki.xml
internet-archive.xml
@@ -48,21 +50,20 @@ source=(http://ftp.gnu.org/gnu/gnuzilla/${pkgver}/${pkgname}-${pkgver}.tar.xz
duck-duck-go-ssl.xml
duck-duck-go-lite.xml
# Default options
- firefox.js
+ firefox.js
region.properties)
build() {
- cd "${srcdir}/${pkgname}-${pkgver}/"
- ICECATDIR="/usr/lib/${pkgname}-${_pkgver}" && export ICECATDIR
+ ICECATDIR="/usr/lib/${pkgname}-4.0" && export ICECATDIR
msg2 "Patching some files..."
+ cd "${srcdir}/${pkgname}-${_pkgver}/"
patch -Np1 -i "${srcdir}/mozilla-firefox-1.0-lang.patch"
patch -Np0 -i "${srcdir}/xulrunner-copy-stub.patch"
- patch -Np0 -i "${srcdir}/python2.7.patch"
- cp --remove-destination ${srcdir}/firefox.js ./browser/app/profile/
cp --remove-destination ${srcdir}/region.properties ./browser/locales/en-US/chrome/browser-region/
+ cp --remove-destination ${srcdir}/firefox.js ./browser/app/profile/
msg2 "Starting build..."
cp "${srcdir}/mozconfig" .mozconfig
@@ -71,65 +72,42 @@ build() {
export LDFLAGS="-Wl,-rpath,${ICECATDIR}"
- make -j1 -f client.mk build MOZ_MAKE_FLAGS="${MAKEFLAGS}" || return 1
+ #make -j1 -f client.mk build MOZ_MAKE_FLAGS="${MAKEFLAGS}"
+ ./configure
+
+ touch config*
+
+ make MOZ_MAKE_FLAGS="${MAKEFLAGS}"
msg2 "Build complete"
}
package() {
- cd "${srcdir}/${pkgname}-${pkgver}/"
- ICECATDIR="/usr/lib/${pkgname}-${_pkgver}" && export ICECATDIR
+ ICECATDIR="/usr/lib/${pkgname}-4.0" && export ICECATDIR
- make -j1 DESTDIR="${pkgdir}" install
+ cd "${srcdir}/${pkgname}-${_pkgver}/"
+ #make -j1 -f client.mk DESTDIR="${pkgdir}" install
+ make install DESTDIR="${pkgdir}"
msg2 "Finishing..."
- mv ${pkgdir}/usr/lib/${pkgname}-${pkgver} ${pkgdir}${ICECATDIR}
- cd ${pkgdir}${ICECATDIR}
- ln -s ${pkgname} firefox
- ln -s ${pkgname}-bin firefox-bin
- cd ${pkgdir}/usr/bin
- ln -sf ${ICECATDIR}/icecat icecat
- cd ${pkgdir}/usr/lib
- ln -s ${ICECATDIR} icecat
install -m755 -d ${pkgdir}/usr/share/applications
install -m755 -d ${pkgdir}/usr/share/pixmaps
- install -m644 ${srcdir}/${pkgname}-${pkgver}/browser/branding/unofficial/default48.png ${pkgdir}/usr/share/pixmaps/icecat.png || return 1
- install -m644 ${srcdir}/icecat.desktop ${pkgdir}/usr/share/applications/ || return 1
- install -m644 ${srcdir}/icecat-safe.desktop ${pkgdir}/usr/share/applications/ || return 1
-
- ##copy default prefs manually, icecat fails to start otherwise
- cp -rf ${srcdir}/${pkgname}-${pkgver}/dist/bin/defaults/preferences ${pkgdir}${ICECATDIR}/defaults
+ install -m644 ${srcdir}/${pkgname}-${_pkgver}/browser/branding/unofficial/default48.png ${pkgdir}/usr/share/pixmaps/icecat.png
+ install -m644 ${srcdir}/icecat.desktop ${pkgdir}/usr/share/applications/
+ install -m644 ${srcdir}/icecat-safe.desktop ${pkgdir}/usr/share/applications/
msg2 "Removing proprietary and anti-privacy search engines"
- rm -f ${pkgdir}${ICECATDIR}/searchplugins/{google,answers,amazondotcom,eBay,yahoo}.xml
-
+ rm -f ${pkgdir}${ICECATDIR}/searchplugins/{google,answers,amazondotcom,eBay,yahoo,bing}.xml
msg2 "And provide better ones..."
+ install -m755 -d ${pkgdir}${ICECATDIR}/searchplugins/
install -m644 ${srcdir}/*.xml ${pkgdir}${ICECATDIR}/searchplugins/
}
-md5sums=('367ae51a84b290fff548721bf83bb8b4'
- 'df304f6eb858922a0703bac7903aecc8'
- 'e81ad01dbc16ba28bf92ba4b7c309ca7'
- 'd93fe402b87cd000a869e1fd6badc6c9'
- 'bd5db57c23c72a02a489592644f18995'
- '5a1938673a367b20ecfa009a5eb767aa'
- 'ab3dc9aecae7f08b9492fb3c00a5fd28'
- '3403175087e584a8c5e840cc62310cd9'
- '462c68585461f8cdc23c93c46f6ee4cf'
- '2d492295c4308f9bba9ece28d8b3af2d'
- '937ac0e5392b060d93bd33e761fbfa51'
- 'cf97082e77e3ef5f1bd74b1db9329965'
- '24528ca3f7f1e1a0ba735231aa3ac1de'
- 'c5f00b6b24222aacd5a749d1f59c4d24'
- 'e1bda0854de7d764f7401c81bb82b5ef'
- 'eeac4b61ea403d18efa9597921741075'
- 'f1c76e7e244257856a386ca2de69bdf0')
-md5sums=('5ee4cd447cf51afb0539d958f6f13c97'
- 'df304f6eb858922a0703bac7903aecc8'
+md5sums=('6d7031ecdcf8edb214aaa3fbb1d3fe33'
+ '436db1f6167ffe82fcd71a53ffd80d0e'
'e81ad01dbc16ba28bf92ba4b7c309ca7'
'd93fe402b87cd000a869e1fd6badc6c9'
'bd5db57c23c72a02a489592644f18995'
'5a1938673a367b20ecfa009a5eb767aa'
- 'ab3dc9aecae7f08b9492fb3c00a5fd28'
'3403175087e584a8c5e840cc62310cd9'
'462c68585461f8cdc23c93c46f6ee4cf'
'2d492295c4308f9bba9ece28d8b3af2d'
@@ -138,5 +116,5 @@ md5sums=('5ee4cd447cf51afb0539d958f6f13c97'
'24528ca3f7f1e1a0ba735231aa3ac1de'
'c5f00b6b24222aacd5a749d1f59c4d24'
'e1bda0854de7d764f7401c81bb82b5ef'
- 'eeac4b61ea403d18efa9597921741075'
+ '9952048383966926eea6d67384102425'
'f1c76e7e244257856a386ca2de69bdf0')
diff --git a/libre/icecat/firefox-version.patch b/libre/icecat/firefox-version.patch
new file mode 100644
index 000000000..85a8fb18d
--- /dev/null
+++ b/libre/icecat/firefox-version.patch
@@ -0,0 +1,12 @@
+diff -Nur mozilla-2.0.orig//browser/installer/Makefile.in mozilla-2.0/browser/installer/Makefile.in
+--- mozilla-2.0.orig//browser/installer/Makefile.in 2011-03-03 14:11:20.000000000 -0800
++++ mozilla-2.0/browser/installer/Makefile.in 2011-03-13 10:08:45.896702838 -0700
+@@ -43,6 +43,8 @@
+
+ include $(DEPTH)/config/autoconf.mk
+
++MOZ_APP_VERSION="4.0"
++
+ include $(topsrcdir)/config/rules.mk
+
+ MOZ_PKG_REMOVALS = $(srcdir)/removed-files.in
diff --git a/libre/icecat/firefox.js b/libre/icecat/firefox.js
index 945091b45..2300e65ce 100644
--- a/libre/icecat/firefox.js
+++ b/libre/icecat/firefox.js
@@ -52,30 +52,17 @@ pref("general.startup.browser", true);
pref("browser.chromeURL","chrome://browser/content/");
pref("browser.hiddenWindowChromeURL", "chrome://browser/content/hiddenWindow.xul");
-pref("xpinstall.dialog.confirm", "chrome://mozapps/content/xpinstall/xpinstallConfirm.xul");
-pref("xpinstall.dialog.progress.skin", "chrome://mozapps/content/extensions/extensions.xul");
-pref("xpinstall.dialog.progress.chrome", "chrome://mozapps/content/extensions/extensions.xul");
-pref("xpinstall.dialog.progress.type.skin", "Extension:Manager");
-pref("xpinstall.dialog.progress.type.chrome", "Extension:Manager");
-
-// Developers can set this to |true| if they are constantly changing files in their
-// extensions directory so that the extension system does not constantly think that
-// their extensions are being updated and thus reregistered every time the app is
-// started.
-pref("extensions.ignoreMTimeChanges", false);
+
// Enables some extra Extension System Logging (can reduce performance)
pref("extensions.logging.enabled", false);
-// Hides the install button in the add-ons mgr
-pref("extensions.hideInstallButton", true);
-
-// Preferences for the Get Add-ons pane
-pref("extensions.getAddons.showPane", false);
-pref("extensions.getAddons.browseAddons", "http://www.gnu.org/software/gnuzilla/addons.html");
-pref("extensions.getAddons.maxResults", 5);
-pref("extensions.getAddons.recommended.browseURL", "http://www.gnu.org/software/gnuzilla/addons.html");
-pref("extensions.getAddons.recommended.url", "http://www.gnu.org/software/gnuzilla/addons.html");
+
+// Preferences for AMO integration
+pref("extensions.getAddons.cache.enabled", true);
+pref("extensions.getAddons.maxResults", 15);
+pref("extensions.getAddons.get.url", "http://www.gnu.org/software/gnuzilla/addons.html");
pref("extensions.getAddons.search.browseURL", "http://www.gnu.org/software/gnuzilla/addons.html");
pref("extensions.getAddons.search.url", "http://www.gnu.org/software/gnuzilla/addons.html");
+pref("extensions.webservice.discoverURL", "http://www.gnu.org/software/gnuzilla/addons.html");
// Blocklist preferences
pref("extensions.blocklist.enabled", true);
@@ -83,9 +70,11 @@ pref("extensions.blocklist.interval", 86400);
// Controls what level the blocklist switches from warning about items to forcibly
// blocking them.
pref("extensions.blocklist.level", 2);
-pref("extensions.blocklist.url", "https://addons.mozilla.org/blocklist/3/%APP_ID%/%APP_VERSION%/%PRODUCT%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/");
+pref("extensions.blocklist.url", "https://addons.mozilla.org/blocklist/3/%APP_ID%/%APP_VERSION%/%PRODUCT%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/%PING_COUNT%/%TOTAL_PING_COUNT%/%DAYS_SINCE_LAST_PING%/");
pref("extensions.blocklist.detailsURL", "https://www.mozilla.com/%LOCALE%/blocklist/");
+pref("extensions.update.autoUpdateDefault", true);
+
// Dictionary download preference
pref("browser.dictionaries.download.url", "http://gnuzilla.gnu.org");
@@ -99,13 +88,61 @@ pref("app.update.timer", 600000);
// The interval to check for updates (app.update.interval) is defined in
// firefox-branding.js
+// Alternative windowtype for an application update user interface window. When
+// a window with this windowtype is open the application update service won't
+// open the normal application update user interface window.
+pref("app.update.altwindowtype", "Browser:About");
+
+// Enables some extra Application Update Logging (can reduce performance)
+pref("app.update.log", false);
+
+// The number of general background check failures to allow before notifying the
+// user of the failure. User initiated update checks always notify the user of
+// the failure.
+pref("app.update.backgroundMaxErrors", 10);
+
+// When |app.update.cert.requireBuiltIn| is true or not specified the
+// final certificate and all certificates the connection is redirected to before
+// the final certificate for the url specified in the |app.update.url|
+// preference must be built-in.
+pref("app.update.cert.requireBuiltIn", true);
+
+// When |app.update.cert.checkAttributes| is true or not specified the
+// certificate attributes specified in the |app.update.certs.| preference branch
+// are checked against the certificate for the url specified by the
+// |app.update.url| preference.
+pref("app.update.cert.checkAttributes", true);
+
+// The number of certificate attribute check failures to allow for background
+// update checks before notifying the user of the failure. User initiated update
+// checks always notify the user of the certificate attribute check failure.
+pref("app.update.cert.maxErrors", 5);
+
+// The |app.update.certs.| preference branch contains branches that are
+// sequentially numbered starting at 1 that contain attribute name / value
+// pairs for the certificate used by the server that hosts the update xml file
+// as specified in the |app.update.url| preference. When these preferences are
+// present the following conditions apply for a successful update check:
+// 1. the uri scheme must be https
+// 2. the preference name must exist as an attribute name on the certificate and
+// the value for the name must be the same as the value for the attribute name
+// on the certificate.
+// If these conditions aren't met it will be treated the same as when there is
+// no update available. This validation will not be performed when using the
+// |app.update.url.override| preference for update checking.
+pref("app.update.certs.1.issuerName", "OU=Equifax Secure Certificate Authority,O=Equifax,C=US");
+pref("app.update.certs.1.commonName", "aus3.mozilla.org");
+
+pref("app.update.certs.2.issuerName", "CN=Thawte SSL CA,O=\"Thawte, Inc.\",C=US");
+pref("app.update.certs.2.commonName", "aus3.mozilla.org");
+
// Whether or not app updates are enabled
-pref("app.update.enabled", true);
+pref("app.update.enabled", false);
// This preference turns on app.update.mode and allows automatic download and
// install to take place. We use a separate boolean toggle for this to make
// the UI easier to construct.
-pref("app.update.auto", true);
+pref("app.update.auto", false);
// Defines how the Application Update Service notifies the user about updates:
//
@@ -114,7 +151,7 @@ pref("app.update.auto", true);
// 1 download no prompt download no prompt if no incompatibilities
// 2 download no prompt prompt
//
-// See chart in nsUpdateService.js.in for more details
+// See chart in nsUpdateService.js source for more details
//
pref("app.update.mode", 1);
@@ -122,7 +159,7 @@ pref("app.update.mode", 1);
pref("app.update.silent", false);
// Update service URL:
-pref("app.update.url", "https://aus2.mozilla.org/update/3/%PRODUCT%/%VERSION%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/update.xml");
+pref("app.update.url", "https://aus3.mozilla.org/update/3/%PRODUCT%/%VERSION%/%BUILD_ID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/update.xml");
// app.update.url.manual is in branding section
// app.update.url.details is in branding section
@@ -180,12 +217,13 @@ pref("xpinstall.whitelist.add.36", "getpersonas.com");
pref("lightweightThemes.update.enabled", true);
pref("keyword.enabled", true);
-pref("keyword.URL", "chrome://browser-region/locale/region.properties");
+// Override the default keyword.URL. Empty value means
+// "use the search service's default engine"
+pref("keyword.URL", "");
pref("general.useragent.locale", "@AB_CD@");
pref("general.skins.selectedSkin", "classic/1.0");
pref("general.useragent.extra.firefox", "@APP_UA_NAME@/@APP_VERSION@ (like Firefox/@APP_VERSION@)");
-
pref("general.smoothScroll", false);
#ifdef UNIX_BUT_NOT_MAC
pref("general.autoScroll", false);
@@ -200,15 +238,25 @@ pref("browser.shell.checkDefaultBrowser", true);
// 0 = blank, 1 = home (browser.startup.homepage), 2 = last visited page, 3 = resume previous browser session
// The behavior of option 3 is detailed at: http://wiki.mozilla.org/Session_Restore
pref("browser.startup.page", 1);
-pref("browser.startup.homepage", "resource:/browserconfig.properties");
+pref("browser.startup.homepage", "chrome://branding/locale/browserconfig.properties");
+
+// This url, if changed, MUST continue to point to an https url. Pulling arbitrary content to inject into
+// this page over http opens us up to a man-in-the-middle attack that we'd rather not face. If you are a downstream
+// repackager of this code using an alternate snippet url, please keep your users safe
+pref("browser.aboutHomeSnippets.updateUrl", "https://snippets.mozilla.com/%STARTPAGE_VERSION%/%NAME%/%VERSION%/%APPBUILDID%/%BUILD_TARGET%/%LOCALE%/%CHANNEL%/%OS_VERSION%/%DISTRIBUTION%/%DISTRIBUTION_VERSION%/");
pref("browser.enable_automatic_image_resizing", true);
pref("browser.chrome.site_icons", true);
pref("browser.chrome.favicons", true);
+// browser.warnOnQuit == false will override all other possible prompts when quitting or restarting
pref("browser.warnOnQuit", true);
-pref("browser.warnOnRestart", true);
+pref("browser.warnOnRestart", false);
+// browser.showQuitWarning specifically controls the quit warning dialog. We
+// might still show the window closing dialog with showQuitWarning == false.
+pref("browser.showQuitWarning", false);
pref("browser.fullscreen.autohide", true);
pref("browser.fullscreen.animateUp", 1);
+pref("browser.overlink-delay", 70);
#ifdef UNIX_BUT_NOT_MAC
pref("browser.urlbar.clickSelectsAll", false);
@@ -241,6 +289,7 @@ pref("browser.urlbar.delay", 50);
pref("browser.urlbar.restrict.history", "^");
pref("browser.urlbar.restrict.bookmark", "*");
pref("browser.urlbar.restrict.tag", "+");
+pref("browser.urlbar.restrict.openpage", "%");
pref("browser.urlbar.restrict.typed", "~");
pref("browser.urlbar.match.title", "#");
pref("browser.urlbar.match.url", "@");
@@ -248,7 +297,8 @@ pref("browser.urlbar.match.url", "@");
// The default behavior for the urlbar can be configured to use any combination
// of the restrict or match filters with each additional filter restricting
// more (intersection). Add the following values to set the behavior as the
-// default: 1: history, 2: bookmark, 4: tag, 8: title, 16: url, 32: typed
+// default: 1: history, 2: bookmark, 4: tag, 8: title, 16: url, 32: typed,
+// 64: javascript, 128: tabs
// E.g., 0 = show all results (no filtering), 1 = only visited pages in history,
// 2 = only bookmarks, 3 = visited bookmarks, 1+16 = history matching in the url
pref("browser.urlbar.default.behavior", 0);
@@ -291,6 +341,7 @@ 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");
// search bar results always open in a new tab
pref("browser.search.openintab", false);
@@ -302,7 +353,7 @@ pref("browser.search.update", true);
pref("browser.search.update.log", false);
// Check whether we need to perform engine updates every 6 hours
-pref("browser.search.updateinterval", 6);
+pref("browser.search.update.interval", 21600);
// Whether or not microsummary and generator updates are enabled
pref("browser.microsummary.enabled", true);
@@ -311,16 +362,7 @@ pref("browser.microsummary.updateGenerators", true);
// enable search suggestions by default
pref("browser.search.suggest.enabled", true);
-pref("browser.history.showSessions", false);
pref("browser.sessionhistory.max_entries", 50);
-#ifndef WINCE
-pref("browser.history_expire_days", 180);
-pref("browser.history_expire_days_min", 90);
-#else
-pref("browser.history_expire_days", 90);
-pref("browser.history_expire_days_min", 45);
-#endif
-pref("browser.history_expire_sites", 40000);
// handle links targeting new windows
// 0=default window, 1=current window/tab, 2=new window, 3=new tab in most recent window
@@ -343,13 +385,12 @@ pref("browser.tabs.warnOnClose", true);
pref("browser.tabs.warnOnOpen", true);
pref("browser.tabs.maxOpenBeforeWarn", 15);
pref("browser.tabs.loadInBackground", true);
-pref("browser.tabs.loadFolderAndReplace", true);
pref("browser.tabs.opentabfor.middleclick", true);
pref("browser.tabs.loadDivertedInBackground", false);
pref("browser.tabs.loadBookmarksInBackground", false);
-pref("browser.tabs.tabMinWidth", 100);
-pref("browser.tabs.tabMaxWidth", 250);
pref("browser.tabs.tabClipWidth", 140);
+pref("browser.tabs.animate", true);
+pref("browser.tabs.drawInTitlebar", true);
// Where to show tab close buttons:
// 0 on active tab only
@@ -369,10 +410,6 @@ pref("browser.allTabs.previews", false);
pref("browser.ctrlTab.previews", false);
pref("browser.ctrlTab.recentlyUsedLimit", 7);
-// Default bookmark sorting
-pref("browser.bookmarks.sort.direction", "descending");
-pref("browser.bookmarks.sort.resource", "rdf:http://home.netscape.com/NC-rdf#Name");
-
// By default, do not export HTML at shutdown.
// If true, at shutdown the bookmarks in your menu and toolbar will
// be exported as HTML to the bookmarks.html file.
@@ -382,15 +419,13 @@ pref("browser.bookmarks.autoExportHTML", false);
// keep in {PROFILEDIR}/bookmarkbackups. Special values:
// -1: unlimited
// 0: no backups created (and deletes all existing backups)
-pref("browser.bookmarks.max_backups", 5);
+pref("browser.bookmarks.max_backups", 10);
// Scripts & Windows prefs
pref("dom.disable_open_during_load", true);
-#ifdef DEBUG
pref("javascript.options.showInConsole", true);
+#ifdef DEBUG
pref("general.warnOnAboutConfig", false);
-#else
-pref("javascript.options.showInConsole", false);
#endif
#ifdef WINCE
@@ -398,14 +433,13 @@ pref("javascript.options.showInConsole", false);
pref("dom.max_script_run_time", 20);
#endif
-// Make the status bar reliably present and unaffected by pages
-pref("dom.disable_window_open_feature.status", true);
// This is the pref to control the location bar, change this to true to
-// force this instead of or in addition to the status bar - this makes
-// the origin of popup windows more obvious to avoid spoofing. We would
-// rather not do it by default because it affects UE for web applications, but
-// without it there isn't a really good way to prevent chrome spoofing, see bug 337344
+// force this - this makes the origin of popup windows more obvious to avoid
+// spoofing. We would rather not do it by default because it affects UE for web
+// applications, but without it there isn't a really good way to prevent chrome
+// spoofing, see bug 337344
pref("dom.disable_window_open_feature.location", true);
+// prevent JS from setting status messages
pref("dom.disable_window_status_change", true);
// allow JS to move and resize existing windows
pref("dom.disable_window_move_resize", false);
@@ -415,7 +449,6 @@ pref("dom.disable_window_flip", true);
// popups.policy 1=allow,2=reject
pref("privacy.popups.policy", 1);
pref("privacy.popups.usecustom", true);
-pref("privacy.popups.firstTime", true);
pref("privacy.popups.showBrowserMessage", true);
pref("privacy.item.cookies", false);
@@ -453,23 +486,6 @@ pref("privacy.sanitize.migrateFx3Prefs", false);
pref("network.proxy.share_proxy_settings", false); // use the same proxy settings for all protocols
-pref("network.cookie.cookieBehavior", 0); // 0-Accept, 1-dontAcceptForeign, 2-dontUse
-
-// l12n and i18n
-pref("intl.accept_languages", "chrome://global/locale/intl.properties");
-pref("intl.charsetmenu.browser.static", "chrome://global/locale/intl.properties");
-pref("intl.charsetmenu.browser.more1", "chrome://global/locale/intl.properties");
-pref("intl.charsetmenu.browser.more2", "chrome://global/locale/intl.properties");
-pref("intl.charsetmenu.browser.more3", "chrome://global/locale/intl.properties");
-pref("intl.charsetmenu.browser.more4", "chrome://global/locale/intl.properties");
-pref("intl.charsetmenu.browser.more5", "chrome://global/locale/intl.properties");
-pref("intl.charsetmenu.browser.unicode", "UTF-8, UTF-16LE, UTF-16BE, UTF-32, UTF-32LE, UTF-32BE");
-pref("intl.charset.detector", "chrome://global/locale/intl.properties");
-pref("intl.charset.default", "chrome://global-platform/locale/intl.properties");
-pref("font.language.group", "chrome://global/locale/intl.properties");
-pref("intl.menuitems.alwaysappendaccesskeys","chrome://global/locale/intl.properties");
-pref("intl.menuitems.insertseparatorbeforeaccesskeys","chrome://global/locale/intl.properties");
-
// simple gestures support
pref("browser.gesture.swipe.left", "Browser:BackOrBackDuplicate");
pref("browser.gesture.swipe.right", "Browser:ForwardOrForwardDuplicate");
@@ -482,10 +498,10 @@ pref("browser.gesture.pinch.threshold", 150);
pref("browser.gesture.pinch.latched", false);
pref("browser.gesture.pinch.threshold", 25);
#endif
-pref("browser.gesture.pinch.out", "cmd_fullZoomEnlarge");
-pref("browser.gesture.pinch.in", "cmd_fullZoomReduce");
-pref("browser.gesture.pinch.out.shift", "cmd_fullZoomReset");
-pref("browser.gesture.pinch.in.shift", "cmd_fullZoomReset");
+pref("browser.gesture.pinch.out", "");
+pref("browser.gesture.pinch.in", "");
+pref("browser.gesture.pinch.out.shift", "");
+pref("browser.gesture.pinch.in.shift", "");
pref("browser.gesture.twist.latched", false);
pref("browser.gesture.twist.threshold", 25);
pref("browser.gesture.twist.right", "");
@@ -534,6 +550,9 @@ pref("alerts.totalOpenTime", 4000);
pref("browser.xul.error_pages.enabled", true);
pref("browser.xul.error_pages.expert_bad_cert", false);
+// Work Offline is best manually managed by the user.
+pref("network.manage-offline-status", false);
+
// We want to make sure mail URLs are handled externally...
pref("network.protocol-handler.external.mailto", true); // for mail
pref("network.protocol-handler.external.news", true); // for news
@@ -567,9 +586,6 @@ pref("accessibility.typeaheadfind.timeout", 5000);
pref("accessibility.typeaheadfind.linksonly", false);
pref("accessibility.typeaheadfind.flashBar", 1);
-// Disable the default plugin for firefox
-pref("plugin.default_plugin_disabled", true);
-
// plugin finder service url
pref("pfs.datasource.url", "http://gnuzilla.gnu.org/plugins/PluginFinderService.php?mimetype=%PLUGIN_MIMETYPE%&appID=%APP_ID%&appVersion=%APP_VERSION%&clientOS=%CLIENT_OS%&chromeLocale=%CHROME_LOCALE%&appRelease=%APP_RELEASE%");
@@ -577,6 +593,10 @@ pref("pfs.datasource.url", "http://gnuzilla.gnu.org/plugins/PluginFinderService.
pref("plugins.hide_infobar_for_missing_plugin", false);
pref("plugins.hide_infobar_for_outdated_plugin", false);
+#ifdef XP_MACOSX
+pref("plugins.hide_infobar_for_carbon_failure_plugin", false);
+#endif
+
pref("plugins.update.url", "https://www.mozilla.com/%LOCALE%/plugincheck/");
pref("plugins.update.notifyUser", false);
@@ -705,7 +725,6 @@ pref("browser.safebrowsing.dataProvider", 0);
// Does the provider name need to be localizable?
pref("browser.safebrowsing.provider.0.name", "Google");
-pref("browser.safebrowsing.provider.0.lookupURL", "http://safebrowsing.clients.google.com/safebrowsing/lookup?sourceid=firefox-antiphish&features=TrustRank&client={moz:client}&appver={moz:version}&");
pref("browser.safebrowsing.provider.0.keyURL", "https://sb-ssl.google.com/safebrowsing/newkey?client={moz:client}&appver={moz:version}&pver=2.2");
pref("browser.safebrowsing.provider.0.reportURL", "http://safebrowsing.clients.google.com/safebrowsing/report?");
pref("browser.safebrowsing.provider.0.gethashURL", "http://safebrowsing.clients.google.com/safebrowsing/gethash?client={moz:client}&appver={moz:version}&pver=2.2");
@@ -772,13 +791,15 @@ pref("browser.sessionstore.resume_from_crash", true);
pref("browser.sessionstore.resume_session_once", false);
// minimal interval between two save operations in milliseconds
-pref("browser.sessionstore.interval", 10000);
+pref("browser.sessionstore.interval", 15000);
// maximum amount of POSTDATA to be saved in bytes per history entry (-1 = all of it)
// (NB: POSTDATA will be saved either entirely or not at all)
pref("browser.sessionstore.postdata", 0);
// on which sites to save text data, POSTDATA and cookies
// 0 = everywhere, 1 = unencrypted sites, 2 = nowhere
-pref("browser.sessionstore.privacy_level", 1);
+pref("browser.sessionstore.privacy_level", 0);
+// the same as browser.sessionstore.privacy_level, but for saving deferred session data
+pref("browser.sessionstore.privacy_level_deferred", 1);
// how many tabs can be reopened (per window)
pref("browser.sessionstore.max_tabs_undo", 10);
// how many windows can be reopened (per session) - on non-OS X platforms this
@@ -787,10 +808,25 @@ pref("browser.sessionstore.max_windows_undo", 3);
// number of crashes that can occur before the about:sessionrestore page is displayed
// (this pref has no effect if more than 6 hours have passed since the last crash)
pref("browser.sessionstore.max_resumed_crashes", 1);
+// The number of tabs that can restore concurrently:
+// < 0 = All tabs can restore at the same time
+// 0 = Only the selected tab in each window will be restored
+// Other tabs won't be restored until they are selected
+// N = The number of tabs to restore at the same time
+pref("browser.sessionstore.max_concurrent_tabs", 3);
// allow META refresh by default
pref("accessibility.blockautorefresh", false);
+// Whether history is enabled or not.
+pref("places.history.enabled", true);
+
+// The percentage of system memory that the Places database can use. Out of the
+// allowed cache size it will at most use the size of the database file.
+// Changes to this value are effective after an application restart.
+// Acceptable values are between 0 and 50.
+pref("places.database.cache_to_memory_percentage", 6);
+
// the (maximum) number of the recent visits to sample
// when calculating frecency
pref("places.frecency.numVisits", 10);
@@ -810,6 +846,7 @@ pref("places.frecency.defaultBucketWeight", 10);
// bonus (in percent) for visit transition types for frecency calculations
pref("places.frecency.embedVisitBonus", 0);
+pref("places.frecency.framedLinkVisitBonus", 0);
pref("places.frecency.linkVisitBonus", 100);
pref("places.frecency.typedVisitBonus", 2000);
pref("places.frecency.bookmarkVisitBonus", 75);
@@ -847,9 +884,6 @@ pref("browser.zoom.siteSpecific", true);
// Whether or not to update background tabs to the current zoom level.
pref("browser.zoom.updateBackgroundTabs", true);
-// replace newlines with spaces when pasting into <input type="text"> fields
-pref("editor.singleLine.pasteNewlines", 2);
-
// The breakpad report server to link to in about:crashes
pref("breakpad.reportURL", "http://crash-stats.mozilla.com/report/index/");
@@ -871,6 +905,7 @@ pref("browser.bookmarks.editDialog.firstEditField", "namePicker");
// base url for the wifi geolocation network provider
pref("geo.wifi.uri", "http://geomena.org");
+pref("geo.wifi.protocol", 0);
#ifdef WINCE
@@ -887,6 +922,8 @@ pref("browser.shell.checkDefaultBrowser", false);
// disable bfcache for memory
pref("browser.sessionhistory.max_total_viewers", 0);
+pref("browser.sessionhistory.optimize_eviction", false);
+
// tweak default content sink prefs
pref("content.sink.interactive_deflect_count", 10); /* default 0 */
pref("content.sink.perf_deflect_count", 50); /* default 200 */
@@ -910,10 +947,126 @@ pref("toolbar.customization.usesheet", true);
pref("toolbar.customization.usesheet", false);
#endif
+// The default for this pref reflects whether the build is capable of IPC.
+// (Turning it on in a no-IPC build will have no effect.)
+#ifdef XP_MACOSX
+// i386 ipc preferences
+pref("dom.ipc.plugins.enabled.i386", false);
+pref("dom.ipc.plugins.enabled.i386.flash player.plugin", true);
+pref("dom.ipc.plugins.enabled.i386.javaplugin2_npapi.plugin", true);
+// x86_64 ipc preferences
+pref("dom.ipc.plugins.enabled.x86_64", true);
+#elifdef MOZ_IPC
+pref("dom.ipc.plugins.enabled", true);
+#else
+pref("dom.ipc.plugins.enabled", false);
+#endif
+
#ifdef XP_WIN
#ifndef WINCE
pref("browser.taskbar.previews.enable", false);
pref("browser.taskbar.previews.max", 20);
-pref("browser.taskbar.previews.cachetime", 20);
+pref("browser.taskbar.previews.cachetime", 5);
+pref("browser.taskbar.lists.enabled", true);
+pref("browser.taskbar.lists.frequent.enabled", true);
+pref("browser.taskbar.lists.recent.enabled", false);
+pref("browser.taskbar.lists.maxListItemCount", 7);
+pref("browser.taskbar.lists.tasks.enabled", true);
+pref("browser.taskbar.lists.refreshInSeconds", 120);
#endif
#endif
+
+#ifdef MOZ_SERVICES_SYNC
+// The sync engines to use.
+pref("services.sync.registerEngines", "Bookmarks,Form,History,Password,Prefs,Tab");
+// Preferences to be synced by default
+pref("services.sync.prefs.sync.accessibility.blockautorefresh", true);
+pref("services.sync.prefs.sync.accessibility.browsewithcaret", true);
+pref("services.sync.prefs.sync.accessibility.typeaheadfind", true);
+pref("services.sync.prefs.sync.accessibility.typeaheadfind.linksonly", true);
+pref("services.sync.prefs.sync.app.update.mode", true);
+pref("services.sync.prefs.sync.browser.download.manager.closeWhenDone", true);
+pref("services.sync.prefs.sync.browser.download.manager.retention", true);
+pref("services.sync.prefs.sync.browser.download.manager.scanWhenDone", true);
+pref("services.sync.prefs.sync.browser.download.manager.showWhenStarting", true);
+pref("services.sync.prefs.sync.browser.formfill.enable", true);
+pref("services.sync.prefs.sync.browser.link.open_newwindow", true);
+pref("services.sync.prefs.sync.browser.offline-apps.notify", true);
+pref("services.sync.prefs.sync.browser.safebrowsing.enabled", true);
+pref("services.sync.prefs.sync.browser.safebrowsing.malware.enabled", true);
+pref("services.sync.prefs.sync.browser.search.selectedEngine", true);
+pref("services.sync.prefs.sync.browser.search.update", true);
+pref("services.sync.prefs.sync.browser.startup.homepage", true);
+pref("services.sync.prefs.sync.browser.startup.page", true);
+pref("services.sync.prefs.sync.browser.tabs.autoHide", true);
+pref("services.sync.prefs.sync.browser.tabs.closeButtons", true);
+pref("services.sync.prefs.sync.browser.tabs.loadInBackground", true);
+pref("services.sync.prefs.sync.browser.tabs.warnOnClose", true);
+pref("services.sync.prefs.sync.browser.tabs.warnOnOpen", true);
+pref("services.sync.prefs.sync.browser.urlbar.autocomplete.enabled", true);
+pref("services.sync.prefs.sync.browser.urlbar.autoFill", true);
+pref("services.sync.prefs.sync.browser.urlbar.default.behavior", true);
+pref("services.sync.prefs.sync.browser.urlbar.maxRichResults", true);
+pref("services.sync.prefs.sync.dom.disable_open_during_load", true);
+pref("services.sync.prefs.sync.dom.disable_window_flip", true);
+pref("services.sync.prefs.sync.dom.disable_window_move_resize", true);
+pref("services.sync.prefs.sync.dom.event.contextmenu.enabled", true);
+pref("services.sync.prefs.sync.extensions.personas.current", true);
+pref("services.sync.prefs.sync.extensions.update.enabled", true);
+pref("services.sync.prefs.sync.general.smoothScroll", true);
+pref("services.sync.prefs.sync.intl.accept_languages", true);
+pref("services.sync.prefs.sync.javascript.enabled", true);
+pref("services.sync.prefs.sync.layout.spellcheckDefault", true);
+pref("services.sync.prefs.sync.lightweightThemes.isThemeSelected", true);
+pref("services.sync.prefs.sync.lightweightThemes.usedThemes", true);
+pref("services.sync.prefs.sync.network.cookie.cookieBehavior", true);
+pref("services.sync.prefs.sync.network.cookie.lifetimePolicy", true);
+pref("services.sync.prefs.sync.permissions.default.image", true);
+pref("services.sync.prefs.sync.pref.advanced.images.disable_button.view_image", true);
+pref("services.sync.prefs.sync.pref.advanced.javascript.disable_button.advanced", true);
+pref("services.sync.prefs.sync.pref.downloads.disable_button.edit_actions", true);
+pref("services.sync.prefs.sync.pref.privacy.disable_button.cookie_exceptions", true);
+pref("services.sync.prefs.sync.privacy.clearOnShutdown.cache", true);
+pref("services.sync.prefs.sync.privacy.clearOnShutdown.cookies", true);
+pref("services.sync.prefs.sync.privacy.clearOnShutdown.downloads", true);
+pref("services.sync.prefs.sync.privacy.clearOnShutdown.formdata", true);
+pref("services.sync.prefs.sync.privacy.clearOnShutdown.history", true);
+pref("services.sync.prefs.sync.privacy.clearOnShutdown.offlineApps", true);
+pref("services.sync.prefs.sync.privacy.clearOnShutdown.passwords", true);
+pref("services.sync.prefs.sync.privacy.clearOnShutdown.sessions", true);
+pref("services.sync.prefs.sync.privacy.clearOnShutdown.siteSettings", true);
+pref("services.sync.prefs.sync.privacy.donottrackheader.enabled", true);
+pref("services.sync.prefs.sync.privacy.sanitize.sanitizeOnShutdown", true);
+pref("services.sync.prefs.sync.security.OCSP.disable_button.managecrl", true);
+pref("services.sync.prefs.sync.security.OCSP.enabled", true);
+pref("services.sync.prefs.sync.security.OCSP.require", true);
+pref("services.sync.prefs.sync.security.default_personal_cert", true);
+pref("services.sync.prefs.sync.security.enable_ssl3", true);
+pref("services.sync.prefs.sync.security.enable_tls", true);
+pref("services.sync.prefs.sync.security.warn_entering_secure", true);
+pref("services.sync.prefs.sync.security.warn_entering_weak", true);
+pref("services.sync.prefs.sync.security.warn_leaving_secure", true);
+pref("services.sync.prefs.sync.security.warn_submit_insecure", true);
+pref("services.sync.prefs.sync.security.warn_viewing_mixed", true);
+pref("services.sync.prefs.sync.signon.rememberSignons", true);
+pref("services.sync.prefs.sync.spellchecker.dictionary", true);
+pref("services.sync.prefs.sync.xpinstall.whitelist.required", true);
+#endif
+
+// Disable the error console and inspector
+pref("devtools.errorconsole.enabled", false);
+pref("devtools.inspector.enabled", false);
+
+// The last Web Console height. This is initially 0 which means that the Web
+// Console will use the default height next time it shows.
+// Change to -1 if you do not want the Web Console to remember its last height.
+pref("devtools.hud.height", 0);
+
+// Whether the character encoding menu is under the main Firefox button. This
+// preference is a string so that localizers can alter it.
+pref("browser.menu.showCharacterEncoding", "chrome://browser/locale/browser.properties");
+
+// Allow using tab-modal prompts when possible.
+pref("prompts.tab_modal.enabled", true);
+// Whether the Panorama should animate going in/out of tabs
+pref("browser.panorama.animate_zoom", true);
diff --git a/libre/icecat/icecat-safe.desktop b/libre/icecat/icecat-safe.desktop
index 87acc970c..87acc970c 100755..100644
--- a/libre/icecat/icecat-safe.desktop
+++ b/libre/icecat/icecat-safe.desktop
diff --git a/libre/icecat/icecat.desktop b/libre/icecat/icecat.desktop
index 8a7cad93d..8a7cad93d 100755..100644
--- a/libre/icecat/icecat.desktop
+++ b/libre/icecat/icecat.desktop
diff --git a/libre/icecat/icecat.install b/libre/icecat/icecat.install
index b6bc9abe1..cefb71c4d 100755..100644
--- a/libre/icecat/icecat.install
+++ b/libre/icecat/icecat.install
@@ -2,8 +2,6 @@
post_install () {
echo -e "\n >>> Please, source /etc/profile or logout and re-login to your desktop session"
echo -e " >>> If you installed some locale in the past or some stuff in libdir, please remove old /usr/lib/icecat-3.6.* directories"
- echo -e " >>> rm -rf /usr/lib/icecat-3.6.*"
- echo -e " >>> IceCat now use /usr/lib/icecat-3.6 directory to keep clean the libdir \n"
update-desktop-database -q
}
diff --git a/libre/icecat/mozconfig b/libre/icecat/mozconfig
index 2304cd402..0162c51ac 100644
--- a/libre/icecat/mozconfig
+++ b/libre/icecat/mozconfig
@@ -1,35 +1,64 @@
. $topsrcdir/browser/config/mozconfig
+ac_add_options --disable-official-branding
ac_add_options --prefix=/usr
ac_add_options --libdir=/usr/lib
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
ac_add_options --with-system-jpeg
ac_add_options --with-system-zlib
+ac_add_options --with-system-bz2
ac_add_options --with-system-png
+ac_add_options --with-system-libevent
+ac_add_options --enable-system-hunspell
+ac_add_options --enable-system-sqlite
+ac_add_options --enable-system-cairo
ac_add_options --with-pthreads
-ac_add_options --disable-tests
-ac_add_options --disable-debug
-ac_add_options --enable-optimize
-ac_add_options --disable-installer
-ac_add_options --enable-xinerama
+
ac_add_options --enable-default-toolkit=cairo-gtk2
-ac_add_options --disable-xprint
-ac_add_options --enable-strip
+ac_add_options --enable-optimize="-pipe -O3"
+ac_add_options --disable-safe-browsing
+ac_add_options --enable-extensions=default
+ac_add_options --enable-startup-notification
ac_add_options --enable-pango
-ac_add_options --enable-system-cairo
+ac_add_options --enable-strip
ac_add_options --enable-svg
ac_add_options --enable-canvas
-ac_add_options --enable-startup-notification
+ac_add_options --enable-smil
+ac_add_options --enable-canvas3d
+ac_add_options --enable-places
+ac_add_options --enable-shared-js
+ac_add_options --enable-url-classifier
+
+ac_add_options --enable-optimize
+ac_add_options --enable-strip
+ac_add_options --enable-install-strip
+ac_add_options --enable-jemalloc
+ac_add_options --enable-xterm-updates
+ac_add_options --enable-printing
+ac_add_options --enable-xinerama
ac_add_options --enable-libxul
-ac_add_options --disable-crashreporter
-ac_add_options --with-libxul-sdk=/usr/lib/xulrunner-devel-1.9.2
-ac_add_options --disable-safe-browsing
+ac_add_options --with-libxul-sdk=/usr/lib/xulrunner-devel-2.0
ac_add_options --with-branding=browser/branding/unofficial
+ac_add_options --with-distribution-id=org.gnu.gnuzilla
+ac_add_options --with-user-appdir=.gnuzilla
+
+ac_add_options --disable-javaxpcom
+ac_add_options --disable-crashreporter
+ac_add_options --disable-updater
+ac_add_options --disable-tests
+ac_add_options --disable-xprint
+ac_add_options --disable-mochitest
+ac_add_options --disable-debug
+ac_add_options --disable-installer
+ac_add_options --disable-pedantic
+
+ac_add_options --enable-gio
+ac_add_options --disable-gnomevfs
+ac_add_options --enable-gconf
+ac_add_options --enable-libnotify
export BUILD_OFFICIAL=1
export MOZILLA_OFFICIAL=1
-export USE_SHORT_LIBNAME=1
mk_add_options BUILD_OFFICIAL=1
mk_add_options MOZILLA_OFFICIAL=1
-mk_add_options USE_SHORT_LIBNAME=1
diff --git a/libre/icecat/xulrunner-copy-stub.patch b/libre/icecat/xulrunner-copy-stub.patch
index b42bd76c8..b42bd76c8 100755..100644
--- a/libre/icecat/xulrunner-copy-stub.patch
+++ b/libre/icecat/xulrunner-copy-stub.patch