diff options
author | Mathieu Othacehe <othacehe@gnu.org> | 2022-08-05 08:50:51 +0200 |
---|---|---|
committer | Mathieu Othacehe <othacehe@gnu.org> | 2022-08-05 08:57:20 +0200 |
commit | 3c381af76a144a4dc3d0f9269f43ee2ec501b538 (patch) | |
tree | dfd21da54a5d81385be4cd205c88bc91f191e495 | |
parent | eb0277e7e391319a5377084dd2d18c7114ec9a8a (diff) | |
download | guix-3c381af76a144a4dc3d0f9269f43ee2ec501b538.tar.gz guix-3c381af76a144a4dc3d0f9269f43ee2ec501b538.zip |
installer: parted: Call set-system before set-flags.
Parted 3.5 introduces the following regression:
- partition-set-flag sets the BIOS_GRUB flag. The partition type is set to
PARTITION_BIOS_GRUB_GUID.
- partition-set-system resets the partition type to PARTITION_LINUX_DATA_GUID
undoing what's done by partition-set-flag.
To prevent it, reverse the call order.
Fixes: <https://issues.guix.gnu.org/55549>.
* gnu/installer/parted.scm (mkpart): Call partition-set-system before
partition-set-flag.
-rw-r--r-- | gnu/installer/parted.scm | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/gnu/installer/parted.scm b/gnu/installer/parted.scm index 6c823e77eb..ba0a38fff8 100644 --- a/gnu/installer/parted.scm +++ b/gnu/installer/parted.scm @@ -845,15 +845,18 @@ cause them to cross." (when (and partition-ok? has-name? name) (partition-set-name partition name)) - ;; Set flags is required. + ;; Both partition-set-system and partition-set-flag calls can affect + ;; the partition type. Their order is important, see: + ;; https://issues.guix.gnu.org/55549. + (partition-set-system partition filesystem-type) + + ;; Set flags if required. (for-each (lambda (flag) (and (partition-is-flag-available? partition flag) (partition-set-flag partition flag 1))) flags) - (and partition-ok? - (partition-set-system partition filesystem-type) - partition)))))) + (and partition-ok? partition)))))) ;; |