diff --git a/0007-Use-the-volume-UUID-to-search-for-the-GRUB-config-in.patch b/0007-Use-the-volume-UUID-to-search-for-the-GRUB-config-in.patch
new file mode 100644
index 0000000..971372d
--- /dev/null
+++ b/0007-Use-the-volume-UUID-to-search-for-the-GRUB-config-in.patch
@@ -0,0 +1,46 @@
+From 2efdec8ba54caff05548d8711db6a3f9523b157d Mon Sep 17 00:00:00 2001
+From: Javier Martinez Canillas <javierm@redhat.com>
+Date: Mon, 8 Mar 2021 17:42:15 +0100
+Subject: [PATCH] Use the volume UUID to search for the GRUB config in btrfs
+ partitions
+
+For UEFI installs, a minimal GRUB config file is created in the EFI System
+Partition that is used to load the main config file that is located in the
+/boot/grub2 directory. The partition that contains the latter, is found by
+the minimal config searching a device with a given filesystem UUID.
+
+But for this to work the stage2 device must have a filesystem UUID set and
+blivet doesn't set this for partitions formatted with a btrfs filesystem.
+
+Because each btrfs volume will have its own UUID, the UUID of the volume
+that's mounted according to /etc/fstab must be used to search the device.
+
+Resolves: rhbz#1930567
+
+Signed-off-by: Javier Martinez Canillas <javierm@redhat.com>
+---
+ pyanaconda/modules/storage/bootloader/efi.py | 8 +++++++-
+ 1 file changed, 7 insertions(+), 1 deletion(-)
+
+diff --git a/pyanaconda/modules/storage/bootloader/efi.py b/pyanaconda/modules/storage/bootloader/efi.py
+index 425cb31954..82f60e4c40 100644
+--- a/pyanaconda/modules/storage/bootloader/efi.py
++++ b/pyanaconda/modules/storage/bootloader/efi.py
+@@ -172,7 +172,13 @@ class EFIGRUB(EFIBase, GRUB2):
+ 
+         with open(config_path, "w") as fd:
+             grub_dir = self.config_dir
+-            fs_uuid = self.stage2_device.format.uuid
++            if self.stage2_device.format.type != "btrfs":
++                fs_uuid = self.stage2_device.format.uuid
++            else:
++                fs_uuid = self.stage2_device.format.vol_uuid
++
++            if fs_uuid is None:
++                raise BootLoaderError("Could not get stage2 filesystem UUID")
+ 
+             grub_dir = util.execWithCapture("grub2-mkrelpath", [grub_dir],
+                                             root=conf.target.system_root)
+-- 
+2.26.2
+
diff --git a/3230.patch b/3230.patch
new file mode 100644
index 0000000..9404230
--- /dev/null
+++ b/3230.patch
@@ -0,0 +1,35 @@
+From 2fda26c1ec30da3b5fb8bdc4bbe6720d7870b2ec Mon Sep 17 00:00:00 2001
+From: Radek Vykydal <rvykydal@redhat.com>
+Date: Tue, 9 Mar 2021 17:51:00 +0100
+Subject: [PATCH] Do not follow symlinks when copying /etc/resolv.conf
+ (#1933454)
+
+---
+ pyanaconda/modules/network/installation.py | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/pyanaconda/modules/network/installation.py b/pyanaconda/modules/network/installation.py
+index ed61ae961b..0d87101b93 100644
+--- a/pyanaconda/modules/network/installation.py
++++ b/pyanaconda/modules/network/installation.py
+@@ -225,9 +225,9 @@ def _copy_resolv_conf(self, root, overwrite):
+         :param overwrite: overwrite existing configuration file
+         :type overwrite: bool
+         """
+-        self._copy_file_to_root(root, self.RESOLV_CONF_FILE_PATH)
++        self._copy_file_to_root(root, self.RESOLV_CONF_FILE_PATH, follow_symlinks=False)
+ 
+-    def _copy_file_to_root(self, root, config_file, overwrite=False):
++    def _copy_file_to_root(self, root, config_file, overwrite=False, follow_symlinks=True):
+         """Copy the file to target system.
+ 
+         :param root: path to the root of the target system
+@@ -244,7 +244,7 @@ def _copy_file_to_root(self, root, config_file, overwrite=False):
+             return
+         if not os.path.isdir(os.path.dirname(fpath)):
+             util.mkdirChain(os.path.dirname(fpath))
+-        shutil.copy(config_file, fpath)
++        shutil.copy(config_file, fpath, follow_symlinks=follow_symlinks)
+ 
+     def _copy_device_config_files(self, root):
+         """Copy network device config files to target system.
diff --git a/anaconda.spec b/anaconda.spec
index fea821c..7ca5d18 100644
--- a/anaconda.spec
+++ b/anaconda.spec
@@ -1,7 +1,7 @@
 Summary: Graphical system installer
 Name:    anaconda
 Version: 34.24.5
-Release: 3%{?dist}
+Release: 5%{?dist}
 License: GPLv2+ and MIT
 URL:     http://fedoraproject.org/wiki/Anaconda
 
@@ -27,6 +27,14 @@ Patch3: 0004-Determine-GRUB-directory-relative-path-to-use-in-con.patch
 Patch4: 0005-The-network-spoke-should-be-visible-in-live-spins-19.patch
 Patch5: 0006-Choose-the-best-locale-more-carefully-1933384.patch
 
+# Proposed fix for https://bugzilla.redhat.com/show_bug.cgi?id=1933454
+# https://github.com/rhinstaller/anaconda/pull/3230
+Patch6: 3230.patch
+
+# FE fix for a BTRFS GRUB issue
+# https://bugzilla.redhat.com/show_bug.cgi?id=1930567
+Patch7: 0007-Use-the-volume-UUID-to-search-for-the-GRUB-config-in.patch
+
 # Versions of required components (done so we make sure the buildrequires
 # match the requires versions of things).
 
@@ -427,6 +435,12 @@ desktop-file-install --dir=%{buildroot}%{_datadir}/applications %{buildroot}%{_d
 %{_prefix}/libexec/anaconda/dd_*
 
 %changelog
+* Wed Mar 10 2021 Martin Kolman <mkolman@redhat.com> - 34.24.5-5
+- Use the volume UUID to search for the GRUB config in btrfs partitions (#1930567) (vponcova)
+
+* Tue Mar 09 2021 Adam Williamson <awilliam@redhat.com> - 34.24.5-4
+- Backport #3230 to try and fix #1933454
+
 * Tue Mar 02 2021 Martin Kolman <mkolman@redhat.com> - 34.24.5-3
 - Choose the best locale more carefully (#1933384) (vponcova)