In the fourteen years that I've been using Linux, its desktop has evolved from ungainly application launchers to software environments whose innovation and sophistication are equal to none. Yet despite these advances, I've never found one desktop completely satisfactory.
I suppose my perfect desktop would pick and choose among existing features. It would combine, for example, Ubuntu's offer to encrypt the home partition during installation with GNOME's treatment of a chat window as a special case that doesn't steal focus from another window.
Other features I used to long for, including tabbed windows for grouping apps I am working with at the same time and swappable sets of desktop icons, have been implemented in KDE. And I am waiting to see GNOME's security and privacy plans carried out.
However, many features I'd like to see are not even in the planning stages, even though some of them might involve mild tweaks of existing functionality. At the risk of sounding, as Harlan Ellison put it, as though I'm not only building dream castles but planning to move in the first of the month, here are seven features I'd like to see in a free desktop.
7. A Built-In System Hardener
For over a decade, my first act after installing a new work system has been to run Bastille Linux. Unlike most of the measures the average user thinks of as security-related, Bastille doesn't react to possible problems; instead, it alters the settings to make your system harder to break into.
Unfortunately, Bastille is cranky about which distributions it will run on. Moreover, despite its efforts to be educational as well as useful, it assumes more knowledge than today's average user is likely to have. It's also a tool you have to be aware of, rather than something built into any desktop. And it can lock you out of your own system if you ignore its advice.
Still, if SE Linux can be a standard tool in Fedora, there's no reason why a Bastille-like app shouldn't be in common use as well. Including it in a desktop environment could be an important step in righting the balance between security and convenience, which these days seems increasingly slanted towards convenience.
6. Automatic Allocation of Virtual Workspaces
One of GNOME 3's most useful features is the automatic allocation of virtual workspaces. Not only does it introduce users to the concept of virtual workspaces, but it helps to solve the problem of having so many windows open that you can't find the one you want.
However, its implementation lacks a few features. To start with, it needs an off-switch to accommodate those who prefer to manage their workspaces for themselves. For another, users should be able to determine how workspaces are allocated, setting such characteristics as the number of windows to open in each workspace and which windows are opened or maximized. Such features should also be saved, so users do not have define them every time they log in.
5. Selection by Spinner
Space in a modern desktop environment is always at a premium — not just because the same design is supposed to work on multiple form-factors — but because there are many more items to select than there were on desktops a decade ago. One major result of this new reality is that methods of selecting items that once were adequate cannot be used without stopping and, often, moving to an entirely different screen or dialog window.
KDE has struggled with this problem with activities throughout its fourth release series. At first, they were viewable in an overview, which confused users. More recently, both activities and widgets display in horizontally scrolling windows that automatically become the current window, which is awkward and distracting. It is only Plasma Active, the KDE variant for mobile devices, that implemented a solution that allowed both quick selections and took up minimal space: an OS X-like spinner that slides out when in use and retracts after a selection is made.
A lone spinner can't provide a functional menu because there are too many items. But spinners could become the standard widget for selection when there are only 6-12 items — for workspaces, for instance, and task bars and notifications. Their efficiency is unrivaled by any alternative that I have seen.
4. Starting Multiple Applications at the Same Time
Many tasks require that you use more than one application. For instance, when I write about a command line utility, I usually have one terminal open to a man or info page, one open for testing options, and the GIMP open so I can get screen shots of my tests.
This is hardly an unusual work flow. Yet in every desktop environment, each application must be opened separately, regardless of the form of the menu. In GNOME 3 or Unity, this means numerous clicks and searches just so you can get to work.
What I'd like to see is a method of delaying the launch of a selected app so that I don't have to keep returning to the menu. Alternatively, a new menu item or desktop icon type might allow multiple apps and files to be opened at the same time, without requiring the user to write a script. Additional features might be the ability to set where each app opens in relation to the others.