Merged update from upstream sources
This is an automated DistroBaker update from upstream sources. If you do not know what this is about or would like to opt out, contact the OSCI team. Source: https://src.fedoraproject.org/rpms/anaconda.git#6ec5acaa05fcee83d115e606f4e9333aa52cbf41
This commit is contained in:
parent
74d5a65f67
commit
8dd0a3a698
@ -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
|
||||
|
35
3230.patch
Normal file
35
3230.patch
Normal file
@ -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.
|
@ -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)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user