summaryrefslogtreecommitdiff
path: root/src/Propellor/Property/Partition.hs
diff options
context:
space:
mode:
authorJoey Hess2015-09-02 11:40:46 -0700
committerJoey Hess2015-09-02 11:40:46 -0700
commite6933eac69ca575bb7e19d083c6bea2cfb76a201 (patch)
tree38eeec68cce6c88adcbf2eeb9da0b24050ee247b /src/Propellor/Property/Partition.hs
parent7846ad9db602d50adbef4bd62edba3fcb158d0c9 (diff)
force partition formatting to happen for non-block devs and when already formatted
Diffstat (limited to 'src/Propellor/Property/Partition.hs')
-rw-r--r--src/Propellor/Property/Partition.hs14
1 files changed, 8 insertions, 6 deletions
diff --git a/src/Propellor/Property/Partition.hs b/src/Propellor/Property/Partition.hs
index 41bdf795..e4b067a5 100644
--- a/src/Propellor/Property/Partition.hs
+++ b/src/Propellor/Property/Partition.hs
@@ -25,17 +25,19 @@ formatted' opts YesReallyFormatPartition fs dev =
cmdProperty cmd opts' `requires` Apt.installed [pkg]
where
(cmd, opts', pkg) = case fs of
- EXT2 -> ("mkfs.ext2", optsdev, "e2fsprogs")
- EXT3 -> ("mkfs.ext3", optsdev, "e2fsprogs")
- EXT4 -> ("mkfs.ext4", optsdev, "e2fsprogs")
+ EXT2 -> ("mkfs.ext2", eff optsdev, "e2fsprogs")
+ EXT3 -> ("mkfs.ext3", eff optsdev, "e2fsprogs")
+ EXT4 -> ("mkfs.ext4", eff optsdev, "e2fsprogs")
BTRFS -> ("mkfs.btrfs", optsdev, "btrfs-tools")
- REISERFS -> ("mkfs.reiserfs", optsdev, "reiserfsprogs")
- XFS -> ("mkfs.xfs", optsdev, "xfsprogs")
+ REISERFS -> ("mkfs.reiserfs", "-ff":optsdev, "reiserfsprogs")
+ XFS -> ("mkfs.xfs", "-f":optsdev, "xfsprogs")
FAT -> ("mkfs.fat", optsdev, "dosfstools")
VFAT -> ("mkfs.vfat", optsdev, "dosfstools")
- NTFS -> ("mkfs.ntfs", optsdev, "ntfs-3g")
+ NTFS -> ("mkfs.ntfs", eff optsdev, "ntfs-3g")
LinuxSwap -> ("mkswap", optsdev, "util-linux")
optsdev = opts++[dev]
+ -- -F forces creating a filesystem even if the device already has one
+ eff l = "-F":l
-- | Uses the kpartx utility to create device maps for partitions contained
-- within a disk image file. The resulting devices are passed to the