1150 lines
45 KiB
HTML
1150 lines
45 KiB
HTML
<!--startcut ==========================================================-->
|
|
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
|
<html>
|
|
<head>
|
|
<title>More 2 Cent Tips & Tricks LG #36</title>
|
|
</head>
|
|
|
|
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#A000A0"
|
|
ALINK="#FF0000">
|
|
<!--endcut ============================================================-->
|
|
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
|
</H4>
|
|
<P> <hr> <P>
|
|
|
|
<!-- QUICK TIPS SECTION ================================================== -->
|
|
<center>
|
|
<H1><A NAME="tips"><IMG ALIGN=MIDDLE ALT="" SRC="../gx/twocent.gif">
|
|
More 2¢ Tips!</A></H1> <BR>
|
|
Send Linux Tips and Tricks to <A HREF="mailto:gazette@ssc.com">
|
|
gazette@ssc.com
|
|
</A></center>
|
|
|
|
<p><hr><p>
|
|
<H3>Contents:</H3>
|
|
<ul>
|
|
<li><a HREF="./lg_tips36.html#dahlgren">
|
|
Forcing fsck on Red Hat 5.1
|
|
</a>
|
|
<li><a HREF="./lg_tips36.html#peters">
|
|
Personal Listserver
|
|
</a>
|
|
<li><a HREF="./lg_tips36.html#buchanan">
|
|
Re: Back Ups
|
|
</a>
|
|
<li><a HREF="./lg_tips36.html#brower">
|
|
ANSWER: Your Supra Internal Modem Problems
|
|
</a>
|
|
<li><a HREF="./lg_tips36.html#leyba">
|
|
ANSWER: Single Floppy Linux
|
|
</a>
|
|
<li><a HREF="./lg_tips36.html#hughes">
|
|
ANSWER: Re: scsi + ide; boot ide
|
|
</a>
|
|
<li><a HREF="./lg_tips36.html#stevenson">
|
|
ANSWER: Numlock at startup
|
|
</a>
|
|
<li><a HREF="./lg_tips36.html#enrique">
|
|
ANSWER: Re: graphics for disabled
|
|
</a>
|
|
<li><a HREF="./lg_tips36.html#milgram">
|
|
ANSWER: BTS: GNU wget for updating web site
|
|
</a>
|
|
<li><a HREF="./lg_tips36.html#carr">
|
|
ANSWER: Linux Boot-Root
|
|
</a>
|
|
<li><a HREF="./lg_tips36.html#sergio">
|
|
Replies to My Questions in Nov. 98 <I>Linux Gazette</I>
|
|
</a>
|
|
</ul>
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="dahlgren"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
<font color="navy">Forcing fsck on Red Hat 5.1</font>
|
|
</H3>
|
|
Date: Tue, 08 Dec 1998 18:20:28 -0500<BR>
|
|
From: James Dahlgren, <A HREF="mailto:jdahlgren@netreach.net">
|
|
jdahlgren@netreach.net</A>
|
|
<P>
|
|
I don't know if this is a 2 cent tip or what, and since it's
|
|
distribution specific, it's applicability is limited, but I still
|
|
thought it was worth sharing.
|
|
<P>
|
|
The shutdown command accepts a -F switch to force a fsck when the system
|
|
is rebooted. This switch just writes a flag file /forcefsck, it is up to
|
|
the initialization scripts do do something about it. In Red Hat 5.1 ( I
|
|
don't know about 5.2 ) the rc.sysinit script uses a different method to
|
|
force a fsck.
|
|
<P>
|
|
It checks for the existence of /fsckoptions and if it exists uses it's
|
|
contents as a switch when calling fsck. The command "echo -n '-f' >
|
|
/fsckoptions" will create a file, /fsckoptions, with "-f" in it and will
|
|
force a fsck the next time the system is booted. The rc.sysinit script
|
|
removes the /fsckoptions file after remounting the drive read-write, so
|
|
that the fsck won't be forced every time the system is booted.
|
|
<P>
|
|
If you want the -F switch from the shutdown command to work, a little
|
|
editing of the /etc/rc.d/rc.sysinit file will do it.
|
|
<P>
|
|
near the beginning of the rc.sysinit file is the following:
|
|
<PRE>
|
|
if [ -f /fsckoptions ]; then
|
|
fsckoptions=`cat /fsckoptions`
|
|
else
|
|
fsckoptions=''
|
|
fi
|
|
</PRE>
|
|
This is where it checks for the /fsckoptions file and reads its contents
|
|
into a variable for later use. We add an elif to check for the
|
|
/forcefsck file and set the variable accordingly:
|
|
<PRE>
|
|
if [ -f /fsckoptions ]; then
|
|
fsckoptions=`cat /fsckoptions`
|
|
elif [ -f /forcefsck ]; then
|
|
fsckoptions='-f'
|
|
else
|
|
fsckoptions=''
|
|
fi
|
|
</PRE>
|
|
Now the /forcefsck flag file created by using the -F switch with
|
|
shutdown will force a fsck on reboot. Now we need to get rid of the
|
|
/forcefsck file, or it will force the check every time the system is
|
|
started. Further down in the rc.sysinit file, after the disk is
|
|
remounted read-write, is the following line which removes any existing
|
|
/fsckoptions file:
|
|
<PRE>
|
|
rm -f /etc/mtab~ /fastboot /fsckoptions
|
|
</PRE>
|
|
We just add /forcefsck to the list of files to delete:
|
|
<PRE>
|
|
rm -f /etc/mtab~ /fastboot /fsckoptions /forcefsck
|
|
</PRE>
|
|
Now we have two ways to force the fsck, we can use the -F switch when
|
|
running shutdown, or we can put specific flags in a /fsckoptions file.
|
|
<P>
|
|
CAUTION!<BR>
|
|
The rc.sysinit file is critical to system startup. A silly typo in it
|
|
can make the system hang when it boots. ( I've been there! ) Make a
|
|
backup before you edit it. Edit it carefully. If you do blotch it, you
|
|
can recover by rebooting and using the -b switch after the image name on
|
|
the lilo command line. This brings you up in maintenance mode without
|
|
running the rc.sysininit script. The disk is in read-only mode.
|
|
<PRE>
|
|
mount -n -o remount,rw /
|
|
</PRE>
|
|
will get you to read-write mode so you can fix the problem.
|
|
<PRE>
|
|
mount -n -o remount,ro /
|
|
</PRE>
|
|
after fixing the problem to prepare the system for continuing startup.
|
|
<P>
|
|
exit or ctl-d to exit the maintenance shell and continue on to the
|
|
default runlevel.
|
|
<P>
|
|
Hope this is of some use to someone.
|
|
<P>
|
|
--<BR>
|
|
Jim
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="peters"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
<font color="navy">Personal Listserver</font>
|
|
</H3>
|
|
Date: Mon, 07 Dec 1998 01:59:48 +0100<BR>
|
|
From: "Soenke J. Peters", <A HREF="mailto:peters@simprovement.com">
|
|
peters@simprovement.com</A>
|
|
<P>
|
|
An often unused feature of "sendmail" is it's "plussed user feature"
|
|
which makes mails to "user+testlist@localhost" match "user@localhost".
|
|
I will show you how to use this to implement personal mailing lists.
|
|
<P>
|
|
First, you have to set up "procmail" to act as a filter on your incoming
|
|
mails. This could be done inside sendmail by setting it up as your local
|
|
mailer, or simply via your "~/.forward" file.
|
|
<P>
|
|
Now, you should get a mailing list program. I prefer BeroList, because
|
|
it's easy to configure. Compile it (don't forget to adjust the paths!)
|
|
and install it somewhere in your home directory.
|
|
<P>
|
|
Done that, you have to tell procmail what mails are to be passed to the
|
|
mailing list program. This is done inside "~/.procmailrc" and should
|
|
contain something like the following for every list (in this example,
|
|
the list is called "testlist", the mailname of the user is "username"):
|
|
<PRE>
|
|
:0
|
|
* ^To:.*username\+testlist
|
|
| path/to/the/listprogram testlist
|
|
</PRE>
|
|
The last step is to prepare the configuration files for the mailing
|
|
list. As this is specific to the program you use, I can't tell you here.
|
|
<P>
|
|
For a german description see:<BR>
|
|
http://www.simprovement.com/linux/listserver.html
|
|
<P>
|
|
--<BR>
|
|
Soenke Jan Peters
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="buchanan"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
<font color="navy">Re: Back Ups</font>
|
|
</H3>
|
|
Date: Tue, 1 Dec 1998 10:07:46 -0500 (EST)<BR>
|
|
From: Jim Buchanan, <A HREF="mailto:c22jrb@koptsv01.delcoelect.com">
|
|
c22jrb@koptsv01.delcoelect.com</A>
|
|
<blockquote> <font color="navy">
|
|
From: Anthony Baldwin:<BR>
|
|
Disk space is relatively cheap, so why not buy a small drive say
|
|
500Meg which is used for holding just the root /lib /bin /sbin
|
|
directories. Then setup a job to automatically back this up to another
|
|
drive using "cp -ax" (and possibly pipe it through gzip and tar). This
|
|
way when the unthinkable happens and you loose something vital, all
|
|
you have to do is boot from floppy mount the 2 drives and do a
|
|
copy. This has just saved my bacon while installing gnu-libc2
|
|
</font></blockquote>
|
|
A good idea as far as it goes, but there is one gotcha. If lightning
|
|
or some other power surge takes out one drive, it might take out the
|
|
on-line backup as well.
|
|
<P>
|
|
I use a very similar method where each night, on each machine, I have
|
|
a cron job back up vital information to another HD in another machine
|
|
on my home network.
|
|
<P>
|
|
In addition to the nightly back-ups, I do a weekly backup to removable
|
|
media, which I keep in a separate building (my workshop at the back of
|
|
my lot). That way if lightning takes out everything on the network, I
|
|
have lost a weeks or less work. The separate building part might be
|
|
paranoia, but I really recommend at least weekly off-line back ups.
|
|
<P>
|
|
-- <BR>
|
|
Jim Buchanan
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
<H4><font color="maroon">
|
|
Tips in the following section are answers to questions printed in the Mail
|
|
Bag column of previous issues.
|
|
</font></H4>
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="brower"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
ANSWER: <font color="navy">Your Supra Internal Modem Problems</font>
|
|
</H3>
|
|
Date: Tue, 1 Dec 1998 09:48:10 -0500
|
|
From: "Brower, William" wbrower@indiana.edu
|
|
<P>
|
|
<blockquote> <font color="navy">
|
|
Richard wrote:<BR>
|
|
I have a PII (350MHz) running with an AGP ATI 3DRage graphics
|
|
card (which works fine) and a Sound Blaster 16 PnP (which also works fine).
|
|
But, I can't get my internal SupraExpress 56k modem to
|
|
work.
|
|
</font></blockquote>
|
|
Your modem sounded familiar from a past search I had done, so I went to
|
|
Red Hat's www site (http://www.redhat.com/) and followed the support |
|
|
hardware link. You will find this reference in the modem category:
|
|
<P>
|
|
Modems that require software drivers for compression, error correction,
|
|
high-speed operation, etc. <BR>
|
|
PCI Memory Mapped Modems (these do not act like serial ports) <BR>
|
|
Internal SupraExpress 56k & also the Internal SupraSonic 56k
|
|
<P>
|
|
It appears that your modem is inherently not compatible with Linux.
|
|
I use an inexpensive clone modem called the E-Tech Bullet, pc336rvp model -
|
|
paid $28 for it and it operates with no problems at all.
|
|
Good luck in finding a compatible modem!
|
|
<P>
|
|
--<BR>
|
|
Bill
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="leyba"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
ANSWER: <font color="navy">Single Floppy Linux</font>
|
|
</H3>
|
|
Date: Tue, 01 Dec 1998 22:05:59 -0800<BR>
|
|
From: Ken Leyba, <A HREF="mailto:kleyba@pacbell.net">
|
|
kleyba@pacbell.net</A> <BR>
|
|
<P>
|
|
To: roberto.urban@uk.symbol.com<BR>
|
|
There are a few choices for a single floppy Linux (O.K. some are more
|
|
than one floppy). I haven't tried them, but I will be doing a Unix
|
|
presentation next month and plan to demo and handout a single or double
|
|
floppy sets for hands-on.
|
|
<P>
|
|
muLinux (micro linux):<BR>
|
|
http://www4.pisoft.it/~andreoli/mulinux.html
|
|
<P>
|
|
tomsrtbt:<BR>
|
|
http://www.toms.net/rb/
|
|
<P>
|
|
Linux Router Project:<BR>
|
|
http://www.linuxrouter.org/
|
|
<P>
|
|
Trinux:<BR>
|
|
http://www.trinux.org/
|
|
<P>
|
|
Good Luck,<BR>
|
|
--<BR>
|
|
Ken
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="hughes"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
ANSWER: <font color="navy">Re: scsi + ide; boot ide</font>
|
|
</H3>
|
|
Date: Sun, 29 Nov 1998 07:42:29 -0800 (PST)<BR>
|
|
From: Phil Hughes, <A HREF="mailto:fyl@ssc.com">fyl@ssc.com</A>
|
|
<blockquote> <font color="navy">
|
|
The amazing Al Goldstein wrote:<BR>
|
|
I have only linux on a scsi disk. I want to add an ide disk and want to
|
|
continue to boot from the scsi which has scsi id=0. Redhat installation
|
|
says this is possible. Is that true? If so how is it done?
|
|
</font></blockquote>
|
|
First, you should be able to tell your BIOS where to boot from. Just set
|
|
it to SCSI first and all should be ok.
|
|
<P>
|
|
If that isn't an option, just configure LILO (/etc/lilo.conf) so that it
|
|
resides on the MBR of the IDE disk (probably /dev/hda) but boots Linux
|
|
from where it lives on the SCSI disk.
|
|
<P>
|
|
-- <BR>
|
|
Phil
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="stevenson"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
ANSWER: <font color="navy">Numlock at startup</font>
|
|
</H3>
|
|
Date: Thu, 03 Dec 1998 21:51:08 -0800<BR>
|
|
From: "D. Cooper Stevenson", <A HREF="mailto:coopers@proaxis.com">
|
|
coopers@proaxis.com</A>
|
|
<blockquote> <font color="navy">
|
|
To: bmtrapp@acsu.buffalo.edu
|
|
</font></blockquote>
|
|
Here's a bit of code I found while searching the documentation for
|
|
"numlock" It turns numlock on for all terminals at startup! The bolded
|
|
code is the added code in the /etc/rc.d/rc file of my Redhat 5.1 Linux:
|
|
<PRE>
|
|
Is there an rc directory for this new runlevel?
|
|
if [ -d /etc/rc.d/rc$runlevel.d ]; then
|
|
# First, run the KILL scripts.
|
|
for i in /etc/rc.d/rc$runlevel.d/K*; do
|
|
# Check if the script is there.
|
|
[ ! -f $i ] && continue
|
|
|
|
# Check if the subsystem is already up.
|
|
subsys=${i#/etc/rc.d/rc$runlevel.d/K??}
|
|
[ ! -f /var/lock/subsys/$subsys ] && \
|
|
[ ! -f /var/lock/subsys/${subsys}.init ] && continue
|
|
|
|
# Bring the subsystem down.
|
|
$i stop
|
|
done
|
|
|
|
# Now run the START scripts.
|
|
for i in /etc/rc.d/rc$runlevel.d/S*; do
|
|
# Check if the script is there.
|
|
[ ! -f $i ] && continue
|
|
|
|
# Check if the subsystem is already up.
|
|
subsys=${i#/etc/rc.d/rc$runlevel.d/S??}
|
|
[ -f /var/lock/subsys/$subsys ] || \
|
|
[ -f /var/lock/subsys/${subsys}.init ] && continue
|
|
|
|
# Bring the subsystem up.
|
|
$i start
|
|
done
|
|
|
|
# Turn the NumLock key on at startup
|
|
INITTY=/dev/tty[1-8]
|
|
for tty in $INITTY; do
|
|
setleds -D +num < $tty
|
|
done
|
|
fi
|
|
</PRE>
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="enrique"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
ANSWER: <font color="navy">Re: graphics for disabled</font>
|
|
</H3>
|
|
Date: Wed, 16 Dec 1998 00:13:19 GMT<BR>
|
|
From: Enrique I.R., <A HREF="mailto:esoft@arrakis.es">
|
|
esoft@arrakis.es</A>
|
|
|
|
<blockquote> <font color="navy">
|
|
In a previous message, Pierre LAURIER says:
|
|
- control of the pointer device with the keyboard
|
|
</font></blockquote>
|
|
You can do it with any windowmanager. It's a XFree86 feature (v3.2, don't know
|
|
of older versions). You only have to use the XKB extension. You enable it hiting
|
|
the Control+Shift+NumLock. You should hear a beep here. Now you use the
|
|
numerical keypad to:
|
|
<PRE>
|
|
Numbers (cursors) -> Move pointer.
|
|
/,*,- -> l,r&m buttons.
|
|
5 -> Click selected button.
|
|
+ -> Doubleclick selected button.
|
|
0(ins) -> Click&Hold selected button.
|
|
.(del) -> Release holded button.
|
|
</PRE>
|
|
Read the XFree86 docs to get details.
|
|
<P>
|
|
--<BR>
|
|
Enrique I.R.
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="milgram"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
ANSWER: <font color="navy">BTS: GNU wget for updating web site</font>
|
|
</H3>
|
|
Date: Thu, 24 Dec 1998 03:15:16 -0500<BR>
|
|
From: "J. Milgram", <A HREF="mailto:milgram@cgpp.com">
|
|
milgram@cgpp.com</A>
|
|
|
|
<blockquote> <font color="navy">
|
|
Re. the question "Updating Web Site" in the Jan 1999 <I>Linux Journal</I>,
|
|
p. 61 ...
|
|
</font></blockquote>
|
|
Haven't tried the mirror package - might be good, but you can also use
|
|
GNU wget (prep.ai.mit.edu). Below is the script I use to keep the
|
|
University of Maryland LUG's Slackware mirror up-to-date. "Crude but
|
|
effective".
|
|
<PRE>
|
|
#!/bin/bash
|
|
#
|
|
# Update slackware
|
|
#
|
|
# JM 7/1998
|
|
|
|
# usage: slackware.wget [anything]
|
|
# any argument at all skips mirroring, moves right to cleanup.
|
|
|
|
site=ftp://sunsite.unc.edu
|
|
sitedir=pub/Linux/distributions/slackware-3.6; cutdirs=3
|
|
localdir=`basename $sitedir`
|
|
log=slackware.log
|
|
excludes=""
|
|
for exclude in bootdsks.12 source slaktest live kernels; do
|
|
[ "$excludes" ] && excludes="${excludes},"
|
|
excludes="${excludes}${sitedir}/${exclude}"
|
|
done
|
|
|
|
# Do the mirroring:
|
|
|
|
if [ ! "$*" ]; then
|
|
echo -n "Mirroring from $site (see $log) ... "
|
|
wget -w 5 --mirror $site/$sitedir -o $log -nH --cut-dirs=$cutdirs -X"$excludes"
|
|
echo "done."
|
|
fi
|
|
|
|
# Remove old stuff
|
|
# (important, but wipes out extra stuff you might have added)
|
|
|
|
echo "Removing old stuff ..."
|
|
for d in `find $localdir -depth -type d`; do
|
|
pushd $d > /dev/null
|
|
for f in *; do
|
|
grep -q "$f" .listing || { rm -rf "$f" && echo $d/$f; }
|
|
done
|
|
popd > /dev/null
|
|
done
|
|
echo "Done."
|
|
|
|
</PRE>
|
|
--<BR>
|
|
Judah
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="carr"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
ANSWER: <font color="navy">Linux Boot-Root</font>
|
|
</H3>
|
|
Date: Mon, 7 Dec 1998 12:57:34 +0100<BR>
|
|
From: Ian Carr-de Avelon, <A HREF="mailto:ian@emit.pl">
|
|
ian@emit.pl</A>
|
|
<P>
|
|
This is an answer to one of the letters in the December '98 issue.
|
|
<blockquote> <font color="navy">
|
|
Date: Wed, 04 Nov 1998 19:01:02 +0000
|
|
From: Roberto Urban, roberto.urban@uk.symbol.com
|
|
Subject: Help Wanted - Installation On Single Floppy
|
|
</font></blockquote>
|
|
<blockquote> <font color="navy">
|
|
My problem seems to be very simple yet I am struggling to solve it. I
|
|
am trying to have a very basic installation of Linux on a single
|
|
1.44MB floppy disk and I cannot find any documents on how to do that.
|
|
My goal is to have just one floppy with the kernel, TCP/IP, network
|
|
driver for 3COM PCMCIA card, Telnet daemon, so I could demonstrate our
|
|
RF products (which have a wireless Ethernet interface - 802.11 in case
|
|
you are interested) with just a laptop PC and this floppy. I have
|
|
found several suggestions on how to create a compressed image on a
|
|
diskette but the problem is how to create and install a _working_
|
|
system on the same diskette, either through a RAM disk or an unused
|
|
partition. The distribution I am currently using is Slackware 3.5.
|
|
</font></blockquote>
|
|
Making a "boot-root" disk is not too difficult and there is information
|
|
and and examples available:
|
|
http://metalab.unc.edu/LDP/HOWTO/Bootdisk-HOWTO.html
|
|
http://www.linuxrouter.org/
|
|
<P>
|
|
Maybe the new LDP site should have a link from every page of Linux Gazett:
|
|
http://metalab.unc.edu/LDP/
|
|
<P>
|
|
I build boot-root disks quite regularly and they have lots of uses Eg:
|
|
<ol>
|
|
<li>change an old PC into a dial on demand router for a net.
|
|
<li>Give clients and emergency disk which will ring in to us so we can
|
|
log in and fix things. (Even if the main OS on the machine is not
|
|
Linux)
|
|
<li>Turn any Windows PC on the net into a terminal, or testbed for
|
|
network hardware.
|
|
<li>Clients often bring laptops for installations with no easy way of
|
|
connecting them to the net. A bootroot disk and a PLIP cable gives
|
|
me a simple way to get the laptop to let me telnet to it and ftp files
|
|
across.
|
|
</ol>
|
|
Basicly it is just a matter of reducing what you are trying to something
|
|
which will fit on the floppy and following the HOWTO. If you are short of
|
|
space you can usually gain a little by using older versions.
|
|
<P>
|
|
Having said that you are putting yourself up against some additional
|
|
problems here. Laptops are notorious for being only PC compatable
|
|
with drivers which are only available for Windows. Even here there
|
|
is some support:
|
|
http://www.cs.utexas.edu/users/kharker/linux-laptop/
|
|
but you should realise that not all PCMCIA chip sets are supported
|
|
and that is before you get onto support for the card itself. Obvioulsy
|
|
if the card is your own product you have some advantages as far as getting
|
|
access to technical information :-) but in general if the laptop and
|
|
card manufacturers are unwilling to give information you can end up
|
|
wasting a lot of time on reverse engineering and sometimes still fail.
|
|
<P>
|
|
--<BR>
|
|
Ian
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
|
|
<a name="sergio"></a>
|
|
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
|
<font color="navy">Replies to My Questions in Nov. 98 <I>Linux
|
|
Gazette</I></font>
|
|
</H3>
|
|
Date: Tue, 15 Dec 1998 20:23:48 -0800<BR>
|
|
From: Sergio Martinez, <A HREF="mailto:sergiomart@csi.com">
|
|
sergiomart@csi.com</A>
|
|
<P>
|
|
Last month, Ms. Richardson published a short letter I wrote
|
|
that asked some questions about the differences among the
|
|
terminology of GUIs, window managers, desktops, interfaces,
|
|
and a bit about the differences among GNOME, KDE, and Windows.
|
|
These matters came to mind as I switched from Windows 95 to
|
|
Linux, with its multiple choices of window managers.
|
|
<P>
|
|
Several people were kind enough to send long replies. I'm
|
|
forwarding them to you in case you would like to consider using
|
|
one as an article, or editing them into one. I suppose the title
|
|
could be something like "A Vocabulary Primer to GUI's, Window
|
|
Managers, Desktops, Interfaces, and All That".
|
|
<P>
|
|
I'm leaving all this to your judgment. It would be an article
|
|
for newbies, but I found most of the replies very informative
|
|
for this migrant from Windows 95.
|
|
<P>
|
|
--<BR>
|
|
Sergio E. Martinez
|
|
<P> <center>--------------------------------------------------------------</center>
|
|
Date: Tue, 1 Dec 1998 13:44:20 -0500 <BR>
|
|
From: Moore, Tim, <A HREF="mailto:Tim.Moore@ThomsonConsulting.com">
|
|
Tim.Moore@ThomsonConsulting.com</A>
|
|
<P>
|
|
I don't have time to write a full article, but I can answer your questions.
|
|
Unfortunately, I'm using MS Outlook to do so (I'm at work and I have to )-:
|
|
) so sorry if this comes out formatted funny in your mailer.
|
|
<P>
|
|
<blockquote><font color="navy">
|
|
Terminology: The differences (if any) among a GUI, a window manager, a
|
|
desktop, and an interface. How do they differ from X windows?
|
|
</font></blockquote>
|
|
In the X world, things tend to be split up into multiple components, whereas
|
|
in other systems, everything is just part of the "OS". Here are some
|
|
definitions:
|
|
<P>
|
|
Interface is a general term which really just means a connection between two
|
|
somewhat independent components -- a bridge. It is often used to mean "user
|
|
interface" which is just the component of a computer system which interacts
|
|
with the user.
|
|
<P>
|
|
GUI is another general term, and stands for graphical user interface. It's
|
|
pretty much just what it sounds like; a user interface that is primarily
|
|
graphical in nature. Mac OS and Windows are both GUIs. In fact, pretty
|
|
much everything intended for desktop machines is these days.
|
|
<P>
|
|
On Mac OS and Windows, capabilities for building a graphical interface are
|
|
built into the OS, and you just use those. It's pretty simple that way, but
|
|
not very flexible. Unix and Unix-like OSes don't have these built in
|
|
capabilities -- to use a GUI, you have to have a "windowing system." X is
|
|
one of them -- the only one that sees much use these days.
|
|
<P>
|
|
All X provides is a way to make boxes on the screen (windows) and draw stuff
|
|
in them. It doesn't provide a) ways to move windows around, resize them, or
|
|
close them, b) standard controls like buttons and menus, c) standards or
|
|
guidelines for designing user interfaces for programs, or for interoperating
|
|
between programs (e.g., via drag and drop or a standard help system).
|
|
<P>
|
|
A window manager is a program which lets you move windows around and resize
|
|
them. It also usually provides a way to shrink a window into an icon or a
|
|
taskbar, and often has some kind of a program launcher. The user can use
|
|
any window manager that he or she wants -- any X application is supposed to
|
|
work with any window manager, but you can only run one at a time. That is,
|
|
you can switch between window managers as much as you want, but at most one
|
|
can be running at a time, and all programs on screen are managed by
|
|
whichever one is running (if any).
|
|
<P>
|
|
A widget set is a library of routines that programmers can use to make
|
|
standard controls like buttons and menus (which are called widgets by X
|
|
programmers). The widget set that an application uses is chosen by the
|
|
*programmer* (not the user). Most people have multiple widget sets
|
|
installed, and can run multiple programs using different widget sets at the
|
|
same time.
|
|
<P>
|
|
Finally, there's the desktop environment. This is the newest and most
|
|
nebulous X term. It basically means "the things that the Mac OS and Windows
|
|
GUIs have that X doesn't but should" which generally consists a set of
|
|
interacting applications with a common look and feel, and libraries and
|
|
guidelines for creating new applications that "fit in" with the rest of the
|
|
environment. For example, all KDE applications use the same widget set (Qt)
|
|
and help program, and you can drag and drop between them. You can have
|
|
multiple desktop environments installed at the same time, and you can run
|
|
programs written for a different environment than the one you're running
|
|
without having to switch, as long as you have it installed. That is, if you
|
|
use GNOME, but like the KDE word processor KLyX, you can run KLyX without
|
|
running any other KDE programs, but it won't necessarily interoperate well
|
|
with your GNOME programs. You can even run the GNOME core programs and the
|
|
KDE core programs at the same time, thought it doesn't really make much
|
|
sense to, as you would just end up with two file managers, two panels, etc.
|
|
|
|
<blockquote><font color="navy">
|
|
Do all window managers (like GNOME or KDE or FVWM95) run on top of X
|
|
windows?
|
|
</font></blockquote>
|
|
Yes, though GNOME and KDE aren't window managers (they're desktop
|
|
environments). KDE comes with a windowmanager (called KWM). GNOME doesn't
|
|
come with a window manager -- you can use whichever one you want, though
|
|
some have been specifically written to interoperate well with GNOME programs
|
|
(Enlightenment being the furthest along). But yes, they all require X to be
|
|
running.
|
|
|
|
<blockquote><font color="navy">
|
|
What exactly does it mean for an application to be GNOME or KDE aware? What
|
|
happens if it's not? Can you still run it?
|
|
</font></blockquote>
|
|
It just means that it was written using the GNOME or KDE libraries. This
|
|
means a few things: 1) programs will probably *not* be both GNOME *and* KDE
|
|
aware, 2) you have to have the GNOME libraries installed to run GNOME-aware
|
|
applications, 3) you can run GNOME applications and KDE applications
|
|
side-by-side, and to answer your question, 4) you can always run non-aware
|
|
applications if you use either environment.
|
|
|
|
<blockquote><font color="navy">
|
|
What exactly do the GTK+ (for GNOME) or Troll (for KDE) libraries do?
|
|
</font></blockquote>
|
|
GTK+ and Qt (which is the name of the product by Troll Tech that KDE uses)
|
|
are both widget sets. That is, they provide buttons, menus, scrollbars, and
|
|
that sort of thing to application developers. Note that applications can
|
|
use GTK+ or Qt without being GNOME or KDE aware, but *all* GNOME apps use
|
|
GTK+ and *all* KDE apps use Qt.
|
|
|
|
<blockquote><font color="navy">
|
|
How does the history of Linux (or UNIX) window managers compare to that of
|
|
say, the desktop given to Win98/95 users? How, specifically, does Microsoft
|
|
limit consumer's choices by giving them just one kind of desktop, supposedly
|
|
one designed for ease of use?
|
|
</font></blockquote>
|
|
This is a much more complicated question. In essence, Windows provides a
|
|
built in windowing system, window manager, widget set, and desktop
|
|
environment, so everybody uses those instead of being able to chose the one
|
|
they like.
|
|
|
|
<blockquote><font color="navy">
|
|
What's happening with Common Desktop Environment? Is it correct that it's
|
|
not widely adopted among Linux users because it's a resource hog, or not
|
|
open source?
|
|
</font></blockquote>
|
|
Yes. Also, it costs a lot of money. You can get it from Red Hat, though.
|
|
<P>
|
|
--<BR>
|
|
Tim
|
|
<P> <center>--------------------------------------------------------------</center>
|
|
Date: Wed, 2 Dec 1998 00:34:46 +0100 (AMT)<BR>
|
|
From: Hans Nieuwenhuis, <A HREF="mailto:niha@ing.hj.se">
|
|
niha@ing.hj.se</A>
|
|
<P>
|
|
I read your mail today in the Linux Gazette and decided to answer (or try
|
|
to) your questions.
|
|
<P>
|
|
Here it goes:
|
|
<P>
|
|
X-Windows is designed as a client-server system. Advantage is that you can
|
|
run the server on another machine then the machine your monitor is
|
|
connected to. Then you need a client. This can be a program or a window
|
|
manager. A window manager communicates with the server by asking it to
|
|
create a window. When the server fullfilled the requests the windowmanager
|
|
ads a nice titlebar to it and lets the application create its interface.
|
|
Basicly the window manager stand between the server and the application,
|
|
but that is not necessary. It is possible to run an application on a X
|
|
server without a window manager but the only thing you are able to do is
|
|
run that specific application, close it and kill the X server.
|
|
<P>
|
|
A GUI is a Graphical User Interface, which means all of the information
|
|
presented on the screen is done by windows, menus, buttons etc... Just
|
|
like Windows. Also all the interaction, the interface is based upon those
|
|
windows and buttons. The main goal of a GUI is to provide a uniform system
|
|
of presenting windows and gathering information. A good example in MS
|
|
Windows is the Alt+F4 keystroke, with this keystroke you can close any
|
|
window on your screen.
|
|
A window manager can be part of this system. This is what happens with
|
|
KDE and CDE. They both feature their own window manager and then you are
|
|
able to bring this same uniformity to your desktop. Basicly what I see as
|
|
a desktop is the set of applications which are availeble on a certain
|
|
system. A uniform GUI can bring also features like drag and drop and
|
|
"point and shoot", associate applications to a certain filetype.
|
|
One question you ask about the awareness for GNOME or KDE, this means,
|
|
that a program that is designed for those environment is (or should be)
|
|
able to communicate with other programs that are designed for those
|
|
environments. This brings you for example drag and drop. Some programs can
|
|
indeed not run without the desktop environment for which they are
|
|
designed, but some can. For example I use KDE programs, but I do not like
|
|
their window manager so I use Window Maker, which is not designed for use
|
|
in the KDE environment, therefore I have to lack some features.
|
|
<P>
|
|
The libraries: GTK+ and Qt (Troll, as you mentioned it) are toolkits. What
|
|
they basicly do is draw windows, buttons and menus. These are tour Legos
|
|
with which you build your interface. And yes, if you want to run
|
|
applications designed for a specif environment, say GNOME, you need
|
|
atleast the GNOME libaries, like GTK+ and a few others.
|
|
<P>
|
|
As I mentioned before, the client-server design of X-Windows gives the
|
|
user the flexibility to choose a window manager they like, but basicly
|
|
they do the same as the win95/98 system. Win95/98 limits you to one look
|
|
and feel (yeah you can change the color of your background, but that is
|
|
about it), but manages also windows. But it does not give the user the
|
|
freedom to experiment with other looks and feels. Most modern window
|
|
managers permits you to define other keybindings and such. And if you
|
|
don't like GNOME you can use KDE and vice versa (there are a few others
|
|
btw).
|
|
<P>
|
|
All I know about CDE is that it is based on the Motif toolkit (compare
|
|
GTK+ and Qt) and this toolkit is not free (better say GPLed software)
|
|
like GTK+. I think that is the main reason why it is not used very much on
|
|
Linux. But if it is a resource hog I do not know. Personally the main
|
|
reason why I will not use it is because it looks ugly :-)
|
|
<P>
|
|
Well that is about it, I hope this information is a bit usefull. If you
|
|
have questions, do not hesitate...
|
|
<P>
|
|
--<BR>
|
|
Hans Nieuwenhuis
|
|
|
|
<P> <center>--------------------------------------------------------------</center>
|
|
Date: Sat, 05 Dec 1998 00:29:34 -0500<BR>
|
|
From: sottek, <A HREF="mailto:sottek@quiknet.com">
|
|
sottek@quiknet.com</A>
|
|
<P>
|
|
I thought I would take the time to send you some
|
|
information about the questions you have posted
|
|
on Linux Gazette. From your question I can tell
|
|
that even though you are new to Linux you have seen
|
|
some of the fundamental differences in the interface
|
|
workings. I currently work for Intel where I
|
|
administrate Unix Cad tools, and am having to
|
|
explain these differences to management everyday...
|
|
I think you will understand far better than they
|
|
do :)
|
|
|
|
<blockquote><font color="navy">
|
|
1.Terminology: The differences (if any) among a GUI, a window manager, a
|
|
desktop, and an interface. How do they differ from X windows?
|
|
</font></blockquote>
|
|
X windows is a method by which things get drawn on
|
|
your screen. All x windows clients (the part drawing
|
|
in front of you) have to know how to respond to
|
|
certain commands, like 'draw a green box', 'Draw a
|
|
pixel' allocate memory for client images... This
|
|
in itself is NOT what you think of as "Windows". All
|
|
applications send these commands to your client.
|
|
This is done through tcp/ip, even if your
|
|
application and your client are both on the machine
|
|
in front of you. This is VERY VERY important. The
|
|
#1 design flaw in MS Windows is the lack of this
|
|
network layer in the windows system. Every X
|
|
application (any window... xterm netscape xclock)
|
|
looks at your "DISPLAY" environment variable to
|
|
find out who it should tell to draw itself. IF
|
|
your DISPLAY is set to computer1:0.0 and you are
|
|
on computer2 and you type 'xterm' it will pop up
|
|
on computer1's screen (Provided you have permission)
|
|
This is why on my computer at work I have windows
|
|
open from HP's RS6000's Sun's... Linux(when I'm
|
|
sneeky) and they all work just fine together.
|
|
<blockquote><font color="navy">
|
|
2.Do all window managers (like GNOME or KDE or FVWM95) run on top of X
|
|
windows?
|
|
</font></blockquote>
|
|
Well, yes. Given the above you should now know
|
|
that X is the thing that draws. Anything that needs
|
|
to draw has to run "on" X.
|
|
<P>
|
|
BUT, we need to get a better understanding of the
|
|
window manager because I didn't tel you about that
|
|
yet. In MS Windows when a program hangs it sits
|
|
on your screen until you can kill it. There is
|
|
usually no way to move it, or minimize it. This is
|
|
design flaw #2 in windows. Every MS Windows program
|
|
has to have some code for the title bar, close,
|
|
maximize, and minimize buttons. This code is in
|
|
shared libs so you don't have to write it yourself
|
|
but never the less it IS there. In X windows the
|
|
program knows nothing about its titlebar, or the
|
|
buttons on it. The program just keeps telling X
|
|
to draw whatever it needs. Another program, the
|
|
window manager does those things (It 'Manages
|
|
windows') The window manager draws the title bars
|
|
and the buttons. The window manager also 'hides'
|
|
a window from you when it is minimized and replaces
|
|
it with an icon. The program has NO say so in the
|
|
matter. This means that even is a program is totally
|
|
locked up it can be moved, minimized, and killed.
|
|
(Sometimes not killed unless you window manager
|
|
is set to send a kill -9)
|
|
<P>
|
|
That being said here is the bad news. KDE and
|
|
gnome and NOT window managers. They do not draw
|
|
title bars, allow you to resize windows and stuff
|
|
like that. They are just a program that does things
|
|
like provide a button bar (which some window
|
|
managers do too) and the stuff like telling programs
|
|
how they should look.
|
|
|
|
<blockquote><font color="navy">
|
|
3.What exactly does it mean for an application to be GNOME or KDE aware?
|
|
What happens if it's not? Can you still run it?
|
|
</font></blockquote>
|
|
gnome aware applications do what I was just about
|
|
to mention. They pay attention to gnome when it
|
|
tells them how to look and act. If gnome says 'you
|
|
should have a red background' they do it. Also
|
|
there will be some advanced things like an app can
|
|
ask gnome if it can have a spell checker and gnome
|
|
can supply it with one (See CORBA stuff) KDE is
|
|
the same way minus the CORBA (I think)
|
|
|
|
<blockquote><font color="navy">
|
|
4.What exactly do the GTK+ (for GNOME) or Troll (for KDE) libraries do?
|
|
</font></blockquote>
|
|
|
|
This is a hidden layer called widgets. It allows
|
|
you do say 'draw a button' rather than 'draw a box,
|
|
draw an edge on that box so it looks 3d, put some
|
|
text in that box, make sure this box looks for
|
|
mouse clicks, if a click happens remove that 3d
|
|
stuff and put it back pretty quick'. It would not
|
|
be a good idea to try to program complex things
|
|
without a widget set.
|
|
|
|
<blockquote><font color="navy">
|
|
5.How does the history of Linux (or UNIX) window managers compare to
|
|
that of say, the desktop given to Win98/95 users? How, specifically,
|
|
does Microsoft limit
|
|
consumer's choices by giving them just one kind of desktop,
|
|
supposedly one designed for ease of use?
|
|
</font></blockquote>
|
|
|
|
I think you can get this from the other answers.
|
|
really the limit are...
|
|
<ol>
|
|
<li>You have to run the program on the same machine
|
|
where you want to see it.
|
|
<li>You can't choose another window manager if you
|
|
don't like the way windows works.
|
|
<li>No matter how configurable windows is, if there
|
|
is just 1 thing you need that it doesn't have built
|
|
in , there is no way to get it. With X you just
|
|
use a different wm,desktop,widget set, whatever.
|
|
</ol>
|
|
<blockquote><font color="navy">
|
|
6.What's happening with Common Desktop Environment? Is it correct that
|
|
it's not widely adopted among Linux users because it's a resource hog,
|
|
or not open
|
|
source?
|
|
</font></blockquote>
|
|
CDE what a thing driven by big Unix verdors for
|
|
their own needs. Things that start that way
|
|
get re-invented to suit everyones needs, hence
|
|
Gnome and KDE.
|
|
<P>
|
|
Well, when I get going I can sure waste some time.
|
|
I hope I haven't taken up too much of you time
|
|
with this. I'll leave you with just 1 thing.
|
|
<P>
|
|
I know hundreds of world class programmers, and
|
|
administrators who are gods on BOTH NT and Unix.
|
|
I know not a single one who prefers NT. Keep
|
|
learning until you agree, I know you will.
|
|
<P>
|
|
--<BR>
|
|
SOTTEK
|
|
|
|
<P> <center>--------------------------------------------------------------</center>
|
|
Date: Sat, 5 Dec 1998 09:48:43 -0600<BR>
|
|
From: Dustin Puryear, <A HREF="mailto:dpuryear@usa.net">
|
|
dpuryear@usa.net</A>
|
|
<blockquote><font color="navy">
|
|
desktop, and an interface. How do they differ from X windows?
|
|
</font></blockquote>
|
|
|
|
X windows is what sits behind it all. More or less, it controls the access to
|
|
your hardware and provides the basic functionality that is needed by the wm.
|
|
The wm controls windows, and how the user interacts with them. A desktop, such
|
|
as KDE or GNOME, provides more services than a wm. For instance, drag 'n drop
|
|
is a feature of a desktop, not a wm.
|
|
|
|
<blockquote><font color="navy">
|
|
Do all window managers (like GNOME or KDE or FVWM95) run on top of X
|
|
windows?
|
|
</font></blockquote>
|
|
|
|
Yes.
|
|
|
|
<blockquote><font color="navy">
|
|
What exactly does it mean for an application to be GNOME or KDE aware? What
|
|
happens if it's not? Can you still run it?
|
|
</font></blockquote>
|
|
|
|
They use the functions provided by GNOME or KDE, not just X.
|
|
|
|
<blockquote><font color="navy">
|
|
What exactly do the GTK+ (for GNOME) or Troll (for KDE) libraries do?
|
|
</font></blockquote>
|
|
|
|
GTK+ and Qt (KDE) provide the basic foundation for the desktops. For instance,
|
|
Qt provides the code to actually create a ListBox (a list of items a user can
|
|
choose). KDE just uses this code to do it's thing. Note that Qt can be used for
|
|
console apps just as well as for X apps. I'm not familiar with GTK+, so I can't
|
|
comment.
|
|
|
|
<blockquote><font color="navy">
|
|
What's happening with Common Desktop Environment? Is it correct that it's not
|
|
widely adopted among Linux users because it's a resource hog, or not open
|
|
source?
|
|
</font></blockquote>
|
|
|
|
Well, Red Hat used CDE for a while (I think). However, they could not actually
|
|
fix anything with it since it's was closed source. They have since moved to
|
|
GNOME. However, there are some CDE clones out there.
|
|
<P>
|
|
--<BR>
|
|
Dustin
|
|
|
|
<P> <center>--------------------------------------------------------------</center>
|
|
Date: Sat, 05 Dec 1998 19:45:34 +0000<BR>
|
|
From: "Richard J. Moore", <A HREF="mailto:moorer@cs.man.ac.uk">
|
|
moorer@cs.man.ac.uk</A>
|
|
<P>
|
|
Hope this helps:
|
|
|
|
<blockquote><font color="navy">
|
|
1.Terminology: The differences (if any) among a GUI, a window manager, a desktop, and an interface. How do they differ from X windows?
|
|
</font></blockquote>
|
|
|
|
A GUI (Graphical User Interface) is a general term that refers to the
|
|
basic
|
|
idea of using a graphical representation to communicate with the user
|
|
(as
|
|
opposed to a text based interface such as the command line).
|
|
<P>
|
|
A window manager is an idea that is really specific to X windows. In X
|
|
windows the policy for how windows are arranged and controlled is
|
|
separated
|
|
from the core system, the window manager is a special program that does
|
|
this.
|
|
This allows people to choose a window manager that has a policy that is
|
|
good
|
|
for them, and allows new window managers to be created that have
|
|
different
|
|
policies. The window manager draws window borders, minimise/maximise
|
|
buttons etc.
|
|
You can mix and match window managers, but most GUI toolkits for UNIX
|
|
will
|
|
provide one as standard.
|
|
<P>
|
|
A desktop is a metaphor used by many GUIs it is basically an attempt to
|
|
make computers fit in with the way people would work in an office. The
|
|
hope
|
|
is that this will make it easy for people to operate the system. The
|
|
term is
|
|
also used more generally to refer to a combination of window manager,
|
|
toolkit
|
|
(the box of parts used by the programmers of the system), and other
|
|
'standard'
|
|
applications. If a set of tools is referred to as a desktop, it
|
|
generally means
|
|
that it will provide all of these things, and that they will be designed
|
|
to
|
|
work together in an integrated fashion. An example would be KDE
|
|
(http://www.kde.org/).
|
|
<P>
|
|
An 'interface' is just an abbreviation for a user interface. This is the
|
|
view that a program presents to the user, and (for a graphical user
|
|
interface)
|
|
is usually composed of widgets such as menus, checkboxes, push buttons
|
|
etc.
|
|
<P>
|
|
Finally X windows is a toolkit for actually getting all of the widgets
|
|
etc.
|
|
onto your screen. It provides routines for drawing lines, circles etc.
|
|
and
|
|
these are used to draw everything you see. X windows is a lot more
|
|
complicated
|
|
and powerful than this really, but it would take a book to explain why.
|
|
If you
|
|
want this level of detail then look at the O'Reilly X windows
|
|
programming series.
|
|
|
|
<blockquote><font color="navy">
|
|
2.Do all window managers (like GNOME or KDE or FVWM95) run on top of X windows?
|
|
</font></blockquote>
|
|
|
|
Yes, though neither Gnome nor KDE is a window manager. Both of these are
|
|
complete
|
|
desktops and though they provide window managers, there is much more to
|
|
them than
|
|
just that. The window manager in KDE is called kwm.
|
|
|
|
<blockquote><font color="navy">
|
|
3.What exactly does it mean for an application to be GNOME or KDE aware? What happens if it's not? Can you still run it?
|
|
</font></blockquote>
|
|
|
|
It means the app will talk to the window manager to get support for
|
|
special
|
|
features of that environment, and that it will use the standard look and
|
|
feel
|
|
of the desktop. If the app is not compliant then it should still work
|
|
fine,
|
|
but the special features will be unavailable. The other situation is
|
|
using
|
|
a compliant app with a nonstandard window manager, in this case too the
|
|
app
|
|
should work fine (but some feature may be unavailable). It is possible
|
|
for
|
|
window managers other than the standard ones to be compliant, for
|
|
example
|
|
there is now a KDE-Compliant version of the BlackBox WM.
|
|
|
|
<blockquote><font color="navy">
|
|
4.What exactly do the GTK+ (for GNOME) or Troll (for KDE) libraries do?
|
|
</font></blockquote>
|
|
|
|
They provide tools such as edit widgets, menus etc. in a form that makes
|
|
them
|
|
easy to reuse. The library used by KDE (called Qt, see
|
|
http://www.troll.no/qt)
|
|
is written in a language called C++ and also provides tools for
|
|
programmers such
|
|
as routines for platform independent access to files and directories
|
|
etc. GTK+
|
|
is similar though it has narrower scope and is written in C.
|
|
|
|
<blockquote><font color="navy">
|
|
5.How does the history of Linux (or UNIX) window managers compare to that of say, the desktop given to Win98/95 users?
|
|
</font></blockquote>
|
|
|
|
Badly :-(
|
|
|
|
<blockquote><font color="navy">
|
|
How, specifically, does Microsoft limit consumer's choices by giving them just one kind of desktop, supposedly one designed for ease of use?
|
|
</font></blockquote>
|
|
|
|
They restrict the system to a single view which may not be the best one
|
|
for the
|
|
job. Allowing people the choice means people can choose the best for
|
|
them, even
|
|
if it is nonstandard. The downside of this is that if everyone uses a
|
|
different
|
|
window manager then supporting and managing the system becomes
|
|
difficult. In
|
|
between these two options is the choice made by most UNIX toolkits -
|
|
have a
|
|
standard window window manager, but allow people to use another if they
|
|
want.
|
|
|
|
<blockquote><font color="navy">
|
|
6.What's happening with Common Desktop Environment? Is it correct that it's not widely adopted among Linux users because it's a resource hog, or not open
|
|
source?
|
|
</font></blockquote>
|
|
|
|
CDE is based on Motif which is an old C toolkit that is (IMHO) looking
|
|
rather
|
|
dated. Motif is very slow, and as you say is very resource hungry. In
|
|
the
|
|
past linux versions have often been buggy, though this situation may
|
|
have
|
|
improved. I found CDE itself to be quite poor, it works fine if you
|
|
spend
|
|
all your time in a single application (such as emacs), but using the
|
|
drag
|
|
and drop, and some of the built in tools was generally problematic. IMHO
|
|
It is unlikely to take off on linux because it it pricey and of lower
|
|
quality than the free alternatives.
|
|
<P>
|
|
--<BR>
|
|
Rich
|
|
|
|
|
|
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
<center>Published in <I>Linux Gazette</I> Issue 36, January 1999</center>
|
|
<P> <hr> <P>
|
|
<!--================================================================-->
|
|
<A HREF="./index.html"><IMG SRC="../gx/indexnew.gif" ALT="[ TABLE OF
|
|
CONTENTS ]"></A> <A HREF="../index.html"><IMG SRC="../gx/homenew.gif"
|
|
ALT="[ FRONT PAGE ]"></A> <A HREF="./lg_mail36.html"><IMG SRC="../gx/back2.gif" ALT=" Back "></A>
|
|
<A HREF="./lg_bytes36.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
|
|
|
<P> <hr> <P>
|
|
<h5>This page maintained by the Editor of <I>Linux Gazette</I>,
|
|
<A HREF="mailto: gazette@ssc.com">gazette@ssc.com</A><BR>
|
|
Copyright © 1999 Specialized Systems Consultants, Inc. </H5>
|
|
<P>
|
|
<!--startcut ==========================================================-->
|
|
</body>
|
|
</html>
|
|
<!--endcut ============================================================-->
|