Birdtray: Thunderbird Tray Icon With New Email Notifications For Linux (Firetray Alternative)


Birdtray adds a system tray icon for Thunderbird email client on Linux (Xorg), which shows the unread email count. Besides this, Birdtray supports snoozing new email notifications, configure for which accounts / email folders to notify of new emails, and more.

FireTray and other solutions to add a tray icon for Thunderbird that displays an unread email count stopped working with Thunderbird 60. Birdtray checks the unread email status directly by reading the Thunderbird email search database, which makes it immune to Thunderbird API changes. As a result, Birdtray is a great Firetray alternative that shouldn't break on Thunderbird updates.

The tool needs Qt5 (5.5 or higher) and is currently considered alpha software.

Birdtray features:

  • Thunderbird tray icon with unread email counter
  • The tray icon can flash when new emails are received
  • Configurable accounts / mail folder for which it should check for new emails
  • Configurable unread count font colors for different email accounts
  • Can hide and restore the Thunderbird window by double clicking on the tray icon or from the tray icon context menu
  • Can automatically start Thunderbird when launching Birdtray and close Thunderbird when exiting the tray icon
  • Configurable tray icon
  • Can detect if Thunderbird was accidentally closed
  • Allows adding pre-configured email templates to the tray for quick access (New Email tab in Birdtray - requires restarting Birdtray after adding new pre-configured emails)

I had some issues with the latest Birdtray release, but this is fixed in Git by implementing another way of detecting new email messages, so it's probably better to install the latest Birdtray from Git.

Also, if you enable the Hide Thunderbird window when its minimized option, you may see the Hide Thunderbird tray menu option even when Thunderbird is hidden. This bug has been reported and it will probably be fixed soon. Update: this bug has been fixed in Birdtray 1.3.

It should also be noted that it can take a few seconds until the tray icon notifies you about new emails, because Thunderbird needs to update the database before Birdtray can "see" that a new email has arrived.

How to install Birdtray in Ubuntu or Linux Mint (PPA)

I decided to create a PPA for the packages I use personally. Since I like to use up to date software, I tend to update the packages I use frequently, and this way others can make use of them as well. I intend to only upload packages that aren't available in the Ubuntu repositories to this PPA.

Update: Initially Birdtray required Qt 5.6, so I couldn't build it in the PPA for Ubuntu 16.04 Xenial Xerus, which has Qt 5.5. The tool was updated though, and it now requires Qt 5.5, allowing it to build for Ubuntu 16.04. It doesn't work well with Unity though (its menu is not displayed).

As a result, the PPA supports Ubuntu 19.04, 18.10, 18.04 and 16.04 / Linux Mint 19 and 18.

You can add the PPA and install Birdtray (from Git) in Ubuntu 16.04, 18.04, 18.10 and 19.04, or Linux Mint 18 and 19, by using these commands:

sudo add-apt-repository ppa:linuxuprising/apps
sudo apt-get update
sudo apt install birdtray

As an alternative, you can download the DEB packages from here if you don't want to add the PPA.

If you want to build Birdtray from source you'll need to install the x11extras and libsqlite3 (-dev) packages. Remove the .qmake.stash file from the src/ folder before trying to compile Birdtray, because it causes the build to fail on some systems. You can find build instructions on the Birdtray project page on GitHub.

How to configure Birdtray Thunderbird tray icon

The first thing you'll need to do is to add your Thunderbird profile in Birdtray. To do this, launch Birdtray and from the tray icon menu select Settings.

Birdtray supports 2 methods of parsing your emails to display unread email notifications:

1. Using global search database. This no longer works with Thunderbird 68+ (for Thunderbird 68+, see the second method below)!

On the Monitoring tab, select using global search database under Method to parse unread notifications. Next, click Browse next to select your Thunderbird profile. This is usually found in the hidden .thunderbird folder (press Ctrl + H in the file browser to show hidden files and folders, or right click and select Show hidden files) from your home directory, and has a name of some random letters and numbers followed by .default, as you can see in the screenshot at the top of this article.

After you're done adding your Thunderbird profile, go to the Monitoring tab, click Add under Accounts to monitor, and select the accounts and mail folders for which you want to be notified when receiving new emails. You can add multiple accounts / folders, each with its own notification text color.

That's all you need to do to get Birdtray to work. You may want to change some of its other settings though, to suit your needs.

2. Using Mork index files.

With Thunderbird 68+, the sqlite-based parser no longer works, so you'll have to change the Unread notification parser option from sqlite to mork.

To do this, switch to the Monitoring tab and select using Mork index files under Method to parse unread notifications. Next, click Add and add the .msf (mail index database) file for the email folder folder you want to monitor. This file can be found in your ~/.thunderbird folder (press Ctrl + H in the file browser to show hidden files and folders), in your .default profile folder. You could search using your file manager for all .msf files available in ~/.thunderbird.

For example, on my system, using a Gmail email account, the path to this file is ~/.thunderbird/cyx9w63e.default/ImapMail/