Skip to content

System Tray on Linux

Davo edited this page Jun 20, 2024 · 57 revisions

The normal way that a user interacts with tomboy-ng is via a small yellow icon that appears on the System Tray, sometimes called the notification area. However, not all Linux Desktop Environments are able to display System Tray Icons, and some that can may not do so by default.

TrayIcon

If you can see a small, yellow icon, possibly upper right of your screen, you don't have a problem, well done in choosing a user focused Desktop. If you cannot see it, you are probably using a Desktop that may not display the System Tray, possibly a Gnome Desktop. You might be able to configured your desktop to display a SysTray or, if you prefer, use tomboy-ng without a System Tray, perhaps (easiest) by setting a Hot Key to call tomboy-ng or adding it to a dock.

Index

Gnome Desktops need gnome-shell-extension-appindicator

Firstly, Gnome Desktops using Wayland can display the SysTray Icon, they just need the Gnome plugin, gnome-shell-extension-appindicator, installed and enabled and in the case of GTK2 version, the appropriate libappindicator library (either libappindicator3-1 or libayatana-appindicator3-1 will work but versions of tomboy-ng earlier than 0.32g won't know to look for the libayatana one).

As to why the Gnome Developers make System Tray so hard, I don't know! I cannot declare that tomboy-ng depends on these additional packages because they are quite unnecessary in non-gnome desktops and there they would pull in a lot of other dependencies. So, if you use a Gnome Desktop you may need to do some manual installs.

`su -c "apt install gnome-shell-extension-appindicator" [enter]

Logout (yes, you must logout!) and back in again. Most distro now seem to ship with extensions enable, if thats the case, start tomboy-ng now and it will spot the new extension and offer to enable it for you. All should be working. OpenSuse is the exception, see below.

There is a reasonable GUI app to control extensions, search for 'extensions' under Gnome Activities. And some command line tools as well, see gnome-shell-extension-tool.

Debian Gnome

Debian with any desktop other than the default Gnome does not have any problem displaying a System Tray Icon. But if you use Gnome, sorry, read on. If you use Debian 11 or 12 you may be well advised to install the newer version from here.

Debian 11 or Bullseye with Gnome has a serious issue, the version of tomboy-ng in the Bullseye Repository cannot find a necessary library (sadly, early in 2021 Debian renamed their appindicator library just before release !). So please consider upgrading tomboy-ng. https://github.com/tomboy-notes/tomboy-ng . Then follow the gnome-shell-extension-appindicator instruction above.

Debian 12 or Bookworm and Debian 13 or Trixie work fine if you just add gnome-shell-extension-appindicator as detailed above.

Fedora Gnome

Again install gnome-shell-extension-appindicator, as detailed above. Install with this -

su -c "dnf install gnome-shell-extension-appindicator"

Note - you must logout and back in after the above install before you restart tomboy-ng. And you must restart tomboy-ng after it enables it for you.

Ubuntu Gnome

Is becoming a problem again. Lets be clear, the other desktops on Ubuntu just work. However, the introduction of Gnome 44 brought a new bug that affects the Ubuntu Repo versions of tomboy-ng. You need tomboy-ng 0,36c or later, if the appropriate repo does not have it, please consider the PPA or manually installing a newer tomboy-ng from here.

Alternatively, switch back to XOrg (logout, before entering password to log in again, click the gear symbol, lower right, and choose "Ubuntu on X11".

Ubuntu Gnome usually has the gnome-shell-extension-appindicator installed and enabled and it uses libappindicator1 (or libayana in 21.10 and beyond) library. However, in U23.04, Luna, Gnome/Wayland has introduced a new bug that leaves the Systray Menu unusable again.

Ubuntu 21.10 Gnome (way past time you upgraded) however does 'something' different, your menu from the TrayIcon pops up in apparently random places. Getting the newest tomboy-ng (v0.34) from here will solves the problem. But the version in the Ubuntu repo can be made work if you run the following commands (but probably easier to use v0.34 from here or the PPA ) -

echo "LAZUSEAPPIND=YES" >> ~/.profile

sudo ln -s /usr/lib/x86_64-linux-gnu/libayatana-appindicator3.so.1.0.0 /usr/lib/x86_64-linux-gnu/libappindicator3.so.1

The first line adds an env var your profile so that tomboy-ng knows to use the appindicator model, the second line, run as root, adds a symlink from the libayatana library to the name this library used to be called. Be careful with both commands, a mistake can be messy.

Other Ubuntu Desktops have no problems (and look vastly better, having a range of colour themes and are faster).

Open Suse Gnome

While earlier SUSE needed some care, Leap 15.4 just works "out of the box". But sadely, with OpenSuse Leap 15.5, not only is the gnome-shell-extension-appindicator not installed by default, its not available in the official repos. Google it "opensuse gnome-shell-extension-appindicator" and you will find some "community editions", I tried the most popular,seemed to work find, your choice.

Some notes - Firstly, the QT5 version is the one to use, the GTK2 tomboy-ng has (Wayland) problems. Next, you need to install the same Gnome plugin mentioned above but it does not exist (as far as I can determine) in the SUSE repository. So, you need to install it via your browser from the Gnome Extensions Web Site. When you land, the first time, on that page, you see it tells you you need to install things, firstly, a plugin into your Browser (just a couple of clicks) and, fortunately, the other component, is already installed.

Once the Extensions page is working, you need to find "AppIndicator and KStatusNotifierItem Support", usually appears on the first page. There is a nice On/Off switch top right.

Other Desktops

Generally, tomboy-ng is tested and know to work 'out of the box' with Mate, Cinnamon, budgie, Xfce, LXQt and so on.

But occasionally, we do see desktops other than Gnome have SysTray problems, almost always resolved by adding in something typically called "Notification Area" to one of your panels. Maybe right click a panel and choose "Add to Panel". Most distributions install that plugin by default.

tomboy-ng without a System Tray

If you use a system that does not allow you to have a System Tray, or you prefer not to follow the suggestions above, its possible to use tomboy-ng without a System Tray. Both ways rely on the fact that tomboy-ng, even if hidden, will see you trying to open a new instance and will step in and open its Search Window for you.

A Hot Key is pretty easy to set up on most desktops, you press a particular key combination, say, Alt-N, and tomboy-ng will either startup or switch its Search Window to your work space. See https://help.gnome.org/users/gnome-help/stable/keyboard-shortcuts-set.html.en for example of how to set it up in Gnome. I suggest you use gtk-launch tomboy-ng as the hot key command, that will observe any tricks I have added to your desktop file, perhaps to work with wayland.

The Dock People who use a dock for example, can add tomboy-ng to that dock and use that icon in the dock to call up the possibly hidden instance of tomboy-ng. To add an app to the dock you typically start the app, when its running (and visible) you will see its icon in the dock (maybe click Activities to show the dock), right click it and choose "add to favorites", "add to dock", "pin to dash" or, something similar. Now, a click on that dock icon will either start tomboy-ng or bring its Search Window to the fore.

Still having problems ?

Hmm, starting tomboy-ng from the command line can sometime reveal extra clues about whats wrong. Further, setting an env var will make tomboy-ng a bit more "wordy" -

LAZUSEAPPIND=INFO tomboy-ng [enter]

Posting the output of that to the tomboy-ng issues list will probably help ...