Sun has long been criticized for its failure to jump on the Linux
bandwagon. Open Source advocates often point to Sun's competitors as
an example of why Sun should embrace Linux. With the release of the
Java Desktop System, customers can now rejoice at Sun's willingness
to please. But does this desktop stack up to the competition, or will
it fail as surely Corel Linux did? To answer this question, I
purchased Sun's Java Desktop System and took it through its paces.
Installation
The OS came on a total of 6 CD-ROMs, all packed into a standard
Sun media kit folder. As is customary with modern distros, the first
three CDs contain the binary packages, while the fourth and fifth CDs
contain the source code. The source CDs are particularly necessary if
you wish to install third party kernel modules. (e.g. The official
Nvidia driver.) The sixth CD is merely a collection of various open
source and Sun documentation packages. I personally didn't find the
documentation CD to be of much value. Of particular annoyance was the
fact that all the screen shots on the were
for a vanilla GNOME desktop or SuSE install. None of the
documentation was really JDS specific.
Installing the Java Desktop System was quick and easy. All of my
hardware was detected automatically (including my ISA Awe32 sound
card), and JDS chose intelligent defaults for everything. That
includes choosing the ReiserFS format by default (a very sensible
choice). Beyond that, but there really isn't much more to say. After
it autodetected everything, I clicked “Next” and it began
installing the OS. A reboot later I was sitting at the fully
installed desktop. Overall, a very pleasant experience.
Java Integration
Despite the name of the product, Java integration is something of
a mixed bag. On one hand, browser integration works great. Applets
work without any special configuration, and Java Web Start
applications can be launched and/or installed with a single click of
the mouse. On the other hand, support for standard Java applications
is very poor.
The first problem is that only the JRE is included. This makes it
impossible to do any Java development without downloading and running
a full JDK install. Even worse, executable JAR files open in the
archive manager instead of being launched with the 'java -jar'
command. This is inexcusable for an operating system that carries the
Java name. The final annoyance is in the default Swing look and feel.
Sun has a GTK+ look and feel, but the default OS L&F is the
standard Metal L&F. The result is that Java applications stick
out like a badly bruised thumb.
Thankfully, there is a silver lining. Sun has promised to add
developer tools to the May release of JDS (not available as of this
writing). This package is supposed to include the JDK, Java Studio,
and NetBeans 3.6. It will be available to anyone who payed for a
previous version of JDS. With any luck, that version will transform
the OS into a much more attractive option for both developers and
ISVs.
Software
The Java Desktop System comes with a useful assortment of both
Open Source and commercial software. All the standard GNOME utilities
and games are there, as well as Mozilla, Real Player, Macromedia
Flash, StarOffice, Java Media Player, and a variety of open source
Java software. Given the visual integration of the Desktop and GNOME
software, Mozilla and RealPlayer seem out of place. Mozilla has a
skin to make it look like a JDS application, but the skin is only
half complete.
RealPlayer is the same free player available for download from the
Real site. As one would expect, there is no full screen support, and
it does not integrate with the desktop in any way other than to
associate itself with RealPlayer files. Sadly, not even the file
associations work. Double clicking on the file causes Nautilus to
pass RealPlayer a URL instead of a file path. Predictably, RealPlayer
chokes on this URL and forces you to navigate its antiquated
File|Open menu.
Third Party Software installation is even more problematic. Sun's
version of YaST 2 is sufficient to install only a small subset of
Open Source software available for Linux, as well as automatically
install the latest security updates. In theory, new versions of the
OS will also be delivered via the same interface. Beyond that, there
are no graphical tools for software installation. Even SuSE's YaST
interface for installing RPMs appears to have been removed. This
leaves the user with the choice of either running 'rpm –install'
manually, or compiling software from it source.
When I spoke with Sun on the issue, they acknowledged that it was
problem and suggested that I try a Java product such as Zero G.
Unfortunately, Sun's failure to add support for executable JAR files
means that even products like Zero G won't be able to create
installers that launch from the GUI. Hopefully this oversight will be
corrected in the near future.
On the bright side, the Nautilus file manager has been configured
to be very similar to Windows Explorer, and should feel perfectly
natural to any Windows user. Only the highly attractive icons and
in-icon preview mode keep you from forgetting that you're not in
Windows.
The GNOME interface has also been tweaked to feel very much like
Windows. The standard “foot” menu applet has been
restyled into a “Launch” button that's
reminiscent of the Window's “Start” menu. To the
right of the “Launch” button, you have your system clock,
the list of running programs, then the system tray icons (including
the Volume Control). Other than the clock being in an odd place, this
should all seem very natural to a Windows user. The desktop pager
might cause some confusion, so companies may prefer to disable it
before they receive the inevitable “my applications
disappeared!” tech support call.
Multimedia
In the past, many desktops have used their business focus as an
excuse to include reduced multimedia support. Normally I'd simply
make a note of it and move on. In JDS's case, Sun has also made an
effort to target home users through OEM machines sold at WalMart.
It's possible that Sun has added extra multimedia capabilities to the
OEM install of JDS, but I do not have such a machine to verify this
supposition. Thus I must to proceed on the assumption that the OEM
version of JDS is no different than the Media Kit.. This is rather
unfortunate for Sun as multimedia support is one of the weakest areas
of the Java Desktop System.
JDS includes the Java Media Player, GPlayer, and Totem. Double
clicking on an MP3 brings up the Java Media Player. The upside is
that JMP plays MP3 files. The downside is that each instance is only
good for playing one file. Play lists are out of the question, and
the default is to continuously loop on the same file.
None of the Media Players I tried would play any of the AVI files
I had available to test with. Since most AVIs today are encoded in
patented formats like MPEG4, this came as no surprise to me. Most
Linux distros seem to be attempting to avoid patent issues in a
similar fashion. Given how large of a company Sun is, it would be a
nice surprise for them to simply license the patents required to
legally ship non-crippled software.
MPEG2 files were associated with Gplayer. These seemed to play
reasonably well. I had very few MPEG2 files on hand, so I found that
other than testing there wasn't much use for this support. I do not
have a DVD drive, but it's possible that this program is for current
or planned DVD support.
3D support is non-existent. In fact, Sun has completely removed
the GLX extension. I only realized this omission after downloading
the NVidia Linux drivers from the official site (only the generic
'nv' driver is included in JDS), and attempting to run a few JOGL
(Java OpenGL) programs. I was a bit surprised when the first program
immediately exited, and the second program hung. A quick check of the
console confirmed that the GLX extension couldn't be found.
In the end, I performed a command line install of XMMS and Xine.
This was sufficient to make use of my multimedia collection. 3D games
are still out of the question.
Overall Impression
The interesting part about the Java Desktop System is that despite
all it's flaws, it's actually a very pleasant and usable system. I
would even go as far as to say that it reminds me a lot of when I
first started using Windows 95. Everything is new and shiny, the
desktop is pleasant on the eyes, the GUI is responsive, and you don't
feel the overwhelming need to drop to a terminal. Given that the JDS
interface is supposed to be ported to Solaris, it may be that Sun
intends JDS Linux to be to Solaris as Windows 9x was to NT.
The downside of such a comparison is that JDS Linux is just about
as quirky as Windows 9x. Putting an Audio CD in the drive once caused
the CD Player to hang and the rest of the system to respond in short
spurts. Opening and closing the CD Drive resolved the problem.
Another time I was doing an 'rpm --rebuild' in a terminal (JDS uses
GLIBC 2.2.5 instead of the latest 2.3) and the GUI became sluggish
and unresponsive. Data CDs will frequently fail to eject, supposedly
in use by some mysterious program. None of these quirks are
insurmountable, but they do give the OS a “beta quality”
feel to it.
JDS does have a few things in its favor that Windows 95 didn't.
Unlike Microsoft, Sun releases updates to their software on a
quarterly basis. This means that major OS fixes are (hopefully) no
more than 3-6 months away. JDS also has the advantage of being able
to pull from a large base of existing software. Whereas Microsoft had
to build everything for themselves (admittedly a doable task for such
a large company), Sun can pick up an Open Source project that meets
their needs, add some polish, submit the changes back to the project,
and release it with the next update of JDS.
Wish List
Besides the standard list of OS improvements (e.g. Make it faster,
support more hardware, bundle more software, etc.), I believe Sun
could really improve their OS by making use of some of their business
connections and clout as a large corporation. For example, Sun should
license the MPEG4 and/or DivX codecs. That alone would make Sun the
only Linux company to distribute a working media player. Next on the
list, they could convince Adobe to create a version of Acrobat that
would integrate with the GNOME desktop. Even a RealPlayer version
that supported full screen would be a welcome change.
Beyond that, I think that Sun really needs to take the lead on
software installation. Packaging systems are great for keeping system
libraries and command line programs in sync. Unfortunately,
installing a GUI program ends up being a frustrating experience
fraught with dependency hell. Simply defining a new standard for GUI
software installation (preferably one that included all dependencies)
would go a long way toward making the system more usable to the
technology challenged. Even those of us who are experienced with
Linux would readily appreciate being saved the trouble of tracking
down dependency after dependency.
Final Thoughts
If you're a business looking to break your Microsoft habit, or a
Linux user who's looking for a distro with a comfortable GUI, then
JDS is definitely for you. If you're a home user looking for an OS
that's cheaper and easier than Windows, then I suggest that you wait
a few releases before making the big leap.
One way or another, JDS represents a tremendous shift in usable
Linux Desktops. I applaud Sun's efforts and eagerly await their
future offering.