The newest version of Fedora has been released, bringing a variety of structural changes to the popular Linux distribution. The new release makes it easier for developers to write and test programs for a wider variety of systems as well as improve system performance on embedded devices, in addition to the standard package upgrades which make up the bulk of new releases.

SEE: Side-by-side chart of popular Linux distros (Tech Pro Research)

Increasing modularity to improve backward and forward compatibility

Fedora 29 utilizes modularity to allow developers to install multiple versions of the same software to be installed on the same hardware. For developers, this greatly eases writing and testing web applications, as it makes it possible to target different versions for development. This feature was introduced on the Server edition of Fedora 28, but is now available on all editions of Fedora 29.

For example, the release cadence for popular web platform Node.js does not align well with the release model of Fedora (or anything else, practically.) The present long-term support version is 8.x, the default installed version is 10.x, and the newest release is 11.x. Practically speaking, production application deployments should use either 8.x or 10.x branches, but developers looking to adapt applications for new versions of the platform need access to the 11.x branch, for simultaneous work on stable and development branches of their applications. With Fedora 29, it is possible to deploy these versions in parallel using containers.

Better performance on embedded devices and new hardware

With the new release, Fedora 29 now supports ZRAM (formerly called compcache) for ARMv7 and v8. ZRAM allows for more efficient use of RAM, as Fedora can use it to hold more pages of memory in the compressed swap space than if the raw RAM was used for application memory or disk caching. This is particularly useful for use on Raspberry Pi and similar ARM-powered SBCs with comparatively limited amounts of RAM, and has been in use on Android and Chrome OS since 2013. The use of ZRAM also increases the lifespan of microSD cards on the Raspberry Pi as well as other SBCs, which rely on microSD cards or eMMC chips to contain the system OS. By using ZRAM, the frequency of cache writes to flash memory are reduced, which is an important consideration for write-cycle limited flash memory.

Additionally, UEFI for ARMv7 is now supported in Fedora 29, which also benefits Raspberry Pi users. Fedora already supported UEFI on 64-bit ARM devices.

With Linux kernel 4.18 and Mesa 18.1 available on the installation image, Fedora 29 works out of the box with Intel’s “Hades Canyon” NUCs, the small form factor PC, which fuses an Intel CPU and AMD Vega-M GPU on one hybrid chip.

Practical updates for everyday users

Benefiting devices on slow or metered connections, DNF repository metadata is now compressed with Zchunk, instead of XZ and GZIP. With this change, only updates to metadata are downloaded, rather than downloading the entire update catalog each time a given system checks for updates, saving tens of megabytes per update. As part of a system-wide overhaul, Fedora 29 also reduces unnecessary linking, helping to reduce program load times.

Standard version upgrades include GCC 2.28, as well as Python 3.7, Ruby on Rails 5.2, Golang 1.11, and Perl 5.28, among many others.

Significant changes to the boot process have also come in Fedora 29, removing the GRUB loader timer for systems with only one operating system installed. In the event that users need to roll back to a previous kernel, pressing F8 or holding SHIFT during boot will display the GRUB loader. Additionally, on systems which boot with EFI, flicker-free boot is now possible.

As Fedora’s release cadence is every six months — with support lifetimes being roughly 13 months per release — Fedora is largely considered a distribution for hobbyists and developers, less so for enterprise deployment. That said, Fedora’s position as the upstream distribution for Red Hat Enterprise Linux means that these changes will find their way to enterprise RHEL developments in future releases. Most versions of Fedora 29 can be downloaded freely from starting today, though technical issues will delay the release of Xfce and LXQT spins.