diff --git a/community/fwupd/0001-do-not-assert-when-running-with-no-plugins.patch b/community/fwupd/0001-do-not-assert-when-running-with-no-plugins.patch
deleted file mode 100644
index 21b6fc8425eff1dc0ccb1921afe8839de8065b9b..0000000000000000000000000000000000000000
--- a/community/fwupd/0001-do-not-assert-when-running-with-no-plugins.patch
+++ /dev/null
@@ -1,48 +0,0 @@
-From e1e0fc309d82d56d0f180ac5e696f397dc16f96a Mon Sep 17 00:00:00 2001
-Patch-Source: https://github.com/fwupd/fwupd/commit/2a5c27a094af236e94a214766520a9e6d56caae2
-From: Richard Hughes <richard@hughsie.com>
-Date: Mon, 22 Aug 2022 10:57:03 +0100
-Subject: [PATCH] Do not assert when running with no plugins
-
-Fixes https://github.com/fwupd/fwupd/issues/4932
----
- src/fu-daemon.c | 11 +++--------
- 1 file changed, 3 insertions(+), 8 deletions(-)
-
-diff --git a/src/fu-daemon.c b/src/fu-daemon.c
-index 69c9805a4b..f23f1815b9 100644
---- a/src/fu-daemon.c
-+++ b/src/fu-daemon.c
-@@ -317,10 +317,7 @@ static GVariant *
- fu_daemon_plugin_array_to_variant(GPtrArray *plugins)
- {
- 	GVariantBuilder builder;
--
--	g_return_val_if_fail(plugins->len > 0, NULL);
--	g_variant_builder_init(&builder, G_VARIANT_TYPE_ARRAY);
--
-+	g_variant_builder_init(&builder, G_VARIANT_TYPE("aa{sv}"));
- 	for (guint i = 0; i < plugins->len; i++) {
- 		FuDevice *plugin = g_ptr_array_index(plugins, i);
- 		GVariant *tmp = fwupd_plugin_to_variant(FWUPD_PLUGIN(plugin));
-@@ -333,8 +330,7 @@ static GVariant *
- fu_daemon_release_array_to_variant(GPtrArray *results)
- {
- 	GVariantBuilder builder;
--	g_return_val_if_fail(results->len > 0, NULL);
--	g_variant_builder_init(&builder, G_VARIANT_TYPE_ARRAY);
-+	g_variant_builder_init(&builder, G_VARIANT_TYPE("aa{sv}"));
- 	for (guint i = 0; i < results->len; i++) {
- 		FwupdRelease *rel = g_ptr_array_index(results, i);
- 		GVariant *tmp = fwupd_release_to_variant(rel);
-@@ -347,8 +343,7 @@ static GVariant *
- fu_daemon_remote_array_to_variant(GPtrArray *remotes)
- {
- 	GVariantBuilder builder;
--	g_return_val_if_fail(remotes->len > 0, NULL);
--	g_variant_builder_init(&builder, G_VARIANT_TYPE_ARRAY);
-+	g_variant_builder_init(&builder, G_VARIANT_TYPE("aa{sv}"));
- 	for (guint i = 0; i < remotes->len; i++) {
- 		FwupdRemote *remote = g_ptr_array_index(remotes, i);
- 		GVariant *tmp = fwupd_remote_to_variant(remote);
-
diff --git a/community/fwupd/APKBUILD b/community/fwupd/APKBUILD
index 447c2cf38bcbd6052d156278d16dc95c3ae8cc47..5d7221ac16f2d113d0fae5598a224ee23f1bee0a 100644
--- a/community/fwupd/APKBUILD
+++ b/community/fwupd/APKBUILD
@@ -1,8 +1,8 @@
 # Contributor: Timo Teräs <timo.teras@iki.fi>
 # Maintainer: Timo Teräs <timo.teras@iki.fi>
 pkgname=fwupd
-pkgver=1.8.3
-pkgrel=1
+pkgver=1.8.4
+pkgrel=0
 pkgdesc="Firmware update daemon"
 url="https://fwupd.org/"
 # armhf, ppc64le and s390x blocked by gnu-efi
@@ -28,12 +28,9 @@ subpackages="
 	"
 source="https://github.com/hughsie/fwupd/archive/$pkgver/fwupd-$pkgver.tar.gz
 	$pkgname.initd
-	tests-busybox-gzip.patch
-	0001-do-not-assert-when-running-with-no-plugins.patch
 	"
 
 _plugins="
-	acpi_facp
 	acpi_phat
 	amt
 	analogix
@@ -61,11 +58,9 @@ _plugins="
 	goodixmoc
 	gpio
 	hailuck
-	iommu
 	jabra
 	lenovo_thinklmi
 	linux_lockdown
-	linux_sleep
 	linux_swap
 	linux_tainted
 	logind
@@ -114,18 +109,11 @@ _plugin_version=7
 case "$CARCH" in
 	x86*)
 		makedepends="$makedepends libsmbios-dev"
-		_plugins="$_plugins acpi_dmar acpi_ivrs dell dell_esrt msr"
+		_plugins="$_plugins iommu linux_sleep acpi_dmar acpi_facp acpi_ivrs dell dell_esrt msr"
 		;;
 	*) 	;;
 esac
 
-case "$CARCH" in
-	x86_64)
-		_plugins="$_plugins pci_psp"
-		;;
-	*)	;;
-esac
-
 case "$CARCH" in
 	x86*|armv7|aarch64)
 		# fwupd-efi needed for uefi-capsule
@@ -144,9 +132,11 @@ subpackages="$subpackages $pkgname-plugin-all:plugin_all"
 
 build() {
 	abuild-meson \
+		-Db_lto=true \
 		-Dconsolekit=enabled \
 		-Dfirmware-packager=true \
 		-Ddocs=none \
+		-Dhsi=enabled \
 		-Dlvfs=true \
 		-Dman=true \
 		-Dplugin_redfish=disabled \
@@ -210,8 +200,6 @@ plugin_all() {
 }
 
 sha512sums="
-271a1c2547f35322a7a7d83adc84d729ba73d810f6ac526d1c6aa2a9774dea1edc986b7d62481ebb70d43653577ced19f13f695dedf4012c82d814da70cb83f4  fwupd-1.8.3.tar.gz
+95b2eb2aa953ac9e2006d63664b7489b110bf6209bcffe1cd26766de65d70dfed2a8a78814f6a45595d2143dbccc0975759255bde96a928f6aab2a0d5c0caae5  fwupd-1.8.4.tar.gz
 4add6954bb3581b371d6105addde819cd41834d33293fe7362dbab4e0dccf486e2bbc96d5822fcb729ca568739cc5572c8e30d3db220f4476befbdc85ba8457b  fwupd.initd
-bd85fb36c05c360926b3a25fea92410e9bb381b82b734d7c5e9cfe72a5b2c236d064c934efff0455431c1f22582ac9d0c0b79dd333e1eb813356aef9ac067bf9  tests-busybox-gzip.patch
-3c6e105389d7c2bcb68fe0a1b9ebb53c627ddee3e72186ebfcf42332a53332517e6ba65bca1d82cbbfc9dc2423aef69cc0f1c4d6ba81c9f3f9ac3d9f8c605401  0001-do-not-assert-when-running-with-no-plugins.patch
 "
diff --git a/community/fwupd/tests-busybox-gzip.patch b/community/fwupd/tests-busybox-gzip.patch
deleted file mode 100644
index 31a96d23f6abdf7495b20da3d0f572b97d2e979f..0000000000000000000000000000000000000000
--- a/community/fwupd/tests-busybox-gzip.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- a/src/tests/host-emulate/meson.build
-+++ b/src/tests/host-emulate/meson.build
-@@ -7,7 +7,7 @@
-       input: input_file,
-       output: '@0@.gz'.format(input_file),
-       capture: true,
--      command: [gzip, '--keep', '--stdout', '@INPUT@'],
-+      command: [gzip, '-k', '--stdout', '@INPUT@'],
-       install: true,
-       install_dir: join_paths(datadir, 'fwupd', 'host-emulate.d'),
-     )