summaryrefslogtreecommitdiff
path: root/gnu/installer
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/installer')
-rw-r--r--gnu/installer/newt/partition.scm2
-rw-r--r--gnu/installer/parted.scm18
2 files changed, 16 insertions, 4 deletions
diff --git a/gnu/installer/newt/partition.scm b/gnu/installer/newt/partition.scm
index fe30953a41..ea524eb4c3 100644
--- a/gnu/installer/newt/partition.scm
+++ b/gnu/installer/newt/partition.scm
@@ -131,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")
diff --git a/gnu/installer/parted.scm b/gnu/installer/parted.scm
index c000b1dec2..cbe676017b 100644
--- a/gnu/installer/parted.scm
+++ b/gnu/installer/parted.scm
@@ -231,6 +231,7 @@ inferior to MAX-SIZE, #f otherwise."
((fat32) "fat32")
((jfs) "jfs")
((ntfs) "ntfs")
+ ((xfs) "xfs")
((swap) "linux-swap")))
(define (user-fs-type->mount-type fs-type)
@@ -241,7 +242,8 @@ inferior to MAX-SIZE, #f otherwise."
((fat16) "vfat")
((fat32) "vfat")
((jfs) "jfs")
- ((ntfs) "ntfs")))
+ ((ntfs) "ntfs")
+ ((xfs) "xfs")))
(define (partition-filesystem-user-type partition)
"Return the filesystem type of PARTITION, to be stored in the FS-TYPE field
@@ -256,6 +258,7 @@ of <user-partition> record."
((string=? name "fat32") 'fat32)
((string=? name "jfs") 'jfs)
((string=? name "ntfs") 'ntfs)
+ ((string=? name "xfs") 'xfs)
((or (string=? name "swsusp")
(string=? name "linux-swap(v0)")
(string=? name "linux-swap(v1)"))
@@ -895,7 +898,7 @@ partition."
(format #f "Unable to create partition ~a~%" name)))))))))
(define (force-user-partitions-formatting user-partitions)
- "Set the NEED-FORMATING? fields to #t on all <user-partition> records of
+ "Set the NEED-FORMATTING? fields to #t on all <user-partition> records of
USER-PARTITIONS list and return the updated list."
(map (lambda (p)
(user-partition
@@ -1125,6 +1128,11 @@ bit bucket."
(with-null-output-ports
(invoke "mkfs.ntfs" "-F" "-f" partition)))
+(define (create-xfs-file-system partition)
+ "Create an XFS file-system for PARTITION file-name."
+ (with-null-output-ports
+ (invoke "mkfs.xfs" "-f" partition)))
+
(define (create-swap-partition partition)
"Set up swap area on PARTITION file-name."
(with-null-output-ports
@@ -1169,7 +1177,7 @@ USER-PARTITION if it is encrypted, or the plain file-name otherwise."
(define (format-user-partitions user-partitions)
"Format the <user-partition> records in USER-PARTITIONS list with
-NEED-FORMATING? field set to #t."
+NEED-FORMATTING? field set to #t."
(for-each
(lambda (user-partition)
(let* ((need-formatting?
@@ -1206,6 +1214,10 @@ NEED-FORMATING? field set to #t."
(and need-formatting?
(not (eq? type 'extended))
(create-ntfs-file-system file-name)))
+ ((xfs)
+ (and need-formatting?
+ (not (eq? type 'extended))
+ (create-xfs-file-system file-name)))
((swap)
(create-swap-partition file-name))
(else