** This project has been archived.**
Per issue #91, I have stopped maintaining this project.
I am not a TopIcons-Plus user myself and even not a Gnome user anymore.
Moreover, the Gnome project is pushing towards dropping status icons and any kind of legacy tray, making the project useless on the long term and difficult to maintain due to bugs or lack of features that are out of its scope.
Many applications, such as chat clients, downloaders, and some media players, are meant to run long-term in the background even after you close their window. These applications remain accessible by adding an icon to the GNOME Shell Legacy Tray. However, the Legacy Tray is hidden until you push your mouse into the lower-left of the screen and click on the small tab that appears. TopIcons Plus brings all icons back to the top panel, so that it's easier to keep track of apps running in the backround.
Take a look at TopIcons Plus in action. Before installing (standard GNOME Legacy Tray in the bottom left):
After installing (icons have moved to the top right):
You also get some options to control the look and feel. You can leave the icons in full color:
Or dynamically convert them to grayscale:
TopIcons Plus requires GNOME Shell 3.16 or newer.
Get it from the extensions website
Point your web browser to the TopIcons Plus page on the GNOME Shell Extensions website. GNOME uses a browser addon, which should have come with your Linux distro, to provide a web interface to the extensions manager on your system. Currently, only Firefox is supported, but support for other browsers is in the works. The first time you visit this website, you should be prompted to enable this browser addon -- see the FAQs if you have any issues, then go back to the TopIcons Plus page.
All you have to do next is click the switch on the extension page from off to on.
There will be a GNOME Shell pop-up asking you to confirm that you want to download and install this extension. After that, it may take a moment for the extension to set itself up, but you are done. Icons will move from the legacy tray to the top panel on their own.
If you want to tweak the icons' look and feel, you can go to the web page for Installed Extensions. Click on the wrench-and-screwdriver button to open the TopIcons Plus settings, or click the red X button to uninstall.
If you install extensions from the GNOME website like this, be sure to revisit this page occasionally to check for updates (look for a green update button).
Or compile it yourself
Pre-Requisite: You need the make utility :
# Debian, Ubuntu sudo apt-get install make # Red Hat, Fedora sudo dnf install make
Download the code to any folder, using git:
git clone https://github.com/phocean/TopIcons-plus.git
Go into the TopIcons Plus project directory and execute the installation script.
cd TopIcons-plus make install
This will compile the glib schemas and copy all the necessary files to the GNOME Shell extensions directory for your own user account (so you don't need admin privileges to run
make). By default, TopIcons Plus will live in the directory
If you want to install the extension so that it will be usable system-wide, you'll have to change the
INSTALL_PATH variable, and run as root.
sudo make install INSTALL_PATH=/usr/share/gnome-shell/extensions
Now, reload GNOME Shell. You can either hit Alt+F2, type
r, and hit enter --- or login/logout.
Finally, launch the gnome-tweak-tool utility to manage extensions. There, you can enable TopIcons Plus and then tweak its look and feel.
GNOME Shell by default now runs on top of Wayland by default, as of release 3.22. However, there are still some remaining bugs, as not all applications, particularly non-GNOME apps, have adapted to Wayland yet. These really have nothing to do with TopIcons Plus itself, but we do have a GitHub Issue to keep track of workarounds while we wait for the different app developers to catch up with the new graphics backend.
TopIcons Plus is a fork of TopIcons. Many thanks go to Adel Gadllah for making the original extension, and also to Mjnaderi for the Toptray fork.
Also, thanks to all contributors (code and issues), and especially to: