I would usually test pre-release versions of Fedora in a virtual machine, but due to other commitments, did not get the time with Fedora 34.
As a result, I decided to jump straight into the deep end by upgrading my primary Linux laptop (Dell XPS 13 - 9300).
On paper, Fedora 34 looks like a reasonable update, with some notable new features:
Linux Kernel 5.11, which brings support for modern hardware capabilities primarily targetting AMD, as well as improved support for USB4 and Thunderbolt.
GNOME 40 desktop environment, which includes an evolved design, which aims to streamline the user workflow.
ZSTD compression for the BTRFS filesystem, enabling faster read, write performance and optimising disk space.
Systemd-oomd as default, providing better resource handling during out-of-memory (OOM) scenarios.
Pipewire replaces PulseAudio, delivering more flexible, higher-performance audio management.
i3 Tiling Manager, which is used to control the appearance and placement of windows in a windowing system. i3 delivers performance improvements, flexibility and extensive keyboard shortcuts, ready for a Fedora Spin.
KDE Plasma v5.21, which includes many new features, as well as support for Wayland and ARM.
The usual array of package and toolchain updates, including Ruby v3.0, Ruby on Rails v6.1, Golang v1.16, etc.
With twenty-five years of operating system upgrades behind me, I still default to a fresh install vs. an in-place upgrade. This approach, although more time-consuming, has historically helped to protect against errors, conflicts and performance degradation.
However, with Fedora 34, I decided to change a habit of a lifetime and attempt the in-place upgrade. I was sceptical, especially when reviewing some of the horror stories on Reddit, but am pleased to report the upgrade from Fedora 33 was seamless.
I suspect the Dell XPS 13 helped, as the hardware is well supported by the Linux community, with no need for third-party graphics drivers, etc.
GNOME 40 introduces a new versioning scheme, with a single number being incremented with each biannual release. This replaces the more complex versioning scheme, specifically v3.38.
I first used the GNOME desktop environment in 2001 (v1.4.1) and although I have experimented with other desktop environments such as KDE, I have always found myself returning to GNOME.
GNOME releases have not been without their controversy, but it is what I know best and aligns with my prefered workflow.
The biggest change with GNOME 40 is the shift from a vertical flow, to a horizontal flow, which is immediately noticeable when you click the “Super” key or activate the “Activities Overview”.
When looking to open an application, the “App Launcher” slides up from the bottom, delivering a consolidated “Activities Overview” that provides instant access to Workspaces, the App Grid and Dash.
This evolved experience feels heavily inspired by Mission Control and Launchpad found in Apple macOS (which is not a bad thing).
The other key change is the default location of the Dash, which is now at the bottom and re-organised to show favourite and running applications. I do not personally use the Dash (or Dock with macOS), therefore its location is of little consequence (although I do position it on the left with macOS).
GNOME 40 also includes a host of new default touchpad gestures, including three-finger swipes to toggle the “Activities Overview” and switch Workspaces. It should be noted that these gestures are only available with the Wayland display server, which is the default for GNOME 40 in Fedora 34 unless you have installed third-party Nvidia drivers.
Alongside other polish, including new default applications and an updated settings menu, I have so far been very impressed with GNOME 40. The horizontal flow feels very natural and the less intrusive animations are much faster (prioritising productivity over visual effects).
I have only been using Fedora 34 for a few hours, therefore have not thoroughly tested all of my applications (yet). However, so far, everything appears to be working well.