summaryrefslogtreecommitdiff
path: root/libre
diff options
context:
space:
mode:
Diffstat (limited to 'libre')
-rw-r--r--libre/icedove/0001-Bug-1338655-Don-t-try-to-build-mp4parse-bindings.-r-.patch48
-rw-r--r--libre/icedove/PKGBUILD327
-rw-r--r--libre/icedove/changing-the-default-search-engine.patch40
-rw-r--r--libre/icedove/fix-wifi-scanner.diff16
-rw-r--r--libre/icedove/glibc-2.26-fix.diff258
-rw-r--r--libre/icedove/icedove-install-dir.patch5
-rw-r--r--libre/icedove/icedove.desktop6
-rw-r--r--libre/icedove/icedove.install12
-rw-r--r--libre/icedove/libre.patch (renamed from libre/icedove/libre-searchengines.patch)40
-rw-r--r--libre/icedove/mozconfig44
-rw-r--r--libre/icedove/mp4parse-bindings.patch11
-rw-r--r--libre/icedove/no-crmf.diff (renamed from libre/icedove/no-crmf.patch)4
-rw-r--r--libre/icedove/no-neon.patch96
-rw-r--r--libre/icedove/rust-i686.patch16
-rw-r--r--libre/icedove/rust-target-i586-to-i686.patch11
-rw-r--r--libre/icedove/vendor.js23
16 files changed, 578 insertions, 379 deletions
diff --git a/libre/icedove/0001-Bug-1338655-Don-t-try-to-build-mp4parse-bindings.-r-.patch b/libre/icedove/0001-Bug-1338655-Don-t-try-to-build-mp4parse-bindings.-r-.patch
new file mode 100644
index 000000000..cf2e0eb9b
--- /dev/null
+++ b/libre/icedove/0001-Bug-1338655-Don-t-try-to-build-mp4parse-bindings.-r-.patch
@@ -0,0 +1,48 @@
+From bbd48a5613c872883616884cfaf41665b0e4ec9b Mon Sep 17 00:00:00 2001
+From: Ralph Giles <giles@mozilla.com>
+Date: Fri, 10 Feb 2017 12:58:18 -0800
+Subject: [PATCH] Bug 1338655 - Don't try to build mp4parse bindings. r=froydnj
+
+We use the cheddar crate to generate a C header file
+for our mp4parse_capi wrapper crate. Currently we
+do this at code check-in time via update-rust.sh.
+
+Cargo 0.18 and later will try to execute a build.rs
+file in the crate source tree regardless of whether
+it's specified in Cargo.toml so patching out that
+line just results in 'crate cheddar not found'.
+
+This change restores the old behaviour by substituting
+a 'build = false' line instead.
+
+We do have syntex vendored, but we don't currently build
+it by default, so I prefer this solution to just vendoring
+cheddar and generating the header at build time. The syntex
+crate is quite large and adds significantly to our compile
+time.
+
+MozReview-Commit-ID: InJRRODWAdP
+
+--HG--
+extra : rebase_source : 29378fcbc86015ce6cc22dc66d38a43ddbac204e
+---
+ media/libstagefright/binding/mp4parse-cargo.patch | 5 +++--
+ media/libstagefright/binding/mp4parse_capi/Cargo.toml | 2 ++
+ 2 files changed, 5 insertions(+), 2 deletions(-)
+
+diff --git a/media/libstagefright/binding/mp4parse_capi/Cargo.toml b/media/libstagefright/binding/mp4parse_capi/Cargo.toml
+index aee7ee947151a27c..d7e3f55119d3f4b6 100644
+--- a/media/libstagefright/binding/mp4parse_capi/Cargo.toml
++++ b/media/libstagefright/binding/mp4parse_capi/Cargo.toml
+@@ -18,6 +18,8 @@ exclude = [
+ "*.mp4",
+ ]
+
++build = false
++
+ [dependencies]
+ byteorder = "1.0.0"
+ "mp4parse" = {version = "0.6.0", path = "../mp4parse"}
+--
+2.12.2
+
diff --git a/libre/icedove/PKGBUILD b/libre/icedove/PKGBUILD
index 3f7ba7576..b17946f06 100644
--- a/libre/icedove/PKGBUILD
+++ b/libre/icedove/PKGBUILD
@@ -1,204 +1,261 @@
+# $Id$
+# Contributor (Arch): Jan Alexander Steffens (heftig) <jan.steffens@gmail.com>
+# Contributor (Arch): Ionut Biru <ibiru@archlinux.org>
+# Contributor (Arch): Alexander Baldeck <alexander@archlinux.org>
+# Contributor (Arch): Dale Blount <dale@archlinux.org>
+# Contributor (Arch): Anders Bostrom <anders.bostrom@home.se>
# Maintainer: Andreas Grapentin <andreas@grapentin.org>
# Contributor: André Silva <emulatorman@hyperbola.info>
# Contributor: Márcio Silva <coadde@hyperbola.info>
# Contributor: Luke R. <g4jc@openmailbox.org>
# Contributor: Isaac David <isacdaavid@isacdaavid.info>
-_oldname=thunderbird
-pkgname=icedove
+# parabola changes and rationale:
+# - rebranded to icedove
+# - added makedepends: quilt mozilla-searchplugins python2-blessings
+# - added replaces, conflicts, provides: thunderbird
+# - disabled tests, they break in an environment without network access.
+_pkgname=thunderbird
+pkgname=icedove
epoch=1
-pkgver=52.5.2
+pkgver=52.6.0
pkgrel=1
-_brandingver=52.1
-_brandingrel=1
-arch=(i686 x86_64 armv7h)
-
-pkgdesc="Icedove, the libre standalone mail and news reader based on Mozilla Thunderbird."
-url="https://wiki.parabola.nu/$pkgname"
+_bver=52.1
+_brel=1
+pkgdesc="Libre standalone mail and news reader based on Mozilla Thunderbird"
+arch=(x86_64 i686 armv7h)
license=(MPL GPL LGPL)
-
-depends=(alsa-lib dbus-glib gtk2 gtk3 hunspell libvpx libxt mime-types mozilla-common nss sqlite startup-notification ttf-font)
+url="https://wiki.parabola.nu/$pkgname"
+depends=(gtk3 gtk2 mozilla-common libxt startup-notification mime-types dbus-glib alsa-lib ffmpeg
+ nss hunspell sqlite ttf-font icu libvpx)
depends_x86_64=("icu>=60" "icu<61")
depends_i686=("icu>=60" "icu<61")
depends_armv7h=("icu>=60" "icu<61")
-makedepends=(autoconf2.13 diffutils gconf imake inetutils libpulse mesa mozilla-searchplugins pkg-config python2 quilt unzip yasm zip)
-makedepends_i686=(cargo)
-makedepends_x86_64=("${makedepends_i686[@]}")
-optdepends=('libcanberra: for sound support')
-replaces=("$pkgname-libre" "$_oldname")
-conflicts=("$pkgname-libre" "$_oldname")
+makedepends=(unzip zip diffutils python2 yasm mesa imake gconf libpulse inetutils xorg-server-xvfb
+ autoconf2.13 rust clang llvm quilt mozilla-searchplugins python2-blessings)
+optdepends=('libcanberra: sound support')
+replaces=("$_oldname")
+conflicts=("$_oldname")
provides=("$_oldname")
options=(!emptydirs !makeflags)
-install=$pkgname.install
-
-_parabolarepo=https://repo.parabola.nu/other/icedove
-source=("https://ftp.mozilla.org/pub/$_oldname/releases/$pkgver/source/$_oldname-$pkgver.source.tar.xz"
- "$_parabolarepo/${pkgname}_$_brandingver-$_brandingrel.branding.tar.xz"
- "$_parabolarepo/${pkgname}_$_brandingver-$_brandingrel.branding.tar.xz.sig"
- mozconfig
- $pkgname.desktop
- $pkgname-install-dir.patch
- changing-the-default-search-engine.patch
- vendor.js
- rust-target-i586-to-i686.patch
- mp4parse-bindings.patch
- libre-searchengines.patch
- no-neon.patch
- no-crmf.patch)
-sha256sums=('7772e1865cd4cbaac82ea05374d0ae51f754f47c6160c9b83919da483d620ee5'
+source=(https://ftp.mozilla.org/pub/mozilla.org/thunderbird/releases/$pkgver/source/thunderbird-$pkgver.source.tar.xz
+ 0001-Bug-1338655-Don-t-try-to-build-mp4parse-bindings.-r-.patch
+ no-crmf.diff rust-i686.patch fix-wifi-scanner.diff
+ $pkgname.desktop $pkgname-install-dir.patch
+ https://repo.parabola.nu/other/icedove/${pkgname}_$_bver-$_brel.branding.tar.xz{,.sig}
+ libre.patch)
+sha256sums=('16215fb5a3765c7e5a40eadc1f3aed6918294f6d8ef1552d2aa37656055045a8'
+ '413cd6d366d78f325d80ebebccfd0afa0d266b40b2e54b66ba2fa03c15f3ea67'
+ '9bb0ec0d1b267f8cc1f08fbd82666459a21e4c171d52b8314b80979c948d96ce'
+ 'f61ea706ce6905f568b9bdafd1b044b58f20737426f0aa5019ddb9b64031a269'
+ '9765bca5d63fb5525bbd0520b7ab1d27cabaed697e2fc7791400abc3fa4f13b8'
+ 'af8199a12ebe09189d143458bd1e2d0071aff3410ed121dc2329a448a56632f0'
+ 'a3f2431a6e9eb01d3e20dfa5110e769180b4a752ea834c1162088aa90d99e8f3'
'246418976524fbead5b99e6227f97322f8d4c45e0edf9ce75561ae8eccdefc65'
'SKIP'
- 'cafd1cf384791e8e3284f52370b2913a8b05935ecfd10d2a19c6dd5a8c219b62'
- '0b0d25067c64c6b829c84e5259ffca978e3971f85acc8483f47bdbed5b0b5b6a'
- '36e0a5ac0e994bfc939b4ac69a1a4aa365210e9dd5b49317d647c683817b2c5d'
- 'ff3474b7d8f7ad245a324c14f01daf05834462b4f0144fbc50f055ebb573dac8'
- '058b58074368b57acf8a6df9a9ffac848b7d7b39f5abd84cb2039bcee42b73e2'
- '069fab4b99dd51d7d004124d0052ea7b864cf060ea943348d290ba6aae50b0ab'
- '45a9e651278e39df39d17a679ac9ad81255cd51b530ba23b8e55e4d39c3b35d0'
- '0db12bef46e0ad68dbdf6ce0c767956d6758b073531012a850e7975eda3fc7fe'
- '59f40d8b2480aa67bf76f4f119826b6828a6a59cc040caf1ab5a6e19eef44c6e'
- 'a7317caba56e89932bd9e3b9352d94701dd9a419685057f238b1ded8dc0adcd7')
+ '4a09569394f1b4e154fdcd53f2947b7be7f065baaa31c964629dff9117fdf49b')
validpgpkeys=(BFA8008A8265677063B11BF47171986E4B745536) # Andreas Grapentin
prepare() {
- cd "$srcdir/$_oldname-$pkgver"
+ mkdir path
+ ln -s /usr/bin/python2 path/python
- local brandingdir="$srcdir/$pkgname-$_brandingver"
+ cd $_pkgname-$pkgver
+ patch -Np1 -i ../$pkgname-install-dir.patch
- # Prepare branding for the Icedove packages
- mkdir -v mail/branding/$pkgname
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1314968
+ patch -d mozilla -Np1 < ../fix-wifi-scanner.diff
- # copy the branding files
- cp -va $brandingdir/$pkgname-branding/* mail/branding/$pkgname
+ # https://bugzilla.mozilla.org/show_bug.cgi?id=1371991
+ patch -Np1 -i ../no-crmf.diff
+
+ # Build with the rust targets we actually ship
+ patch -d mozilla -Np1 < ../rust-i686.patch
+
+ # https://bugs.archlinux.org/task/53890
+ patch -d mozilla -Np1 < ../0001-Bug-1338655-Don-t-try-to-build-mp4parse-bindings.-r-.patch
+
+ cat >.mozconfig <<END
+ac_add_options --enable-application=mail
+ac_add_options --enable-calendar
+
+ac_add_options --prefix=/usr
+ac_add_options --enable-release
+ac_add_options --enable-gold
+ac_add_options --enable-pie
+ac_add_options --enable-optimize="-O2"
+ac_add_options --enable-rust
+
+# Branding
+ac_add_options --disable-official-branding
+ac_add_options --with-branding=mail/branding/icedove
+ac_add_options --enable-update-channel=release
+ac_add_options --with-distribution-id=nu.parabola
+
+# System libraries
+ac_add_options --with-system-nspr
+ac_add_options --with-system-nss
+ac_add_options --with-system-icu
+ac_add_options --with-system-jpeg
+ac_add_options --with-system-zlib
+ac_add_options --with-system-bz2
+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-pixman
+
+# Features
+ac_add_options --enable-alsa
+ac_add_options --disable-jack
+ac_add_options --enable-startup-notification
+ac_add_options --disable-crashreporter
+ac_add_options --disable-updater
+ac_add_options --disable-safe-browsing
+ac_add_options --disable-url-classifier
+ac_add_options --disable-eme
+ac_add_options --disable-tests
+END
+
+ if [[ "$CARCH" == arm* ]]; then
+ sed -i \
+ -e '/enable-gold/s/^/#/' \
+ -e '/enable-pie/s/^/#/' \
+ -e '/enable-optimize/s/^/#/' \
+ -e '/enable-rust/d' \
+ .mozconfig
+
+ cat >> .mozconfig << END
+ac_add_options --disable-webrtc
+ac_add_options --disable-elf-hack
+ac_add_options --enable-optimize="-g -O2 -fno-schedule-insns"
+END
+ fi
+
+ # perform rebranding
+ local brandingdir="$srcdir/$pkgname-$_bver"
+ mkdir -v mail/branding/$pkgname
+ cp -va $srcdir/$pkgname-$_bver/$pkgname-branding/* mail/branding/$pkgname
- # patch
- export QUILT_PATCHES=$brandingdir/patches
+ export QUILT_PATCHES=$srcdir/$pkgname-$_bver/patches
export QUILT_REFRESH_ARGS='-p ab --no-timestamps --no-index'
export QUILT_DIFF_ARGS='--no-timestamps'
-
quilt push -av
- # install the icons
- for i in 16 22 24 32 48 64 128 256; do
- install -Dm644 $brandingdir/app-icons/$pkgname$i.png \
- mail/branding/$pkgname/mailicon$i.png
- done
- for i in 48 64; do
- install -Dm644 $brandingdir/app-icons/$pkgname$i.png \
- mail/branding/$pkgname/content/icon$i.png
- done
- cp -av $brandingdir/preview.png mail/themes/linux/mail/preview.png
-
- # install to /usr/lib/icedove
- patch -Np1 -i "$srcdir/$pkgname-install-dir.patch"
-
- # https://bugzilla.mozilla.org/show_bug.cgi?id=1371991
- patch -Np1 -i "$srcdir/no-crmf.patch"
-
- # Fix rust build
- patch -Np1 -i "$srcdir/rust-target-i586-to-i686.patch"
- patch -Np1 -i "$srcdir/mp4parse-bindings.patch"
-
- # Fix freedom issues
- patch -Np1 -i "$srcdir/libre-searchengines.patch"
-
- # Remove url-classifier from package-manifest.in to build and disable Phishing Protection
+ # Patch and remove anything that's left
+ patch -Np1 -i "$srcdir/libre.patch"
sed -i '\|Phishing Protection|d
\|UrlClassifier|d
\|URLClassifier|d
\|url-classifier|d
' mail/installer/package-manifest.in
-
- # Replace common URLs
sed -i '\|extensions[.]getAddons[.]get[.]url| s|https://services[.]addons[.]mozilla[.]org.\+["][)][;]|https://directory.fsf.org/wiki/Icedove");|g;
\|extensions[.]getAddons[.]search[.]browseURL| s|https://addons[.]mozilla[.]org.\+["][)][;]|https://directory.fsf.org/wiki/Icedove");|g;
\|extensions[.]getAddons[.]search[.]url| s|https://services[.]addons[.]mozilla[.]org.\+["][)][;]|https://directory.fsf.org/wiki/Icedove");|g;
\|extensions[.]webservice[.]discoverURL| s|https://services[.]addons[.]mozilla[.]org.\+["][)][;]|https://directory.fsf.org/wiki/Icedove");|g;
' mail/app/profile/all-thunderbird.js
- cp -v "$srcdir/mozconfig" .mozconfig
-
- # make sure we use python2
- mkdir "$srcdir/path"
- ln -s /usr/bin/python2 "$srcdir/path/python"
-
- # Change the default search engine using our system-provided searchplugins
- patch -Np1 -i "$srcdir/changing-the-default-search-engine.patch"
+ for i in 16 22 24 32 48 64 128 256; do
+ install -Dm644 $srcdir/$pkgname-$_bver/app-icons/$pkgname$i.png \
+ mail/branding/$pkgname/mailicon$i.png
+ done
+ for i in 48 64; do
+ install -Dm644 $srcdir/$pkgname-$_bver/app-icons/$pkgname$i.png \
+ mail/branding/$pkgname/content/icon$i.png
+ done
+ cp -av $srcdir/$pkgname-$_bver/preview.png \
+ mail/themes/linux/mail/preview.png
# Load our searchplugins
rm -rv mail/locales/en-US/searchplugins
cp -av /usr/lib/mozilla/searchplugins mail/locales/en-US/
-
- # ARM-specific changes:
- if [[ "$CARCH" == arm* ]]; then
- # https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=850984
- sed -i 's/\^\[:space:\]\*/^[[:space:]]*/' mozilla/{,js/src/}configure
-
- patch -Np0 -i ../no-neon.patch
- sed -i '/ac_add_options --enable-gold/d' .mozconfig
- cat >> .mozconfig <<- EOF
- ac_add_options --disable-elf-hack
- ac_add_options --disable-neon
- ac_add_options --disable-ion
- ac_add_options --disable-webrtc
- ac_add_options --disable-debug
- ac_add_options --disable-debug-symbols
- EOF
- fi
}
build() {
- cd "$srcdir/$_oldname-$pkgver"
+ cd $_pkgname-$pkgver
# _FORTIFY_SOURCE causes configure failures
CPPFLAGS+=" -O2"
- # Hardening
- LDFLAGS+=" -Wl,-z,now"
-
- # GCC 6
- CFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
- CXXFLAGS+=" -fno-delete-null-pointer-checks -fno-lifetime-dse -fno-schedule-insns2"
-
export PATH="$srcdir/path:$PATH"
- export PYTHON="/usr/bin/python2"
+ # Do PGO
+ #xvfb-run -a -n 95 -s "-extension GLX -screen 0 1280x1024x24" \
+ # make -f client.mk build MOZ_PGO=1
make -f client.mk build
}
package() {
- cd "$srcdir/$_oldname-$pkgver"
-
+ cd $_pkgname-$pkgver
make -f client.mk DESTDIR="$pkgdir" INSTALL_SDK= install
- install -Dm644 "$srcdir/vendor.js" "$pkgdir/usr/lib/$pkgname/defaults/preferences/vendor.js"
+ _vendorjs="$pkgdir/usr/lib/$pkgname/defaults/preferences/vendor.js"
+ install -Dm644 /dev/stdin "$_vendorjs" <<END
+// 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);
- local brandingdir="$srcdir/$pkgname-$_brandingver"
+// Disable Social API for content
+pref("social.remote-install.enabled", false);
+pref("social.toast-notifications.enabled", false);
- # Install Icedove menu icon
- install -Dm644 $brandingdir/$pkgname.xpm "$pkgdir/usr/share/pixmaps/$pkgname.xpm"
+// Make sure that whitelisted and directory installs are empty
+pref("social.whitelist", "");
+pref("social.directories", "");
+
+// Disable the GeoLocation API for content
+pref("geo.enabled", false);
+
+// Pointing the "Help -> What's new" menu entry to mozilla.debian.net
+pref("mailnews.start_page.override_url", "http://wiki.debian.org/Icedove/WhatsNew45");
+END
+
+ _distini="$pkgdir/usr/lib/$pkgname/distribution/distribution.ini"
+ install -Dm644 /dev/stdin "$_distini" <<END
+[Global]
+id=parabola
+version=1.0
+about=Icedove for Parabola GNU/Linux-libre
+
+[Preferences]
+app.distributor=parabola
+app.distributor.channel=$pkgname
+app.partner.parabola=parabola
+END
- # Install Icedove icons
- local icondir="$pkgdir/usr/share/icons/hicolor"
for i in 16 22 24 32 48 64 128 256; do
- install -Dm644 "$brandingdir/app-icons/$pkgname$i.png" \
- "$icondir/${i}x${i}/apps/$pkgname.png"
+ install -Dm644 "$srcdir/$pkgname-$_bver/app-icons/$pkgname$i.png" \
+ "$pkgdir/usr/share/icons/hicolor/${i}x${i}/apps/$pkgname.png"
done
- install -Dm644 "$brandingdir/app-icons/${pkgname}big.svg" \
- "$icondir/scalable/apps/$pkgname.svg"
+ install -Dm644 "$srcdir/$pkgname-$_bver/app-icons/${pkgname}big.svg" \
+ "$pkgdir/usr/share/icons/hicolor/scalable/apps/$pkgname.svg"
+ install -Dm644 $srcdir/$pkgname-$_bver/$pkgname.xpm \
+ "$pkgdir/usr/share/pixmaps/$pkgname.xpm"
+
- # Install Icedove desktop
- install -d "$pkgdir/usr/share/applications"
- install -m644 "$srcdir/$pkgname.desktop" \
- "$pkgdir/usr/share/applications"
+ install -Dm644 ../$pkgname.desktop \
+ "$pkgdir/usr/share/applications/$pkgname.desktop"
# Use system-provided dictionaries
- rm -rf "$pkgdir/usr/lib/$pkgname/"{dictionaries,hyphenation}
- ln -s /usr/share/hunspell "$pkgdir/usr/lib/$pkgname/dictionaries"
- ln -s /usr/share/hyphen "$pkgdir/usr/lib/$pkgname/hyphenation"
+ rm -r "$pkgdir"/usr/lib/$pkgname/dictionaries
+ ln -Ts /usr/share/hunspell "$pkgdir/usr/lib/$pkgname/dictionaries"
+ ln -Ts /usr/share/hyphen "$pkgdir/usr/lib/$pkgname/hyphenation"
+
+ # Install a wrapper to avoid confusion about binary path
+ install -Dm755 /dev/stdin "$pkgdir/usr/bin/$pkgname" <<END
+#!/bin/sh
+exec /usr/lib/$pkgname/thunderbird "\$@"
+END
- # Replace duplicate binary with symlink
+ # Replace duplicate binary with wrapper
# https://bugzilla.mozilla.org/show_bug.cgi?id=658850
- ln -sf $pkgname "$pkgdir/usr/lib/$pkgname/$pkgname-bin"
+ ln -srf "$pkgdir/usr/bin/$pkgname" \
+ "$pkgdir/usr/lib/$pkgname/thunderbird-bin"
}
diff --git a/libre/icedove/changing-the-default-search-engine.patch b/libre/icedove/changing-the-default-search-engine.patch
deleted file mode 100644
index c30366ad9..000000000
--- a/libre/icedove/changing-the-default-search-engine.patch
+++ /dev/null
@@ -1,40 +0,0 @@
-diff --git a/mail/locales/en-US/chrome/messenger-region/region.properties b/mail/locales/en-US/chrome/messenger-region/region.properties
-index fcc870d..f810450 100644
---- a/mail/locales/en-US/chrome/messenger-region/region.properties
-+++ b/mail/locales/en-US/chrome/messenger-region/region.properties
-@@ -3,12 +3,12 @@
- # file, You can obtain one at http://mozilla.org/MPL/2.0/.
-
- # Default search engine
--browser.search.defaultenginename=Bing
-+browser.search.defaultenginename=searx
-
- # Search engine order (order displayed in the search bar dropdown)s
--browser.search.order.1=Bing
--browser.search.order.2=Yahoo
--browser.search.order.3=
-+browser.search.order.1=searx
-+browser.search.order.2=DuckDuckGo HTML
-+browser.search.order.3=DuckDuckGo Lite
-
- # To make mapit buttons to disappear in the addressbook, specify empty string. For example:
- # mail.addr_book.mapit_url.format=
-@@ -23,14 +23,12 @@ browser.search.order.3=
- # @ZI == zip code
- # @CO == country
- # Default map service:
--mail.addr_book.mapit_url.format=https://maps.google.com/maps?q=@A1%20@A2%20@CI%20@ST%20@ZI%20@CO
-+mail.addr_book.mapit_url.format=https://nominatim.openstreetmap.org/search.php?polygon=1&q=@A1%2C@A2%2C@CI%2C@ST%2C@ZI%2C@CO
- # List of available map services (up to 5 can be defined here):
--mail.addr_book.mapit_url.1.name=Google Maps
--mail.addr_book.mapit_url.1.format=https://maps.google.com/maps?q=@A1%20@A2%20@CI%20@ST%20@ZI%20@CO
--mail.addr_book.mapit_url.2.name=OpenStreetMap
--mail.addr_book.mapit_url.2.format=https://nominatim.openstreetmap.org/search.php?polygon=1&q=@A1%2C@A2%2C@CI%2C@ST%2C@ZI%2C@CO
-+mail.addr_book.mapit_url.1.name=OpenStreetMap
-+mail.addr_book.mapit_url.1.format=https://nominatim.openstreetmap.org/search.php?polygon=1&q=@A1%2C@A2%2C@CI%2C@ST%2C@ZI%2C@CO
-
--mailnews.messageid_browser.url=http://groups.google.com/search?as_umsgid=%mid
-+mailnews.messageid_browser.url=
-
- # Recognize non-standard versions of "Re:" in subjects from localized versions of MS Outlook et al.
- # Specify a comma-separated list without spaces. For example: mailnews.localizedRe=AW,SV
diff --git a/libre/icedove/fix-wifi-scanner.diff b/libre/icedove/fix-wifi-scanner.diff
new file mode 100644
index 000000000..f8fdd6c42
--- /dev/null
+++ b/libre/icedove/fix-wifi-scanner.diff
@@ -0,0 +1,16 @@
+ netwerk/wifi/nsWifiScannerDBus.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git c/netwerk/wifi/nsWifiScannerDBus.cpp i/netwerk/wifi/nsWifiScannerDBus.cpp
+index 182553e18fa6e104..6fa0a0b023d3e45f 100644
+--- c/netwerk/wifi/nsWifiScannerDBus.cpp
++++ i/netwerk/wifi/nsWifiScannerDBus.cpp
+@@ -62,7 +62,7 @@ nsWifiScannerDBus::SendMessage(const char* aInterface,
+ return NS_ERROR_FAILURE;
+ }
+ } else if (!strcmp(aFuncCall, "GetAll")) {
+- const char* param = "";
++ const char* param = "org.freedesktop.NetworkManager.AccessPoint";
+ if (!dbus_message_iter_append_basic(&argsIter, DBUS_TYPE_STRING, &param)) {
+ return NS_ERROR_FAILURE;
+ }
diff --git a/libre/icedove/glibc-2.26-fix.diff b/libre/icedove/glibc-2.26-fix.diff
new file mode 100644
index 000000000..48733ab89
--- /dev/null
+++ b/libre/icedove/glibc-2.26-fix.diff
@@ -0,0 +1,258 @@
+From 6a0b7c8ecf0734ba1bcdccf8e0ee97e721fd5420 Mon Sep 17 00:00:00 2001
+Message-Id: <6a0b7c8ecf0734ba1bcdccf8e0ee97e721fd5420.1505113337.git.jan.steffens@gmail.com>
+From: =?UTF-8?q?Emilio=20Cobos=20=C3=81lvarez?= <emilio@crisal.io>
+Date: Sat, 19 Aug 2017 20:14:25 +0200
+Subject: [PATCH] Fix use of struct ucontext (squash 2 commits)
+
+Needed for building with glibc 2.26.
+
+Bug 1385667: Use ucontext_t consistently in breakpad-client. r=ted
+MozReview-Commit-ID: AJhzJdNXP0f
+
+Bug 1394149: Fix remaining uses of ucontext in breakpad-client. r=ted
+MozReview-Commit-ID: 5tP7fXsI7dQ
+---
+ .../linux/dump_writer_common/ucontext_reader.cc | 30 +++++++++++-----------
+ .../linux/dump_writer_common/ucontext_reader.h | 10 ++++----
+ .../linux/handler/exception_handler.cc | 10 ++++----
+ .../linux/handler/exception_handler.h | 2 +-
+ .../linux/microdump_writer/microdump_writer.cc | 2 +-
+ .../linux/minidump_writer/minidump_writer.cc | 2 +-
+ 6 files changed, 28 insertions(+), 28 deletions(-)
+
+diff --git a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc
+index 999960912e459e1b..303c0ebd32b663c4 100644
+--- a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc
++++ b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.cc
+@@ -40,15 +40,15 @@ namespace google_breakpad {
+
+ #if defined(__i386__)
+
+-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
++uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
+ return uc->uc_mcontext.gregs[REG_ESP];
+ }
+
+-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
++uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
+ return uc->uc_mcontext.gregs[REG_EIP];
+ }
+
+-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
++void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
+ const struct _libc_fpstate* fp) {
+ const greg_t* regs = uc->uc_mcontext.gregs;
+
+@@ -88,15 +88,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
+
+ #elif defined(__x86_64)
+
+-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
++uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
+ return uc->uc_mcontext.gregs[REG_RSP];
+ }
+
+-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
++uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
+ return uc->uc_mcontext.gregs[REG_RIP];
+ }
+
+-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
++void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
+ const struct _libc_fpstate* fpregs) {
+ const greg_t* regs = uc->uc_mcontext.gregs;
+
+@@ -145,15 +145,15 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
+
+ #elif defined(__ARM_EABI__)
+
+-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
++uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
+ return uc->uc_mcontext.arm_sp;
+ }
+
+-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
++uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
+ return uc->uc_mcontext.arm_pc;
+ }
+
+-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
++void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
+ out->context_flags = MD_CONTEXT_ARM_FULL;
+
+ out->iregs[0] = uc->uc_mcontext.arm_r0;
+@@ -184,41 +184,41 @@ void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
+
+ #elif defined(__aarch64__)
+
+-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
++uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
+ return uc->uc_mcontext.sp;
+ }
+
+-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
++uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
+ return uc->uc_mcontext.pc;
+ }
+
+-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc,
++void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
+ const struct fpsimd_context* fpregs) {
+ out->context_flags = MD_CONTEXT_ARM64_FULL;
+
+ out->cpsr = static_cast<uint32_t>(uc->uc_mcontext.pstate);
+ for (int i = 0; i < MD_CONTEXT_ARM64_REG_SP; ++i)
+ out->iregs[i] = uc->uc_mcontext.regs[i];
+ out->iregs[MD_CONTEXT_ARM64_REG_SP] = uc->uc_mcontext.sp;
+ out->iregs[MD_CONTEXT_ARM64_REG_PC] = uc->uc_mcontext.pc;
+
+ out->float_save.fpsr = fpregs->fpsr;
+ out->float_save.fpcr = fpregs->fpcr;
+ my_memcpy(&out->float_save.regs, &fpregs->vregs,
+ MD_FLOATINGSAVEAREA_ARM64_FPR_COUNT * 16);
+ }
+
+ #elif defined(__mips__)
+
+-uintptr_t UContextReader::GetStackPointer(const struct ucontext* uc) {
++uintptr_t UContextReader::GetStackPointer(const ucontext_t* uc) {
+ return uc->uc_mcontext.gregs[MD_CONTEXT_MIPS_REG_SP];
+ }
+
+-uintptr_t UContextReader::GetInstructionPointer(const struct ucontext* uc) {
++uintptr_t UContextReader::GetInstructionPointer(const ucontext_t* uc) {
+ return uc->uc_mcontext.pc;
+ }
+
+-void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext *uc) {
++void UContextReader::FillCPUContext(RawContextCPU *out, const ucontext_t *uc) {
+ #if _MIPS_SIM == _ABI64
+ out->context_flags = MD_CONTEXT_MIPS64_FULL;
+ #elif _MIPS_SIM == _ABIO32
+diff --git a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h
+index c533e28ba7441e83..039752a2dfb6e589 100644
+--- a/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h
++++ b/toolkit/crashreporter/breakpad-client/linux/dump_writer_common/ucontext_reader.h
+@@ -41,21 +41,21 @@ namespace google_breakpad {
+
+ // Wraps platform-dependent implementations of accessors to ucontext structs.
+ struct UContextReader {
+- static uintptr_t GetStackPointer(const struct ucontext* uc);
++ static uintptr_t GetStackPointer(const ucontext_t* uc);
+
+- static uintptr_t GetInstructionPointer(const struct ucontext* uc);
++ static uintptr_t GetInstructionPointer(const ucontext_t* uc);
+
+ // Juggle a arch-specific ucontext into a minidump format
+ // out: the minidump structure
+ // info: the collection of register structures.
+ #if defined(__i386__) || defined(__x86_64)
+- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
++ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
+ const struct _libc_fpstate* fp);
+ #elif defined(__aarch64__)
+- static void FillCPUContext(RawContextCPU *out, const ucontext *uc,
++ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc,
+ const struct fpsimd_context* fpregs);
+ #else
+- static void FillCPUContext(RawContextCPU *out, const ucontext *uc);
++ static void FillCPUContext(RawContextCPU *out, const ucontext_t *uc);
+ #endif
+ };
+
+diff --git a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc
+index 71a51a763938e39d..12df9bc96ec45fea 100644
+--- a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc
++++ b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.cc
+@@ -439,44 +439,44 @@ bool ExceptionHandler::HandleSignal(int sig, siginfo_t* info, void* uc) {
+ // Fill in all the holes in the struct to make Valgrind happy.
+ memset(&g_crash_context_, 0, sizeof(g_crash_context_));
+ memcpy(&g_crash_context_.siginfo, info, sizeof(siginfo_t));
+- memcpy(&g_crash_context_.context, uc, sizeof(struct ucontext));
++ memcpy(&g_crash_context_.context, uc, sizeof(ucontext_t));
+ #if defined(__aarch64__)
+- struct ucontext* uc_ptr = (struct ucontext*)uc;
++ ucontext_t* uc_ptr = (ucontext_t*)uc;
+ struct fpsimd_context* fp_ptr =
+ (struct fpsimd_context*)&uc_ptr->uc_mcontext.__reserved;
+ if (fp_ptr->head.magic == FPSIMD_MAGIC) {
+ memcpy(&g_crash_context_.float_state, fp_ptr,
+ sizeof(g_crash_context_.float_state));
+ }
+ #elif !defined(__ARM_EABI__) && !defined(__mips__)
+ // FP state is not part of user ABI on ARM Linux.
+- // In case of MIPS Linux FP state is already part of struct ucontext
++ // In case of MIPS Linux FP state is already part of ucontext_t
+ // and 'float_state' is not a member of CrashContext.
+- struct ucontext* uc_ptr = (struct ucontext*)uc;
++ ucontext_t* uc_ptr = (ucontext_t*)uc;
+ if (uc_ptr->uc_mcontext.fpregs) {
+ memcpy(&g_crash_context_.float_state, uc_ptr->uc_mcontext.fpregs,
+ sizeof(g_crash_context_.float_state));
+ }
+ #endif
+ g_crash_context_.tid = syscall(__NR_gettid);
+ if (crash_handler_ != NULL) {
+ if (crash_handler_(&g_crash_context_, sizeof(g_crash_context_),
+ callback_context_)) {
+ return true;
+ }
+ }
+ return GenerateDump(&g_crash_context_);
+ }
+
+ // This is a public interface to HandleSignal that allows the client to
+ // generate a crash dump. This function may run in a compromised context.
+ bool ExceptionHandler::SimulateSignalDelivery(int sig) {
+ siginfo_t siginfo = {};
+ // Mimic a trusted signal to allow tracing the process (see
+ // ExceptionHandler::HandleSignal().
+ siginfo.si_code = SI_USER;
+ siginfo.si_pid = getpid();
+- struct ucontext context;
++ ucontext_t context;
+ getcontext(&context);
+ return HandleSignal(sig, &siginfo, &context);
+ }
+diff --git a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h
+index 711586fec7ddae59..be1880170e2826b0 100644
+--- a/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h
++++ b/toolkit/crashreporter/breakpad-client/linux/handler/exception_handler.h
+@@ -191,7 +191,7 @@ class ExceptionHandler {
+ struct CrashContext {
+ siginfo_t siginfo;
+ pid_t tid; // the crashing thread.
+- struct ucontext context;
++ ucontext_t context;
+ #if !defined(__ARM_EABI__) && !defined(__mips__)
+ // #ifdef this out because FP state is not part of user ABI for Linux ARM.
+ // In case of MIPS Linux FP state is already part of struct
+diff --git a/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc b/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc
+index ff20bf36584c876b..a0b90e08fc5f0cff 100644
+--- a/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc
++++ b/toolkit/crashreporter/breakpad-client/linux/microdump_writer/microdump_writer.cc
+@@ -571,7 +571,7 @@ class MicrodumpWriter {
+
+ void* Alloc(unsigned bytes) { return dumper_->allocator()->Alloc(bytes); }
+
+- const struct ucontext* const ucontext_;
++ const ucontext_t* const ucontext_;
+ #if !defined(__ARM_EABI__) && !defined(__mips__)
+ const google_breakpad::fpstate_t* const float_state_;
+ #endif
+diff --git a/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc b/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc
+index 0650bb95c179464a..6b5304bcd605ca3a 100644
+--- a/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc
++++ b/toolkit/crashreporter/breakpad-client/linux/minidump_writer/minidump_writer.cc
+@@ -1247,7 +1247,7 @@ class MinidumpWriter {
+ const int fd_; // File descriptor where the minidum should be written.
+ const char* path_; // Path to the file where the minidum should be written.
+
+- const struct ucontext* const ucontext_; // also from the signal handler
++ const ucontext_t* const ucontext_; // also from the signal handler
+ #if !defined(__ARM_EABI__) && !defined(__mips__)
+ const google_breakpad::fpstate_t* const float_state_; // ditto
+ #endif
+--
+2.14.1
+
diff --git a/libre/icedove/icedove-install-dir.patch b/libre/icedove/icedove-install-dir.patch
index ac58bc982..0e3ba7f58 100644
--- a/libre/icedove/icedove-install-dir.patch
+++ b/libre/icedove/icedove-install-dir.patch
@@ -1,5 +1,6 @@
---- a/mozilla/config/baseconfig.mk
-+++ b/mozilla/config/baseconfig.mk
+diff -upr comm-esr31.orig/mozilla/config/baseconfig.mk comm-esr31/mozilla/config/baseconfig.mk
+--- comm-esr31.orig/mozilla/config/baseconfig.mk 2014-07-22 09:44:22.000000000 +0300
++++ comm-esr31/mozilla/config/baseconfig.mk 2014-07-22 09:46:45.000000000 +0300
@@ -4,7 +4,7 @@
# whether a normal build is happening or whether the check is running.
includedir := $(includedir)/$(MOZ_APP_NAME)-$(MOZ_APP_VERSION)
diff --git a/libre/icedove/icedove.desktop b/libre/icedove/icedove.desktop
index 1ba43e0b3..df3502947 100644
--- a/libre/icedove/icedove.desktop
+++ b/libre/icedove/icedove.desktop
@@ -55,7 +55,7 @@ GenericName[uk]=Поштова програма
GenericName[vi]=Phần mềm khách quản lý thư điện tử
GenericName[zh_CN]=邮件新闻客户端
GenericName[zh_TW]=郵件用戶端
-Exec=icedove %u
+Exec=/usr/lib/icedove/icedove %u
Terminal=false
Type=Application
Icon=icedove
@@ -116,7 +116,7 @@ Name[uk]=Написати нового листа
Name[vi]=Viết thư mới
Name[zh_CN]=编写新消息
Name[zh_TW]=寫一封新訊息
-Exec=icedove -compose
+Exec=/usr/lib/icedove/icedove -compose
[Desktop Action OpenAddressBook]
Name=Open address book
@@ -170,4 +170,4 @@ Name[uk]=Відкрити адресну книгу
Name[vi]=Mở sổ địa chỉ
Name[zh_CN]=打开通讯录
Name[zh_TW]=開啟通訊錄
-Exec=icedove -addressbook
+Exec=/usr/lib/icedove/icedove -addressbook
diff --git a/libre/icedove/icedove.install b/libre/icedove/icedove.install
deleted file mode 100644
index 4d4a283db..000000000
--- a/libre/icedove/icedove.install
+++ /dev/null
@@ -1,12 +0,0 @@
-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/libre/icedove/libre-searchengines.patch b/libre/icedove/libre.patch
index 181655d4e..e601388bb 100644
--- a/libre/icedove/libre-searchengines.patch
+++ b/libre/icedove/libre.patch
@@ -361,3 +361,43 @@
]
}
}
+diff --git a/mail/locales/en-US/chrome/messenger-region/region.properties b/mail/locales/en-US/chrome/messenger-region/region.properties
+index fcc870d..f810450 100644
+--- a/mail/locales/en-US/chrome/messenger-region/region.properties
++++ b/mail/locales/en-US/chrome/messenger-region/region.properties
+@@ -3,12 +3,12 @@
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+ # Default search engine
+-browser.search.defaultenginename=Bing
++browser.search.defaultenginename=searx
+
+ # Search engine order (order displayed in the search bar dropdown)s
+-browser.search.order.1=Bing
+-browser.search.order.2=Yahoo
+-browser.search.order.3=
++browser.search.order.1=searx
++browser.search.order.2=DuckDuckGo HTML
++browser.search.order.3=DuckDuckGo Lite
+
+ # To make mapit buttons to disappear in the addressbook, specify empty string. For example:
+ # mail.addr_book.mapit_url.format=
+@@ -23,14 +23,12 @@ browser.search.order.3=
+ # @ZI == zip code
+ # @CO == country
+ # Default map service:
+-mail.addr_book.mapit_url.format=https://maps.google.com/maps?q=@A1%20@A2%20@CI%20@ST%20@ZI%20@CO
++mail.addr_book.mapit_url.format=https://nominatim.openstreetmap.org/search.php?polygon=1&q=@A1%2C@A2%2C@CI%2C@ST%2C@ZI%2C@CO
+ # List of available map services (up to 5 can be defined here):
+-mail.addr_book.mapit_url.1.name=Google Maps
+-mail.addr_book.mapit_url.1.format=https://maps.google.com/maps?q=@A1%20@A2%20@CI%20@ST%20@ZI%20@CO
+-mail.addr_book.mapit_url.2.name=OpenStreetMap
+-mail.addr_book.mapit_url.2.format=https://nominatim.openstreetmap.org/search.php?polygon=1&q=@A1%2C@A2%2C@CI%2C@ST%2C@ZI%2C@CO
++mail.addr_book.mapit_url.1.name=OpenStreetMap
++mail.addr_book.mapit_url.1.format=https://nominatim.openstreetmap.org/search.php?polygon=1&q=@A1%2C@A2%2C@CI%2C@ST%2C@ZI%2C@CO
+
+-mailnews.messageid_browser.url=http://groups.google.com/search?as_umsgid=%mid
++mailnews.messageid_browser.url=
+
+ # Recognize non-standard versions of "Re:" in subjects from localized versions of MS Outlook et al.
+ # Specify a comma-separated list without spaces. For example: mailnews.localizedRe=AW,SV
diff --git a/libre/icedove/mozconfig b/libre/icedove/mozconfig
deleted file mode 100644
index 54decf725..000000000
--- a/libre/icedove/mozconfig
+++ /dev/null
@@ -1,44 +0,0 @@
-ac_add_options --enable-application=mail
-
-ac_add_options --prefix=/usr
-ac_add_options --enable-release
-ac_add_options --enable-gold
-ac_add_options --enable-pie
-ac_add_options --enable-optimize="-O2"
-ac_add_options --enable-rust
-
-# 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
-ac_add_options --with-system-icu
-ac_add_options --with-system-jpeg
-ac_add_options --with-system-zlib
-ac_add_options --with-system-bz2
-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-pixman
-
-# Features
-ac_add_options --enable-startup-notification
-ac_add_options --enable-alsa
-ac_add_options --disable-updater
-ac_add_options --disable-crashreporter
-ac_add_options --enable-calendar
-
-ac_add_options --disable-tests
-
-STRIP_FLAGS="--strip-debug"
-
-# Parabola features
-ac_add_options --with-distribution-id=nu.parabola
-ac_add_options --disable-safe-browsing
-ac_add_options --disable-url-classifier
-ac_add_options --disable-eme
-
-# vim:set ft=sh:
diff --git a/libre/icedove/mp4parse-bindings.patch b/libre/icedove/mp4parse-bindings.patch
deleted file mode 100644
index d0a2da27c..000000000
--- a/libre/icedove/mp4parse-bindings.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/mozilla/media/libstagefright/binding/mp4parse_capi/Cargo.toml
-+++ b/mozilla/media/libstagefright/binding/mp4parse_capi/Cargo.toml
-@@ -18,6 +18,8 @@ exclude = [
- "*.mp4",
- ]
-
-+build = false
-+
- [dependencies]
- byteorder = "1.0.0"
- "mp4parse" = {version = "0.6.0", path = "../mp4parse"}
diff --git a/libre/icedove/no-crmf.patch b/libre/icedove/no-crmf.diff
index 73e545de0..4d74a1af2 100644
--- a/libre/icedove/no-crmf.patch
+++ b/libre/icedove/no-crmf.diff
@@ -12,7 +12,7 @@ diff -u -rN thunderbird-52.1.1/mozilla/config/external/nss/crmf/moz.build thunde
diff -u -rN thunderbird-52.1.1/mozilla/old-configure thunderbird-52.1.1-nocrmf/mozilla/old-configure
--- thunderbird-52.1.1/mozilla/old-configure 2017-05-09 23:35:35.000000000 +0200
+++ thunderbird-52.1.1-nocrmf/mozilla/old-configure 2017-06-14 01:50:28.726873231 +0200
-@@ -10692,9 +10692,7 @@
+@@ -10693,9 +10693,7 @@
fi
@@ -27,7 +27,7 @@ diff -u -rN thunderbird-52.1.1/mozilla/old-configure.in thunderbird-52.1.1-nocrm
--- thunderbird-52.1.1/mozilla/old-configure.in 2017-05-09 23:35:22.000000000 +0200
+++ thunderbird-52.1.1-nocrmf/mozilla/old-configure.in 2017-06-14 01:50:50.953507079 +0200
@@ -2126,9 +2126,7 @@
- AM_PATH_NSS(3.28.4, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])])
+ AM_PATH_NSS(3.28.6, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])])
fi
-if test -n "$MOZ_SYSTEM_NSS"; then
diff --git a/libre/icedove/no-neon.patch b/libre/icedove/no-neon.patch
deleted file mode 100644
index af8bf198d..000000000
--- a/libre/icedove/no-neon.patch
+++ /dev/null
@@ -1,96 +0,0 @@
---- mozilla/configure.orig 2016-04-19 12:42:57.280811615 -0600
-+++ mozilla/configure 2016-04-19 12:44:20.697690476 -0600
-@@ -7389,14 +7389,7 @@
- rm -f conftest*
- echo "$ac_t"""$result"" 1>&6
- if test "$result" = "yes"; then
-- cat >> confdefs.pytmp <<\EOF
-- (''' HAVE_ARM_SIMD ''', ' 1 ')
--EOF
--cat >> confdefs.h <<\EOF
--#define HAVE_ARM_SIMD 1
--EOF
--
-- HAVE_ARM_SIMD=1
-+ HAVE_ARM_SIMD=
- fi
-
- echo $ac_n "checking ARM version support in compiler""... $ac_c" 1>&6
-@@ -7428,27 +7421,13 @@
- rm -f conftest*
- echo "$ac_t"""$result"" 1>&6
- if test "$result" = "yes"; then
-- cat >> confdefs.pytmp <<\EOF
-- (''' HAVE_ARM_NEON ''', ' 1 ')
--EOF
--cat >> confdefs.h <<\EOF
--#define HAVE_ARM_NEON 1
--EOF
--
-- HAVE_ARM_NEON=1
-+ HAVE_ARM_NEON=
-
- if test -n "$ARM_ARCH"; then
- if test "$ARM_ARCH" -lt 7; then
- BUILD_ARM_NEON=
- else
-- cat >> confdefs.pytmp <<\EOF
-- (''' BUILD_ARM_NEON ''', ' 1 ')
--EOF
--cat >> confdefs.h <<\EOF
--#define BUILD_ARM_NEON 1
--EOF
--
-- BUILD_ARM_NEON=1
-+ BUILD_ARM_NEON=
- fi
- fi
- fi
---- mozilla/js/src/configure.orig 2016-04-07 15:33:39.000000000 -0600
-+++ mozilla/js/src/configure 2016-04-19 12:44:20.697690476 -0600
-@@ -6578,14 +6578,7 @@
- rm -f conftest*
- echo "$ac_t"""$result"" 1>&6
- if test "$result" = "yes"; then
-- cat >> confdefs.pytmp <<\EOF
-- (''' HAVE_ARM_SIMD ''', ' 1 ')
--EOF
--cat >> confdefs.h <<\EOF
--#define HAVE_ARM_SIMD 1
--EOF
--
-- HAVE_ARM_SIMD=1
-+ HAVE_ARM_SIMD=
- fi
-
- echo $ac_n "checking ARM version support in compiler""... $ac_c" 1>&6
-@@ -6617,27 +6610,13 @@
- rm -f conftest*
- echo "$ac_t"""$result"" 1>&6
- if test "$result" = "yes"; then
-- cat >> confdefs.pytmp <<\EOF
-- (''' HAVE_ARM_NEON ''', ' 1 ')
--EOF
--cat >> confdefs.h <<\EOF
--#define HAVE_ARM_NEON 1
--EOF
--
-- HAVE_ARM_NEON=1
-+ HAVE_ARM_NEON=
-
- if test -n "$ARM_ARCH"; then
- if test "$ARM_ARCH" -lt 7; then
- BUILD_ARM_NEON=
- else
-- cat >> confdefs.pytmp <<\EOF
-- (''' BUILD_ARM_NEON ''', ' 1 ')
--EOF
--cat >> confdefs.h <<\EOF
--#define BUILD_ARM_NEON 1
--EOF
--
-- BUILD_ARM_NEON=1
-+ BUILD_ARM_NEON=
- fi
- fi
- fi
diff --git a/libre/icedove/rust-i686.patch b/libre/icedove/rust-i686.patch
new file mode 100644
index 000000000..85512e143
--- /dev/null
+++ b/libre/icedove/rust-i686.patch
@@ -0,0 +1,16 @@
+ build/moz.configure/rust.configure | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git c/build/moz.configure/rust.configure i/build/moz.configure/rust.configure
+index cd86b24153debb1b..44911715e25d95e3 100644
+--- c/build/moz.configure/rust.configure
++++ i/build/moz.configure/rust.configure
+@@ -81,7 +81,7 @@ def rust_target(rust_compiler, rustc, target, cross_compiling):
+ # OpenBSD
+ ('x86_64', 'OpenBSD'): 'x86_64-unknown-openbsd',
+ # Linux
+- ('x86', 'Linux'): 'i586-unknown-linux-gnu',
++ ('x86', 'Linux'): 'i686-unknown-linux-gnu',
+ # Linux
+ ('x86_64', 'Linux'): 'x86_64-unknown-linux-gnu',
+ # OS X and iOS
diff --git a/libre/icedove/rust-target-i586-to-i686.patch b/libre/icedove/rust-target-i586-to-i686.patch
deleted file mode 100644
index f22f4fa0f..000000000
--- a/libre/icedove/rust-target-i586-to-i686.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/mozilla/build/moz.configure/rust.configure
-+++ b/mozilla/build/moz.configure/rust.configure
-@@ -105,7 +105,7 @@ def rust_target(rust_compiler, rustc, ta
- # OpenBSD
- ('x86_64', 'OpenBSD'): 'x86_64-unknown-openbsd',
- # Linux
-- ('x86', 'Linux'): 'i586-unknown-linux-gnu',
-+ ('x86', 'Linux'): 'i686-unknown-linux-gnu',
- # Linux
- ('x86_64', 'Linux'): 'x86_64-unknown-linux-gnu',
- # OS X and iOS
diff --git a/libre/icedove/vendor.js b/libre/icedove/vendor.js
deleted file mode 100644
index 2da68d2bb..000000000
--- a/libre/icedove/vendor.js
+++ /dev/null
@@ -1,23 +0,0 @@
-// 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);
-
-// Disable Social API for content
-pref("social.remote-install.enabled", false);
-pref("social.toast-notifications.enabled", false);
-
-// Make sure that whitelisted and directory installs are empty
-pref("social.whitelist", "");
-pref("social.directories", "");
-
-// Disable the GeoLocation API for content
-pref("geo.enabled", false);
-
-// Pointing the "Help -> What's new" menu entry to mozilla.debian.net
-pref("mailnews.start_page.override_url", "http://wiki.debian.org/Icedove/WhatsNew45");