Tweaking the look of Fedora Workstation with themes

Changing the theme of a desktop environment is a common way to customize your daily experience with Fedora Workstation. This article discusses the 4 different types of visual themes you can change and how to change to a new theme. Additionally, this article will cover how to install new themes from both the Fedora repositories and 3rd party theme sources.

Theme Types

When changing the theme of Fedora Workstation, there are 4 different themes that can be changed independently of each other. This allows a user to mix and match the theme types to customize their desktop in a multitude of combinations. The 4 theme types are the Application (GTK) theme, the shell theme, the icon theme, and the cursor theme.

Application (GTK) themes

As the name suggests, Application themes change the styling of the applications that are displayed on a user’s desktop. Application themes control the style of the window borders and the window titlebar. Additionally, they also control the style of the widgets in the windows — like dropdowns, text inputs, and buttons. One point to note is that an application theme does not change the icons that are displayed in an application — this is achieved using the icon theme.

Two application windows with two different application themes. The default Adwaita theme on the left, the Adapta theme on the right.

Application themes are also known as GTK themes, as GTK (GIMP Toolkit) is the underlying technology that is used to render the windows and user interface widgets in those windows on Fedora Workstation.

Shell Themes

Shell themes change the appearance of the GNOME Shell. The GNOME Shell is the technology that displays the top bar (and the associated widgets like drop downs), as well as the overview screen and the applications list it contains.

Comparison of two Shell themes, with the Fedora Workstation default on top, and the Adapta shell theme on the bottom.

Icon Themes

As the name suggests, icon themes change the icons used in the desktop. Changing the icon theme will change the icons displayed both in the Shell, and in applications.

Comparison of two icon themes, with the Fedora 30 Workstation default Adwaita on the left, and the Yaru icon theme on the right

One important item to note with icon themes is that all icon themes will not have customized icons for all application icons. Consequently, changing the icon theme will not change all the icons in the applications list in the overview.

Comparison of two icon themes, with the Fedora 30 Workstation default Adwaita on the top, and the Yaru icon theme on the bottom

Cursor Theme

The cursor theme allows a user to change how the mouse pointer is displayed. Most cursor themes change all the common cursors, including the pointer, drag handles and the loading cursor.

Comparison of multiple cursors of two different cursor themes. Fedora 30 default is on the left, the Breeze Snow theme on the right.

Changing the themes

Changing themes on Fedora Workstation is a simple process. To change all 4 types of themes, use the Tweaks application. Tweaks is a tool used to change a range of different options in Fedora Workstation. It is not installed by default, and is installed using the Software application:

Alternatively, install Tweaks from the command line with the command:

sudo dnf install gnome-tweak-tool

In addition to Tweaks, to change the Shell theme, the User Themes GNOME Shell Extension needs to be installed and enabled. Check out this post for more details on installing extensions.

Next, launch Tweaks, and switch to the Appearance pane. The Themes section in the Appearance pane allows the changing of the multiple theme types. Simply choose the theme from the dropdown, and the new theme will apply automatically.

Installing themes

Armed with the knowledge of the types of themes, and how to change themes, it is time to install some themes. Broadly speaking, there are two ways to install new themes to your Fedora Workstation — installing theme packages from the Fedora repositories, or manually installing a theme. One point to note when installing themes, is that you may need to close and re-open the Tweaks application to make a newly installed theme appear in the dropdowns.

Installing from the Fedora repositories

The Fedora repositories contain a small selection of additional themes that once installed are available to we chosen in Tweaks. Theme packages are not available in the Software application, and have to be searched for and installed via the command line. Most theme packages have a consistent naming structure, so listing available themes is pretty easy.

To find Application (GTK) themes use the command:

dnf search gtk | grep theme

To find Shell themes:

dnf search shell-theme

Icon themes:

dnf search icon-theme

Cursor themes:

dnf search cursor-theme

Once you have found a theme to install, install the theme using dnf. For example:

sudo dnf install numix-gtk-theme

Installing themes manually

For a wider range of themes, there are a plethora of places on the internet to find new themes to use on Fedora Workstation. Two popular places to find themes are OpenDesktop and GNOMELook.

Typically when downloading themes from these sites, the themes are encapsulated in an archive like a tar.gz or zip file. In most cases, to install these themes, simply extract the contents into the correct directory, and the theme will appear in Tweaks. Note too, that themes can be installed either globally (must be done using sudo) so all users on the system can use them, or can be installed just for the current user.

For Application (GTK) themes, and GNOME Shell themes, extract the archive to the .themes/ directory in your home directory. To install for all users, extract to /usr/share/themes/

For Icon and Cursor themes, extract the archive to the .icons/ directory in your home directory. To install for all users, extract to /usr/share/icons/

Fedora Project community

