Virtual workspaces have been a feature of Linux desktops since their earliest days. Not only are they easier to set up than extra monitors, but they allow basic apps like web browsers and terminals to stay open full-screen while leaving plenty of working room. With these advantages, virtual desktops have become an indispensable daily tool for many users.
But while the basic functionality is universal on leading desktops, the details vary considerably. In particular, recent years have seen attempts to enhance the basic functionality to the point where the innovations promise to revise the entire concept of the desktop.
Now there is a concept of virtual desktops to suit almost anyone.
Mate
Mate, Linux Mint’s fork of GNOME 2, offers classical virtual workspaces. That is to say, Mate installs with four workspaces that are controlled by a switcher on the panel. You can move between workspaces by clicking the switcher or by keyboard shortcuts, and you can alter the rows and columns of workspaces displayed.
Workspaces in Mate can be individually named, but they share the same wallpaper and desktop icons with each other.
Xfce
As a popular GNOME 2 replacement, Xfce is almost as traditional as Mate. It has all the features that Mate has, but in addition, Xfce includes a margin setting for positioning—a small feature, but one that improves desktop legibility.
More importantly, in Xfce you can reduce repetitive stress by using the mouse’s scroll wheel to slide smoothly back and forth between workspaces. In fact, this use of the scroll wheel is almost too easy, because one wrong twitch of your mouse hand can inadvertently cause you to change workspaces.
Unity
As of the 13.04 release, Ubuntu no longer installs with the Workspace Switcher on the launcher. Presumably, they intended this change to reduce the confusion new users might feel when faced with a feature not found in a default installation of Windows. However, I can’t help observing that, if the Amazon and Ubuntu One Music icons weren’t on the launcher to generate income for Canonical, there would be more than enough room for the Switcher.
If anything, the removal of the Switcher probably annoys more veteran users than it calms new users. Fortunately, it can be easily remedied by selecting System Setting -> Personal Appearance -> Enable workspaces. Should you later change your mind, you can either uncheck the Enable workspaces box, or else click the Restore Default Behaviours button directly beneath it.
Once enabled, virtual workspaces on Unity behave much the same as on Mate and Xfce. However, if you ever want more than four workspaces, you will have to install Unity Tweak Tool and go to the Workspace Settings tab. In theory, Unity Tweak Tool will allow 625 workspaces, but in practice even 6-7 are illegible on the launcher.
Another weakness of virtual workspaces in Unity is that no keyboard shortcuts are defined, so you will have set them up yourself. As far as workspaces go, Unity simply isn’t designed for advanced users.
Cinnamon
Cinnamon is Linux Mint’s GNOME 2-like shell built on top of GNOME 3. Although it has all the features you might expect, it might be momentarily puzzling at first.
To start with, Cinnamon defaults to two virtual workspaces. These are displayed in a switcher on the panel, but unlike the switcher in Mate, Cinnamon’s cannot be right-clicked for configuration.
Instead, you need to right-click the panel and select Add applets to the panel to add the Expo applet to manage the virtual workspaces. Expo presents workspaces as a series of thumbnails—a minor enlargement of the switcher with a field for renaming each workspace and a plus sign button for adding an apparently unlimited number of workspaces.
In addition, you will probably want to add the Window Quicklist applet, so you can track which windows are open on which workspace.
Expo deserves full points for ingenuity, since it tries to present graphical controls rather than text-based ones. The only trouble is that the execution is a little shaky.
To start with, Expo fills an entire window, rather than a single dialog box. This arrangement can be confusing, because the current workspace is indicated only by a black background in the name field—which at first glance looks as though the name cannot be changed and is easily missed.
Also, while the plus sign is convenient and visible, the deletion method is inconsistent. Instead of another button on the side of the window, deletion requires that you go to each thumbnail’s upper right hand corner and close it separately.
Worst of all, workspace features are squirreled away under Preferences ->Cinnamon Settings -> Workspaces, which takes some searching to discover. However, at least two settings, “Only use workspaces on primary monitors” and “Display Expo view as a grid,” are settings that many users are likely to want.
But for all the attempt at innovation, Cinnamon does not deliver much that makes working with workspaces easier, much less add any new features. Frequently, its resemblance to GNOME 2 is deceptive.
Gnome Shell
If any implementation of virtual workspaces is impossible to miss, it is the one used in Gnome Shell, the interface for GNOME.
Gnome Shell uses two desktops: a workspace where work is done, and an overview, which opens when you click the Activities link in a workspace. What is noteworthy about the overview is that it automatically assigns workspaces, always keeping a minimum of one active workspace, plus one unused one.
To a certain extent, this practice allows Gnome Shell to open most applications maximized—the only exceptions being applications with such small dialogs that the practice would be ridiculous.
However, the advantages are often outweighed by the disadvantages. Working with several windows open at once requires careful rearranging of windows. Although you can drag windows between workspaces, you have to be in the overview to do so—and you will almost certainly want to do so, because Gnome Shell’s concept of how apps should be arranged on different workspaces will sooner or later be at odds with yours.
Gnome Shell may help to introduce new users to the concept of virtual workspaces. But it does so at the expense of giving them no choice. More experienced users may sometimes struggle against it
Until such time as Gnome Shell adds an override feature (don’t wait up), you may have an easier time if you mine GNOME Shell Extensions to add a menu and workspace switcher that allow you to bypass the overview. Until then, GNOME Shell is an ambitious revamping of virtual workspaces that really only works for undemanding users.
KDE
Although KDE prefers the term “virtual desktop” to “virtual workspace,” the concept is the same. Moreover, whatever name you prefer, no desktop has done as much to improve and extend the concept as KDE.
KDE begins with all the conventional features, including the ability to name each desktop and to navigate to them with keyboard shortcuts.
However, it also includes one unique feature—different widgets, wallpaper and icons for each desktop. To access it, select System Settings -> Workplace appearance and Behavior -> WorkSpace Behavior -> Virtual Desktops -> Different widgets for each desktop.
This change can make each virtual desktop identifiable at a glance. More to the point, it is one of several ways that KDE offers multiple icon and widget sets that are ready for use with a few mouse-clicks.
Even more importantly, KDE includes the option of creating Activities. Activities are a kind of higher-level virtual workspace that are set by largely by task, so that you can create custom icons and widgets for each task.
Not only can each Activity support up to twenty virtual desktops, but each Activity can have different layout, ranging from a generic desktop to Newspaper, a multi-columned desktop designed for widgets, and Search and Launch, an interface originally designed for netbooks (if anyone remembers them still).
KDE has struggled with providing the proper overview for Activities. The current solution, a horizontally scrolling window, is even more cumbersome than Cinnamon’s Expo. But otherwise, the combination of virtual desktops and Activities is by far the strongest and most promising implementation of virtual workspaces among the major Linux desktops.
Choosing an Implementation
The amount of energy devoted to improving the features and interfaces of virtual workspaces suggests how central they are to users of the Linux desktop.
However, it’s only in high school that you get marks for effort. Many—even most—of the attempts to rethink virtual workspaces are not improvements on the tools that were available in GNOME 2 or KDE 3. Some are worse.
If virtual workspaces are an important criterion in your selection of a desktop, I suggest that you look at Mate or Xfce. Mate’s and Xfce’s workspaces are not especially inventive, but they get the job done. Moreover, if you have ever used a traditional Linux desktop, you will instantly know how to use them.
But if you feel like experimenting, then consider KDE. The KDE project has not done a good job of explaining Activities, but your own investigation might reveal how useful they can be. Even if you choose to avoid Activities, the individual configurability of KDE virtual desktops still it make a feature you’ll want to try.
As for the other choices, keep an eye on them. All are reasonably recent possibilities, and could still implement new practical angles on virtual workspaces—a feature that, almost more than anything else, distinguishes the Linux desktop from its competitors.