summaryrefslogtreecommitdiff
path: root/libre/icedove-libre
diff options
context:
space:
mode:
Diffstat (limited to 'libre/icedove-libre')
-rw-r--r--libre/icedove-libre/PKGBUILD59
-rw-r--r--libre/icedove-libre/channel-prefs.js9
-rw-r--r--libre/icedove-libre/mozconfig33
-rw-r--r--libre/icedove-libre/replace-urls.txt25
4 files changed, 73 insertions, 53 deletions
diff --git a/libre/icedove-libre/PKGBUILD b/libre/icedove-libre/PKGBUILD
index 5ea3ff98f..b16e32620 100644
--- a/libre/icedove-libre/PKGBUILD
+++ b/libre/icedove-libre/PKGBUILD
@@ -3,7 +3,7 @@
# We're getting this from Debian Experimental
_debname=icedove
-_debver=17.0.2
+_debver=17.0.5
_debrel=1
_debrepo=http://ftp.debian.org/debian/pool/main/
debfile() { echo $@|sed -r 's@(.).*@\1/&/&@'; }
@@ -12,10 +12,10 @@ _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}"
+pkgdesc="A libre version of Debian Icedove, the standalone mail/news reader based on Mozilla Thunderbird."
+arch=('i686' 'x86_64' 'mips64el')
+license=('MPL' 'GPL' 'LGPL')
+url="http://packages.debian.org/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')
@@ -26,33 +26,35 @@ install=${_pkgname}.install
source=("${_debrepo}/`debfile ${_debname}`_${_debver}.orig.tar.bz2"
"${_debrepo}/`debfile ${_debname}`_${_debver}-${_debrel}.debian.tar.gz"
mozconfig
- channel-prefs.js
+ replace-urls.txt
vendor.js
makefile.patch
branding.patch
${_pkgname}.desktop
Icedove-branding.patch)
options=(!emptydirs)
-md5sums=('3f7679bb98ae99be5adf73fd0025b00e'
- '7440def324766bcc61b91185226f8824'
- 'd6d58d3104a44624e0a3d227cdf1c211'
- '476ec205162340fb0679f522c9d31c3b'
+md5sums=('0c68298c17757257da79b6bb39e3fd10'
+ 'eb2a5e1877d87a16e10388f533c081a6'
+ '5cf95ea94f69cdd36604890cfbf7b954'
+ 'a8fc4658d45b6bf9350023e5c3f34e56'
'4eecc4fc5aafaf0da651a09eadc90bee'
'c4ed43e85945e180a89cce03e45ec62c'
'126b1446212396c33220936c01d9592d'
'e785e0c267f4435ae1a9aa0b03bcacfb'
'ea5f7a06967f561d47d7e5c35b23de6f')
-build() {
+prepare() {
+ export DEBIAN_BUILD="comm-esr17"
+
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"
@@ -61,7 +63,7 @@ build() {
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
+ # 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
@@ -70,7 +72,30 @@ build() {
patch -Np1 -i "${srcdir}/branding.patch" # fixing branding
patch -Np1 -i "${srcdir}/Icedove-branding.patch" # debian patch fixed version
+ # 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
+
cp "${srcdir}/mozconfig" .mozconfig
+
+ # configure script misdetects the preprocessor without an optimization level
+ # https://bugs.archlinux.org/task/34644
+ sed -i '/ac_cpp=/s/$CPPFLAGS/& -O2/' configure
+}
+
+build() {
+ cd "${srcdir}/${DEBIAN_BUILD}"
+
+ export LDFLAGS="${LDFLAGS} -Wl,-rpath,/usr/lib/${_pkgname}"
+ export PYTHON="/usr/bin/python2"
+
make -j1 -f client.mk build MOZ_MAKE_FLAGS="${MAKEFLAGS}"
}
@@ -81,9 +106,6 @@ package() {
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
@@ -96,6 +118,7 @@ package() {
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/libre/icedove-libre/channel-prefs.js b/libre/icedove-libre/channel-prefs.js
deleted file mode 100644
index 13b1ba388..000000000
--- a/libre/icedove-libre/channel-prefs.js
+++ /dev/null
@@ -1,9 +0,0 @@
-//@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/libre/icedove-libre/mozconfig b/libre/icedove-libre/mozconfig
index 58f8ce24f..4f90cb58a 100644
--- a/libre/icedove-libre/mozconfig
+++ b/libre/icedove-libre/mozconfig
@@ -4,6 +4,10 @@ ac_add_options --enable-application=mail
ac_add_options --prefix=/usr
ac_add_options --libdir=/usr/lib
+# Icedove
+ac_add_options --disable-official-branding
+ac_add_options --with-branding=mail/branding/icedove
+
# System libraries
ac_add_options --with-system-nspr
ac_add_options --with-system-nss
@@ -16,7 +20,7 @@ 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-cairo
ac_add_options --enable-system-pixman
ac_add_options --with-pthreads
@@ -37,28 +41,5 @@ 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
+# Parabola features
+ac_add_options --disable-safe-browsing
diff --git a/libre/icedove-libre/replace-urls.txt b/libre/icedove-libre/replace-urls.txt
new file mode 100644
index 000000000..fc13e32fb
--- /dev/null
+++ b/libre/icedove-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