KDE and Gnome

A quick look at two projects designed to make the administration and usage of a Linux system easier for beginners.

Watching the Linux operating system
mature is interesting these days. A couple of years ago a lot of
attention was devoted to incompatibilities with various hardware
components, networking and the development of the kernel. Though
these activities continue, it's no longer necessary to follow these
development efforts as closely in order to run a dependable Linux
system. Distributions have improved immensely, and now more
free-software developers are turning their attention towards
refinement and integration of the user interface.

Two separate projects have arisen in the past year: KDE (the
K Desktop Environment) and GNOME (the Gnu Network Object Model
Environment). Both of these projects include among their stated
goals the desire to make the administration and usage of a Linux
system easier for beginners, in part by providing a uniform look
and feel for the most commonly used applications and utilities, as
well as interoperability of the system components. It's difficult
to make much of a comparison between the two, as KDE is much
farther along than GNOME, but I'll make an attempt.

Commonalities

There is one common structural aspect to these two projects.
They each rely on a group of shared libraries that provides the
interface to basic OS operations, such as file-reading and saving,
as well as basic display and appearance functions. An installation
will populate a directory with a variety of shared libraries which
support a directory of fairly small executables. The Gimp works
this way as well; the individual plug-ins tend to be small, but
rely on the services provided by both the GTK and the GIMP shared
libraries. This approach facilitates contributions by programmers
not directly involved with a project, as many of the low-level and
window-display functions are already written, allowing a
contributed application or extension to “hook” into them.

KDE

The first of the two projects to gain momentum was KDE. About
a year ago a group of developers, mainly European, began coding the
components of this ambitious project. They chose the Qt toolkit
(from TrollTech in Norway) as the GUI framework, a decision which
has since led to some controversy. Qt has a few licensing
restrictions which, though not onerous for end-users, can cause
problems for the creators of CD-ROM-based distributions. Advocates
of GNU-style free software tend not to favor Qt, a circumstance
which led to the creation of the GNOME project.

Setting aside the thorny licensing issues, the KDE developers
have managed to pull together quite a remarkable system in the past
year, though numerous bugs still remain evident. The second public
beta was released in November of 1997, and I compiled and installed
it soon after. (I had briefly tried the initial beta, but found it
too unstable to evaluate.)

This second release still has flaky aspects, but enough of it
works to give the user an idea of what the developers are planning
to accomplish. In effect KDE is a sort of GUI wrapper around an
existing Linux system, which attempts to simplify
system-administration tasks and offer interactive compatible
utilities and applications. kfm is
at the core of the system, as it is intended to be left running in
the background and serves as the help viewer for all of the KDE
components. kfm is also a file
manager (icon-based, with some resemblance to
xfm and
moxfm) and serves creditably as a
web browser.

kfm is an impressive
application, and itself a good reason for trying out KDE. Many of
the other applications are replacements for programs which most
Linux users probably already have and would only be desirable if a
complete KDE system were the goal.

KDE has its own window manager,
kwm, which had some display faults
on my system. Due to these video artifacts I didn't use it much,
but it did appear stylish and well-designed. It seems that these
display bugs don't show up on most systems; I suspect that it
depends upon the video-card and X server being used.

A new Linux user (especially someone accustomed to Windows or
Macintosh systems) might appreciate the relative ease of
configuration and use which KDE offers. In a sense, KDE extends the
scope of the tasks traditional distributions perform. One drawback
might be the very comfort of the KDE environment; the various
system-administration tasks outside of KDE's abilities might seem
too daunting or unapproachable without a KDE interface. This won't
be seen as a drawback to prospective users who lack the fascination
with internals and configuration which in the past has typified
Linux users.

Some KDE users have reported that they find the system both
usable and useful, but with my particular setup this wasn't the
case. I have to say that my extensively customized Linux
installation seems perfectly satisfactory as is, and I probably
lack the motivation to spend the time learning to adapt KDE to my
needs. If KDE had existed back when I first booted up a Slackware
system some years ago, maybe I would have felt differently.