From fdf75b5010e127b0263c976d0abbad99ffc9b8c0 Mon Sep 17 00:00:00 2001
From: Kevin Mihelich <kevin@archlinuxarm.org>
Date: Sun, 20 Mar 2016 00:38:09 +0000
Subject: [PATCH] extra/firefox to 45.0.1-1

---
 extra/firefox/PKGBUILD           | 10 +++++--
 extra/firefox/no-libnotify.patch | 51 ++++++++++++++++++++++++++++++++
 2 files changed, 59 insertions(+), 2 deletions(-)
 create mode 100644 extra/firefox/no-libnotify.patch

diff --git a/extra/firefox/PKGBUILD b/extra/firefox/PKGBUILD
index a17367b18..803744c9e 100644
--- a/extra/firefox/PKGBUILD
+++ b/extra/firefox/PKGBUILD
@@ -9,7 +9,7 @@
 highmem=1
 
 pkgname=firefox
-pkgver=45.0
+pkgver=45.0.1
 pkgrel=1
 pkgdesc="Standalone web browser from mozilla.org"
 arch=('i686' 'x86_64')
@@ -31,14 +31,16 @@ source=(https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/$pkgver/source/
         vendor.js
         firefox-symbolic.svg
         firefox-fixed-loading-icon.png
+        no-libnotify.patch
         no-neon.patch)
-sha256sums=('36ab0f09b1b1df071a8aafa673c6286d99c18dc06cecbb70d1bb2021fbf379f1'
+sha256sums=('d1814ac6d8cd687696bd0d98da3bb525f6df11fe655e0d668742b21fca57d9c8'
             '9011ffcd6eb2868d0363c216d0b28faf64bb746e8de200726a6ca7013a99106e'
             'c202e5e18da1eeddd2e1d81cb3436813f11e44585ca7357c4c5f1bddd4bec826'
             'd86e41d87363656ee62e12543e2f5181aadcff448e406ef3218e91865ae775cd'
             '4b50e9aec03432e21b44d18c4c97b2630bace606b033f7d556c9d3e3eb0f4fa4'
             'a2474b32b9b2d7e0fb53a4c89715507ad1c194bef77713d798fa39d507def9e9'
             '68e3a5b47c6d175cc95b98b069a15205f027cab83af9e075818d38610feb6213'
+            'e4ebdd14096d177d264a7993dbd5df46463605ff45f783732c26d30b9caa53a7'	
             '6d0c1c9ca28b20d206ce24ca84f4d4e3f5d062a2e9cb7445fcb6c2cfea959b4a'
             'cbd14ac4839062f4437d1db7cfd5fb9aaadb6786dc63612b219106e01000aafd')
 validpgpkeys=('2B90598A745E992F315E22C58AB132963A06537A')
@@ -65,6 +67,10 @@ prepare() {
   cp ../mozconfig .mozconfig
   patch -Np1 -i ../firefox-install-dir.patch
 
+  # Notifications with libnotify are broken
+  # https://bugzilla.mozilla.org/show_bug.cgi?id=1236150
+  patch -Np1 -i ../no-libnotify.patch
+
   echo -n "$_google_api_key" >google-api-key
   echo "ac_add_options --with-google-api-keyfile=\"$PWD/google-api-key\"" >>.mozconfig
 
diff --git a/extra/firefox/no-libnotify.patch b/extra/firefox/no-libnotify.patch
new file mode 100644
index 000000000..8d5845743
--- /dev/null
+++ b/extra/firefox/no-libnotify.patch
@@ -0,0 +1,51 @@
+diff --git i/toolkit/system/gnome/moz.build w/toolkit/system/gnome/moz.build
+index 0ecde07..206d6eb 100644
+--- i/toolkit/system/gnome/moz.build
++++ w/toolkit/system/gnome/moz.build
+@@ -5,9 +5,7 @@
+ # file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ 
+ SOURCES += [
+-    'nsAlertsIconListener.cpp',
+     'nsGnomeModule.cpp',
+-    'nsSystemAlertsService.cpp',
+ ]
+ 
+ if CONFIG['MOZ_ENABLE_GCONF']:
+diff --git i/toolkit/system/gnome/nsGnomeModule.cpp w/toolkit/system/gnome/nsGnomeModule.cpp
+index 6ecebcc..2f193a3 100644
+--- i/toolkit/system/gnome/nsGnomeModule.cpp
++++ w/toolkit/system/gnome/nsGnomeModule.cpp
+@@ -20,8 +20,6 @@ NS_GENERIC_FACTORY_CONSTRUCTOR(nsGIOService)
+ NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsGSettingsService, Init)
+ NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsPackageKitService, Init)
+ #endif
+-#include "nsSystemAlertsService.h"
+-NS_GENERIC_FACTORY_CONSTRUCTOR_INIT(nsSystemAlertsService, Init)
+ 
+ #ifdef MOZ_ENABLE_GCONF
+ NS_DEFINE_NAMED_CID(NS_GCONFSERVICE_CID);
+@@ -31,7 +29,6 @@ NS_DEFINE_NAMED_CID(NS_GIOSERVICE_CID);
+ NS_DEFINE_NAMED_CID(NS_GSETTINGSSERVICE_CID);
+ NS_DEFINE_NAMED_CID(NS_PACKAGEKITSERVICE_CID);
+ #endif
+-NS_DEFINE_NAMED_CID(NS_SYSTEMALERTSSERVICE_CID);
+ 
+ static const mozilla::Module::CIDEntry kGnomeCIDs[] = {
+ #ifdef MOZ_ENABLE_GCONF
+@@ -42,7 +39,6 @@ static const mozilla::Module::CIDEntry kGnomeCIDs[] = {
+   { &kNS_GSETTINGSSERVICE_CID, false, nullptr, nsGSettingsServiceConstructor },
+   { &kNS_PACKAGEKITSERVICE_CID, false, nullptr, nsPackageKitServiceConstructor },
+ #endif
+-  { &kNS_SYSTEMALERTSSERVICE_CID, false, nullptr, nsSystemAlertsServiceConstructor },
+   { nullptr }
+ };
+ 
+@@ -55,7 +51,6 @@ static const mozilla::Module::ContractIDEntry kGnomeContracts[] = {
+   { NS_GSETTINGSSERVICE_CONTRACTID, &kNS_GSETTINGSSERVICE_CID },
+   { NS_PACKAGEKITSERVICE_CONTRACTID, &kNS_PACKAGEKITSERVICE_CID },
+ #endif
+-  { NS_SYSTEMALERTSERVICE_CONTRACTID, &kNS_SYSTEMALERTSSERVICE_CID },
+   { nullptr }
+ };
+