2008 is shaping up to be the year that GNU/Linux hit the Windows desktop. Already the year has seen the first working version of the KDE Windows project, Wubi, which installs Ubuntu to an existing Windows filesystem, and LiveUSB Creator, a wizard for installing the Fedora distribution to a flashdrive from within Windows.
Last week, this effort was joined by the beta of Ulteo Virtual Desktop (UVD), which adds a complete KDE desktop to Windows XP or Vista. While rough around the edges, UVD seems by far the most successful of these efforts to give Windows users an easy way of experimenting with GNU/Linux.
Ulteo is the latest project of Gael Duval, the co-founder of the Mandrake distribution (now called Mandriva). First announced 18 months ago, Ulteo has shown some intriguing approaches to simplifying the GNU/Linux user experience. These include the self-updating Ulteo Application System distribution and the Ulteo Online Desktop for those who frequently use multiple computers.
With UVD, Duvall and his company take an equally innovative approach to running on Windows, using technology borrowed from Cooperative Linux that converts Linux system calls to Windows ones, a process that allows UVD to run on a Windows desktop and interact closely with Windows applications.
To install UVD, all you need to do is download the installer to your Windows desktop. Clicking it opens a wizard that requires you only to select a language, accept version 2 of the GNU General Public License, and confirm or change the default install location of Program FilesUlteoVirtual Desktop.
From there, the wizard installs the five gigabytes of UVD in about five minutes. Unless you are short of space, the only incident during the install is likely to be the warning that UVD has not passed Windows Logo testing. Just ignore the fact that Microsoft strongly recommends that you stop this installation now, and you can launch UVD from the end of the wizard. After all, if you have trust issues that could be alleviated by Microsoft's seal of approval, you wouldn't be installing UVD (or any other free software) in the first place.
The good and the bad
UVD leaves an icon labeled Virtual Desktop on your desktop. On my computer, UVD took about twenty seconds to load, during which time it displayed a flashing Ulteo logo, a sort of minimalist Star Trek tableau of three androgynous yellow figures.
While UVD loads, you may be asked if you want to sign in to Ulteo Online Desktop, although no explanation is given of why you should want to. The dialog window has no close button, but you can use the icon on the title bar to shut it if you prefer not to use the Online Desktop. After a confirmation dialog, loading then continues.
When loading is complete, you have a panel for KDE 3.5.2 sitting in the top and middle of your Windows desktop. You are logged in to the me user account, although you can switch to the root account for the limited administration you can do; both accounts come with a password that is the same as the account name, a fact that will generally be relevant only if you do any administration work.
Going through the UVD main menu, you will find a small, but reasonably well-chosen group of applications, whose versions were current approximately last October, including Firefox 18.104.22.168, the GIMP 2.2, and OpenOffice.org 2.3. Although presumably the final release of UVD will update these versions, fortunately these versions are mature enough that they represent free software reasonably well.
The first thing you'll notice when running UVD is how seamlessly, for the most part, it fits into Windows. Applications started from UVD use Windows widgets, and appear in the Windows task bar, where they be resized or closed as though they were native to the host operating system.
In addition, UVD can use peripherals such as printers that are already installed under Windows. You can share documents back and forth between Windows and UVD applications, and, if you are running Klipper, KDE's multiple clipboard, a copy and paste in MS Word will appear in Klipper.
Overall, any loss of speed is so minimal as to be undetectable on a recent computer, which gives UVD a decided advantage over true virtualization solutions such as WMware. The only problem that occurs is an occasional lag, usually occurring when starting a program or when one has been sitting idle for over ten minutes.
Looking closer, you may notice that integration into the Windows desktop is not quite as close as the first impression suggests. Navigating the file-saving dialogue can also be difficult, since how UVD's file structure hooks in to Windows' takes some figuring. Fonts are not shared between the two operating systems, a limitation that can cause formatting problems if you are opening a document in both. Nor do UVD's desktop and system settings work on the Windows desktop, which most likely sidesteps many potential disasters or complex questions (such as the effort to run multiple workspaces within Windows), but raises the question of why these tools have not been removed. As things are, you cannot even configure a new printer from within UVD.
Further investigation also reveals some limitations in UVD itself. In theory, you can run the apt-get command to upgrade UVD, but I was unable to compete a software installation, either because no new updates are available yet or the repositories are more limited than in a standard distribution.
Other limitations include the fact that you can add applets to the UVD panel, but cannot delete them or have them persist longer than the current session.
For that matter, you cannot close UVD itself once you start it. No Shutdown button appears on the panel or in the menu, and, while UVD appears on the task bar under the name of Kicker, the name given to KDE's main panel, it cannot be closed from the taskbar.
To close UVD, you have to exit from Window or logout -- and then you get the mysterious message from Windows that "a network cable is unplugged." This message seems to signify that the connection to UVD is gone, and may be a limitation of Windows that nothing can be done about, but, all the same, it adds to the impression that Ulteo has spent its efforts so far on getting UVD to run and hasn't paid much attention yet to how it shuts down. Still, no doubt the final release will see some improvements.
Because of these limitations, I am almost tempted to mutter the old cliche that the amazing thing about a dancing bear is not that it dances well, but that it dances at all. However, that would be unfair. While addressing these limitations should make the final version of UVD more polished, most of them are minor enough to make little difference. For the most part, UVD performs superbly and, for old GNU/Linux hands, provides the mildly subversive thrill of seeing KDE apps running under Windows as well as native ones. You simply aren't supposed to be able to do things like UVD.
The only real question that UVD leaves me with is who such efforts are for. You can understand why developers would appreciate the challenge, but are that many Windows users actually clambering for an easy way to try GNU/Linux? Live CDs for GNU/Linux have been widely available for several years now, and they have yet to create a mass exodus from Windows. Perhaps, though, their relative slowness compared to an operating system running from a hard drive makes them less impressive.
Another worry: Given the success with which UVD integrates with the desktop, any curious Windows users who do exist might not fully appreciate what they are seeing. Equally, they will miss seeing features like virtual workspaces or the number of customization options that distinguish GNU/Linux.
Perhaps the real audience for UVD is free software users who are forced by work requirements to use Windows, but would rather use their favorite applications. While the lack of GNOME applications or, in some software categories, multiple choices might limit this market, it could be a substantial one.
None of which makes Ulteo Virtual Desktop any less ingenious. Ulteo may need to worry about its audience so they can monetize it, but the rest of us can simply appreciate the programming and be grateful for the addition to our toolboxes.