diff --git a/.gitignore b/.gitignore
index 28a9e39..97be128 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,7 @@
 SOURCES/Python-2.7.13.tar.xz
 SOURCES/gtk3-private-3.22.26-1.el6.src.rpm
 SOURCES/libffi-3.0.13-18.el7_3.src.rpm
-SOURCES/lightning-langpacks-60.4.0.tar.xz
-SOURCES/thunderbird-60.4.0.source.tar.xz
-SOURCES/thunderbird-langpacks-60.4.0-20190103.tar.xz
+SOURCES/lightning-langpacks-60.5.0.tar.xz
+SOURCES/thunderbird-60.5.0.source.tar.xz
+SOURCES/thunderbird-langpacks-60.5.0-20190129.tar.xz
 SOURCES/yasm-1.2.0-3.el5.src.rpm
diff --git a/.thunderbird.metadata b/.thunderbird.metadata
index 37bab28..ed1e36b 100644
--- a/.thunderbird.metadata
+++ b/.thunderbird.metadata
@@ -1,7 +1,7 @@
 18a8f30a0356c751b8d0ea6f76e764cab13ee046 SOURCES/Python-2.7.13.tar.xz
 0de63f863b158454b9429234b52ed28a397ec45c SOURCES/gtk3-private-3.22.26-1.el6.src.rpm
 e188ab1a444697bc649e223c28389d82ca94c472 SOURCES/libffi-3.0.13-18.el7_3.src.rpm
-147cffbafb9672855a3a60c276c3f7b80a7a9103 SOURCES/lightning-langpacks-60.4.0.tar.xz
-bcdd2096a0e6cdfb28a8bef384688a03625ce4c5 SOURCES/thunderbird-60.4.0.source.tar.xz
-446f167505f108dea8c647537154a9a804e39223 SOURCES/thunderbird-langpacks-60.4.0-20190103.tar.xz
+530d620727da8a87afd4881d798d107c86924096 SOURCES/lightning-langpacks-60.5.0.tar.xz
+37d847e8f59a1fe84433b74fe9f41a2876eef2be SOURCES/thunderbird-60.5.0.source.tar.xz
+79d23a45e8fb56467421e05255bade9708b0c3bf SOURCES/thunderbird-langpacks-60.5.0-20190129.tar.xz
 77fd30f7ebc12a629a31c1e252cec06af55a71fe SOURCES/yasm-1.2.0-3.el5.src.rpm
