diff --git a/.firefox.metadata b/.firefox.metadata
index 8c8247f..77172d9 100644
--- a/.firefox.metadata
+++ b/.firefox.metadata
@@ -1,7 +1,7 @@
 18a8f30a0356c751b8d0ea6f76e764cab13ee046 SOURCES/Python-2.7.13.tar.xz
 a9effcc06cf80eaa22f12c1f7d6aa4266a1c4966 SOURCES/cbindgen-vendor-0.14.3.tar.xz
-f2e0607bf57105e8741c0f941bcacee8a75d672a SOURCES/firefox-78.3.0esr.source.tar.xz
-444ca305428fc4778a7252f3cdc2e65495921dcd SOURCES/firefox-langpacks-78.3.0esr-20200918.tar.xz
+d2a0207af9d0777d26424c60e90fcc93b8b6ad09 SOURCES/firefox-78.4.1esr.source.tar.xz
+5b0babe09132b4c1f86caba3c4343010570b8d43 SOURCES/firefox-langpacks-78.4.1esr-20201109.tar.xz
 0de63f863b158454b9429234b52ed28a397ec45c SOURCES/gtk3-private-3.22.26-1.el6.src.rpm
 e188ab1a444697bc649e223c28389d82ca94c472 SOURCES/libffi-3.0.13-18.el7_3.src.rpm
 5715f987bc0024ce5d72993cb101b8268350033b SOURCES/nodejs-10.21.0-5.fc32.src.rpm
diff --git a/.gitignore b/.gitignore
index 683a467..a150def 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,7 @@
 SOURCES/Python-2.7.13.tar.xz
 SOURCES/cbindgen-vendor-0.14.3.tar.xz
-SOURCES/firefox-78.3.0esr.source.tar.xz
-SOURCES/firefox-langpacks-78.3.0esr-20200918.tar.xz
+SOURCES/firefox-78.4.1esr.source.tar.xz
+SOURCES/firefox-langpacks-78.4.1esr-20201109.tar.xz
 SOURCES/gtk3-private-3.22.26-1.el6.src.rpm
 SOURCES/libffi-3.0.13-18.el7_3.src.rpm
 SOURCES/nodejs-10.21.0-5.fc32.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/fedora-shebang-build.patch b/SOURCES/fedora-shebang-build.patch
deleted file mode 100644
index 9ade86c..0000000
--- a/SOURCES/fedora-shebang-build.patch
+++ /dev/null
@@ -1,9 +0,0 @@
-diff -up firefox-73.0/build/unix/run-mozilla.sh.old firefox-73.0/build/unix/run-mozilla.sh
---- firefox-73.0/build/unix/run-mozilla.sh.old	2020-02-12 09:58:00.150895904 +0100
-+++ firefox-73.0/build/unix/run-mozilla.sh	2020-02-12 09:58:06.505860696 +0100
-@@ -1,4 +1,4 @@
--#!/bin/sh
-+#!/usr/bin/sh
- #
- # 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
diff --git a/SOURCES/firefox-mozconfig b/SOURCES/firefox-mozconfig
index 6efa937..cc9fda8 100644
--- a/SOURCES/firefox-mozconfig
+++ b/SOURCES/firefox-mozconfig
@@ -17,6 +17,7 @@ ac_add_options --with-mozilla-api-keyfile=../mozilla-api-key
 ac_add_options --with-google-location-service-api-keyfile=../google-api-key
 ac_add_options --with-google-safebrowsing-api-keyfile=../google-api-key
 ac_add_options --disable-av1
+ac_add_options --allow-addon-sideload
 
 export BUILD_OFFICIAL=1
 export MOZILLA_OFFICIAL=1
diff --git a/SOURCES/firefox.sh.in b/SOURCES/firefox.sh.in
index a33e812..2c8ffc1 100644
--- a/SOURCES/firefox.sh.in
+++ b/SOURCES/firefox.sh.in
@@ -153,15 +153,6 @@ export MOZ_USE_XINPUT2=1
 ##
 FEDORA_LANGPACK_CONFIG="$MOZ_EXTENSIONS_PROFILE_DIR/.fedora-langpack-install"
 
-# Since Firefox 60 the installation of individual langpack cannot be done by
-# copying xpi file to the home directory, because the langpack is loaded
-# as to the available languages after the language has been decided and
-# for the first run it won't be in language according to the locale.
-#
-# The current workaround is to put all langpacks to the location
-# for system wide extensions. So we set MOZ_DISABLE_LANGPACKS=1 for this moment
-export MOZ_DISABLE_LANGPACKS=1
-# MOZ_DISABLE_LANGPACKS disables language packs completely
 MOZILLA_DOWN=0
 if ! [ $MOZ_DISABLE_LANGPACKS ] || [ $MOZ_DISABLE_LANGPACKS -eq 0 ]; then
     if [ -x $MOZ_DIST_BIN/$MOZ_FIREFOX_FILE ]; then
