summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorThierry Vignaud <thierry.vignaud@gmail.com>2020-02-14 15:29:27 +0100
committerThierry Vignaud <thierry.vignaud@gmail.com>2020-03-18 11:52:54 +0100
commit54ef314639772e0a09aa8e6af36d2daf61c04479 (patch)
tree581e10d3ee5ac93b0cd8bd4f775112df7ec9eda5
parent8974a1c84810d773e015ec6ad7e92e975c579733 (diff)
downloaddrakx-54ef314639772e0a09aa8e6af36d2daf61c04479.tar
drakx-54ef314639772e0a09aa8e6af36d2daf61c04479.tar.gz
drakx-54ef314639772e0a09aa8e6af36d2daf61c04479.tar.bz2
drakx-54ef314639772e0a09aa8e6af36d2daf61c04479.tar.xz
drakx-54ef314639772e0a09aa8e6af36d2daf61c04479.zip
add support for F2FS
-rw-r--r--perl-install/NEWS1
-rw-r--r--perl-install/diskdrake/interactive.pm5
-rw-r--r--perl-install/fs/format.pm2
-rw-r--r--perl-install/fs/mount.pm2
-rw-r--r--perl-install/fs/type.pm4
-rw-r--r--perl-install/install/NEWS4
-rw-r--r--perl-install/install/share/list.xml1
7 files changed, 15 insertions, 4 deletions
diff --git a/perl-install/NEWS b/perl-install/NEWS
index b7ebeb824..8123c156a 100644
--- a/perl-install/NEWS
+++ b/perl-install/NEWS
@@ -1,6 +1,7 @@
- update list for modules needing firmware
- recognize new kernel 5.2 - 5.4 drivers
- diskdrake:
+ o add support for F2FS
o enhanced internal doc
o make reformating nilfs2 fses to work
o support adding partitions to Live ISOs on USB sticks (mga#25224)
diff --git a/perl-install/diskdrake/interactive.pm b/perl-install/diskdrake/interactive.pm
index d1a0c28a9..0247561b8 100644
--- a/perl-install/diskdrake/interactive.pm
+++ b/perl-install/diskdrake/interactive.pm
@@ -789,6 +789,9 @@ sub Resize {
} else {
delete $nice_resize{ext2};
}
+ } elsif ($part->{fs_type} eq 'f2fs') {
+ $min = $part->{size}; #- ensure the user can only increase
+ $nice_resize{f2fs} = 1;
} elsif ($part->{fs_type} =~ /ntfs/) {
write_partitions($in, $hd) or return;
require diskdrake::resize_ntfs;
@@ -905,6 +908,8 @@ filesystem checks will be run on your next boot into Microsoft Windows®"));
unlink($dir);
}
}
+ } elsif ($nice_resize{f2fs}) {
+ run_program::run_or_die("resize.f2fs", devices::make($part->{device}));
} elsif ($nice_resize{nilfs}) {
run_program::run_or_die("nilfs-resize", $part->{mntpoint});
}
diff --git a/perl-install/fs/format.pm b/perl-install/fs/format.pm
index b75ed54a6..23f37502a 100644
--- a/perl-install/fs/format.pm
+++ b/perl-install/fs/format.pm
@@ -28,6 +28,7 @@ my %cmds = (
ext2 => [ 'e2fsprogs', 'mkfs.ext2', '-F' ],
ext3 => [ 'e2fsprogs', 'mkfs.ext3', '-F' ],
ext4 => [ 'e2fsprogs', 'mkfs.ext4', '-F' ],
+ f2fs => [ 'f2fs-tools', 'mkfs.f2fs', '-f' ],
reiserfs => [ 'reiserfsprogs', 'mkfs.reiserfs', '-ff' ],
xfs => [ 'xfsprogs', 'mkfs.xfs', '-f', '-q' ],
jfs => [ 'jfsutils', 'mkfs.jfs', '-f' ],
@@ -52,6 +53,7 @@ my %LABELs = (
ext2 => [ '-L', 16, 1 ],
ext3 => [ '-L', 16, 1 ],
ext4 => [ '-L', 16, 1 ],
+ f2fs => [ '-l', 16, 1 ],
reiserfs => [ '-l', 16, 1 ],
xfs => [ '-L', 12, 1 ],
jfs => [ '-L', 16, 1 ],
diff --git a/perl-install/fs/mount.pm b/perl-install/fs/mount.pm
index 85f6fcc07..6afaa9260 100644
--- a/perl-install/fs/mount.pm
+++ b/perl-install/fs/mount.pm
@@ -35,7 +35,7 @@ sub mount {
$fs or log::l("not mounting $dev partition"), return;
{
- my @fs_modules = qw(btrfs ext3 ext4 hfs jfs nilfs2 nfs ntfs romfs reiserfs ufs xfs vfat);
+ my @fs_modules = qw(btrfs ext3 ext4 f2fs hfs jfs nilfs2 nfs ntfs romfs reiserfs ufs xfs vfat);
my @types = (qw(ext2 proc sysfs iso9660 devpts auto ntfs-3g), @fs_modules);
push @types, 'smb', 'cifs', 'davfs2' if !$::isInstall;
diff --git a/perl-install/fs/type.pm b/perl-install/fs/type.pm
index f4820e90b..b80340dfd 100644
--- a/perl-install/fs/type.pm
+++ b/perl-install/fs/type.pm
@@ -108,6 +108,7 @@ if_(arch() =~ /i.86|x86_64/,
0x75 => '', 'PC/IX',
0x80 => '', 'Old Minix',
0x81 => '', 'Minix / old Linux',
+ 0x83 => 'f2fs', 'Journalised FS: F2FS',
0x83 => 'reiserfs', 'Journalised FS: ReiserFS',
0x83 => 'nilfs2', 'Journalised FS: NILFS2',
0x84 => '', 'OS/2 hidden C: drive',
@@ -300,8 +301,7 @@ sub type_subpart_from_magic {
# helpers
sub defaultFS() { 'ext4' }
-
-sub true_local_fs_types() { qw(btrfs ext3 ext2 ext4 reiserfs xfs jfs) }
+sub true_local_fs_types() { qw(btrfs ext3 ext2 ext4 f2fs reiserfs xfs jfs) }
sub isEmpty { !$_[0]{fs_type} && !$_[0]{pt_type} }
sub isBIOS_GRUB { $_[0]{pt_type} eq 'BIOS_GRUB' }
diff --git a/perl-install/install/NEWS b/perl-install/install/NEWS
index 1fbd6244f..f95486fe4 100644
--- a/perl-install/install/NEWS
+++ b/perl-install/install/NEWS
@@ -1,11 +1,13 @@
- adjust debug build to current python
+- partitioning:
+ o enable to install on F2FS formated partitions
Version 18.24 - 15 March 2020
- fix tracking of installed packages (mga#26284)
- include plugin for supporting Windows 10 NTFS "Compact OS"
- drakx-in-chroot:
- o skip disk ESP & BIOS boot partition checks
+ o skip disk ESP & BIOS boot partition checks
- partitioning:
o make reformating nilfs2 fses to work
- sync list for modules needing firmware with kernel 5.5
diff --git a/perl-install/install/share/list.xml b/perl-install/install/share/list.xml
index 098081331..32ff123b1 100644
--- a/perl-install/install/share/list.xml
+++ b/perl-install/install/share/list.xml
@@ -26,6 +26,7 @@
xfs_db <!-- needed by xfs_admin for setting UUID -->
mkfs.btrfs btrfs btrfsck fsck.btrfs btrfstune
+ mkfs.f2fs fsck.f2fs resize.f2fs
mkfs.jfs fsck.jfs jfs_tune
mkfs.nilfs2 nilfs-tune