Try the Linux desktop of the future
For the tinkerers and testers, 2010 is shaping up to be a perfect year. Almost every desktop and application we can think of is going to have a major release, and while release dates and roadmaps always have to be taken with a pinch of salt, many of these projects have built technology and enhancements you can play with now. We've selected the few we think are worth keeping an eye on and that can be installed easily, but Linux is littered with applications that are evolving all the time, so we've also tried to guess what the next big things might be.
Take a trip with us on a voyage of discovery to find out exactly what's happening and how the Linux desktop experience is likely to evolve over the next 12 months...
KRunner has been part of KDE for long time. It's the tool you see when you press Alt+F2, and is commonly used to run applications quickly by typing their names rather than resorting to the launch menu. In the face of stiff competition from the likes of Gnome Do though, KRunner has had to up its game recently, and there are several neat enhancements for the KDE 4.4 release.
The most obvious change is that the KRunner dialog itself is now at the top of the screen rather than in the middle. This makes more sense, because it's now less likely to tread over some important application information or Slashdot story. You can also close the window again by pressing Alt+F2.
Now that KDE 4.4 has a working search engine, the first new thing you can do with KRunner is search your desktop. Results are listed in the panel below. Everything else more or less looks the same until you click on the small spanner icon.
KRunner is better looking than Gnome Do - it's just a pity it doesn't have its amazing plugin support.
KRun to the hills
The window that appears has always hidden the extra features hidden behind KRunner's austere GUI. It lists the type of items that are going to be probed and returned as results in the main window. This version for KDE 4.4 has four new additions. You can now terminate applications by typing kill followed by the name of the application. After you've typed kill, the applications that match the following text will be listed in the results panel. You can change the keyword by reconfiguring the Terminate Applications plugin.
You can also list all removable devices on your system by typing solid, and you should be able to manage virtual desktops by typing window. We couldn't get this to work, despite the plugin being listed in the configuration window. There's still tons over other functionality you can get out of KRunner by using the older plugins, but what we'd really like to see is cross-compatibility with Gnome Do's plugins.
Docky: Next generation panel
Docky started off as an ambitious panel replacement tool integrated into the Gnome Do utility. This was a great partnership, because Gnome Do is fairly technical, requiring its users to understand what they need to do and what their machines are capable of. It also provides relatively little feedback. The Docky component, on the other hand, is a more traditional launch panel that sits at the bottom of your screen. It can be used to display information, launch apps and switch between running programs.
There are alpha packages available for the new standalone version, dubbed version 2, but you can get almost all the same functionality by installing an older version of the Gnome Do package, which is far more likely to be provided by your distribution's package manager. If you do run Docky from Gnome Do, you need to make sure you open the preferences window and change the theme to 'Docky', otherwise it won't be visible.
You can drag apps from your system menu to add them to the Docky panel, from where they can then be launched. Applications that are already running have a small dot beneath their icons, and to the right of the panel you see the information applets. As you move your mouse across the panel, icons will smoothly scale up and down to indicate which is in focus. Right-click on the panel to bring up the preferences panel, from where you can add new applets to do menial tasks such as watch the weather or your CPU resources, or monitor your Google Mail account.
Step by step: Docky In Use
Launch Gnome Do: Docky needs to be run either from the standalone application or by selecting the Docky theme from Gnome Do.
App management: Drag applications onto the panel. When they're running, hover your mouse over for further information.
Desklets: There are several informative applets that are part of Docky. Click on them to reveal further information.
How do you come up with a revolutionary new desktop while your users are wedded to the old familiar input ideas, tried and tested in the two decades since we all started using a keyboard and mouse? If Linux were run by Apple, the developers would work in secret for years before announcing the availability of their new desktop metaphor. But the open source community doesn't work in the same way. Innovation has to be hammered out on online forums, in developer channels and through software releases. It's trial by committee, and many things can and do go wrong with the process.
Compositing effects are a good example. Almost as soon as David Reveman had finished his initial work on Compiz, patches could be integrated into almost any Linux desktop with no major changes. Users could install Compiz and start rotating their desktops within minutes. But the task of turning these patches into a homogeneous part of the desktop experience has taken considerably longer, and it's an ongoing process four years after the initial release. This is because the path to acceptance for Compiz has been slowed down by the community, with disagreement, forks, apathy and duplication all hindering its progress. And it's the same for many other projects.
If you want to change the way people use their desktops, you have to change the underlying technology behind that desktop. Most developers interpret this to mean that they need a new release, with an all-new API and plenty of new technology for application developers to take advantage of. This is the theory behind KDE 4's glut of new libraries and frameworks, for example, but it also means that it takes time for developers to catch up, if they even feel so inclined.
Gnome development is more pragmatic. Version 2 was released at about the same time as KDE 3 in 2002, and broadly, it's still a version of this release that's the current version of Gnome. There have been no dramatic redesigns, API changes, feature overhauls or debugging marathons. Instead, there's been the steady march of progress, and while Gnome may be missing some of the more experimental aspects of KDE, the latest release, 2.28, is still very different to the 2.0 release.
KDE is still pinning a lot of its hopes on the small, functional applications that the developers are calling Plasmoids.
This is partly because Gnome is more of a platform for applications than KDE. The user doesn't need to know that the F-Spot photo manager is written in Mono and uses C#, for example; the only important thing is that each Gnome application presents a standardised front-end by following Gnome's user interface guidelines. It's for this reason that Gnome has been going from strength to strength, even on other platforms and operating systems, and this kind of idea doesn't need to be updated when a new version is released.
Gnome 3.0 is scheduled for release in September of this year, but like all version 2.x releases up to this point, it's unlikely to be a KDE 4-like revolution. Initially, there were plans for dramatic changes to be made, all falling under an umbrella term for Gnome 3.0 - ToPaZ (Three Point Zero). If you look at some of the plans touted for Topaz, especially the results from some of the original brainstorming sessions, you'll see that most of the ideas remain in the current plan.
With the KDE 4 release, most of the development cycle for the revolutionary features that were supposed to make KDE 4 more attractive than version 3 actually occurred after the initial release. If KDE 4 were to be released now it would be hailed as a great success, rather than the stream of bugfixes and updates we've endured since 4.0 hit the mirrors in January 2008. But at the same time, developers have to balance expectation. Would many people still be using the KDE desktop if they had to stick to KDE 3-era applications? Fortunately, with the release of KDE 4.4, most of those criticisms and usability problems have been ironed out, and we finally have a KDE desktop that can replace KDE 3.5.
Next-gen tools: Gnome Do
We don't have to let ourselves be dictated to by desktop developers. We can pick and choose what we want to run regardless of what they bundle as the default environment or what they plan for the next major release. One revolutionary application you ought to consider, despite its omission in the plans for Gnome 3.0, is Gnome Do.
Initially taking its inspiration from an OS X tool called Quicksilver, Gnome Do has quickly become the quickest and most powerful way to access the power of your Linux desktop. It gives you complete control over application launching, but it can also do so much more. Thanks to dozens of separate plugins, you can install applications, open remote connections, play music, browse the internet, send emails, play games, tweet and blog, all without lifting your fingers from the keyboard. And despite its Gnome heritage, it works almost as well on other desktop environments, including KDE.
The last release was a little while ago, and this should mean that even the tardiest distribution should have Gnome Do packages available. After installation, you can normally run it from your system menu, and when it's running you can trigger the main application by pressing a special key combination - normally the Windows key and Spacebar, but this can be changed. This is the point where you might be tempted to discount Gnome Do as all hype and no substance, because there's very little to see - just two opaque boxes on the screen.
But with these two boxes you can accomplish almost anything. Begin typing the name of a bookmark in Firefox, for example, and you should see the full name appear in the box on the left. Pressing Return will then open the page in your browser. If you press Tab, the focus shifts to the box on the right, from where you can choose other options to perform on the URL using the cursor keys. By default, you can make a Tiny URL, open the URL or copy it to the clipboard.
What Gnome Do can do is controlled by a series of plugins. We used the Firefox plugin, and there are dozens of others to install and enable. With the Gnome Do window visible, click on the tiny down arrow in the top-right. This will display a small menu, and you can enable more plugins by clicking on the Preferences option and switching to the Plugins page that appears. To find out how to use each plugin, either click on the About button or take a look at the Gnome Do wiki (http://do.davebsd.com).
Step by step: Tweet from Gnome Do
Account details: Open up the plugin window, enable the Microblogging plugin and click on Configure to enter your account details.
Read tweets: New tweets will appear on your desktop, and you can post your own by typing a message into Gnome Do and pressing Tab.
Post tweets: Press Tab to switch to the other box and use the cursor keys to choose an action. Select Post To Twitter to perform the function.
Both Gnome and KDE are putting a great deal of emphasis on something they call 'activities'. These are really an extension of the virtual desktop idea, but rather than each desktop being a disconnected extension to your screen's real estate, activities become associated with a certain task. You might want to create a documentation activity, for example, and for that you'd need a desktop that provided quick access to a text or HTML editor, online resources and perhaps a dictionary or thesaurus. Like most other tasks, setting up this kind of environment would normally require the user to mess around with a launch menu as well as understand a certain amount about your computer's filesystem.
Most developers recognise that this process isn't ideal and that desktops of the future shouldn't require filesystem knowledge, or even an idea of how applications are organised and stored. The process of working with your data should be as intuitive as possible, and both major Linux desktops are trying their best to tackle this issue in their own special ways.
With Gnome, for example, one of the key aims of the upgrade to version 3.0 has been to streamline the user experience. And the central user-facing technology that's going to help this happen is called Gnome Shell. This is an application that has seen rapid development over the last 18 months after Gnome's Vincent Untz posted some observations from discussions at a recent hackfest in late 2008. These observations mentioned that tasks such as finding a window was more difficult than it should be, that workspaces were powerful but not intuitive enough and that launching applications was too hard.
Gnome Shell has been developed to address these problems, as well as take advantage of some of the latest Linux technology. Like Moblin, Gnome Shell uses Clutter, a graphical library that can build smooth transitions and eye candy out of even the most humble graphics hardware.
Tools like Gnome Shell could make the desktop launchbar obsolete.
The KDE team have been working on similar concepts throughout the entire KDE 4 development process. But it's fair to say that many of ideas touted before the first release were judged too ambitious and too difficult to implement within the first few revisions. KDE 4.4 is designed to redress some of these issues by re-awakening the Nepomuk semantic desktop and by making desktop activities usable.
The Nepomuk semantic desktop, as we've written before, is designed to bridge the gap between online content and content in your hardware. Many components of the web can already be found in KDE applications like Dolphin, where you can add comments, tags and ratings to your own files, but until now there hasn't been a good reason to go to all this effort. With the release of KDE 4.4, you can finally use these fields of rich information to search your content, just as you would search the internet through Google.
Another important aspect to user experience on the KDE desktop is the use of activities. Like Gnome Shell, this the ability to meta-manage the arrangement of virtual desktops and applications according to what you want to work on. It's a feature that has been part of the KDE 4 desktop for a while, but with version 4.4, activities also become first-class citizens on the KDE desktop, perhaps in an attempt to steal some of Gnome's thunder from the wonderful Gnome Shell. But it's not quite as simple or as straightforward to use. Rather than attempting to replace the launch menu and file management duties of the desktop, KDE's activities are better at managing complex environments. It doesn't replace the panel or the launch menu, for example, it just lets you fire up a working environment in the same way that you click on a browser's bookmark. That's not a bad thing, it's just different.
The best thing about Gnome Shell is that you can play with it today. And we'd suggest you give it a go, because it might just change the way you think about Gnome.
Gnome Shell should be straightforward to install through your distribution's package manager. To run it though, you will probably need to open the command line and type gnome-shell --replace. If you've ever manually started Compiz, this command will feel familiar, as the replace argument is used to replace the currently used window manage with both projects. When Gnome Shell is running (depending on the version you've installed), you'll won't see any new windows on your desktop; the only indication that something has changed is the different style of window decoration, and if it's a recent version of Gnome Shell, a quick-launch dock attached to the top-left of your main window.
To see Gnome Shell in action, just move your mouse to the top-right of your screen. You should then see the current view zoom away into the middle distance, and the freed-up screen space used to display other virtual desktops to the right and a minimal launch menu on the right. This launch menu contains applications and files, and you can either click on one to load the corresponding application into the current desktop or drag the icon on to the desktop on which you wish the application to appear. But it's also much cleverer than first glance might suggest. If you drag a text file on to a new desktop, for example, Gnome Shell will automatically load that file into the default application for that file type. Each window on the virtual desktop will update to reflect any changing contents, and you can enlarge any window in the frame by using the mouse wheel while the pointer hovers over the window you want to enlarge.
Make sense of virtual desktops
While the activity functionality has been a part of KDE 4 for a while, it's only with the 4.4 release that it becomes an integral part of the desktop. This is mostly thanks to an addition to the Plasmoid menu, which now includes the Add Activity entry to blank the desktop background. You can now add Plasmoids, change the desktop appearance and launch apps.
The best way we've found to switch between activities is to drag the Activity Bar widget on to the desktop and use this to switch between activities.You'll have to do this for every activity you use, although you can switch between activities by zooming out of the desktop from the Plasma menu or by creating a mouse action (right-click on the desktop background, select Desktop Activity Settings and switch to the Mouse Actions page).
You can also reduce confusion by having multiple virtual desktops and different activities at the same time by combining the two into the same function. Open the Multiple Desktops configuration panel from the System Settings application and click on the Different Activity For Each Desktop checkbox. This will remove the specific virtual desktop functionality, but enable you to switch between activities in the same way, which is a more convenient solution for users who don't need more than one virtual desktop within a single activity.
Step by step: KDE activities
Plasma: Click on the Plasma Cashew at the top-right of the screen and select Add Activity. Your desktop will switch to the blank screen.
Populate workspaces: You can now add files, folders and desktop widgets to the new activity, and these will appear only on that activity.
Switch activities: You can switch activities by zooming out of the desktop, or using the desktop Plasmoid, or your virtual desktop pager.
If you're not already excited about what's coming up in the open source world in the coming 12 months, why not? Here's just a taste of what you can expect...
There's no doubt that both Gnome and KDE are stealing the limelight when it comes to feature upgrades for 2010. The other more common Linux desktops don't have any such big upgrades planned, and this is their strength, as they often like to capitalise on their ability to remain stable and relatively lightweight. Xfce is the best example of this: changes from one version to the next are generally small and lack the paradigm shifting-hype of other desktop environments. Xfce 4.8 only entered the planning stage in August last year, and as a result, the feature list is best described as nebulous.
It's hoped that the new version will include an enhanced menu system, icon routines and keyboard handling, but there aren't any ambitious plans to add masses of new features. The new menu system is hopefully going to make it much easier for users to edit the launch menu, a task that currently generates plenty of complaints, according to Xfce developers. Xfce should also been able to jump on to the on-screen notification bandwagon, with Xfce developer Jerome Guelfucci showing off patches that bring Gnome's notification system to the Xfce desktop. It looks really good too. The new file manager, Thunar, is also likely to become more powerful, although one of its great strengths is that it's super quick and not hampered by the cruft that plagues other file managers. The final version of 4.8 is due to be released on 12 April 2010.
Xfce is quickly becoming a Zen-like desktop in the face of KDE and Gnome's growing complexity.
The most comprehensive open source office suite is likely to go through something of a transformation this year, now that its principal sponsor, Sun Microsystems, is being taken over by Oracle.
At the time of writing, the first release candidate of version 3.2 has just made it on to the mirrors. It promises faster startup times, almost halving the boot time for Writer from just over 11 seconds in version 3 to under six seconds in version 3.2, and should bring much better file compatibility with both the new ODF 1.2 specification as well as proprietary formats and the ability to save password-protected Microsoft Office documents. Version 3.3, which should be available by the end of the year, will be the first release to include the fruit from project Renaissance. This is a noble attempt by OpenOffice.org to overhaul the user interface of the various applications in the suite, hopefully pulling its appearance into the 21st century. This update is promised only for Impress, with the other applications getting the same treatment in later updates, but until we see a screenshot of the new design, we have yet to be convinced.
OpenOffice.org is going to enjoy a complete GUI overhaul later on this year, starting with Impress.
There's little doubt that the next 12 months are going to be particularly challenging for the Firefox web browser. Once the darling of the open source desktop, Firefox has suffered in the face of competition from Google's Chromium browser and its perceived lack of speed in the face of the growing dominance of WebKit-based browsing. As a result, future development is likely to focus on speed improvements and consolidating the initial reasons for Firefox's success, rather than adding feature after feature on to a browser than many users feel is already bloated.
With any luck, Firefox might not be staying like this forever...
After years languishing in the pool of applications known as 'loved and lost', Gimp looks like it may finely rise from the ashes of apathy and re-invent itself as the future of pixel editing on the free desktop. Version 2.6, released in October 2009, was a step in the right direction, but it's going to be version 2.8 that hopefully heralds the dawn of a new era. This is mainly because a brand-new, revised and re-imagined GUI is planned, finally consigning its multiple tiny dialogs and windows to the rubbish bin. Gimp 2.8 will include a single-window mode, just like its commercial competitor, and this should go a long way towards making it easier to use for most people.
In the words of one of the main developers on the project, Martin Nordholts, Gimp's UI feels rather cluttered. This is mainly because it uses so many windows, and the single window should solve most of these problems. But it's a big job. There are nine separate tasks required to make the modification work, with this feature alone taking up about 10% of the projected development time for the next release. Most people agree that it's going to be worth it.
The remainder of the development time is going to be spent adding lots of other cool features. You'll be able to type text directly into the image canvas, for example, rather than using a text entry window first. You will also be able to group layers, making larger and more complex images vastly more manageable. But development on Gimp has always been dependent on its relatively small and dedicated team. In the past, this has meant there was a long gap between releases, and it's likely to be the same with 2.8. Martin Nordholts initially estimated that if they included all the features they wanted, 2.8 might not see the light of day until early 2012. He suggested a compromise, pulling ideas like vector layers and unified and free transform tools from the feature plan, and pulling the release forward to before the end of 2010.
There's been a slight shift in recent years from open source project being built purely by the community that uses them, to applications that are developed and sponsored by a commercial endeavour. Google's Chrome browser falls into this category, and so does Nokia's development environment, Qt Creator.
The result is that we've never had a better selection of web browsers, and if you enjoy programming, there are now more Linux-compatible development environments that ever to choose from. If you're a Qt/C++ developer, Qt Creator is going from strength to strength, and is likely to be the best choice if you're thinking of joining the throngs of developers writing applications for Nokia's various mobile phones. In a related field, KDevelop 4 is finally due to be released some time in the first half of 2010. This is one of the final KDE 3-era applications to have made the transition to KDE 4, and we hope it will be good enough to last a few years before the developers decide to start from scratch again.
KDevelop 4 uses CMake for project management, and lets you have more than one project open at a time. There's also some sophisticated refactoring, argument matching and support for distributed version control systems such as Git. But KDevelop will no longer enjoy the wide language support of its predecessor, as it become increasingly adept at the C++/Qt combination - a space now defiantly occupied by Qt Creator.
KDevelop has a lot of catching up to do if it's going to compete with Qt Creator.
For Gnome developers there are likely to be a couple of releases of the Anjuta IDE, the first of which will be version 2.29.2. MonoDevelop, the multilingual IDE that specialises in C#, is also going from strength to strength, with version 2.2 being released right at the end of the year. There are currently no plans for version 2.4, but at the current rate of released, we'd expect another version before the end of the year.
First published in Linux Format magazine