Mike’s Place

AllTray

AllTray is a program that allows the user of an X11-based desktop environment to “dock” any program into the system tray/notification area. It has been unmaintained for a few years now, due to overwhelming health and life issues, for which I apologize.

I hope to remedy this: as of April 2019, I am officially resuming maintenance of AllTray. Of course, you can help speed things up by donating, which helps me to cover expenses and not only devote time, but devote more relaxed time, which makes things happen faster.

What Happened?

Well, it’s simple: I experienced a sequence of events which catastrophically disrupted my life. My work in open-source was one of the very first things to get dropped, and AllTray was unfortunately a part of that. Again, I’m truly sorry that this happened—I’ve received a fair number of messages over the years from people seeking support for AllTray, so I know that there are people who want to see it brought up-to-date.

The New Roadmap

When I originally took over AllTray, X11 was still king and Vala was the hot and promising new thing. Problem is, in all the time that I was working on AllTray after having ported it to Vala, I found that I was constantly making fixes for changes made to the Vala language. Simply put, Vala never reached the semantic stability that it promised time and time again would come “soon”.

Whether that changed or not is immaterial: I’m convinced that one reason nobody stepped up to take over AllTray is because it was in a language that still today remains “esoteric”, as opposed to mainstream like C or C++ are.

What’s more: AllTray currently makes a systemic assumption that X11 is the user’s operational environment. This holds true less and less these days. Both GNOME and KDE support running in both X11 and Wayland; AllTray would only be able to handle X11 applications running under Wayland environments, and this would not be a good thing. This means that in order for AllTray to be brought up-to-date, it must learn about Wayland, too.

At the same time, it is going to be ported from Vala (effectively a sugar over C and the GObject type system, which is rather heavy anyway) to C++: this will enable it to be maintained by a far wider selection of people going forward. Once I’ve rewritten it in C++ and added Wayland support, I will actively advertise for a new maintainer—because AllTray deserves—and AllTray’s users deserve—someone who can consistently put time and effort into it.