22 Comments

  1. I unpack my downloaded themes into

    ~/.local/share/themes

    . Icons go into

    ~/.local/share/icons

    .

    • Elizeu Santos

      This is the manual way, and that always work 🙂

  2. Isaque Galdino

    With many GNOME devs talking against theming GNOME apps, this post seems a little bit out of sync with the community.

    • Mattia_98

      I don’t think it’s out of sync with the community but rather against what some GNOME developers think. Themes are awesome and one reason I use Linux. The community obviously loves themes, or else there would no be this many. If you don’t like themes, don’t use them. But don’t ruin themes for us. I’m happy seeing Fedora embracing themes.

    • Panagiotis Zachos

      Exactly, I thought this would be kind of like a warning, that themes may conflict with the functionality of software.

    • nonya

      As a dev, I get the point the some GNOME developers explain. It is a real pain in the neck to spend so much time and effort developing something and then get tons of bug reports about your app UI being broken, not because it is, but because of some 3rd party unsupported ‘theme’.

  3. I’m a fan of arc-theme by Horst3180. I’ve been using it for the past couple of years. https://github.com/horst3180/arc-theme

  4. Kostas Sfakiotakis

    The instructions are for GNOME desktop , what about KDE ??

    • KDE doesn’t really need instructions.

      Everything is under System Settings.

      Workspace Theme /
      Look and Feel (New themes? See the Get more Look and Feel Themes… button)
      Plasma Theme (New themes? See the Get more Plasma Themes… button or add from file)
      Cursors (New cursors? See the Get New Cursors… button or install from file)
      Splash Screen (New splash screens? See the Get New Splash Screens… button)

      Colors (New themes? See the Get New Color Schemes… button or install from file)

      Fonts
      Fonts
      Font Management (New fonts? See the Get New Fonts… button or install from file)

      Icons
      Icons (New icons? See the Get New Icons… button or install from file)
      Emoticons (New emoticons? See the Get New Emoticons… button or install from file)

      Application Style /
      Widget Style
      Window Decoration (New window decorations? See the Get New Window Decorations… button)
      GNOME/GTK Application Style (New GNOME/GTK Application Styles? See the Get GNOME/GTK Application Styles… button)

      All downloadable goodies can be found at the https://store.kde.org site.

    • Ramalasandrokif Hermesorumenos

      Pretty much the same. Just look for qt/qt5 instead of gtk.

      Also, instead of shell themes look for plasma themes.

      With KDE you don’t need to download a “tweaks” tool. All the settings are in the same System Settings app.

  5. The points on how themes affect app developers are good ones. That being said, themes are something many users feel strongly about. I think this article means to help them not mess up their systems badly while trying them out. That’s a positive thing, because at least they are able to revert cleanly to the built-in theme (which is what I think most people would use and recommend).

  6. Hans

    Great tool. Thanks Fedora I’m free from windows.

  7. Roger

    I’ve always used the manual installation, but for the few that offer copr’s, but the ‘dnf’ tip is a very good thing. ( I ain’t afraid of no command line)

  8. Eric Nicholls

    DON’T THEME GNOME. VANILLA ADWAITA IS SIMPLY STUNNING. https://stopthemingmy.app/

    • Keyikedalube

      Hmm… that makes sense. One day I customized my desktop icon theme to Flat-remix and soon I had trouble with new refreshing tool icons on Inkscape. Took some time to figure out which icon stood out for pen, Bezier curve, etc

      Now I’m used to Adwaita look and feel.

    • deadgnom32

      I would say that’s right for most themes, because their “developers” abandoned them after version 1.0 and don’t care about the theme user having a great experience with their theme anymore.
      they may have worked ok the day they released the theme, but not anymore.
      but there are themes like arc or arc-dark (which I use), it gets updates in order to make even popular 3rd party apps look well.

      so. what I want to tell is, that there are not only app developers who care about UX, but there are also theme developers who also care.

  9. Matt

    I also leave my Fedora at the default theming, but I do install Tweaks. With a 1920×1080 monitor if you put the font at 1.5x then it does the fractional scaling better than the actual scale settings.

    Outside of my own background and lock screen that’s all I do, and that’s what I like about Gnome, it just lets you get your work done. Completely off topic but I do wish they would change “Activities” to something that sounded a little less childlike and more professional.

  10. The tool got renamed from

    gnome-tweaks-tool

    to

    gnome-tweaks

    a few releases ago, though it still provides the old name for compatibility.

    Probably should instruct people to install

    gnome-tweaks

    from now on in case the virtual provide is ever removed 🙂

  11. Abdiel Rosario

    I have been using Fedora as my only desktop for longer than I will admit. I love the freedom of customizing its look. I can only wish for brighter themes (Clear Looks) and hate to be afraid of non-compatible ones. It seems that in the past it was easier to shame my Wimpdows friends with how customizable Linux was.

  12. rerr

    how changing xfce

  13. Danniello

    Good article, but there is no info what to do when custom theme is broke something.

    I’m changed applications/GTK theme to “Adwaita-dark” (no install needed – it is available in gnome-tweaks). Some applications like Firefox need to be manually changed to dark theme (and also installed Dark Reader extension), but generally applications looks OK.

    For some applications there is workaround – theme could be forced by variable GTK_THEME:

    GTK_THEME=Adwaita gedit

    Unfortunately there are some applications that will not work properly even with this workaround. For example VirtualBox 6.

    GTK_THEME=Adwaita virtualbox

    change nothing – application is not usable (white text on white background).

    Funny thing: it is “new feature” of VirtualBox 6 version. Old VirtualBox 5 was working OK with “Adwaita-dark”. There is workaround dedicated for VirtualBox 6 only: start it with command

    virtualbox -style Fusion

    .

    Do you know some other generic workarounds how to force problematic applications to look normally?

  14. ernesto

    There are some really good themes out there, however you always run the risk of the theme not covering all the possible use cases and you end up with applications that look incorrectly, deteriorating the experience.

    I gave up on theming a while back. It seems like creating a complete theme is a daunting task and ensuring 100% compatibility cannot be garantied.

Comments are Closed

The opinions expressed on this website are those of each author, not of the author's employer or of Red Hat. Fedora Magazine aspires to publish all content under a Creative Commons license but may not be able to do so in all cases. You are responsible for ensuring that you have the necessary permission to reuse any work on this site. The Fedora logo is a trademark of Red Hat, Inc. Terms and Conditions