diff --git a/mail/thunderbird/Makefile b/mail/thunderbird/Makefile
index f5dcc4ddddca..26e0ea91ba7a 100644
--- a/mail/thunderbird/Makefile
+++ b/mail/thunderbird/Makefile
@@ -1,72 +1,72 @@
 # Created by: Joe Marcus Clarke <marcus@FreeBSD.org>
 
 PORTNAME=	thunderbird
-DISTVERSION=	91.4.1
+DISTVERSION=	91.5.0
 CATEGORIES=	mail news net-im
 MASTER_SITES=	MOZILLA/${PORTNAME}/releases/${DISTVERSION}/source \
 		MOZILLA/${PORTNAME}/candidates/${DISTVERSION}-candidates/build1/source
 DISTFILES=	${DISTNAME}.source${EXTRACT_SUFX}
 
 MAINTAINER=	gecko@FreeBSD.org
 COMMENT=	Mozilla Thunderbird is standalone mail and news that stands above
 
 BUILD_DEPENDS=	nspr>=4.32:devel/nspr \
 		nss>=3.68:security/nss \
 		icu>=67.1,1:devel/icu \
 		libevent>=2.1.8:devel/libevent \
 		harfbuzz>=2.8.1:print/harfbuzz \
 		graphite2>=1.3.14:graphics/graphite2 \
 		png>=1.6.37:graphics/png \
 		libvpx>=1.8.2:multimedia/libvpx \
 		${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR} \
 		v4l_compat>0:multimedia/v4l_compat \
 		autoconf-2.13:devel/autoconf213 \
 		nasm:devel/nasm \
 		yasm:devel/yasm \
 		zip:archivers/zip
 LIB_DEPENDS=	libjson-c.so:devel/json-c \
 		libbotan-2.so:security/botan2
 
 SSP_UNSAFE=	yes
 USE_GECKO=	gecko
 USE_MOZILLA=	-sqlite
 CFLAGS_powerpc64le=	-DSQLITE_BYTEORDER=1234
 
 USES=		tar:xz
 
 MOZ_OPTIONS=	--enable-application=comm/mail --enable-official-branding
 MOZ_OPTIONS+=	--with-system-bz2 --with-system-jsonc --with-system-botan
 MOZ_MK_OPTIONS=	MOZ_THUNDERBIRD=1 MAIL_PKG_SHARED=1
 MOZ_EXPORT=		MOZ_THUNDERBIRD=1 MAIL_PKG_SHARED=1
 
 PORTNAME_ICON=	${MOZILLA}.png
 PORTNAME_ICON_SRC=	${PREFIX}/lib/${MOZILLA}/chrome/icons/default/default48.png
 
 SYSTEM_PREFS=	${FAKEDIR}/lib/${PORTNAME}/defaults/pref/${PORTNAME}.js
 
 OPTIONS_DEFAULT=CANBERRA
 
 .include "${.CURDIR}/../../www/firefox/Makefile.options"
 .include <bsd.port.pre.mk>
 
 post-extract:
 	@${SED} -e 's|@PORTNAME_ICON@|${PORTNAME_ICON:R}|;s|@MOZILLA@|${MOZILLA}|' \
 		<${FILESDIR}/thunderbird.desktop.in >${WRKDIR}/${MOZILLA_EXEC_NAME}.desktop
 
 post-patch:
 	@${REINPLACE_CMD} -e 's|%%LOCALBASE%%|${LOCALBASE}|g' \
 		${WRKSRC}/comm/mail/app/nsMailApp.cpp
 
 pre-configure:
 	(cd ${WRKSRC} && ${LOCALBASE}/bin/autoconf-2.13)
 	(cd ${MOZSRC} && ${LOCALBASE}/bin/autoconf-2.13)
 	(cd ${MOZSRC}/js/src/ && ${LOCALBASE}/bin/autoconf-2.13)
 
 port-pre-install:
 	${MKDIR} ${STAGEDIR}${PREFIX}/lib/${PORTNAME}/defaults
 
 post-install:
 	${INSTALL_DATA} ${WRKDIR}/${MOZILLA_EXEC_NAME}.desktop ${STAGEDIR}${PREFIX}/share/applications
 	${LN} -sf ${PORTNAME_ICON_SRC} ${STAGEDIR}${PREFIX}/share/pixmaps/${PORTNAME_ICON}
 
 .include <bsd.port.post.mk>
diff --git a/mail/thunderbird/distinfo b/mail/thunderbird/distinfo
index bfcffb9a47e1..8f7bc4190218 100644
--- a/mail/thunderbird/distinfo
+++ b/mail/thunderbird/distinfo
@@ -1,3 +1,3 @@
-TIMESTAMP = 1639748924
-SHA256 (thunderbird-91.4.1.source.tar.xz) = f1079ed2cbd335a417b18929c5018d8ade9fb1d0c8cba9fdb2b6d672f14074f1
-SIZE (thunderbird-91.4.1.source.tar.xz) = 408805472
+TIMESTAMP = 1641921486
+SHA256 (thunderbird-91.5.0.source.tar.xz) = b89a8e1b57d5be828a7346e817120d7c763a258a2397a23393b7ceb3ce810ab2
+SIZE (thunderbird-91.5.0.source.tar.xz) = 405937856
diff --git a/mail/thunderbird/files/patch-bug1618914 b/mail/thunderbird/files/patch-bug1618914
deleted file mode 100644
index c52ac49018b2..000000000000
--- a/mail/thunderbird/files/patch-bug1618914
+++ /dev/null
@@ -1,50 +0,0 @@
-From cea8e6a01bb03bbe565c9bf5dd4f439f30ca953f Mon Sep 17 00:00:00 2001
-From: Jan Beich <jbeich@FreeBSD.org>
-Date: Fri, 28 Feb 2020 16:49:38 +0000
-Subject: Bug 1618914 - [Wayland] Fall back to ftruncate if posix_fallocate isn't supported by filesystem.
-
-diff --git widget/gtk/WaylandShmBuffer.cpp widget/gtk/WaylandShmBuffer.cpp
-index 42eeedd3429ac..2a5c23d287413 100644
---- widget/gtk/WaylandShmBuffer.cpp
-+++ widget/gtk/WaylandShmBuffer.cpp
-@@ -67,36 +67,37 @@ static int WaylandAllocateShmMemory(int aSize) {
-     return -1;
-   }
- 
-   int ret = 0;
- #ifdef HAVE_POSIX_FALLOCATE
-   do {
-     ret = posix_fallocate(fd, 0, aSize);
-   } while (ret == EINTR);
--  if (ret != 0) {
-+  if (ret == 0) {
-+    return fd;
-+  } else if (ret != ENODEV && ret != EINVAL && ret != EOPNOTSUPP) {
-     NS_WARNING(
-         nsPrintfCString("posix_fallocate() fails to allocate shm memory: %s",
-                         strerror(ret))
-             .get());
-     close(fd);
-     return -1;
-   }
--#else
-+#endif
-   do {
-     ret = ftruncate(fd, aSize);
-   } while (ret < 0 && errno == EINTR);
-   if (ret < 0) {
-     NS_WARNING(nsPrintfCString("ftruncate() fails to allocate shm memory: %s",
-                                strerror(ret))
-                    .get());
-     close(fd);
-     fd = -1;
-   }
--#endif
- 
-   return fd;
- }
- 
- /* static */
- RefPtr<WaylandShmPool> WaylandShmPool::Create(
-     const RefPtr<nsWaylandDisplay>& aWaylandDisplay, int aSize) {
-   RefPtr<WaylandShmPool> shmPool = new WaylandShmPool(aSize);