Tom Syroid
Email Tom
Tom's Website
BTLB Logo Brian P. Bilbrey
Email Brian
Brian's Website


Go to the Table Of Contents

Did you read the Preface? Thanks!

14 - GUI Tips, Tricks and Techniques

In This Chapter

In the eight months we spent on this book, the Linux world has changed and grown. Caldera Systems bought a big hunk of SCO, one of the original cornerstones of the x86 Unix market. The KDE Project introduced KDE 2.0 to the general populous in October 2000. The reviewers looked upon the Code, and the Interface, and found them good. And Richard Stallman's objections to KDE on the grounds of its non-free underlying library (Qt) have been removed. Trolltech has released the latest version of its interface library, Qt 2.2, under both the GPL and the QPL.

In other GUI news, the Gnome Project has brought its environment much closer to fruition. Two new Open Source companies, Helixcode and Eazel, are providing state-of-the-art packaging, file managers, and e-mail clients. These additions further strengthen this contender for the Linux desktop crown. Additionally, Gnome has been brought into the limelight with the proposed adoption of Gnome as the new standard desktop for Sun Microsystems, replacing CDE (Common Desktop Environment).

The Linux kernel continues to inch towards a stable 2.4 release with a continuing test series of beta kernels. Here's a recent announcement from Linus himself on Halloween (as found on multiple sites on the Internet):


From: Linus Torvalds
Subject: Linux-2.4.0-test10
Date: Tue, 31 Oct 2000 12:41:55 -0800 (PST)

Ok, test10-final is out there now. This has no _known_ bugs that I consider show-stoppers, for what it's worth.

And when I don't know of a bug, it doesn't exist. Let us rejoice. In traditional kernel naming tradition, this kernel hereby gets anointed as one of the "greased weasel" kernel series, one of the final steps in a stable release.

We're still waiting for the Vatican to officially canonize this kernel, but trust me, that's only a matter of time. It's a little known fact, but the Pope likes penguins too.

Linus

So why bring all of this up now? Because we're going to enjoy ourselves, and perform some experiments. We both usually enjoy playing with computers, breaking them and finding out what we did wrong. This way we can learn something new and pass the learning on to y'all.

Using Wheel Mice with OpenLinux

One of the most welcome hardware developments in recent years was the addition of a scroll wheel to the mouse. While some people can take or leave it, others have quickly become dependent on the device as an essential aid to navigation. In OpenLinux, there are varying levels of functionality depending on your specific hardware configuration and installed software.

If eDesktop is installed on a system with a Microsoft wheel mouse resident, the mouse is usually correctly recognized and the correct data is incorporated into /etc/XF86Config, the file containing the configuration data for the X Server. The specific section from the file is shown in the following listing (with a necessary addition in bold):

Section "Pointer"
    Protocol "IMPS/2"
    Device "/dev/mouse"
    Buttons 5
    ZAxisMapping 4 5
EndSection