diff --git a/SOURCES/rhel6-at-no-automount.patch b/SOURCES/rhel6-at-no-automount.patch
new file mode 100644
index 0000000..830ed54
--- /dev/null
+++ b/SOURCES/rhel6-at-no-automount.patch
@@ -0,0 +1,27 @@
+diff -ru firefox-78.3.0/security/sandbox/linux/SandboxFilter.cpp firefox-78.4.0/security/sandbox/linux/SandboxFilter.cpp
+--- firefox-78.3.0/security/sandbox/linux/SandboxFilter.cpp	2020-09-14 21:21:02.000000000 +0200
++++ firefox-78.4.0/security/sandbox/linux/SandboxFilter.cpp	2020-10-14 11:34:48.000000000 +0200
+@@ -243,14 +243,21 @@
+     auto path = reinterpret_cast<const char*>(aArgs.args[1]);
+     auto buf = reinterpret_cast<statstruct*>(aArgs.args[2]);
+     auto flags = static_cast<int>(aArgs.args[3]);
++
++    if (fd != AT_FDCWD && (flags & AT_EMPTY_PATH) != 0 &&
++        strcmp(path, "") == 0) {
++      return ConvertError(fstatsyscall(fd, buf));
++    }
++
+     if (fd != AT_FDCWD && path[0] != '/') {
+       SANDBOX_LOG_ERROR("unsupported fd-relative fstatat(%d, \"%s\", %p, %d)",
+                         fd, path, buf, flags);
+       return BlockedSyscallTrap(aArgs, nullptr);
+     }
+-    if ((flags & ~AT_SYMLINK_NOFOLLOW) != 0) {
++    if ((flags & ~(AT_SYMLINK_NOFOLLOW | AT_NO_AUTOMOUNT)) != 0) {
+       SANDBOX_LOG_ERROR("unsupported flags %d in fstatat(%d, \"%s\", %p, %d)",
+-                        (flags & ~AT_SYMLINK_NOFOLLOW), fd, path, buf, flags);
++                        (flags & ~(AT_SYMLINK_NOFOLLOW | AT_NO_AUTOMOUNT)), fd,
++                        path, buf, flags);
+       return BlockedSyscallTrap(aArgs, nullptr);
+     }
+     return (flags & AT_SYMLINK_NOFOLLOW) == 0 ? broker->Stat(path, buf)
diff --git a/SPECS/firefox.spec b/SPECS/firefox.spec
index 04ac224..630d9bb 100644
--- a/SPECS/firefox.spec
+++ b/SPECS/firefox.spec
@@ -7,8 +7,11 @@
 %endif
 
 %global rhel_minor_version -1
+%if 0%{?flatpak:1}
+%global rhel_minor_version 4
+%endif
 %if "%{?dist}" == ".el8"
-%global rhel_minor_version 3
+%global rhel_minor_version 4
 %endif
 %if "%{?dist}" == ".el8_3"
 %global rhel_minor_version 3
@@ -193,7 +196,7 @@
 
 %global mozappdir     %{_libdir}/%{name}
 %global mozappdirdev  %{_libdir}/%{name}-devel-%{version}
-%global langpackdir   %{mozappdir}/distribution/extensions
+%global langpackdir   %{mozappdir}/langpacks
 %global tarballdir    %{name}-%{version}
 %global pre_version   esr
 #global pre_tag       alpha
@@ -210,7 +213,7 @@
 
 Summary:        Mozilla Firefox Web browser
 Name:           firefox
-Version:        78.3.0
+Version:        78.4.1
 Release:        1%{?dist}
 URL:            https://www.mozilla.org/firefox/
 License:        MPLv1.1 or GPLv2+ or LGPLv2+
@@ -223,7 +226,7 @@ ExclusiveArch:  i686 x86_64 ppc64 s390x
 
 Source0:        https://hg.mozilla.org/releases/mozilla-release/archive/firefox-%{version}%{?pre_version}.source.tar.xz
 %if %{build_langpacks}
-Source1:        firefox-langpacks-%{version}%{?pre_version}-20200918.tar.xz
+Source1:        firefox-langpacks-%{version}%{?pre_version}-20201109.tar.xz
 %endif
 Source2:        cbindgen-vendor-0.14.3.tar.xz
 Source10:       firefox-mozconfig
@@ -284,7 +287,6 @@ Patch232:        firefox-rhel6-hugepage.patch
 Patch233:        firefox-rhel6-nss-tls1.3.patch
 Patch234:        rhbz-1821418.patch
 Patch235:        firefox-pipewire-0-3.patch
-Patch236:        fedora-shebang-build.patch
 
 # Upstream patches
 Patch402:        mozilla-1196777.patch
