Created attachment 139178 [details] screnshot, current create new partition Advantages of the "Linux systems only" option using Btrfs instead of ext4: * Always on checksumming for metadata and data - Flash is notoriously of variable quality, often the first indication of imminent failure are small transient corruptions that get progressively worse. Btrfs not only detects such corruption but will issue an I/O Error for blocks that fail integrity checking, preventing replication of damaged files. * Native compression - separately or as part of this proposed change, also enable minimal (performant) compression via compress=zstd:1 mount option by default. This will improve performance, since removable flash devices are pretty slow. It will also improve performance on (spinning) hard drives. An extra benefit is it substantially reduces writes and thus wear on flash. And effectively greater storage capacity is likewise a bonus. Kernel 4.14+ supports zstd. Prior efforts: * (open)SUSE defaults to Btrfs for a long time now, for / and /home * Fedora 33 Workstation, and all desktop spins default to Btrfs. * systemd-homed defaults to Btrfs beginning with v247. To do: * Support FS_IOC_SETFSLABEL so we can change file system labels while the fs is mounted. Ideally get ext4 and XFS to support this ioctl as well. * Btrfs subpage support, so file system are portable across arches using a page size other than the common 4KiB. (Read only support has happened, and read-write support should land in 5.14.) * Partition -> Check -> Check and Repair probably should only do 'btrfs check --readonly' and report any issues.
I'll try to ask around what others are thinking of this. I myself used Btrfs since 2009, but didn't really think of changing default in partition manager... Especially since default matters much more in installers.
Git commit 9212d7446440a8f92e7af556cea030b372812379 by Andrius Štikonas. Committed on 10/06/2021 at 22:22. Pushed by stikonas into branch 'master'. Switch default file system to Btrfs M +1 -1 src/partitionmanager.kcfg https://invent.kde.org/system/partitionmanager/commit/9212d7446440a8f92e7af556cea030b372812379