When a btrfs partition is configured with both Compression= and CopyFiles=, we need to ensure files are copied during filesystem creation using mkfs.btrfs --rootdir, rather than copying files afterwards via loop device mounting. This is required because mkfs.btrfs can only apply compression settings when files are provided via --rootdir during filesystem creation. If we format the filesystem first and then mount it to copy files, the compression setting is meaningless. Modify the partition_needs_populate() condition to force the --rootdir code path when the format is btrfs and compression is requested. This ensures that partition_populate_directory() runs and creates a temporary directory with the files, which is then passed to make_filesystem() as the root parameter, allowing mkfs.btrfs to create the filesystem with compression applied. Fixes: https://github.com/systemd/systemd/issues/39584
System and Service Manager
Details
Most documentation is available on systemd's web site.
Assorted, older, general information about systemd can be found in the systemd Wiki.
Information about build requirements is provided in the README file.
Consult our NEWS file for information about what's new in the most recent systemd versions.
Please see the Code Map for information about this repository's layout and content.
Please see the Hacking guide for information on how to hack on systemd and test your modifications.
Please see our Contribution Guidelines for more information about filing GitHub Issues and posting GitHub Pull Requests.
When preparing patches for systemd, please follow our Coding Style Guidelines.
If you are looking for support, please contact our mailing list, join our IRC channel #systemd on libera.chat or Matrix channel
Stable branches with backported patches are available in the stable repo.
We have a security bug bounty program sponsored by the Sovereign Tech Fund hosted on YesWeHack
Repositories with distribution packages built from git main are available on OBS