There are a lot of possible protocol entries; type man XF86Config for a complete listing. When using a Logitech mouse, Caldera suggests using the "MouseManPlusPS/2" protocol (although we haven't tested that personally). Also, depending on your system, it's possible that the device should be "/dev/psaux". With this section in place, restart X (press CTRL + ALT + Backspace). The wheel works every time for us, in Netscape. If it does work in KDE1 then you're done. Otherwise, there's an additional component to include: IMWheel. This utility is found at http://jonatkins.org/imwheel/; the gzipped tarball (Unix archive file) is linked as a download from the entry page. Once downloaded, install it in the usual manner, illustrated in the next listing.

[root@gwydion bilbrey]# mv imwheel-0.9.9.tar.gz /usr/local/src

[root@gwydion bilbrey]# cd /usr/local/src

[root@gwydion src]# tar zxf imwheel-0.9.9.tar.gz

[root@gwydion src]# cd imwheel-0.9.9

[root@gwydion imwheel-0.9.9]# ./configure
  * * *

[root@gwydion imwheel-0.9.9]# make ; make install
  * * *

Then as a normal user, type imwheel -p in a terminal window to start the daemon. That's right, IMWheel is one of those rare programs - a user-space daemon. To have it run automatically on login, create an application link in the Autostart directory that executes "/usr/local/bin/imwheel -p".

Our testing indicates that KDE 2.0 and its associated applications recognize the wheel mouse properly without the need for IMWheel. However, problems may arise with USB mice or if you use a KVM switch to share multiple computers with a single keyboard, display, and mouse. If this is your scenario, experiment and explore newsgroups for advice if the hardware doesn't perform as expected. The good news is that for the most part, systems work just fine without any contortions.

Adding KDE 2.0 to eDesktop

On October 23, 2000, the KDE Team announced the formal release of KDE 2.0, the latest edition of this highly regarded desktop environment. Within a matter of days, binary distributions were available for most of the major distributions, as well as publisher-agnostic tarballs. And of course, source code was there for the taking. In order to get up and running quickly, we wanted to fetch down, install, and experiment with this release, in order to give you yet another peek at the tools you'll be working with over the coming months and years.

Hint
The following steps are based upon downloading KDE 2.0 from online sources. All told, it's about 57MB. That's about 10 minutes with a close, fast server over a DSL or cable connection. Other methods that work are downloading the RPMS at a site with better bandwidth, and then burning them to CD-ROM. Alternatively, online vendors that include Linux System Labs (http://www.lsl.com/) and CheapBytes (http://www.cheapbytes.com/) have the release available very inexpensively (just over cost of copying plus shipping fees).

In KDE, begin the process by opening two KFM windows. In the first, create a KDE2 directory in your home directory, and then open it. In the second window, enter http://www.kde.org/. Navigate through the site to the download area, and select a download mirror that's close and fast for you. We often use ftp://download.sourceforge.net/.

At the FTP site, the path to the binaries may vary. For the Caldera RPMS it is typically /pub/mirrors/kde/stable/2.0/distribution/rpm/COL-2.4/. For some reason, the RPM files are separated out into a variety of sub-directories, unlike the setup for the other distributions. At the top level and in each sub-directory, select all of the RPM files. Drag and drop into the new local KDE2 directory window, as shown in Figure 14-1.

Downloading KDE 2.0 RPMS for Caldera 2.4 using KFM.

Figure 14-1
Downloading KDE 2.0 RPMS for Caldera 2.4 using KFM.

Then open a terminal window and su to root. Change directories to KDE2 and install all 111 RPMS, as illustrated in the following listing. One warning: Xanim (a digital video player package) is dependent on Glibc 2.2, which isn't packaged with eDesktop. So move xanim-2.80.1-2.i386.rpm out of the way, since the old version works fine with KDE2.

[bilbrey@gwydion bilbrey]# su
Password: a_g00d_s3cr3t

[root@gwydion bilbrey]# cd KDE2

[root@gwydion KDE2]# mv xanim-2.80.1-2.i386.rpm ..

[root@gwydion KDE2]# rpm -Uvh --force *rpm
abbrowser                   ##################################################
   * * *
qtdesigner                  ##################################################

One question that comes up in the RPM command: Why use the --force option? KDE 2.0 overwrites some image files (icons, JPG files, and so on) that are "owned" by older KDE packages. In order to install the RPMS, we have to explicitly give permission to overwrite those files.

Once all of the packages are installed, close the open windows and restart the X server by pressing Ctrl + Alt + Backspace. When the Login Screen comes up, the background is courtesy of Caldera's Linux Technology Preview, and the new KDM login dialog box awaits your attention, as shown in Figure 14-2. It's time to start exploring some new features and capabilities.

The KDE 2.0 Login Screen in Caldera OpenLinux eDesktop 2.4.

Figure 14-2
The KDE 2.0 Login Screen in Caldera OpenLinux eDesktop 2.4.

Having Fun with the Shiny New KDE

The KFM client of KDE 1.x has grown up, and taken a good whack of steroids along the way. Now called Konqueror, this versatile tool is both the primary file manager for all of KDE 2.0 and is an excellent, standards-compliant Web browser with Secure Sockets Layer (SSL) functionality provided by the OpenSSL libraries. Selecting the "Little House" icon on the Panel opens Konqueror in file manager mode. It's easy to create an icon to open the utility in browser mode, and start off at a known URL.

Adding and customizing icons in the Panel

Right click on the Panel (the bar often at the bottom of the screen) and select Add --> Application --> Internet --> Konqueror Web Browser.

This incorporates a "World" icon on the Panel; in our example, it's the fifth from the left, as shown in Figure 14-3. To move the icon to a different location on the Panel, right click and select Move, then shift the image and left click to drop it in a new location.

Modifying a KDE 2.0 Panel application: Open Konqueror to a specific URL.

Figure 14-3
Modifying a KDE 2.0 Panel application: Open Konqueror to a specific URL.

Tricks of the Trade
If there's no current free space on the Panel, then right click on one of the existing icons. The first menu item is "Panel Menu." From there, follow the directions above to insert a new application icon. Additionally, to replicate the view shown in the illustrations, remove the "Task Bar" portion of the Panel, and from the Panel Menu select Configure --> Size --> Tiny to minimize the imposition on the working area of the screen.

Now, let's edit the application call so that Konqueror opens to our desired start page. Right click on the icon, and select Preferences. Choose the "Execute" tab. By default, the Program name field contains "kfmclient openProfile webbrowsing". Now what? We did a little exploring on the command line. A good guess based on prior experience says that executing the command and adding a --help option might be useful:

[bilbrey@gwydion bilbrey]$ kfmclient --help
Usage: kfmclient [Qt-options] [KDE-options] [options] command [URL(s)]

KDE tool for opening URLs from the command line

Generic options:
  --help                    Show help about options
  --help-qt                 Show Qt specific options
  --help-kde                Show KDE specific options
  --help-all                Show all options
  --author                  Show author information
  -v, --version             Show version information
  --license                 Show license information
  --                        End of options

Options:
  --commands                Show available commands.

Arguments:
  command                   Command (see --commands).
  URL(s)                    Arguments for command.

[bilbrey@gwydion bilbrey]$ kfmclient --help-all
Usage: kfmclient [Qt-options] [KDE-options] [options] command [URL(s)] 
   * * *

There is a lot more to the capabilities of Konqueror - we encourage you to explore these commands and experiment with the wide variety of options to learn more about how to make this tool sing. However, that single "Usage" line told us everything we needed at the moment. Add the URL at the end of the existing command line. Then choose OK to save the changes and close the dialog. When you click on the "Konqueror the Web Browser" icon, it opens without a directory tree, and at the specified site.

Hint
KDE addresses all executable resources as URLs. Thus we have ftp://download.sourceforge.net, http://www.daynotes.com, file://home/bilbrey/btlb1401.jpg, and so on. That is, a file with path information is a valid URL, just as is the address to a Web site.

Which home do I get?

Here's our one gripe: When we're using Konqueror as a file manager, we want the Home button on the toolbar to take us back to the home directory. On the other hand, when in use as a browser, we want the same button to take us to a select home, portal, or start page. After much investigation, it appears that as stated, that problem can't be solved. But a new distinctive button can be added to the main toolbar, next to the "Home" button to perform a "Web Home" function and allow the original to access the local home directory. Here are the steps to get you there:

  1. Open Konqueror in browsing mode, and open the desired start page.
  2. From the drop-down menus select Bookmarks --> Add Bookmark to save the URL into the bookmarks list.
  3. Then select Settings --> Configure --> Toolbars.
  4. In the Configure Toolbars dialog box, we found that bookmarked URLs can be found in the Available actions list box. Choose the name of the site, then transfer it to the Main Toolbar.
  5. The URL appears at the bottom of the list. Select it, and using the up and down positioning arrows in the dialog box, move the site into a position that is intuitive and functional, just below (physically to the right) of the local home button.
  6. Choose OK to save the settings and exit the dialog box.

Warning
After adding KDE 2.0 to eDesktop, some of the applications are still a little unstable during configuration operations. This is probably a function of the new KDE not being fully integrated and tested with this version of the distribution. When Caldera officially offers KDE 2.0 RPMS, expect a much more solid experience. In the short term, this means that when executing the sort of operations discussed previously, the application may crash. No harm done; just re-start the application and pick up where you left off.

In Figure 14-4, the Web URL icon is shown already in position between local Home, and the Reload icon (rotating arrows). To supplement the directions we gave previously, the Configure Toolbars dialog box is open in the foreground, ready to reposition the selected URL item.

Adding a

Figure 14-4
Adding a "Web Home" button to the KDE 2.0 Konqueror main toolbar.

Tricks of the Trade
As a quick-tip shortcut, simply type + F2 to bring up a dialog box, enter the URL you want to navigate to, and hit Enter. Presto-Pocus, as they say...

Adding Other Window Managers

One of the big selling points for Linux is CHOICE! Admittedly, in the process of making Linux easier and more supportable, Caldera has made some decisions for the user. One GUI environment is offered: KDE and its associated tools. In sum, this is probably a good choice. To get new users (fresh from their familiar Windows environs) up and running, KDE is a reasonable choice. It is quite similar in looks and superficial behavior to the products from Redmond, making for a much simpler transition.

Additionally, Caldera has the goal of penetrating and supporting the business desktop market with OpenLinux. The key is support. Trying to assist an end user who is in one of 17 different environments and not describing his circumstance well - that's a help desk nightmare.

But now, with our guidance, you've become self-supporting. You use the resources available, in print and online, to answer questions as they arise. Now it's time to branch out a bit and take advantage of Linux's much-vaunted user experience buffet.

At the end of Chapter 12 we discussed adding Gnome to eDesktop. Gnome is a desktop environment and an extensive suite of programs. Let's recap the simple installation procedure. First, give permission to make use of the display with the xhost command. Then su to root, and use lynx to download, then start the Gnome Helixcode download and installation process. For more details, see the Web site at http://www.ximian.com/.

[syroid@gwydion syroid]# xhost +localhost

[syroid@gwydion syroid]# su
Password: A_Good_Password

[root@gwydion syroid]# lynx -source http://go-gnome.com | sh

That last command uses the lynx browser to get the document source (actually a shell script) from the specified site and pipes the output to a shell process to execute the Helixcode Gnome installer. Follow the prompts, first in the virtual terminal window then in the installation dialog box. At the end of the process, you are presented with a potentially confusing question. Behind Door Number One, we have "Use the Gnome login manager by default." Hiding behind Door Number Two is "Do not change the current login manager configuration."

The problem lies in that the current login manager, kdm, only is setup to run KDE. Adding Gnome to the system does not add it to the list of available sessions on the Login dialog box. Alternatively, using the Gnome login manager happily starts Gnome, but if you want to go back to KDE, it's not an option from this dialog. What to do?

We've found it easiest to install the Gnome login manager (gdm), then run KDE and/or KDE2 from the gnome session manager. This is a multi-step process. First, we'll need to determine how KDE is started. The first stop in this detective story is /etc/rc.d/rc.gui, the system startup script that initializes the login manager. There we find that the Helix installer has done its magic: The display manager (DM) variable is changed to /opt/gnome/bin/gdm, replacing kdm.

[root@gwydion rc.d]# cat rc.gui
#! /bin/bash
# $Id: rc.gui,v 1.3 1999/11/12 12:12:59 ray Exp $
#
# KDM *only*!  (for now ;^)

exec - > /var/log/gui 2>&1
C=$0; C=${C##*/}

# Login Manager changed by Helix Code Installer
DM=/opt/gnome/bin/gdm
#Old DM:
#DM=/opt/kde2/bin/kdm
XC=/etc/XF86Config
XS=/usr/X11R6/bin/X
 * * *
 

Now to determine how KDE is started. In /etc/X11/kdm/Xsessions, we find the following chunk of shell script that starts KDE:

        kde)    [ -z "$KDEDIR" ] && {
                        KDEDIR=/opt/kde; export KDEDIR
                PATH=$KDEDIR/bin:$PATH
                }
                exec /etc/X11/xinit/kdeinitrc
                ;;

The key line is just above the double semicolons. The exec command runs the kdeinitrc script to initialize the system, and then starts up KDE1.

After quite a bit of spelunking around familiarizing ourselves with the newer material, we've determined that the equivalent of kdeinitrc for KDE2 is located at /usr/X11R6/bin/kde2. With this information in hand, we can change directories to /etc/X11/gdm/Sessions. This directory contains the initialization script files for each possible Window Manager that gdm offers as sessions. To add a session to gdm, simply create a script file in this directory. Adding KDE and KDE2 to gdm is as simple as copying (symbolic links don't work) our startup scripts into this directory. It's important to use good filenames though, since the filename is the entry in the session list.

[root@gwydion Sessions]# cp /usr/X11R6/bin/kde2 KDE2

[root@gwydion Sessions]# cp /etc/X11/xinit/kdeinitrc KDE

With those steps accomplished, close all running applications and restart X by pressing Ctrl + Alt + Backspace. When the Gnome desktop login screen comes up, there are the two new entries in the Session menu, as shown in Figure 14-5.

The Gnome desktop login dialog box, with KDE2 and KDE sessions added.

Figure 14-5
The Gnome desktop login dialog box, with KDE2 and KDE sessions added.

Although Caldera doesn't officially support other window managers at this time, the contrib directory on the FTP site contains some contenders. (The full address we explored is ftp://ftp.caldera.com/pub/contrib/RPMS/libc6/.) These include Afterstep, Enlightenment, last year's version of Gnome, and the xfce Window Manager. A visit to http://freshmeat.net/appindex/x11/window%20managers.html lists 37 entries. While it's cool that there is such an extensive buffet, this evades the real question: Why are there so many window managers?

As we discussed previously, Gnome was started as a response to KDE being based on (what was then) a non-free underlying GUI library. Both projects are large in scope, code, and memory footprint. They are designed (in our opinion) to address the perceived needs of a user making a rapid transition from a Windows environment.

If you're trying to run Linux on a 16 or 32MB computer that's only powered by a 486 or a Pentium I, you might want to have a gander at one of the lightweight window managers. KDE, KDE2, and Gnome, running without applications, use about 30MB of RAM. When you add Netscape into the picture, suddenly your memory footprint goes up to between 45 and 50MB. On a 32MB system, performance goes out the window as major chunks of code are swapped off and on the disk. A small, efficient window manager like IceWM, Blackbox, or AfterStep (each of which we've used - no slight to any of the others intended) can really improve the graphical performance of Linux while being as easy to use as the big boys. For example, AfterStep with an editor running only uses 23MB. A sample AfterStep screen is shown in Figure 14-6.

The AfterStep window manager running in eDesktop.

Figure 14-6
The AfterStep window manager running in eDesktop.

AfterStep features a Docking Bar (at the lower right) that behaves much like a collapsible taskbar. In the upper right of the screenshot is the Pager. In a default configuration, there are four named desktops with four workspaces on each. That's a lot of real estate in which to work. The open application in this case is Nedit, an elegant text editor packaged with eDesktop.

Each window manager has a distinct style. Even on memory-rich systems, the smaller, lightweight models have a great advantage in that they are blindingly fast. Of course, they all come with fairly good documentation, which is a boon, since the configuration is different in each case.

When we began working with Linux, we experimented with a lot of the window managers. For the workstation setting, eventually we both settled on the Gnome environment, with Sawfish as the window manager. On more limited platforms (like older laptops or systems), IceWM really shines.

Accessing Windows and Windows Apps

That's the plaintive cry of many a user. Of course, what most people mean is that they miss their favorite application or two. Financial software and games are two of the most mentioned culprits in this sort of complaint.

In Chapter 3, we discussed the most common method of using both Windows applications and running Linux: Dual booting. This involves sharing the system between the two operating systems and seems invariably to end in finding that the application you want is on the "other" OS; the one that isn't running at the specific moment. The good news is that there are a variety of alternatives for retaining access to your Windows tools while migrating to Linux on a more or less full time basis.

Warning
No Microsoft programs were hurt during the production of this chapter. But seriously, a number of the solutions presented in the following pages require having a copy of Microsoft Windows. Windows is commercial, proprietary software, and you must own a legitimate copy of the programs in order to use them without legal repercussions. If you don't want to pay for software, then don't use programs that require payment. Software piracy is not OK!

We can hear the voices now: "Why are we talking about Windows? This is a Linux book, isn't it? What's wrong with you guys???" The answer is simple. We like Linux a lot, and we think that OpenLinux is one of the best distributions around for introducing new people to Linux.

At the same time, we're pragmatic - don't use a hammer when the job calls for a screwdriver. If the tool we need to do our job is a Windows application, then until that publisher sees the light and produces a version that runs in Linux, we need to have access to Windows. The following tools provide a number of different solutions - proprietary and Open Source - for accessing Windows and Windows applications from within OpenLinux.

VMware

VMware (http://www.vmware.com/) is a commercial product, with some patented technology that provides a virtual machine environment for a guest OS, such as Windows running inside Linux (or Linux running inside Windows NT or 2000). The VMware utility abstracts all system hardware, and presents a consistent internal interface to operating systems ranging from the entire Microsoft line, to Linux, FreeBSD, and (unspecified) others.

VMware by itself is not and does not contain Windows or any other OS, though versions with preloaded software are available - you must install legal copies of the guest OS and all the applications that you are going to use. Also, VMware isn't an emulation environment; it mediates access to the CPU with excellent efficiency. IO operations are a bit of a performance drain, so system installation and working with large files can be significantly slower than running on native hardware. Figure 14-7 shows VMware running on eDesktop with KDE 2.0. The gguest OS is Windows 2000 running Internet Explorer 5.

VMware 2.03 running Windows 2000 Professional in OpenLinux eDesktop.

Figure 14-7
VMware 2.03 running Windows 2000 Professional in OpenLinux eDesktop.

We've had our best results running VMware on systems with 256MB or more of RAM. Additionally, VMware as a process will put the second CPU in a dual processor system to good use. VMware is installable either as gzipped tar files or RPMS, and recognizes Caldera 2.4 as a pre-configured host OS. It works fine out of the box, and costs about $100 US for educational purposes and $300 US for commercial use.

Note
VMware was integral in the production and testing of this book and we'd like to thank the good folks at VMware, Inc. for their support.

Wine

The following excerpt is from the About page at Wine Headquarters (http://www.winehq.com/). The developers of Wine have done some absolutely amazing work in the last couple of years, building an equivalent to the Windows API from scratch.


"Wine is an implementation of the Windows 3.x and Win32 APIs on top of X and Unix. Think of Wine as a Windows compatibility layer. Wine provides both a development toolkit (Winelib) for porting Windows sources to Unix and a program loader, allowing unmodified Windows 3.1/95/NT binaries to run under Intel Unixes. Wine works on most popular Intel Unixes, including Linux, FreeBSD, and Solaris. Wine does not require Microsoft Windows, as it is a completely alternative implementation consisting of 100% Microsoft-free code, but it can optionally use native system DLLs if they are available. Wine comes with complete sources, documentation and examples and is freely redistributable. (The licensing terms are similar to X11.)"

Thus, if you already have Windows loaded on the hard drive, perhaps in a dual boot configuration, you can set up Wine to use the real, legally owned, Windows Dynamic Link Libraries to run Windows applications. The built in API emulation works fine for simple programs. Figure 14-8 demonstrates Notepad and Solitaire running in Wine on eDesktop.

Wine running a pair of familiar applications in OpenLinux eDesktop.

Figure 14-8
Wine running a pair of familiar applications in OpenLinux eDesktop.

In recent months, the developers have progressed to running Excel and Word 2000. These are complex programs with lots of hooks down into the underlying OS; getting them working on Wine is a tribute to their coding skills. While much of the functionality of Windows API libraries is also built in to the program, Wine can optionally make use of native Windows DLL files to present a more accurate interface for running programs.

Downloads of source code and precompiled binaries for many different distributions, including OpenLinux eDesktop 2.4, are available from the Wine Web site.

Win4Lin

Win4Lin plays in the same area as VMware, although the solutions are different. Netraverse (http://www.netraverse.com/) is the recently merged and re-branded publisher of this capable tool. Win4Lin is commercial software; the single user license is $49 US for the CD version, only $39 US for a downloaded version. Additionally, there is an evaluation program for the shipping version.

Although the Win4Lin setup isn't quite as slick as VMware, we were able to get the Win4Lin 2.0 Beta 5 installed in just a few minutes. Like Gnome and several recent Windows applications, you download an installer that goes out to the Internet, gets the scripts and binary files that are appropriate for the specific installation, and then runs the setup process.

The only disconcerting moment came as we realized that Win4Lin meant to replace our running kernel. After a bit of spelunking around their Web site, we find that the kernel can be patched manually to create the hooks necessary to load the requisite proprietary modules. Patching isn't necessary if you're using a stock kernel, as we currently are. However, if you've upgraded to a kernel like 2.2.17 (issued since eDesktop was published) then you're in for some manual configuration steps.

Furthermore, it turns out that Win4Lin installs a second, compatible kernel in our current system and modifies /etc/grub/menu.lst to make the new kernel the default. The original kernel remains, easily selected at boot-up. Following the directions, we continued with the installation and installed Windows 95B in Win4Lin. You can see the result of our labors in Figure 14-9 which shows an upgraded Internet Explorer running in Windows 95 inside eDesktop, courtesy of Win4Lin.

In OpenLinux 2.4, Win4Lin 2.0 Beta 5 running Windows 95 and IE 5.

Figure 14-9
In OpenLinux 2.4, Win4Lin 2.0 Beta 5 running Windows 95 and IE 5.

Virtual Network Computing (VNC)

Do you have some spare hardware, a small network, but no budget or space for an extra monitor, keyboard and so on? How about headless Windows NT servers? We know how easy it is to remotely monitor Linux machines, but Windows? There are a number of solutions, most of them rather expensive because they're specialty applications. The answer is VNC (Virtual Network Computing), a free application from the research laboratories of AT&T in the United Kingdom (http://www.uk.research.att.com/vnc/).

VNC is a cross platform, networked remote display utility. You can view Unix desktops on Windows, Windows desktops on Linux, ad infinitum. Sources and pre-compiled binaries are available from the Web site. In an unusual move, we simply got the binaries, installed them in the path, and typed vncviewer at the command line. Of course, we also had to run a VNC server someplace else.

In this case, someplace else is the instance of Windows 2000 that contains the VMware program that is running our reference installation of eDesktop. So when we used vncviewer to display the Windows screen in OpenLinux, that screen also contains OpenLinux. It's one of those point-the-camera-at-the-TV tricks, shown in Figure 14-10. It was a rather pleasant surprise to have that one work, actually. The mouse didn't quite know which environment it was supposed to be addressing any more - don't try this at home, kids

.

VNC in a tricky spot, viewing Windows 2000 Pro, eDesktop, and itself, recursively.

Figure 14-10
VNC in a tricky spot, viewing Windows 2000 Pro, eDesktop, and itself, recursively.

We use VNC in production environments for remote monitoring. While the server connection is challenge-response encrypted, the data stream itself is in the clear. However, VNC can be tunneled via a secured (and optionally compressed) SSH connection; details are available at http://www.uk.research.att.com/vnc/sshvnc.html.

Sharing Some GUI Philosophy

There are as many opinions about GUI interfaces, window managers, and desktop environments as there are computer users. Bear in mind that in the larger scheme of things, many people neither understand nor care about such things. As the Helix Code (now, Ximian) Web site (http://www.ximian.com/) says (or said, at one point):


"We believe that software should be humanizing. We believe that using a computer should be about what you want, not what your computer needs. Only four percent of the global population has chosen a desktop environment. That leaves a lot of room for GNOME."

And actually, that's true for just as many of computing's various side roads. One way to get a few belly laughs (unless you accidentally start a flame war) is to ask this question on a Linux-oriented mailing list: "Which window manager is best?" For whatever reason, many people have strong feelings on the topic.

Throughout this book, you've seen us install every piece of software imaginable, and some unimaginable. The kitchen sink was the least of the things that we're worried about. This harks back to one of the phrases often used by Dr. Jerry Pournelle, "We do all these silly things so you don't have to." Even so, we mostly agree on the basics - install the software you need and use, but little else.

Both KDE and Gnome are strong contenders for the impending major push that Linux is going to make onto the corporate desktop. However, some users in the Linux camp deride these as bloated, over-complex packages, far too much like the Windows environment with which Linux competes.

Well, in a sense, this is true. More complex software is harder to code, harder to maintain, more prone to vulnerabilities. On the other hand, without a clear, simple transition path for current Windows users, most will never switch. People hear talk about how stellar Linux is on old, outdated hardware that can't run Windows 98 properly, much less Windows 2000 and Office. Then they try to install OpenLinux with KDE and face immediate disappointment.

The fact is that fancy things like document embedding, multi-application cut and paste capabilities, and all the other "features" that we have come to love and expect all require horsepower. Run OpenLinux with AfterStep, using the command line and simple X applications, and you'll be happy on a 486 or Pentium I in 32MB of RAM. It won't be lightning fast, but it'll be better and more functional than Windows 9x on the same hardware.

Better, stronger, faster systems will provide equivalent performance for the more complex Linux desktop environments that are available today. But if you stick with the simple, lightweight tools, then the computer is going to be blazingly fast. It's all about trade-offs. Experiment to find where your requirements for usability and speed meet on the actual machine - you'll be much happier down the road for having taken the time.

Summary

Over the course of the last eight months, the Linux landscape has changed. The authors take advantage of two ill-defined chapters to spend a bit of time kicking the tires on a few interesting bits of software, and recently released desktop environments.

Go to the Table Of Contents



Licenced under the Open Content License ver. 1

All Content Copyright © 2001 - Brian P. Bilbrey & Tom Syroid All Rights Reserved.