Documentation for a newer release is available. View Latest

Distribution-wide Changes

Scale ZRAM to Full Memory Size

In Fedora, a swap partition is not created by default at installation time. Instead, a zram device is created, and swap enabled on it during start-up. zram is a type of RAM drive that uses compression.

For Fedora 34, the size of this zram device is increased. It is set at the same size as RAM or 8 GB, whichever is smaller. This change allows computers with smaller amounts of RAM to successfully complete installation using the Anaconda installer.

Memory allocation for zram happens dynamically, so the block device’s full size is not allocated as it is created. This dynamic resourse allocation, combined with compression in the zram device that is generally greater than 2:1, ensures that the swap file does not entirely consume available memory.

See man zram-generator for more information about how zram is invoked.

New package: fbrnch

A new fbrnch (Fed Brunch) package provides a utility which helps simplify or semi-automate workflow processes for Fedora Packagers. This package is available to users without them having to add another Copr repository.

The fbrnch utility supports the following and more tasks:

  • Merging and building packages across release branches

  • Source RPM (SRPM) files, scratch builds, local install, and mock builds from arbitrary package branches

  • Cloning and listing Fedora packages from Pagure code hosting system

  • Creating, updating and listing package reviews

  • Requesting new repositories and branches, and importing new packages directly from package reviews

ARMv7 to use UEFI as default for all armhfp generated images

The UEFI for ARMv7 devices feature delivered all the described infrastructure changes in Fedora 30. However, it brought also some problems with upstream kernel, bootloaders and a number of other pieces, which were out of Fedora control.

In this release, the said problematic pieces were fixed. As a result, the user experience is consistent across all Fedora CPU architectures.

Main is a new name for default git repository branches

With Fedora 34 release, data residing on the master branch in all Fedora git repositories have been moved to a branch named main. This update is in line with Fedora’s vision to be free and open source software built by inclusive, welcoming, and open-minded communities.

Users with existing clones of Fedora repositories need to do git pull to get the changed default branches. Users with existing pull requests against the master branch need to do git rebase against the main branch.

Compress kernel firmware to reduce size on disk

Starting with Fedora 34, the kernel firmware has been compressed with the xz -C crc32 option to reduce the ondisk size by almost a half.

Unify the location of GRUB configuration files across all supported CPU architectures

This change simplifies the GRUB configuration file, improves overall user experience, and also provides the following notable benefits:

  • Allow the same installation to be booted with either EFI or legacy BIOS

  • Use the same documentation and commands for all architectures

    • NOTE: If grub.cfg needs updating, use grub2-mkconfig -o /boot/grub2/grub.cfg

  • Make GRUB configuration tools more robust by not relying on symbolic links to be created and not having to handle platform specific cases

  • Align with images generated by CoreOS Assembler (COSA) and OSBuild on how the GRUB configuration files are used

  • Align with other Linux distributions on how the GRUB configuration files are used

systemd-oomd prevents out-of-memory situations

The systemd-oomd service monitors swap and CGroups on your system using the Linux pressure stall information (PSI) and analyzes wasted productivity due to resource shortages. When the system is running out of memory, systemd-oomd terminates processes under the CGroup that exceeds the configured memory limits.

The systemd-oomd service is now enabled by default on new installations and when upgrading existing installations. It automatically replaces the earlyoom service, which previous Fedora releases used to prevent out-of-memory situations.

For information on configuring systemd-oomd, see the oomd.conf man page.