@@ -318,6 +320,7 @@ Patch602:        rhel6-mach-fail.patch
 Patch603:        rhel6-zconst.patch
 Patch604:        rhel6-auxvh.patch
 Patch605:        rhel6-abiv2-mozbz1642174.patch
+Patch607:        rhel6-at-no-automount.patch
 
 %if %{?system_nss}
 %if !0%{?bundle_nss}
@@ -635,7 +638,6 @@ echo "use_bundled_yasm      %{?use_bundled_yasm}"
   %endif
 %endif
 
-#%patch236 -p1 -b .fedora-shebang-build
 
 %if 0%{?rhel} == 6
 %patch232 -p1 -b .hugepage
@@ -675,6 +677,7 @@ echo "use_bundled_yasm      %{?use_bundled_yasm}"
 %patch603 -p1 -b .rhel6-zconst
 %patch604 -p1 -b .rhel6-auxvh
 %patch605 -p1 -b .rhel6-abiv2-mozbz1642174
+%patch607 -R -p1 -b .rhel6-at-no-automount
 %endif
 
 # CentOS patches
@@ -1165,8 +1168,8 @@ MOZ_SMP_FLAGS=-j1
 [ -z "$RPM_BUILD_NCPUS" ] && \
      RPM_BUILD_NCPUS="`/usr/bin/getconf _NPROCESSORS_ONLN`"
 [ "$RPM_BUILD_NCPUS" -ge 2 ] && MOZ_SMP_FLAGS=-j2
-[ "$RPM_BUILD_NCPUS" -ge 4 ] && MOZ_SMP_FLAGS=-j2
-[ "$RPM_BUILD_NCPUS" -ge 8 ] && MOZ_SMP_FLAGS=-j2
+[ "$RPM_BUILD_NCPUS" -ge 4 ] && MOZ_SMP_FLAGS=-j3
+[ "$RPM_BUILD_NCPUS" -ge 8 ] && MOZ_SMP_FLAGS=-j3
 %endif
 %endif
 
@@ -1180,19 +1183,7 @@ TASK_SIZE=4000000
 MEM_CONSTRAINED_JOBS=$(( MEM_AVAILABLE / TASK_SIZE ))
 CPU_AVAILABLE=$(/usr/bin/getconf _NPROCESSORS_ONLN)
 # Pick the minimum from available CPUs or memory constrained number of jobs
-#MOZ_SMP_FLAGS=-j$([ "$CPU_AVAILABLE" -le "$MEM_CONSTRAINED_JOBS" ] && echo "$CPU_AVAILABLE" || echo "$MEM_CONSTRAINED_JOBS")
-
-cat /proc/meminfo
-# Free memory in kB
-
-MEM_AVAILABLE=$(grep MemAvailable /proc/meminfo | awk '{ print $2 }')
-
-# Usually the compiler processes can take 2 GB of memory at peaks
-TASK_SIZE=4000000
-MEM_CONSTRAINED_JOBS=$(( MEM_AVAILABLE / TASK_SIZE ))
-CPU_AVAILABLE=$(/usr/bin/getconf _NPROCESSORS_ONLN)
-# Pick the minimum from available CPUs or memory constrained number of jobs
-#MOZ_SMP_FLAGS=-j$([ "$CPU_AVAILABLE" -le "$MEM_CONSTRAINED_JOBS" ] && echo "$CPU_AVAILABLE" || echo "$MEM_CONSTRAINED_JOBS")
+MOZ_SMP_FLAGS=-j$([ "$CPU_AVAILABLE" -le "$MEM_CONSTRAINED_JOBS" ] && echo "$CPU_AVAILABLE" || echo "$MEM_CONSTRAINED_JOBS")
 
 %if 0%{?bundle_gtk3}
 # gtk3-private-setup-flags-env.inc
@@ -1648,8 +1639,17 @@ gtk-update-icon-cache %{_datadir}/icons/hicolor &>/dev/null || :
 #---------------------------------------------------------------------
 
 %changelog
-* Tue Nov 03 2020 CentOS Sources <bugs@centos.org> - 78.3.0-1.el8.centos
-- Apply debranding changes
+* Tue Nov 10 2020 erack@redhat.com - 78.4.1-1
+- Update to 78.4.1
+
+* Tue Nov 10 2020 Jan Horak <jhorak@redhat.com> - 78.4.0-3
+- Fixing flatpak build, fixing firefox.sh.in to not disable langpacks loading
+
+* Thu Oct 29 2020 Jan Horak <jhorak@redhat.com> - 78.4.0-2
+- Enable addon sideloading
+
+* Fri Oct 16 2020 Jan Horak <jhorak@redhat.com> - 78.4.0-1
+- Update to 78.4.0 build2
 
 * Fri Sep 18 2020 Jan Horak <jhorak@redhat.com>
 - Update to 78.3.0 build1