diff --git a/README.debrand b/README.debrand
deleted file mode 100644
index 01c46d2..0000000
--- a/README.debrand
+++ /dev/null
@@ -1,2 +0,0 @@
-Warning: This package was configured for automatic debranding, but the changes
-failed to apply.
diff --git a/SOURCES/build-disable-elfhack.patch b/SOURCES/build-disable-elfhack.patch
index 11e6a54..1db9bdf 100644
--- a/SOURCES/build-disable-elfhack.patch
+++ b/SOURCES/build-disable-elfhack.patch
@@ -1,7 +1,7 @@
-diff -up firefox-62.0.2/toolkit/moz.configure.elfhack firefox-62.0.2/toolkit/moz.configure
---- firefox-62.0.2/toolkit/moz.configure.elfhack	2018-09-27 14:32:56.549507561 +0200
-+++ firefox-62.0.2/toolkit/moz.configure	2018-09-27 14:33:08.219532121 +0200
-@@ -1195,7 +1195,7 @@ with only_when(has_elfhack):
+diff -up firefox-60.4.0/toolkit/moz.configure.disable-elfhack firefox-60.4.0/toolkit/moz.configure
+--- firefox-60.4.0/toolkit/moz.configure.disable-elfhack	2019-01-03 14:47:00.566556623 +0100
++++ firefox-60.4.0/toolkit/moz.configure	2019-01-03 14:49:14.243887620 +0100
+@@ -1192,7 +1192,7 @@ with only_when(has_elfhack):
      option('--disable-elf-hack', help='Disable elf hacks')
  
      set_config('USE_ELF_HACK',
diff --git a/SOURCES/build-jit-atomic-always-lucky.patch b/SOURCES/build-jit-atomic-always-lucky.patch
index 31bc5ec..ab99524 100644
--- a/SOURCES/build-jit-atomic-always-lucky.patch
+++ b/SOURCES/build-jit-atomic-always-lucky.patch
@@ -1,30 +1,12 @@
-diff -up firefox-57.0b5/js/src/jit/AtomicOperations.h.jit-atomic-lucky firefox-57.0b5/js/src/jit/AtomicOperations.h
---- firefox-57.0b5/js/src/jit/AtomicOperations.h.jit-atomic-lucky	2017-10-06 12:34:02.338973607 +0200
-+++ firefox-57.0b5/js/src/jit/AtomicOperations.h	2017-10-06 12:38:24.632622215 +0200
-@@ -415,7 +415,7 @@ AtomicOperations::isLockfreeJS(int32_t s
+diff -up firefox-60.5.0/js/src/jit/AtomicOperations.h.jit-atomic-lucky firefox-60.5.0/js/src/jit/AtomicOperations.h
+--- firefox-60.5.0/js/src/jit/AtomicOperations.h.jit-atomic-lucky	2019-01-22 10:20:27.993697161 +0100
++++ firefox-60.5.0/js/src/jit/AtomicOperations.h	2019-01-22 10:23:15.337873762 +0100
+@@ -394,7 +394,7 @@ inline bool AtomicOperations::isLockfree
  #elif defined(__s390__) || defined(__s390x__)
- # include "jit/none/AtomicOperations-feeling-lucky.h"
+ #include "jit/none/AtomicOperations-feeling-lucky.h"
  #else
--# error "No AtomicOperations support provided for this platform"
-+# include "jit/none/AtomicOperations-feeling-lucky.h"
+-#error "No AtomicOperations support provided for this platform"
++#include "jit/none/AtomicOperations-feeling-lucky.h"
  #endif
  
- #endif // jit_AtomicOperations_h
-diff -up firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h.jit-atomic-lucky firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h
---- firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h.jit-atomic-lucky	2017-09-19 06:18:28.000000000 +0200
-+++ firefox-57.0b5/js/src/jit/none/AtomicOperations-feeling-lucky.h	2017-10-06 12:34:02.338973607 +0200
-@@ -79,6 +79,14 @@
- #  define GNUC_COMPATIBLE
- #endif
- 
-+#ifdef __s390__
-+#  define GNUC_COMPATIBLE
-+#endif
-+
-+#ifdef __s390x__
-+#  define GNUC_COMPATIBLE
-+#endif
-+
- // The default implementation tactic for gcc/clang is to use the newer
- // __atomic intrinsics added for use in C++11 <atomic>.  Where that
- // isn't available, we use GCC's older __sync functions instead.
+ #endif  // jit_AtomicOperations_h
diff --git a/SOURCES/build-nss-version.patch b/SOURCES/build-nss-version.patch
index 58e62c9..94947f2 100644
--- a/SOURCES/build-nss-version.patch
+++ b/SOURCES/build-nss-version.patch
@@ -5,7 +5,7 @@ diff -up firefox-60.1.0/old-configure.in.nss-version firefox-60.1.0/old-configur
      _USE_SYSTEM_NSS=1 )
  
  if test -n "$_USE_SYSTEM_NSS"; then
--    AM_PATH_NSS(3.36.6, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])])
+-    AM_PATH_NSS(3.36.7, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])])
 +    AM_PATH_NSS(3.36.0, [MOZ_SYSTEM_NSS=1], [AC_MSG_ERROR([you don't have NSS installed or your version is too old])])
  fi
  
diff --git a/SOURCES/firefox-disable-dbus-remote.patch b/SOURCES/firefox-disable-dbus-remote.patch
deleted file mode 100644
index 33b21cb..0000000
--- a/SOURCES/firefox-disable-dbus-remote.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-diff -up firefox-60.1.0/toolkit/components/remote/moz.build.disable-dbus-remote firefox-60.1.0/toolkit/components/remote/moz.build
---- firefox-60.1.0/toolkit/components/remote/moz.build.disable-dbus-remote	2018-06-21 09:29:35.975729500 +0200
-+++ firefox-60.1.0/toolkit/components/remote/moz.build	2018-06-21 09:29:53.863631963 +0200
-@@ -22,11 +22,6 @@ if 'gtk' in CONFIG['MOZ_WIDGET_TOOLKIT']
-         'nsGTKRemoteService.cpp',
-         'nsRemoteService.cpp',
-     ]
--    if CONFIG['MOZ_ENABLE_DBUS']:
--        SOURCES += [
--            'nsDBusRemoteService.cpp',
--        ]
--        CXXFLAGS += CONFIG['MOZ_DBUS_GLIB_CFLAGS']
- 
- FINAL_LIBRARY = 'xul'
- 
-diff -up firefox-60.1.0/toolkit/components/remote/nsRemoteService.cpp.disable-dbus-remote firefox-60.1.0/toolkit/components/remote/nsRemoteService.cpp
---- firefox-60.1.0/toolkit/components/remote/nsRemoteService.cpp.disable-dbus-remote	2018-06-19 22:35:27.000000000 +0200
-+++ firefox-60.1.0/toolkit/components/remote/nsRemoteService.cpp	2018-06-21 09:30:24.949462465 +0200
-@@ -6,7 +6,7 @@
-  * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
- 
- #include "nsGTKRemoteService.h"
--#ifdef MOZ_ENABLE_DBUS
-+#if 0 // Disable DBus remote
- #include "nsDBusRemoteService.h"
- #endif
- #include "nsRemoteService.h"
-@@ -34,7 +34,7 @@ NS_IMPL_ISUPPORTS(nsRemoteService,
- NS_IMETHODIMP
- nsRemoteService::Startup(const char* aAppName, const char* aProfileName)
- {
--#if defined(MOZ_ENABLE_DBUS)
-+#if 0 // Disable DBus remote
-     nsresult rv;
-     mDBusRemoteService = new nsDBusRemoteService();
-     rv = mDBusRemoteService->Startup(aAppName, aProfileName);
diff --git a/SOURCES/mozilla-1170092.patch b/SOURCES/mozilla-1170092.patch
index 9e8906f..b182d64 100644
--- a/SOURCES/mozilla-1170092.patch
+++ b/SOURCES/mozilla-1170092.patch
@@ -1,33 +1,32 @@
-diff -up firefox-58.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-58.0/extensions/pref/autoconfig/src/nsReadConfig.cpp
---- firefox-58.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092	2018-01-11 21:17:03.000000000 +0100
-+++ firefox-58.0/extensions/pref/autoconfig/src/nsReadConfig.cpp	2018-01-23 13:59:45.446495820 +0100
-@@ -239,9 +239,20 @@ nsresult nsReadConfig::openAndEvaluateJS
-             return rv;
+diff -up firefox-60.5.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092 firefox-60.5.0/extensions/pref/autoconfig/src/nsReadConfig.cpp
+--- firefox-60.5.0/extensions/pref/autoconfig/src/nsReadConfig.cpp.1170092	2019-01-22 10:48:38.187383614 +0100
++++ firefox-60.5.0/extensions/pref/autoconfig/src/nsReadConfig.cpp	2019-01-22 11:26:11.027108692 +0100
+@@ -225,8 +225,20 @@ nsresult nsReadConfig::openAndEvaluateJS
+     if (NS_FAILED(rv)) return rv;
  
-         rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
--        if (NS_FAILED(rv))
--            return rv;
-+        if (NS_FAILED(rv)) {
-+          // Look for cfg file in /etc/<application>/pref
-+          rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR,
-+                                      getter_AddRefs(jsFile));
-+          NS_ENSURE_SUCCESS(rv, rv);
+     rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
+-    if (NS_FAILED(rv)) return rv;
++    if (NS_FAILED(rv)) {
++      // Look for cfg file in /etc/<application>/pref
++      rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR,
++                                  getter_AddRefs(jsFile));
++      NS_ENSURE_SUCCESS(rv, rv);
 +
-+          rv = jsFile->AppendNative(NS_LITERAL_CSTRING("pref"));
-+          NS_ENSURE_SUCCESS(rv, rv);
-+          rv = jsFile->AppendNative(nsDependentCString(aFileName));
-+          NS_ENSURE_SUCCESS(rv, rv);
++      rv = jsFile->AppendNative(NS_LITERAL_CSTRING("pref"));
++      NS_ENSURE_SUCCESS(rv, rv);
++      rv = jsFile->AppendNative(nsDependentCString(aFileName));
++      NS_ENSURE_SUCCESS(rv, rv);
  
-+          rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
-+          NS_ENSURE_SUCCESS(rv, rv);
-+        }
-     } else {
-         nsAutoCString location("resource://gre/defaults/autoconfig/");
-         location += aFileName;
-diff -up firefox-58.0/modules/libpref/Preferences.cpp.1170092 firefox-58.0/modules/libpref/Preferences.cpp
---- firefox-58.0/modules/libpref/Preferences.cpp.1170092	2018-01-23 13:59:45.447495817 +0100
-+++ firefox-58.0/modules/libpref/Preferences.cpp	2018-01-23 14:02:51.456987774 +0100
-@@ -4402,6 +4402,8 @@ pref_InitInitialObjects()
++      rv = NS_NewLocalFileInputStream(getter_AddRefs(inStr), jsFile);
++      NS_ENSURE_SUCCESS(rv, rv);
++    }
+   } else {
+     nsAutoCString location("resource://gre/defaults/autoconfig/");
+     location += aFileName;
+diff -up firefox-60.5.0/modules/libpref/Preferences.cpp.1170092 firefox-60.5.0/modules/libpref/Preferences.cpp
+--- firefox-60.5.0/modules/libpref/Preferences.cpp.1170092	2019-01-21 17:38:16.000000000 +0100
++++ firefox-60.5.0/modules/libpref/Preferences.cpp	2019-01-22 10:48:38.187383614 +0100
+@@ -3459,6 +3459,8 @@ static nsresult pref_ReadPrefFromJar(nsZ
    //
    // Thus, in the omni.jar case, we always load app-specific default
    // preferences from omni.jar, whether or not `$app == $gre`.
@@ -36,10 +35,10 @@ diff -up firefox-58.0/modules/libpref/Preferences.cpp.1170092 firefox-58.0/modul
  
    nsresult rv;
    nsZipFind* findPtr;
-diff -up firefox-58.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-58.0/toolkit/xre/nsXREDirProvider.cpp
---- firefox-58.0/toolkit/xre/nsXREDirProvider.cpp.1170092	2018-01-11 21:17:06.000000000 +0100
-+++ firefox-58.0/toolkit/xre/nsXREDirProvider.cpp	2018-01-23 13:59:45.447495817 +0100
-@@ -59,6 +59,7 @@
+diff -up firefox-60.5.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-60.5.0/toolkit/xre/nsXREDirProvider.cpp
+--- firefox-60.5.0/toolkit/xre/nsXREDirProvider.cpp.1170092	2019-01-21 17:38:51.000000000 +0100
++++ firefox-60.5.0/toolkit/xre/nsXREDirProvider.cpp	2019-01-22 11:37:01.868896974 +0100
+@@ -58,6 +58,7 @@
  #endif
  #ifdef XP_UNIX
  #include <ctype.h>
@@ -47,10 +46,11 @@ diff -up firefox-58.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-58.0/tool
  #endif
  #ifdef XP_IOS
  #include "UIKitDirProvider.h"
-@@ -554,6 +555,20 @@ nsXREDirProvider::GetFile(const char* aP
+@@ -491,6 +492,21 @@ nsXREDirProvider::GetFile(const char* aP
        }
      }
    }
++
 +#if defined(XP_UNIX)
 +  if (!strcmp(aProperty, NS_APP_PREFS_SYSTEM_CONFIG_DIR)) {
 +    nsCString sysConfigDir = NS_LITERAL_CSTRING("/etc/");
@@ -65,32 +65,34 @@ diff -up firefox-58.0/toolkit/xre/nsXREDirProvider.cpp.1170092 firefox-58.0/tool
 +  }
 +#endif
 +
-   if (NS_FAILED(rv) || !file)
-     return NS_ERROR_FAILURE;
+   if (NS_FAILED(rv) || !file) return NS_ERROR_FAILURE;
  
-@@ -887,6 +902,14 @@ nsXREDirProvider::GetFilesInternal(const
+   if (ensureFilePermissions) {
+@@ -796,6 +812,16 @@ nsresult nsXREDirProvider::GetFilesInter
      LoadDirIntoArray(mXULAppDir, kAppendPrefDir, directories);
-     LoadDirsIntoArray(mAppBundleDirectories,
-                       kAppendPrefDir, directories);
+     LoadDirsIntoArray(mAppBundleDirectories, kAppendPrefDir, directories);
+ 
 +    // Add /etc/<application>/pref/ directory if it exists
 +    nsCOMPtr<nsIFile> systemPrefDir;
-+    rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR, getter_AddRefs(systemPrefDir));
++    rv = NS_GetSpecialDirectory(NS_APP_PREFS_SYSTEM_CONFIG_DIR,
++                                getter_AddRefs(systemPrefDir));
 +    if (NS_SUCCEEDED(rv)) {
 +      rv = systemPrefDir->AppendNative(NS_LITERAL_CSTRING("pref"));
 +      if (NS_SUCCEEDED(rv))
 +        directories.AppendObject(systemPrefDir);
 +    }
- 
++
      rv = NS_NewArrayEnumerator(aResult, directories);
-   }
-diff -up firefox-58.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-58.0/xpcom/io/nsAppDirectoryServiceDefs.h
---- firefox-58.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092	2018-01-23 13:59:45.447495817 +0100
-+++ firefox-58.0/xpcom/io/nsAppDirectoryServiceDefs.h	2018-01-23 14:02:02.871120476 +0100
-@@ -59,6 +59,7 @@
- #define NS_APP_PREFS_50_FILE                    "PrefF"
- #define NS_APP_PREFS_DEFAULTS_DIR_LIST          "PrefDL"
- #define NS_APP_PREFS_OVERRIDE_DIR               "PrefDOverride" // Directory for per-profile defaults
+   } else if (!strcmp(aProperty, NS_APP_CHROME_DIR_LIST)) {
+     // NS_APP_CHROME_DIR_LIST is only used to get default (native) icons
+diff -up firefox-60.5.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092 firefox-60.5.0/xpcom/io/nsAppDirectoryServiceDefs.h
+--- firefox-60.5.0/xpcom/io/nsAppDirectoryServiceDefs.h.1170092	2019-01-22 10:48:38.188383609 +0100
++++ firefox-60.5.0/xpcom/io/nsAppDirectoryServiceDefs.h	2019-01-22 11:08:12.068459480 +0100
+@@ -62,6 +62,7 @@
+ #define NS_APP_PREFS_DEFAULTS_DIR_LIST "PrefDL"
+ #define NS_APP_PREFS_OVERRIDE_DIR \
+   "PrefDOverride"  // Directory for per-profile defaults
 +#define NS_APP_PREFS_SYSTEM_CONFIG_DIR          "PrefSysConf"   // Directory with system-wide configuration
  
- #define NS_APP_USER_PROFILE_50_DIR              "ProfD"
- #define NS_APP_USER_PROFILE_LOCAL_50_DIR        "ProfLD"
+ #define NS_APP_USER_PROFILE_50_DIR "ProfD"
+ #define NS_APP_USER_PROFILE_LOCAL_50_DIR "ProfLD"
diff --git a/SOURCES/mozilla-1196777.patch b/SOURCES/mozilla-1196777.patch
index ba5e4b7..c28cf94 100644
--- a/SOURCES/mozilla-1196777.patch
+++ b/SOURCES/mozilla-1196777.patch
@@ -1,28 +1,13 @@
-# HG changeset patch
-# User Martin Stransky <stransky@redhat.com>
-# Parent  4e3ad95d689a5beabf3c1f41d958794fe00e3767
-Bug 1196777 - Ask GDK to receive focus events, r=?karlt
-
-diff --git a/widget/gtk/nsWindow.cpp b/widget/gtk/nsWindow.cpp
---- a/widget/gtk/nsWindow.cpp
-+++ b/widget/gtk/nsWindow.cpp
-@@ -142,17 +142,18 @@ const gint kEvents = GDK_EXPOSURE_MASK |
-                      GDK_ENTER_NOTIFY_MASK | GDK_LEAVE_NOTIFY_MASK |
-                      GDK_BUTTON_PRESS_MASK | GDK_BUTTON_RELEASE_MASK |
- #if GTK_CHECK_VERSION(3,4,0)
-                      GDK_SMOOTH_SCROLL_MASK |
-                      GDK_TOUCH_MASK |
+diff -up firefox-60.5.0/widget/gtk/nsWindow.cpp.1196777 firefox-60.5.0/widget/gtk/nsWindow.cpp
+--- firefox-60.5.0/widget/gtk/nsWindow.cpp.1196777	2019-01-22 11:41:58.630469400 +0100
++++ firefox-60.5.0/widget/gtk/nsWindow.cpp	2019-01-22 11:42:50.134227448 +0100
+@@ -152,7 +152,8 @@ const gint kEvents =
+ #if GTK_CHECK_VERSION(3, 4, 0)
+     GDK_SMOOTH_SCROLL_MASK | GDK_TOUCH_MASK |
  #endif
-                      GDK_SCROLL_MASK |
-                      GDK_POINTER_MOTION_MASK |
--                     GDK_PROPERTY_CHANGE_MASK;
-+                     GDK_PROPERTY_CHANGE_MASK |
-+                     GDK_FOCUS_CHANGE_MASK;
+-    GDK_SCROLL_MASK | GDK_POINTER_MOTION_MASK | GDK_PROPERTY_CHANGE_MASK;
++    GDK_SCROLL_MASK | GDK_POINTER_MOTION_MASK | GDK_PROPERTY_CHANGE_MASK |
++    GDK_FOCUS_CHANGE_MASK;
  
  /* utility functions */
- static bool       is_mouse_in_window(GdkWindow* aWindow,
-                                      gdouble aMouseX, gdouble aMouseY);
- static nsWindow  *get_window_for_gtk_widget(GtkWidget *widget);
- static nsWindow  *get_window_for_gdk_window(GdkWindow *window);
- static GtkWidget *get_gtk_widget_for_gdk_window(GdkWindow *window);
- static GdkCursor *get_gtk_cursor(nsCursor aCursor);
+ static bool is_mouse_in_window(GdkWindow *aWindow, gdouble aMouseX,
diff --git a/SOURCES/rhbz-1173156.patch b/SOURCES/rhbz-1173156.patch
index 9855710..c35d901 100644
--- a/SOURCES/rhbz-1173156.patch
+++ b/SOURCES/rhbz-1173156.patch
@@ -1,12 +1,12 @@
-diff -up firefox-31.3.0/mozilla-esr31/extensions/auth/nsAuthSambaNTLM.cpp.old firefox-31.3.0/mozilla-esr31/extensions/auth/nsAuthSambaNTLM.cpp
---- firefox-31.3.0/mozilla-esr31/extensions/auth/nsAuthSambaNTLM.cpp.old	2014-11-25 12:23:22.000000000 +0100
-+++ firefox-31.3.0/mozilla-esr31/extensions/auth/nsAuthSambaNTLM.cpp	2014-12-23 15:26:36.606674625 +0100
-@@ -174,7 +174,7 @@ nsAuthSambaNTLM::SpawnNTLMAuthHelper()
-         return NS_ERROR_FAILURE;
+diff -up firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp.rhbz-1173156 firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp
+--- firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp.rhbz-1173156	2019-01-22 10:36:09.284069020 +0100
++++ firefox-60.5.0/extensions/auth/nsAuthSambaNTLM.cpp	2019-01-22 10:37:12.669757744 +0100
+@@ -161,7 +161,7 @@ nsresult nsAuthSambaNTLM::SpawnNTLMAuthH
+   const char* username = PR_GetEnv("USER");
+   if (!username) return NS_ERROR_FAILURE;
  
-     const char* const args[] = {
--        "ntlm_auth",
-+        "/usr/bin/ntlm_auth",
-         "--helper-protocol", "ntlmssp-client-1",
-         "--use-cached-creds",
-         "--username", username,
+-  const char* const args[] = {"ntlm_auth",
++  const char* const args[] = {"/usr/bin/ntlm_auth",
+                               "--helper-protocol",
+                               "ntlmssp-client-1",
+                               "--use-cached-creds",
diff --git a/SOURCES/rhbz-1354671.patch b/SOURCES/rhbz-1354671.patch
index 6ee89b7..7660f14 100644
--- a/SOURCES/rhbz-1354671.patch
+++ b/SOURCES/rhbz-1354671.patch
@@ -1,12 +1,12 @@
-diff -up firefox-53.0/layout/base/nsIPresShell.h.1354671 firefox-53.0/layout/base/nsIPresShell.h
---- firefox-53.0/layout/base/nsIPresShell.h.1354671	2017-04-27 13:07:43.808653320 +0200
-+++ firefox-53.0/layout/base/nsIPresShell.h	2017-04-27 13:09:40.404427641 +0200
-@@ -212,7 +212,7 @@ public:
+diff -up firefox-60.5.0/layout/base/nsIPresShell.h.1354671 firefox-60.5.0/layout/base/nsIPresShell.h
+--- firefox-60.5.0/layout/base/nsIPresShell.h.1354671	2019-01-22 16:08:40.796539950 +0100
++++ firefox-60.5.0/layout/base/nsIPresShell.h	2019-01-22 16:10:25.106069228 +0100
+@@ -204,7 +204,7 @@ class nsIPresShell : public nsStubDocume
     * to the same aSize value.  AllocateFrame is infallible and will abort
     * on out-of-memory.
     */
--  void* AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize)
-+  void* __attribute__((optimize("no-lifetime-dse"))) AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize)
-   {
+-  void* AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize) {
++  void* __attribute__((optimize("no-lifetime-dse"))) AllocateFrame(nsQueryFrame::FrameIID aID, size_t aSize) {
      void* result = mFrameArena.AllocateByFrameID(aID, aSize);
      RecordAlloc(result);
+     return result;
diff --git a/SOURCES/rhbz-1503632-nss.patch b/SOURCES/rhbz-1503632-nss.patch
index f9f5e4d..f7a26d3 100644
--- a/SOURCES/rhbz-1503632-nss.patch
+++ b/SOURCES/rhbz-1503632-nss.patch
@@ -1,12 +1,7 @@
-diff --git a/security/certverifier/NSSCertDBTrustDomain.cpp b/security/certverifier/NSSCertDBTrustDomain.cpp
---- a/security/certverifier/NSSCertDBTrustDomain.cpp
-+++ b/security/certverifier/NSSCertDBTrustDomain.cpp
-@@ -1057,22 +1057,20 @@ InitializeNSS(const nsACString& dir, boo
-   // "/usr/lib/nss/libnssckbi.so".
-   uint32_t flags = NSS_INIT_NOROOTINIT | NSS_INIT_OPTIMIZESPACE;
-   if (readOnly) {
-     flags |= NSS_INIT_READONLY;
-   }
+diff -up firefox-60.5.0/security/certverifier/NSSCertDBTrustDomain.cpp.1503632-nss firefox-60.5.0/security/certverifier/NSSCertDBTrustDomain.cpp
+--- firefox-60.5.0/security/certverifier/NSSCertDBTrustDomain.cpp.1503632-nss	2019-01-22 11:38:49.484365928 +0100
++++ firefox-60.5.0/security/certverifier/NSSCertDBTrustDomain.cpp	2019-01-22 11:40:52.694779150 +0100
+@@ -1077,13 +1077,11 @@ SECStatus InitializeNSS(const nsACString
    if (!loadPKCS11Modules) {
      flags |= NSS_INIT_NOMODDB;
    }
@@ -16,13 +11,9 @@ diff --git a/security/certverifier/NSSCertDBTrustDomain.cpp b/security/certverif
 -          ("InitializeNSS(%s, %d, %d)", dbTypeAndDirectory.get(), readOnly,
 +          ("InitializeNSS(%s, %d, %d)", PromiseFlatCString(dir).get(), readOnly,
             loadPKCS11Modules));
--  SECStatus srv = NSS_Initialize(dbTypeAndDirectory.get(), "", "",
-+  SECStatus srv = NSS_Initialize(PromiseFlatCString(dir).get(), "", "",
-                                  SECMOD_DB, flags);
+   SECStatus srv =
+-      NSS_Initialize(dbTypeAndDirectory.get(), "", "", SECMOD_DB, flags);
++      NSS_Initialize(PromiseFlatCString(dir).get(), "", "", SECMOD_DB, flags);
    if (srv != SECSuccess) {
      return srv;
    }
- 
-   if (!readOnly) {
-     UniquePK11SlotInfo slot(PK11_GetInternalKeySlot());
-     if (!slot) {
diff --git a/SOURCES/xulrunner-24.0-jemalloc-ppc.patch b/SOURCES/xulrunner-24.0-jemalloc-ppc.patch
index 75aed9a..c8fe421 100644
--- a/SOURCES/xulrunner-24.0-jemalloc-ppc.patch
+++ b/SOURCES/xulrunner-24.0-jemalloc-ppc.patch
@@ -1,12 +1,12 @@
-diff -up firefox-60.0/memory/build/mozjemalloc.cpp.ppc-jemalloc firefox-60.0/memory/build/mozjemalloc.cpp
---- firefox-60.0/memory/build/mozjemalloc.cpp.ppc-jemalloc	2018-06-06 14:39:28.454371053 +0200
-+++ firefox-60.0/memory/build/mozjemalloc.cpp	2018-06-06 14:39:40.242397928 +0200
+diff -up firefox-60.5.0/memory/build/mozjemalloc.cpp.jemalloc-ppc firefox-60.5.0/memory/build/mozjemalloc.cpp
+--- firefox-60.5.0/memory/build/mozjemalloc.cpp.jemalloc-ppc	2019-01-22 10:25:30.764207480 +0100
++++ firefox-60.5.0/memory/build/mozjemalloc.cpp	2019-01-22 10:28:48.352235343 +0100
 @@ -180,7 +180,7 @@ using namespace mozilla;
  // Debug builds are opted out too, for test coverage.
  #ifndef MOZ_DEBUG
- #if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__) &&         \
--  !defined(__aarch64__)
-+  !defined(__aarch64__) && !defined(__powerpc__)
+ #if !defined(__ia64__) && !defined(__sparc__) && !defined(__mips__) && \
+-    !defined(__aarch64__)
++    !defined(__aarch64__) && !defined(__powerpc__)
  #define MALLOC_STATIC_PAGESIZE 1
  #endif
  #endif
diff --git a/SPECS/thunderbird.spec b/SPECS/thunderbird.spec
index 7055e8e..303b64b 100644
--- a/SPECS/thunderbird.spec
+++ b/SPECS/thunderbird.spec
@@ -27,7 +27,9 @@
 %define use_bundled_python 0
 %endif
 
+%if 0%{?rhel} < 8
 %global use_rustts        1
+%endif
 %global dts_version       7
 %global rst_version       7
 %global llvm_version      7
@@ -89,7 +91,7 @@
 
 Summary:        Mozilla Thunderbird mail/newsgroup client
 Name:           thunderbird
-Version:        60.4.0
+Version:        60.5.0
 Release:        1%{?dist}
 URL:            http://www.mozilla.org/projects/thunderbird/
 License:        MPLv1.1 or GPLv2+ or LGPLv2+
@@ -105,7 +107,7 @@ ExclusiveArch:  i686 x86_64 ppc64 s390x
 # From ftp://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?ext_version}/source
 Source0:        https://archive.mozilla.org/pub/thunderbird/releases/%{version}%{?pre_version}/source/thunderbird-%{version}%{?pre_version}.source.tar.xz
 %if %{build_langpacks}
-Source1:        thunderbird-langpacks-%{version}%{?ext_version}-20190103.tar.xz
+Source1:        thunderbird-langpacks-%{version}%{?ext_version}-20190129.tar.xz
 # Locales for lightning
 Source2:        lightning-langpacks-%{version}.tar.xz
 %endif
@@ -148,7 +150,6 @@ Patch37:        build-jit-atomic-always-lucky.patch
 Patch40:        build-aarch64-skia.patch
 Patch41:        build-debug-qcms.patch
 Patch43:        xulrunner-24.0-jemalloc-ppc.patch
-Patch44:        firefox-disable-dbus-remote.patch
 Patch45:        build-disable-elfhack.patch
 
 # Fedora/RHEL specific patches
@@ -233,6 +234,9 @@ BuildRequires:  rust-toolset-%{rst_version}-cargo
 BuildRequires:  rust-toolset-%{rst_version}-rust
 %endif
 %if 0%{?rhel} == 8
+BuildRequires:  llvm >= %{llvm_version}
+BuildRequires:  llvm-devel >= %{llvm_version}
+BuildRequires:  clang >= %{llvm_version}
 BuildRequires:  llvm-toolset-%{llvm_version}
 BuildRequires:  llvm-toolset-%{llvm_version}-llvm-devel
 %endif
@@ -331,10 +335,6 @@ Mozilla Thunderbird is a standalone mail and newsgroup client.
 %patch41 -p1 -b .build-debug-qcms
 %endif
 %patch43 -p1 -b .jemalloc-ppc
-# Disable DBus remote on RHEL6 as it does not build here.
-%if 0%{?rhel} == 6
-%patch44 -p1 -b .disable-dbus-remote
-%endif
 %if 0%{?rhel} == 8
 %patch45 -p1 -b .elfhack
 %endif
@@ -346,7 +346,7 @@ Mozilla Thunderbird is a standalone mail and newsgroup client.
 
 # Fedora patches
 %patch215 -p1 -b .addons
-%patch219 -p2 -b .rhbz-1173156
+%patch219 -p1 -b .rhbz-1173156
 %patch224 -p1 -b .1170092
 %patch225 -p1 -b .1005640-accept-lang
 
@@ -715,6 +715,9 @@ MOZ_SMP_FLAGS=-j1
 export MOZ_MAKE_FLAGS="$MOZ_SMP_FLAGS"
 #export MOZ_SERVICES_SYNC="1"
 export STRIP=/bin/true
+%if 0%{?rhel} == 8
+export LLVM_CONFIG=/usr/bin/llvm-config-64
+%endif
 ./mach build -v
 
 #---------------------------------------------------------------------
@@ -944,6 +947,7 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
 %{mozappdir}/platform.ini
 %{mozappdir}/application.ini
 %{mozappdir}/blocklist.xml
+%{mozappdir}/features/*.xpi
 %exclude %{mozappdir}/removed-files
 %{_datadir}/icons/hicolor/16x16/apps/thunderbird.png
 %{_datadir}/icons/hicolor/22x22/apps/thunderbird.png
@@ -983,6 +987,9 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
 #===============================================================================
 
 %changelog
+* Tue Jan 29 2019 Martin Stransky <stransky@redhat.com> - 60.5.0-1
+- Update to 60.5.0
+
 * Thu Jan  3 2019 Jan Horak <jhorak@redhat.com> - 60.4.0-1
 - Update to 60.4.0