Fedora, a community project started and supported by Red Hat. distributes a GNOME based flagship edition, Fedora Workstation featuring the GNOME desktop environment. The community also offers alternative editions to the flagship featuring other desktop environments for users who prefer other desktops besides GNOME in editions called Spins, one of which being the KDE Spin discussed in this article.
This article reviews the Fedora 32 KDE Spin released on April 28, 2020.
The Fedora 32 KDE Spin offers the Fedora strengths at its core, but with the Plasma desktop environment as an alternative to the default Gnome based flagship edition that is Fedora Workstation. The strengths at its core include an excellent reliability, software that is relatively current in a frequent regular release, innovation, security, and most of all a maturity and seriousness that makes it especially suited for more than casual use, especially software development, compared to some -- especially -- smaller distributions.
This suitability is evident in the unique tools the distribution provide such as Fedora Modularity (described further in the Package Management section, below). From the Fedora documentation:
Modularity is a mechanism of making multiple versions of software available to your system.
Modules are special package groups usually representing an application, a language runtime, or a set of tools. They are available in one or multiple streams which usually represent a major version of a piece of software, giving you an option to choose what versions of packages you want to consume.
openSUSE does this with some software simply by including the version in the package name, but software available in this way is not as extensive as with Fedora Modularity and there isn't a bundling of related packages as in Fedora.
These strengths exist because Fedora is a large community started by and backed by a corporation which has a business interest in Free and Open Source Software. In a recent interview on the Linux for Everyone podcast, the Fedora project leader emphasized the importance of FOSS to the project. One aspect of commitment to FOSS that caught my interest in his statements was that Fedora strives to enabling fully-functional hardware through the use of FOSS drivers.
This effort is apparent in this release of the KDE Spin of Fedora 32 in that the FOSS Nouveau driver works flawlessly, and is the aspect of Fedora 32 I found most impressive about the release. This is especially impressive considering my experience with respect to the Nouveau driver -- ranging from unusable to bad -- I've had with all distributions I have installed on the Dell G5 with an integrated Intel UHD 630 graphics card and a discrete NVIDIA GTX-1050 Ti Mobile graphics card prior to Fedora 32, as visitors who have read the distribution reviews posted over the course of the last year know. Distributions that load Nouveau by default will exhibit at best erratic behavior and at worst a black screen. To work around these issues I've always had to block the Nouveau drivers from being loaded and install the proprietary NVIDIA driver along with Bumblebee and bbswitch. This resulted in the integrated Intel graphics card being used by default and the NVIDIA card powered off and its driver modules not being loaded, but available on demand on an application-by-application basis.
Recently, after buying an external monitor for use with the Dell G5, I learned that the HDMI output is internally wired to the NVIDIA card, requiring the NVIDIA card to be on and a working NVIDIA driver to be available for the entire desktop session and not on an application-by-application basis. As described in one of the Bumblebee project wiki pages, it is possible -- with some limitations -- to use Bumblebee to switch cards such that the NVIDIA card and driver are available for the inconvenient HDMI wiring on the Dell, but it is very difficult to do, involving loading the appropriate driver kernel module at the right time, X configuration, and managing the power state of the NVIDIA card. So I've had to look for distributions that make it at least relatively easy to be able to switch to the NVIDIA card for the times I want to use the second screen. Arch offers optimus-manager, Kubuntu (Ubuntu) provides NVIDIA PRIME Profiles. On openSUSE Tumbleweed, a tool called SUSE Prime is available in two different packages, one for use with newer NVIDIA cards with built in power state management and another for older cards that uses bbswitch, but neither provide power management for the Dell. (For descriptions of the various tools for Optimus switching provided by various distributions, see The Best Distributions for Problematic Nvidia Optimus Hybrid Graphics.
But Fedora is fully functional out-of-the-box with the FOSS Nouveau driver, not forcing users with similar hardware to install the proprietary NVIDIA driver and graphics card switching solutions. Even the live environment of the installation medium was fully functional without any modification of the kernel command line options from the GRUB menu.
One other aspect of Fedora 32 that impressed me is the phenomenal -- subjectively measured -- battery life. I replaced the second hard drive on the Dell G5 with an SSD which made a noticeable improvement in battery life in all distributions, but on Fedora there is an even larger increase in battery life on the order of six to ten hours in my typical use.
As I am typing this (the image above is from a previous session), with a light theme and screen brightness at slightly over 50%, Wi-Fi on, and a headless virtual machine running in the background, a battery health of 74%, and a charge level of 73%, Plasma reports 4:07 more of use time remaining.
Despite my good experience with Fedora, its may not be viewed as positively by others. The commitment to FOSS on Fedora's part -- or progress unrelated to Fedora on the part of the Nouveau developers -- which finally has resulted in a working Nouveau driver for my card, may be a cause of inconvenience for some users. For example, multimedia applications that require proprietary codecs are not fully functional out-of-the box. During installation I wanted to install SimpleScreenRecorder into the live environment to make a video of the installation, but it was not available from the default repositories. I resorted to using VokoScreen-NG, available from Fedora's repositories, but this could only encode videos in non-proprietary formats. Even the popular VirtualBox virtual machine hypervisor is not available directly from Fedora.
Fortunately, the RPM Fusion third-party repository is available to provide software that Fedora can't distribute based on its FOSS only policy. This software not only consists of multimedia software not available from Fedora, and codecs that make software available from Fedora fully functional, but VirtualBox and NVIDIA proprietary drivers. While not default, in recent versions Fedora has made it easier to at least add a subset of the RPM Fusion repository that includes the NVIDIA drivers in the flagship edition Fedora Workstation. Instructions on adding the RPM Fusion repositories -- an essential fix -- is provided in Fedora 32 Review [KDE Spin] Supplement: Fixes and Enhancements.
In addition to this inconvenience, which I myself don't mind, I did experience a few problems. The most serious of these was two incidences of a freezing of the system such that the displayed image on the screen became static and the system became unresponsive to the point that even the console terminals accessible with the Ctrl+Alt+Fn keys could not be activated. This seems to be a misconfiguration of tlp on my part where I failed to blacklist power management of the graphics cards. Since modifying the configuration I haven't experienced this issue.
I feel that Plasma is filled with capability and flexibility throughout its extent, actually making it easier to use than other desktop environments. For those who have similar esteem for Plasma, I should describe the Fedora implementation of the Plasma desktop environment. Fedora's KDE Special Interest Group (SIG) provides a good implementation of Plasma, with minimal modification of the stock character. The significant changes apparent to me is a modification of Plasma behavior that users might find annoying, disabling Baloo indexing of the user's home folder and no KWallet manager prompt for passwords. I actually find the modification of Baloo behavior to not be such a good idea because it disables one of Plasma many excellent features, very impressive instant search results in KRunner. The change regarding KWallet is probably what most people would like, but again I would rather have it. In fact I actually prefer what openSUSE does which is to require users to create a GPG key that, I believe is used to lock the wallet.
The modification that the Fedora SIG should have made is one that would have enhanced the Plasma experience, namely GTK apps and their integration with the desktop in areas such as file open/save dialogs. For example, Firefox, a GTK app, uses GTK to create a file dialog that is more appropriate on GTK based desktops. It is possible to modify the behavior of Firefox so that it, and other GTK based programs, use the native Qt/KDE Frameworks file dialog, as I describe in Enabling a Native File Dialog for Firefox on Plasma Desktop. However the spin does not do this, a relatively simple modification that will replace native GTK behavior with native Qt/KF behavior, essential for a spin that focuses on KDE's desktop environment and applications.
The only other change made by the SIG to stock Plasma, besides the previously mentioned Baloo behavior, is the inclusion of a Global Theme that slightly changes the Breeze color scheme to change window tiitlebars and other elements to better match the Fedora brand colors.
Incidentally, regarding themes, the default GTK Application Style is not specified in Plasma Settings. Most other distributions specify the Breeze GTK theme in these dropdowns which aren't even available in Fedora KDE Spin. Even better than making these available would be to include several themes that have the complete set of Plasma style components (Color Scheme, Window Decorations, Plasmashell theme, etc) including a Global Theme and a corresponding GTK theme so that there is a cohesive look to the desktop and applications whether they use GTK or Qt/KDE Frameworks widget resources. One good option is the Aritim theme, which not only has all of the Plasma theme components and both light and dark versions, but a GTK version as well, and it matches Fedora colors.
Although the Fedora KDE Spin will please users that prefer Plasma at this point in time, a few weeks after its release, it may not continue to please such users as the release gets older. This is due to the fact that Fedora may not make new versions of Plasma available as KDE releases them. This was the case in Fedora 31 when the distribution never made Plasma 5.18 available. Some may assume that this makes Plasma a second class citizen on Fedora, especially since the Plasma desktop was deprecated in a recent version of Red Hat Enterprise Linux. A likely explanation for this status could be what was pointed out on a Reddit discussion on whether Plasma 5.18 would be available on Fedora 31, where a commenter speculated Plasma's status as an "also-ran" on Fedora is because of its use of the Qt framework, a product to which multiple licensing schemes have been applied by the Qt Company. One of the licenses is not consistent with Fedora principles, while GTK, a project that is not tied to a commercial entity, uses a license which is completely consistent with Fedora's principles on open source software.
Whatever the reason Fedora didn't keep current with KDE releases during the life of Fedora 31, maybe in the future, the KDE SIG will maintain a somewhat official Copr repository to distribute Plasma updates that the distribution does not want to place in the official repositories, similar to what Kubunut does with its PPAs for (K)Ubuntu.
I highly recommend Fedora 32 KDE Spin. It combines the maturity of Fedora that makes it suitable for more serious endeavors than casual use, with a highly capable and flexible desktop environment -- that because of these characteristics -- that actually makes it easy to be productive.
Most impressive to me was the full-functionality of the FOSS Nouveau driver for NVIDIA graphics that allowed me to use an external monitor with the Dell G5 with an HDMI port that is wired only to the NVIDIA card, requiring a powered NVIDIA card and a working driver, whether Nouveau or NVIDIA.
The only problems some users might have is that the multimedia applications are either not fully-functional because of missing proprietary codecs or some popular software is not available directly from Fedora's official repositories. The solution is easy requiring a few commands to enable the third-party RPM Fusion, something that I personally don't mind. What I find -- and other users who prefer Plasma might find -- more problematic is that Fedora has a record of not providing updated minor versions of Plasma if it KDE releases such versions in the middle of a Fedora release cycle. It would be beneficial if the KDE SIG could create a Copr repository, similar to Kubuntu's PPA, for such updates if Fedora does not want to include them in official repositories.
Below, find more on Package Management, Software, Documentation and Support. Also see the articles that supplement this review:
The command line package manager, dnf, is of course present, but I will only show it in action in the following screenshots as I have discussed it extensively in previous reviews of Fedora, including what I don't like about it.
Most interesting with respect to package management in Fedora is the concept of Modularity, mentioned in the main review above. Modularity refers to additional repositories independent of the Fedora release that host multiple versions of programs that are important to developers and system administrators. Although the system does not allow multiple versions of a program to be installed at once, it does allow users to chose the version that they want to install. In the first of the following set of screenshots we see that only one version of nodejs is available in the default repositories. The second screenshot shows that four versions of nodejs are available from the Modularity repositories, enabled by default in Fedora 32. In the third screenshot we see dnf being used to enable and install the 10 stream of the nodejs module; the Fedora Modularity jargon refers to the versions as a stream and the software as a module. The fourth screenshot is just the end of the ouput of the installation that was started in the third screenshot.
Other package management features of Fedora 32 KDE Spin include the Discover package manager, a KDE package management application for the Plasma desktop. Unlike in Kubuntu 20.04 LTS, the other KDE focused distribution that I am currently reviewing, Discover is completely stable and reliable in Fedora 32 KDE Spin, including for performing updates. I suspected a regression in corner cases in Discover as implemented in Kubuntu where if an update is pending, other package management tasks will fail, with the program providing misleading feedback. This does not happen in Fedora 32.
Flatpaks and Snaps don't seem to be enabled in Discover, however. The first time I opened the settings pane of Discover a list of panels that indicated Flatpaks, Snaps, and AppStreams were not enabled appeared and disspaeared quickly, replaced with the selectable repository list and firmware update modules shown in the last screenshot above. The messages indicating the disabled components may be spurious because, as far as I know, Discover doesn't work without AppStream, and the messages were an artifact of pre-initialization of the backend that powers this particular Discover pane.
Another difference from Kubuntu is the update notification widget, which in Fedora is actionable and performs the update within the applet showing progress in the applet's expansion window, the same as in openSUSE. In Kubuntu the applet opens Discover to perform the update.
The standard pop-up notification is also available as part of Plasma's notification system.
This spin also installs the more traditional dnfdragora GUI package manager, which is similar to Synaptic Package Manager, as an alternative. I didn't use this to perform any package management tasks, but I use it to view a history of package management tasks. The program displays a history of package management operations grouped by date and time, even those performed by other package management tools.
Unfortunately it shows groups of tasks from before I installed Fedora 32 KDE Spin, presumably referring to actions when the installation image was prepared by Fedora. Clicking on any of these groups causes the program to crash.
Fedora 32 KDE Spin installs, by default, everything needed for common tasks but in a decidedly KDE-centric way. For example the KDE SIG chooses to install the KDE project's Calligra office suite, which many distributions that offer a KDE flavor eschew in favor of LibreOffice for the better functionality and stability. Also installed by default are KGet, KTorrent, the Falkon web browser, another KDE project, as well as KMail and all of the small associate programs related to PIM. Multimedia applications are also atypical, the distribution choosing Dragon Player instead of VLC, and Juk instead of Cantata or the increasingly popular, but overly simple Elisa. Firefox, is installed by default, however as in many other distributions as I mentioned above, modifications to allow a native file upload/save dialog is not provided.
The following screenshots show the installed applications by category. Note that Firefox Beta, Firefox Developer Edition, GNU Image Manipulation Program (GIMP), Inkscape, TeXStudio, TeXmaker, and Kile were installed by me and not as part of the default installation.
Fedora has one of the best set of online documentation resources of any distribution. It offers formal documentation that is easy to navigate and a new set of pages called Quick Docs for specific topics converted and modernized from the former Fedora wiki. The formal documentation is not as extensive as openSUSE 's which consist of seven books, including a Reference Guide, a Security Guide, a Tuning Guide, and a Virtualization Guide, and the Quick Docs are not nearly as extensive as the Arch Wiki, but together they cover a good range of topics, including some advanced ones, that provide a good foundation for using Fedora and gaining some knowledge of its internals.
In the past the formal documentation was available in formats convenient for offline reading such as PDFs and EPUBs but, apparently, this is no longer the case as I couldn't find links to these resources. The online documentation is very easy to find as Fedora includes very obvious bookmarks to is main documentation portal as well as links to many support resources such as IRC and forums in its implementation of Firefox.
Also notable is Fedora Magazine, a link to which is also included in the Firefox browser supplied by Fedora. The online magazine features articles that provide useful knowledge, tips, and suggestions of software to try, as well as occasional spotlight articles on Fedora users.
The essential fix necessary for Fedora 32 KDE Spin is to enable the RPM Fusion repository to make proprietary codecs -- which even programs preinstalled by Fedora need for full functionality -- and other software not distributed by Fedora, such as VirtualBox and proprietary drivers, available for installation. The enhancements I made were to install the Aritim-Light and Aritim-Dark global themes, install LiquidPrompt for an interesting and more informative shell prompt, especially when in a directory with a Git repository. These fixes and enhancements are discussed in Fedora 32 Review [KDE Spin] Supplement: Fixes and Enhancements