Fedora 27, the latest version of the Red Hat-sponsored Linux project that serves both as a user distribution and as a proving ground for new ideas in Red Hat Enterprise Linux, is set to arrive this week or next.
The most important additions and changes in Fedora 27 include:
- Greater modularization of the underlying system.
- The latest versions of popular languages and system components.
- Broader use of Flatpak software packaging for desktop apps.
- Fedora alpha releases discontinued.
New Fedora features
Fedora 26 introduced the concept of modularity to Fedora. To paraphrase Fedora’s own description, the modularity project is an attempt to separate the life cycles of the applications in a distribution from both each other and the distribution itself. Users need to be able to upgrade to the most recent version of both an application stack, but also retain earlier versions of individual pieces of that stack for backward compatibility (such as Python 3.x versus Python 2.x).
Previous versions of Fedora had each software component—this database, that language runtime—as a discrete package. Modularity groups those packages into modules—this database with this core database application and that library—and lets each module be installed and run separately. Modules also have their own versioning and life cycles, so users can deploy both cutting-edge and more conservative editions of app stacks side by side. It takes some manual work to convert packages into modules, but one of the goals of Fedora going forward will be to automate as much of the process as possible.
Most of the work done in this vein in the last version of Fedora came via the experimental Boltron project. Fedora 27 promotes that work into the mainline Fedora Server Edition product, so that regular desktop users can benefit from modules, too.
Fedora development tools
It’s common practice for each Fedora release to have its software development tools bumped to more recent versions. Fedora 27’s tool set includes:
- Go 1.9, with its better compilation speeds, more efficient garbage collection, and tools for large-scale code refactoring.
- Perl 5.26. Perl 6, while officially released, isn’t being added to Fedora as a standard component yet. But developers who want to use it can install it manually.
- Java 9, which is currently available for general use, but Fedora 27 is including it only as a tech preview. Java 9 may later become the default runtime for Java in Fedora 28, but that is not guaranteed.
- Ruby on Rails 5.1.
- Node.js 8.x. The “x” simply means Node will be upgraded to whatever recent version of the 8.0 release series passes testing in time for the release. The last Node release included with Fedora was Node.js 6.x, so this update introduces many potentially breaking changes for those who depend wholly on 6.x.
- New versions of the Gnu C library (2.26) and the Boost libraries (1.64).
What Fedora’s desktop Flatpaks do
Red Hat’s Flatpak initiative draws on an idea gleaned from container technology to make it easier to deploy Linux apps with GUIs, such as LibreOffice, across multiple distributions. It requires a runtime on the Linux distribution being used, but Fedora started adding support for Flatpak back in Fedora 24, and several applications, such as LibreOffice, now offer Flatpak editions of their applications.
Fedora alpha releases are retired
As part of the refinement of Fedora’s testing and release cycle, the nightly builds of Fedora—the Rawhide releases—are meant to be at the level of an alpha-quality build for any particular Fedora release. Fedora won’t offer official alpha builds any longer. But there will continue to be beta releases.
Where to download Fedora
When released, Fedora 27 will be available three editions: Workstation, Server, and Atomic (a container-centric edition). Each will be available on its own download page. Atomic Host will also be available as Amazon EC2 images, Vagrant boxes, and image formats for OpenStack and other cloud providers.