By changing your GNOME theme, you can give your Linux desktop a brand-new look and feel.
In this tutorial, I’ll show you how to install new themes on a Linux system running GNOME desktop environment.
There are two aspects of GNOME theme:
- Application theme: changes the appearance of the application windows
- Shell theme: changes the shell elements like the top panel, system tray, message tray and notifications

I’ll show you how to change both aspects of a GNOME theme in this tutorial.
Installing themes in GNOME
Before you go on downloading the themes, you should make sure of a few things as prerequisite.
There are two places the themes files can be placed:
- ~/.themes : You may have to create this folder in your home directory if it doesn’t exist. The themes placed here will be available only to you (the logged in user)
- /usr/share/themes: The themes put in this folder will be available to all the users on your system. You need to be root to put files in this folder.
Normally, I suggest going with the former one which is ~/themes.
To do that, go to your Home directory. Press Ctrl+H to show hidden files and folders. If you don’t see the .themes directory, create it.
Alternatively, use this command in the terminal to create this directory:
mkdir ~/.themes
The next thing you should make sure of is to have GNOME Tweaks tool installed on your system otherwise you won’t be able to change the theme. You can use your distribution’s software center or package manager to install it.
Download GNOME themes
First thing first, you need to get some good GNOME themes. You can find plenty on the Gnome-look website.
If you want suggestions, please have a look of our list of the best GNOME themes.
Extract the downloaded theme file. Copy the folder and paste it in the .themes folder of your home directory (that you had created earlier).
Change GNOME theme with GNOME Tweaks tool
Once you have installed new themes, it is time to see how to use this new GNOME theme. You have GNOME Tweaks tool installed for this purpose.
Press Super key (Windows key) and search for GNOME Tweak Tool. Click on it to open it.

Now under Appearance section, you should see the options to change icons, applications and shell themes.
You’ll see that while it is easy to change the Applications theme, the Shell theme has a warning sign in front of it and you cannot change it.
Don’t worry. This can be ‘fixed’. Let me show you how to do it in the next section.

Troubleshoot: Not able to select GNOME Shell theme in GNOME Tweaks tool
If you see an exclamation mark and you can not select themes in it, you need to an exra step.
Don’t worry. It’s not a big deal. You need to install GNOME Shell Extensions to fix this issue. Use the following command in the terminal:
sudo apt install gnome-shell-extensions
After installing the extensions, go to Extensions->User Themes and turn it on.

In case the User Theme does not appear after installing the extension, then try logging out or rebooting.
Also, in case if the GNOME Shell extension does not work for you at all, you can try out the Gnome Shell Browser extension.
Once you enable the extension, click on the User themes and toggle on the off button, and you are all done. Also, to know more about the GNOME extension, you can have a look at the How to Use GNOME Shell Extensions guide.

Now, you should be able to install the themes as described earlier.

The theme change should reflect immediately. If you do not see the theme changes immediately, press Alt+F2 key or FN+ALT+F2 key.
It will open a command box. Just type ‘r’ in it. This will restart the GNOME shell and the selected theme should be applied.

You can get plenty of GNOME Shell themes from Gnome-look website. But beware that not all themes might be compatible with your version of GNOME Shell.
Also, some poor packaged themes contain nested subfolders and sometimes you’ll have to copy the subfolders to the ~/.themes directory.
I hope this helps you to easily and correctly install themes in GNOME. Any questions or suggestions are always welcomed.
“Applications” is not availible as an option in the Themes menu. could I get help on this?
This is definitely very helpful. First, I’m new to Linux and also a fan of customizing.
I was able to follow instructions and installed the graphite team then restarted gnome but nothing seemed to change even when graphite is obviously selected in tweak.
I think there’s something I am not getting.
It’s possible that the Graphite theme is not compatible with your current GNOME version.
This guide was the most helpful I could find, commenting with some unexpected hurdles I experienced when attempting to change my theme.
Regarding the shell theme warning – some users may discover the Extensions tab is not in their version of Tweaks. This is because there is now a separate app called “Extensions”. To make things more fun, my version of the gnome Extensions app also did not have the User Themes option. I ran the installation for gnome-shell-extensions and rebooted my PC. After reboot, a whole bunch of new options were available in the Extensions app. I enabled User Themes which unlocked the shell options in Tweaks.
For actually installing a theme – I found a theme I liked on opendesktop.org. I went to the theme’s github page and downloaded the entire project as a zip file. I extracted the file and referenced the theme’s documentation to run a special ./install.sh script included in the project. This automatically extracts the themes to a newly created ~/.themes folder. This makes the theme a selectable option in Tweaks.
Thanks for the suggestions. I’ll improve this article once 22.04 is released.
Hey.. what do i do if shell doesn’t change even after restarting shell?
Great tutorial!! ..but I have a problem that I believe relies on the incompatibility between gnome-tweak and gnome 3.36.. (I have 3.36.9). have you heard of anything about that?
I am not aware of any incompatibility. What it is about?