diff options
Diffstat (limited to '~emulatorman')
59 files changed, 4022 insertions, 0 deletions
diff --git a/~emulatorman/iceape-l10n/.gitignore b/~emulatorman/iceape-l10n/.gitignore new file mode 100644 index 000000000..3e1eb57b5 --- /dev/null +++ b/~emulatorman/iceape-l10n/.gitignore @@ -0,0 +1,3 @@ +PKGBUILD.list +langpacks.txt +*.diff.gz diff --git a/~emulatorman/iceape-l10n/PKGBUILD b/~emulatorman/iceape-l10n/PKGBUILD new file mode 100644 index 000000000..1170df1d5 --- /dev/null +++ b/~emulatorman/iceape-l10n/PKGBUILD @@ -0,0 +1,87 @@ +# Maintainer: Luke Shumaker <lukeshu@sbcglobal.net> +# Maintainer (Parabola): André Silva <emulatorman@lavabit.com> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> +# Contributor: fauno <fauno@kiwwwi.com.ar> +# Contributor: Figue <ffigue@gmail.com> +# Based on icecat-i18n package, which is in turn based on firefox-i18n + +# When updating to a newer upstream release: +# - Edit variables in in Makefile. +# - (optionally) edit PKGBUILD.in +# - Run 'make'. It will take care of everything else for you. + +_debname=iceape +_debver=2.7.11 +_debrel=1 +_debrepo=http://ftp.debian.org/debian/pool/main/ +debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; } + +_langpacks=(be ca cs de en-GB es-AR es-ES fi fr gl hu it ja lt nb-NO nl pl pt-PT ru sk sv-SE tr zh-CN) + +pkgbase=iceape-l10n +pkgname=($(for lang in ${_langpacks[@]} + do echo $pkgbase-$lang | tr A-Z a-z + done)) +_pkgver=2.7.11 +pkgver=${_debver}.${_debrel} +pkgrel=1 + +pkgdesc="Language packs for Debian Iceape." +arch=('i686' 'x86_64' 'mips64el') +url="http://packages.debian.org/source/sid/iceape" +license=('MPL') +depends=("iceape-libre>=$pkgver") + +source=() +for lang in ${_langpacks[@]} +do + source+=("${_debrepo}/`debfile ${_debname}`-l10n-$(echo $lang | tr A-Z a-z)_${_debver}-${_debrel}_all.deb") +done + +build() { + cd "${srcdir}" + for f in *.deb + do + bsdtar xf $f + bsdtar xf data.tar.gz + done +} + +_path="/usr/lib/iceape/extensions" + + +for lang in ${_langpacks[@]} +do + eval " +package_iceape-l10n-$(echo $lang | tr A-Z a-z)() { + replaces=(iceape-i18n-$(echo $lang | tr A-Z a-z)) + conflicts=(iceape-i18n-$(echo $lang | tr A-Z a-z)) + provides=(iceape-i18n-$(echo $lang | tr A-Z a-z)) + install -Dm644 \"\$srcdir$_path/langpack-$lang@iceape.mozilla.org.xpi\" \"\$pkgdir$_path/langpack-$lang@iceape.mozilla.org.xpi\" +} +" +done + +md5sums=('fb27360aff6250e7d483803583a5cd78' + '236c7aacd7e6416a37aff95f7bfa6a80' + 'f17d76128ab529415078cafe63b61d50' + '07a5c72158427db8c5a990be6eb2d036' + 'fddbcf27d00f1f4d92fed197ace8dd1b' + '96eb3291200c44ffdc3ab1d1446f00b7' + '04dec3bee388ae66cd434342ab03074f' + 'bdef8b38501e7d6805b5304ef2bf8425' + '90b5d0ab0ab2eb3b75e5f80cb6d289bb' + '97f940c39b84a90b0e16eaeca4fa7806' + '34644b44381ae1da46f2fa308fd1cf34' + 'a6240664344798568276dd5dbdd27fb2' + '61aedef6a89b400584dde82b5e97ff0f' + 'abe7a9172876b30c4677b1f4c2237fc9' + '60f3c543fbdb72cc12aef8f2369101ff' + 'c002da281c0d0fa357f92edd2b8cd12c' + 'c17ab30f25f05024879afdf85fa4c516' + '250a08a999d6d1d6086ffbd17d60fbb4' + '609ce8793ea0d5465da7195e4d956fef' + '060226599bac5bc8ddb64417ef1a0108' + 'eaa827909690bfa8dfdc621164e23ca8' + '3fb66893b5ea3b959de48ef16fb26c74' + '6f2d77e767efa0b0d4cb56df9ccd0a2f') diff --git a/~emulatorman/iceape-libre/PKGBUILD b/~emulatorman/iceape-libre/PKGBUILD new file mode 100644 index 000000000..2595a36f9 --- /dev/null +++ b/~emulatorman/iceape-libre/PKGBUILD @@ -0,0 +1,117 @@ +# Maintainer : Márcio Silva <coadde@lavabit.com> +# Maintainer : André Silva <emulatorman@lavabit.com> + +# We're getting this from Debian Sid +_debname=iceape +_debver=2.7.11 +_debrel=1 +_debrepo=http://ftp.debian.org/debian/pool/main/ +debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; } + +_pkgname=${_debname} +pkgname=${_debname}-libre +pkgver=${_debver}.${_debrel} +pkgrel=2 +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' 'mozilla-searchplugins' 'nss' 'sqlite' 'startup-notification') +makedepends=('unzip-libre' 'zip' 'pkg-config' 'python2' 'python2-ply' 'librsvg' 'wireless_tools' 'yasm' 'mesa' 'autoconf2.13' 'quilt') +replaces=('mozilla' 'seamonkey') +conflicts=('seamonkey') +provides=('seamonkey') +install=$_pkgname.install +url="http://packages.debian.org/source/sid/${_pkgname}" +source=("${_debrepo}/`debfile ${_debname}`_${_debver}.orig.tar.bz2" + "${_debrepo}/`debfile ${_debname}`_${_debver}-${_debrel}.debian.tar.gz" + mozconfig + ${_pkgname}.desktop + ${_pkgname}-2.0-lang.patch + clrf.patch + libre.patch) +md5sums=('40473b4c662975eda865e1fc35c4953b' + 'f704b69cc0328c83edd6223420fbd412' + '60ba9e8f2fafd20e41268af534a55ea7' + '7266333e31731af8bb50c2eca8d0bd26' + '25b6fe16ac24cd5c852213e5c1adb272' + 'c395d443a8c4c16880c7322bcf174743' + 'ebe66195898c89644138ffc88ba26a24') + +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" + export DEBIAN_BRANDING_DIR="debian/branding" + export ICEAPE_ICONS_BRANDING="suite/branding/nightly" + mv comm-esr10 "${DEBIAN_BUILD}" + 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/clrf.patch" + patch -Np1 -i "$srcdir/libre.patch" + + # set up a simple non-animated throbber from the icon + install -m644 debian/extras/Throbber-small.gif suite/themes/classic/communicator/brand/throbber-anim.png + install -m644 debian/extras/Throbber-small.png suite/themes/classic/communicator/brand/throbber-single.png + install -m644 debian/extras/Throbber-small.gif suite/themes/classic/communicator/brand/throbber16-anim.png + install -m644 debian/extras/Throbber-small.png suite/themes/classic/communicator/brand/throbber16-single.png + install -m644 debian/extras/Throbber-small.gif suite/themes/modern/communicator/brand/throbber-anim.png + install -m644 debian/extras/Throbber-small.png suite/themes/modern/communicator/brand/throbber-single.png + install -m644 debian/extras/Throbber-small.gif suite/themes/modern/communicator/brand/throbber16-anim.png + install -m644 debian/extras/Throbber-small.png suite/themes/modern/communicator/brand/throbber16-single.png + + install -m644 debian/extras/preview.png suite/themes/classic/preview.png + + # Converting svg file to png and replacing seamonkey by iceape icons + rsvg-convert -w 300 -h 280 -o ${ICEAPE_ICONS_BRANDING}/content/about.png ${DEBIAN_BRANDING_DIR}/iceape_logo_plain.svg + rsvg-convert -w 64 -h 64 -o ${ICEAPE_ICONS_BRANDING}/content/icon64.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + rsvg-convert -w 128 -h 128 -o ${ICEAPE_ICONS_BRANDING}/icons/gtk/iceape.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + rsvg-convert -w 32 -h 32 -o ${ICEAPE_ICONS_BRANDING}/icons/gtk/default.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + rsvg-convert -w 32 -h 32 -o ${ICEAPE_ICONS_BRANDING}/icons/gtk/main-window.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + rsvg-convert -w 16 -h 16 -o ${ICEAPE_ICONS_BRANDING}/icons/gtk/default16.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + rsvg-convert -w 16 -h 16 -o ${ICEAPE_ICONS_BRANDING}/icons/gtk/main-window16.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + rsvg-convert -w 48 -h 48 -o ${ICEAPE_ICONS_BRANDING}/icons/gtk/default48.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + rsvg-convert -w 48 -h 48 -o ${ICEAPE_ICONS_BRANDING}/icons/gtk/main-window48.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + + # Creating app-icons Folder for iceape*.png icons + + install -m755 -d "${DEBIAN_BRANDING_DIR}/app-icons" + + # Icons for /usr/share/icons/hicolor + rsvg-convert -w 16 -h 16 -o ${DEBIAN_BRANDING_DIR}/app-icons/iceape16.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + rsvg-convert -w 32 -h 32 -o ${DEBIAN_BRANDING_DIR}/app-icons/iceape32.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + rsvg-convert -w 48 -h 48 -o ${DEBIAN_BRANDING_DIR}/app-icons/iceape48.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + rsvg-convert -w 64 -h 64 -o ${DEBIAN_BRANDING_DIR}/app-icons/iceape64.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + rsvg-convert -w 128 -h 128 -o ${DEBIAN_BRANDING_DIR}/app-icons/iceape128.png ${DEBIAN_BRANDING_DIR}/iceape_icon_plain.svg + + 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,searchplugins} + ln -sf /usr/share/hunspell "$pkgdir/usr/lib/$_pkgname/dictionaries" + ln -sf /usr/share/hyphen "$pkgdir/usr/lib/$_pkgname/hyphenation" + ln -sf /usr/lib/mozilla/searchplugins "$pkgdir/usr/lib/$_pkgname/searchplugins" + + install -m755 -d "$pkgdir/usr/share/applications" + install -m755 -d "$pkgdir/usr/share/pixmaps" + install -m644 ${ICEAPE_ICONS_BRANDING}/icons/gtk/iceape.png \ + "$pkgdir/usr/share/pixmaps/" + + for i in 16x16 32x32 48x48 64x64 128x128; do + install -Dm644 "${DEBIAN_BRANDING_DIR}/app-icons/${_pkgname}${i/x*/}.png" "${pkgdir}/usr/share/icons/hicolor/$i/apps/${_pkgname}.png" + done + install -Dm644 "${DEBIAN_BRANDING_DIR}/${_pkgname}_icon_plain.svg" "${pkgdir}/usr/share/icons/hicolor/scalable/apps/${_pkgname}.svg" + + install -m644 "$srcdir/$_pkgname.desktop" "$pkgdir/usr/share/applications/" +} diff --git a/~emulatorman/iceape-libre/clrf.patch b/~emulatorman/iceape-libre/clrf.patch new file mode 100644 index 000000000..375708ac4 --- /dev/null +++ b/~emulatorman/iceape-libre/clrf.patch @@ -0,0 +1,260 @@ +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-03-12 23:37:12.000000000 -0300 ++++ comm-release/mailnews/base/search/src/nsMsgSearchAdapter.cpp 2012-05-07 12:33:58.517612453 -0300 +@@ -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-03-12 23:37:13.000000000 -0300 ++++ comm-release/mailnews/base/src/nsMsgFolderCompactor.cpp 2012-05-07 12:41:08.003264793 -0300 +@@ -753,7 +753,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. +@@ -1203,7 +1203,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-03-12 23:37:13.000000000 -0300 ++++ comm-release/mailnews/compose/src/nsSmtpProtocol.cpp 2012-05-07 12:44:43.127347489 -0300 +@@ -1722,7 +1722,7 @@ + { + m_sendDone = PR_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; +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-03-12 23:37:13.000000000 -0300 ++++ comm-release/mailnews/imap/src/nsImapMailFolder.cpp 2012-05-07 12:48:29.417179064 -0300 +@@ -8298,7 +8298,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-03-12 23:37:13.000000000 -0300 ++++ comm-release/mailnews/imap/src/nsImapProtocol.cpp 2012-05-07 15:45:58.551202719 -0300 +@@ -1410,7 +1410,7 @@ + { + // PRInt32 oldRecent = GetServerStateParser().NumberOfRecentMessages(); + nsCAutoString commandBuffer(GetServerCommandTag()); +- commandBuffer.Append(" IDLE"CRLF); ++ commandBuffer.Append(" IDLE" CRLF); + + do + { +@@ -3290,7 +3290,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(), PR_TRUE /* suppress logging */); + NS_ENSURE_SUCCESS(rv, rv); + ParseIMAPandCheckForNewMail(); +@@ -7446,7 +7446,7 @@ + nsCString command(GetServerCommandTag()); + command += " create \""; + command += escapedName; +- command += "\""CRLF; ++ command += "\"" CRLF; + + nsresult rv = SendData(command.get()); + if(NS_SUCCEEDED(rv)) +@@ -7549,7 +7549,7 @@ + nsCString command (GetServerCommandTag()); + command += " lsub \"\" \""; + command += escapedPattern; +- command += "\""CRLF; ++ command += "\"" CRLF; + + PR_Free(boxnameWithOnlineDirectory); + +@@ -7578,7 +7578,7 @@ + command += useXLIST ? + " xlist \"\" \"" : " list \"\" \""; + command += escapedPattern; +- command += "\""CRLF; ++ command += "\"" CRLF; + + PR_Free(boxnameWithOnlineDirectory); + +@@ -7599,7 +7599,7 @@ + nsCString command (GetServerCommandTag()); + command += " subscribe \""; + command += escapedName; +- command += "\""CRLF; ++ command += "\"" CRLF; + + nsresult rv = SendData(command.get()); + if (NS_SUCCEEDED(rv)) +@@ -7617,7 +7617,7 @@ + nsCString command (GetServerCommandTag()); + command += " unsubscribe \""; + command += escapedName; +- command += "\""CRLF; ++ command += "\"" CRLF; + + nsresult rv = SendData(command.get()); + if (NS_SUCCEEDED(rv)) +@@ -7631,7 +7631,7 @@ + if (m_urlInProgress) + return; + nsCAutoString command (GetServerCommandTag()); +- command += " IDLE"CRLF; ++ command += " IDLE" CRLF; + nsresult rv = SendData(command.get()); + if (NS_SUCCEEDED(rv)) + { +@@ -7658,7 +7658,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); +@@ -7727,8 +7727,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-03-12 23:37:13.000000000 -0300 ++++ comm-release/mailnews/imap/src/nsImapServerResponseParser.cpp 2012-05-07 12:57:22.050615120 -0300 +@@ -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 = PR_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-03-12 23:37:13.000000000 -0300 ++++ comm-release/mailnews/local/src/nsPop3Protocol.cpp 2012-05-07 12:59:45.857182813 -0300 +@@ -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-03-12 23:37:13.000000000 -0300 ++++ comm-release/mailnews/mime/src/mimedrft.cpp 2012-05-07 13:01:42.912022177 -0300 +@@ -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-03-12 23:37:13.000000000 -0300 ++++ comm-release/mailnews/mime/src/mimemult.cpp 2012-05-07 13:04:41.511265477 -0300 +@@ -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, PR_FALSE); + } + PRInt32 old_nchildren = container->nchildren; diff --git a/~emulatorman/iceape-libre/gcc47.patch b/~emulatorman/iceape-libre/gcc47.patch new file mode 100644 index 000000000..115d65131 --- /dev/null +++ b/~emulatorman/iceape-libre/gcc47.patch @@ -0,0 +1,63 @@ +diff -Nur comm-release.orig/mozilla/ipc/chromium/src/base/file_util.cc comm-release/mozilla/ipc/chromium/src/base/file_util.cc +--- comm-release.orig/mozilla/ipc/chromium/src/base/file_util.cc 2012-04-03 18:38:11.474783536 +0000 ++++ comm-release/mozilla/ipc/chromium/src/base/file_util.cc 2012-04-03 18:43:29.218995578 +0000 +@@ -8,7 +8,7 @@ + #include <io.h> + #endif + #include <stdio.h> +-#if defined(ANDROID) ++#if defined(ANDROID) || defined(OS_POSIX) + #include <unistd.h> + #endif + +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-03 18:38:11.381450924 +0000 ++++ comm-release/mozilla/ipc/chromium/src/base/file_util_linux.cc 2012-04-03 18:43:29.218995578 +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-03 18:38:11.438117153 +0000 ++++ comm-release/mozilla/ipc/chromium/src/base/message_pump_libevent.cc 2012-04-03 18:43:29.218995578 +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-03 18:38:11.418117308 +0000 ++++ comm-release/mozilla/ipc/chromium/src/base/time_posix.cc 2012-04-03 18:43:29.218995578 +0000 +@@ -14,6 +14,8 @@ + #include <time.h> + #endif + ++#include <unistd.h> ++ + #include <limits> + + #include "base/basictypes.h" +diff -Nur comm-release.orig/mozilla/toolkit/crashreporter/client/Makefile.in comm-release/mozilla/toolkit/crashreporter/client/Makefile.in +--- comm-release.orig/mozilla/toolkit/crashreporter/client/Makefile.in 2012-04-03 18:38:56.101105510 +0000 ++++ comm-release/mozilla/toolkit/crashreporter/client/Makefile.in 2012-04-03 18:43:29.218995578 +0000 +@@ -69,6 +69,9 @@ + $(STDCXX_COMPAT) \ + $(NULL) + ++# Needed for moz_free ++LIBS += -L$(LIBXUL_DIST)/lib -lmozalloc ++ + ifeq ($(OS_ARCH),WINNT) + CPPSRCS += crashreporter_win.cpp + LIBS += \ diff --git a/~emulatorman/iceape-libre/iceape-2.0-lang.patch b/~emulatorman/iceape-libre/iceape-2.0-lang.patch new file mode 100644 index 000000000..b9f4a5cde --- /dev/null +++ b/~emulatorman/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/~emulatorman/iceape-libre/iceape.desktop b/~emulatorman/iceape-libre/iceape.desktop new file mode 100644 index 000000000..0868e5058 --- /dev/null +++ b/~emulatorman/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/~emulatorman/iceape-libre/iceape.install b/~emulatorman/iceape-libre/iceape.install new file mode 100644 index 000000000..709ad81f2 --- /dev/null +++ b/~emulatorman/iceape-libre/iceape.install @@ -0,0 +1,12 @@ +post_install() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} diff --git a/~emulatorman/iceape-libre/libre.patch b/~emulatorman/iceape-libre/libre.patch new file mode 100644 index 000000000..6273a05a9 --- /dev/null +++ b/~emulatorman/iceape-libre/libre.patch @@ -0,0 +1,285 @@ +--- comm-release.orig/mozilla/browser/locales/en-US/chrome/browser-region/region.properties 2012-02-16 12:08:39.000000000 -0200 ++++ comm-release/mozilla/browser/locales/en-US/chrome/browser-region/region.properties 2012-11-29 22:19:37.998383034 -0200 +@@ -1,23 +1,16 @@ + # Default search engine +-browser.search.defaultenginename=Google ++browser.search.defaultenginename=DuckDuckGo HTML + + # Search engine order (order displayed in the search bar dropdown)s +-browser.search.order.1=Google +-browser.search.order.2=Yahoo +-browser.search.order.3=Bing +- +-# This is the default set of web based feed handlers shown in the reader +-# selection UI +-browser.contentHandlers.types.0.title=Google +-browser.contentHandlers.types.0.uri=http://fusion.google.com/add?feedurl=%s +-browser.contentHandlers.types.1.title=My Yahoo! +-browser.contentHandlers.types.1.uri=http://add.my.yahoo.com/rss?url=%s ++browser.search.order.1=DuckDuckGo HTML ++browser.search.order.2=DuckDuckGo Lite ++browser.search.order.3=Seeks Search + + # URL for site-specific search engines + # TRANSLATION NOTE: {moz:domain} and {searchTerms} are placeholders for the site + # to be searched and the user's search query. Place them in the appropriate location + # for your locale's URL but do not translate them. +-browser.search.siteSearchURL=http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&q=site%3A{moz:domain}+{searchTerms} ++browser.search.siteSearchURL=https://duckduckgo.com/html/?q=site%3A{moz:domain}+{searchTerms} + + # increment this number when anything gets changed in the list below. This will + # cause Firefox to re-read these prefs and inject any new handlers into the +@@ -26,20 +19,10 @@ + # don't make any spelling errors here. + gecko.handlerService.defaultHandlersVersion=3 + +-# The default set of protocol handlers for webcal: +-gecko.handlerService.schemes.webcal.0.name=30 Boxes +-gecko.handlerService.schemes.webcal.0.uriTemplate=http://30boxes.com/external/widget?refer=ff&url=%s +- +-# The default set of protocol handlers for mailto: +-gecko.handlerService.schemes.mailto.0.name=Yahoo! Mail +-gecko.handlerService.schemes.mailto.0.uriTemplate=http://compose.mail.yahoo.com/?To=%s +-gecko.handlerService.schemes.mailto.1.name=Gmail +-gecko.handlerService.schemes.mailto.1.uriTemplate=https://mail.google.com/mail/?extsrc=mailto&url=%s +- + # The default set of protocol handlers for irc: +-gecko.handlerService.schemes.irc.0.name=Mibbit +-gecko.handlerService.schemes.irc.0.uriTemplate=https://www.mibbit.com/?url=%s ++gecko.handlerService.schemes.irc.0.name=Freenode ++gecko.handlerService.schemes.irc.0.uriTemplate=https://webchat.freenode.net/ + + # The default set of protocol handlers for ircs: +-gecko.handlerService.schemes.ircs.0.name=Mibbit +-gecko.handlerService.schemes.ircs.0.uriTemplate=https://www.mibbit.com/?url=%s ++gecko.handlerService.schemes.ircs.0.name=Freenode ++gecko.handlerService.schemes.ircs.0.uriTemplate=https://webchat.freenode.net/ +--- comm-release.orig/mozilla/modules/libpref/src/init/all.js 2012-03-16 04:46:09.000000000 -0300 ++++ comm-release/mozilla/modules/libpref/src/init/all.js 2012-05-12 04:03:52.163831535 -0300 +@@ -47,7 +47,7 @@ + // SYNTAX HINTS: dashes are delimiters. Use underscores instead. + // The first character after a period must be alphabetic. + +-pref("keyword.URL", "http://www.google.com/search?ie=UTF-8&oe=utf-8&q="); ++pref("keyword.URL", "https://duckduckgo.com/html/?q="); + pref("keyword.enabled", false); + pref("general.useragent.locale", "chrome://global/locale/intl.properties"); + pref("general.useragent.compatMode.firefox", false); +--- comm-release.orig/mozilla/toolkit/content/plugins.html 2012-02-16 12:09:35.000000000 -0200 ++++ comm-release/mozilla/toolkit/content/plugins.html 2012-05-12 03:56:16.599192244 -0300 +@@ -98,18 +98,6 @@ + else + document.writeln("<h1 id=\"noplugs\">" + pluginsbundle.GetStringFromName("nopluginsareenabled_label") + "<\/h1>"); + +- document.writeln("<div id=\"findmore\">" + pluginsbundle.GetStringFromName("findmore_label") + " "); +- document.writeln("<a href=\"" + regionbundle.GetStringFromName("more_plugins_url") + "\">" + regionbundle.GetStringFromName("more_plugins_label") + "<\/a>."); +- document.writeln("<\/div>"); +- +- document.writeln("<div id=\"findpluginupdates\">" + pluginsbundle.GetStringFromName("findpluginupdates_label") + " "); +- document.writeln("<a href=\"" + regionbundle.GetStringFromName("pluginupdates_url") + "\">" + regionbundle.GetStringFromName("pluginupdates_label") + "<\/a>."); +- document.writeln("<\/div>"); +- +- document.writeln("<div id=\"installhelp\">" + pluginsbundle.GetStringFromName("installhelp_label") + " "); +- document.writeln("<a href=\"" + regionbundle.GetStringFromName("plugindoc_url") + "\">" + regionbundle.GetStringFromName("plugindoc_label") + "<\/a>."); +- document.writeln("<\/div><hr>"); +- + for (var i = 0; i < numPlugins; i++) + { + var plugin = navigator.plugins[i]; +--- comm-release.orig/mozilla/toolkit/mozapps/plugins/content/pluginInstallerWizard.js 2012-02-16 12:09:38.000000000 -0200 ++++ comm-release/mozilla/toolkit/mozapps/plugins/content/pluginInstallerWizard.js 2012-05-12 03:59:11.639451163 -0300 +@@ -107,6 +107,7 @@ + this.mPluginInfoArrayLength++; + } else { + this.mPluginNotFoundArray[aPluginRequestItem.mimetype] = aPluginRequestItem; ++ this.mPluginNotFoundArray[aPluginRequestItem.mimetype].pluginsPage = null; + this.mPluginNotFoundArrayLength++; + } + +--- comm-release.orig/mozilla/toolkit/mozapps/plugins/content/pluginInstallerWizard.xul 2012-02-16 12:09:38.000000000 -0200 ++++ comm-release/mozilla/toolkit/mozapps/plugins/content/pluginInstallerWizard.xul 2012-05-12 04:01:29.208462907 -0300 +@@ -138,10 +138,6 @@ + + <description id="pluginSummaryRestartNeeded" style="padding-top:10px;" + value="&pluginWizard.finalPage.restart.label;"/> +- <spacer flex="1" /> +- <description id="moreInfoLink" +- style="color:rgb(0, 0, 255); cursor:pointer; text-decoration:underline;" +- value="&pluginWizard.finalPage.moreInfo.label;"/> + </wizardpage> + + </wizard> +--- comm-release.orig/suite/locales/en-US/chrome/browser/region.properties 2012-11-29 21:25:41.879931999 -0200 ++++ comm-release/suite/locales/en-US/chrome/browser/region.properties 2012-11-29 22:25:15.125790092 -0200 +@@ -4,18 +4,11 @@ + # + browser.startup.homepage=about: + browser.throbber.url=about: +-browser.search.defaulturl=http://www.google.com/search?q= ++browser.search.defaulturl=https://duckduckgo.com/html/?q= + +-browser.translation.service=http://translate.google.com/translate?prev=/language_tools&u= +-browser.translation.serviceDomain=translate.google.com ++browser.translation.service=about: ++browser.translation.serviceDomain= + + #config.js + # + startup.homepage_override_url=about: +- +-# This is the default set of web based feed handlers shown in the reader +-# selection UI +-browser.contentHandlers.types.0.title=Google +-browser.contentHandlers.types.0.uri=http://fusion.google.com/add?feedurl=%s +-browser.contentHandlers.types.1.title=My Yahoo! +-browser.contentHandlers.types.1.uri=http://add.my.yahoo.com/rss?url=%s +--- comm-release.orig/suite/locales/en-US/chrome/common/region.properties 2012-02-16 11:59:54.000000000 -0200 ++++ comm-release/suite/locales/en-US/chrome/common/region.properties 2012-11-29 22:26:25.271781371 -0200 +@@ -1,10 +1,10 @@ + # Default search engine +-browser.search.defaultenginename=Google ++browser.search.defaultenginename=DuckDuckGo HTML + + # Search engine order (order displayed in the search bar dropdown) +-browser.search.order.1=Google +-browser.search.order.2=Yahoo ++browser.search.order.1=DuckDuckGo HTML ++browser.search.order.2=DuckDuckGo Lite + + # More information about this update link available in the update wizard. + # Only change this if you are providing localized release notes. +-app.update.url.details=http://www.seamonkey-project.org/releases/ ++app.update.url.details=about: +--- comm-release.orig/suite/locales/en-US/chrome/mailnews/region.properties 2012-02-16 11:59:54.000000000 -0200 ++++ comm-release/suite/locales/en-US/chrome/mailnews/region.properties 2012-05-12 04:28:05.202481512 -0300 +@@ -2,9 +2,9 @@ + # messenger.properties + # mailnews.js + mailnews.start_page.url=chrome://messenger/content/start.xhtml +-messenger.throbber.url=http://www.seamonkey-project.org/ +-compose.throbber.url=http://www.seamonkey-project.org/ +-addressbook.throbber.url=http://www.seamonkey-project.org/ ++messenger.throbber.url=about: ++compose.throbber.url=about: ++addressbook.throbber.url=about: + # To make mapit buttons to disappear in the addressbook, specify empty string. For example: + # mail.addr_book.mapit_url.format= + # The format for "mail.addr_book.mapit_url.format" is: +--- comm-release.orig/suite/locales/en-US/profile/bookmarks.extra 2012-02-16 11:59:54.000000000 -0200 ++++ comm-release/suite/locales/en-US/profile/bookmarks.extra 2012-05-12 04:34:50.172992393 -0300 +@@ -9,9 +9,7 @@ + + <DT><H3>Search the Web</H3> + <DL><p> +- <DT><A HREF="http://www.google.com/">Google</A> +- <DT><A HREF="http://groups.google.com/">Google Groups</A> +- <DT><A HREF="http://news.google.com/">Google News</A> ++ <DT><A HREF="https://duckduckgo.com/html/">Duck Duck Go (HTML)</A> + </DL><p> + + #unfilter emptyLines +--- comm-release.orig/suite/browser/browser-prefs.js 2012-10-17 11:29:38.687716662 -0200 ++++ comm-release/suite/browser/browser-prefs.js 2012-10-17 11:39:01.778002338 -0200 +@@ -110,7 +110,7 @@ + pref("browser.doorhanger.enabled", true); + + // search engines URL +-pref("browser.search.searchEnginesURL", "https://addons.mozilla.org/%LOCALE%/seamonkey/search-engines/"); ++pref("browser.search.searchEnginesURL", "http://www.gnu.org/software/gnuzilla/addons.html"); + + // pointer to the default engine name + pref("browser.search.defaultenginename", "chrome://communicator-region/locale/region.properties"); +@@ -587,10 +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%/seamonkey/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%/seamonkey/search?q=%TERMS%"); +-pref("extensions.getAddons.search.url", "https://services.addons.mozilla.org/%LOCALE%/seamonkey/api/%API_VERSION%/search/%TERMS%/all/%MAX_RESULTS%/%OS%/%VERSION%/%COMPATIBILITY_MODE%?src=seamonkey"); +-pref("extensions.webservice.discoverURL", "https://services.addons.mozilla.org/%LOCALE%/seamonkey/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"); +@@ -715,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); +--- comm-release.orig/suite/locales/en-US/chrome/branding/brand.dtd 2012-05-12 05:14:55.000000000 -0300 ++++ comm-release/suite/locales/en-US/chrome/branding/brand.dtd 2012-05-12 05:32:18.992033502 -0300 +@@ -1,4 +1,4 @@ + <!ENTITY brandFullName "Iceape"> + <!ENTITY brandShortName "Iceape"> +-<!ENTITY vendorShortName "Debian"> ++<!ENTITY vendorShortName "Parabola"> + <!ENTITY sidebarName "Sidebar"> +--- comm-release.orig/suite/locales/en-US/chrome/branding/brand.properties 2012-05-12 05:14:55.000000000 -0300 ++++ comm-release/suite/locales/en-US/chrome/branding/brand.properties 2012-05-12 05:36:38.640803397 -0300 +@@ -1,9 +1,9 @@ + brandFullName=Iceape + brandShortName=Iceape +-vendorShortName=Debian ++vendorShortName=Parabola + sidebarName=Sidebar +-extensions.getMoreThemesURL=https://addons.mozilla.org/%LOCALE%/%APP%/themes ++extensions.getMoreThemesURL=http://www.gnu.org/software/gnuzilla/addons.html#themes + extensions.getPersonasURL=https://addons.mozilla.org/%LOCALE%/%APP%/personas + spellchecker.dictionaries.download.url=https://addons.mozilla.org/%LOCALE%/%APP%/dictionaries +-app.releaseNotesURL=http://www.seamonkey-project.org/releases/seamonkey%VERSION%/ +-app.vendorURL=http://www.seamonkey-project.org/ ++app.releaseNotesURL=about: ++app.vendorURL=about: +--- comm-release.orig/suite/locales/generic/profile/bookmarks.html.in 2012-02-16 11:59:54.000000000 -0200 ++++ comm-release/suite/locales/generic/profile/bookmarks.html.in 2012-05-12 04:40:19.221095752 -0300 +@@ -11,37 +11,14 @@ + <DL><p> + <DT><H3 PERSONAL_TOOLBAR_FOLDER="true" ID="NC:PersonalToolbarFolder">@personal_toolbarfolder@</H3> + <DL><p> +- <DT><A HREF="http://www.seamonkey-project.org/">@seamonkey@</a> +- @seamonkey_l10n@ +- <DT><A HREF="http://www.mozilla.org/">@mozilla_org@</A> +- <DT><A HREF="http://www.mozillazine.org/">@mozillazine@</A> +- <DT><A HREF="http://www.mozdev.org/">@mozdev@</A> ++ <DT><A HREF="https://parabolagnulinux.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA%3D%3D">Parabola GNU/Linux-libre</a> ++ <DT><A HREF="http://www.fsf.org/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAACXBIWXMAAAsTAAALEwEAmpwYAAADG0lEQVQoFQEQA+/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQECAAAAAAAAAAAAAAAAAAAA2qOp7tTXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP///wAAAAAAAOCyt7pUXQcSEgcQDwAAAP///wAAAAAAAAD//x9NSDqNhQEBAQQAAAAAAAAAAAAAAAAQJiQGDQ0aPToZPjoAAQEAAAAAAAAAAAABAQEpZV4AAAAAAAAAAAAA////////////////pSIv05KZ////////////////////////////////AAAAAQAAAP///6krNwAAAAAAAPHc3ggSEQcSEQAAAAAAAAAAABY3NEGelQAAAAAAAAEBAQEAAAD///+YARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGDg1g690CBgYAAAABAQEEAAAAAAAAS7etAAAAAAAAwGVtHklFIlJOAAAAAAAAAAAAAAAA+/X2BwYGAAAAAAAABAAAAAAAAB1IQwAAAAAAAAYNDBAmJB1IQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAgL//v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAQEB//7/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAECAv/+/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD////////////////cqK3qzM////////////////////////////////8AAAABAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGuLjDf9F8oBAAAAAElFTkSuQmCC">Free Software Foundation</A> ++ <DT><A HREF="http://libreplanet.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAC/v78AAAAAAPLy9ABsbakA/f3+APn5+QC6ur0A6urqAEpLbQACBLQApKW3AAULuQDMzMwAGBiDAL29vQCgocsAgnzJALu82QA+PpsAAQOvAOjo6ADZ2dkAysrKALS0zwD5+foAAgKRAAYGdQD19fUADhOjAAQJyACrnqIAxMTLAOnp7gDm5uYAzczNACgobwDg2dEAQkaeAA0RkAAUFnEA0MvQAIBzgAANDYsAk5OyAOTk5ADy8vYA1dXVAD8/cADGxsYA+fn7AAMHvgBzZnQApqauAAEGuQDExMQAAAGmAAoLmgADCMQAxMTdAAwPlwD+/v4ABg7MAF5ehADg4OAA0dHRAAAAoQAYEXAAwsLCALCxwQBnadkAAQGWAPz8/ACgoLgAbm6RANvb5wDr6+sA0dHSALe3uQADB8AAzc3NAGFhbAABAZcAOTtlALi4xwAAAJoA/Pz9AAQHnwADBJcACQl4AFVa3AChl6EAAgW2ABscdAABAq4A2NjYAAAAmwDAwMoAAQKmAAcMswDR0eQAAQSxANvX2wB4aXcAAQGpAAAAkwDW1tYAAgSpACIZZAAAAaEA+vr8AKuirAACBbcA8vLyALOztgADBZYAAACcAAACpwAEA6QAAQKnAPT09QD///8AvL3UADIpigDw8PAABwWOAK6dogBub4kAiozDANLS0gAFC8gAAgW4AP39/QAAAJ0A0NDQAMHBwQDp6ewACg2RAAIFqAAKCokA+/v7AAkOnwAAAaMA7OzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeHh4eHh4eHh4eHh4eHh4AXh4eHhlbikzZlooeHh4eAF4eHh4hX1JVFweInh4eHgBeHh4XmlAGXNGSB8VeHh4AXg8LhaGcV9zKg0wQF54eAF4K0NNOGthjXNCUwAMS3gBPC82iW+CCRN2Iz4wTwx4AW0GgCc5OU41VnSKTBoOiwEFTz8hHIF5RANdQVRfNIMBeBUhe0o9jB0Pcjdzc1E8AXgsB3AbUlkQRVtnhHNoeAF4i45wJCAlYjJbdYRfY3gBeDwmEn4XMToKZDd6WDx4AXh4VTsIfwt3FGpsfAR4eAF4eHgEEYhQAodXYDx4eHgBeHh4eHg8GC1HPHh4eHh4AQABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAA%3D">LibrePlanet</A> + </DL><p> +- <DT><H3>@seamonkey_and_mozilla@</H3> ++ <DT><H3>GNUzilla</H3> + <DL><p> +- <DT><A HREF="http://www.seamonkey-project.org/">@seamonkey_long@</a> +- @seamonkey_l10n_long@ +- <DT><H3>@mozilla_org@</H3> +- <DL><p> +- <DT><A HREF="http://www.mozilla.org/">@mozilla_org_long@</A> +- <DT><A HREF="http://www.mozilla.org/projects/">@mozilla_projects@</A> +- <DT><A HREF="http://www.mozilla.org/about/">@mozilla_about@</A> +- </DL><p> +- <DT><H3>@extend_seamonkey@</H3> +- <DL><p> +- <DT><A HREF="https://addons.mozilla.org/@AB_CD@/seamonkey/">@seamonkey_addons@</a> +- <DT><A HREF="https://addons.mozilla.org/@AB_CD@/seamonkey/themes">@seamonkey_themes@</a> +- <DT><A HREF="https://addons.mozilla.org/@AB_CD@/seamonkey/dictionaries">@seamonkey_dictionaries@</a> +- <DT><A HREF="https://addons.mozilla.org/@AB_CD@/seamonkey/plugins">@seamonkey_plugins@</a> +- <DT><A HREF="http://www.mozdev.org/">@mozdev@</A> +- <DT><A HREF="http://www.mozdev.org/projects/applications/SeaMonkey.html">@mozdev_seamonkey@</A> +- </DL><p> +- <DT><H3>@community_support@</H3> +- <DL><p> +- <DT><A HREF="http://www.seamonkey-project.org/community">@seamonkey_community@</a> +- <DT><A HREF="http://www.mozillazine.org/">@mozillazine@</A> +- <DT><A HREF="http://forums.mozillazine.org/viewforum.php?f=40">@seamonkey_support@</A> +- </DL><p> ++ <DT><A HREF="http://www.gnu.org/software/gnuzilla/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAGFBMVEVFRUV+fn6mpqa/v7/Ozs7Y2Njg4OD8/Pwuhn+TAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAALEQAACxEBf2RfkQAAAAd0SU1FB9MBDhQ6Gd8s57cAAAEVSURBVBgZBcGxVtpgGADQL9gHSBzqSognzMixmcWWzB6pmRHhnyvku6/fewMAIPD3TwHmQxHs6vr+A16bphNum/vV0x429201hcPjAGBTDZGnR/Kw1U181+u4HXvOdSxjUcztz8jjg1xGVBG9XPYxt4PviKiaWLg168iXtbrq+mPT1utjNcR1U73deRnL43M2sRgj3+oYs8uL3rLphPd2QWmHbMu/VS/cnk6UdtSW657g9yBlcZ0UAkUWzPvyRaAYmfd+HT4IZtvC59ibEJxXiqJjQpBpNEufBYE0McoOAunGhRMEFIPc7h4goJigQEBxk8u7AgEpL3IEAUZfcgAByGFXQACm5+4MAuB19QMEgI8CAgDgP4rivVgoKP6ZAAAAAElFTkSuQmCC">GNUzilla and IceCat</a> ++ <DT><a href="http://www.gnu.org/software/gnuzilla/addons.html" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAGFBMVEVFRUV+fn6mpqa/v7/Ozs7Y2Njg4OD8/Pwuhn+TAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAALEQAACxEBf2RfkQAAAAd0SU1FB9MBDhQ6Gd8s57cAAAEVSURBVBgZBcGxVtpgGADQL9gHSBzqSognzMixmcWWzB6pmRHhnyvku6/fewMAIPD3TwHmQxHs6vr+A16bphNum/vV0x429201hcPjAGBTDZGnR/Kw1U181+u4HXvOdSxjUcztz8jjg1xGVBG9XPYxt4PviKiaWLg168iXtbrq+mPT1utjNcR1U73deRnL43M2sRgj3+oYs8uL3rLphPd2QWmHbMu/VS/cnk6UdtSW657g9yBlcZ0UAkUWzPvyRaAYmfd+HT4IZtvC59ibEJxXiqJjQpBpNEufBYE0McoOAunGhRMEFIPc7h4goJigQEBxk8u7AgEpL3IEAUZfcgAByGFXQACm5+4MAuB19QMEgI8CAgDgP4rivVgoKP6ZAAAAAElFTkSuQmCC">Free addons</a> + </DL><p> + #include bookmarks.extra + <HR> diff --git a/~emulatorman/iceape-libre/mozconfig b/~emulatorman/iceape-libre/mozconfig new file mode 100644 index 000000000..5227d77a5 --- /dev/null +++ b/~emulatorman/iceape-libre/mozconfig @@ -0,0 +1,61 @@ +mk_add_options MOZ_CO_PROJECT=suite +ac_add_options --enable-application=suite + +ac_add_options --prefix=/usr +ac_add_options --libdir=/usr/lib + +# System libraries +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 + +# Parabola +export BUILD_OFFICIAL=1 +mk_add_options BUILD_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-elf-dynstr-gc +ac_add_options --disable-strip +ac_add_options --disable-install-strip +ac_add_options --enable-crypto +ac_add_options --disable-javaxpcom diff --git a/~emulatorman/icecat-l10n/.gitignore b/~emulatorman/icecat-l10n/.gitignore new file mode 100644 index 000000000..3987fdafb --- /dev/null +++ b/~emulatorman/icecat-l10n/.gitignore @@ -0,0 +1,3 @@ +index.html +langpacks.txt +*.xpi diff --git a/~emulatorman/icecat-l10n/Makefile b/~emulatorman/icecat-l10n/Makefile new file mode 100644 index 000000000..d1aaf7bff --- /dev/null +++ b/~emulatorman/icecat-l10n/Makefile @@ -0,0 +1,38 @@ +#!/usr/bin/make -f +# Use this script to update the PKGBUILD's list of langpacks. +# This script depends on: +# - coreutils +# - grep +# - pacman +# - sed +# - wget + +# Variables: +_pkgver=10.0 +pkgver=10.0 +pkgrel=1 + +# Guts: ############################################################## + +default: PHONY all +all: PHONY PKGBUILD + +index.html: Makefile + rm -f $@ + wget http://gnuzilla.gnu.org/download/langpacks/${pkgver}/ +langpacks.txt: index.html Makefile + egrep -o '[^>".]+\.xpi' $< | sort -u | sed 's/\.xpi//' > $@ +PKGBUILD: PKGBUILD.in langpacks.txt Makefile + sed \ + -e 's/@_PKGVER@/$(_pkgver)/' \ + -e 's/@PKGVER@/$(pkgver)/' \ + -e 's/@PKGREL@/$(pkgrel)/' \ + -e "s/@LANGPACKS@/(`xargs echo < langpacks.txt`)/" \ + -e '/md5sums/,$$d' \ + PKGBUILD.in > $@ + makepkg -dg >> $@ + +clean: PHONY + rm -f index.html langpacks.txt *.xpi + +.PHONY: PHONY FORCE diff --git a/~emulatorman/icecat-l10n/PKGBUILD b/~emulatorman/icecat-l10n/PKGBUILD new file mode 100644 index 000000000..7ee93cf06 --- /dev/null +++ b/~emulatorman/icecat-l10n/PKGBUILD @@ -0,0 +1,260 @@ +# Maintainer: Luke Shumaker <lukeshu@sbcglobal.net> +# Contributor: fauno <fauno@kiwwwi.com.ar> +# Contributor: Figue <ffigue@gmail.com> +# Maintainer : Márcio Silva <coadde@lavabit.com> +# Maintainer : André Silva <emulatorman@lavabit.com> + +# Based on firefox-i18n package + +# When updating to a newer upstream release: +# - Edit variables in in Makefile. +# - (optionally) edit PKGBUILD.in +# - Run 'make'. It will take care of everything else for you. + +_langpacks=( + ach + ak + ar + as + ast + be + bg + bn-BD + bn-IN + br + bs + ca + cs + csb + cy + da + de + el + en-GB + en-US + en-ZA + eo + es-AR + es-CL + es-ES + es-MX + et + eu + fa + ff + fi + fr + fy-NL + ga-IE + gd + gl + gu-IN + he + hi-IN + hr + hu + hy-AM + id + is + it + ja + kk + km + kn + ko + ku + lg + lij + lt + lv + mai + mk + ml + mr + nb-NO + nl + nn-NO + nso + or + pa-IN + pl + pt-BR + pt-PT + rm + ro + ru + si + sk + sl + son + sq + sr + sv-SE + ta-LK + ta + te + th + tr + uk + vi + zh-CN + zh-TW + zu +) + +pkgbase=icecat-l10n +pkgname=( + $(for lang in ${_langpacks[@]} + do echo icecat-l10n-$lang | tr A-Z a-z + done) +) +pkgver=17.0.1 +pkgrel=1 +pkgdesc='Language packs for GNUzilla IceCat.' +arch=( + any +) +license=( + MPL +) +url=http://www.gnu.org/software/gnuzilla/ +depends=( + ${pkgbase%-l10n}=$pkgver +) +makedepends=( + unzip + zip +) +source=('region.properties') + for lang in ${_langpacks[@]} + do + source+=(http://ftp.gnu.org/gnu/gnuzilla/lang/${pkgver::4}/$lang.xpi) + done + +noextract=( + $(for lang in ${_langpacks[@]} + do echo $lang.xpi + done) +) + + +_path=/usr/lib/${pkgbase%-l10n}/extensions/ + +build() { + cd $srcdir + + for i in ${_langpacks[@]} + do + cd $srcdir + unzip -q $i.xpi -d $i + install -Dm644 $srcdir/region.properties $i/chrome/$i/locale/browser-region + cd $i + zip -q -r $srcdir/langpack-$i@firefox.mozilla.org.xpi . + done + + cd $srcdir +} + +for lang in ${_langpacks[@]} +do + eval " +package_icecat-l10n-$(echo $lang | tr A-Z a-z) () { + replaces=(icecat-i18n-$(echo $lang | tr A-Z a-z)) + conflicts=(icecat-i18n-$(echo $lang | tr A-Z a-z)) + provides=(icecat-i18n-$(echo $lang | tr A-Z a-z)) + install -Dm644 \"\$srcdir/langpack-$lang@firefox.mozilla.org.xpi\" \"\$pkgdir$_path/langpack-$lang@firefox.mozilla.org.xpi\" +} +" +done + +sha512sums=( + 20064992e694b3fed0f75bee9d54af3427c01ae0048e0ec220895e58127954ceb4db47ea85627e86d9ea6614ce3feaf30f652d87f7c2e896fc00774a757a640a + f3c627282fa78ef67335fa70671af848f2fff2252db1c4125838bcbfd92c61ae978b9a32885f4b33beac4eb4d8dc3fc034b18703686164a4903c4180de539439 + d88793ed54794833ec6200d7a1957b68ebe8dd5c1dd6f4d030440919e5ca7f85f84fefd459603d29be57fd6b9d0961356c7760aedaca638bc3b58532ceae8441 + 6f3f6e026bc7d4ac6d6aa9e1ebb5995d663293f9b26190d33de8857cbfd5e6454bbda49bd13d6c6c1dab544ef0f2da0cdec50b1d9fbfb73aa5d66b0a6a67a87c + a0f8aec338bd7a36af983bab144fafdb9c9dc9081ceaf31aae443160e68758f3d46a385bc20d4a6767b81d09eeca92e08e0aa79250719e9e1f9d7bbab8137390 + 066d2540fcf97e87e778124d9bd8aa0d624d810d5b034423f43fc77f8579c2006c2a7a519b438a152272ed9db85a3e56ae770f221c7eabdc700368c4788e6108 + 12801164ecebf059c5615480785ce4ce95de5221d05e74bf85f747a62f8954decd372afb829b8d941316bc9115c3b6faf1da6da869d0ce5b09c622043936bf6f + aacf7f3713431a4dd5060d475145834c0b9aafb032bdceac9bfee4d3ea0ebe869c86bfec1fb65995b2a531962c40b9df69d4a427e81cf01164891f668c3000ee + ce022ddcb8c46d1ecc97187ad025707b33f763b1abed69a8cc33b1b512728267fe67ab45dd19e5f89463328950330db9ea5243df30e0f35acae48c4746211b79 + 560c43e6f684a726c10a547b6f95d511d63837521b6251ab3b5f141c4e9490c925eb049e3c6e29d1eb9bbe066fda9e5671a0aae8715f0946ee941ece77b5968a + 5bd37933a9026c5af0facb34932a1cbb24b46d16fee9ee2b94313e3c7c6622d5ac0f1afe05b003a39cd9750cfa4f0d1f40455610b52d4c48f1e3ff108c2bdca8 + 37c5d9048f8ef0969a71bf422f9625fa768fac0174046f8cc5922534070eb38a89e467e78013c394702afe4af9045d3977d250bbe0dc26ce5059d5f4c8bce990 + aaf2b4a0d7a8a9b9d29a212be5c7de43af47b80624e6f2ffc6fd1be80de3840acdb7dc91309bd59a0e1e8c8f510f2ce571d0be5587dcbb55caed32b0c400be5d + 5db08621ddb5313c2e87e6f0922b66716cd1880eb479ca23ef6dbfcd52c86af2e6954dfb68569aef31061fe4ef0965111fab91f36caa12e01f76749bac0ae625 + 9acf3446c15e95f7f8bd553ce1860fc9d8181eb20472e3e435544ccea96d2305698cf89af4b4bce8a741c1c13f5b590f73912a3ff478fe976a7da02046877a6e + 0f3cf93dc93f324b5caa4da8fba259164bb6bd58bdd1dc4152304a4000ef84b6191e827fa69a619a32c8edcdd3c66d2307100f6db5e934182862fd53e382ebc2 + 31b7185f3587e3f8cd660510908392e97cd664364fb4e1c538f30fc53012ae2703a4c2542b956099feccecc28d849953cc0259c76ea8b13cac8e2ae4a66091b6 + 5c195f9572eb9134d2616be85b4101ad3b5ca7f2314a061208238e8c22a3dfa4173da8aaae5923875776bc782b0e84c8ca1633e701b16a6a6f0847e99c28a1a6 + b0825885c0dc76dd2aacf86bb662d6db400d76247c7071b2920f3c0543e6bea6c4d9752aa42abeb02b25195160eb727dce949be2dbd6493b5e4de6afb738f227 + 2e27aebb49e6c4ca3360dd53e240ac03e307442a26690c37e09e185a02531a13077181417bbf64580062820d67cbc5a8d87d297accb2410c85a00655bb74a359 + e77b3060eddda40956dd6cebc56d2c754e9f9132afe346cbaba4b9f0df33b799c357a61d65cd8d469ae52df1419fbe31e35226c342a43ebbdd1ca09913d733fb + 5deefc36b86a2bb20804a506df208d5ef87675dcc82b3f2faaa39ca08eb5ae2793a15aff61da7328234f75c67c3aff3c5a56e5cdabcc5e6b7c2225405b9967e1 + 7216d29fb344b7e1ad373cb41f3926a52e6fb7a3ba1313c3b9918ca7e8001d7b285d40d1ca0d06cf38cc29f8d16aabd28dbbdd7cb4270eff4a5357a60bcada11 + ffbe8caf8b7c38dfe760d7007f9da9cff78c59814572a2bc3f3dbe41b00abae91d1aae54661e19ec5c836b13ae752bdbbda09691485e6f7546335435207f0c51 + 9213b4b91a1849bc1d659bfe97d78ac936204a7b68aaa4294840867950f59276a792b00f278ea2bf078b80ee187a26d1ad94be34beb609f0f321fa102b5c8902 + 4d4c267991aba194aef7fbcba6e4212e095aaf99b7b21255dc3faf770685effb7284eb75d6dec41be685f694736f101a15e7c6a09c877444c73b0c9ecf523a01 + cf9e06f616d181894f6731587e917fa7b12f2dd89bd388dbfc3ee263595239908be36dc076b448932bd27a58f5fc95c5b8f39d53c0b487973976f036a660e9c3 + 504778df4dc2b19afe617ce506eefc6440931fcaa3f1637f1bbaa43fcc5b1f480d3e5223a3b0a3570dc73b08d6c2b77474b65b90ce9e706d4114431d53293a9e + 92361116e3faaa39a93ca33e190a3ffb40eefe028ad30feaf2cd62517a4337af74bfebd00a7e0f8ee3dfc9e1b6d9fb69d26c360e4c80edc193c7bcbcbabd86f2 + 3a7ff8e5213d88727ea15fb63ebdbb6c1c53da18b203895f4ec4b4d42b8ce163eeba94c2cbe68407fabbd1290048c75ce8fac91d379d11e5357b0a0908e2da86 + 6db783b5581ebfddea5d3e27e0ac081f216252711a9ad1f0c88a78ca79bd7c0a76e21b28aec745052cd210e6282670824640b67016822cc312a508052347453b + d6cad457fbe801e0469dad7760f3dc434b09ae44f703d60e96dbe8882a9fce001d5ebfb5b86154eaddc898c57bd36ce540be5505f9dd67872ecdcf5a378bddbb + 08a4893fb4cc059ddf4407e5989a21cd47efc4cbb49248b92638d39a5833f7a61c22d38a3c63a744417342f2a1cfe42615202bc19f4aa10c31e6efc3e757fa7c + 610cca4845f8f7a8e4a5401a5247677d953d60ba9d936fde6d796f59ce545c103a229ff15c5511041fa7b6883ed622b5a0576f92bee9b668982bda191a748f12 + 5228910ca879655c32ccd6e87ebcaceaff34f370517f6f4dc02f9d34a724d0243a0a4512549bab3f6c9da296c527e73f30274f57fb35187aa76475166137e9f4 + be389439dff009413c5bac5bc2a9b3ec98aafb9ed5be2c1429d8a528f9dcf9906f33f2f695d70f84e9940312a7e06c90bc9f8071ecb2bdd697bd7d6e7d69cc31 + 4d0fa955007c5ed6b3ab45da487bc569e0ee7e50d270ead3dea69e8e98b4f8fc105dc1e5876c2c1d35c1f5be97a48f013af3893214ecd1ac75f8c50d6db12446 + 4b2cb88b781c320b1230d65b41dcfbdb7120e2fc3acb30e679f7c143cacc293e07bf5d4e1c32910e9dd5952b17a8fb24d312a12553e7d7b99636c40d26d004ea + 2ea6935fb9b9f24f901f34f6ad9982c8f523247992244b2f2cbc82a4558e73e9a401a6ceaa0b7d49b1b96c52ff145c1698d8e032bc5ecd81c313c7fc5d299224 + d73c522a334c79ec68f5d3609d04585c0796d257435c9ae2ac19c5bca57c153b8fc45c045ab3fb3c26b2110eb9e1fd169edd6c67d6762a30b13b7bbe8bc00d79 + 709f86b5bae1a2d20ea78a35b84c4b60825090769bb0797c4958362d4c593e796a651801f3f52e2e8eb74f541945ad216f4f91ed633ed0d714fa4b13c88ab11f + 0d6b27fcb5d9bf936215a4736877a605dd7279c9c3e4a30dd359acb373cc8413130855393e00e44f2465da980c5e18003f8b9c383e4fe24550234b06830e92e4 + aec647729bff73a8f4a645d5a058ac65d106346023535197c13042e832f40f3e7c716b6c0f5ffc5071efe8a70138db5cf1edd36ab871d2b4d62729c151485d17 + 66fff3d844cf19dd606c87b21d61ca5b708693177e2e07b7496443b046c689db3670796f9979eb8e1705562f7912c9b0b55e588e5487184af88bbb4576db1dd6 + 02edefb82f8c80050bea8c34244b9475c56ee27331afa3660cb1c287b5e458bc497803fb0551f349490f8306a9484714d3e37202b65bae69b6193db3a338f39b + 374015d62bd5e739438bd4d6946991448b545719be2b577e70efd1bae44d80ae05f164b234ba7dbc9908645d8d09882b51bd4576e2b787a1738e1da1c8da37c7 + b7a9f867c1fa8d6867f23bdbc3cce2bc5de5524ed62197af58c64de79ada49daad7395c54795d588fdf48ea390c065c2648aa5f745072b58b16d8381e0c2c4fb + 02113a07a1b326b961f3ffddbe8e5be7504d6d653ae5a9e1a0391c2f6f047cd59e783e257db717b6d31191b6c0516db61b3e729d9710b594d6cdd0a9cc396365 + 86840368f447eeb82ada6194ccab18cba8a293fa4803303041bff22d8639bba0099a1bdf93dd7b027ab91c675a42c02ccf6ba299986f1aa5f62b3fc5a6cc8745 + 16c08ab4088c44b3b09dd021c19669156da99e7a578bb91543ccd9a4d60a3a5d66d57b75f23b4c26c40924a2c52f9a73d02b61db1aae039701c3b881575265f3 + e3c33cffe8e88bde6b6a1108de40809b2dc6ee8d9b861fed38d98389410d65856f84b8e225695283e8d53570147a2d12bfc9875a527b9e2f383249091712f5ea + 29dfcc4f4eb455eab8eee90ee1fda258fb24b0679d73ac6b63085e48795c7218ac941e73c9dd691105e63907f8b5cd6aa067628d45b6d4a8c19e829f1ef28ca2 + ced0dbdfd1f5685811c8984b8eaab67698eeec134d34852b8e64f62e426ddac5c0c2d6130ec14d4c0d374d5333b5376aefa256befc98bee77daff64fd7d0ecaf + c49242218db2c982182ead1ce91b72ad8e315a1dff8a327185cb2718eb27cd5381b9801e9bd287cf82a191d5618e434491246404a9801da95d37e0702730771e + 44fdd428b0eaab6a6c879c940fd499d49a184b6e11fe73eb23534a7f6e069d7535c43b6364e17398e75b8fa420edb50efb2cd9e6321759171ad944d37c4297be + 2f02da6626bb6f2b39c33ba761048a3219b11a7a1e0012e28e6b99eda194a12e467443716a5f3e3590d764cf96912d782fa2013f18c15df0694d58c380dfb665 + 9223386933582dbff20c40f84f6a7c60d86f3015de7a66f2119a616dc8a1ea1f148d7b726167dac72fed4742ff0d9ebe02660e99d22fceb59d557e718c35b3c9 + 1af17d2d25db68d4876f25e4d624d28f7ee83517fd3e8aa1e404b4eba82b8e6c9fe25ecf62593c737260ea969089c9be9ac111cdca45a8f32a10d88c4d76dd01 + e8735e914db6707014a9e23cbde156862f113f9d6c83f1480b34235830e73dc1efddfba3c8eb692d3ec081de7c07bda6d467203498b4301a22c440a71094df4c + ac7ed3ecea34d585d1d66e00f84d946f676aadc5987596f324a51f72a55253c665577ff88f7d197640d33c721331e60b721c386018e87cdbc287461f74b5e3aa + ca8bf664228145b559e7032f225f585cc8cd606c53d81dee79f748e6197a42c58f0587a1d21ba282cccd4836b336d92efabfde8e523f4ef3298d40a0bb7c95cb + f40dcdbc6fd7bddac1a216af6796fae520a799863d559f57aecc2c6fae880ff8cdb6630ffc6672cd54c270b1a2e246d98b352437a752910199938b4a0ba38c0a + 92e4a6140e0079dfd6f733a203e802174958829b40d46c5117c46fa9d278ae2acb5a51103486557b7ca09dcc3c432150b98963c8f4522d4cf75ecba7ae481eca + 9a8f364eaa8fbaa241867bd85677b0258d39cefadbdce9bc09a34420392dfa7f1feceb56558a11666b7e9136dc420881c21705acc793bb98d2dc7858902c3e1c + edef438984bda3cfb48a5bb33e00613465c9eb51308eb2b77809d09d40fc9fd606e1f41fb5acb6381991e51d42d789efd278e3c7dfdeae03418700c4501af1b5 + a21dc8a5c0bf621be61a612fad44d02bdda488e3eea528f54cf799430926d3ce3caff36b7a7ce5ae622ab4c8b5a1d93420ae01b646feeb41995dd0e6f6f1cda1 + 2f0d5222de35c08bc9197e8c89b1b0052164284207e390abaf436744badb77a3afa0832342649bcb4b94372a60f6deffae97fc486e4a84916e4a4630dd22b7e7 + 10b76868670c74b8a761189c410f1c174dd85b4f76b00aa7bdd497959dc4f584f2f6c5736cfb17f08ed8e6e27db6f82a206badc58653ecc7f765e2a27771651a + f4d1de91f617b2b72eb251b700bc54cf101d31a6b7c28cbf8f69f5f409e0e9b25b1aa1e1e349002a5af899edf28c6d36a16000de41f57f2a1fddd2d1ae45fb91 + bf6a9f5e7360d9b79f03ce79734d9814167d96443c59eec479deba6fb7cb78beff323873c166ec99f1256d3768c1740b37d1cb5c531a2eadbe5eb9988925ad4e + e7157b16a6f5524ce1637d5f7e0136949f0cbcb4eec53264863a91388750a202548df27abf5b64a63697c12161e832fc3f1e8ffb4d06b05e22e131d06bb2c579 + 66fd746eb5e2b0ebd05d3d0c645498d149217927ef058da118e558a22bdc1f5e8e3edcbb0dba92dfc2a6443eea25a1ca35a41d1535172dd00d140de9f9976944 + 738a5529a9b6a386f8fa49f2a08b17d63589eee3d3384644988f384dfa758963afc93b019fe0811997464531b23f7351b22ff39b9087e5c173b324174c70f5c5 + f3e1825879a37d561aa9c460b4b405225048f20b782a14ead6287eb62cd273ea72aee046d50e34c3af43e59bcf9449e801399a41fd8f42dde05c48c419971ff3 + e26985e1443beb7f403a0cd68b1b751cfbfc66a4e467d50f69a1aaa39179b71291a421ae28d7e13c5d38a9606db63adcb256e1ff9529cdd53cb25d0bf2826384 + 27cc10d779d20d526b98bcb3cf6b7e355735f29ba2ab67579919989067a816e7aa6668f9f995f04e7da3f0e14f0e3a7f9bcb74e4e321cfddd83c947a7ba8c882 + 81462218ca3e24ad703435fbc762041dc3060719d4846d1264a678ef4bfb29dc88ba6fd80da6352942dd24a8c466f731b5fb42bea04b3a07af29f2bdd1e0a265 + 2e3a4b33fcdc65f6b9482ee0f8dd4baa7b3323634725df3414ab2273dcc71e0b004d0a5fd24019873d23af39687354f60d1cb2255dd74307eec4f356ed84ec91 + 187871334a815b1084ad3ff0ba328ded8573a987878cb22d8546e181fa9ebc683288a352389ce4c7fd715537c400f877488570e3c3a6e7232b77ca94aeec5546 + cf33b1f63013d1fabba6868178f77075340fa946a03f0d936ec1fdfdfdfb58a4c59d21e2b8a8a0663306d05747220e951f17d5526ef6acd872e70c7c4084c18e + c18524862e76289187aa5e541ec11b3632ecf410c247d99aa6e29f73b5038b32e96ac8a6b8ac45671220ecff5c1d7837570dac4e65337e8e18b0e0938b6b8dfb + 23ac9a28661a9befff8410b15cd1a1d935ab0325f0f7c96ac363e8561c0142d9fb912bcaf75b6983fb3c705160ec2eaa44c3f19bd950bcd25c4d9e94f3f707ba + bacabefa1703d0444087e86aff908ac4768a4c07ebdc51fc0f80b417850001bf90561473f316a1d2de6e4a68c92f59876218bf29fcacd84da793a90dcfeb5482 + 7edbfde7bd76cf23c68520b0fef9de128c5dee9a19d3adc291aea0695754470368dade75092a5d476a4ca18ce907efac0f3d567b62b1b65c6711f013c5ecb6de + 04b2e1f09af6983905aaf8538333e4f42d4df856e2c9e6aa14c728ee2d6336f567734129e9a5aca1818f778d3ac81a2d5f0e0129024a77644f9a4318bc59e8a7 + 9d24a29788491eca45b893210e53eecb5eef326e8c9e9d0bc72a29dc2e9a9a369ee910759bf49f50d8d592a6bcf667ab325aa6523628e4358b1543cad5b81c5b + 9f2c1975b5bfbad8348de2d64f453828b6e38747ecd172a902093cbad8846d96b0d43368b28437ec96516517e8091e60564dd9e264218a4e9e6add83672692b4 + 32d9b993a5453fcb2ee64d853fdde16ddcb1589a393e56dec3de03481bc19f67e2c73d76bcbfea26864d90dd127091aaa8e278f114b8a0026ee59662a3fce83d + fdf828e81d039bb35d497aff8a1770beafb91f3a9c53ecbbb6fda672b989648731640a876f7f134fb0956c65129b1923712d363d42f08a54288f0c75bfc57dff +) diff --git a/~emulatorman/icecat-l10n/region.properties b/~emulatorman/icecat-l10n/region.properties new file mode 100644 index 000000000..4399d8db7 --- /dev/null +++ b/~emulatorman/icecat-l10n/region.properties @@ -0,0 +1,32 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# Default search engine +browser.search.defaultenginename=DuckDuckGo HTML + +# Search engine order (order displayed in the search bar dropdown)s +browser.search.order.1=DuckDuckGo HTML +browser.search.order.2=DuckDuckGo Lite +browser.search.order.3=Seeks Search + +# URL for site-specific search engines +# TRANSLATION NOTE: {moz:domain} and {searchTerms} are placeholders for the site +# to be searched and the user's search query. Place them in the appropriate location +# for your locale's URL but do not translate them. +browser.search.siteSearchURL=https://duckduckgo.com/html/?q=site%3A{moz:domain}+{searchTerms} + +# increment this number when anything gets changed in the list below. This will +# cause Firefox to re-read these prefs and inject any new handlers into the +# profile database. Note that "new" is defined as "has a different URL"; this +# means that it's not possible to update the name of existing handler, so +# don't make any spelling errors here. +gecko.handlerService.defaultHandlersVersion=3 + +# The default set of protocol handlers for irc: +gecko.handlerService.schemes.irc.0.name=Freenode +gecko.handlerService.schemes.irc.0.uriTemplate=https://webchat.freenode.net/?channels=%s + +# The default set of protocol handlers for ircs: +gecko.handlerService.schemes.ircs.0.name=Freenode +gecko.handlerService.schemes.ircs.0.uriTemplate=https://webchat.freenode.net/?channels=%s diff --git a/~emulatorman/icecat/PKGBUILD b/~emulatorman/icecat/PKGBUILD new file mode 100644 index 000000000..5010b4298 --- /dev/null +++ b/~emulatorman/icecat/PKGBUILD @@ -0,0 +1,165 @@ +# Contributor (ConnochaetOS): Henry Jensen <hjensen@connochaetos.org> +# Contributor (Parabola): Luke Shumaker <lukeshu@sbcglobal.net> +# Contributor: Figue <ffigue at gmail> +# Contributor (Parabola): fauno <fauno@kiwwwi.com.ar> +# Contributor (Parabola): vando <facundo@esdebian.org> +# Contributor (Parabola): André Silva <emulatorman@lavabit.com> +# Maintainer (Parabola): Márcio Silva <coadde@lavabit.com> +# Contributor (Arch): Jakub Schmidtke <sjakub@gmail.com> +# Thank you very much to the older contributors: +# Contributor: evr <evanroman at gmail> +# Contributor: Muhammad 'MJ' Jassim <UnbreakableMJ@gmail.com> + +# If you are updating this package, don't forget to update the version number in +# the value for 'browser.dictionaries.download.url' in 'libre.patch' + +_pgo=false +pkgname=icecat +pkgver=17.0.1 +pkgrel=2 +pkgdesc='The GNUzilla web browser, based on Mozilla Firefox. SafeBrowsing and other Google services disabled!' +arch=(i686 x86_64 mips64el) +license=(GPL2 MPL LGPL) +depends=( + alsa-lib + dbus-glib + desktop-file-utils + gtk2 + hicolor-icon-theme + hunspell + libevent + libnotify + libvpx + libxt + mime-types + mozilla-common + mozilla-searchplugins + 'nss>=3.13.3' + sqlite3 + startup-notification +) +makedepends=( + autoconf2.13 + diffutils + imagemagick + libidl2 + librsvg + libxslt + mesa + pkg-config + python2 + unzip + wireless_tools + zip +) +optdepends=( + 'wireless_tools: Location detection via available WiFi networks' +) +if $_pgo; then + makedepends+=(xorg-server-xvfb) + options=(!ccache) +fi +options=(!emptydirs) +url=http://www.gnu.org/software/gnuzilla/ +install=$pkgname.install +source=( + ftp://ftp.gnu.org/gnu/gnuzilla/${pkgver::4}/$pkgname-$pkgver.tar.gz + mozconfig + mozconfig.pgo + xulrunner-copy-stub.patch + libre.patch + $pkgname.desktop + $pkgname-safe.desktop + $pkgname-install-dir.patch + vendor.js + #cairo.patch +) +md5sums=( + c88a29aa92fc41a07e777a0e63ac5f7e + a22327391a1995703436ed42fe703d3f + ac29b01c189f20abae2f3eef1618ffc0 + 3009b176cc5f9b1e416b1bf7c45b064b + f4cffe48e84283026da634424f4bbee6 + e81ad01dbc16ba28bf92ba4b7c309ca7 + d93fe402b87cd000a869e1fd6badc6c9 + 64826fcf48816b13090042eefddbaa58 + 0d053487907de4376d67d8f499c5502b + #c8552d030494443218d88792f4dbbd0f +) + +build() { + mv $pkgname-$pkgver $srcdir/gnuzilla-build + cd $srcdir/gnuzilla-build + + cp $srcdir/mozconfig .mozconfig # Load our build config, disable SafeSearch + if $_pgo; then + cat $srcdir/mozconfig.pgo >> .mozconfig + fi + patch -Np1 -i $srcdir/$pkgname-install-dir.patch # install to /usr/lib/$pkgname + patch -Np1 -i $srcdir/xulrunner-copy-stub.patch # small fix + patch -Np1 -i $srcdir/libre.patch # Remove Google+Mozilla stuff + #patch -Np1 -i $srcdir/cairo.patch # fix cairo + + # Fix for use nspr, sqlite and nss external + sed -i 's/\(MOZ_PKG_FATAL_WARNINGS =\).*/\1 0/' \ + browser/installer/Makefile.in + + # Fix PRE_RELEASE_SUFFIX + sed -i '/^PRE_RELEASE_SUFFIX := ""/s/ ""//' \ + browser/base/Makefile.in + + # This is a bug, we should fix it. + if [ $CARCH = mips64el ]; then + # Fix MIPS N32 support. + sed -i 's/defined(_ABIO32)/(defined(_ABIO32) || defined(_ABIN32))/' \ + js/src/assembler/wtf/Platform.h + # Disable JIT. + sed -ri 's/#define ENABLE_(JIT|ASSEMBLER) 1/#define ENABLE_\1 0/' \ + js/src/assembler/wtf/Platform.h + sed -ri 's/ENABLE_(JIT|ASSEMBLER)=1/ENABLE_\1=0/' js/src/Makefile.in + echo 'ac_add_options --disable-methodjit' >> .mozconfig + echo 'ac_add_options --disable-tracejit' >> .mozconfig + echo 'ac_add_options --disable-jemalloc' >> .mozconfig + fi + + chmod +x build/unix/run-icecat.sh # fix bug for bad file permition + export LDFLAGS="$LDFLAGS -Wl,-rpath,/usr/lib/$pkgname" + export PYTHON=/usr/bin/python2 + + if $_pgo; then + LD_PRELOAD="" /usr/bin/Xvfb -nolisten tcp -extension GLX -screen 0 1280x1024x24 :99 & + LD_PRELOAD="" DISPLAY=:99 make -j1 -f client.mk profiledbuild MOZ_MAKE_FLAGS=$MAKEFLAGS + kill $! || true + else + LD_PRELOAD="" make -j1 -f client.mk build MOZ_MAKE_FLAGS=$MAKEFLAGS + fi +} + +package() { + cd $srcdir/gnuzilla-build + make -j1 -f client.mk DESTDIR=$pkgdir install + + install -Dm644 $srcdir/vendor.js $pkgdir/usr/lib/$pkgname/defaults/pref + + brandingdir=browser/branding/unofficial + icondir=$pkgdir/usr/share/icons/hicolor + for i in 16x16 32x32 48x48; do + install -Dm644 $brandingdir/default${i/x*/}.png $icondir/$i/apps/$pkgname.png + done + + for d in $pkgname $pkgname-safe; do + install -Dm644 $srcdir/$d.desktop $pkgdir/usr/share/applications/$d.desktop + done + + rm -rf $pkgdir/usr/lib/$pkgname/{dictionaries,hyphenation,searchplugins,plugins} + ln -sf /usr/share/hunspell $pkgdir/usr/lib/$pkgname/dictionaries + ln -sf /usr/share/hyphen $pkgdir/usr/lib/$pkgname/hyphenation + ln -sf /usr/lib/mozilla/plugins $pkgdir/usr/lib/$pkgname/plugins + ln -sf /usr/lib/mozilla/searchplugins $pkgdir/usr/lib/$pkgname/searchplugins + + # We don't want the development stuff + rm -rf $pkgdir/usr/{include,lib/$pkgname-devel,share/idl} + + # Workaround for now: https://bugzilla.mozilla.org/show_bug.cgi?id=658850 + ln -sf $pkgname $pkgdir/usr/lib/$pkgname/$pkgname-bin +} diff --git a/~emulatorman/icecat/cairo.patch b/~emulatorman/icecat/cairo.patch new file mode 100644 index 000000000..a1fabee90 --- /dev/null +++ b/~emulatorman/icecat/cairo.patch @@ -0,0 +1,33 @@ +--- a/gfx/thebes/gfxPlatform.cpp ++++ b/gfx/thebes/gfxPlatform.cpp +@@ -459,11 +459,9 @@ void SourceBufferDestroy(void *srcBuffer) + static_cast<SourceSurface*>(srcBuffer)->Release(); + } + +-void SourceSnapshotDetached(cairo_surface_t *nullSurf) ++void SourceSnapshotDetached(void *nullSurf) + { +- gfxImageSurface* origSurf = +- static_cast<gfxImageSurface*>(cairo_surface_get_user_data(nullSurf, &kSourceSurface)); +- ++ gfxImageSurface *origSurf = static_cast<gfxImageSurface*>(nullSurf); + origSurf->SetData(&kSourceSurface, NULL, NULL); + } + +@@ -535,14 +533,8 @@ gfxPlatform::GetSourceSurfaceForSurface(DrawTarget *aTarget, gfxASurface *aSurfa + imgSurface->Stride(), + format); + +- cairo_surface_t *nullSurf = +- cairo_null_surface_create(CAIRO_CONTENT_COLOR_ALPHA); +- cairo_surface_set_user_data(nullSurf, +- &kSourceSurface, +- imgSurface, +- NULL); +- cairo_surface_attach_snapshot(imgSurface->CairoSurface(), nullSurf, SourceSnapshotDetached); +- cairo_surface_destroy(nullSurf); ++ cairo_surface_set_mime_data(imgSurface->CairoSurface(), "mozilla/magic", ++ (const unsigned char *) "data", 4, SourceSnapshotDetached, imgSurface.get()); + } + + srcBuffer->AddRef(); diff --git a/~emulatorman/icecat/gcc47.patch b/~emulatorman/icecat/gcc47.patch new file mode 100644 index 000000000..829d59510 --- /dev/null +++ b/~emulatorman/icecat/gcc47.patch @@ -0,0 +1,75 @@ + +# HG changeset patch +# User Martin Stránský <stransky@redhat.com> +# Date 1328886461 -3600 +# Node ID 87a5ed480992788832387ba91a77c69fbe9fe349 +# Parent 67017dd3b7f6650e6bcd5b6f545e0309e8de7049 +Bug 725655 - gcc 4.7 build failures (missing headers). r=benjamin + +diff --git a/ipc/chromium/src/base/file_util_linux.cc b/ipc/chromium/src/base/file_util_linux.cc +--- a/ipc/chromium/src/base/file_util_linux.cc ++++ b/ipc/chromium/src/base/file_util_linux.cc +@@ -1,15 +1,18 @@ + // Copyright (c) 2006-2008 The Chromium Authors. All rights reserved. + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + + #include "base/file_util.h" + + #include <fcntl.h> ++#if defined(ANDROID) || defined(OS_POSIX) ++#include <unistd.h> ++#endif + + #include <string> + #include <vector> + + #include "base/eintr_wrapper.h" + #include "base/file_path.h" + #include "base/string_util.h" + +diff --git a/ipc/chromium/src/base/message_pump_libevent.cc b/ipc/chromium/src/base/message_pump_libevent.cc +--- a/ipc/chromium/src/base/message_pump_libevent.cc ++++ b/ipc/chromium/src/base/message_pump_libevent.cc +@@ -1,16 +1,19 @@ + // Copyright (c) 2008 The Chromium Authors. All rights reserved. + // Use of this source code is governed by a BSD-style license that can be + // found in the LICENSE file. + + #include "base/message_pump_libevent.h" + + #include <errno.h> + #include <fcntl.h> ++#if defined(ANDROID) || defined(OS_POSIX) ++#include <unistd.h> ++#endif + + #include "eintr_wrapper.h" + #include "base/logging.h" + #include "base/scoped_nsautorelease_pool.h" + #include "base/scoped_ptr.h" + #include "base/time.h" + #include "third_party/libevent/event.h" + +diff --git a/ipc/chromium/src/base/time_posix.cc b/ipc/chromium/src/base/time_posix.cc +--- a/ipc/chromium/src/base/time_posix.cc ++++ b/ipc/chromium/src/base/time_posix.cc +@@ -8,16 +8,19 @@ + #include <mach/mach_time.h> + #endif + #include <sys/time.h> + #ifdef ANDROID + #include <time64.h> + #else + #include <time.h> + #endif ++#if defined(ANDROID) || defined(OS_POSIX) ++#include <unistd.h> ++#endif + + #include <limits> + + #include "base/basictypes.h" + #include "base/logging.h" + + namespace base { diff --git a/~emulatorman/icecat/icecat-install-dir.patch b/~emulatorman/icecat/icecat-install-dir.patch new file mode 100644 index 000000000..7a72b9c9d --- /dev/null +++ b/~emulatorman/icecat/icecat-install-dir.patch @@ -0,0 +1,30 @@ +diff -Nur a/config/baseconfig.mk b/config/baseconfig.mk +--- a/config/baseconfig.mk ++++ b/config/baseconfig.mk +@@ -1,9 +1,9 @@ + INCLUDED_AUTOCONF_MK = 1 + +-includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) +-idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) +-installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) +-sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION) ++includedir := $(includedir)/$(MOZ_APP_NAME) ++idldir = $(datadir)/idl/$(MOZ_APP_NAME) ++installdir = $(libdir)/$(MOZ_APP_NAME) ++sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel + DIST = $(DEPTH)/dist + + # We do magic with OBJ_SUFFIX in config.mk, the following ensures we don't +diff -Nur a/js/src/config/baseconfig.mk b/js/src/config/baseconfig.mk +--- a/js/src/config/baseconfig.mk ++++ b/js/src/config/baseconfig.mk +@@ -1,7 +1,7 @@ + INCLUDED_AUTOCONF_MK = 1 + +-installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) +-sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION) ++installdir = $(libdir)/$(MOZ_APP_NAME) ++sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel + + ifneq (,$(filter /%,$(TOP_DIST))) + DIST = $(TOP_DIST) diff --git a/~emulatorman/icecat/icecat-safe.desktop b/~emulatorman/icecat/icecat-safe.desktop new file mode 100644 index 000000000..87acc970c --- /dev/null +++ b/~emulatorman/icecat/icecat-safe.desktop @@ -0,0 +1,78 @@ +[Desktop Entry] +Encoding=UTF-8 +Exec=/usr/bin/icecat -safe-mode %u +Icon=icecat +Type=Application +Terminal=false +MultipleArgs=false +Name=GNU IceCat - Safe Mode +GenericName=Web Browser +GenericName[af]=Web Blaaier +GenericName[ar]=متصفح ويب +GenericName[az]=Veb Səyyahı +GenericName[bg]=Браузър +GenericName[bn]=ওয়েব ব্রাউজার +GenericName[br]=Furcher ar Gwiad +GenericName[bs]=WWW Preglednik +GenericName[ca]=Fullejador web +GenericName[cs]=WWW prohlížeč +GenericName[cy]=Porydd Gwe +GenericName[da]=Browser +GenericName[de]=Web-Browser +GenericName[el]=Περιηγητής Ιστού +GenericName[eo]=TTT-legilo +GenericName[es]=Navegador web +GenericName[et]=Veebilehitseja +GenericName[eu]=Web arakatzailea +GenericName[fa]=مرورگر وب +GenericName[fi]=WWW-selain +GenericName[fo]=Alnótsfar +GenericName[fr]=Navigateur web +GenericName[gl]=Navegador Web +GenericName[he]=דפדפן אינטרנט +GenericName[hi]=वेब ब्राउज़र +GenericName[hr]=Web preglednik +GenericName[hu]=Webböngésző +GenericName[is]=Vafri +GenericName[it]=Browser Web +GenericName[ja]=ウェブブラウザ +GenericName[ko]=웹 브라우저 +GenericName[lo]=ເວັບບຣາວເຊີ +GenericName[lt]=Žiniatinklio naršyklė +GenericName[lv]=Web Pārlūks +GenericName[mk]=Прелистувач на Интернет +GenericName[mn]=Веб-Хөтөч +GenericName[nb]=Nettleser +GenericName[nds]=Nettkieker +GenericName[nl]=Webbrowser +GenericName[nn]=Nettlesar +GenericName[nso]=Seinyakisi sa Web +GenericName[pa]=ਵੈਬ ਝਲਕਾਰਾ +GenericName[pl]=Przeglądarka WWW +GenericName[pt]=Navegador Web +GenericName[pt_BR]=Navegador Web +GenericName[ro]=Navigator de web +GenericName[ru]=Веб-браузер +GenericName[se]=Fierpmádatlogan +GenericName[sk]=Webový prehliadač +GenericName[sl]=Spletni brskalnik +GenericName[sr]=Веб претраживач +GenericName[sr@Latn]=Veb pretraživač +GenericName[ss]=Ibrawuza yeWeb +GenericName[sv]=Webbläsare +GenericName[ta]=வலை உலாவி +GenericName[tg]=Тафсиргари вэб +GenericName[th]=เว็บบราวเซอร์ +GenericName[tr]=Web Tarayıcı +GenericName[uk]=Навігатор Тенет +GenericName[uz]=Веб-браузер +GenericName[ven]=Buronza ya Webu +GenericName[vi]=Trình duyệt Web +GenericName[wa]=Betchteu waibe +GenericName[xh]=Umkhangeli zincwadi we Web +GenericName[zh_CN]=网页浏览器 +GenericName[zh_TW]=網頁瀏覽器 +GenericName[zu]=Umcingi we-Web +MimeType=text/html +StartupNotify=false +Categories=Application;Network; diff --git a/~emulatorman/icecat/icecat.desktop b/~emulatorman/icecat/icecat.desktop new file mode 100644 index 000000000..8a7cad93d --- /dev/null +++ b/~emulatorman/icecat/icecat.desktop @@ -0,0 +1,78 @@ +[Desktop Entry] +Encoding=UTF-8 +Exec=/usr/bin/icecat %u +Icon=icecat +Type=Application +Terminal=false +MultipleArgs=false +Name=GNU IceCat +GenericName=Web Browser +GenericName[af]=Web Blaaier +GenericName[ar]=متصفح ويب +GenericName[az]=Veb Səyyahı +GenericName[bg]=Браузър +GenericName[bn]=ওয়েব ব্রাউজার +GenericName[br]=Furcher ar Gwiad +GenericName[bs]=WWW Preglednik +GenericName[ca]=Fullejador web +GenericName[cs]=WWW prohlížeč +GenericName[cy]=Porydd Gwe +GenericName[da]=Browser +GenericName[de]=Web-Browser +GenericName[el]=Περιηγητής Ιστού +GenericName[eo]=TTT-legilo +GenericName[es]=Navegador web +GenericName[et]=Veebilehitseja +GenericName[eu]=Web arakatzailea +GenericName[fa]=مرورگر وب +GenericName[fi]=WWW-selain +GenericName[fo]=Alnótsfar +GenericName[fr]=Navigateur web +GenericName[gl]=Navegador Web +GenericName[he]=דפדפן אינטרנט +GenericName[hi]=वेब ब्राउज़र +GenericName[hr]=Web preglednik +GenericName[hu]=Webböngésző +GenericName[is]=Vafri +GenericName[it]=Browser Web +GenericName[ja]=ウェブブラウザ +GenericName[ko]=웹 브라우저 +GenericName[lo]=ເວັບບຣາວເຊີ +GenericName[lt]=Žiniatinklio naršyklė +GenericName[lv]=Web Pārlūks +GenericName[mk]=Прелистувач на Интернет +GenericName[mn]=Веб-Хөтөч +GenericName[nb]=Nettleser +GenericName[nds]=Nettkieker +GenericName[nl]=Webbrowser +GenericName[nn]=Nettlesar +GenericName[nso]=Seinyakisi sa Web +GenericName[pa]=ਵੈਬ ਝਲਕਾਰਾ +GenericName[pl]=Przeglądarka WWW +GenericName[pt]=Navegador Web +GenericName[pt_BR]=Navegador Web +GenericName[ro]=Navigator de web +GenericName[ru]=Веб-браузер +GenericName[se]=Fierpmádatlogan +GenericName[sk]=Webový prehliadač +GenericName[sl]=Spletni brskalnik +GenericName[sr]=Веб претраживач +GenericName[sr@Latn]=Veb pretraživač +GenericName[ss]=Ibrawuza yeWeb +GenericName[sv]=Webbläsare +GenericName[ta]=வலை உலாவி +GenericName[tg]=Тафсиргари вэб +GenericName[th]=เว็บบราวเซอร์ +GenericName[tr]=Web Tarayıcı +GenericName[uk]=Навігатор Тенет +GenericName[uz]=Веб-браузер +GenericName[ven]=Buronza ya Webu +GenericName[vi]=Trình duyệt Web +GenericName[wa]=Betchteu waibe +GenericName[xh]=Umkhangeli zincwadi we Web +GenericName[zh_CN]=网页浏览器 +GenericName[zh_TW]=網頁瀏覽器 +GenericName[zu]=Umcingi we-Web +MimeType=text/html +StartupNotify=false +Categories=Application;Network; diff --git a/~emulatorman/icecat/icecat.install b/~emulatorman/icecat/icecat.install new file mode 100644 index 000000000..c1fe8284a --- /dev/null +++ b/~emulatorman/icecat/icecat.install @@ -0,0 +1,13 @@ +post_install() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} + diff --git a/~emulatorman/icecat/libre.patch b/~emulatorman/icecat/libre.patch new file mode 100644 index 000000000..497b8cd10 --- /dev/null +++ b/~emulatorman/icecat/libre.patch @@ -0,0 +1,108 @@ +diff -urN a/browser/app/profile/firefox.js b/browser/app/profile/firefox.js +--- a/browser/app/profile/firefox.js ++++ b/browser/app/profile/firefox.js +@@ -1150,11 +1150,9 @@ + // (This is intentionally on the high side; see bug 746055.) + pref("image.mem.max_decoded_image_kb", 256000); + +-// Example social provider +-pref("social.manifest.facebook", "{\"origin\":\"https://www.facebook.com\",\"name\":\"Facebook Messenger\",\"workerURL\":\"https://www.facebook.com/desktop/fbdesktop2/socialfox/fbworker.js.php\",\"iconURL\":\"data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAAAX0lEQVQ4jWP4%2F%2F8%2FAyUYTFhHzjgDxP9JxGeQDSBVMxgTbUBCxer%2Fr999%2BQ8DJBuArJksA9A10s8AXIBoA0B%2BR%2FY%2FjD%2BEwoBoA1yT5v3PbdmCE8MAshhID%2FUMoDgzUYIBj0Cgi7ar4coAAAAASUVORK5CYII%3D\",\"sidebarURL\":\"https://www.facebook.com/desktop/fbdesktop2/?socialfox=true\"}"); + // Comma-separated list of nsIURI::prePaths that are allowed to activate + // built-in social functionality. +-pref("social.activation.whitelist", "https://www.facebook.com"); ++pref("social.activation.whitelist", ""); + pref("social.sidebar.open", true); + pref("social.sidebar.unload_timeout_ms", 10000); + pref("social.active", false); +diff -urN a/browser/locales/en-US/chrome/browser-region/region.properties b/browser/locales/en-US/chrome/browser-region/region.properties +--- a/browser/locales/en-US/chrome/browser-region/region.properties ++++ b/browser/locales/en-US/chrome/browser-region/region.properties +@@ -10,23 +10,11 @@ + browser.search.order.2=Google + browser.search.order.3=Yahoo + +-# This is the default set of web based feed handlers shown in the reader +-# selection UI +-browser.contentHandlers.types.0.title=Bloglines +-browser.contentHandlers.types.0.uri=http://www.bloglines.com/login?r=/sub/%s +-browser.contentHandlers.types.1.title=My Yahoo +-browser.contentHandlers.types.1.uri=http://add.my.yahoo.com/rss?url=%s +-browser.contentHandlers.types.2.title=Google +-browser.contentHandlers.types.2.uri=http://fusion.google.com/add?feedurl=%s +- +-# Keyword URL (for location bar searches) +-keyword.URL=http://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&gfns=1&q= +- + # URL for site-specific search engines + # TRANSLATION NOTE: {moz:domain} and {searchTerms} are placeholders for the site + # to be searched and the user's search query. Place them in the appropriate location + # for your locale's URL but do not translate them. +-browser.search.siteSearchURL=https://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&q=site%3A{moz:domain}+{searchTerms} ++browser.search.siteSearchURL=https://duckduckgo.com/html/?q=site%3A{moz:domain}+{searchTerms} + + # increment this number when anything gets changed in the list below. This will + # cause Firefox to re-read these prefs and inject any new handlers into the +@@ -34,3 +22,11 @@ + # means that it's not possible to update the name of existing handler, so + # don't make any spelling errors here. + gecko.handlerService.defaultHandlersVersion=3 ++ ++# The default set of protocol handlers for irc: ++gecko.handlerService.schemes.irc.0.name=Freenode ++gecko.handlerService.schemes.irc.0.uriTemplate=https://webchat.freenode.net/?channels=%s ++ ++# The default set of protocol handlers for ircs: ++gecko.handlerService.schemes.ircs.0.name=Freenode ++gecko.handlerService.schemes.ircs.0.uriTemplate=https://webchat.freenode.net/?channels=%s +diff -Nur a/dom/ipc/test.xul b/dom/ipc/test.xul +--- a/dom/ipc/test.xul ++++ b/dom/ipc/test.xul +@@ -294,6 +294,6 @@ + oncommand="document.getElementById('page').QueryInterface(Components.interfaces.nsIFrameLoaderOwner).frameLoader.delayRemoteDialogs = this.checked;"/> + </toolbar> + +- <browser type="content" src="http://www.google.com/" flex="1" id="page" remote="true"/> ++ <browser type="content" src="https://duckduckgo.com/html" flex="1" id="page" remote="true"/> + <label id="messageLog" value="" crop="center"/> + </window> +diff -Nur a/layout/ipc/test-ipcbrowser.xul b/layout/ipc/test-ipcbrowser.xul +--- a/layout/ipc/test-ipcbrowser.xul ++++ b/layout/ipc/test-ipcbrowser.xul +@@ -69,6 +69,6 @@ + label="setViewportScale"/> + </toolbar> + +- <browser type="content" src="http://www.google.com/" flex="1" id="content" ++ <browser type="content" src="https://duckduckgo.com/html" flex="1" id="content" + remote="true"/> + </window> +diff -Nur a/browser/locales/generic/profile/bookmarks.html.in b/browser/locales/generic/profile/bookmarks.html.in +--- a/browser/locales/generic/profile/bookmarks.html.in ++++ b/browser/locales/generic/profile/bookmarks.html.in +@@ -11,13 +11,20 @@ + <DT><H3 PERSONAL_TOOLBAR_FOLDER="true" ID="rdf:#$FvPhC3">@bookmarks_toolbarfolder@</H3> + <DD>@bookmarks_toolbarfolder_description@ + <DL><p> +- <DT><A HREF="http://www.mozilla.com/@AB_CD@/firefox/central/" ID="rdf:#$GvPhC3">@getting_started@</A> ++ <DT><A HREF="https://parabolagnulinux.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA%3D%3D" ID="rdf:#$GvPhC3">Parabola GNU/Linux-libre</A> + </DL><p> +- <DT><H3 ID="rdf:#$ZvPhC3">@firefox_heading@</H3> ++ <DT><H3 ID="rdf:#$YvPhC3">Parabola GNU/Linux-libre</H3> + <DL><p> +- <DT><A HREF="http://www.mozilla.com/@AB_CD@/firefox/help/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" ID="rdf:#$22iCK1">@firefox_help@</A> +- <DT><A HREF="http://www.mozilla.com/@AB_CD@/firefox/customize/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" ID="rdf:#$32iCK1">@firefox_customize@</A> +- <DT><A HREF="http://www.mozilla.com/@AB_CD@/firefox/community/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" ID="rdf:#$42iCK1">@firefox_community@</A> +- <DT><A HREF="http://www.mozilla.com/@AB_CD@/about/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" ID="rdf:#$52iCK1">@firefox_about@</A> ++ <DT><A HREF="https://parabolagnulinux.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA%3D%3D">Parabola GNU/Linux-libre</A> ++ <DT><A HREF="https://parabolagnulinux.org/packages/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA%3D%3D">Parabola GNU/Linux-libre Packages</A> ++ <DT><A HREF="https://wiki.parabolagnulinux.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA%3D%3D">Parabola GNU/Linux-libre Wiki</A> ++ <DT><A HREF="https://labs.parabola.nu/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA%3D%3D">Parabola GNU/Linux-libre Labs</A> ++ </DL><p> ++ <DT><H3 ID="rdf:#$ZvPhC3">Free Software Foundation</H3> ++ <DL><p> ++ <DT><A HREF="http://www.fsf.org/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAACXBIWXMAAAsTAAALEwEAmpwYAAADG0lEQVQoFQEQA+/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQECAAAAAAAAAAAAAAAAAAAA2qOp7tTXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP///wAAAAAAAOCyt7pUXQcSEgcQDwAAAP///wAAAAAAAAD//x9NSDqNhQEBAQQAAAAAAAAAAAAAAAAQJiQGDQ0aPToZPjoAAQEAAAAAAAAAAAABAQEpZV4AAAAAAAAAAAAA////////////////pSIv05KZ////////////////////////////////AAAAAQAAAP///6krNwAAAAAAAPHc3ggSEQcSEQAAAAAAAAAAABY3NEGelQAAAAAAAAEBAQEAAAD///+YARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGDg1g690CBgYAAAABAQEEAAAAAAAAS7etAAAAAAAAwGVtHklFIlJOAAAAAAAAAAAAAAAA+/X2BwYGAAAAAAAABAAAAAAAAB1IQwAAAAAAAAYNDBAmJB1IQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAgL//v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAQEB//7/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAECAv/+/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD////////////////cqK3qzM////////////////////////////////8AAAABAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGuLjDf9F8oBAAAAAElFTkSuQmCC">Free Software Foundation</A> ++ <DT><A HREF="http://libreplanet.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAC/v78AAAAAAPLy9ABsbakA/f3+APn5+QC6ur0A6urqAEpLbQACBLQApKW3AAULuQDMzMwAGBiDAL29vQCgocsAgnzJALu82QA+PpsAAQOvAOjo6ADZ2dkAysrKALS0zwD5+foAAgKRAAYGdQD19fUADhOjAAQJyACrnqIAxMTLAOnp7gDm5uYAzczNACgobwDg2dEAQkaeAA0RkAAUFnEA0MvQAIBzgAANDYsAk5OyAOTk5ADy8vYA1dXVAD8/cADGxsYA+fn7AAMHvgBzZnQApqauAAEGuQDExMQAAAGmAAoLmgADCMQAxMTdAAwPlwD+/v4ABg7MAF5ehADg4OAA0dHRAAAAoQAYEXAAwsLCALCxwQBnadkAAQGWAPz8/ACgoLgAbm6RANvb5wDr6+sA0dHSALe3uQADB8AAzc3NAGFhbAABAZcAOTtlALi4xwAAAJoA/Pz9AAQHnwADBJcACQl4AFVa3AChl6EAAgW2ABscdAABAq4A2NjYAAAAmwDAwMoAAQKmAAcMswDR0eQAAQSxANvX2wB4aXcAAQGpAAAAkwDW1tYAAgSpACIZZAAAAaEA+vr8AKuirAACBbcA8vLyALOztgADBZYAAACcAAACpwAEA6QAAQKnAPT09QD///8AvL3UADIpigDw8PAABwWOAK6dogBub4kAiozDANLS0gAFC8gAAgW4AP39/QAAAJ0A0NDQAMHBwQDp6ewACg2RAAIFqAAKCokA+/v7AAkOnwAAAaMA7OzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeHh4eHh4eHh4eHh4eHh4AXh4eHhlbikzZlooeHh4eAF4eHh4hX1JVFweInh4eHgBeHh4XmlAGXNGSB8VeHh4AXg8LhaGcV9zKg0wQF54eAF4K0NNOGthjXNCUwAMS3gBPC82iW+CCRN2Iz4wTwx4AW0GgCc5OU41VnSKTBoOiwEFTz8hHIF5RANdQVRfNIMBeBUhe0o9jB0Pcjdzc1E8AXgsB3AbUlkQRVtnhHNoeAF4i45wJCAlYjJbdYRfY3gBeDwmEn4XMToKZDd6WDx4AXh4VTsIfwt3FGpsfAR4eAF4eHgEEYhQAodXYDx4eHgBeHh4eHg8GC1HPHh4eHh4AQABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAA%3D">LibrePlanet</A> ++ <DT><A HREF="http://www.gnu.org/software/gnuzilla/addons.html" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAGFBMVEVFRUV+fn6mpqa/v7/Ozs7Y2Njg4OD8/Pwuhn+TAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAALEQAACxEBf2RfkQAAAAd0SU1FB9MBDhQ6Gd8s57cAAAEVSURBVBgZBcGxVtpgGADQL9gHSBzqSognzMixmcWWzB6pmRHhnyvku6/fewMAIPD3TwHmQxHs6vr+A16bphNum/vV0x429201hcPjAGBTDZGnR/Kw1U181+u4HXvOdSxjUcztz8jjg1xGVBG9XPYxt4PviKiaWLg168iXtbrq+mPT1utjNcR1U73deRnL43M2sRgj3+oYs8uL3rLphPd2QWmHbMu/VS/cnk6UdtSW657g9yBlcZ0UAkUWzPvyRaAYmfd+HT4IZtvC59ibEJxXiqJjQpBpNEufBYE0McoOAunGhRMEFIPc7h4goJigQEBxk8u7AgEpL3IEAUZfcgAByGFXQACm5+4MAuB19QMEgI8CAgDgP4rivVgoKP6ZAAAAAElFTkSuQmCC">Free addons</A> ++ <DT><A HREF="http://www.h-node.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAC7zrYAWYhNANjj1QA9fEcAEEwBAHTQkwAeVRkAPXMvALvOtwASVQEAHFcUAH/bpgB60p8AKnQmAGO1fgAjaRwALmA1AA5EAQDM2sgAN3ApAG7EjgC5zbQAVJxrAChwIgC0ya8ALmczAHXJmQBNf0EAgd6oADhwKgC8z7cA7vPtANTg0QANPwAARIhSADtyLQBzzpQAus21AEeKVQDC070AieyzALzPuAB93qEALGYvAO/z7gBEiVAAasWFAFuJTwBKil4AXotSAEuKXgAORQEAD0gBABlDFwBWpmoALGYwAGCNVQAbYBAAHGAQABBOAQCI6rIAjPG3AB1bDgAaXg4A////AGaRWwB/2qYAUYJEAEx+PwAZXAwAm7eUAD51MADN28oAJmwhACRiFAAzeTYAasaFAB9eDwBkt34Aus62AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPT09PT09PT09PT09PT09PT09PT0OIjALPRQmMkI9PT09PT09OkcHNQU+Q0oQPT09PT09PToVGDQtI0ABKz09PT09PT06JRg0Nh1ALxk9PT09PT09OiUYIS4TQC83PT09PT09PTpPSDsGG0BEAz09PT09PT06T0BGMRIsTRY9PT09PT09OgACJx8gQwooPT09PT09PToICAkJCUkkPT09PT09PT05HggETio9PT09PT09PT09Px4IERw9PT09PT09PT09PUUpCDMMPT09PT09PT09PT0NOEEEGj09PT09PT09PT09TBcPSzw9PT09PT09PT09PT09PT09PT09PT09PQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%3D">h-node</A> + </DL><p> + </DL><p> diff --git a/~emulatorman/icecat/mozconfig b/~emulatorman/icecat/mozconfig new file mode 100644 index 000000000..5df8547f7 --- /dev/null +++ b/~emulatorman/icecat/mozconfig @@ -0,0 +1,60 @@ +. $topsrcdir/browser/config/mozconfig + +ac_add_options --prefix=/usr +ac_add_options --libdir=/usr/lib + +# System libraries +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 --disable-system-cairo +ac_add_options --enable-system-pixman +ac_add_options --with-pthreads + +# Features +ac_add_options --enable-startup-notification +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 +mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/moz-objdir + +# Icecat +export MOZ_PHOENIX=1 +mk_add_options MOZ_PHOENIX=1 + +ac_add_options --disable-official-branding +ac_add_options --with-branding=browser/branding/unofficial +ac_add_options --with-distribution-id=org.gnu.gnuzilla +ac_add_options --with-user-appdir=.gnuzilla + +# ConnochaetOS +#ac_add_options --build=i586-pc-linux-gnu +#ac_add_options --host=i586-pc-linux-gnu +#export USE_SHORT_LIBNAME=1 +#mk_add_options USE_SHORT_LIBNAME=1 + +# Parabola +ac_add_options --disable-safe-browsing +export BUILD_OFFICIAL=1 +mk_add_options BUILD_OFFICIAL=1 + +# Build-generated diff --git a/~emulatorman/icecat/mozconfig.pgo b/~emulatorman/icecat/mozconfig.pgo new file mode 100644 index 000000000..b0c249ebf --- /dev/null +++ b/~emulatorman/icecat/mozconfig.pgo @@ -0,0 +1,4 @@ +# PGO +ac_add_options --enable-profile-guided-optimization +mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) $(MOZ_OBJDIR)/_profile/pgo/profileserver.py' +mk_add_options PYTHONPATH='$(OBJDIR)/_profile/pgo' diff --git a/~emulatorman/icecat/vendor.js b/~emulatorman/icecat/vendor.js new file mode 100644 index 000000000..3fbf3d7b7 --- /dev/null +++ b/~emulatorman/icecat/vendor.js @@ -0,0 +1,13 @@ +// Use LANG environment variable to choose locale +pref("intl.locale.matchOS", true); + +// Disable default browser checking. +pref("browser.shell.checkDefaultBrowser", false); + +// Don't disable our bundled extensions in the application directory +pref("extensions.autoDisableScopes", 11); +pref("extensions.shownSelectionUI", true); + +// Make sure that safebrowsing is disabled +pref("browser.safebrowsing.enabled", false); +pref("browser.safebrowsing.malware.enabled", false); diff --git a/~emulatorman/icecat/xulrunner-copy-stub.patch b/~emulatorman/icecat/xulrunner-copy-stub.patch new file mode 100644 index 000000000..8ccf127df --- /dev/null +++ b/~emulatorman/icecat/xulrunner-copy-stub.patch @@ -0,0 +1,11 @@ +--- a/browser/app/Makefile.in ++++ b/browser/app/Makefile.in +@@ -233,7 +233,7 @@ + else + ifdef LIBXUL_SDK + libs:: +- cp $(LIBXUL_DIST)/bin/$(XULRUNNER_STUB_NAME)$(BIN_SUFFIX) $(DIST)/bin/firefox$(BIN_SUFFIX) ++ cp $(LIBXUL_DIST)/bin/$(XULRUNNER_STUB_NAME)$(BIN_SUFFIX) $(DIST)/bin/icecat$(BIN_SUFFIX) + endif + endif + diff --git a/~emulatorman/icedove-l10n/PKGBUILD b/~emulatorman/icedove-l10n/PKGBUILD new file mode 100644 index 000000000..208e176ba --- /dev/null +++ b/~emulatorman/icedove-l10n/PKGBUILD @@ -0,0 +1,98 @@ +# Maintainer: Márcio Silva <coadde@lavabit.com> +# Maintainer: André Silva <emulatorman@lavabit.com> + +pkgbase=icedove-l10n +pkgver=17.0.2.1 + +_langpacks=(ar ast be bg bn-BD br ca cs da de el en-GB en-US es-AR es-ES et eu fi fr fy-NL ga-IE gd gl he hr hu hy-AM id is it ja ko lt nb-NO nl nn-NO pa-IN pl pt-BR pt-PT rm ro ru si sk sl sq sr sv-SE ta-LK tr uk vi zh-CN zh-TW) + +pkgname=($(for lang in ${_langpacks[@]} + do echo $pkgbase-$lang | tr A-Z a-z + done)) + +pkgrel=2 +pkgdesc="Language packs for Debian Icedove." +arch=('i686' 'x86_64' 'mips64el') +url="http://packages.debian.org/source/experimental/icedove" +license=('MPL' 'GPL') +depends=("icedove-libre>=$pkgver") +_url=http://repo.parabolagnulinux.org/other/$pkgbase/releases/$pkgver + +source=() +for lang in ${_langpacks[@]} +do + source+=("langpack-$lang@icedove.mozilla.org.xpi::$_url/$lang.xpi") +done + +# Don't extract anything +noextract=(${source[@]##*/}) + +_path="/usr/lib/icedove/extensions/" + +for lang in ${_langpacks[@]} +do + eval " +package_icedove-l10n-$(echo $lang | tr A-Z a-z)() { + replaces=(icedove-i18n-$(echo $lang | tr A-Z a-z)) + conflicts=(icedove-i18n-$(echo $lang | tr A-Z a-z)) + provides=(icedove-i18n-$(echo $lang | tr A-Z a-z)) + install -Dm644 \"\$srcdir/langpack-$lang@icedove.mozilla.org.xpi\" \"\$pkgdir$_path/langpack-$lang@icedove.mozilla.org.xpi\" +} +" +done + +md5sums=('2586db5adf22dd42ae272d9fdc1b230e' + '20c25addb6e2cb3ffec146c1aca81848' + 'b067b93b7f8adaf83fb8ea72d58b6581' + 'ec62aaa9fff666c7071869cf45d2d113' + '12b0e70965d7317a31d7d7b35195ee67' + 'ff10849757b8157b73707ccfe572edf4' + '89c7ea5ca764a2a4e4fbb9a720b8bd97' + 'bf5cf9401ac5b10fa65a1e37a69b134d' + 'fc97d1b7c0a209351d00e48075715986' + '9439304cb4c13fbebb24872904df98f9' + 'cc6f97d63af3686e08a8624930c7784b' + '35a840226d1b8b3a0484f6327bd43b64' + '26bf1309ee516fd183eb6afdaf3d703f' + '9885394265e334d5026430c70d83669e' + 'd39ac07026e6fea2b6e8cf9420cdae3c' + 'c3154fd92db6387052b67154eee2c6cb' + '5cd99e7414eebcc92724752d569ae18f' + '48517d7a3295cab360e102945c4724f0' + '27dfcf129c0e1e752149f1065e7683e2' + '0f24e9851e14537f2d245ff7e0aae9e1' + '839ffc54ae6593ec4d170957750bd2f2' + '1a16c57b85ab9805bb7bc9afe8438efb' + '1481869608ec96bdd2867ff3d507010b' + '4e9633d016998af326fb0d759e4c03ce' + 'bcf6664cf8667f5425bad0c4e261f5f8' + 'a625dd60dffacfff6adab1a764f57721' + '5c7b974dfc964abc0625ac770c558f08' + '4c40f6e2da31675609b8fd6473f255a3' + 'd57c319232421f43638b1af551704464' + '155143f28edcb18cc39b1ad2b36e4945' + 'f54217af7efb23324012d1bb3510a17d' + 'd55d65f2c2b813da2a005beb751d3a8d' + '23b699906a9ddae4589b2bf69bc40d66' + 'b5c87362efedd884a5dbecff2f5c5dad' + 'bec280e6279fb279143a99e348ce610f' + 'd2eed0961cf3f684b20b4eb0a1d89189' + 'ef85215d35b1e76e0058b98a9885e09d' + '821d982f3c859b90615cefc321854fee' + '03d7b26f8a60a1172b7dad3b45870b0f' + '78b1830da6f93d87a491704c03bca2f3' + 'da602151f86db7d701b1806ad0972734' + '2db261b975a9c1199ef707c96a3ee677' + 'b04a05cb6e66c2cdf9893954fd8dae49' + 'c3d3969d4f590dfad0def596d1f5521f' + '4892a9c3e0554815448d604de3857b37' + 'b6250637b5beacec9ae6223b9878a53a' + '987f9765fd6ee3d080533c071dff6492' + '07e375fb25b3bd39ada11b6e18e7a836' + '204ad4b577b3b23c664a442766e88cc1' + '40b03dd5114095fbd15c943e7da3abfc' + 'e14c994576b6824ff36b3e0e2bba6157' + '4d1674a0f9d106c5a05c422742802add' + '0c13d6c651ae5cca046d976df7576119' + 'fd6da709c6937c419d2962275e3efdf1' + '8fc2d9cb6724cd6fa010c5870d4d3122') diff --git a/~emulatorman/icedove-libre/Icedove-branding.patch b/~emulatorman/icedove-libre/Icedove-branding.patch new file mode 100644 index 000000000..751305147 --- /dev/null +++ b/~emulatorman/icedove-libre/Icedove-branding.patch @@ -0,0 +1,37 @@ +From: =?UTF-8?q?Guido=20G=C3=BCnther?= <agx@sigxcpu.org> +Date: Sat, 24 Nov 2012 11:36:16 +0100 +Subject: Icedove branding + +--- + mail/app/application.ini | 2 +- + mail/confvars.sh | 4 ++-- + 2 files changed, 3 insertions(+), 3 deletions(-) + +diff --git a/mail/app/application.ini b/mail/app/application.ini +index 8380eb7..12902c2 100644 +--- a/mail/app/application.ini ++++ b/mail/app/application.ini +@@ -4,7 +4,7 @@ + + #filter substitution + [App] +-Name=Thunderbird ++Name=Icedove + Version=@APP_VERSION@ + BuildID=@GRE_BUILDID@ + #ifdef MOZ_SOURCE_REPO +diff --git a/mail/confvars.sh b/mail/confvars.sh +index 5c34d70..395bb87 100755 +--- a/mail/confvars.sh ++++ b/mail/confvars.sh +@@ -3,8 +3,8 @@ + # License, v. 2.0. If a copy of the MPL was not distributed with this + # file, You can obtain one at http://mozilla.org/MPL/2.0/. + +-MOZ_APP_BASENAME=Thunderbird +-MOZ_APP_NAME=thunderbird ++MOZ_APP_BASENAME=Icedove ++MOZ_APP_NAME=icedove + MOZ_UPDATER=1 + MOZ_THUNDERBIRD=1 + MOZ_CHROME_FILE_FORMAT=omni diff --git a/~emulatorman/icedove-libre/PKGBUILD b/~emulatorman/icedove-libre/PKGBUILD new file mode 100644 index 000000000..5ea3ff98f --- /dev/null +++ b/~emulatorman/icedove-libre/PKGBUILD @@ -0,0 +1,101 @@ +# Maintainer : Márcio Silva <coadde@lavabit.com> +# Maintainer : André Silva <emulatorman@lavabit.com> + +# We're getting this from Debian Experimental +_debname=icedove +_debver=17.0.2 +_debrel=1 +_debrepo=http://ftp.debian.org/debian/pool/main/ +debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; } + +_pkgname=${_debname} +pkgname=${_debname}-libre +pkgver=${_debver}.${_debrel} +pkgrel=1 +pkgdesc="A libre version of Debian Icedove, the Standalone Mail/News reader based on Mozilla Thunderbird." +arch=('i586' 'i686' 'x86_64' 'mips64el') +license=('GPL2' 'MPL' 'LGPL') +url="http://packages.debian.org/source/experimental/${_pkgname}" +depends=('alsa-lib' 'dbus-glib' 'desktop-file-utils' 'gtk2' 'hicolor-icon-theme' 'hunspell' 'libevent' 'libnotify' 'libvpx' 'libxt' 'mime-types' 'mozilla-common' 'mozilla-searchplugins' 'nss' 'sqlite' 'startup-notification') +makedepends=('unzip-libre' 'zip' 'pkg-config' 'python2' 'wireless_tools' 'yasm' 'mesa' 'autoconf2.13' 'quilt') +optdepends=('libcanberra: for sound support') +replaces=('thunderbird') +conflicts=('thunderbird') +provides=('thunderbird') +install=${_pkgname}.install +source=("${_debrepo}/`debfile ${_debname}`_${_debver}.orig.tar.bz2" + "${_debrepo}/`debfile ${_debname}`_${_debver}-${_debrel}.debian.tar.gz" + mozconfig + channel-prefs.js + vendor.js + makefile.patch + branding.patch + ${_pkgname}.desktop + Icedove-branding.patch) +options=(!emptydirs) +md5sums=('3f7679bb98ae99be5adf73fd0025b00e' + '7440def324766bcc61b91185226f8824' + 'd6d58d3104a44624e0a3d227cdf1c211' + '476ec205162340fb0679f522c9d31c3b' + '4eecc4fc5aafaf0da651a09eadc90bee' + 'c4ed43e85945e180a89cce03e45ec62c' + '126b1446212396c33220936c01d9592d' + 'e785e0c267f4435ae1a9aa0b03bcacfb' + 'ea5f7a06967f561d47d7e5c35b23de6f') + +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}" + mv debian/${_pkgname}-branding "${srcdir}/${DEBIAN_BUILD}/mail/branding/${_pkgname}" + cp -a debian/app-icons/${_pkgname}big.svg debian/app-icons/${_pkgname}_icon.svg + for i in 16x16 22x22 24x24 32x32 48x48 256x256; do + install -Dm644 "debian/app-icons/${_pkgname}${i/x*/}.png" "${srcdir}/${DEBIAN_BUILD}/mail/branding/${_pkgname}/mailicon${i/x*/}.png" + done + for i in 48x48 64x64; do + install -Dm644 "debian/app-icons/${_pkgname}${i/x*/}.png" "${srcdir}/${DEBIAN_BUILD}/mail/branding/${_pkgname}/content/icon${i/x*/}.png" + done + + # This patch has a orthographic issue ("Icdove" instead of "Icedove") in MOZ_APP_BASENAME line for confvars.sh + rm -v debian/patches/debian-hacks/Icedove-branding.patch || true + + quilt push -av + + patch -Np1 -i "${srcdir}/makefile.patch" # small fix + patch -Np1 -i "${srcdir}/branding.patch" # fixing branding + patch -Np1 -i "${srcdir}/Icedove-branding.patch" # debian patch fixed version + + 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 + + install -Dm644 "${srcdir}/vendor.js" "${pkgdir}/usr/lib/${_pkgname}/defaults/preferences/vendor.js" + + # Recommend free addons + install -m644 "${srcdir}/channel-prefs.js" "${pkgdir}/usr/lib/${_pkgname}/defaults/pref/channel-prefs.js" + + for i in 16x16 22x22 24x24 32x32 48x48 64x64 128x128 256x256; do + install -Dm644 "debian/app-icons/${_pkgname}${i/x*/}.png" "${pkgdir}/usr/share/icons/hicolor/$i/apps/${_pkgname}.png" + done + install -Dm644 "debian/app-icons/${_pkgname}_icon.svg" "${pkgdir}/usr/share/icons/hicolor/scalable/apps/${_pkgname}.svg" + + install -Dm644 "${srcdir}/${_pkgname}.desktop" \ + "${pkgdir}/usr/share/applications/${_pkgname}.desktop" + + rm -rf "${pkgdir}"/usr/lib/${_pkgname}/{dictionaries,hyphenation,searchplugins} + ln -sf /usr/share/hunspell "${pkgdir}/usr/lib/${_pkgname}/dictionaries" + ln -sf /usr/share/hyphen "${pkgdir}/usr/lib/${_pkgname}/hyphenation" + ln -sf /usr/lib/mozilla/searchplugins "${pkgdir}/usr/lib/${_pkgname}/searchplugins" + # We don't want the development stuff + rm -r "${pkgdir}"/usr/{include,lib/$_pkgname-devel,share/idl} +} diff --git a/~emulatorman/icedove-libre/branding.patch b/~emulatorman/icedove-libre/branding.patch new file mode 100644 index 000000000..d84b8075a --- /dev/null +++ b/~emulatorman/icedove-libre/branding.patch @@ -0,0 +1,19 @@ +diff -Naur comm-release.orig/mail/branding/icedove/locales/en-US/brand.dtd comm-release/mail/branding/icedove/locales/en-US/brand.dtd +--- comm-release.orig/mail/branding/icedove/locales/en-US/brand.dtd 2012-10-30 16:41:16.000000000 -0200 ++++ comm-release/mail/branding/icedove/locales/en-US/brand.dtd 2012-10-31 22:35:04.203666114 -0200 +@@ -1,4 +1,4 @@ + <!ENTITY brandShortName "Icedove"> +-<!ENTITY brandFullName "Icedove Mail/News"> +-<!ENTITY vendorShortName "Icedove"> ++<!ENTITY brandFullName "Icedove"> ++<!ENTITY vendorShortName "Mozilla"> + <!ENTITY trademarkInfo.part1 " "> +diff -Naur comm-release.orig/mail/branding/icedove/locales/en-US/brand.properties comm-release/mail/branding/icedove/locales/en-US/brand.properties +--- comm-release.orig/mail/branding/icedove/locales/en-US/brand.properties 2012-10-30 10:13:50.000000000 -0200 ++++ comm-release/mail/branding/icedove/locales/en-US/brand.properties 2012-10-31 22:35:14.786423732 -0200 +@@ -1,3 +1,3 @@ + brandShortName=Icedove +-brandFullName=Icedove Mail/News +-vendorShortName=Icedove ++brandFullName=Icedove ++vendorShortName=Mozilla diff --git a/~emulatorman/icedove-libre/channel-prefs.js b/~emulatorman/icedove-libre/channel-prefs.js new file mode 100644 index 000000000..13b1ba388 --- /dev/null +++ b/~emulatorman/icedove-libre/channel-prefs.js @@ -0,0 +1,9 @@ +//@line 2 "/build/src/comm-release/mail/app/profile/channel-prefs.js" +pref("app.update.channel", "default"); + +//Recommend free addons +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.getMoreThemesURL", "http://www.gnu.org/software/gnuzilla/addons.html"); +pref("extensions.webservice.discoverURL", "http://www.gnu.org/software/gnuzilla/addons.html"); diff --git a/~emulatorman/icedove-libre/icedove.desktop b/~emulatorman/icedove-libre/icedove.desktop new file mode 100644 index 000000000..ef2cd76e9 --- /dev/null +++ b/~emulatorman/icedove-libre/icedove.desktop @@ -0,0 +1,13 @@ +[Desktop Entry] +Version=1.0 +Name=Icedove +Comment=Mail & News Reader +GenericName=Mail Client & News Reader +Exec=icedove %u +TryExec=icedove +Icon=icedove +Terminal=false +Type=Application +Categories=Network;Email; +MimeType=message/rfc822;x-scheme-handler/mailto; +StartupNotify=true diff --git a/~emulatorman/icedove-libre/icedove.install b/~emulatorman/icedove-libre/icedove.install new file mode 100644 index 000000000..4d4a283db --- /dev/null +++ b/~emulatorman/icedove-libre/icedove.install @@ -0,0 +1,12 @@ +post_install() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_upgrade() { + post_install +} + +post_remove() { + post_install +} diff --git a/~emulatorman/icedove-libre/makefile.patch b/~emulatorman/icedove-libre/makefile.patch new file mode 100644 index 000000000..8f8137bec --- /dev/null +++ b/~emulatorman/icedove-libre/makefile.patch @@ -0,0 +1,46 @@ +diff -Nur comm-release.orig/mail/branding/icedove/Makefile.in comm-release/mail/branding/icedove/Makefile.in +--- comm-release.orig/mail/branding/icedove/Makefile.in 2012-04-18 15:42:15.000000000 -0300 ++++ comm-release/mail/branding/icedove/Makefile.in 2012-05-08 04:03:25.680643202 -0300 +@@ -38,11 +38,11 @@ + # Branding Makefile for Icedove branding + + DEPTH = ../../.. +-topsrcdir = ../../../ ++topsrcdir = @top_srcdir@ + srcdir = @srcdir@ + VPATH = @srcdir@ + +-include $(topsrcdir)/config/autoconf.mk ++include $(DEPTH)/config/autoconf.mk + + DIRS = \ + locales \ +@@ -50,7 +50,7 @@ + + PREF_JS_EXPORTS += $(srcdir)/thunderbird-branding.js + +-include $(DEPTH)/config/rules.mk ++include $(topsrcdir)/config/rules.mk + + export:: + $(NSINSTALL) -D $(DIST)/branding +diff -Nur comm-release.orig/mail/branding/icedove/locales/Makefile.in comm-release/mail/branding/icedove/locales/Makefile.in +--- comm-release.orig/mail/branding/icedove/locales/Makefile.in 2012-04-18 15:42:15.000000000 -0300 ++++ comm-release/mail/branding/icedove/locales/Makefile.in 2012-05-08 05:32:57.481620942 -0300 +@@ -36,13 +36,13 @@ + # ***** END LICENSE BLOCK ***** + + DEPTH = ../../../.. +-topsrcdir = ../../../.. ++topsrcdir = @top_srcdir@ + srcdir = @srcdir@ + VPATH = @srcdir@ + relativesrcdir = mail/branding/icedove/locales + +-include $(topsrcdir)/config/autoconf.mk ++include $(DEPTH)/config/autoconf.mk + + DEFINES += -DAB_CD=$(AB_CD) -DMOZ_DISTRIBUTION_ID_UNQUOTED=$(MOZ_DISTRIBUTION_ID) + +-include $(DEPTH)/config/rules.mk ++include $(topsrcdir)/config/rules.mk diff --git a/~emulatorman/icedove-libre/mozconfig b/~emulatorman/icedove-libre/mozconfig new file mode 100644 index 000000000..58f8ce24f --- /dev/null +++ b/~emulatorman/icedove-libre/mozconfig @@ -0,0 +1,64 @@ +mk_add_options MOZ_CO_PROJECT=mail +ac_add_options --enable-application=mail + +ac_add_options --prefix=/usr +ac_add_options --libdir=/usr/lib + +# System libraries +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 --enable-system-pixman +ac_add_options --with-pthreads + +# Features +ac_add_options --enable-startup-notification +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 + +# Parabola +export BUILD_OFFICIAL=1 +mk_add_options BUILD_OFFICIAL=1 + +# Debian +export MAIL_PKG_SHARED=1 +mk_add_options MAIL_PKG_SHARED=1 +ac_add_options --disable-official-branding +ac_add_options --with-branding=mail/branding/icedove +ac_add_options --enable-extensions=default +ac_add_options --with-default-mozilla-five-home=/usr/lib/icedove +ac_add_options --disable-javaxpcom +ac_add_options --disable-elf-dynstr-gc +ac_add_options --disable-strip +ac_add_options --disable-strip-libs +ac_add_options --disable-install-strip +ac_add_options --enable-pango +ac_add_options --enable-xft +ac_add_options --enable-xinerama +ac_add_options --enable-svg +ac_add_options --enable-svg-renderer=cairo +ac_add_options --enable-canvas +ac_add_options --enable-crypto +ac_add_options --enable-shared-js +ac_add_options --enable-readline diff --git a/~emulatorman/icedove-libre/vendor.js b/~emulatorman/icedove-libre/vendor.js new file mode 100644 index 000000000..279bdc158 --- /dev/null +++ b/~emulatorman/icedove-libre/vendor.js @@ -0,0 +1,12 @@ +// Forbid application updates +lockPref("app.update.enabled", false); + +// Use LANG environment variable to choose locale +pref("intl.locale.matchOS", true); + +// Disable default mailer checking. +pref("mail.shell.checkDefaultMail", false); + +// Don't disable our bundled extensions in the application directory +pref("extensions.autoDisableScopes", 11); +pref("extensions.shownSelectionUI", true); diff --git a/~emulatorman/iceweasel-l10n/.gitignore b/~emulatorman/iceweasel-l10n/.gitignore new file mode 100644 index 000000000..3e1eb57b5 --- /dev/null +++ b/~emulatorman/iceweasel-l10n/.gitignore @@ -0,0 +1,3 @@ +PKGBUILD.list +langpacks.txt +*.diff.gz diff --git a/~emulatorman/iceweasel-l10n/Makefile b/~emulatorman/iceweasel-l10n/Makefile new file mode 100644 index 000000000..d596111f3 --- /dev/null +++ b/~emulatorman/iceweasel-l10n/Makefile @@ -0,0 +1,59 @@ +#!/usr/bin/make -f +# Use this script to update the PKGBUILD's list of langpacks. +# This script depends on: +# - coreutils +# - pacman +# - sed + +# Variables: +# This is to get it from Debian Sid +debname=iceweasel-l10n +debver=9.0+debian +debrel=1 +debrepo=http://ftp.debian.org/debian/pool/main/ + +pkgver=9.0 +pkgrel=2.1 + +# Guts: ############################################################## + +default: PHONY all +all: PHONY + $(MAKE) clean + $(MAKE) PKGBUILD +.PRECIOUS: PKGBUILD + +PKGBUILD.list: Makefile + sed \ + -e 's/@DEBNAME@/$(debname)/' \ + -e 's/@DEBVER@/$(debver)/' \ + -e 's/@DEBREL@/$(debrel)/' \ + -e 's%@DEBREPO@%$(debrepo)%' \ + -e 's/@PKGVER@/$(pkgver)/' \ + -e 's/@PKGREL@/$(pkgrel)/' \ + -e "s/@LANGPACKS@/(phony)/" \ + -e '/CUT HERE/,$$d' \ + PKGBUILD.in > $@ + echo 'package() { exit 0; }' >> $@ + makepkg -gp $@ >> $@ +langpacks.txt: PKGBUILD.list Makefile + makepkg -dp $< + ls src/*/upstream | sed 's/\.xpi//' > $@ +PKGBUILD: PKGBUILD.in langpacks.txt Makefile + sed \ + -e 's/@DEBNAME@/$(debname)/' \ + -e 's/@DEBVER@/$(debver)/' \ + -e 's/@DEBREL@/$(debrel)/' \ + -e 's%@DEBREPO@%$(debrepo)%' \ + -e 's/@PKGVER@/$(pkgver)/' \ + -e 's/@PKGREL@/$(pkgrel)/' \ + -e "s/@LANGPACKS@/(`xargs echo < langpacks.txt`)/" \ + -e '/CUT HERE/d' \ + -e '/md5sums/,$$d' \ + PKGBUILD.in > $@ + makepkg -dg >> $@ + +clean: PHONY + rm -f PKGBUILD.list langpacks.txt + +.PHONY: PHONY FORCE diff --git a/~emulatorman/iceweasel-l10n/PKGBUILD b/~emulatorman/iceweasel-l10n/PKGBUILD new file mode 100644 index 000000000..b2b937601 --- /dev/null +++ b/~emulatorman/iceweasel-l10n/PKGBUILD @@ -0,0 +1,166 @@ +# Maintainer: Luke Shumaker <lukeshu@sbcglobal.net> +# Contributor: fauno <fauno@kiwwwi.com.ar> +# Contributor: Figue <ffigue@gmail.com> +# Maintainer : Márcio Silva <coadde@lavabit.com> +# Maintainer : André Silva <emulatorman@lavabit.com> +# Based on icecat-i18n package, which is in turn based on firefox-i18n + +# When updating to a newer upstream release: +# - Edit variables in in Makefile. +# - (optionally) edit PKGBUILD.in +# - Run 'make'. It will take care of everything else for you. + +_debname=iceweasel +_debver=18.0 +_debrel=1 +_debrepo=http://ftp.debian.org/debian/pool/main/ +debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; } + +_langpacks=(ach af ak ar as ast be bg bn-BD bn-IN br bs ca cs csb cy da de el en-GB en-ZA eo es-AR es-CL es-ES es-MX et eu fa ff fi fr fy-NL ga-IE gd gl gu-IN he hi-IN hr hu hy-AM id is it ja kk km kn ko ku lg lij lt lv mai mk ml mr nb-NO nl nn-NO nso or pa-IN pl pt-BR pt-PT rm ro ru si sk sl son sq sr sv-SE ta ta-LK te th tr uk vi zh-CN zh-TW zu) + +pkgbase=iceweasel-l10n +pkgname=($(for lang in ${_langpacks[@]} + do echo $pkgbase-$lang | tr A-Z a-z + done)) +_pkgver=18.0 +pkgver=$_debver.$_debrel +pkgrel=5 + +pkgdesc="Language packs for Debian Iceweasel." +arch=('any') +url="http://www.geticeweasel.org/" +license=('MPL') +depends=("iceweasel-libre>=$pkgver") +makedepends=('unzip' 'zip') +source=('region.properties') +for lang in ${_langpacks[@]} +do + source+=("${_debrepo}/`debfile ${_debname}`-l10n-$(echo $lang | tr A-Z a-z)_${_debver}-${_debrel}_all.deb") +done + +_path="/usr/lib/iceweasel/extensions" + +build() { + cd "${srcdir}" + for f in *.deb + do + bsdtar xf $f + bsdtar xf data.tar.xz + done + + cd $srcdir/$_path + + for i in ${_langpacks[@]} + do + cd $srcdir/$_path + unzip -q langpack-$i@iceweasel.mozilla.org.xpi -d $i + rm langpack-$i@iceweasel.mozilla.org.xpi + install -Dm644 $srcdir/region.properties $i/chrome/$i/locale/browser-region + cd $i + zip -q -r $srcdir/$_path/langpack-$i@iceweasel.mozilla.org.xpi . + done + + cd $srcdir +} + +for lang in ${_langpacks[@]} +do + eval " +package_iceweasel-l10n-$(echo $lang | tr A-Z a-z)() { + replaces=(iceweasel-i18n-$(echo $lang | tr A-Z a-z) iceweasel-libre-l10n-$(echo $lang | tr A-Z a-z)) + conflicts=(iceweasel-i18n-$(echo $lang | tr A-Z a-z) iceweasel-libre-l10n-$(echo $lang | tr A-Z a-z)) + provides=(iceweasel-i18n-$(echo $lang | tr A-Z a-z) iceweasel-libre-l10n-$(echo $lang | tr A-Z a-z)) + install -Dm644 \"\$srcdir$_path/langpack-$lang@iceweasel.mozilla.org.xpi\" \"\$pkgdir$_path/langpack-$lang@iceweasel.mozilla.org.xpi\" +} +" +done + +md5sums=('428246ef3fb64103ff2cf5eaae2a92ca' + '08556c8d27a4313b5e67e655d2e1e828' + '9fa01f43db09b12cd724f94c28883a9e' + '0d1ef852709fcae1842105d675c22312' + '56247c867b52a19808ca72f7fceb349a' + 'dd670bcc609c06139671bf953f26d7b8' + 'df233884b68c8f37ff9b757b6480ae94' + 'd2aa803c6e1d1ebbaf9d4f6ad73f2aa8' + 'd0f512e8bf97110a60b16de59b15869b' + '54045555373497393ded8bccc0dc1784' + '61cb757a64268141518ed9dad4795106' + '62f338f7bcd7fb50ef2f61936c0e4990' + '97b2c6a0de5d60b4e5696973aedd3cfc' + 'd916a0b470264a9271509ed7a109e360' + '6f442a2989b814f20f4b73975bc97a5c' + '6117d8d24dad056f143feb3e061702dd' + 'c759f731a415f99a73e20090f4893184' + 'b481b08da143ff45a84d32285249fcfd' + '828f9a5b69634b39d48bfdf472a957bd' + '12d4b6779cb50777303381d35f539c4c' + '8609fd343e1e91724f50d6833d3e2f82' + '331acfbad62badfd48713d9b461efcf3' + '49216a2ea50fcd01057bd7b0d14a78e2' + 'b0738cf3f5ce546134150e082cffaf61' + '9f03cd24990c897e75594229517c1e9a' + '5667260492203f29bba1b2732ce20b77' + 'a1dd5872ab73a1a14ce3e285138445da' + '03e82d09ba4026ab10df5cfc3b78ca5f' + '1e92e7b3725cdfa94fc705ab54c7c6aa' + '35d9a0ccfa3c95a3a56f29c7a5bc4e6b' + '656dbfb6ac9efbeb4e58b5b9fc5fda03' + '29a343077a3de07ce9bb3e4d24d6a11a' + '831e09a24d4d40cb1bb45f980b7fa251' + '8488c98293d6f16caf99cf556f999611' + '92b07db5dcb8fc95ac8f5706b94d7ed5' + 'fa9ee1b85adbd15c46ca075d94e62a14' + '19383d5cb3ed6de8599118dd9f54889e' + 'fdff305ce5b154b12907fa302419548c' + '24df7d71f1a70e8225e80d15a53d3777' + '793bfd1301c4e989e2f904ad9f6b3adc' + '06d4e4423df0908254e422d207292858' + 'd53dce3f9b3a5de374dd6c10ebe3665c' + '382e5237a81fbbbaab499c5c6646b308' + '1da9f5ce8cbd3bdcc46f932b7458574f' + 'd635c40c88a7430a2103c13cdf1b58d3' + 'd1eac26314ade41883b24b91cd9e01c6' + '6e65dd6b8cb0fbd4395e548926043e70' + '97e8c9b3db047651a38f29366867c92e' + '87433742c0b21c7655988d5586667d77' + 'ac5cab1c45e0accf718cf624c8545dea' + 'd3f2ff9a817dff71fa05ffe5f3f45db8' + 'd1909b644b4495343b6d041c15683ad2' + '5c79b17dd9d0d83f749f52d489b347a7' + '433f0456e52420955a3689d2b18b7a94' + '90ee54b793a100b74f1b91ca2acb103b' + '0544d0e7e26a0c07379f0c6ca22708d8' + 'c75d55a574f525f5f08574cb01a2ee20' + 'b43589a4b08112996c756db467015eab' + '82782fd09a815441622187ed8839b0ee' + '52de8e6386f0232d13c6768092089c23' + '091e065f1723fa7fa7701ced828e24ed' + 'a036b50e5915e5b37257fa048e8d7a60' + '1037213a49539a069b9e223dacfbdc94' + '251b43c207b4fb0842a913e658f868c3' + '1aac06560c3a0957087eab1d2034eba3' + '964b3edfd3221d8e412ef695bd9a7b00' + '45a900da3f1cc4834b32b190c67c42af' + 'cad9df2808fd8f009d27142a729f21d6' + '192eaff8883db984c42ee43e3a5303f4' + '1000e395379bc6ef3b9c2c891f615e44' + '1da3d8777bc0595dea09fdd7222b55f3' + '0fbdd7294e21936ae75aca56d4d7252c' + 'af481ef78e4ffe7b4cbf892c5cb10cc2' + 'fc884a9a8203c56196993f6ed65069ca' + '1bebdd6e194cbb746f81725e317eb9b4' + '4c75d146f27aa2a70b0219954baa8965' + 'd832ceafecac23a0659f7a766f6d98de' + 'ed056fa5b30ddf55042699713c629503' + '8e698f20270de2b2fbaf9c1f09257c06' + 'e864caf42db46efbaa229f36af572ee4' + '013864da4a811e894ba1605e7f93e80e' + '69be7804b3d6a6bb5683554cbc324bed' + 'efc6a8427f080706d7d590a7b0eacadd' + '40c41e04514e3cbcae33b15a062b3811' + '164850087cdf79d57569ee9d4e1a8d2d' + '226de7be23de61db7df718ef93f7c906' + 'fb331d7fd4f1c853192111663e2672a0' + '5dd0a89e43aa0f263fc7c1d4302dbfd6' + '8e602db8304ddafad17fd8098125d37b') diff --git a/~emulatorman/iceweasel-l10n/region.properties b/~emulatorman/iceweasel-l10n/region.properties new file mode 100644 index 000000000..4399d8db7 --- /dev/null +++ b/~emulatorman/iceweasel-l10n/region.properties @@ -0,0 +1,32 @@ +# This Source Code Form is subject to the terms of the Mozilla Public +# License, v. 2.0. If a copy of the MPL was not distributed with this +# file, You can obtain one at http://mozilla.org/MPL/2.0/. + +# Default search engine +browser.search.defaultenginename=DuckDuckGo HTML + +# Search engine order (order displayed in the search bar dropdown)s +browser.search.order.1=DuckDuckGo HTML +browser.search.order.2=DuckDuckGo Lite +browser.search.order.3=Seeks Search + +# URL for site-specific search engines +# TRANSLATION NOTE: {moz:domain} and {searchTerms} are placeholders for the site +# to be searched and the user's search query. Place them in the appropriate location +# for your locale's URL but do not translate them. +browser.search.siteSearchURL=https://duckduckgo.com/html/?q=site%3A{moz:domain}+{searchTerms} + +# increment this number when anything gets changed in the list below. This will +# cause Firefox to re-read these prefs and inject any new handlers into the +# profile database. Note that "new" is defined as "has a different URL"; this +# means that it's not possible to update the name of existing handler, so +# don't make any spelling errors here. +gecko.handlerService.defaultHandlersVersion=3 + +# The default set of protocol handlers for irc: +gecko.handlerService.schemes.irc.0.name=Freenode +gecko.handlerService.schemes.irc.0.uriTemplate=https://webchat.freenode.net/?channels=%s + +# The default set of protocol handlers for ircs: +gecko.handlerService.schemes.ircs.0.name=Freenode +gecko.handlerService.schemes.ircs.0.uriTemplate=https://webchat.freenode.net/?channels=%s diff --git a/~emulatorman/iceweasel-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch b/~emulatorman/iceweasel-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch new file mode 100644 index 000000000..69fe5c072 --- /dev/null +++ b/~emulatorman/iceweasel-libre/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch @@ -0,0 +1,281 @@ +From: Mike Hommey <mh@glandium.org>
+Date: Tue, 5 Jun 2012 08:57:06 +0200
+Subject: Bug 756390 - Make the "Reset Firefox" feature more generic
+
+diff --git a/browser/components/migration/content/migration.js b/browser/components/migration/content/migration.js
+index 0e8ccf5..fa46c08 100644
+--- a/browser/components/migration/content/migration.js
++++ b/browser/components/migration/content/migration.js
+@@ -249,7 +249,7 @@ var MigrationWizard = {
+ }
+
+ var brandBundle = document.getElementById("brandBundle");
+- // These strings don't exist when not using official branding. If that's
++ // These strings may not exist when not using official branding. If that's
+ // the case, just skip this page.
+ try {
+ var pageTitle = brandBundle.getString("homePageMigrationPageTitle");
+@@ -281,8 +281,8 @@ var MigrationWizard = {
+ case "chrome":
+ source = "sourceNameChrome";
+ break;
+- case "firefox":
+- source = "sourceNameFirefox";
++ case "self":
++ source = "brand";
+ break;
+ }
+
+@@ -292,7 +292,12 @@ var MigrationWizard = {
+ var oldHomePageURL = this._migrator.sourceHomePageURL;
+
+ if (oldHomePageURL && source) {
+- var appName = MigrationUtils.getLocalizedString(source);
++ var appName;
++ if (source == "brand") {
++ appName = brandBundle.GetStringFromName("brandFullName");
++ } else {
++ appName = MigrationUtils.getLocalizedString(source);
++ }
+ var oldHomePageLabel =
+ brandBundle.getFormattedString("homePageImport", [appName]);
+ var oldHomePage = document.getElementById("oldHomePage");
+diff --git a/browser/components/migration/content/migration.xul b/browser/components/migration/content/migration.xul
+index f030756..23e37ff 100644
+--- a/browser/components/migration/content/migration.xul
++++ b/browser/components/migration/content/migration.xul
+@@ -42,7 +42,7 @@
+ #elifdef XP_UNIX
+ <radio id="chrome" label="&importFromChrome.label;" accesskey="&importFromChrome.accesskey;"/>
+ #endif
+- <radio id="firefox" label="&importFromFirefox.label;" accesskey="&importFromFirefox.accesskey;"/>
++ <radio id="self" hidden="true"/>
+ <radio id="nothing" label="&importFromNothing.label;" accesskey="&importFromNothing.accesskey;" hidden="true"/>
+ </radiogroup>
+ <label id="noSources" hidden="true">&noMigrationSources.label;</label>
+diff --git a/browser/components/migration/src/BrowserProfileMigrators.manifest b/browser/components/migration/src/BrowserProfileMigrators.manifest
+index d7fec75..d531b83 100644
+--- a/browser/components/migration/src/BrowserProfileMigrators.manifest
++++ b/browser/components/migration/src/BrowserProfileMigrators.manifest
+@@ -3,7 +3,7 @@ contract @mozilla.org/toolkit/profile-migrator;1 {6F8BB968-C14F-4D6F-9733-6C6737
+ component {4cec1de4-1671-4fc3-a53e-6c539dc77a26} ChromeProfileMigrator.js
+ contract @mozilla.org/profile/migrator;1?app=browser&type=chrome {4cec1de4-1671-4fc3-a53e-6c539dc77a26}
+ component {91185366-ba97-4438-acba-48deaca63386} FirefoxProfileMigrator.js
+-contract @mozilla.org/profile/migrator;1?app=browser&type=firefox {91185366-ba97-4438-acba-48deaca63386}
++contract @mozilla.org/profile/migrator;1?app=browser&type=self {91185366-ba97-4438-acba-48deaca63386}
+ #ifdef HAS_IE_MIGRATOR
+ component {3d2532e3-4932-4774-b7ba-968f5899d3a4} IEProfileMigrator.js
+ contract @mozilla.org/profile/migrator;1?app=browser&type=ie {3d2532e3-4932-4774-b7ba-968f5899d3a4}
+diff --git a/browser/components/migration/src/FirefoxProfileMigrator.js b/browser/components/migration/src/FirefoxProfileMigrator.js
+index a6598fe..8f83da8 100644
+--- a/browser/components/migration/src/FirefoxProfileMigrator.js
++++ b/browser/components/migration/src/FirefoxProfileMigrator.js
+@@ -88,7 +88,7 @@ Object.defineProperty(FirefoxProfileMigrator.prototype, "startupOnlyMigrator", {
+
+
+ FirefoxProfileMigrator.prototype.classDescription = "Firefox Profile Migrator";
+-FirefoxProfileMigrator.prototype.contractID = "@mozilla.org/profile/migrator;1?app=browser&type=firefox";
++FirefoxProfileMigrator.prototype.contractID = "@mozilla.org/profile/migrator;1?app=browser&type=self";
+ FirefoxProfileMigrator.prototype.classID = Components.ID("{91185366-ba97-4438-acba-48deaca63386}");
+
+ const NSGetFactory = XPCOMUtils.generateNSGetFactory([FirefoxProfileMigrator]);
+diff --git a/browser/components/migration/src/MigrationUtils.jsm b/browser/components/migration/src/MigrationUtils.jsm
+index 0669aa8..19552e3 100644
+--- a/browser/components/migration/src/MigrationUtils.jsm
++++ b/browser/components/migration/src/MigrationUtils.jsm
+@@ -403,11 +403,6 @@ let MigrationUtils = Object.freeze({
+ * @see nsIStringBundle
+ */
+ getLocalizedString: function MU_getLocalizedString(aKey, aReplacements) {
+- const OVERRIDES = {
+- "4_firefox": "4_firefox_history_and_bookmarks"
+- };
+- aKey = OVERRIDES[aKey] || aKey;
+-
+ if (aReplacements === undefined)
+ return getMigrationBundle().GetStringFromName(aKey);
+ return getMigrationBundle().formatStringFromName(
+@@ -622,6 +617,17 @@ let MigrationUtils = Object.freeze({
+ },
+
+ /**
++ * Returns whether a given migration type is supported.
++ *
++ * @param aKey Migrator key
++ * @returns whether the migrator key is supported.
++ */
++ canMigrate:
++ function MU_canMigrate(aMigratorKey) {
++ return "@mozilla.org/profile/migrator;1?app=browser&type=" + aMigratorKey in Cc;
++ },
++
++ /**
+ * Cleans up references to migrators and nsIProfileInstance instances.
+ */
+ finishMigration: function MU_finishMigration() {
+diff --git a/browser/components/migration/src/ProfileMigrator.js b/browser/components/migration/src/ProfileMigrator.js
+index 744f117..59e5a4c 100644
+--- a/browser/components/migration/src/ProfileMigrator.js
++++ b/browser/components/migration/src/ProfileMigrator.js
+@@ -12,6 +12,7 @@ function ProfileMigrator() {
+
+ ProfileMigrator.prototype = {
+ migrate: MigrationUtils.startupMigration.bind(MigrationUtils),
++ canMigrate: MigrationUtils.canMigrate.bind(MigrationUtils),
+ QueryInterface: XPCOMUtils.generateQI([Components.interfaces.nsIProfileMigrator]),
+ classDescription: "Profile Migrator",
+ contractID: "@mozilla.org/toolkit/profile-migrator;1",
+diff --git a/browser/locales/en-US/chrome/browser/migration/migration.dtd b/browser/locales/en-US/chrome/browser/migration/migration.dtd
+index 21cf405..f3c1a6b 100644
+--- a/browser/locales/en-US/chrome/browser/migration/migration.dtd
++++ b/browser/locales/en-US/chrome/browser/migration/migration.dtd
+@@ -17,8 +17,6 @@
+ <!ENTITY importFromSafari.accesskey "S">
+ <!ENTITY importFromChrome.label "Chrome">
+ <!ENTITY importFromChrome.accesskey "C">
+-<!ENTITY importFromFirefox.label "Firefox">
+-<!ENTITY importFromFirefox.accesskey "X">
+
+ <!ENTITY noMigrationSources.label "No programs that contain bookmarks, history or password data could be found.">
+
+diff --git a/browser/locales/en-US/chrome/browser/migration/migration.properties b/browser/locales/en-US/chrome/browser/migration/migration.properties
+index 260bc29..52b32cc 100644
+--- a/browser/locales/en-US/chrome/browser/migration/migration.properties
++++ b/browser/locales/en-US/chrome/browser/migration/migration.properties
+@@ -8,7 +8,6 @@ profileName_format=%S %S
+ sourceNameIE=Internet Explorer
+ sourceNameSafari=Safari
+ sourceNameChrome=Google Chrome
+-sourceNameFirefox=Mozilla Firefox
+
+ importedBookmarksFolder=From %S
+
+@@ -24,22 +23,22 @@ importedSafariReadingList=Reading List (From Safari)
+ 2_ie=Cookies
+ 2_safari=Cookies
+ 2_chrome=Cookies
+-2_firefox=Cookies
++2_self=Cookies
+
+ 4_ie=Browsing History
+ 4_safari=Browsing History
+ 4_chrome=Browsing History
+-4_firefox_history_and_bookmarks=Browsing History and Bookmarks
++4_self=Browsing History and Bookmarks
+
+ 8_ie=Saved Form History
+ 8_safari=Saved Form History
+ 8_chrome=Saved Form History
+-8_firefox=Saved Form History
++8_self=Saved Form History
+
+ 16_ie=Saved Passwords
+ 16_safari=Saved Passwords
+ 16_chrome=Saved Passwords
+-16_firefox=Saved Passwords
++16_self=Saved Passwords
+
+ 32_ie=Favorites
+ 32_safari=Bookmarks
+@@ -48,4 +47,4 @@ importedSafariReadingList=Reading List (From Safari)
+ 64_ie=Other Data
+ 64_safari=Other Data
+ 64_chrome=Other Data
+-64_firefox=Bookmarks Backups
++64_self=Bookmarks Backups
+diff --git a/toolkit/content/jar.mn b/toolkit/content/jar.mn
+index 339ffda..6999b26 100644
+--- a/toolkit/content/jar.mn
++++ b/toolkit/content/jar.mn
+@@ -38,7 +38,7 @@ toolkit.jar:
+ + content/global/mozilla.xhtml (mozilla.xhtml)
+ content/global/nsDragAndDrop.js (nsDragAndDrop.js)
+ content/global/resetProfile.css (resetProfile.css)
+-* content/global/resetProfile.js (resetProfile.js)
++ content/global/resetProfile.js (resetProfile.js)
+ content/global/resetProfile.xul (resetProfile.xul)
+ content/global/resetProfileProgress.xul (resetProfileProgress.xul)
+ content/global/treeUtils.js (treeUtils.js)
+diff --git a/toolkit/content/resetProfile.js b/toolkit/content/resetProfile.js
+index dcb4065..09c1146 100644
+--- a/toolkit/content/resetProfile.js
++++ b/toolkit/content/resetProfile.js
+@@ -36,13 +36,13 @@ function resetSupported() {
+ getService(Ci.nsIToolkitProfileService);
+ let currentProfileDir = Services.dirsvc.get("ProfD", Ci.nsIFile);
+
+-#expand const MOZ_APP_NAME = "__MOZ_APP_NAME__";
+-#expand const MOZ_BUILD_APP = "__MOZ_BUILD_APP__";
+-
+ // Reset is only supported for the default profile if the self-migrator used for reset exists.
+ try {
+- return currentProfileDir.equals(profileService.selectedProfile.rootDir) &&
+- ("@mozilla.org/profile/migrator;1?app=" + MOZ_BUILD_APP + "&type=" + MOZ_APP_NAME in Cc);
++ if (currentProfileDir.equals(profileService.selectedProfile.rootDir) &&
++ "@mozilla.org/toolkit/profile-migrator;1" in Cc) {
++ let pm = Cc["@mozilla.org/toolkit/profile-migrator;1"].createInstance(Ci.nsIProfileMigrator);
++ return ("canMigrate" in pm) && pm.canMigrate("self");
++ }
+ } catch (e) {
+ // Catch exception when there is no selected profile.
+ Cu.reportError(e);
+@@ -53,9 +53,6 @@ function resetSupported() {
+ function getMigratedData() {
+ Components.utils.import("resource:///modules/MigrationUtils.jsm");
+
+-#expand const MOZ_BUILD_APP = "__MOZ_BUILD_APP__";
+-#expand const MOZ_APP_NAME = "__MOZ_APP_NAME__";
+-
+ // From migration.properties
+ const MIGRATED_TYPES = [
+ 4, // History and Bookmarks
+@@ -68,7 +65,7 @@ function getMigratedData() {
+ let dataTypes = [];
+ for (let itemID of MIGRATED_TYPES) {
+ try {
+- let typeName = MigrationUtils.getLocalizedString(itemID + "_" + MOZ_APP_NAME);
++ let typeName = MigrationUtils.getLocalizedString(itemID + "_self");
+ dataTypes.push(typeName);
+ } catch (x) {
+ // Catch exceptions when the string for a data type doesn't exist.
+diff --git a/toolkit/profile/nsIProfileMigrator.idl b/toolkit/profile/nsIProfileMigrator.idl
+index f35c227..7062886 100644
+--- a/toolkit/profile/nsIProfileMigrator.idl
++++ b/toolkit/profile/nsIProfileMigrator.idl
+@@ -37,7 +37,7 @@ interface nsIProfileStartup : nsISupports
+ * @client Toolkit (Startup code)
+ * @obtainable service, contractid("@mozilla.org/toolkit/profile-migrator;1")
+ */
+-[scriptable, uuid(3df284a5-2258-4d46-a664-761ecdc04c22)]
++[scriptable, uuid(96d9ab66-082c-4a9e-82ad-f8c21b391342)]
+ interface nsIProfileMigrator : nsISupports
+ {
+ /**
+@@ -60,6 +60,14 @@ interface nsIProfileMigrator : nsISupports
+ * @note The startup code ignores COM exceptions thrown from this method.
+ */
+ void migrate(in nsIProfileStartup aStartup, in ACString aKey);
++
++ /**
++ * Returns whether a given migration type is supported.
++ *
++ * @param aKey Migrator key
++ * @returns whether the migrator key is supported.
++ */
++ bool canMigrate(in ACString aKey);
+ };
+
+ %{C++
+diff --git a/toolkit/xre/nsAppRunner.cpp b/toolkit/xre/nsAppRunner.cpp
+index 68a52e6..02bb30e 100644
+--- a/toolkit/xre/nsAppRunner.cpp
++++ b/toolkit/xre/nsAppRunner.cpp
+@@ -3669,7 +3669,7 @@ XREMain::XRE_mainRun()
+ if (gDoProfileReset) {
+ // Automatically migrate from the current application if we just
+ // reset the profile.
+- aKey = MOZ_APP_NAME;
++ aKey = "self";
+ }
+ pm->Migrate(&mDirProvider, aKey);
+ }
diff --git a/~emulatorman/iceweasel-libre/PKGBUILD b/~emulatorman/iceweasel-libre/PKGBUILD new file mode 100644 index 000000000..fca35cc42 --- /dev/null +++ b/~emulatorman/iceweasel-libre/PKGBUILD @@ -0,0 +1,196 @@ +# Contributor (ConnochaetOS): Henry Jensen <hjensen@connochaetos.org> +# Contributor (Parabola): Luke Shumaker <lukeshu@sbcglobal.net> +# Contributor: Figue <ffigue at gmail> +# Contributor (Parabola): fauno <fauno@kiwwwi.com.ar> +# Contributor (Parabola): vando <facundo@esdebian.org> +# Contributor (Parabola): André Silva <emulatorman@lavabit.com> +# Contributor (Parabola): Márcio Silva <coadde@lavabit.com> +# Contributor (Arch): Jakub Schmidtke <sjakub@gmail.com> +# Thank you very much to the older contributors: +# Contributor: evr <evanroman at gmail> +# Contributor: Muhammad 'MJ' Jassim <UnbreakableMJ@gmail.com> + +_pgo=false + +# We're getting this from Debian Experimental +_debname=iceweasel +_debver=18.0 +_debrel=1 +_debrepo=http://ftp.debian.org/debian/pool/main/ +debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; } + +_pkgname=iceweasel +pkgname=iceweasel-libre +pkgver=$_debver.$_debrel +pkgrel=5 + +if [ -z "$pkgname" ]; then pkgname=$_pkgname; fi +if $_pgo; then + pkgname+='-pgo' +fi + +pkgdesc="A libre version of Debian Iceweasel, the Browser based on Mozilla Firefox." +arch=('i686' 'x86_64' 'mips64el') +license=('GPL2' 'MPL' 'LGPL') +depends=('alsa-lib' 'dbus-glib' 'desktop-file-utils' 'gtk2' 'hicolor-icon-theme' 'hunspell' 'libevent' 'libnotify' 'libvpx' 'libxt' 'mime-types' 'mozilla-common' 'mozilla-searchplugins' 'nss>=3.14.1' 'sqlite3' 'startup-notification') +makedepends=( 'autoconf2.13' 'diffutils' 'imagemagick' 'libidl2' 'librsvg' 'libxslt' 'mesa' 'pkg-config' 'python2' 'quilt' 'unzip' 'zip') +[ "$CARCH" != "mips64el" ] && makedepends+=('yasm') +if $_pgo; then + makedepends+=('xorg-server-xvfb') + options=(!ccache) +fi + +optdepends=('networkmanager: Location detection via available WiFi networks') +url="http://www.geticeweasel.org/" +install=iceweasel.install +source=("$_debrepo/`debfile $_debname`_$_debver.orig.tar.bz2" + "$_debrepo/`debfile $_debname`_$_debver-$_debrel.debian.tar.gz" + mozconfig + mozconfig.pgo + libre.patch + iceweasel.desktop + iceweasel-install-dir.patch + vendor.js + shared-libs.patch + bug677092.patch + replace-urls.txt + Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch) +md5sums=('366e1e4847d7e00eba77ee5a4be0d3db' + '6a571d3a3b355c331f67d57702f4fccf' + '619e8f7c8596838a7daf2b7ce2e54cd3' + 'ac29b01c189f20abae2f3eef1618ffc0' + '1ee2d4bcacee73d671b9ffa17a02abaa' + '2823e0ecdefc16b590a9997f9228924a' + 'abf5ecb74caa857abb42bcfbb3442d9c' + '6dd547c72bb875a3101135a1c32d4783' + '52e52f840a49eb1d14be1c0065b03a93' + '23520aca140fb0dd3e1b6f21b21f591f' + 'a8fc4658d45b6bf9350023e5c3f34e56' + '65f68090d2a69b467bd2707d0c4ea3bd') + +if [ "$_pkgname" != "$pkgname" ]; then + provides+=("$_pkgname=$pkgver") + conflicts+=("$_pkgname") +fi + +build() { + # WebRTC build tries to execute "python" and expects Python 2 + # Workaround taken from chromium PKGBUILD on Archlinux + mkdir "$srcdir/python2-path" + ln -s /usr/bin/python2 "$srcdir/python2-path/python" + export PATH="$srcdir/python2-path:$PATH" + + 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,-rpath,/usr/lib/$_pkgname" + export PYTHON="/usr/bin/python2" + export DEBIAN_BUILD="mozilla-release" + mv debian "$srcdir/$DEBIAN_BUILD" + cd "$srcdir/$DEBIAN_BUILD" + + # Doesn't apply and seems unimportant + rm -v debian/patches/l10n/Place-google-and-gmail-before-yandex.patch || true + + # This patch doesn't works in some parts due that has patches for others locales languages, source code hasn't it + rm -v debian/patches/debian-hacks/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch || true + + quilt push -a + + patch -Np1 -i "$srcdir/Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch" # Adding fixed Bug-756390-Make-the-Reset-Firefox-feature-more-gener.patch + patch -Np1 -i "$srcdir/iceweasel-install-dir.patch" # install to /usr/lib/$_pkgname + patch -Np1 -i "$srcdir/shared-libs.patch" + + # Back out https://bugzilla.mozilla.org/show_bug.cgi?id=677092 + # in order to fix https://bugzilla.mozilla.org/show_bug.cgi?id=818468 + patch -Rp1 -i ../bug677092.patch + + # Replace common URLs + sed '/^#/d' ../replace-urls.txt | while read -r moz_url gnu_url; do + if [[ -n $moz_url ]]; then + printf 'liberating: %s -> %s\n' "$moz_url" "$gnu_url" + grep -Erl "${moz_url}" \ + --exclude='*.'{patch,orig,rej} \ + --exclude-dir={.pc,test,tests,testing} \ + | xargs -d '\n' --no-run-if-empty sed -ri "s<${moz_url}<${gnu_url}<g" + fi + done + + # Patch anything that's left + patch -Np1 -i "$srcdir/libre.patch" + + cp "$srcdir/mozconfig" .mozconfig # Load our build config, disable SafeSearch + + if $_pgo; then + cat "$srcdir/mozconfig.pgo" >> .mozconfig + fi + + # From js on abslibre-mips64el.git + if [ "$CARCH" = "mips64el" ]; then + msg "Force disabling JIT." + sed -ri 's/#define ENABLE_(JIT|ASSEMBLER) 1/#define ENABLE_\1 0/' \ + js/src/assembler/wtf/Platform.h + sed -ri 's/ENABLE_(JIT|ASSEMBLER)=1/ENABLE_\1=0/' js/src/Makefile.{in,ref} + + echo "ac_add_options --disable-methodjit" >> .mozconfig + echo "ac_add_options --disable-tracejit" >> .mozconfig + fi + + # Fix PRE_RELEASE_SUFFIX + sed -i '/^PRE_RELEASE_SUFFIX := ""/s/ ""//' \ + browser/base/Makefile.in + + # This is a bug, we should fix it + if [ "$CARCH" = "mips64el" ]; then + # Fix MIPS N32 support. + sed -i 's/defined(_ABIO32)/(defined(_ABIO32) || defined(_ABIN32))/' \ + js/src/assembler/wtf/Platform.h + # Disable JIT. + sed -ri 's/#define ENABLE_(JIT|ASSEMBLER) 1/#define ENABLE_\1 0/' \ + js/src/assembler/wtf/Platform.h + sed -ri 's/ENABLE_(JIT|ASSEMBLER)=1/ENABLE_\1=0/' js/src/Makefile.in + echo 'ac_add_options --disable-methodjit' >> .mozconfig + echo 'ac_add_options --disable-tracejit' >> .mozconfig + echo 'ac_add_options --disable-jemalloc' >> .mozconfig + fi + + if $_pgo; then + LD_PRELOAD="" /usr/bin/Xvfb -nolisten tcp -extension GLX -screen 0 1280x1024x24 :99 & + LD_PRELOAD="" DISPLAY=:99 make -j1 -f client.mk profiledbuild MOZ_MAKE_FLAGS="$MAKEFLAGS" + kill $! || true + else + LD_PRELOAD="" make -j1 -f client.mk build MOZ_MAKE_FLAGS="$MAKEFLAGS" + fi +} + +package() { + cd "$srcdir/$DEBIAN_BUILD" + make -j1 -f client.mk DESTDIR="$pkgdir" install + + install -Dm644 ../vendor.js "$pkgdir/usr/lib/$_pkgname/defaults/preferences/vendor.js" + + # I don't even know why we're hitting the objdir, and ConnOS didn't + _brandingdir=debian/branding + brandingdir=moz-objdir/$_brandingdir + icondir="$pkgdir/usr/share/icons/hicolor" + for i in 16x16 32x32 48x48 64x64; do + install -Dm644 "$brandingdir/default${i/x*/}.png" "$icondir/$i/apps/$_pkgname.png" + done + install -Dm644 "$brandingdir/mozicon128.png" "$icondir/128x128/apps/$_pkgname.png" + install -Dm644 "$_brandingdir/iceweasel_icon.svg" "$icondir/scalable/apps/$_pkgname.svg" + + install -d "$pkgdir/usr/share/applications" + install -m644 "$srcdir/iceweasel.desktop" "$pkgdir/usr/share/applications" + + rm -rf "$pkgdir/usr/lib/$_pkgname/"{dictionaries,hyphenation,searchplugins,plugins} + ln -sf /usr/share/hunspell "$pkgdir/usr/lib/$_pkgname/dictionaries" + ln -sf /usr/share/hyphen "$pkgdir/usr/lib/$_pkgname/hyphenation" + ln -sf /usr/lib/mozilla/plugins "$pkgdir/usr/lib/$_pkgname/plugins" + ln -sf /usr/lib/mozilla/searchplugins "$pkgdir/usr/lib/$_pkgname/searchplugins" + + # We don't want the development stuff + rm -rf "$pkgdir"/usr/{include,lib/$_pkgname-devel,share/idl} + + # Workaround for now: https://bugzilla.mozilla.org/show_bug.cgi?id=658850 + ln -sf $_pkgname "$pkgdir/usr/lib/$_pkgname/$_pkgname-bin" +} diff --git a/~emulatorman/iceweasel-libre/bug677092.patch b/~emulatorman/iceweasel-libre/bug677092.patch new file mode 100644 index 000000000..aee09b451 --- /dev/null +++ b/~emulatorman/iceweasel-libre/bug677092.patch @@ -0,0 +1,330 @@ +exporting patch: +# HG changeset patch +# User Axel Hecht <axel@pike.org> +# Date 1348128099 -7200 +# Node ID 812d0ba8317507c4026958a740960384eac1507a +# Parent 97e49e7a33266a0680e5af59289264a07e4321f8 +bug 677092, make language packs restartless, r=Unfocused +Make language packs just trigger the chrome registration hooks, and +disable picking up bootstrap.js, and declare them restartless. + +diff -r 97e49e7a3326 -r 812d0ba83175 toolkit/mozapps/extensions/XPIProvider.jsm +--- a/toolkit/mozapps/extensions/XPIProvider.jsm Wed Sep 26 13:08:50 2012 +0200 ++++ b/toolkit/mozapps/extensions/XPIProvider.jsm Thu Sep 20 10:01:39 2012 +0200 +@@ -740,8 +740,8 @@ + } + } + else { +- // spell check dictionaries never require a restart +- if (addon.type == "dictionary") ++ // spell check dictionaries and language packs never require a restart ++ if (addon.type == "dictionary" || addon.type == "locale") + addon.bootstrap = true; + + // Only extensions are allowed to provide an optionsURL, optionsType or aboutURL. For +@@ -3695,6 +3695,11 @@ + Components.manager.addBootstrappedManifestLocation(aFile); + + try { ++ // Don't call bootstrap.js methods for language packs, ++ // they only contain chrome. ++ if (aType == "locale") ++ return; ++ + // Load the scope if it hasn't already been loaded + if (!(aId in this.bootstrapScopes)) + this.loadBootstrapScope(aId, aFile, aVersion, aType); +diff -r 97e49e7a3326 -r 812d0ba83175 toolkit/mozapps/extensions/test/addons/test_langpack/chrome.manifest +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ b/toolkit/mozapps/extensions/test/addons/test_langpack/chrome.manifest Thu Sep 20 10:01:39 2012 +0200 +@@ -0,0 +1,1 @@ ++locale test-langpack x-testing locale/x-testing +diff -r 97e49e7a3326 -r 812d0ba83175 toolkit/mozapps/extensions/test/addons/test_langpack/install.rdf +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ b/toolkit/mozapps/extensions/test/addons/test_langpack/install.rdf Thu Sep 20 10:01:39 2012 +0200 +@@ -0,0 +1,23 @@ ++<?xml version="1.0"?> ++ ++<RDF xmlns="http://www.w3.org/1999/02/22-rdf-syntax-ns#" ++ xmlns:em="http://www.mozilla.org/2004/em-rdf#"> ++ ++ <Description about="urn:mozilla:install-manifest"> ++ <em:id>langpack-x-testing@tests.mozilla.org</em:id> ++ <em:type>8</em:type> ++ <em:version>1.0</em:version> ++ ++ <!-- Front End MetaData --> ++ <em:name>Language Pack x-testing</em:name> ++ ++ <em:targetApplication> ++ <Description> ++ <em:id>xpcshell@tests.mozilla.org</em:id> ++ <em:minVersion>1</em:minVersion> ++ <em:maxVersion>2</em:maxVersion> ++ </Description> ++ </em:targetApplication> ++ ++ </Description> ++</RDF> +diff -r 97e49e7a3326 -r 812d0ba83175 toolkit/mozapps/extensions/test/xpcshell/test_langpack.js +--- /dev/null Thu Jan 01 00:00:00 1970 +0000 ++++ b/toolkit/mozapps/extensions/test/xpcshell/test_langpack.js Thu Sep 20 10:01:39 2012 +0200 +@@ -0,0 +1,247 @@ ++/* Any copyright is dedicated to the Public Domain. ++ * http://creativecommons.org/publicdomain/zero/1.0/ ++ */ ++ ++// This verifies that language packs can be used without restarts. ++Components.utils.import("resource://gre/modules/Services.jsm"); ++ ++// Enable loading extensions from the user scopes ++Services.prefs.setIntPref("extensions.enabledScopes", ++ AddonManager.SCOPE_PROFILE + AddonManager.SCOPE_USER); ++ ++createAppInfo("xpcshell@tests.mozilla.org", "XPCShell", "1", "1.9.2"); ++ ++const profileDir = gProfD.clone(); ++profileDir.append("extensions"); ++const userExtDir = gProfD.clone(); ++userExtDir.append("extensions2"); ++userExtDir.append(gAppInfo.ID); ++registerDirectory("XREUSysExt", userExtDir.parent); ++ ++var chrome = Components.classes["@mozilla.org/chrome/chrome-registry;1"] ++ .getService(Components.interfaces.nsIXULChromeRegistry); ++ ++function do_check_locale_not_registered(provider) { ++ let didThrow = false; ++ try { ++ chrome.getSelectedLocale(provider); ++ } catch (e) { ++ didThrow = true; ++ } ++ do_check_true(didThrow); ++} ++ ++function run_test() { ++ do_test_pending(); ++ ++ startupManager(); ++ ++ run_test_1(); ++} ++ ++// Tests that installing doesn't require a restart ++function run_test_1() { ++ prepare_test({ }, [ ++ "onNewInstall" ++ ]); ++ ++ AddonManager.getInstallForFile(do_get_addon("test_langpack"), function(install) { ++ ensure_test_completed(); ++ ++ do_check_neq(install, null); ++ do_check_eq(install.type, "locale"); ++ do_check_eq(install.version, "1.0"); ++ do_check_eq(install.name, "Language Pack x-testing"); ++ do_check_eq(install.state, AddonManager.STATE_DOWNLOADED); ++ do_check_true(install.addon.hasResource("install.rdf")); ++ do_check_false(install.addon.hasResource("bootstrap.js")); ++ do_check_eq(install.addon.operationsRequiringRestart & ++ AddonManager.OP_NEEDS_RESTART_INSTALL, 0); ++ ++ let addon = install.addon; ++ prepare_test({ ++ "langpack-x-testing@tests.mozilla.org": [ ++ ["onInstalling", false], ++ "onInstalled" ++ ] ++ }, [ ++ "onInstallStarted", ++ "onInstallEnded", ++ ], function() { ++ do_check_true(addon.hasResource("install.rdf")); ++ check_test_1(); ++ }); ++ install.install(); ++ }); ++} ++ ++function check_test_1() { ++ AddonManager.getAllInstalls(function(installs) { ++ // There should be no active installs now since the install completed and ++ // doesn't require a restart. ++ do_check_eq(installs.length, 0); ++ ++ AddonManager.getAddonByID("langpack-x-testing@tests.mozilla.org", function(b1) { ++ do_check_neq(b1, null); ++ do_check_eq(b1.version, "1.0"); ++ do_check_false(b1.appDisabled); ++ do_check_false(b1.userDisabled); ++ do_check_true(b1.isActive); ++ // check chrome reg that language pack is registered ++ do_check_eq(chrome.getSelectedLocale("test-langpack"), "x-testing"); ++ do_check_true(b1.hasResource("install.rdf")); ++ do_check_false(b1.hasResource("bootstrap.js")); ++ ++ let dir = do_get_addon_root_uri(profileDir, "langpack-x-testing@tests.mozilla.org"); ++ ++ AddonManager.getAddonsWithOperationsByTypes(null, function(list) { ++ do_check_eq(list.length, 0); ++ ++ run_test_2(); ++ }); ++ }); ++ }); ++} ++ ++// Tests that disabling doesn't require a restart ++function run_test_2() { ++ AddonManager.getAddonByID("langpack-x-testing@tests.mozilla.org", function(b1) { ++ prepare_test({ ++ "langpack-x-testing@tests.mozilla.org": [ ++ ["onDisabling", false], ++ "onDisabled" ++ ] ++ }); ++ ++ do_check_eq(b1.operationsRequiringRestart & ++ AddonManager.OP_NEEDS_RESTART_DISABLE, 0); ++ b1.userDisabled = true; ++ ensure_test_completed(); ++ ++ do_check_neq(b1, null); ++ do_check_eq(b1.version, "1.0"); ++ do_check_false(b1.appDisabled); ++ do_check_true(b1.userDisabled); ++ do_check_false(b1.isActive); ++ // check chrome reg that language pack is not registered ++ do_check_locale_not_registered("test-langpack"); ++ ++ AddonManager.getAddonByID("langpack-x-testing@tests.mozilla.org", function(newb1) { ++ do_check_neq(newb1, null); ++ do_check_eq(newb1.version, "1.0"); ++ do_check_false(newb1.appDisabled); ++ do_check_true(newb1.userDisabled); ++ do_check_false(newb1.isActive); ++ ++ run_test_3(); ++ }); ++ }); ++} ++ ++// Test that restarting doesn't accidentally re-enable ++function run_test_3() { ++ shutdownManager(); ++ startupManager(false); ++ // check chrome reg that language pack is not registered ++ do_check_locale_not_registered("test-langpack"); ++ ++ AddonManager.getAddonByID("langpack-x-testing@tests.mozilla.org", function(b1) { ++ do_check_neq(b1, null); ++ do_check_eq(b1.version, "1.0"); ++ do_check_false(b1.appDisabled); ++ do_check_true(b1.userDisabled); ++ do_check_false(b1.isActive); ++ ++ run_test_4(); ++ }); ++} ++ ++// Tests that enabling doesn't require a restart ++function run_test_4() { ++ AddonManager.getAddonByID("langpack-x-testing@tests.mozilla.org", function(b1) { ++ prepare_test({ ++ "langpack-x-testing@tests.mozilla.org": [ ++ ["onEnabling", false], ++ "onEnabled" ++ ] ++ }); ++ ++ do_check_eq(b1.operationsRequiringRestart & ++ AddonManager.OP_NEEDS_RESTART_ENABLE, 0); ++ b1.userDisabled = false; ++ ensure_test_completed(); ++ ++ do_check_neq(b1, null); ++ do_check_eq(b1.version, "1.0"); ++ do_check_false(b1.appDisabled); ++ do_check_false(b1.userDisabled); ++ do_check_true(b1.isActive); ++ // check chrome reg that language pack is registered ++ do_check_eq(chrome.getSelectedLocale("test-langpack"), "x-testing"); ++ ++ AddonManager.getAddonByID("langpack-x-testing@tests.mozilla.org", function(newb1) { ++ do_check_neq(newb1, null); ++ do_check_eq(newb1.version, "1.0"); ++ do_check_false(newb1.appDisabled); ++ do_check_false(newb1.userDisabled); ++ do_check_true(newb1.isActive); ++ ++ run_test_5(); ++ }); ++ }); ++} ++ ++// Tests that a restart shuts down and restarts the add-on ++function run_test_5() { ++ shutdownManager(); ++ startupManager(false); ++ // check chrome reg that language pack is registered ++ do_check_eq(chrome.getSelectedLocale("test-langpack"), "x-testing"); ++ ++ AddonManager.getAddonByID("langpack-x-testing@tests.mozilla.org", function(b1) { ++ do_check_neq(b1, null); ++ do_check_eq(b1.version, "1.0"); ++ do_check_false(b1.appDisabled); ++ do_check_false(b1.userDisabled); ++ do_check_true(b1.isActive); ++ do_check_false(isExtensionInAddonsList(profileDir, b1.id)); ++ ++ run_test_7(); ++ }); ++} ++ ++// Tests that uninstalling doesn't require a restart ++function run_test_7() { ++ AddonManager.getAddonByID("langpack-x-testing@tests.mozilla.org", function(b1) { ++ prepare_test({ ++ "langpack-x-testing@tests.mozilla.org": [ ++ ["onUninstalling", false], ++ "onUninstalled" ++ ] ++ }); ++ ++ do_check_eq(b1.operationsRequiringRestart & ++ AddonManager.OP_NEEDS_RESTART_UNINSTALL, 0); ++ b1.uninstall(); ++ ++ check_test_7(); ++ }); ++} ++ ++function check_test_7() { ++ ensure_test_completed(); ++ // check chrome reg that language pack is not registered ++ do_check_locale_not_registered("test-langpack"); ++ ++ AddonManager.getAddonByID("langpack-x-testing@tests.mozilla.org", function(b1) { ++ do_check_eq(b1, null); ++ ++ restartManager(); ++ ++ AddonManager.getAddonByID("langpack-x-testing@tests.mozilla.org", function(newb1) { ++ do_check_eq(newb1, null); ++ ++ do_test_finished(); ++ }); ++ }); ++} +diff -r 97e49e7a3326 -r 812d0ba83175 toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini +--- a/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini Wed Sep 26 13:08:50 2012 +0200 ++++ b/toolkit/mozapps/extensions/test/xpcshell/xpcshell.ini Thu Sep 20 10:01:39 2012 +0200 +@@ -139,6 +139,7 @@ + [test_corrupt_strictcompat.js] + [test_db_sanity.js] + [test_dictionary.js] ++[test_langpack.js] + [test_disable.js] + [test_distribution.js] + [test_dss.js] diff --git a/~emulatorman/iceweasel-libre/iceweasel-install-dir.patch b/~emulatorman/iceweasel-libre/iceweasel-install-dir.patch new file mode 100644 index 000000000..a44aef496 --- /dev/null +++ b/~emulatorman/iceweasel-libre/iceweasel-install-dir.patch @@ -0,0 +1,31 @@ +diff -Nur iceweasel-16.0.1.orig/config/baseconfig.mk iceweasel-16.0.1/config/baseconfig.mk +--- iceweasel-16.0.1.orig/config/baseconfig.mk 2012-10-10 19:42:45.000000000 -0200 ++++ iceweasel-16.0.1/config/baseconfig.mk 2012-10-12 05:40:32.346949927 -0200 +@@ -1,10 +1,10 @@ + INCLUDED_AUTOCONF_MK = 1 + + MOZ_APP_BASE_VERSION = $(firstword $(subst ., ,$(MOZ_APP_VERSION))).$(word 2,$(subst ., ,$(MOZ_APP_VERSION))) +-includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_BASE_VERSION) +-idldir = $(datadir)/idl/$(MOZ_APP_NAME)-$(MOZ_APP_BASE_VERSION) +-installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_BASE_VERSION) +-sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_BASE_VERSION) ++includedir := $(includedir)/$(MOZ_APP_NAME) ++idldir = $(datadir)/idl/$(MOZ_APP_NAME) ++installdir = $(libdir)/$(MOZ_APP_NAME) ++sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel + DIST = $(DEPTH)/dist + + # We do magic with OBJ_SUFFIX in config.mk, the following ensures we don't +diff -Nur iceweasel-16.0.1.orig/js/src/config/baseconfig.mk iceweasel-16.0.1/js/src/config/baseconfig.mk +--- iceweasel-16.0.1.orig/js/src/config/baseconfig.mk 2012-10-10 19:43:05.000000000 -0200 ++++ iceweasel-16.0.1/js/src/config/baseconfig.mk 2012-10-12 05:08:23.064066227 -0200 +@@ -1,7 +1,7 @@ + INCLUDED_AUTOCONF_MK = 1 + +-installdir = $(libdir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION) +-sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel-$(MOZ_APP_VERSION) ++installdir = $(libdir)/$(MOZ_APP_NAME) ++sdkdir = $(libdir)/$(MOZ_APP_NAME)-devel + + ifneq (,$(filter /%,$(TOP_DIST))) + DIST = $(TOP_DIST) diff --git a/~emulatorman/iceweasel-libre/iceweasel.desktop b/~emulatorman/iceweasel-libre/iceweasel.desktop new file mode 100644 index 000000000..e1aa6f0ca --- /dev/null +++ b/~emulatorman/iceweasel-libre/iceweasel.desktop @@ -0,0 +1,105 @@ +[Desktop Entry] +Encoding=UTF-8 +Name=Iceweasel +Name[bg]=Iceweasel +Name[ca]=Iceweasel +Name[cs]=Iceweasel +Name[el]=Iceweasel +Name[es]=Iceweasel +Name[fa]=Iceweasel +Name[fi]=Iceweasel +Name[fr]=Iceweasel +Name[hu]=Iceweasel +Name[it]=Iceweasel +Name[ja]=Iceweasel +Name[ko]=Iceweasel +Name[nb]=Iceweasel +Name[nl]=Iceweasel +Name[nn]=Iceweasel +Name[no]=Iceweasel +Name[pl]=Iceweasel +Name[pt]=Iceweasel +Name[pt_BR]=Iceweasel +Name[ru]=Iceweasel +Name[sk]=Iceweasel +Name[sv]=Iceweasel +Comment=Browse the World Wide Web +Comment[bg]=Сърфиране в Мрежата +Comment[ca]=Navegueu per el web +Comment[cs]=Prohlížení stránek World Wide Webu +Comment[de]=Im Internet surfen +Comment[el]=Περιηγηθείτε στον παγκόσμιο ιστό +Comment[es]=Navegue por la web +Comment[fa]=صفحات شبکه جهانی اینترنت را مرور نمایید +Comment[fi]=Selaa Internetin WWW-sivuja +Comment[fr]=Navigue sur Internet +Comment[hu]=A világháló böngészése +Comment[it]=Esplora il web +Comment[ja]=ウェブを閲覧します +Comment[ko]=웹을 돌아 다닙니다 +Comment[nb]=Surf på nettet +Comment[nl]=Verken het internet +Comment[nn]=Surf på nettet +Comment[no]=Surf på nettet +Comment[pl]=Przeglądanie stron WWW +Comment[pt]=Navegue na Internet +Comment[pt_BR]=Navegue na Internet +Comment[ru]=Обозреватель Всемирной Паутины +Comment[sk]=Prehliadanie internetu +Comment[sv]=Surfa på webben +GenericName=Web Browser +GenericName[bg]=Интернет браузър +GenericName[ca]=Navegador web +GenericName[cs]=Webový prohlížeč +GenericName[de]=Webbrowser +GenericName[el]=Περιηγητής ιστού +GenericName[es]=Navegador web +GenericName[fa]=مرورگر اینترنتی +GenericName[fi]=WWW-selain +GenericName[fr]=Navigateur Web +GenericName[hu]=Webböngésző +GenericName[it]=Browser Web +GenericName[ja]=ウェブ・ブラウザ +GenericName[ko]=웹 브라우저 +GenericName[nb]=Nettleser +GenericName[nl]=Webbrowser +GenericName[nn]=Nettlesar +GenericName[no]=Nettleser +GenericName[pl]=Przeglądarka WWW +GenericName[pt]=Navegador Web +GenericName[pt_BR]=Navegador Web +GenericName[ru]=Интернет-браузер +GenericName[sk]=Internetový prehliadač +GenericName[sv]=Webbläsare +X-GNOME-FullName=Iceweasel Web Browser +X-GNOME-FullName[bg]=Интернет браузър (Iceweasel) +X-GNOME-FullName[ca]=Navegador web Iceweasel +X-GNOME-FullName[cs]=Iceweasel Webový prohlížeč +X-GNOME-FullName[el]=Περιηγήτης Ιστού Iceweasel +X-GNOME-FullName[es]=Navegador web Iceweasel +X-GNOME-FullName[fa]=مرورگر اینترنتی Iceweasel +X-GNOME-FullName[fi]=Iceweasel-selain +X-GNOME-FullName[fr]=Navigateur Web Iceweasel +X-GNOME-FullName[hu]=Iceweasel webböngésző +X-GNOME-FullName[it]=Iceweasel Browser Web +X-GNOME-FullName[ja]=Iceweasel ウェブ・ブラウザ +X-GNOME-FullName[ko]=Iceweasel 웹 브라우저 +X-GNOME-FullName[nb]=Iceweasel Nettleser +X-GNOME-FullName[nl]=Iceweasel webbrowser +X-GNOME-FullName[nn]=Iceweasel Nettlesar +X-GNOME-FullName[no]=Iceweasel Nettleser +X-GNOME-FullName[pl]=Przeglądarka WWW Iceweasel +X-GNOME-FullName[pt]=Iceweasel Navegador Web +X-GNOME-FullName[pt_BR]=Navegador Web Iceweasel +X-GNOME-FullName[ru]=Интернет-браузер Iceweasel +X-GNOME-FullName[sk]=Internetový prehliadač Iceweasel +X-GNOME-FullName[sv]=Webbläsaren Iceweasel +Exec=iceweasel %u +Terminal=false +X-MultipleArgs=false +Type=Application +Icon=iceweasel +Categories=Network;WebBrowser; +MimeType=text/html;text/xml;application/xhtml+xml;application/xml;application/vnd.mozilla.xul+xml;application/rss+xml;application/rdf+xml;image/gif;image/jpeg;image/png;x-scheme-handler/http;x-scheme-handler/https; +StartupWMClass=Iceweasel +StartupNotify=true diff --git a/~emulatorman/iceweasel-libre/iceweasel.install b/~emulatorman/iceweasel-libre/iceweasel.install new file mode 100644 index 000000000..c1fe8284a --- /dev/null +++ b/~emulatorman/iceweasel-libre/iceweasel.install @@ -0,0 +1,13 @@ +post_install() { + update-desktop-database -q + gtk-update-icon-cache -q -t -f usr/share/icons/hicolor +} + +post_upgrade() { + post_install $1 +} + +post_remove() { + post_install $1 +} + diff --git a/~emulatorman/iceweasel-libre/libre.patch b/~emulatorman/iceweasel-libre/libre.patch new file mode 100644 index 000000000..f80295e55 --- /dev/null +++ b/~emulatorman/iceweasel-libre/libre.patch @@ -0,0 +1,268 @@ +diff -ruN mozilla-release.orig/browser/app/profile/firefox.js mozilla-release/browser/app/profile/firefox.js +--- mozilla-release.orig/browser/app/profile/firefox.js 2013-01-10 20:20:02.000000000 -0500 ++++ mozilla-release/browser/app/profile/firefox.js 2013-01-10 17:47:34.000000000 -0500 +@@ -1168,11 +1168,9 @@ + // (This is intentionally on the high side; see bug 746055.) + pref("image.mem.max_decoded_image_kb", 256000); + +-// Example social provider +-pref("social.manifest.facebook", "{\"origin\":\"https://www.facebook.com\",\"name\":\"Facebook Messenger\",\"workerURL\":\"https://www.facebook.com/desktop/fbdesktop2/socialfox/fbworker.js.php\",\"iconURL\":\"data:image/x-icon;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8%2F9hAAAAX0lEQVQ4jWP4%2F%2F8%2FAyUYTFhHzjgDxP9JxGeQDSBVMxgTbUBCxer%2Fr999%2BQ8DJBuArJksA9A10s8AXIBoA0B%2BR%2FY%2FjD%2BEwoBoA1yT5v3PbdmCE8MAshhID%2FUMoDgzUYIBj0Cgi7ar4coAAAAASUVORK5CYII%3D\",\"sidebarURL\":\"https://www.facebook.com/desktop/fbdesktop2/?socialfox=true\"}"); + // Comma-separated list of nsIURI::prePaths that are allowed to activate + // built-in social functionality. +-pref("social.activation.whitelist", "https://www.facebook.com"); ++pref("social.activation.whitelist", ""); + pref("social.sidebar.open", true); + pref("social.sidebar.unload_timeout_ms", 10000); + pref("social.active", false); +diff -ruN mozilla-release.orig/browser/base/content/abouthome/aboutHome.js mozilla-release/browser/base/content/abouthome/aboutHome.js +--- mozilla-release.orig/browser/base/content/abouthome/aboutHome.js 2013-01-04 18:44:27.000000000 -0500 ++++ mozilla-release/browser/base/content/abouthome/aboutHome.js 2013-01-10 18:26:10.000000000 -0500 +@@ -5,70 +5,41 @@ + // If a definition requires additional params, check that the final search url + // is handled correctly by the engine. + const SEARCH_ENGINES = { +- "Google": { ++ "DuckDuckGo HTML": { + image: "data:image/png;base64," + +- "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" +-#ifdef XP_MACOSX +- , imageHD: "data:image/png;base64,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" +-#endif +- , params: "source=hp&channel=np" ++ "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" + } + }; + +@@ -78,7 +49,7 @@ + // * add an entry here in the proper ordering (based on spans) + // The <a/> part of the snippet will be linked to the corresponding url. + const DEFAULT_SNIPPETS_URLS = [ +- "http://www.mozilla.com/firefox/features/?WT.mc_ID=default1" ++ "http://packages.debian.org/experimental/iceweasel" + , "https://www.gnu.org/software/gnuzilla/addons.html" + ]; + +@@ -141,10 +112,6 @@ + if (searchEngineInfo.image) { + let logoElt = document.getElementById("searchEngineLogo"); + logoElt.src = searchEngineInfo.image; +-#ifdef XP_MACOSX +- if (searchEngineInfo.imageHD && window.matchMedia("(min-resolution: 2dppx)")) +- logoElt.src = searchEngineInfo.imageHD; +-#endif + logoElt.alt = searchEngineName; + } + +diff -urN mozilla-release.orig/browser/base/content/abouthome/aboutHome.css mozilla-release/browser/base/content/abouthome/aboutHome.css +--- mozilla-release.orig/browser/base/content/abouthome/aboutHome.css 2013-01-04 21:44:27.000000000 -0200 ++++ mozilla-release/browser/base/content/abouthome/aboutHome.css 2013-01-10 01:35:44.497079456 -0200 +@@ -66,8 +66,7 @@ + #searchEngineLogo { + display: inline-block; + height: 28px; +- width: 70px; +- min-width: 70px; ++ width: 47px; + } + + #searchText { +diff -urN mozilla-release.orig/browser/locales/en-US/chrome/browser-region/region.properties mozilla-release/browser/locales/en-US/chrome/browser-region/region.properties +--- mozilla-release.orig/browser/locales/en-US/chrome/browser-region/region.properties 2012-11-20 00:45:50.000000000 -0200 ++++ mozilla-release/browser/locales/en-US/chrome/browser-region/region.properties 2012-11-28 21:45:00.486713730 -0200 +@@ -3,25 +3,18 @@ + # file, You can obtain one at http://mozilla.org/MPL/2.0/. + + # Default search engine +-browser.search.defaultenginename=Google ++browser.search.defaultenginename=DuckDuckGo HTML + + # Search engine order (order displayed in the search bar dropdown)s +-browser.search.order.1=Google +-browser.search.order.2=Yahoo +-browser.search.order.3=Bing +- +-# This is the default set of web based feed handlers shown in the reader +-# selection UI +-browser.contentHandlers.types.0.title=Google +-browser.contentHandlers.types.0.uri=http://fusion.google.com/add?feedurl=%s +-browser.contentHandlers.types.1.title=My Yahoo! +-browser.contentHandlers.types.1.uri=http://add.my.yahoo.com/rss?url=%s ++browser.search.order.1=DuckDuckGo HTML ++browser.search.order.2=DuckDuckGo Lite ++browser.search.order.3=Seeks Search + + # URL for site-specific search engines + # TRANSLATION NOTE: {moz:domain} and {searchTerms} are placeholders for the site + # to be searched and the user's search query. Place them in the appropriate location + # for your locale's URL but do not translate them. +-browser.search.siteSearchURL=https://www.google.com/search?ie=UTF-8&oe=UTF-8&sourceid=navclient&q=site%3A{moz:domain}+{searchTerms} ++browser.search.siteSearchURL=https://duckduckgo.com/html/?q=site%3A{moz:domain}+{searchTerms} + + # increment this number when anything gets changed in the list below. This will + # cause Firefox to re-read these prefs and inject any new handlers into the +@@ -30,20 +23,10 @@ + # don't make any spelling errors here. + gecko.handlerService.defaultHandlersVersion=3 + +-# The default set of protocol handlers for webcal: +-gecko.handlerService.schemes.webcal.0.name=30 Boxes +-gecko.handlerService.schemes.webcal.0.uriTemplate=http://30boxes.com/external/widget?refer=ff&url=%s +- +-# The default set of protocol handlers for mailto: +-gecko.handlerService.schemes.mailto.0.name=Yahoo! Mail +-gecko.handlerService.schemes.mailto.0.uriTemplate=http://compose.mail.yahoo.com/?To=%s +-gecko.handlerService.schemes.mailto.1.name=Gmail +-gecko.handlerService.schemes.mailto.1.uriTemplate=https://mail.google.com/mail/?extsrc=mailto&url=%s +- + # The default set of protocol handlers for irc: +-gecko.handlerService.schemes.irc.0.name=Mibbit +-gecko.handlerService.schemes.irc.0.uriTemplate=https://www.mibbit.com/?url=%s ++gecko.handlerService.schemes.irc.0.name=Freenode ++gecko.handlerService.schemes.irc.0.uriTemplate=https://webchat.freenode.net/?channels=%s + + # The default set of protocol handlers for ircs: +-gecko.handlerService.schemes.ircs.0.name=Mibbit +-gecko.handlerService.schemes.ircs.0.uriTemplate=https://www.mibbit.com/?url=%s ++gecko.handlerService.schemes.ircs.0.name=Freenode ++gecko.handlerService.schemes.ircs.0.uriTemplate=https://webchat.freenode.net/?channels=%s +diff -ruN mozilla-release.orig/dom/ipc/test.xul mozilla-release/dom/ipc/test.xul +--- mozilla-release.orig/dom/ipc/test.xul 2013-01-04 18:44:31.000000000 -0500 ++++ mozilla-release/dom/ipc/test.xul 2013-01-10 18:19:26.000000000 -0500 +@@ -299,6 +299,6 @@ + oncommand="document.getElementById('page').QueryInterface(Components.interfaces.nsIFrameLoaderOwner).frameLoader.delayRemoteDialogs = this.checked;"/> + </toolbar> + +- <browser type="content" src="http://www.google.com/" flex="1" id="page" remote="true"/> ++ <browser type="content" src="https://duckduckgo.com/html" flex="1" id="page" remote="true"/> + <label id="messageLog" value="" crop="center"/> + </window> +diff -ruN mozilla-release.orig/layout/ipc/test-ipcbrowser.xul mozilla-release/layout/ipc/test-ipcbrowser.xul +--- mozilla-release.orig/layout/ipc/test-ipcbrowser.xul 2013-01-04 18:44:37.000000000 -0500 ++++ mozilla-release/layout/ipc/test-ipcbrowser.xul 2013-01-10 18:20:03.000000000 -0500 +@@ -73,6 +73,6 @@ + label="setViewportScale"/> + </toolbar> + +- <browser type="content" src="http://www.google.com/" flex="1" id="content" ++ <browser type="content" src="https://duckduckgo.com/html" flex="1" id="content" + remote="true"/> + </window> +diff -urN mozilla-release.orig/browser/locales/generic/profile/bookmarks.html.in mozilla-release/browser/locales/generic/profile/bookmarks.html.in +--- mozilla-release.orig/browser/locales/generic/profile/bookmarks.html.in 2012-06-01 09:03:48.000000000 -0300 ++++ mozilla-release/browser/locales/generic/profile/bookmarks.html.in 2012-06-15 22:54:08.446274144 -0300 +@@ -11,13 +11,20 @@ + <DT><H3 PERSONAL_TOOLBAR_FOLDER="true" ID="rdf:#$FvPhC3">@bookmarks_toolbarfolder@</H3> + <DD>@bookmarks_toolbarfolder_description@ + <DL><p> +- <DT><A HREF="http://www.mozilla.com/@AB_CD@/firefox/central/" ID="rdf:#$GvPhC3">@getting_started@</A> ++ <DT><A HREF="https://parabolagnulinux.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA%3D%3D" ID="rdf:#$GvPhC3">Parabola GNU/Linux-libre</A> + </DL><p> +- <DT><H3 ID="rdf:#$ZvPhC3">@firefox_heading@</H3> ++ <DT><H3 ID="rdf:#$YvPhC3">Parabola GNU/Linux-libre</H3> + <DL><p> +- <DT><A HREF="http://www.mozilla.com/@AB_CD@/firefox/help/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" ID="rdf:#$22iCK1">@firefox_help@</A> +- <DT><A HREF="http://www.mozilla.com/@AB_CD@/firefox/customize/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" ID="rdf:#$32iCK1">@firefox_customize@</A> +- <DT><A HREF="http://www.mozilla.com/@AB_CD@/firefox/community/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" ID="rdf:#$42iCK1">@firefox_community@</A> +- <DT><A HREF="http://www.mozilla.com/@AB_CD@/about/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAHWSURBVHjaYvz//z8DJQAggJiQOe/fv2fv7Oz8rays/N+VkfG/iYnJfyD/1+rVq7ffu3dPFpsBAAHEAHIBCJ85c8bN2Nj4vwsDw/8zQLwKiO8CcRoQu0DxqlWrdsHUwzBAAIGJmTNnPgYa9j8UqhFElwPxf2MIDeIrKSn9FwSJoRkAEEAM0DD4DzMAyPi/G+QKY4hh5WAXGf8PDQ0FGwJ22d27CjADAAIIrLmjo+MXA9R2kAHvGBA2wwx6B8W7od6CeQcggKCmCEL8bgwxYCbUIGTDVkHDBia+CuotgACCueD3TDQN75D4xmAvCoK9ARMHBzAw0AECiBHkAlC0Mdy7x9ABNA3obAZXIAa6iKEcGlMVQHwWyjYuL2d4v2cPg8vZswx7gHyAAAK7AOif7SAbOqCmn4Ha3AHFsIDtgPq/vLz8P4MSkJ2W9h8ggBjevXvHDo4FQUQg/kdypqCg4H8lUIACnQ/SOBMYI8bAsAJFPcj1AAEEjwVQqLpAbXmH5BJjqI0gi9DTAAgDBBCcAVLkgmQ7yKCZxpCQxqUZhAECCJ4XgMl493ug21ZD+aDAXH0WLM4A9MZPXJkJIIAwTAR5pQMalaCABQUULttBGCCAGCnNzgABBgAMJ5THwGvJLAAAAABJRU5ErkJggg==" ID="rdf:#$52iCK1">@firefox_about@</A> ++ <DT><A HREF="https://parabolagnulinux.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA%3D%3D">Parabola GNU/Linux-libre</A> ++ <DT><A HREF="https://parabolagnulinux.org/packages/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA%3D%3D">Parabola GNU/Linux-libre Packages</A> ++ <DT><A HREF="https://wiki.parabolagnulinux.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA%3D%3D">Parabola GNU/Linux-libre Wiki</A> ++ <DT><A HREF="https://labs.parabola.nu/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA%3D%3D">Parabola GNU/Linux-libre Labs</A> ++ </DL><p> ++ <DT><H3 ID="rdf:#$ZvPhC3">Free Software Foundation</H3> ++ <DL><p> ++ <DT><A HREF="http://www.fsf.org/" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAIAAACQkWg2AAAACXBIWXMAAAsTAAALEwEAmpwYAAADG0lEQVQoFQEQA+/8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEAAAD///8AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABAQECAAAAAAAAAAAAAAAAAAAA2qOp7tTXAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQAAAP///wAAAAAAAOCyt7pUXQcSEgcQDwAAAP///wAAAAAAAAD//x9NSDqNhQEBAQQAAAAAAAAAAAAAAAAQJiQGDQ0aPToZPjoAAQEAAAAAAAAAAAABAQEpZV4AAAAAAAAAAAAA////////////////pSIv05KZ////////////////////////////////AAAAAQAAAP///6krNwAAAAAAAPHc3ggSEQcSEQAAAAAAAAAAABY3NEGelQAAAAAAAAEBAQEAAAD///+YARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGDg1g690CBgYAAAABAQEEAAAAAAAAS7etAAAAAAAAwGVtHklFIlJOAAAAAAAAAAAAAAAA+/X2BwYGAAAAAAAABAAAAAAAAB1IQwAAAAAAAAYNDBAmJB1IQwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAAAAAAAAAAAAAAAAAAAgL//v4AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACAAAAAAAAAAAAAAAAAAAAAQEB//7/AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAgAAAAAAAAAAAAAAAAAAAAECAv/+/gAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD////////////////cqK3qzM////////////////////////////////8AAAABAAAA////AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQEBAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGuLjDf9F8oBAAAAAElFTkSuQmCC">Free Software Foundation</A> ++ <DT><A HREF="http://libreplanet.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAC/v78AAAAAAPLy9ABsbakA/f3+APn5+QC6ur0A6urqAEpLbQACBLQApKW3AAULuQDMzMwAGBiDAL29vQCgocsAgnzJALu82QA+PpsAAQOvAOjo6ADZ2dkAysrKALS0zwD5+foAAgKRAAYGdQD19fUADhOjAAQJyACrnqIAxMTLAOnp7gDm5uYAzczNACgobwDg2dEAQkaeAA0RkAAUFnEA0MvQAIBzgAANDYsAk5OyAOTk5ADy8vYA1dXVAD8/cADGxsYA+fn7AAMHvgBzZnQApqauAAEGuQDExMQAAAGmAAoLmgADCMQAxMTdAAwPlwD+/v4ABg7MAF5ehADg4OAA0dHRAAAAoQAYEXAAwsLCALCxwQBnadkAAQGWAPz8/ACgoLgAbm6RANvb5wDr6+sA0dHSALe3uQADB8AAzc3NAGFhbAABAZcAOTtlALi4xwAAAJoA/Pz9AAQHnwADBJcACQl4AFVa3AChl6EAAgW2ABscdAABAq4A2NjYAAAAmwDAwMoAAQKmAAcMswDR0eQAAQSxANvX2wB4aXcAAQGpAAAAkwDW1tYAAgSpACIZZAAAAaEA+vr8AKuirAACBbcA8vLyALOztgADBZYAAACcAAACpwAEA6QAAQKnAPT09QD///8AvL3UADIpigDw8PAABwWOAK6dogBub4kAiozDANLS0gAFC8gAAgW4AP39/QAAAJ0A0NDQAMHBwQDp6ewACg2RAAIFqAAKCokA+/v7AAkOnwAAAaMA7OzsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAeHh4eHh4eHh4eHh4eHh4AXh4eHhlbikzZlooeHh4eAF4eHh4hX1JVFweInh4eHgBeHh4XmlAGXNGSB8VeHh4AXg8LhaGcV9zKg0wQF54eAF4K0NNOGthjXNCUwAMS3gBPC82iW+CCRN2Iz4wTwx4AW0GgCc5OU41VnSKTBoOiwEFTz8hHIF5RANdQVRfNIMBeBUhe0o9jB0Pcjdzc1E8AXgsB3AbUlkQRVtnhHNoeAF4i45wJCAlYjJbdYRfY3gBeDwmEn4XMToKZDd6WDx4AXh4VTsIfwt3FGpsfAR4eAF4eHgEEYhQAodXYDx4eHgBeHh4eHg8GC1HPHh4eHh4AQABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAAAAQAAAAEAAAABAAA%3D">LibrePlanet</A> ++ <DT><A HREF="http://www.gnu.org/software/gnuzilla/addons.html" ICON="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAAgBAMAAACBVGfHAAAAGFBMVEVFRUV+fn6mpqa/v7/Ozs7Y2Njg4OD8/Pwuhn+TAAAAAWJLR0QAiAUdSAAAAAlwSFlzAAALEQAACxEBf2RfkQAAAAd0SU1FB9MBDhQ6Gd8s57cAAAEVSURBVBgZBcGxVtpgGADQL9gHSBzqSognzMixmcWWzB6pmRHhnyvku6/fewMAIPD3TwHmQxHs6vr+A16bphNum/vV0x429201hcPjAGBTDZGnR/Kw1U181+u4HXvOdSxjUcztz8jjg1xGVBG9XPYxt4PviKiaWLg168iXtbrq+mPT1utjNcR1U73deRnL43M2sRgj3+oYs8uL3rLphPd2QWmHbMu/VS/cnk6UdtSW657g9yBlcZ0UAkUWzPvyRaAYmfd+HT4IZtvC59ibEJxXiqJjQpBpNEufBYE0McoOAunGhRMEFIPc7h4goJigQEBxk8u7AgEpL3IEAUZfcgAByGFXQACm5+4MAuB19QMEgI8CAgDgP4rivVgoKP6ZAAAAAElFTkSuQmCC">Free addons</A> ++ <DT><A HREF="http://www.h-node.org/" ICON="data:image/x-icon;base64,AAABAAEAEBAAAAAAAABoBQAAFgAAACgAAAAQAAAAIAAAAAEACAAAAAAAAAEAAAAAAAAAAAAAAAEAAAAAAAC7zrYAWYhNANjj1QA9fEcAEEwBAHTQkwAeVRkAPXMvALvOtwASVQEAHFcUAH/bpgB60p8AKnQmAGO1fgAjaRwALmA1AA5EAQDM2sgAN3ApAG7EjgC5zbQAVJxrAChwIgC0ya8ALmczAHXJmQBNf0EAgd6oADhwKgC8z7cA7vPtANTg0QANPwAARIhSADtyLQBzzpQAus21AEeKVQDC070AieyzALzPuAB93qEALGYvAO/z7gBEiVAAasWFAFuJTwBKil4AXotSAEuKXgAORQEAD0gBABlDFwBWpmoALGYwAGCNVQAbYBAAHGAQABBOAQCI6rIAjPG3AB1bDgAaXg4A////AGaRWwB/2qYAUYJEAEx+PwAZXAwAm7eUAD51MADN28oAJmwhACRiFAAzeTYAasaFAB9eDwBkt34Aus62AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAPT09PT09PT09PT09PT09PT09PT0OIjALPRQmMkI9PT09PT09OkcHNQU+Q0oQPT09PT09PToVGDQtI0ABKz09PT09PT06JRg0Nh1ALxk9PT09PT09OiUYIS4TQC83PT09PT09PTpPSDsGG0BEAz09PT09PT06T0BGMRIsTRY9PT09PT09OgACJx8gQwooPT09PT09PToICAkJCUkkPT09PT09PT05HggETio9PT09PT09PT09Px4IERw9PT09PT09PT09PUUpCDMMPT09PT09PT09PT0NOEEEGj09PT09PT09PT09TBcPSzw9PT09PT09PT09PT09PT09PT09PT09PQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA%3D">h-node</A> + </DL><p> + </DL><p> diff --git a/~emulatorman/iceweasel-libre/mozconfig b/~emulatorman/iceweasel-libre/mozconfig new file mode 100644 index 000000000..8b5e52d9e --- /dev/null +++ b/~emulatorman/iceweasel-libre/mozconfig @@ -0,0 +1,49 @@ +. $topsrcdir/browser/config/mozconfig + +ac_add_options --prefix=/usr +ac_add_options --libdir=/usr/lib + +# System libraries +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 --enable-system-pixman +ac_add_options --with-pthreads + +# Features +ac_add_options --enable-startup-notification +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 +mk_add_options MOZ_OBJDIR=@TOPSRCDIR@/moz-objdir + +# Iceweasel +ac_add_options --disable-official-branding +ac_add_options --with-branding=debian/branding + +# ConnochaetOS +#ac_add_options --build=i586-pc-linux-gnu +#ac_add_options --host=i586-pc-linux-gnu +#export USE_SHORT_LIBNAME=1 +#mk_add_options USE_SHORT_LIBNAME=1 + +# Parabola +ac_add_options --disable-safe-browsing +export BUILD_OFFICIAL=1 +mk_add_options BUILD_OFFICIAL=1 + +# Build-generated diff --git a/~emulatorman/iceweasel-libre/mozconfig.pgo b/~emulatorman/iceweasel-libre/mozconfig.pgo new file mode 100644 index 000000000..b0c249ebf --- /dev/null +++ b/~emulatorman/iceweasel-libre/mozconfig.pgo @@ -0,0 +1,4 @@ +# PGO +ac_add_options --enable-profile-guided-optimization +mk_add_options PROFILE_GEN_SCRIPT='$(PYTHON) $(MOZ_OBJDIR)/_profile/pgo/profileserver.py' +mk_add_options PYTHONPATH='$(OBJDIR)/_profile/pgo' diff --git a/~emulatorman/iceweasel-libre/replace-urls.txt b/~emulatorman/iceweasel-libre/replace-urls.txt new file mode 100644 index 000000000..fc13e32fb --- /dev/null +++ b/~emulatorman/iceweasel-libre/replace-urls.txt @@ -0,0 +1,25 @@ +# These are replaced in order, so if one is a subset of another, the smaller one should be last +# These are whitespace-separated EREs, comments are lines starting with '#' + +https?://addons\.mozilla\.org/((%LOCALE%|@AB_CD@|en-US|ru)/)?([a-zA-Z%-]+)/dictionaries/?(\?[^"']*)? https://parabolagnulinux.org/packages/\?repo=Extra\&q=hunspell- +https?://addons\.mozilla\.org/((%LOCALE%|@AB_CD@|en-US|ru)/)?([a-zA-Z%-]+)/plugins/?(\?[^"']*)? https://gnuzilla.gnu.org/plugins/ +https?://addons\.mozilla\.org/((%LOCALE%|@AB_CD@|en-US|ru)/)?([a-zA-Z%-]+)/personas/?(\?[^"']*)? https://www.gnu.org/software/gnuzilla/addons.html +https?://addons\.mozilla\.org/((%LOCALE%|@AB_CD@|en-US|ru)/)?([a-zA-Z%-]+)/recommended/?(\?[^"']*)? https://www.gnu.org/software/gnuzilla/addons.html +https?://addons\.mozilla\.org/((%LOCALE%|@AB_CD@|en-US|ru)/)?([a-zA-Z%-]+)/search-engines/?(\?[^"']*)? https://www.gnu.org/software/gnuzilla/addons.html#search%20engines +https?://addons\.mozilla\.org/((%LOCALE%|@AB_CD@|en-US|ru)/)?([a-zA-Z%-]+)/search/?(\?[^"']*)? https://www.gnu.org/software/gnuzilla/addons.html +https?://addons\.mozilla\.org/((%LOCALE%|@AB_CD@|en-US|ru)/)?([a-zA-Z%-]+)/themes/?(\?[^"']*)? https://www.gnu.org/software/gnuzilla/addons.html#themes +https?://addons\.mozilla\.org/((%LOCALE%|@AB_CD@|en-US|ru)/)?([a-zA-Z%-]+)/?(\?[^"']*)?" https://www.gnu.org/software/gnuzilla/addons.html" +https?://addons\.mozilla\.org/((%LOCALE%|@AB_CD@|en-US|ru)/)?([a-zA-Z%-]+)/?(\?[^"']*)?$ https://www.gnu.org/software/gnuzilla/addons.html + +https://addons.mozilla.org/firefox/collections/mozilla/webdeveloper/ https://www.gnu.org/software/gnuzilla/addons.html + +https?://services\.addons\.mozilla\.org/(%LOCALE%|@AB_CD@|en-US|ru)/([a-zA-Z%-]+)/ https://www.gnu.org/software/gnuzilla/addons.html#bogus-services.\2/ + +https?://pfs\.mozilla\.org/plugins/PluginFinderService\.php https://gnuzilla.gnu.org/plugins/PluginFinderService.php +#https?://versioncheck\.addons\.mozilla\.org/update/VersionCheck\.php +#https?://versioncheck-bg\.addons\.mozilla\.org/update/VersionCheck\.php + +"https?://addons\.mozilla\.org/" "https://www.gnu.org/software/gnuzilla/addons.html" + +# hack: these aren't URLs, per se +(addonsBrowseAll\.description\s*=.*)addons\.mozilla\.org \1gnu.org/software/gnuzilla/addons.html diff --git a/~emulatorman/iceweasel-libre/shared-libs.patch b/~emulatorman/iceweasel-libre/shared-libs.patch new file mode 100644 index 000000000..1f22b2b0d --- /dev/null +++ b/~emulatorman/iceweasel-libre/shared-libs.patch @@ -0,0 +1,12 @@ +diff -Nur mozilla-release.orig/browser/installer/Makefile.in mozilla-release/browser/installer/Makefile.in +--- mozilla-release.orig/browser/installer/Makefile.in 2012-07-17 16:19:29.480356991 +0000 ++++ mozilla-release/browser/installer/Makefile.in 2012-07-17 17:32:41.250937293 +0000 +@@ -50,7 +50,7 @@ + MOZ_PKG_MANIFEST_P = $(srcdir)/package-manifest.in + # Some files have been already bundled with xulrunner + ifndef SYSTEM_LIBXUL +-MOZ_PKG_FATAL_WARNINGS = 1 ++MOZ_PKG_FATAL_WARNINGS = 0 + endif + + MOZ_NONLOCALIZED_PKG_LIST = \ diff --git a/~emulatorman/iceweasel-libre/vendor.js b/~emulatorman/iceweasel-libre/vendor.js new file mode 100644 index 000000000..865bfaec7 --- /dev/null +++ b/~emulatorman/iceweasel-libre/vendor.js @@ -0,0 +1,18 @@ +// Use LANG environment variable to choose locale +pref("intl.locale.matchOS", true); + +// Disable default browser checking. +pref("browser.shell.checkDefaultBrowser", false); + +// Don't disable our bundled extensions in the application directory +pref("extensions.autoDisableScopes", 11); +pref("extensions.shownSelectionUI", true); + +// Make sure that safebrowsing is disabled +pref("browser.safebrowsing.enabled", false); +pref("browser.safebrowsing.malware.enabled", false); + +pref("keyword.URL", ""); +pref("app.update.enabled", false); +pref("app.update.auto", false); +pref("dom.storage.enabled", false); diff --git a/~emulatorman/mozilla-searchplugins/PKGBUILD b/~emulatorman/mozilla-searchplugins/PKGBUILD new file mode 100644 index 000000000..4e4f94494 --- /dev/null +++ b/~emulatorman/mozilla-searchplugins/PKGBUILD @@ -0,0 +1,50 @@ +# Maintainer: Luke Shumaker <lukeshu@sbcglobal.net +# Contributor: Figue <ffigue at gmail> +# Contributor: Figue <ffigue at gmail> +# Contributor (Parabola): fauno <fauno@kiwwwi.com.ar> +# Contributor (Parabola): vando <facundo@esdebian.org> +# Contributor (Parabola): Márcio Silva <coadde@adinet.com.uy> +# Thank you very much to the older contributors: +# Contributor: evr <evanroman at gmail> +# Contributor: Muhammad 'MJ' Jassim <UnbreakableMJ@gmail.com> + +pkgname=mozilla-searchplugins +pkgver=1.3 +pkgrel=4 +pkgdesc="System-wide OpenSearch plugins common for Mozilla based browsers." +arch=('any') +license=('MPL' 'GPL' 'LGPL') +url="https://parabolagnulinux.org/" +source=( + duckduckgo-html.xml + duckduckgo-lite.xml + internet-archive.xml + jamendo-en.xml.in + jamendo.ico::http://www.jamendo.com/favicon.ico + parabola-packages.xml + parabola-wiki-en.xml + seeks-search.xml::http://www.seeks.fr/opensearch.xml + yacybluebox.xml::http://yacy.dyndns.org:8000/opensearchdescription.xml + wikipedia-en.xml::https://en.wikipedia.org/w/opensearch_desc.php +) + +build() { + cd "$srcdir" + sed "s,@icon@,$(base64 -w0 < jamendo.ico)," < jamendo-en.xml.in > jamendo-en.xml +} + +package() { + install -m755 -d "${pkgdir}/usr/lib/mozilla/searchplugins" + install -m644 "${srcdir}"/*.xml "${pkgdir}/usr/lib/mozilla/searchplugins" +} + +md5sums=('b4cc6bd8353af36ade441916217619e4' + '766aa6def4bf63c0d65afd6ca1b1ce37' + '462c68585461f8cdc23c93c46f6ee4cf' + '0c9a3f48971aab8aa0cf2f5e2ff67292' + 'e50a847cec81357e8730e0d327515a9c' + '3c4a7f901bfe9000a702c68f7f78428c' + '5bf9ca2558026fa3f4ec52d8e64fee47' + 'dc6c76acf4c68a40710383513d72fa8b' + 'bdb2640c643493063051bc72eeeff920' + 'cb281f07933210c812a6153f32109645') diff --git a/~emulatorman/mozilla-searchplugins/duckduckgo-html.xml b/~emulatorman/mozilla-searchplugins/duckduckgo-html.xml new file mode 100644 index 000000000..b53408077 --- /dev/null +++ b/~emulatorman/mozilla-searchplugins/duckduckgo-html.xml @@ -0,0 +1,8 @@ +<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/"> +<os:ShortName>DuckDuckGo HTML</os:ShortName> +<os:Description>Search DuckDuckGo HTML</os:Description> +<os:InputEncoding>UTF-8</os:InputEncoding> +<os:Image width="16" height="16">http://duckduckgo.com/favicon.ico</os:Image> +<os:Url type="text/html" method="GET" template="https://duckduckgo.com/html/?q={searchTerms}"> +</os:Url> +</SearchPlugin> diff --git a/~emulatorman/mozilla-searchplugins/duckduckgo-lite.xml b/~emulatorman/mozilla-searchplugins/duckduckgo-lite.xml new file mode 100644 index 000000000..1e651abe6 --- /dev/null +++ b/~emulatorman/mozilla-searchplugins/duckduckgo-lite.xml @@ -0,0 +1,8 @@ +<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/"> +<os:ShortName>DuckDuckGo Lite</os:ShortName> +<os:Description>Search DuckDuckGo Lite</os:Description> +<os:InputEncoding>UTF-8</os:InputEncoding> +<os:Image width="16" height="16">http://duckduckgo.com/favicon.ico</os:Image> +<os:Url type="text/html" method="GET" template="https://duckduckgo.com/lite/?q={searchTerms}"> +</os:Url> +</SearchPlugin> diff --git a/~emulatorman/mozilla-searchplugins/internet-archive.xml b/~emulatorman/mozilla-searchplugins/internet-archive.xml new file mode 100644 index 000000000..1556a2d8c --- /dev/null +++ b/~emulatorman/mozilla-searchplugins/internet-archive.xml @@ -0,0 +1,12 @@ +<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/"> +<os:ShortName>Internet Archive</os:ShortName> +<os:Description>Search www.archive.org</os:Description> +<os:InputEncoding>ISO-8859-1</os:InputEncoding> +<os:Image width="16" height="16">data:image/x-icon;base64,R0lGODlhEAAQAPf0ABQAABMTERQTEhcXFxUYFRscGCwWEzYQDSAkHiAhICEiISQkIiUmJScnJSkpKSsrKi8vLDcvKjM0LzE1Mjc3NjU6Nj44NTw9OT0+Pj4/PD9CQUYdF00lJEE0KkQ9N0Y9NFItLFUvL1wzLFc/PV01MGE8PWU/OWk5NGo7OkBAP0RFREVJRURJRkVLR0ZIRkdJSUZLSEhMS0pPTFZOSllDQlZXVWFJRWVKQWRLRGtPRG9KSWxQRWxRRmhQTHJCQnFDRHVEQHZFQHpLS3hKTHlNSn5PSn5PTXxOUHRWTXBeU29jXXtgWHxjXn1mZIBQS4BQUIJZUoBZWIVeXYhfW4ZsX41jXYlrXoxuX4RuYoppYotza5NlZ5Zua5J4bpt5ZpaDeaKBb42MiY6MiY6NiY+QjJGIhZGKhZiLgp+IgJGRjJOSjZKSj5SWjpSTkJWVkJWUkpaUkZaVkquLgKmMgayPgK6Sh6mWj6ycj7GQgbKSgLWSgrqXi7maj7Sck7Smn72ilK+so6ytqbanobKppLysoLytor6uprqxqr2wqr+zrL23tMOklsCroMKvpcWqoMSsocStocSupcS1qce2rMa6r8m1rsO8ssa4sM65sty5q9C6sc3DttbEvdbKv9nFt9rHvODAsuDIuuHLvufKvurNvNDLwtDPy9nLwN3Oxt3Xz+TMwODQxuPTxuXRxefRxuHWzO3Ux+/WxunXy+vWyO3XzujYyuzYy+7bz+HZ0eHZ1eLc0uXc0+bc2Ore0u7c0O/f0vHf1eTg2+/h1O/h1u/j2u/m2vDh0/Hg1vDi1fHi1fPh1fPh1/bg1vLq3fXr3/ng1vjl2fnk2fTr5fTs4vHu6Pfw5vb07vnz5vvy5/zy5vry6Pv06vj17/7y6v/17fz47/757v/57v/38Pr58/358f358//68P778v/68/z89v/99f/+9f//9P7+9///9/z8+f//+P//+/7+/v///v///wAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH5BAAAAAAALAAAAAAQABAAAAj+ALeUoDHjAosYKlKsaAHjhYsMgYaAAGABggwNDgbUqMAAgwIKa47oMBChwIQHAQRIQEAgQYMFYX6EGFEmDZk2ceCoYePmjZgxpnxEaSKPntGjR+fRi/dESo9y3MYFy8ULl65Sit6loyaEgw14qQANQuTn0pkPHsxYa2eEC5Nu0ywlMmSn0Z0OSg6RW4fiAA512nahqoQGkqckgqShO+ekypJw2F6titTlTywsnLxtY3diww135k59cjRnESkqmMR9YwdEBI9imwoxqiMHTx4rmohVAxdExI5Wkgg94rNHj5crWr5QulYESo5bxmqJGgUqExg6fSZ1akaEBBJXvlgfybI1C1YoVbSA9XI2xUSWZ9B+IROWTFk0ZsuODcsWEAA7</os:Image> +<UpdateInterval>7</UpdateInterval> +<UpdateUrl>http://mycroft.mozdev.org/update.php/id0/archive.src</UpdateUrl> +<IconUpdateUrl>http://mycroft.mozdev.org/update.php/id0/archive.gif</IconUpdateUrl> +<SearchForm>http://www.archive.org/</SearchForm> +<os:Url type="text/html" method="GET" template="http://www.archive.org/search.php?sourceid=Mozilla-search&query={searchTerms}&sort=-%2Fadditional%2Fitem%2Fdownloads"> +</os:Url> +</SearchPlugin>
\ No newline at end of file diff --git a/~emulatorman/mozilla-searchplugins/jamendo-en.xml.in b/~emulatorman/mozilla-searchplugins/jamendo-en.xml.in new file mode 100644 index 000000000..96b3a008d --- /dev/null +++ b/~emulatorman/mozilla-searchplugins/jamendo-en.xml.in @@ -0,0 +1,10 @@ +<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/"> +<os:ShortName>Jamendo (en)</os:ShortName> +<os:Description>Search Jamendo.com English site for downloadable Creative Commons music</os:Description> +<os:InputEncoding>UTF-8</os:InputEncoding> +<os:Image width="16" height="16">data:image/x-icon;base64,@icon@</os:Image> +<UpdateUrl>http://mycroft.mozdev.org/updateos.php/id0/jamendo.xml</UpdateUrl> +<SearchForm>http://www.jamendo.com/en</SearchForm> +<os:Url type="text/html" method="GET" template="http://www.jamendo.com/en/search#qs=q={searchTerms}"> +</os:Url> +</SearchPlugin> diff --git a/~emulatorman/mozilla-searchplugins/parabola-packages.xml b/~emulatorman/mozilla-searchplugins/parabola-packages.xml new file mode 100644 index 000000000..8f20628dc --- /dev/null +++ b/~emulatorman/mozilla-searchplugins/parabola-packages.xml @@ -0,0 +1,9 @@ +<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/"> +<os:ShortName>Parabola Packages</os:ShortName> +<os:Description>Search the Parabola package repositories.</os:Description> +<os:InputEncoding>UTF-8</os:InputEncoding> +<os:Image width="16" height="16">data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA==</os:Image> +<os:Url type="text/html" method="GET" template="http://parabolagnulinux.org/packages/?q={searchTerms}"> +</os:Url><os:Url type="application/opensearchdescription+xml" method="GET" template="http://parabolagnulinux.org/opensearch/packages/" rel="self"> +</os:Url> +</SearchPlugin>
\ No newline at end of file diff --git a/~emulatorman/mozilla-searchplugins/parabola-wiki-en.xml b/~emulatorman/mozilla-searchplugins/parabola-wiki-en.xml new file mode 100644 index 000000000..d218b21f8 --- /dev/null +++ b/~emulatorman/mozilla-searchplugins/parabola-wiki-en.xml @@ -0,0 +1,11 @@ +<SearchPlugin xmlns="http://www.mozilla.org/2006/browser/search/" xmlns:os="http://a9.com/-/spec/opensearch/1.1/"> +<os:ShortName>Parabola GNU/Linux-Libre Wiki (en)</os:ShortName> +<os:Description>Parabola GNU/Linux-Libre Wiki (en)</os:Description> +<os:InputEncoding>UTF-8</os:InputEncoding> +<os:Image width="16" height="16">data:image/x-icon;base64,AAABAAEAEBAAAAEAIABoBAAAFgAAACgAAAAQAAAAIAAAAAEAIAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AihUrGP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AIcXLSJvFCcn////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AbRIkcP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AGwTI0JWEBtB////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wCAAAACVQ8crP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AFYQHJI9ChRL////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wBlKzZHPQoUzgAAAAH///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8AknV8I0sdJv8kBgxU////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AMTExA1uTlX1JAYLyf///wD///8A////AP///wD///8A////AP///wD///8A////AP///wD///8A////AP///wC5ubkLhG1x6CQGDP0PAAARzJmZBf///wD///8A////AP///wD/// +8A////AP///wD///8A////AP///wD///8AxsbGCZB+g/QkBgz/DQMDUdu2tgfMn5koxo2NOsxmmQX///8A////AP///wD///8A////AP///wD///8A////AJ2JjX+NeX3/JAYM/wwCA5T///8A////AL+AgAi/foFfuG51l7JgaXCvY3E2/4CAAv///wD///8A////AJlveHOzqqv6UCUt/yQGDP8MAgTW////AP///wD///8A////AKqAgAawXmhnqk9b36VNW/KjT13mqGh16Kl+hvCbdHz/YyYx/z0KFP8kBgz/DAIE7f///wD///8A////AP///wD///8A////AJlmZgWkQU5inDFD0ZUhNv+FFyz/bRMk/1UPHP89ChT/JAYM/wwCA9v///8A////AP///wD///8A////AP///wD///8A////AP///wCTIDMohRYtfW0TJMBVDxzQPQoU3SUGDcoMBARA//8AAP//AAD//wAA//8AAP/3AAD/9wAA//sAAP/7AAD/+QAA//kAAP/5AAD/+AAA9/AAAPwAAAD/AAAA/+EAAA==</os:Image> +<SearchForm>https://wiki.parabolagnulinux.org/Special:Search</SearchForm> +<os:Url type="text/html" method="GET" template="https://wiki.parabolagnulinux.org/index.php?title=Special:Search&search={searchTerms}"> +</os:Url><os:Url type="application/x-suggestions+json" method="GET" template="https://wiki.parabolagnulinux.org/api.php?action=opensearch&search={searchTerms}&namespace=0"> +</os:Url> +</SearchPlugin>
\ No newline at end of file |