From d68de958b60426798ed62797ff7c96c327a672ac Mon Sep 17 00:00:00 2001 From: Ludovic Courtès Date: Sun, 19 May 2019 11:58:36 +0200 Subject: installer: Fix Guile-Parted crash on i686. Fixes . This is a followup to 7d567af46b4e10ffafb1d0f76b524f5781460598. * gnu/installer/parted.scm (auto-partition!): Append ESP-PARTITION, when it is true, to the result of 'create-adjacent-partitions!'. * gnu/installer/newt/partition.scm (run-partioning-page): Remove 'initial-partitions' variable, and remove call to 'create-special-user-partitions'. Co-authored-by: Mathieu Othacehe --- gnu/installer/newt/partition.scm | 6 +----- gnu/installer/parted.scm | 16 +++++++++++----- 2 files changed, 12 insertions(+), 10 deletions(-) diff --git a/gnu/installer/newt/partition.scm b/gnu/installer/newt/partition.scm index abc8bdcc03..cd9d46316a 100644 --- a/gnu/installer/newt/partition.scm +++ b/gnu/installer/newt/partition.scm @@ -751,12 +751,8 @@ by pressing the Exit button.~%~%"))) (disk (mklabel device label))) (disk-commit disk) disk))) - (initial-partitions (disk-partitions disk)) (scheme (symbol-append method '- (run-scheme-page))) - (user-partitions (append - (auto-partition! disk #:scheme scheme) - (create-special-user-partitions - initial-partitions)))) + (user-partitions (auto-partition! disk #:scheme scheme))) (run-disk-page (list disk) user-partitions #:guided? #t))) ((eq? method 'manual) diff --git a/gnu/installer/parted.scm b/gnu/installer/parted.scm index 4ccc0b1f51..bd2640d1ad 100644 --- a/gnu/installer/parted.scm +++ b/gnu/installer/parted.scm @@ -895,7 +895,10 @@ partitions (except the ESP on a GPT disk, if present) are wiped. SCHEME is the desired partitioning scheme. It can be 'entire-root or 'entire-root-home. 'entire-root will create a swap partition and a root partition occupying all the remaining space. 'entire-root-home will create a -swap partition, a root partition and a home partition." +swap partition, a root partition and a home partition. + +Return the complete list of partitions on DISK, including the ESP when it +exists." (let* ((device (disk-device disk)) (disk-type (disk-disk-type disk)) (has-extended? (disk-type-check-feature @@ -1001,10 +1004,13 @@ swap partition, a root partition and a home partition." (mount-point "/home"))))))) (new-partitions* (force-user-partitions-formatting new-partitions))) - (create-adjacent-partitions! disk - new-partitions* - #:last-partition-end - (or end-esp-partition 0))))) + (append (if esp-partition + (list (partition->user-partition esp-partition)) + '()) + (create-adjacent-partitions! disk + new-partitions* + #:last-partition-end + (or end-esp-partition 0)))))) ;; -- cgit 1.4.1