From eaaa184c8cd8ef0407ad239d4fdcbb15a56e6ae4 Mon Sep 17 00:00:00 2001 From: Neal Gompa Date: Tue, 17 Dec 2019 19:53:47 -0500 Subject: [PATCH] Enable /boot on btrfs subvolume with GRUB2 This depends on a version of grubby with btrfs subvolume support. For example, grubby >= 8.40-10.fc29. This essentially reverses the block imposed in response to rhbz#864198 and correctly resolves rhbz#1038885. --- anaconda.spec.in | 4 ++++ pyanaconda/bootloader/grub2.py | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) diff --git a/anaconda.spec.in b/anaconda.spec.in index 7010715b680c..5107400d5382 100644 --- a/anaconda.spec.in +++ b/anaconda.spec.in @@ -131,6 +131,10 @@ Requires: glibc-langpack-en # even though the distro default is dbus-broker in F30+ Requires: dbus-daemon +# Ensure it's not possible for a version of grubby to be installed +# that doesn't work with btrfs subvolumes correctly... +Conflicts: grubby < 8.40-10 + Obsoletes: anaconda-images <= 10 Provides: anaconda-images = %{version}-%{release} Obsoletes: anaconda-runtime < %{version}-%{release} diff --git a/pyanaconda/bootloader/grub2.py b/pyanaconda/bootloader/grub2.py index 47c6fcb1374e..6d21ddbf3d6a 100644 --- a/pyanaconda/bootloader/grub2.py +++ b/pyanaconda/bootloader/grub2.py @@ -114,7 +114,7 @@ class GRUB2(BootLoader): stage2_must_be_primary = False # requirements for boot devices - stage2_device_types = ["partition", "mdarray"] + stage2_device_types = ["partition", "mdarray", "btrfs subvolume"] stage2_raid_levels = [raid.RAID0, raid.RAID1, raid.RAID4, raid.RAID5, raid.RAID6, raid.RAID10] stage2_raid_member_types = ["partition"]