How to show app indicators on the system tray in elementary OS

The Linux distribution elementary OS, which is one of my personal favorites, has sparked a lot of discussion on the internet for years. This Linux distribution is extremely popular and still growing in popularity, but on the other hand it also receives a lot of criticism. The distro elementary OS is highly praised among switchers who come from the macOS platform, style and design enthusiasts, and tech minimalists. When you like elementary OS you are probably more interested in being productive and less in the underlying technology and possibilities to tinker with your OS. But this minimalist approach has some drawbacks as well. One of the issues in elementary OS is the lack of support for showing app indicators or tray icons in the system tray. And for me personally but also for many others that is some kind of a loss. In this article, I will explain how to show app indicators on the system tray in elementary OS.

A personal note

Hello everyone. Many of you will probably have noticed that I haven’t written and published anything in more than two months. I think this is very unfortunate and I missed it to be here. But the last few months have been extremely hectic for me because of my regular day time job, with many study hours and a mandatory exam for Microsoft Azure (passed!) and a large-scale IT migration project in which I have spent between 50 and 70 hours a week. So for quite some time I just didn’t have the energy and time to write good quality articles. But now I gradually have a bit more time for myself and hopefully I can write more regularly from now on.

The problem

The team behind elementary OS has a very clear and unique vision of what they want to achieve with this operating system, both from a functional perspective, from their extensive style guide lines, and from their idea that also in the open source world programmers may be rewarded for their efforts. This unique vision and strong opinion about how an operating system should work and what it should look like, sometimes results in the omission of functionalities that people actually like or need. One of the issues in elementary OS is the lack of support for showing app indicators or tray icons in the system tray. A lot of applications require some integration with the system tray, or at least make the user’s life a bit more convenient by having app indicators in the system tray. Personally I felt the pain because I recently bought a Synology DS418j NAS, which is great by the way, but after setting up this device in elementary OS, it doesn’t show the Synology Drive Client indicator. But users are also missing indicators for applications like VLC and Dropbox. This is an issue that was introduced in the most recent elementary OS Juno.

How to show app indicators on the system tray in elementary OS

Although out-of-the-box elementary OS Juno 5 doesn’t show app indicators in the system tray, it is not that difficult to activate that functionality again. Unfortunately we have to use the terminal for this and we have to make a small adjustment in one of the system files. But it is not very complex.

1) First we need to enable ppa support in elementary OS, so open the Terminal, type the following command, and hit Enter:

sudo apt install software-properties-common

2) Now we have to add a ppa, so type the following command, and hit Enter:

sudo add-apt-repository ppa:yunnxx/elementary

3) Now update your system by typing the following command:

sudo apt update

4) Now install the app indicator functionality, by typing the following command:

sudo apt install indicator-application wingpanel-indicator-ayatana

5) Now we need to edit the file /etc/xdg/autostart/indicator-application.desktop. Type the following command to go to the autostart folder:

cd /etc/xdg/autostart/

6) Type the following command to edit the file:

sudo nano indicator-application.desktop

7) Look for the line with the following content:

OnlyShowIn=Unity;GNOME;

8) Add “Pantheon;” to the end of the line:

OnlyShowIn=Unity;GNOME;Pantheon;

9) Save the changes via Ctrl+X (Exit).

10) Now restart your system.

Now the app indicator for my Synology Drive Client setup is visible in the system tray and ready to be used.

But if you look closely at the system tray you now see double indicators, one for the old situation and one for the changes you made, for example for the wifi indicator. We can solve that.

11) First rename the file nm-applet.desktop by typing the following command in the terminal:

sudo mv /etc/xdg/autostart/nm-applet.desktop /etc/xdg/autostart/nm-applet.old

12) Now reboot your system once more.

Now the double icons are gone.

That was all. I hope it helps to enjoy elementary OS even more. Till next time.

Sources for this article:

  • https://elementaryos.stackexchange.com/questions/17452/how-to-display-system-tray-icons-in-elementary-os-juno
  • https://www.youtube.com/watch?v=3mp0BfyptEs&t=611s