summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAndré Fabian Silva Delgado <andre@pc-01.localdomain>2012-05-10 18:00:39 -0300
committerAndré Fabian Silva Delgado <andre@pc-01.localdomain>2012-05-10 18:00:39 -0300
commit8321244413b31ae2a8e9896921e1b64e5ea1601b (patch)
tree298504b177b16a2c17dfb0c52453168cc2c81e51
parent68c79cb957282ff776218f3e97584fa2ade9dbf7 (diff)
downloadabslibre-8321244413b31ae2a8e9896921e1b64e5ea1601b.tar.gz
abslibre-8321244413b31ae2a8e9896921e1b64e5ea1601b.tar.bz2
abslibre-8321244413b31ae2a8e9896921e1b64e5ea1601b.zip
iceape-libre: new package under developing and testing
-rw-r--r--libre-testing/iceape-libre/PKGBUILD79
-rw-r--r--libre-testing/iceape-libre/clrf.patch265
-rw-r--r--libre-testing/iceape-libre/gcc47.patch39
-rw-r--r--libre-testing/iceape-libre/gnuzilla-addons.patch28
-rw-r--r--libre-testing/iceape-libre/iceape-2.0-lang.patch11
-rw-r--r--libre-testing/iceape-libre/iceape.desktop11
-rw-r--r--libre-testing/iceape-libre/mozconfig59
7 files changed, 492 insertions, 0 deletions
diff --git a/libre-testing/iceape-libre/PKGBUILD b/libre-testing/iceape-libre/PKGBUILD
new file mode 100644
index 000000000..2bafd2b8b
--- /dev/null
+++ b/libre-testing/iceape-libre/PKGBUILD
@@ -0,0 +1,79 @@
+# Maintainer : Márcio Silva <coadde@adinet.com.uy>
+# Maintainer : André Silva <andre.paulista@adinet.com.uy>
+
+# We're getting this from Debian Sid
+_debname=iceape
+_debver=2.7.4
+_debrel=1
+_debrepo=http://ftp.debian.org/debian/pool/main/
+debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; }
+
+_pkgname=${_debname}
+pkgname=${_debname}-libre
+pkgver=${_debver}
+pkgrel=1
+pkgdesc="A libre version of Debian Iceape, the internet suite based on Mozilla Seamonkey."
+arch=('i586' 'i686' 'x86_64' 'mips64el')
+license=('GPL2' 'MPL' 'LGPL')
+depends=('alsa-lib' 'dbus-glib' 'desktop-file-utils' 'gtk2' 'hunspell' 'libevent' 'libnotify' 'libvpx' 'libxt' 'mime-types' 'mozilla-common' 'nss' 'sqlite' 'startup-notification')
+makedepends=('unzip-libre' 'zip' 'pkg-config' 'python2' 'wireless_tools' 'yasm' 'mesa' 'autoconf2.13' 'quilt')
+replaces=('mozilla' 'seamonkey')
+conflicts=('seamonkey')
+provides=('seamonkey')
+url="http://packages.debian.org/source/sid/${_pkgname}"
+install=$_pkgname.install
+source=("${_debrepo}/`debfile ${_debname}`_${_debver}.orig.tar.bz2"
+ "${_debrepo}/`debfile ${_debname}`_${_debver}-${_debrel}.debian.tar.gz"
+ mozconfig
+ ${_pkgname}.desktop
+ ${_pkgname}-2.0-lang.patch
+ gcc47.patch
+ clrf.patch
+ gnuzilla-addons.patch)
+md5sums=('aedc7546db1fdc50cc9c5f21a7ad6138'
+ '46908aec059166ac48592a8119badf3e'
+ '039209eacca0f77477d6700e00c1614c'
+ '0e981f6ce32fbe6407fe18a591bd3b41'
+ '25b6fe16ac24cd5c852213e5c1adb272'
+ '1e3ad86899c61f0993c429d10913edb4'
+ 'abe8f73faa71ea2a1e4c6f5a33f56c27'
+ 'f7beeb1f94390957259212dd1dbc171f')
+
+build() {
+ export QUILT_PATCHES=debian/patches
+ export QUILT_REFRESH_ARGS='-p ab --no-timestamps --no-index'
+ export QUILT_DIFF_ARGS='--no-timestamps'
+ export LDFLAGS="${LDFLAGS} -Wl,--as-needed,-rpath,/usr/lib/${_pkgname}"
+ export PYTHON="/usr/bin/python2"
+ export DEBIAN_BUILD="comm-release"
+ mv debian "${srcdir}/${DEBIAN_BUILD}"
+ cd "${srcdir}/${DEBIAN_BUILD}"
+ quilt push -av
+
+ patch -Np1 -i "$srcdir/$_pkgname-2.0-lang.patch"
+ patch -Np1 -i "$srcdir/gcc47.patch"
+ patch -Np1 -i "$srcdir/clrf.patch"
+ patch -Np1 -i "$srcdir/gnuzilla-addons.patch"
+
+ cp "${srcdir}/mozconfig" .mozconfig
+ make -j1 -f client.mk build MOZ_MAKE_FLAGS="${MAKEFLAGS}"
+}
+
+package() {
+ cd "${srcdir}/${DEBIAN_BUILD}"
+
+ make -j1 -f client.mk DESTDIR="${pkgdir}" install
+
+ rm -rf "$pkgdir"/usr/lib/$_pkgname/{dictionaries,hyphenation}
+ ln -sf /usr/share/hunspell "$pkgdir/usr/lib/$_pkgname/dictionaries"
+ ln -sf /usr/share/hyphen "$pkgdir/usr/lib/$_pkgname/hyphenation"
+
+ install -m755 -d "$pkgdir/usr/share/applications"
+ install -m755 -d "$pkgdir/usr/share/pixmaps"
+ install -m644 debian/branding/iceape_icon_plain.svg \
+ "$pkgdir/usr/share/pixmaps/"
+ install -m644 "$srcdir/$_pkgname.desktop" "$pkgdir/usr/share/applications/"
+
+ rm -f "$pkgdir/usr/lib/pkgconfig/"$_pkgname-ns{s,pr}.pc
+ rm -r "$pkgdir"/usr/{include,lib/$_pkgname-devel,share/idl}
+}
diff --git a/libre-testing/iceape-libre/clrf.patch b/libre-testing/iceape-libre/clrf.patch
new file mode 100644
index 000000000..5a77f2b01
--- /dev/null
+++ b/libre-testing/iceape-libre/clrf.patch
@@ -0,0 +1,265 @@
+diff -Nur comm-release.orig/mailnews/base/search/src/nsMsgSearchAdapter.cpp comm-release/mailnews/base/search/src/nsMsgSearchAdapter.cpp
+--- comm-release.orig/mailnews/base/search/src/nsMsgSearchAdapter.cpp 2012-04-25 01:09:10.468804374 +0000
++++ comm-release/mailnews/base/search/src/nsMsgSearchAdapter.cpp 2012-04-25 01:09:45.928528202 +0000
+@@ -688,7 +688,7 @@
+ PL_strcat(encoding, "{");
+ lengthStr.AppendInt((PRInt32) strlen(value));
+ PL_strcat(encoding, lengthStr.get());
+- PL_strcat(encoding, "}"CRLF);
++ PL_strcat(encoding, "}" CRLF);
+ PL_strcat(encoding, value);
+ return NS_OK;
+ }
+diff -Nur comm-release.orig/mailnews/base/src/nsMsgFolderCompactor.cpp comm-release/mailnews/base/src/nsMsgFolderCompactor.cpp
+--- comm-release.orig/mailnews/base/src/nsMsgFolderCompactor.cpp 2012-04-25 01:09:10.475470988 +0000
++++ comm-release/mailnews/base/src/nsMsgFolderCompactor.cpp 2012-04-25 01:09:45.928528202 +0000
+@@ -758,7 +758,7 @@
+ }
+ }
+ }
+-#define EXTRA_KEYWORD_HDR " "MSG_LINEBREAK
++#define EXTRA_KEYWORD_HDR " " MSG_LINEBREAK
+
+ // if status offset isn't in the first block, this code won't work. There's no good reason
+ // for the status offset not to be at the beginning of the message anyway.
+@@ -1216,7 +1216,7 @@
+ // check if there's an envelope header; if not, write one.
+ if (strncmp(m_dataBuffer, "From ", 5))
+ {
+- m_fileStream->Write("From "CRLF, 7, &bytesWritten);
++ m_fileStream->Write("From " CRLF, 7, &bytesWritten);
+ m_offlineMsgSize += bytesWritten;
+ }
+ }
+diff -Nur comm-release.orig/mailnews/compose/src/nsSmtpProtocol.cpp comm-release/mailnews/compose/src/nsSmtpProtocol.cpp
+--- comm-release.orig/mailnews/compose/src/nsSmtpProtocol.cpp 2012-04-25 01:09:10.542137136 +0000
++++ comm-release/mailnews/compose/src/nsSmtpProtocol.cpp 2012-04-25 01:09:45.928528202 +0000
+@@ -1722,7 +1722,7 @@
+ {
+ m_sendDone = true;
+ nsCOMPtr<nsIURI> url = do_QueryInterface(m_runningURL);
+- SendData(url, "QUIT"CRLF); // send a quit command to close the connection with the server.
++ SendData(url, "QUIT" CRLF); // send a quit command to close the connection with the server.
+ m_nextState = SMTP_RESPONSE;
+ m_nextStateAfterResponse = SMTP_DONE;
+ return(0);
+@@ -1969,7 +1969,7 @@
+ {
+ nsCOMPtr<nsIURI> url = do_QueryInterface(m_runningURL);
+ // send a quit command to close the connection with the server.
+- if (SendData(url, "QUIT"CRLF) == NS_OK)
++ if (SendData(url, "QUIT" CRLF) == NS_OK)
+ {
+ m_nextState = SMTP_RESPONSE;
+ m_nextStateAfterResponse = SMTP_ERROR_DONE;
+@@ -2118,4 +2118,3 @@
+ NS_ENSURE_SUCCESS(rv,rv);
+ return rv;
+ }
+-
+diff -Nur comm-release.orig/mailnews/imap/src/nsImapMailFolder.cpp comm-release/mailnews/imap/src/nsImapMailFolder.cpp
+--- comm-release.orig/mailnews/imap/src/nsImapMailFolder.cpp 2012-04-25 01:09:10.605469976 +0000
++++ comm-release/mailnews/imap/src/nsImapMailFolder.cpp 2012-04-25 01:09:45.928528202 +0000
+@@ -8309,7 +8309,7 @@
+ bool needMoreData = false;
+ char * newLine = nsnull;
+ PRUint32 numBytesInLine = 0;
+- const char *envelope = "From "CRLF;
++ const char *envelope = "From " CRLF;
+ offlineStore->Write(envelope, strlen(envelope), &bytesWritten);
+ fileSize += bytesWritten;
+ do
+diff -Nur comm-release.orig/mailnews/imap/src/nsImapProtocol.cpp comm-release/mailnews/imap/src/nsImapProtocol.cpp
+--- comm-release.orig/mailnews/imap/src/nsImapProtocol.cpp 2012-04-25 01:09:10.605469976 +0000
++++ comm-release/mailnews/imap/src/nsImapProtocol.cpp 2012-04-25 01:09:45.931861509 +0000
+@@ -1409,7 +1409,7 @@
+ {
+ // PRInt32 oldRecent = GetServerStateParser().NumberOfRecentMessages();
+ nsCAutoString commandBuffer(GetServerCommandTag());
+- commandBuffer.Append(" IDLE"CRLF);
++ commandBuffer.Append(" IDLE" CRLF);
+
+ do
+ {
+@@ -3287,7 +3287,7 @@
+ commandString.Append(messageIds);
+ commandString.Append(" (");
+ commandString.Append(attribute);
+- commandString.Append(")"CRLF);
++ commandString.Append(")" CRLF);
+ nsresult rv = SendData(commandString.get());
+
+ if (NS_SUCCEEDED(rv))
+@@ -5283,7 +5283,7 @@
+
+ IncrementCommandTagNumber();
+ nsCAutoString command(GetServerCommandTag());
+- command.Append(" expunge"CRLF);
++ command.Append(" expunge" CRLF);
+
+ nsresult rv = SendData(command.get());
+ if (NS_SUCCEEDED(rv))
+@@ -5359,7 +5359,7 @@
+ command.Append(gAppName);
+ command.Append("\" \"version\" \"");
+ command.Append(gAppVersion);
+- command.Append("\")"CRLF);
++ command.Append("\")" CRLF);
+
+ nsresult rv = SendData(command.get());
+ if (NS_SUCCEEDED(rv))
+@@ -5816,7 +5816,7 @@
+ nsCAutoString correctedPassword;
+ EscapeUserNamePasswordString(password.get(), &correctedPassword);
+ command.Append(correctedPassword);
+- command.Append("\""CRLF);
++ command.Append("\"" CRLF);
+ rv = SendData(command.get(), true /* suppress logging */);
+ NS_ENSURE_SUCCESS(rv, rv);
+ ParseIMAPandCheckForNewMail();
+@@ -7447,7 +7447,7 @@
+ nsCString command(GetServerCommandTag());
+ command += " create \"";
+ command += escapedName;
+- command += "\""CRLF;
++ command += "\"" CRLF;
+
+ nsresult rv = SendData(command.get());
+ if(NS_SUCCEEDED(rv))
+@@ -7550,7 +7550,7 @@
+ nsCString command (GetServerCommandTag());
+ command += " lsub \"\" \"";
+ command += escapedPattern;
+- command += "\""CRLF;
++ command += "\"" CRLF;
+
+ PR_Free(boxnameWithOnlineDirectory);
+
+@@ -7579,7 +7579,7 @@
+ command += useXLIST ?
+ " xlist \"\" \"" : " list \"\" \"";
+ command += escapedPattern;
+- command += "\""CRLF;
++ command += "\"" CRLF;
+
+ PR_Free(boxnameWithOnlineDirectory);
+
+@@ -7600,7 +7600,7 @@
+ nsCString command (GetServerCommandTag());
+ command += " subscribe \"";
+ command += escapedName;
+- command += "\""CRLF;
++ command += "\"" CRLF;
+
+ nsresult rv = SendData(command.get());
+ if (NS_SUCCEEDED(rv))
+@@ -7618,7 +7618,7 @@
+ nsCString command (GetServerCommandTag());
+ command += " unsubscribe \"";
+ command += escapedName;
+- command += "\""CRLF;
++ command += "\"" CRLF;
+
+ nsresult rv = SendData(command.get());
+ if (NS_SUCCEEDED(rv))
+@@ -7632,7 +7632,7 @@
+ if (m_urlInProgress)
+ return;
+ nsCAutoString command (GetServerCommandTag());
+- command += " IDLE"CRLF;
++ command += " IDLE" CRLF;
+ nsresult rv = SendData(command.get());
+ if (NS_SUCCEEDED(rv))
+ {
+@@ -7659,7 +7659,7 @@
+ nsCOMPtr <nsIAsyncInputStream> asyncInputStream = do_QueryInterface(m_inputStream);
+ if (asyncInputStream)
+ asyncInputStream->AsyncWait(nsnull, 0, 0, nsnull);
+- nsresult rv = SendData("DONE"CRLF);
++ nsresult rv = SendData("DONE" CRLF);
+ // set a short timeout if we don't want to wait for a response
+ if (m_transport && !waitForResponse)
+ m_transport->SetTimeout(nsISocketTransport::TIMEOUT_READ_WRITE, 5);
+@@ -7728,8 +7728,8 @@
+ PRUint32 msgsHandled = 0;
+ const char *formatString;
+ formatString = (idsAreUid)
+- ? "%s uid store %s %s"CRLF
+- : "%s store %s %s"CRLF;
++ ? "%s uid store %s %s" CRLF
++ : "%s store %s %s" CRLF;
+
+ do
+ {
+diff -Nur comm-release.orig/mailnews/imap/src/nsImapServerResponseParser.cpp comm-release/mailnews/imap/src/nsImapServerResponseParser.cpp
+--- comm-release.orig/mailnews/imap/src/nsImapServerResponseParser.cpp 2012-04-25 01:09:10.605469976 +0000
++++ comm-release/mailnews/imap/src/nsImapServerResponseParser.cpp 2012-04-25 01:09:45.931861509 +0000
+@@ -185,7 +185,7 @@
+
+ NS_ASSERTION(aCurrentCommand && *aCurrentCommand != '\r' &&
+ *aCurrentCommand != '\n' && *aCurrentCommand != ' ', "Invailid command string");
+- bool sendingIdleDone = !strcmp(aCurrentCommand, "DONE"CRLF);
++ bool sendingIdleDone = !strcmp(aCurrentCommand, "DONE" CRLF);
+ if (sendingIdleDone)
+ fWaitingForMoreClientInput = false;
+
+diff -Nur comm-release.orig/mailnews/local/src/nsPop3Protocol.cpp comm-release/mailnews/local/src/nsPop3Protocol.cpp
+--- comm-release.orig/mailnews/local/src/nsPop3Protocol.cpp 2012-04-25 01:09:10.492137526 +0000
++++ comm-release/mailnews/local/src/nsPop3Protocol.cpp 2012-04-25 01:09:45.931861509 +0000
+@@ -2483,7 +2483,7 @@
+ return(MK_OUT_OF_MEMORY);
+ m_pop3ConData->next_state_after_response = POP3_GET_LIST;
+ m_listpos = 0;
+- return SendData(m_url, "LIST"CRLF);
++ return SendData(m_url, "LIST" CRLF);
+ }
+
+
+diff -Nur comm-release.orig/mailnews/mime/src/mimedrft.cpp comm-release/mailnews/mime/src/mimedrft.cpp
+--- comm-release.orig/mailnews/mime/src/mimedrft.cpp 2012-04-25 01:09:10.488804218 +0000
++++ comm-release/mailnews/mime/src/mimedrft.cpp 2012-04-25 01:09:45.931861509 +0000
+@@ -1473,7 +1473,7 @@
+ *newbody = 0;
+ PL_strcatn(newbody, newbodylen, "<PRE>");
+ PL_strcatn(newbody, newbodylen, body);
+- PL_strcatn(newbody, newbodylen, "</PRE>"CRLF);
++ PL_strcatn(newbody, newbodylen, "</PRE>" CRLF);
+ PR_Free(body);
+ body = newbody;
+ }
+diff -Nur comm-release.orig/mailnews/mime/src/mimemult.cpp comm-release/mailnews/mime/src/mimemult.cpp
+--- comm-release.orig/mailnews/mime/src/mimemult.cpp 2012-04-25 01:09:10.488804218 +0000
++++ comm-release/mailnews/mime/src/mimemult.cpp 2012-04-25 01:12:53.383735715 +0000
+@@ -280,7 +280,7 @@
+ MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK));
+ MimeWriteAString(obj, NS_LITERAL_CSTRING("Content-Disposition: attachment; filename=\""));
+ MimeWriteAString(obj, fileName);
+- MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK));
++ MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK));
+ MimeWriteAString(obj, NS_LITERAL_CSTRING("X-Mozilla-External-Attachment-URL: "));
+ MimeWriteAString(obj, obj->options->state->detachedFilePath);
+ MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK));
+@@ -293,10 +293,10 @@
+ status = MimeWriteAString(obj, header);
+ if (status < 0)
+ return status;
+- status = MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK"Content-Transfer-Encoding: 8bit"MSG_LINEBREAK));
++ status = MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK "Content-Transfer-Encoding: 8bit" MSG_LINEBREAK));
+ MimeWriteAString(obj, NS_LITERAL_CSTRING("Content-Disposition: inline; filename=\"Deleted: "));
+ MimeWriteAString(obj, fileName);
+- MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK"X-Mozilla-Altered: AttachmentDeleted; date=\""));
++ MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK "X-Mozilla-Altered: AttachmentDeleted; date=\""));
+ }
+ nsCString result;
+ char timeBuffer[128];
+@@ -306,8 +306,8 @@
+ "%a %b %d %H:%M:%S %Y",
+ &now);
+ MimeWriteAString(obj, nsDependentCString(timeBuffer));
+- MimeWriteAString(obj, NS_LITERAL_CSTRING("\""MSG_LINEBREAK));
+- MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK"You deleted an attachment from this message. The original MIME headers for the attachment were:"MSG_LINEBREAK));
++ MimeWriteAString(obj, NS_LITERAL_CSTRING("\"" MSG_LINEBREAK));
++ MimeWriteAString(obj, NS_LITERAL_CSTRING(MSG_LINEBREAK "You deleted an attachment from this message. The original MIME headers for the attachment were:" MSG_LINEBREAK));
+ MimeHeaders_write_raw_headers(mult->hdrs, obj->options, false);
+ }
+ PRInt32 old_nchildren = container->nchildren;
diff --git a/libre-testing/iceape-libre/gcc47.patch b/libre-testing/iceape-libre/gcc47.patch
new file mode 100644
index 000000000..080502c23
--- /dev/null
+++ b/libre-testing/iceape-libre/gcc47.patch
@@ -0,0 +1,39 @@
+diff -Nur comm-release.orig/mozilla/ipc/chromium/src/base/file_util_linux.cc comm-release/mozilla/ipc/chromium/src/base/file_util_linux.cc
+--- comm-release.orig/mozilla/ipc/chromium/src/base/file_util_linux.cc 2012-04-24 23:15:57.347221336 +0000
++++ comm-release/mozilla/ipc/chromium/src/base/file_util_linux.cc 2012-04-24 23:18:34.116046872 +0000
+@@ -5,6 +5,9 @@
+ #include "base/file_util.h"
+
+ #include <fcntl.h>
++#if defined(ANDROID) || defined(OS_POSIX)
++#include <unistd.h>
++#endif
+
+ #include <string>
+ #include <vector>
+diff -Nur comm-release.orig/mozilla/ipc/chromium/src/base/message_pump_libevent.cc comm-release/mozilla/ipc/chromium/src/base/message_pump_libevent.cc
+--- comm-release.orig/mozilla/ipc/chromium/src/base/message_pump_libevent.cc 2012-04-24 23:15:57.353887955 +0000
++++ comm-release/mozilla/ipc/chromium/src/base/message_pump_libevent.cc 2012-04-24 23:18:34.116046872 +0000
+@@ -6,6 +6,9 @@
+
+ #include <errno.h>
+ #include <fcntl.h>
++#if defined(ANDROID) || defined(OS_POSIX)
++#include <unistd.h>
++#endif
+
+ #include "eintr_wrapper.h"
+ #include "base/logging.h"
+diff -Nur comm-release.orig/mozilla/ipc/chromium/src/base/time_posix.cc comm-release/mozilla/ipc/chromium/src/base/time_posix.cc
+--- comm-release.orig/mozilla/ipc/chromium/src/base/time_posix.cc 2012-04-24 23:15:57.350554645 +0000
++++ comm-release/mozilla/ipc/chromium/src/base/time_posix.cc 2012-04-24 23:18:34.116046872 +0000
+@@ -13,6 +13,9 @@
+ #else
+ #include <time.h>
+ #endif
++#if defined(ANDROID) || defined(OS_POSIX)
++#include <unistd.h>
++#endif
+
+ #include <limits>
+
diff --git a/libre-testing/iceape-libre/gnuzilla-addons.patch b/libre-testing/iceape-libre/gnuzilla-addons.patch
new file mode 100644
index 000000000..32a28b3e4
--- /dev/null
+++ b/libre-testing/iceape-libre/gnuzilla-addons.patch
@@ -0,0 +1,28 @@
+diff -Naur comm-release.orig/suite/browser/browser-prefs.js comm-release/suite/browser/browser-prefs.js
+--- comm-release.orig/suite/browser/browser-prefs.js 2012-03-13 02:23:17.000000000 -0300
++++ comm-release/suite/browser/browser-prefs.js 2012-04-11 01:57:44.005731215 -0300
+@@ -587,11 +587,10 @@
+ // Preferences for AMO integration
+ pref("extensions.getAddons.cache.enabled", true); // also toggles personalized recommendations
+ pref("extensions.getAddons.maxResults", 15);
+-pref("extensions.getAddons.get.url", "https://services.addons.mozilla.org/%LOCALE%/%APP%/api/%API_VERSION%/search/guid:%IDS%?src=seamonkey&appOS=%OS%&appVersion=%VERSION%");
+-pref("extensions.getAddons.getWithPerformance.url", "https://services.addons.mozilla.org/%LOCALE%/%APP%/api/%API_VERSION%/search/guid:%IDS%?src=seamonkey&appOS=%OS%&appVersion=%VERSION%&tMain=%TIME_MAIN%&tFirstPaint=%TIME_FIRST_PAINT%&tSessionRestored=%TIME_SESSION_RESTORED%");
+-pref("extensions.getAddons.search.browseURL", "https://addons.mozilla.org/%LOCALE%/%APP%/search?q=%TERMS%");
+-pref("extensions.getAddons.search.url", "https://services.addons.mozilla.org/%LOCALE%/%APP%/api/%API_VERSION%/search/%TERMS%/all/%MAX_RESULTS%/%OS%/%VERSION%/%COMPATIBILITY_MODE%?src=seamonkey");
+-pref("extensions.webservice.discoverURL", "https://services.addons.mozilla.org/%LOCALE%/%APP%/discovery/pane/%VERSION%/%OS%");
++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");
+
+ // getMoreThemes is used by our UI under our switch theme menu
+ pref("extensions.getMoreThemesURL", "chrome://branding/locale/brand.properties");
+@@ -716,7 +715,7 @@
+ #endif
+
+ // plugin finder service url
+-pref("pfs.datasource.url", "https://pfs.mozilla.org/plugins/PluginFinderService.php?mimetype=%PLUGIN_MIMETYPE%&appID=%APP_ID%&appVersion=%APP_VERSION%&clientOS=%CLIENT_OS%&chromeLocale=%CHROME_LOCALE%");
++pref("pfs.datasource.url", "http://www.gnu.org/software/gnuzilla/addons.html");
+ pref("plugins.update.url", "http://www.mozilla.com/%LOCALE%/plugincheck/");
+ pref("plugins.update.notifyUser", false);
+ pref("plugins.hide_infobar_for_outdated_plugin", false);
diff --git a/libre-testing/iceape-libre/iceape-2.0-lang.patch b/libre-testing/iceape-libre/iceape-2.0-lang.patch
new file mode 100644
index 000000000..b9f4a5cde
--- /dev/null
+++ b/libre-testing/iceape-libre/iceape-2.0-lang.patch
@@ -0,0 +1,11 @@
+--- comm-1.9.1/mozilla/modules/libpref/src/init/all.js 2009-10-11 02:12:44.000000000 +0200
++++ comm-1.9.1/mozilla/modules/libpref/src/init/all.js 2009-09-16 02:56:45.000000000 +0200
+@@ -890,7 +890,7 @@
+ pref("intl.charset.detector", "chrome://global/locale/intl.properties");
+ pref("intl.charset.default", "chrome://global-platform/locale/intl.properties");
+ pref("intl.ellipsis", "chrome://global-platform/locale/intl.properties");
+-pref("intl.locale.matchOS", false);
++pref("intl.locale.matchOS", true);
+ // fallback charset list for Unicode conversion (converting from Unicode)
+ // currently used for mail send only to handle symbol characters (e.g Euro, trademark, smartquotes)
+ // for ISO-8859-1
diff --git a/libre-testing/iceape-libre/iceape.desktop b/libre-testing/iceape-libre/iceape.desktop
new file mode 100644
index 000000000..0c7d63353
--- /dev/null
+++ b/libre-testing/iceape-libre/iceape.desktop
@@ -0,0 +1,11 @@
+[Desktop Entry]
+Encoding=UTF-8
+Exec=iceape %u
+Icon=iceape
+Type=Application
+Terminal=false
+MultipleArgs=false
+Name=Iceape internet suite
+MimeType=text/html;text/xml;application/xhtml+xml;application/vnd.mozilla.xul+xml;text/mml;x-scheme-handler/http;x-scheme-handler/https;message/rfc822;x-scheme-handler/mailto;
+StartupNotify=false
+Categories=Application;Network;
diff --git a/libre-testing/iceape-libre/mozconfig b/libre-testing/iceape-libre/mozconfig
new file mode 100644
index 000000000..14e437e6e
--- /dev/null
+++ b/libre-testing/iceape-libre/mozconfig
@@ -0,0 +1,59 @@
+ac_add_options --enable-application=suite
+
+ac_add_options --prefix=/usr
+
+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 --with-system-libvpx
+ac_add_options --enable-system-hunspell
+ac_add_options --enable-system-sqlite
+ac_add_options --enable-system-ffi
+ac_add_options --enable-system-cairo
+ac_add_options --with-pthreads
+
+# Features
+ac_add_options --enable-startup-notification
+ac_add_options --disable-safe-browsing
+ac_add_options --enable-gio
+
+ac_add_options --disable-gnomevfs
+ac_add_options --disable-crashreporter
+ac_add_options --disable-updater
+ac_add_options --disable-tests
+ac_add_options --disable-mochitest
+ac_add_options --disable-installer
+
+# Optimization
+ac_add_options --enable-optimize
+
+export MOZILLA_OFFICIAL=1
+mk_add_options MOZILLA_OFFICIAL=1
+
+# Debian
+ac_add_options --with-default-mozilla-five-home=/usr/lib/iceape
+ac_add_options --enable-default-toolkit=cairo-gtk2
+ac_add_options --disable-official-branding
+ac_add_options --with-branding=debian/branding
+ac_add_options --enable-pango
+ac_add_options --enable-svg
+ac_add_options --enable-mathml
+ac_add_options --disable-pedantic
+ac_add_options --disable-long-long-warning
+ac_add_options --disable-debug
+ac_add_options --enable-canvas
+ac_add_options --enable-extensions="default,-venkman,-inspector"
+ac_add_options --disable-javaxpcom
+ac_add_options --disable-elf-dynstr-gc
+ac_add_options --disable-strip
+ac_add_options --disable-install-strip
+ac_add_options --enable-crypto
+ac_add_options --disable-javaxpcom
+ac_add_options --disable-elf-dynstr-gc
+ac_add_options --disable-strip
+ac_add_options --disable-install-strip
+ac_add_options --enable-crypto