diff --git a/.gitignore b/.gitignore
index 440b591..3e8922f 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1 @@
-SOURCES/rpm-ostree-2022.2.tar.xz
+SOURCES/rpm-ostree-2022.10.90.g4abaf4b4.tar.xz
diff --git a/.rpm-ostree.metadata b/.rpm-ostree.metadata
index e683e54..baf361a 100644
--- a/.rpm-ostree.metadata
+++ b/.rpm-ostree.metadata
@@ -1 +1 @@
-1bcee7eba384617fb49922310275f708a97a2fcf SOURCES/rpm-ostree-2022.2.tar.xz
+00674220f1468ad2f63062668cdd02022b2eba43 SOURCES/rpm-ostree-2022.10.90.g4abaf4b4.tar.xz
diff --git a/SPECS/rpm-ostree.spec b/SPECS/rpm-ostree.spec
index 4923bf9..8fbb452 100644
--- a/SPECS/rpm-ostree.spec
+++ b/SPECS/rpm-ostree.spec
@@ -3,12 +3,12 @@
 
 Summary: Hybrid image/package system
 Name: rpm-ostree
-Version: 2022.2
-Release: 2%{?dist}
+Version: 2022.10.90.g4abaf4b4
+Release: 4%{?dist}
 License: LGPLv2+
 URL: https://github.com/coreos/rpm-ostree
 # This tarball is generated via "cd packaging && make -f Makefile.dist-packaging dist-snapshot"
-# in the upstream git.  It also contains vendored Rust sources.
+# in the upstream git.  It also contains vendored Rust sources.  This is generated from the "rhel8" branch.
 Source0: https://github.com/coreos/rpm-ostree/releases/download/v%{version}/rpm-ostree-%{version}.tar.xz
 
 ExclusiveArch: %{rust_arches}
@@ -24,6 +24,15 @@ BuildRequires: rust
 
 # Enable ASAN + UBSAN
 %bcond_with sanitizers
+# Embedded unit tests
+%bcond_with bin_unit_tests
+
+# This is copied from the libdnf spec
+%if 0%{?rhel} && ! 0%{?centos}
+%bcond_without rhsm
+%else
+%bcond_with rhsm
+%endif
 
 # RHEL8 doesn't ship zchunk today.  See also the comments
 # in configure.ac around this as libdnf/librepo need to be in
@@ -94,6 +103,14 @@ BuildRequires:  pkgconfig(smartcols)
 BuildRequires:  pkgconfig(zck) >= 0.9.11
 %endif
 BuildRequires:  gpgme-devel
+%if 0%{?rhel} <= 8
+# In current Fedora, this is a dependency of gpgme-devel, but
+# not in RHEL8.  Missing this package breaks -znow.
+BuildRequires:  libassuan-devel
+%endif
+%if %{with rhsm}
+BuildRequires:  pkgconfig(librhsm) >= 0.0.3
+%endif
 
 # Runtime libdnf deps
 Requires:       libmodulemd%{?_isa} >= %{libmodulemd_version}
@@ -142,7 +159,8 @@ env NOCONFIGURE=1 ./autogen.sh
 %if 0%{?build_rustflags:1}
 export RUSTFLAGS="%{build_rustflags}"
 %endif
-%configure --disable-silent-rules --enable-gtk-doc %{?sqlite_rpmdb_default} %{?with_sanitizers:--enable-sanitizers}
+%configure --disable-silent-rules --enable-gtk-doc %{?rpmdb_default} %{?with_sanitizers:--enable-sanitizers}  %{?with_bin_unit_tests:--enable-bin-unit-tests} \
+  %{?with_rhsm:--enable-featuresrs=rhsm}
 
 %make_build
 
@@ -184,6 +202,7 @@ $PYTHON autofiles.py > files \
   '%{_sysconfdir}/rpm-ostreed.conf' \
   '%{_prefix}/lib/systemd/system/*' \
   '%{_libexecdir}/rpm-ostree*' \
+  '%{_libexecdir}/libostree/ext/*' \
   '%{_datadir}/polkit-1/actions/*.policy' \
   '%{_datadir}/dbus-1/system-services' \
   '%{_datadir}/bash-completion/completions/*'
@@ -208,6 +227,22 @@ $PYTHON autofiles.py > files.devel \
 %files devel -f files.devel
 
 %changelog
+* Tue Aug 16 2022 Colin Walters <walters@verbum.org> - 2022.10.90.g4abaf4b4-4
+- Update to latest https://github.com/coreos/rpm-ostree/tree/rhel8 at commit
+  https://github.com/coreos/rpm-ostree/commit/4abaf4b4
+  Resolves: rhbz#2118774
+
+* Tue Jul 19 2022 Colin Walters <walters@verbum.org> - 2022.10.86.gd8f0c67a-3
+- Update to latest https://github.com/coreos/rpm-ostree/tree/rhel8 at commit
+  https://github.com/coreos/rpm-ostree/commit/d8f0c67a0eba32281c9f2782a286e06486a4b909
+  Resolves: rhbz#2105414
+
+* Wed Jun 15 2022 Colin Walters <walters@verbum.org> - 2022.2.8.gd50a74bd-2
+- Update to latest rhel8 branch
+  https://github.com/coreos/rpm-ostree/pull/3749
+  https://github.com/coreos/rpm-ostree/pull/3751
+  Resolves: rhbz#2095528
+
 * Mon Feb 07 2022 Colin Walters <walters@verbum.org> - 2022.2-2
 - Rebase to 2022.1