Fedora 28 Workstation Review

June 1, 2018, 6 p.m.

Since I last reviewed Fedora -- version 22 with a Netinstalled Cinnamon desktop -- there have been various changes to Fedora's flagship edition for desktops. Flatpack's and Wayland have been embraced, and more recently there have been efforts to separate the core of the OS from the additional layers with atomic and modularity, which allows installing different versions of software. The improvement which has been getting the most attention in this release, however, has been the facilitating of third-party software and driver installation. Also in this release has been an improvement, or at least the beginning of improvements, in desktop user experience refinement with a change to an OEM type installation.

Review

When rebooting after installation, the largest impression is made by the scrolling console messages before the desktop starts and the GNOME Initial Setup program is displayed. The messages are aesthetically jarring, and probably especially so on my computer, which included numerous lines of error messages regarding the TPM. This issue is not just a symptom of the two stage installation, but the normal behavior of Fedora 28 during boot, unlike in Fedora 22, -- the version of Fedora I reviewed -- which was so polished during startup, it seemed like a mainstream OS. It seems to me that if Fedora developers expend the effort to refine the desktop user experience of the distribution by using an OEM type installation with an initial setup program and adding a Plymouth boot splash, some effort should have been made to hide the messages.[1]

After the startup, the GNOME Initial Setup program is displayed, in this iteration including a user creation component that had been previously been a part of the Anaconda installer. The setup program also allows users to configure common system and user settings, including wireless network connection, privacy preferences, and online accounts. Unfortunately, it doesn't allow for setting the hostname. This facility, which also had been previously been part of the Anaconda installer that's included in live ISOs, was removed in Fedora 28, but not put in the most obvious place for it -- the GNOME Initial Setup program.

  • GNOME Initial Setup
    The first screen of the program welcomes users with a slide show at the top of the Fedora logo and "Welcome" in various languages. The bottom of the screen allows users to set the language.
  • GNOME Initial Setup
    The second screen allows users to set the keyboard layout.
  • GNOME Initial Setup
    Users can set privacy settings on the third screen.
  • GNOME Initial Setup
    Online accounts can be configured on the fourth screen.
The GNOME Initial Setup Program
With a change to an OEM style installation, the GNOME Initial Setup program now handles user creation in addition to allowing users to configure common setttings.

The initial setup program ends with a motion graphics getting started guide, a component of GNOME help. Topics of the Getting Started guide include changing wallpapers, using windows and workspaces, and changing date and time settings.

  • Getting Started Guide
    The end of the welcome program includes a motion graphics getting started guide.
  • Getting Started Guide
    Topics of the Getting Started guide include changing wallpapers, using windows and workspaces, and changing date and time settings.
The GNOME Getting Started Guide
The end of the welcome program includes a motion graphics getting started guide. Topics of the Getting Started guide include changing wallpapers, using windows and workspaces, and changing date and time settings.

Other initial impressions included the cutting edge nature of Fedora which is evident in its use of GCC 8.1, unlike the other major corporate backed distros versions released at about the same time; according to Distrowatch openSUSE Leap and Ubuntu 18.04 use GCC 8.0.1 and 7.3.0 respectively. My daily driver distro Manjaro uses (at the time I installed Fedora 28) GCC 7.3.1.

Fedora 28 Workstation Release Notes
The release notes indicate that Fedora 28 uses GCC 8.1 the latest version of the collection, unlike the other major corporate backed distros versions released at about the same time.

But what truly impressed me about its cutting edge nature and its innovation [2] was the GNOME software's capability for updating firmware. The first update included an update -- which addressed a security issue -- for the Logitech unifying transceiver that came with my Logitech 510 wireless mouse. I found that the ability to update the firmware of an accessory product not part of the computer's installed hardware impressive.
GNOME Software Capability to Update Accessory Firmware
GNOME Software can not only update built in component hardware firmware but firmware of accessory hardware like wireless USB mouse transceiver.

Another novelty, although not as impressive as the above, is support for Thunderbolt. The Acer V15 Nitro (VN7-592G-70EN) has a USB-C connector that supports Thunderbolt 3, but this is the first distro that specifically mentions the connector anywhere in the system. GNOME Settings has a screen dedicated to configuring this connector.

