Switch to EROFS for Live Media
Summary
Switch the read-only filesystem image format from SquashFS to EROFS for Fedora live media.
Owner
- Name: Neal Gompa for kiwi produced media
- Email: ngompa13@gmail.com
- Name: Dusty Mabe for CoreOS produced media
- Email: dusty@dustymabe.com
Current status
- Targeted release: Fedora Linux 42
- Last updated: 2025-01-31
- Announced
- Discussion thread
- FESCo issue: #3356
- Tracker bug: <will be assigned by the Wrangler>
- Release notes tracker: <will be assigned by the Wrangler>
Detailed Description
In recent years, there has been increasing adoption of a new, more advanced read-only filesystem for a variety of use-cases called the Enhanced Read-Only FileSystem (EROFS). Support for EROFS as the backing read-only filesystem for live environments was introduced in Dracut v103. This change switches over the following live media to use EROFS instead of SquashFS:
- all kiwi-produced live media. Currently:
- KDE Desktop
- KDE Mobile
- LXQt
- MiracleWM
- COSMIC
- Xfce
- Budgie
- Fedora CoreOS Live media
- i.e. fedora-coreos-42.2025XXXX.91.0-live-iso.x86_64.iso
Note: When future editions/spins get moved to kiwi they will inherit this change.
Feedback
Benefit to Fedora
EROFS is more actively developed than SquashFS, and offers more modern file system features that can be utilized in the future. Moving to EROFS for Fedora Live media will also help to align with downstream RHEL 10 that will use EROFS for live media.
Scope
- Proposal owners:
- Kiwi: Merge fedora-kiwi-descriptions#105
- CoreOS: Implement fedora-coreos-tracker#1852. This will require work in OSBuild, since OSBuild builds the Fedora CoreOS Live ISO now.
- Other developers:
- Release engineering: #12520
- Policies and guidelines: N/A (not needed for this Change)
- Trademark approval: N/A (not needed for this Change)
- Alignment with the Fedora Strategy: N/A (not needed for this Change)
Upgrade/compatibility impact
There should be no visible impact. This only affects live media used to make fresh installations.
Recent tests on Fedora CoreOS Live media show EROFS producing media that is on-par with squashfs; slightly better compression size, but slightly worse compression times:
Command | Time | Size |
---|---|---|
mksquashfs -comp zstd (level 15) |
22.5s | 699M |
mksquashfs -comp xz |
44.4s | 668M |
mkfs.erofs -zlzma,6 -Eall-fragments,fragdedupe=inode -C131072 |
47.9s | 656M |
mkfs.erofs -zlzma,6 -Eall-fragments,fragdedupe=inode -C1048576 |
57.1s | 629M |
How To Test
Once the change is applied, users can grab nightly Fedora live images that fall in scope (such as the KDE and LXQt images) to test it. Simply booting the images in a VM and installing the environment is a sufficient test.
For Fedora CoreOS, nightly rawhide installation media can be used to perform an install.
User Experience
There should be no visible impact to users. Live installations continue to work as expected, and live environments may be slightly faster.
Dependencies
N/A. Everything has been in place and supported since Fedora Linux 41.
Contingency Plan
If we find issues or serious performance regressions we can revert the change. For Fedora CoreOS each build's media is exhaustively tested in CI, so any issues should be found well in advance of shipping media to end users.
- Contingency mechanism: Revert back to SquashFS.
- Contingency deadline: Final Freeze.
- Blocks release? Yes.
Documentation
N/A (not a System Wide Change)
Release Notes
Fedora Linux live environments now use the Enhanced Read-Only FileSystem (EROFS), a modern, feature-rich read-only filesystem.