summaryrefslogtreecommitdiff
path: root/gnu/installer/newt/partition.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/installer/newt/partition.scm')
-rw-r--r--gnu/installer/newt/partition.scm33
1 files changed, 23 insertions, 10 deletions
diff --git a/gnu/installer/newt/partition.scm b/gnu/installer/newt/partition.scm
index 81cf68d782..ea524eb4c3 100644
--- a/gnu/installer/newt/partition.scm
+++ b/gnu/installer/newt/partition.scm
@@ -95,14 +95,17 @@ DEVICES list."
(define (run-label-page button-text button-callback)
"Run a page asking the user to select a partition table label."
- (run-listbox-selection-page
- #:info-text (G_ "Select a new partition table type. \
+ ;; Force the GPT label if UEFI is supported.
+ (if (efi-installation?)
+ "gpt"
+ (run-listbox-selection-page
+ #:info-text (G_ "Select a new partition table type. \
Be careful, all data on the disk will be lost.")
- #:title (G_ "Partition table")
- #:listbox-items '("msdos" "gpt")
- #:listbox-item->text identity
- #:button-text button-text
- #:button-callback-procedure button-callback))
+ #:title (G_ "Partition table")
+ #:listbox-items '("msdos" "gpt")
+ #:listbox-item->text identity
+ #:button-text button-text
+ #:button-callback-procedure button-callback)))
(define (run-type-page partition)
"Run a page asking the user to select a partition type."
@@ -128,7 +131,7 @@ Be careful, all data on the disk will be lost.")
(run-listbox-selection-page
#:info-text (G_ "Please select the file-system type for this partition.")
#:title (G_ "File-system type")
- #:listbox-items '(ext4 btrfs fat16 fat32 jfs ntfs swap)
+ #:listbox-items '(ext4 btrfs fat16 fat32 jfs ntfs xfs swap)
#:listbox-item->text user-fs-type-name
#:sort-listbox-items? #f
#:button-text (G_ "Exit")
@@ -640,8 +643,10 @@ edit it."
default-result))))
((partition? item)
(if (freespace-partition? item)
- (run-error-page (G_ "You cannot delete a free space area.")
- (G_ "Delete partition"))
+ (begin
+ (run-error-page (G_ "You cannot delete a free space area.")
+ (G_ "Delete partition"))
+ default-result)
(let* ((disk (partition-disk item))
(number-str (partition-print-number item))
(info-text
@@ -706,6 +711,13 @@ by pressing the Exit button.~%~%")))
(run-error-page
(G_ "No root mount point found.")
(G_ "Missing mount point"))
+ #f)
+ ((cannot-read-uuid? c)
+ (run-error-page
+ (format #f (G_ "Cannot read the ~a partition UUID.\
+ You may need to format it.")
+ (cannot-read-uuid-partition c))
+ (G_ "Wrong partition format"))
#f))
(check-user-partitions user-partitions))))
(if user-partitions-ok?
@@ -786,6 +798,7 @@ by pressing the Exit button.~%~%")))
(format-user-partitions user-partitions-with-pass)
(syslog "formatted ~a user partitions~%"
(length user-partitions-with-pass))
+ (syslog "user-partitions: ~a~%" user-partitions)
(destroy-form-and-pop form)
user-partitions))