GNOME Settings Thunderbolt Screnn
The GNOME Settings Devices section has a Thunderbolt settings page.

I had also been initially impressed with GNOME's slickness, my positive impresseion of the interface peaking when I saw the window preview function in the dock, shown in the following screenshot. Sadly this was not the behavior of GNOME's native Dash but a feature provided by the Dash to Dock GNOME Shell Extension.

Dash to Dock GNOME Shell Extension's Window Preview
Dash to Dock is essential to GNOME shell for adding convenience features to GNOME.
What GNOME Shell adds to the Dash, even when using the extension, and in the other parts of the interface is something simply functional and not slickness and functionality, namely the ability to specify the use of a discrete graphics card when launching applications. Now, (this is the first time I've seen this capability), when right clicking on an item in the Dash -- with or without the Dash to Dock extension -- in to the applications view or the search results of the overview, the interface provides the option of launching the program using the dedicated graphics card. I have only observed this behavior when using Fedora's default graphics configuration of using the open source Nouveau graphics driver.
  • GNOME Shell Can Specify Graphics Card to Use When Launching an Application
    Right clicking on an item in the dash -- whether or not using the Dash to Dock extension -- includes an item that allows users to launch the program using the dedicated graphics card.
  • GNOME Shell Can Specify Graphics Card to Use When Launching an Application
    The behavior in the dash shown in the previous slide extends to the applications view of the overview; right clicking on items here also allows specification of the discrete graphics cars
  • GNOME Shell Can Specify Graphics Card to Use When Launching an Application
    The behavior in the dash shown in the previous slide extends to the applications view of the overview; right clicking on items here also allows specification of the discrete graphics cars
GNOME Shell Can Specify Graphics Card to Use When Launching an Application
Right clicking on an item in the dash or to the applications view of the overview provides the option of launching the program using the dedicated graphics card.

At this point, having heard some Linux commentator's opinion on how reviews of Linux distributions devolve into a review of the desktop environment and not the distribution itself, and before I express my observations of GNOME, I should point out that an extensive discussion of the DE is valid. In the case, especially so because Fedora embraces GNOME as its own and, as far as I know, Red Hat, Fedora's sponsor, is also a major contributor to GNOME.

Although I don't use GNOME regularly because I find it too limiting for my typical workflow, I do appreciate its minimalist beauty and I use it occasionally for activities that don't require me to have lots of applications and windows open or navigate through many directories. In fact when I returned to Linux in 2012, it was my DE of choice, even while most Linux users were abandoning it after the change to GNOME 3. Notwithstanding my personal preference or the preference of GNOME partisans, it seems that sometimes GNOME developers remove features that enhance productivity and the user's focus on their task. One such feature I miss in this edition of GNOME -- Fedora Workstation's desktop environment is the ability to open a terminal at a directory by right-clicking in Nautilus (Files), a very simple but very useful capability removed by GNOME developers. Fortunately, Fedora Magazine provides a tip on how to restore that functionality by installing a package that is not included in the Fedora Workstation Environment called gnome-terminal-nautilus.

The lack of this convenient menu item is the result of a simple decision to remove a feature, but this edition of Fedora had other inconveniences in terms of stability and responsiveness. Specifically, the overview screen often becomes unresponsive when searching for programs. A search results in the programs category being displayed quickly first, then the results in other categories, but at this point pressing enter when the desired program is first in results doesn't do anything for many long seconds. This might be related to the process /usr/libexec/tracker-miner-fs which occasionally uses more than 100% of CPU time. Also problematic was /usr/bin/gjs-console (see the following screenshot).

Fedora 28 Has Occasional Stability and Responsiveness Issues
There is a period of unresponsiveness as results are populated in the overview mode's search screen. A few processes such as /usr/libexec/tracker-miner-fs and /usr/bin/gjs-console use so much CPU time the system becomes unstable.

Despite my preference for another DE environment in certain workflow situations, I've gained appreciation for GNOME 3. This is largely due to the availability of some very nice themes and some very good extensions, such as the Dash to Dock GNOME Shell Extension. Fedora makes many extensions available in its repos. However some useful ones are not available in its repos, such as the Lock Keys extension which will display the status of the Caps Lock and Num Lock keys, and the Sound Input and Output Device Chooser which lists available devices for selection in the main user menu (see screenshots below).

  • Enabled Repos Shown in GNOME Software and in Terminal and Extensions Installed by System Package Manager
    GNOME Shell Externsion Repository is shown as enabled in GNOME Software but not by DNF
  • Extensions Installed by System Package Manager and GNOME Shell Integration in Chrome
    Some useful GNOME Shell extensions, such as the Lock Keys extension, are not available in Fedora repositories.
GNOME Shell Extensions in Fedora 28
Fedora makes many extensions available in its repositories. Some that are useful to me are not, however. chrome-gnome-shell, a necessary companion to the browser add-on for intgrating extensions.gnome.org is not installed by default.
Not having these available is a bearable inconvenience, but less bearable is that the necessary browser extension to integrate GNOME Extensions into even the default browser is not pre-enabled and that the required connector software to make the browser extesnion work, provided by the package chrome-gnome-shell was not installed by default.

Other than these GNOME session specific issues, my mentioning of which does not mean I don't appreciate GNOME's strengths, my overall opinion of Fedora remains favorable. During my time with Fedora 28, my appreciation of the distribution has increased as I noticed the strength of the website and its infrastructure, the previously mentioned cutting edge nature of fedora and its innovation, and the utility of the package management system's Environment and Groups feature, implemented in a way that provides more ease of use for the user than other distributions' package groups and group installation, and the strength of the Fedora community.

I think the last item above is reflected in the well developed spins provided by Fedora. The KDE Spin (or installation of the Plasma desktop) using the appropriate DNF Group and especially Fedora's Mate-Compiz implementation were excellent. Incorporating Compiz into a desktop environment as the default window manager is usually a difficult endeavor, but the Compiz works well with Mate and Xfce in Fedora, even better than Manjaro, which I had in the past considered to be the best implementation of Compiz in a distro.

Quick Facts

As has been the case at least since I last reviewd Fedora 22, the distro comes in three versions, each customized for specific uses, Fedora Workstation for desktops and laptops, Fedora Server for physical hardware other than a desktop or laptop, and Fedora Atomic for use as a platform for containerized applications. The information below is only related to Fedora Workstation.

Feature Availability
Architecture x86, x86_64
Installation Media Types Live ISOs, Netinstall
Netinstall image requires a network connection but allows users to specify desktop environment(s) and other software groups to install
Desktop Environments Gnome (3.28) is the default environment; KDE Plasma (5.12), Xfce, LXQt, Mate-Compiz, Cinnamon, LXDE, and SOAS are available through Fedora Spins
ISO Environment GNOME is official, 32bit and 64bit versions; Live ISOs with KDE Plasma, Xfce, LXDE, Mate-Compiz, SOAS through Fedora Spins
Customized Versions (Fedora Labs) Astronomy with tools for amateur and professional astronomers, features KDE desktop
Design Suite for visual design, multimedia production and publishing
Games
Jam for audio creation, editing, and production
Python Classroom relevant tools installed in one of three variants -- graphical with GNOME, virtualized/containerized images for Vagrant or Docker
Robotics Suite
Scientific scientific and numerical analysis software
Security Lab forencsics, system rescue, and security learning environment

Web resources related to obtaining the appropriated Fedora workstation version and installing it are listed below.

Page URL
Fedora Home Fedora Project Page
Default ISO Download Home Fedora Download Page
Spins Home Fedora Spins Page
Labs Home Fedora Labs Page
Release Notes Fedora 28 Release Notes
Installation Guide Fedora 28 Installation Guide
Documentation Home Fedora Documentation Portal

Necessary Fixes and Enhancements

Install Extensions

Most Fedora Workstation users, like Linus Torvalds, will probably find the default GNOME shell unusable without installing extensions. One of the first steps I took to make Fedora Workstation more usable was to install all of the extensions available in Fedora's repositories with: sudo dnf install gnome-shell-extension* and then activate each one in Tweaks to see if my GNOME experience improved. Extensions unavailable from the repositories, such as Lock Keys, can be installed from GNOME Extensions after first installing the package chrome-gnome-shell and then the GNOME Shell Integration browser add-on for Chrome or Firefox.

Add Third Party Repositories

Although Fedora has made some repositories easily available for certain third party proprietary software and drivers. For a larger selection of such software and drivers, multimedia codecs and software built to use these codecs, it is necessary to add repositories to the system in order to install such software and make the OS as usable as most people would like. The most important of these is the RPM Fusion repository which will provide common proprietary codecs and proprietary drivers. I downloaded the repository setup RPM package and installed it, using dnf as instructed on the RPM Fusion site.

Graphics Switching Support with Nvidia Drivers

Although I didn't configure it in this installation of Fedora yet, graphics card switching is available with Bumblebee and Nvidia drivers for use with Bumblebee using the guidance on the Fedora Wiki page on Bumblebee. Unlike the driver available in the third party repository that users are prompted to opt into when starting GNOME Software, this driver and related packages in this wiki page support switching to the Nvidia GPU from the integrated GPU on demand on a per application basis.

Google Desktop Apps for Linux

Fedora 28 makes the Google Chrome repository available on an opt in basis. But repositories for other Google software is not made available in this way. Users that want these programs can add them to their systems by following the links at Google Linux Software Repositories and installing the packages which will add the corresponding repository.

Adobe Flash

I haven't missed Adobe Flash whether because I regularly use Chromium based browsers or because all videos I've encountered when using Firefox have been HTML5. Users that want it for Firefox can install it from Adobe's download page.

Software

The default Fedora 28 Workstation installed from the live ISO installs all of the necessary basic software typically needed by all users including Libreoffice 6, Firefox, Videos, Rhythembox -- which features the most extensive panel menu I've seen in any software for GNOME, Image Viewer and Photos, and Boxes among others.

  • Default Software
    The applications view of the overview.
  • Default Software
    The applications view of the overview with the Utilities group open. The Sundry group only contains Problem Reporting.
The GNOME Getting Started Guide
The end of the welcome program includes a motion graphics getting started guide. Topics of the Getting Started guide include changing wallpapers, using windows and workspaces, and changing date and time settings.

Package Management

Fedora 28 Workstation provides users with two tools for managing software and repositories. The command line interface and GUI programs remain DNF and GNOME Software. In this release Fedora has made it easier to install proprietary drivers and programs by allowing users to opt-in to using third-party repos.

  • GNOME Software Welcome
    Users are asked whether they would like to enable third party software repositories.
  • Fedora Wiki on Third Party Software Repositories
    The repositories include a Google repo hosting the Chrome browser and a subset of the rpmfusion repo for installing Nvidia drivers.
  • GNOME Software Showing the Status of Third Party Repositories
    Third party repositories appear at the top of the list, immediately below a button to easily remove them.
  • GNOME Software Showing the Status of Third Party Repositories
    Enabling a third party repo in GNOME Software.
  • Installing Google Chrome from the Third Party Repository
    Google Chrome appears in results for software search "chrom".
  • Google Chrome's Page in Software
GNOME Software and Third Party Repositories
Fedora now lets users easily add third party repositories.
This is a good attempt by Fedora to make installing third party software, but is in fact a feeble on when considering:
  • Google also distributes Google Earth, Google Music Manager, Google Voice and Video Chat, and Google Web Designer desktop applications for Linux, why not include these as well?
  • An adobe repository could have been added.
  • The complete rpmfusion repository could have been one of the options to optionally add to Fedora.
Currently this change doesn't seem to add much value for Fedora users as most would add the entire rpmfusion repo and add Google's repositories by installing software from Google's sites.

More impressive than the ease of adding third party repos is DNF's group feature. Groups and Environment Groups allow the installation of a set of packages together to meet a certain purpose or all the packages needed by a desktop environment in the case of an Environment Groups. While it is true that other distributions have "groups" that can install related packages together, Fedora's groups seem to be more useful collecting packages for a certain use case together. Some of these groups include 3D Printing, Ansible Node, Cloud Infrastructure, Container Management, Engineering and Scientific, Robotics, and Security Lab.

  • The Output of sudo dnf group list.
    Note that groups are not in all cases just collections of related packages but collections of packages for an intended use case.
  • Installing Multiple Groups
    I installed MATE Desktop, Cinnamon Desktop, Xfce Desktop, Compiz, and MATE Applications at the same time.
  • Installing Multiple Groups
    Some of the output of sudo dnf group install "MATE Desktop" "Cinnamon Desktop" "Xfce Desktop" "Compiz" "MATE Applications".
  • Installing Multiple Groups
    Some of the output of sudo dnf group install "MATE Desktop" "Cinnamon Desktop" "Xfce Desktop" "Compiz" "MATE Applications".
  • Installing Multiple Groups
    Some of the output of sudo dnf group install "MATE Desktop" "Cinnamon Desktop" "Xfce Desktop" "Compiz" "MATE Applications".
  • Installing Multiple Groups
    Some of the output of sudo dnf group install "MATE Desktop" "Cinnamon Desktop" "Xfce Desktop" "Compiz" "MATE Applications".
Installing Additional Desktop Environments with dnf group install
Some of the less interesting groups available with dnf are desktop environments. The more interesting groups include 3D Printing, Ansible Node, Cloud Infrastructure, Container Management, Engineering and Scientific, Robotics, and Security Lab.
(Note that although the installation depicted in the following screenshot started from a KDE Spin, the Fedora Workstation Environment Group is installed. I assume, based on the output in the first screenshot below, the end result of installing with a KDE Spin and then installing the Fedora Workstation Environment Group is the same as installing using the default Fedora Workstation ISO then installing the KDE Spin and then changing the display manager to sddm, although I later switched to gdm.)

The OEM type install which is new with this release is a continuation of the trend to OEM style software managemnt in GNOME software which requires a reboot after an update.

Updating with GNOME Software
GNOME Software updates require a reboot to process the update.
Updates with dnf however do not inconvenience users in this way, but in one instance out of many there was a problem with an update as shown below.
The One and Only Problem with DNF During My Trial of Fedora 28
The problem was with conflicting dependencies, where in openSUSE the user would be prompted to select a solution from several opetions, if desired, unlike in Fedora. In this case I decided to wait until this problem was resolved by packagers to retry the update.

Documentation and Help

Fedora's documentation infrastructure has been redesigned since I last consulted it to be simpler and more modern. Unfortunately, in its new form the option for downloading PDF and EPUB versions of its documentation has been removed from the Fedora documentation site. The documentation portal has links to currently supported versions release notes, installation guides, and system administrator's guides. There is also a link to Quick Docs which seems to be a transition to a modernized wiki, while the previous wiki will be reserved for developer communication.

  • The Documentation Portal
    The documentation portal has links to currently supported versions release notes, installation guides, and system administrator's guides. There is also a link to Quick Docs which seems to be a transition to a modernized wiki, while the previous wiki will be reserved for developer communication.
  • The System Administrator's Guide
    The System Administrator's Guide has information on all of the major topics to get new users started but is not extensive.
  • The System Administrator's Guide
    The Administrator's Guide includes information on configuring DNF and DNF repositories.
  • The System Administrator's Guide
    The Administrator's Guide includes information on the Wayland display server.
  • The Fedora Wiki
    A Fedora Wiki page providing guidance on installing and configuring Bumblebee graphics switching.
  • Fedora Magazine
    Fedora Magazine is also a useful resource covering a range of topics from those that might be of interest to students of or professional system administrators to those that casual desktop users might find useful.
  • A Fedora Magazine Article
    A guide to installing and configuring the powerline terminal utility.
Fedora Documentation
Fedora has a good set of formal documentation and a wiki, apparently migrating to Quick Docs.

Recommendation

Fedora 28 reflects the distribution's desire to refine the desktop for its users, with the change to an OEM install, support for thunderbolt, very useful for users who use a docking station, as the target audience for Fedora is likely to use, the change to make installing proprietary graphics drivers and software. In terms of aesthetic refinement, I felt more effort could have been made, and features removed from the previous installation type were not put in the Welcome program where they should logically be. The efforts are still progress in making a good distribution even better.

None of these problems matter as much as the occasional stability and responsiveness issues I observed in Fedora 28, but even with these problems, Fedora remains one of my favorite distributions.

Notes:

  1. [1]

    The Arch Wiki provides guidance on ways to remove these messages. A simple change to the GRUB generation scripts would remove the two lines of systemd messages.

  2. [2]

    openSUSE can be considered as innovative if not more when considering its efforts to provide users with a snapshot/rollback system similar to what is possible with BSDs which use the ZFS filesystem, and lately, the support for the TPM.