alltray – Dock any program into the system tray on GTK2-based systems
[OPTION...] [--] [program] [args]
with optional arguments provided in args
and dock it
to the system tray. If args
contains options which start with dashes (-
or --) then the special “end of options” argument (--) must be
given before program
on the command line. See EXAMPLES
examples on invoking AllTray.
AllTray only works on UNIX and UNIX-like operating systems with the X11 Window
System and compliant window management and system tray management software
AllTray has two modes: regular and “attach” mode. By default,
AllTray will run in regular mode; to attach to an application, specify the
--attach argument, and AllTray will let you select which application to attach
to. Additionally, if you want to attach to a specific already running process,
you can specify both --attach and --process arguments (or simply --process,
which implies --attach); see OPTIONS
for more information.
- -?, --help
- Show the help (usage) screen.
- -a, --attach
- Attaches to an already-running application. If --process is
not specified, AllTray will prompt the user to click on a window for the
application the user would like to dock.
- -L, --list-debug-opts
- Lists the debug “flags” that AllTray
supports. The items in this list are allowed values in an environment
variable named ALLTRAY_DEBUG; see the ENVIRONMENT VARIABLES
section for more information. This option is hidden from the --help
output, but it can be used.
- -C, --enable-ctt
- Enable the Close-To-Tray support in AllTray. When
Close-To-Tray is enabled (it is not enabled by default), a small AllTray
icon at an approximately -45 degree angle will appear in the top-right
corner of the target application's window. To close the window to the
tray, click on the miniaturized AllTray icon. This feature is new, and
therefore not enabled by default. (However, if you wish to have it enabled
always, check out the ENVIRONMENT VARIABLES section of this man
page.) Also, note that CTT support does not yet work with GNOME
Terminal, see BUGS for more information.
- -D, --debug
- Enable the debug message printing mechanism of AllTray.
Note that this requires also setting the environment variable
ALLTRAY_DEBUG, to get any debug output; see the ENVIRONMENT
VARIABLES section below. This option is hidden from the
--help output, but it can be used.
- -H, --hide
- Hide the target application when AllTray is started or
successfully attaches to the application. This used to be default behavior
in older versions of AllTray (versions prior to AllTray 0.7.0dev); it is
no longer the default.
- -p, --process=PID
- Specifies the process ID of the application to attach to;
- -v, --version
- Show the program version, copyright, and license, then
exit. If the build of AllTray was built from a development tree, some
information on the exact revision it was built from will also appear.
- -V, --extended-version
- Show the program version, copyright, license, and build
information, then exit.
- AllTray reads this environment variable for any default
options. Any of the options above in OPTIONS can be specified in
this environment variable. This environment variable is looked at
before the command line, so the command line will override it
should there be any conflict.
- When the -d or --debug options are specified on the command
line, AllTray looks at this environment variable to see which types of
debug messages you are interested in seeing. For example, setting this
variable to “CMDLINE X11” and enabling debugging will tell
AllTray to display messages pertaining to command-line parsing and
communication with the X Window System.
For a list of valid tokens, run “alltray -L” which will output
the list of supported debugging messages. Also, you can specify ALL
to enable every type of debugging message that AllTray supports.
- AllTray reads this environment variable to determine how to
find and connect to your instance of the X Window System. Using the
--display command line option can override it, or provide it if unset.
Here are some examples of invoking AllTray in various situations:
- Simple example
- alltray evolution
- Simple debugging example
- ALLTRAY_DEBUG="ALL" alltray -D evolution
- Client command line arguments example
- alltray -- xterm -geometry 132x40
AllTray will exit with return code 1 and an error message if it is unable to
execute the specified program.
If there is a problem getting AllTray working and it doesn't seem to be giving
an error, please run AllTray as in the debugging example, above, and read the
output of that. It may give vital clues as to what is wrong. Almost certainly
always if you do this, you'll want to also file a bug report.
When running AllTray from menus from within a desktop environment, all
diagnostics will appear in the ~/.xsession-errors file.
a window manager which implements the EWMH specification
(and thus by definition the ICCCM specification). It also requires
another process which fills the role of the system tray, as specified in the
System Tray Specification
. At this time, this means that AllTray does
not work with the Unity user interface from Canonical, because it has
(intentionally) omitted support for the System Tray Specification. In order to
use AllTray with Unity, please find a system tray application that works with
Unity first. Support for Ayatana will be included in a future release of
AllTray, most likely 0.7.6dev.
Some window manager/desktop environment combinations may not honor all of
AllTray's requests. If you find such a combination, please file a bug report
against AllTray so that it may be investigated. If it is a problem in AllTray
(or AllTray can somehow work around it without introducing other problems),
the bug report will be fixed. If the bug is discovered to be in the desktop
environment or window manager, a bug will be filed against the appropriate
project, if possible.
AllTray currently does not work well for users who utilize session management in
their desktop environment or window manager software. This issue is known.
There is no fix available at this time; session management awareness is
planned for the future; it is presently not a huge priority, but if you would
like the feature, please file a bug in Launchpad (or comment, if there is
already a bug requesting this feature) so that I have an idea of what type of
priority should be assigned to this feature.
AllTray currently does not support systems that do not
have GTK 2.x
installed on them, for example GNOME 3 systems that do not have GTK 2
libraries available. This will be fixed in a future release; at the present
moment in time, the author does not have a GTK3 based system.
On some window managers, when using AllTray in attach mode without specifying a
process ID, you must click the window itself and not the window decoration.
Compiz is one such window manager; there may be others.
Close-to-Tray (CTT) support does not work for the GNOME Terminal application;
when attempting to use CTT support on the GNOME Terminal application, the CTT
helper process dies with an X “BadMatch” error when attempting
to use it with GNOME Terminal. Please do not file a bug in such a case: it is
already known. However, if this happens with any other software
please file a bug report. You will be able to see the X error message text in
your ~/.xsession-errors file.
There are likely undiscovered bugs. If you should find one, please report it at
Also, please note: if you are using a distribution-packaged version of AllTray,
before filing a bug report against AllTray itself, please
the bug exists in stock (upstream) AllTray. If you cannot confirm that, please
file a bug using your distribution's normal bug-tracking procedures, and if it
is an upstream bug, your distribution will send the bug to the AllTray project
AllTray was started in 2004 by Jochen Baier <email@example.com>.
Michael B. Trausch became the maintainer in 2009 and has started a complete
re-write of the AllTray code. This release, 0.7.5.1dev, is a result of that
Copyright © 2009, 2010, 2011 Michael B. Trausch <firstname.lastname@example.org>
AllTray's source code, this manual page, and .desktop files are licensed under
the terms of the GNU GPL Version 3 license, as published by the Free Software
Foundation. For the full-text of the license, see the license as published on
the GNU web site. Some portions of the software are licensed under the GNU
LGPL Version 3, permitting their re-use with slightly less strict terms. The
images distributed with AllTray are licensed under the Creative Commons
Attribution-Noncommercial 3.0 (CC-BY-NC 3.0) license.
You should have received the license texts with this source distribution,
however if you did not, the license texts are available on the Internet; see
If there is a need to use AllTray outside of these licensing terms, contact the
author for information.
If you are interested in helping with AllTray's development, you can help!
Please email me at <email@example.com>, or find a bug report in Launchpad
that needs assistance and isn't actively being worked on. You can branch the
AllTray source code using the command bzr branch lp:alltray on any system that
has the GNU Bazaar software installed.
Please use Launchpad to request that your branch be merged into AllTray, or if
for some reason you cannot do that (for example, you do not have a Launchpad
account) then please email a merge directive to <firstname.lastname@example.org>. If
you need help with using the GNU Bazaar version control system, you can check
out the #bzr channel on the FreeNode IRC network. See also the LINKS
section below for a link to the Bazaar in Five Minutes
The GNU GPL Version 3.0 is available on the Internet at
The GNU LGPL Version 3.0 is available on the Internet at
The Creative Commons Attribution-Noncommercial 3.0 license is available on the
Internet at http://creativecommons.org/licenses/by-nc-nd/3.0/us/
AllTray's web site and wiki is available on the Internet at
AllTray's project page is available on the Internet at
The ICCCM is available on the Internet at http://tronche.com/gui/x/icccm/
The EWMH is available on the Internet at
The System Tray Specification is available on the Internet at
The Ayatana indicators specification is available on the Internet at
Bazaar in Five Minutes
is available on the Internet at