8250 lines
358 KiB
HTML
8250 lines
358 KiB
HTML
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
|
||
<HTML>
|
||
<HEAD>
|
||
<TITLE> Linux Gazette Index Page </TITLE>
|
||
<META NAME="robots" CONTENT="noindex, nofollow">
|
||
</HEAD>
|
||
|
||
<BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#A000A0"
|
||
ALINK="#FF0000" >
|
||
<center><H2><IMG SRC="../gx/newlogo.jpg"
|
||
ALT="Linux Gazette... making Linux just a little more fun!">
|
||
</H2>
|
||
|
||
<H5>Copyright © 1996-98 Specialized Systems Consultants, Inc.</H5>
|
||
</center>
|
||
|
||
<P> <HR> <P>
|
||
<!--==================================================================-->
|
||
<center>
|
||
<H1>Welcome to Linux Gazette!<img src="../gx/tm.gif" alt="(tm)"></H1>
|
||
</center>
|
||
<P> <HR> <P>
|
||
<!--==================================================================-->
|
||
<H1>Published by:</H1>
|
||
<center>
|
||
<H1><A HREF="http://www.ssc.com/lj/">
|
||
<img src="../gx/ljlogo.gif" alt="Linux Journal" border=0></A></H1>
|
||
</center>
|
||
<P><HR> <P>
|
||
<H1>Sponsored by:</H1>
|
||
<table>
|
||
<tr>
|
||
<td><H1><A HREF="http://www.infomagic.com/"><img ALIGN="bottom" HSPACE="70"
|
||
src=../gx/infologo.gif alt="InfoMagic" border=0></A></H1></td>
|
||
<td>
|
||
<H1><A HREF="http://www.suse.com/"><img ALIGN="bottom" src=../gx/suse.gif alt="S.u.S.E." border=0></A></H1></td>
|
||
<td>
|
||
<H1><A HREF="http://www.redhat.com/"><img HSPACE="70" src=../gx/redhat.gif alt="Red Hat" border=0></A></H1></td>
|
||
</tr>
|
||
<tr>
|
||
<td><H1><A HREF="http://www.LinuxMall.com/"><img ALIGN="bottom" HSPACE="70"
|
||
src=../gx/linuxmall.gif alt="LinuxMall" border=0></A></H1></td>
|
||
<td><H1><A HREF="http://www.linuxresources.com/"><img ALIGN="bottom"
|
||
src=../gx/linux6.gif alt="Linux Resources" border=0></A></H1></td>
|
||
<td><H1><A HREF="/cgi-bin/redirect.pl"><img HSPACE="70"
|
||
src=../gx/mozilla.gif alt="Mozilla" border=0></A></H1></td>
|
||
</tr>
|
||
</table>
|
||
|
||
<P>
|
||
Our sponsors make financial contributions toward the costs of
|
||
publishing <I>Linux Gazette</I>. If you would like to become a sponsor
|
||
of <I>LG</I>, e-mail us at <A
|
||
HREF="mailto:sponsor@ssc.com">sponsor@ssc.com</A>.
|
||
|
||
<P>
|
||
<I>Linux Gazette</I> is a non-commercial, freely available publication and will
|
||
remain that way. Show your support by using the products of our sponsors
|
||
and publisher.
|
||
|
||
|
||
<P> <HR> <P>
|
||
<!--=================================================================-->
|
||
<H1 align="center">Table of Contents <BR>July 1998 Issue #30</H1>
|
||
|
||
<P> <HR> <P>
|
||
<table><tr>
|
||
<td rowspan=4>
|
||
<UL>
|
||
<LI><A HREF="../index.html">The Front Page</A>
|
||
<LI><A HREF="./lg_mail30.html">The MailBag</A>
|
||
<ul>
|
||
<li><a HREF="./lg_mail30.html#help">Help Wanted</a>
|
||
<li><a HREF="./lg_mail30.html#gen">General Mail</a>
|
||
</ul>
|
||
<LI><A HREF="./lg_tips30.html">More 2 Cent Tips</A>
|
||
<ul>
|
||
<li><a HREF="./lg_tips30.html#resume">Producing a Resume in PDF with LaTeX</a>
|
||
<li><a HREF="./lg_tips30.html#system">UNIX System man Pages</a>
|
||
<li><a HREF="./lg_tips30.html#ext2">ext2 Partitions</a>
|
||
<li><a HREF="./lg_tips30.html#bpp">Re: bpp 16 Question</a>
|
||
<li><a HREF="./lg_tips30.html#network">Network Cards</a>
|
||
<li><a HREF="./lg_tips30.html#kde">Tip for using Windows 95 buttons in
|
||
KDE</a>
|
||
<li><a HREF="./lg_tips30.html#ppp">PPP, SLIP and Other Remote Service
|
||
</ul>
|
||
<LI><A HREF="./lg_bytes30.html">News Bytes</A>
|
||
<ul>
|
||
<li><a HREF="./lg_bytes30.html#general">News in General</a>
|
||
<li><a HREF="./lg_bytes30.html#software">Software Announcements</a>
|
||
</ul>
|
||
<LI><A HREF="./lg_answer30.html">The Answer Guy</A>, by James T. Dennis
|
||
<LI><A HREF="./vrenios.html">CHAOS: CHeap Array of Obsolete Systems</a>, by Alex Vrenios
|
||
<LI><A HREF="./clue30.html">Clueless at the Prompt</a>, by Mike List
|
||
<LI><A HREF="./bennet.html">8 Reasons to Make the Switch</a>, by Bill
|
||
Bennet
|
||
<LI><A HREF="./mueller.html">Integrated Software Development with
|
||
<I>WipeOut</I></a>, by Gerd Mueller
|
||
<LI><A HREF="./nelson.html">Install New Icons in Caldera's Looking Glass
|
||
Desktop</a>, by David Nelson
|
||
<LI><A HREF="./pagey.html">Installing Microsoft & Linux </a>, by Manish P.
|
||
Pagey
|
||
<LI>Linux Expo
|
||
<ul>
|
||
<li><A HREF="./jacobowitz.html">Linux Expo a Smashing Success!</a>, by
|
||
Norman M. Jacobowitz
|
||
<li><A HREF="./raymond.html">Linux Expo Editor Wars!</a>, by Eric S. Raymond
|
||
<li><A HREF="./penland.html">The Fourth Annual Linux Expo</a>, by David
|
||
Penland
|
||
</ul>
|
||
<LI><A HREF="./wuest.html">LinuxCAD Impressions</a>, by Robert Wuest
|
||
<li><A HREF="./rooijackers.html">Book Review: A Methodology for Developing
|
||
and Deploying Internet & Intranet Solutions</a>, by Jan Rooijackers
|
||
<LI>New Release Reviews, by Larry Ayers
|
||
<ul>
|
||
<li><A HREF="./ayers1.html">The Blackbox Window-Manager</a>
|
||
<li><A HREF="./ayers2.html">Lesstif: One User's Impressions</a>
|
||
<li><A HREF="./ayers3.html">Sabre: An Svgalib Flight Sim</a>
|
||
<li><A HREF="./ayers4.html">SFM: A New GTK-Based Application</a>
|
||
</ul>
|
||
<LI><A HREF="./starkey.html">Portable GUI C++ Libraries</a>, by Sean C.
|
||
Starkey
|
||
<LI><A HREF="./koscielny.html">Using Linux Instead of an X Emulator</a>, by
|
||
Al Koscielny
|
||
<LI><A HREF="./mauck.html">USENIX 1998</a>, by Aaron Mauck
|
||
<LI><A HREF="./lg_backpage30.html">The Back Page</A>
|
||
<ul>
|
||
<li><a HREF="./lg_backpage30.html#authors">About This Month's Authors</a>
|
||
<li><a HREF="./lg_backpage30.html#notlinux">Not Linux</a>
|
||
</UL>
|
||
</UL>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td align=center>
|
||
<A HREF="lg_answer30.html">
|
||
<img src="../gx/dennis/answerwiz-255.gif" border=0 alt="">
|
||
</a><P>
|
||
<A HREF="lg_answer30.html"><i>The Answer Guy</i></a>
|
||
</td>
|
||
</tr><tr>
|
||
<td align=center>
|
||
<!-- <A HREF="gm.html"> -->
|
||
<IMG SRC="../gx/hammel/banner-3.gif" border=0 alt="">
|
||
<P><font color="maroon"><I>The Graphics Muse Will Return</I></font>
|
||
<!-- </a> -->
|
||
</td>
|
||
</tr>
|
||
</table>
|
||
|
||
<P> <HR><P>
|
||
|
||
<!--=============================================================-->
|
||
<A HREF="./issue30.txt">TWDT 1 (text)</A><BR>
|
||
<A HREF="./issue30.html">TWDT 2 (HTML)</A><BR>
|
||
are files containing the entire issue: one in text format, one in HTML.
|
||
They are provided
|
||
strictly as a way to save the contents as one file for later printing in
|
||
the format of your choice;
|
||
there is no guarantee of working links in the HTML version.
|
||
|
||
<!--=============================================================-->
|
||
<P> <HR><P>
|
||
Got any <I>great</I> ideas for improvements? Send your
|
||
<A HREF="mailto:gazette@ssc.com">comments, criticisms, suggestions
|
||
and ideas.</A>
|
||
|
||
<P><hr><p>
|
||
This page written and maintained by the Editor of <I>Linux Gazette</I>,
|
||
<A HREF="mailto: gazette@ssc.com">gazette@ssc.com</A>
|
||
|
||
|
||
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"</H4>
|
||
<HR>
|
||
<center>
|
||
<table width="100%" cellpadding=7><tr><td>
|
||
<H2><a NAME="mail"><IMG SRC="../gx/mailbox.gif" ALIGN=MIDDLE ALT=" ">
|
||
The Mailbag!</a> </H2>
|
||
Write the Gazette at <A HREF="mailto:gazette@ssc.com"> gazette@ssc.com</A>
|
||
</td><td>
|
||
<H3>Contents:</H3>
|
||
<ul>
|
||
<li><a HREF="./lg_mail30.html#help">Help Wanted -- Article Ideas</a>
|
||
<li><a HREF="./lg_mail30.html#gen">General Mail</a>
|
||
</ul>
|
||
</td></tr></table>
|
||
</center>
|
||
|
||
<a name="help"></a>
|
||
<p><hr><p>
|
||
<!-- =================================================================== -->
|
||
<center><H3><font color="maroon">Help Wanted -- Article Ideas</font></H3></center>
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Wed, 03 Jun 1998 11:05:23 +0100<BR>
|
||
From: Maurizio Ferrari, <A HREF="mailto:Maurizio.Ferrari@tin.it">
|
||
Maurizio.Ferrari@tin.it</A> <BR>
|
||
Subject: <B>Photogrammetry tools for Linux? </B>
|
||
<P>
|
||
I am looking for a Linux program to do some close-range photogrammetry.
|
||
Close range photogrammetry is a technique that enables to reconstruct 3D
|
||
images from a series of 2D pictures.
|
||
There are a few powerful (and relatively inexpensive) tools for Windows
|
||
but none so far for Linux, that I know of. There was something once upon
|
||
a time called Photo4D. Despite my massive Internet search, any occurrence
|
||
of Photo4D seems to have been wipe erased from the face of earth. It
|
||
is listed in SAL but all the links fail.
|
||
<P>
|
||
I don't want to resort to buy and use Windows software for this. Help, anyone?
|
||
<P>
|
||
Maurizio
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Sun, 07 Jun 1998 11:36:33 -0500<BR>
|
||
From: Mike Godwin, <A HREF="mailto:mgodwin@socket.net">
|
||
mgodwin@socket.net</A> <BR>
|
||
Subject: <B>Searching (somewhat in vain) for sources on shell scripting</B>
|
||
<P>
|
||
I recently came across an excellent mini-howto on overcoming some of the
|
||
pitfalls of having a dynamic IP address
|
||
(ftp://sunsite.unc.edu/pub/Linux/docs/HOWTO/unmaintained/mini/Dynamic-IP-Hacks).
|
||
<P>
|
||
Reading this document has refueled my desire to learn shell scripting,
|
||
sed rules and the like. My search of the Internet for information on
|
||
these topics has, however, been fruitless.
|
||
<P>
|
||
I would be most grateful if someone could point me to a good shell
|
||
scripting tutorial or book.
|
||
<P>
|
||
Thanks in advance.
|
||
<P>
|
||
Mike
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Fri, 5 Jun 1998 22:58:11 +0200<BR>
|
||
From: "Himbeergarten Hummel", <A
|
||
HREF="mailto:himbeergarten.hummel@nanet.at">himbeergarten.hummel@nanet.at</A>
|
||
<BR>
|
||
Subject: <B>X Window System on a monochrome notebook</B>
|
||
<P>
|
||
I've a 486dx notebook with a monochrome display
|
||
what shall I do to make X windows run?
|
||
<P>
|
||
Himbeergarten Hummel
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Tue, 09 Jun 1998 13:06:28 PDT<BR>
|
||
From: "Dave Stevens", <A HREF="mailto:davestevens@hotmail.com">
|
||
davestevens@hotmail.com</A> <BR>
|
||
Subject: <B>kudos</B>
|
||
<P>
|
||
I think the Coldiron article on replacing NT with Linux is the best
|
||
thing I've seen in the gazette. Congratulations. More such
|
||
articles are needed. I am especially interested in an article explaining
|
||
why Linux doesn't come with a "system requirements" box
|
||
on the package (no package??). Seriously, though, I am a computer dealer
|
||
and have many times advised people to buy their
|
||
application software first then buy a computer that will run that
|
||
package. If I tell my customers to go out and buy a 386 with 16
|
||
MB of ram and a half MB video card and a 200 MB hard drive, they
|
||
will think I am [characterization deleted!] in the head.
|
||
And maybe they'll be right. How much difference does the underlying
|
||
hardware make to the user of an X application, and how
|
||
can I assess (for them) the varying cost effectiveness of a faster
|
||
processor versus more RAM versus a SCSI disk versus just a
|
||
bigger IDE disk. Maybe you can commission an article like this. (Don't
|
||
even THINK of asking me). Someone of your loyal
|
||
readers must have relevant experience to write up.
|
||
<P>
|
||
Great magazine, keep up the good work. If ever you find yourself in northern
|
||
BC I will happily buy you a beer.
|
||
<P>
|
||
Dave Stevens
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Fri, 12 Jun 1998 08:49:05 -0700 (PDT)<BR>
|
||
From: Renato Weiner, <A HREF="mailto:reweiner@yahoo.com">
|
||
reweiner@yahoo.com</A> <BR>
|
||
Subject: <B>Suggestion for Article</B>
|
||
<P>
|
||
Recently I was looking at the Gazette and I think I have a good
|
||
suggestion of an article that will be very useful for the Linux
|
||
community.
|
||
<P>
|
||
I have had some technical difficulties of having two simultaneous
|
||
versions of Kernels in my system. I mean a stable one and a developing
|
||
one. I searched the net looking for information of how to co-exist
|
||
both but it's completely fragmented.
|
||
<P>
|
||
If somebody more experienced could put all this information together,
|
||
it will certainly help a lot of people from kernels developers to
|
||
end-users.
|
||
<P>
|
||
Thanks a lot for your patience. <BR>
|
||
Renato.
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Tue, 16 Jun 1998 10:42:06 +0200<BR>
|
||
From: Carlo Vinante, <A HREF="mailto:vinante@igi.pd.cnr.it">
|
||
vinante@igi.pd.cnr.it</A> <BR>
|
||
Subject: <B>Printing Problems</B>
|
||
<P>
|
||
I've just updated to Red Hat 5.0, and I cannot print anymore documents
|
||
using Ghostview, or LyX or whatever. Tests are OK. Have somebody a
|
||
suggestion ?
|
||
<P>
|
||
Carlo Vinante
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Mon, 15 Jun 1998 15:46:35 +0200 (MET DST)<BR>
|
||
From: Sara Briganti mat.1510, <A HREF="mailto:briganti@CsR.UniBo.IT">
|
||
briganti@CsR.UniBo.IT</A> <BR>
|
||
Subject: <B>Information</B>
|
||
<P>
|
||
We are 4 Italian students and we're just have a look about ELM's sources.
|
||
We have a lot of problems about these...<BR>
|
||
Could you ELM us? Do you know any interesting site about how ELM
|
||
works? And about sendmail?
|
||
<P>
|
||
Thank you a lot. Bye.
|
||
<P>
|
||
Sara, Elsa, Michele, Livio
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Sat, 13 Jun 1998 22:24:47 +0200<BR>
|
||
From: Daniele Verzelloni, <A HREF="mailto:dverzel@tin.it">
|
||
dverzel@tin.it</A> <BR>
|
||
Subject: <B>Network configuring</B>
|
||
<P>
|
||
Help me in configuring Red Hat Linux about networking.
|
||
I've a ISDN Adapter by Asuscom that I use for Internet in Windows95 and
|
||
I can't configure it!
|
||
I've even got an Ethernet adapter to go to another computer and in the
|
||
same way I can't configure it!
|
||
Thank you and sorry for my bad English, I'm Italian.
|
||
<P>
|
||
Daniele
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Thu, 18 Jun 1998 23:12:30 +0200<BR>
|
||
From: Eric CANAL, <A HREF="mailto:Eric.Canal@supelec.fr">
|
||
Eric.Canal@supelec.fr</A> <BR>
|
||
Subject: <B>a question</B>
|
||
<P>
|
||
I've recently bought a CD-ROM recorder
|
||
I would like to know if it is legal to make a Red Hat CD distribution for my
|
||
own use. My idea is to copy the FTP distribution on a CD and to install it.
|
||
I've tried but it tells me that I don't have a Red Hat CD-ROM. Do I miss a
|
||
particular file?
|
||
<P>
|
||
thanks for your answer and BRAVO for your Gazette :)
|
||
<P>
|
||
a French reader, Eric Canal
|
||
<blockquote> <I>
|
||
(Better check with Red Hat about legalities. --Editor)
|
||
</I> </blockquote>
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Tue, 23 Jun 1998 23:54:20 -0700<BR>
|
||
From: Ruth Milne, <A HREF="mailto:rmilne@mail.bulkley.net">
|
||
rmilne@mail.bulkley.net</A> <BR>
|
||
Subject: <B>article idea</B>
|
||
<P>
|
||
I have been reading a lot of speculation about whether Linux can ever
|
||
displace Microsoft on the desktop. In the course of wading through a lot
|
||
of hype I haven't seen much actual experience reported about an ordinary
|
||
computer user installing Linux on their PC. I don't mean someone who is
|
||
already a Linux enthusiast and I don't mean someone with a computer
|
||
science degree either. Just an ordinary computer user with an IQ bigger
|
||
than a shoe size, sitting down with a brand new Intel box and a Red Hat
|
||
5.1 package, say, and going through the hoops up to the point where X
|
||
starts up okay and the modem is a working Internet device. This ought to
|
||
be compared to such a person doing the same operation with a new box and
|
||
a copy of W98. I think that would make a useful comparison.
|
||
<P>
|
||
Dave Stevens
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Thu, 25 Jun 1998 03:32:11 EDT<BR>
|
||
From: <A HREF="mailto:RangeScale@aol.com">RangeScale@aol.com</A><BR>
|
||
Subject: <B>Need older Linux</B>
|
||
<P>
|
||
Okay, I am pretty new to Linux and am trying to learn it. The main problem is,
|
||
is that I always have my desktop tied up doing more important things, and also
|
||
don't have the room on it to hold Linux. My solution is to pull out my old 286
|
||
laptop (old but very good) and use that to start learning Linux. My big
|
||
problem, though, is finding a version that will run on that. I have the Debian
|
||
1.3, but min reg. are 386+. Is there a ver. that will run on 286 - and where
|
||
can I get it?
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Sun, 28 Jun 1998 00:47:14 +0200<BR>
|
||
From: B.L.Michielsen, <A HREF="mailto:BMichielsen@csi.com">
|
||
BMichielsen@csi.com</A><BR>
|
||
Subject: <B>Communication Problem</B>
|
||
<P>
|
||
I have a problem communicating with Compuserve through Seyon
|
||
since I installed a 16650A serial card on my Dell 486DX2 66MHz
|
||
running RedHat 4.1 Kernel 2.0.17. and a USRobotics SportsterMessagePlus
|
||
<P>
|
||
modem. Before, I used a 14.4 Hayes compatible modem connected to
|
||
a serial port with a 16450 IC, in that configuration everything was slow
|
||
<P>
|
||
but OK.
|
||
I am connecting to a Compuserve server with baud rates to 28.800bps.
|
||
The characters in the Seyon terminal form unreadable garbage, and I
|
||
cannot find out how to parameterize the connection to get it right.
|
||
To complete the information, when I make a ppp connection to a
|
||
56kbps server of Compuserve and use Netscape communicator, everything
|
||
runs perfectly well, so I guess the Seyon problem is not related to
|
||
kernel parameters but rather to xterm?
|
||
<P>
|
||
Any help would be greatly appreciated.
|
||
<P>
|
||
Bas L. Michielsen
|
||
|
||
|
||
<a name="gen"></a>
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
<center><H3><font color="maroon">General Mail</font></H3></center>
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Tue, 02 Jun 98 12:19:28 -0500<BR>
|
||
From: <A HREF="mailto:cokeydepercin@pmsc.com">cokeydepercin@pmsc.com</A>
|
||
<BR>
|
||
Subject: <B>Article on home networking.</B>
|
||
<P>
|
||
I just read a reply to the home networking article by Mr. Gray and I
|
||
agree that home networking is cheap and easy. I disagree somewhat
|
||
about the 100baseT. I've just upgraded from 10baseT to 100baseT. The
|
||
hub was $100USD for an eight port hub with uplink and the cards were
|
||
$30USD (Dec Tulip chip set). I've heard there may be some cheaper NICs
|
||
now $20~25USD. My upgrade cost was $250 for 5 machines - 3 Win95,
|
||
Linux server, multi-boot Linux/win95/NT - the cable was CAT5 to begin
|
||
with. The additional cost of putting in 100 vs 10 is so slight, about
|
||
$115 in this case as the cable is the same, that it isn't worth
|
||
installing 10baseT. The advantage is that 100baseT and a reasonably
|
||
fast Linux machine allows a Win95 machine to access apps almost as
|
||
fast (in some cases faster) from the network than from its own drive.
|
||
Note that I too build from junk as much as possible and the children's
|
||
machines (the Win95 ones) are very low end Pentium and have old slow
|
||
small drives than contain only the OS and swap. Everything else is on
|
||
the server (install once use many!).
|
||
<P>
|
||
There is a caveat to this of course. 100baseT NICs for ISA machines
|
||
are VERY expensive so if you have ISA machines, your only realistic
|
||
choice is 10baseT. The one 100baseT ISA NCI I priced (3Com) cost more
|
||
than all the PCI NICs for my upgrade.
|
||
<P>
|
||
Just my $0.02 or so. Keep up the good work, I really enjoy the magazine.
|
||
<P>
|
||
Cokey
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Tue, 02 Jun 1998 15:48:27 +0100<BR>
|
||
From: Raphael Marvie, <A HREF="mailto:raphael.marvie@cs.man.ac.uk">
|
||
raphael.marvie@cs.man.ac.uk</A> <BR>
|
||
Subject: <B>Comment about LG last review</B>
|
||
<P>
|
||
It took me 3 tries to get the full article about "Replacing NT by
|
||
Linux" but I finally
|
||
did it. I am very pleased to see people from the "real-world" as they
|
||
call themselves
|
||
to admit that Linux can avoid lot of people using bad softwares. There is
|
||
only one thing
|
||
that make me sad, the only people who are going to read this article are Linux
|
||
users.
|
||
<P>
|
||
Is there any solution to make "real-world" people reading such article?
|
||
I not talking of a holy war against M$, but I think the worse thing
|
||
for Linux
|
||
and other brilliant systems or soft is that the end user never heard of
|
||
this solution.
|
||
<P>
|
||
The fact that Netscape has moved to Open Source Software was a big
|
||
advert
|
||
for the GNU/Linux solutions. I hope we will be able to take advantage of
|
||
it to say
|
||
to managers "Hey, we can do every thing you want, and in a better way
|
||
than it is done yet by Micro$oft and Co. You just have not to think in
|
||
buying a
|
||
solution 60,000$ each year for updates but paying someone 60,000$ a year
|
||
for
|
||
building you the exact solution you need using Open Source Software.
|
||
Which
|
||
means for you having a *personal* *reliable* *IT* solution."
|
||
<P>
|
||
That is the challenge: teach them that a man or a woman is more
|
||
important than
|
||
a soft, because this man or this woman can adapt (him|her)self to the
|
||
need of a
|
||
firm, and is more important for the end user as a spring of information
|
||
than a
|
||
bad-written manual.
|
||
<P>
|
||
Keep on LG, the job you are doing is brilliant.
|
||
<P>
|
||
Linuxly yours, Raphael
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Tue, 02 Jun 1998 13:36:06 +0000<BR>
|
||
From: Andrew Josey, <A HREF="mailto:a.josey@opengroup.org">
|
||
a.josey@opengroup.org</A> <BR>
|
||
Subject: <B>Web resource - UNIX 98 Spec online</B>
|
||
<P>
|
||
With the recent announcements concerning Linux and
|
||
conformance to the UNIX 98 specification, I thought it
|
||
would be useful to send you the URL where the online
|
||
specification can be browsed, searched and downloaded.
|
||
<P>
|
||
Its at http://www.UNIX-systems.org/go/unix/
|
||
<P>
|
||
Perhaps you could include this as a tip in the next Linux
|
||
gazette.
|
||
<P>
|
||
best regards, Andrew
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Tue, 2 Jun 1998 12:19:44 +1000 (EST)<BR>
|
||
From: Con Zymaris, <A HREF="mailto:conz@cyber.com.au">
|
||
conz@cyber.com.au</A> <BR>
|
||
Subject: <B>Article ideas...</B>
|
||
<P>
|
||
It would be of general interest, and help the linux/open source community,
|
||
if people out there were introduced to the concept of advocating that
|
||
their local University had its Computer Science students' major final year
|
||
projects written as open-source.
|
||
For reasons why the students would want to do this, check out:
|
||
http://www.cyber.com.au/misc/frsbiz/students.htm
|
||
<P>
|
||
Cheers, Con
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Mon, 1 Jun 1998 16:04:12 -0700<BR>
|
||
From: "Travis Clark", <A HREF="mailto:hilt@telepath.com">
|
||
hilt@telepath.com</A> <BR>
|
||
Subject: <B>Simple Suggestion</B>
|
||
<P>
|
||
To further Linux in this world of ours, I think it fitting that Linux
|
||
Programmers look at two different ways this can be accomplished:
|
||
<ol>
|
||
<li>Applications -
|
||
This does not end in Word Processors... Desktop Publishing systems,
|
||
a simple database system, Accounting Software, the whole nine yards. If
|
||
we focused on software that companies use at a lower price (or freeware)
|
||
than Windoze, and comparable or better performance, then Linux would be
|
||
more acceptable world wide.
|
||
<li>Games -
|
||
As much as I hate to admit it, Games are a must in this PC world.
|
||
There are versions of popular games for linux, but there are no MAJOR
|
||
companies designing games for Linux. If we can get a
|
||
Doom/Myst/DeerHunter type game specifically designed for Linux, then
|
||
Linux will definitely have more interest in the market.
|
||
</ol>
|
||
That's my two cents...
|
||
<P>
|
||
Travis Clark
|
||
|
||
<P> <HR> <P>
|
||
<!--====================================================================-->
|
||
<IMG ALT=" " SRC="../gx/envelope.gif">
|
||
Date: Mon, 22 Jun 1998 14:50:45 -0400<BR>
|
||
From: Brian Catlin, <A HREF="mailto:Brian_Catlin@BayNetworks.COM">
|
||
Brian_Catlin@BayNetworks.COM </A> <BR>
|
||
Subject: <B>Suggestions to improve readability</B>
|
||
<P>
|
||
First, I would like to express my appreciation to all the authors
|
||
for taking time to write excellent articles.
|
||
<P>
|
||
I do, however, have a suggestion or two that will make the
|
||
accessibility of the zine that much better.
|
||
<P>
|
||
As background, I am one of your readers that prints out the zine,
|
||
then reads it. It is much easier for my tired old eyes that way,
|
||
and I also get a nice resource to use when the screen is cluttered
|
||
with windows of different things for the project I am working on.
|
||
<P>
|
||
With that said, I have a couple problems that can be easily solved.
|
||
<ul>
|
||
<li>The first thing is links in the articles. The usual standard one
|
||
sees on the net is to put the URL in the body of the article and
|
||
then link it. This way us off-line readers can fire up a browser
|
||
later and go directly to the site mentioned without having to find
|
||
the link in the online version of the article.
|
||
|
||
<li>Secondly, and this came up in the latest issue BTW, when giving
|
||
source code, config or other text-based examples, please keep them
|
||
as text. Putting backgrounds behind the code makes them hard to
|
||
read, and if they are in fact graphics, one has to type in the code
|
||
by hand. A better way is to delineate it with some sort of
|
||
blocking character string and use the appropriate HTML tag to show
|
||
it is an example. I tend to use the following to start and stop
|
||
sections of code:
|
||
<P>
|
||
#-----------------------------
|
||
<P>
|
||
(Note: it is a pound sign with a bunch of dashes).
|
||
<P>
|
||
This will speed loading into browsers online, allow cut and paste
|
||
operations, and ensure readability for the off-line printout
|
||
readers. (I know that more people that just I do this!)
|
||
</ul>
|
||
Thanks again for a great zine!
|
||
<P>
|
||
Brian
|
||
<blockquote> <I>
|
||
(Okay, one, I'm guessing you are objecting to the practice of using word instead
|
||
of the address in the link so the text version only shows the word and
|
||
drops the address. I can make sure this happens in sections that I do
|
||
myself, but I really don't have time to do it for every article. I will
|
||
print your letter and maybe that will give authors a push in the right
|
||
direction.
|
||
Second, I use whatever the authors send as listings and most do keep them
|
||
between <pre></pre> tags without backgrounds. Mr. Coldiron article last
|
||
month did use backgrounds. His article has been quite popular.
|
||
Thanks for writing, --Editor)
|
||
</I> </blockquote>
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!--================================================================-->
|
||
<center>Published in <i>Linux Gazette</i> Issue 30, July 1998</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_tips30.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P>
|
||
<h5>This page written and maintained by the Editor of <I>Linux Gazette</I>,
|
||
<A HREF="mailto: gazette@ssc.com">gazette@ssc.com</A><BR>
|
||
Copyright © 1998 Specialized Systems Consultants, Inc. </H5>
|
||
<P>
|
||
<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_tips30.html#resume">Producing a Resume in PDF with LaTeX</a>
|
||
<li><a HREF="./lg_tips30.html#system">UNIX System man Pages</a>
|
||
<li><a HREF="./lg_tips30.html#ext2">ext2 Partitions</a>
|
||
<li><a HREF="./lg_tips30.html#bpp">Re: bpp 16 Question</a>
|
||
<li><a HREF="./lg_tips30.html#network">Network Cards</a>
|
||
<li><a HREF="./lg_tips30.html#kde">Tip for using Windows 95 buttons in
|
||
KDE</a>
|
||
<li><a HREF="./lg_tips30.html#ppp">PPP, SLIP and Other Remote Service
|
||
Support</a>
|
||
</ul>
|
||
|
||
<P> <hr> <P>
|
||
<!--================================================================-->
|
||
|
||
<a name="resume"></a>
|
||
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
||
Producing a resume in PDF with LaTeX
|
||
</H3>
|
||
<P>
|
||
From: David M. Cook <a
|
||
href="mailto:davecook@hotmail.com">davecook@hotmail.com</a><br>
|
||
Date: Mon, 01 Jun 1998 23:05:24 +0000
|
||
<p>
|
||
LaTeX and the resume.sty package are an easy way to produce a very
|
||
attractive resume under Linux. One just needs to fill in the
|
||
boilerplate provided. resume.sty is available from any CTAN
|
||
archive, such as cdrom.com:<br>
|
||
<a
|
||
href="ftp://ftp.cdrom.com/.1/tex/ctan/macros/latex209/contrib/resume">htp://ftp.cdrom.com/.1/tex/ctan/macros/latex209/contrib/resume</a>
|
||
<p>
|
||
However, I've found that windows users are often not familiar with the
|
||
usual Postscript output of the dvips program or how to view it.
|
||
Luckily, Ghostscript provides the ps2pdf program for converting
|
||
Postscript to Adobe's Portable Document Format, which is fairly familiar
|
||
to windows users.
|
||
<p>
|
||
However, converted ps documents that were produced from LaTeX source
|
||
using the default Computer Modern fonts look very poor when read with
|
||
the Adobe PDF reader. The trick is to use the times package, which
|
||
changes all the fonts produced by your LaTeX source to one the Adobe
|
||
reader can handle. Just include the package like this in your document:
|
||
<pre>
|
||
\documentclass[12pt]{article}
|
||
\usepackage{resume,times}
|
||
%other preamble commands
|
||
\begin{document}
|
||
%document body
|
||
\end{document}
|
||
</pre>
|
||
<p>
|
||
Some other things worth mentioning here: PStill, another PS->PDF
|
||
converter; pdfTeX, which produces PDF instead of DVI files from TeX
|
||
input; and finally the TeX User's Group page which has tons of great
|
||
links:<br>
|
||
ftp://ftp.cstug.cz/pub/tex/local/cstug/thanh/pdftex/<br>
|
||
http://www.this.net/~frank/pstill.html<br>
|
||
http://www.tug.org/interest.html<br>
|
||
<p>
|
||
--<br>
|
||
Dave Cook
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!--================================================================-->
|
||
|
||
<a name="system"></a>
|
||
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
||
UNIX system man pages</H3>
|
||
<P>
|
||
From: Andrew Josey <a
|
||
href="mailto:a.josey@opengroup.org">a.josey@opengroup.org</a><br>
|
||
Date: Wed, 03 Jun 1998 10:10:41 +0000
|
||
<p>
|
||
Hello, included is a possible tip for the Linux Gazette.
|
||
<p>
|
||
Ever needed to know what the official UNIX man page for
|
||
a particular command or function says? A new web resource
|
||
from The Open Group is the Common Access to the UNIX Man Pages,
|
||
a hypertext html set of browsable pages common to all UNIX 95
|
||
and UNIX 98 branded systems.
|
||
<p>
|
||
To try it out see <a
|
||
href="http://www.opengroup.org/common_access/">http://www.opengroup.org/common_access/</a>
|
||
<p>
|
||
--<br>
|
||
Andrew Josey
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!--================================================================-->
|
||
|
||
<a name="ext2"></a>
|
||
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
||
ext2 Partitions </H3>
|
||
<P>
|
||
From: Albert T. Croft <a
|
||
href="mailto:acroft@cyber-wizard.com">acroft@cyber-wizard</a><br>
|
||
Date: Mon, 08 Jun 1998 14:57:03 -0500
|
||
<p>
|
||
I recently ran into a small problem, and I think the results of
|
||
it might be helpful to others. I was recently helping out a
|
||
friend with a problem on his Linux machine, and we needed to find
|
||
a file-unfortunately, neither of us knew where it might've been
|
||
installed.
|
||
<p>
|
||
Having both ext2 and vfat partitions, we realized that doing a
|
||
find command might take a while, and would probably give some
|
||
false results. We knew there might be files with similar names
|
||
on his vfat partition-files we were sure were not the ones we
|
||
were looking for. We knew the files we were looking for would
|
||
only be on the ext2 partitions.
|
||
<p>
|
||
We started looking for an answer with the -mount option for the
|
||
find command; unfortunately for us, it only looked at files on
|
||
the same device as the path given to the find command. (A look
|
||
at the results of the mount command shows why that would be a
|
||
problem for us.)
|
||
<pre>
|
||
/dev/hda2 on / type ext2 (rw)
|
||
none on /proc type proc (rw)
|
||
/dev/hda6 on /home type ext2 (rw)
|
||
/dev/hda8 on /tmp type ext2 (rw)
|
||
/dev/hda7 on /usr type ext2 (rw)
|
||
/dev/hda1 on /win95 type vfat (rw,umask=0111)
|
||
</pre>
|
||
<p>
|
||
We tried writing a batch file, using grep and gawk to get the
|
||
mount points for the ext2 partitions and handing them to find.
|
||
This proved unworkable if we were looking for patterns, such
|
||
as h2*. We then tried to write just a find command, using gawk
|
||
and grep to get the mount points. This was somewhat better,
|
||
but using a print statement in gawk to get the names of the
|
||
mount points wouldn't work. Some help came with remembering that
|
||
gawk has a printf statement, allow.
|
||
<p>
|
||
Our final product, which we found quite useful and now have in
|
||
our .bashrc files as <B>linuxfind</B>, is the following:
|
||
<pre>
|
||
find `mount|grep ext2|gawk '{printf "%s ", $3}'` -name
|
||
</pre>
|
||
<p>
|
||
To use as an alias:
|
||
<pre>
|
||
alias linuxfind="find `mount|grep ext2|gawk '{printf "%s ", $3}'` -name "
|
||
</pre>
|
||
<p>
|
||
Written this way, other options to the find command can be
|
||
specified, such as <tt>-perm</tt>, <tt>-exec</tt> and <tt>-type</tt>. To use
|
||
it, we simply type something like:
|
||
<pre>
|
||
linuxfind less
|
||
linuxfind h2*
|
||
linuxfind x* -perm -2000
|
||
</pre>
|
||
<p>
|
||
The only problems we can see with this command so far are (1)
|
||
if there are drives mounted at login that are unmounted during
|
||
the session, the mount points are still searched, and (2) if a
|
||
drive is mounted after login, it is not included unless the
|
||
.bashrc files is sourced.
|
||
<p>
|
||
--<br>
|
||
Albert Croft
|
||
|
||
<P> <hr> <P>
|
||
<!--================================================================-->
|
||
|
||
<a name="bpp"></a>
|
||
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
||
Re: bpp 16 Question</H3>
|
||
<P>
|
||
|
||
From: Michael Huttinger <a
|
||
href="mailto:mhutt.removespam@netnitco.net">mhutt.removespam@netnitco.net</a><br>
|
||
Date: Sun, 14 Jun 1998 19:56:41 +0000
|
||
<p>
|
||
In regards to the question on starting X with 16 bitplanes instead of 8
|
||
(LG#28)...
|
||
<p>
|
||
I have done the following (assuming you are using XFree86)
|
||
<p>
|
||
Open up and edit your XF86Config file.
|
||
<p>
|
||
Look for the "Screen" section you are using.
|
||
Add an entry right after that specifying the default colors of the
|
||
format:
|
||
<pre>
|
||
DefaultColorDepth 16
|
||
</pre>
|
||
<p>
|
||
This will default your screen to 16 bit planes.
|
||
<p>
|
||
My example screen section follows:
|
||
<pre>
|
||
Section "Screen"
|
||
Driver "accel"
|
||
Device "STB Velocity 128"
|
||
Monitor "My Monitor"
|
||
DefaultColorDepth 16
|
||
Subsection "Display"
|
||
Depth 8
|
||
Modes "1024x768" "800x600" "640x480"
|
||
ViewPort 0 0
|
||
EndSubsection
|
||
Subsection "Display"
|
||
Depth 16
|
||
Modes "1024x768" "800x600" "640x480"
|
||
ViewPort 0 0
|
||
EndSubsection
|
||
Subsection "Display"
|
||
Depth 24
|
||
Modes "1024x768" "800x600" "640x480"
|
||
ViewPort 0 0
|
||
EndSubsection
|
||
Subsection "Display"
|
||
Depth 32
|
||
Modes "1024x768" "800x600" "640x480"
|
||
ViewPort 0 0
|
||
EndSubsection
|
||
EndSection
|
||
</pre>
|
||
<p>
|
||
--<br>
|
||
Mike Huttinger
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!--================================================================-->
|
||
|
||
<a name="network"></a>
|
||
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
||
Network Cards</H3>
|
||
<P>
|
||
From: Wari Wahab <a
|
||
href="mailto:wari@technologist.com">wari@tecnologist.com</a><br>
|
||
Date: Sat, 13 Jun 1998 21:36:27 +0800
|
||
<p>
|
||
Hi, there just like to give some tip or two regarding Network cards you
|
||
have in you Linux Box.
|
||
<p>
|
||
I have a 3Com 3c90x in my computer and it's not working up to speed, I
|
||
replaced it with anther one of the same kind and the most I get out of ftp
|
||
transfers from my machine is a measly 220 KB/s.. Samba acted weird.. I
|
||
thought that it's my network that caused the problem, indeed, it is the
|
||
problem..
|
||
<p>
|
||
Our network is all Cisco and there seems to be some disagreement between
|
||
the two brands, Changed my card to an Intel 'eepro100' and I can max out at
|
||
800 KB/s on a 10 Mbs network.. Cool.
|
||
<p>
|
||
So, if you find out that performance is not as cool (those Win NT guys may
|
||
be laughing at you as they did to me wondering why Linux is Super Slow) as
|
||
it should be, it could be the network card itself..
|
||
<p>
|
||
Regards,<br>
|
||
Wari Wahab
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!--================================================================-->
|
||
|
||
<a name="kde"></a>
|
||
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
||
Tip for using Windows 95 buttons in KDE</H3>
|
||
<P>
|
||
From: Jochen A. Stein <a
|
||
href="mailto:jst@writeme.com">jst@writeme.com</a><br>
|
||
Date: Fri, 19 Jun 1998 21:05:21 +0200
|
||
<p>
|
||
Following up to Andreas Ehliar's 2cent article
|
||
in the June Linux Gazette, I took the same approach and made a patch
|
||
for KDE to shift some functionality from ALT to the W95 key.
|
||
Full instructions and patch against Beta-4 can be found
|
||
on http://home.pages.de/~jst/kde-w95.html.
|
||
<p>
|
||
--<br>
|
||
Jochen Stein
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!--================================================================-->
|
||
|
||
<a name="ppp"></a>
|
||
<H3><IMG ALIGN=BOTTOM ALT="" SRC="../gx/lil2cent.gif">
|
||
PPP, SLIP and Other Remote Service Support</H3>
|
||
<P>
|
||
From: Daniel Blezek <a
|
||
href="mailto:blezek@worldnet.att.net">blezek@worldnet.att.net</a><br>
|
||
Date: Wed, 17 Jun 1998 22:40:48 -0500
|
||
<p>
|
||
Hi, here's a short tip:
|
||
<p>
|
||
Recently, I started working from home on a UNIX system. The system I was
|
||
working on did not support PPP, SLIP, or any other remote service except
|
||
shell sessions over a 9600 baud modem. So I decided to download SLIrP(a
|
||
program to emulate PPP/SLIP using only a shell session) to the remote
|
||
system to emulate PPP over a shell connection. Here is the snag, the
|
||
remote system did not support zmodem, ymodem, kermit or any of the other
|
||
file transfer protocols. Since I had no TCP/IP connection, I could not use
|
||
rsh, or ftp. Solution? I used uuencode to convert the SLIrP binary to
|
||
text, started vi on the remote system, and copied and pasted the entire
|
||
text(all 360K) into the remote shell session. After eating dinner, I
|
||
returned to write the uuencoded binary to the remote hard disk, uudecoded
|
||
it, uncompressed it, and started up SLIrP on the remote system. After pppd
|
||
came up on my LINUX system, I was fully connected.
|
||
<p>
|
||
Ain't LINUX fun?
|
||
<p>
|
||
--<br>
|
||
Dan
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!--================================================================-->
|
||
<center>Published in <I>Linux Gazette</I> Issue 30, July 1998</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_mail30.html"><IMG SRC="../gx/back2.gif" ALT=" Back "></A>
|
||
<A HREF="./lg_bytes30.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 © 1998 Specialized Systems Consultants, Inc. </H5>
|
||
<P>
|
||
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"</H4>
|
||
<HR>
|
||
<center>
|
||
<table cellpadding=7><tr><td>
|
||
<IMG SRC="../gx/bytes.gif" border=1 ALT="News Bytes">
|
||
</td><td>
|
||
<H3>Contents:</H3>
|
||
<ul>
|
||
<li><a HREF="./lg_bytes30.html#general">News in General</a>
|
||
<li><a HREF="./lg_bytes30.html#software">Software Announcements</a>
|
||
</ul>
|
||
</td></tr></table>
|
||
</center>
|
||
|
||
<a name="general"></a>
|
||
<p><hr><p>
|
||
<!-- =================================================================== -->
|
||
<center><H3><font color="green">News in General</font></H3></center>
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<center><IMG ALT=" " SRC="./gx/cover52.jpg"></center>
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
August <I>Linux Journal</I>
|
||
</H3>
|
||
<P>
|
||
The August issue of <A HREF="http://www.linuxjournal.com/"><I>Linux
|
||
Journal</I></A> will be hitting the newsstands July 10.
|
||
The focus of this issue is Navigating Linux and our feature article is an
|
||
interview with Marc Andressen and Tom Paqin of Netscape done by Doc Searls.
|
||
Check out the Table of Contents at
|
||
<A HREF="http://www.linuxjournal.com/issue52/index.html">
|
||
http://www.linuxjournal.com/issue52/index.html</A>.
|
||
To subscribe to <I>Linux Journal</I>, go to <A
|
||
HREF="http://www.linuxjournal.com/ljsubsorder.html">
|
||
http://www.linuxjournal.com/ljsubsorder.html</A>.
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
An Invitation: The Future of Linux with Linus Torvalds
|
||
</H3>
|
||
<P>
|
||
On July 14, 1998, at 6:00PM, Taos Mountain (<A HREF="http://www.taos.com/">
|
||
http://www.taos.com/ </A>)
|
||
in association with the Silicon Valley Linux User Group
|
||
(<A HREF="http://www.svlug.org/">http://www.svlug.org/</A>)
|
||
will present a panel discussion on THE FUTURE OF LINUX. Linux
|
||
is a freely available version of
|
||
the UNIX operating system.
|
||
<P>
|
||
Panelists will include Linus Torvalds, the creator of
|
||
Linux; Robert Hart from retail Linux distributor Red Hat
|
||
Software; Larry Augustin of the Silicon Valley Linux User
|
||
Group and director of Linux International, a non-profit
|
||
consortium of Linux users and vendors; and Jeremy Allison,
|
||
the developer of SAMBA. Phillip Hughes, publisher of Linux
|
||
Journal, will question the panelists.
|
||
<P>
|
||
<A HREF="./taos.pr">Complete Press Release</A>
|
||
<P>
|
||
For more information:<BR>
|
||
Michael Masterson, <A HREF="mailto:MMasterson@taos.com">
|
||
MMasterson@taos.com</A>
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
LINC: Linux conference in Silicon Valley, California
|
||
</H3>
|
||
<P>
|
||
Mon, 15 Jun 1998 23:56:32 +0000<BR>
|
||
LINC, the International Linux Conference and Exposition, will be held
|
||
in Silicon Valley, California next January.
|
||
<P>
|
||
We have just issued a Call for Papers, and we encourage Linux
|
||
developers to send abstracts for talks or tutorials.
|
||
<P>
|
||
More info at: <A HREF="http://lincexpo.org/">http://lincexpo.org/</A>
|
||
<P>
|
||
<A HREF="./linc.pr">Complete Press Release</A>
|
||
If you have any questions, please mail me.
|
||
<P>
|
||
For more information:<BR>
|
||
Don Marti, <A HREF="mailto:dmarti@electriclichen.com">
|
||
dmarti@electriclichen.com</A>
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
Position Available: network security - development/maintenance
|
||
</H3>
|
||
<p>
|
||
Tue, 23 Jun 1998 <BR>
|
||
SecurePipe Communications is currently accepting resumes for a
|
||
network security support and development position.
|
||
<P>
|
||
Responsibilities will include support of installed firewalls,
|
||
development and maintenance of open-source network security
|
||
solutions, and support of existing mail and web servers.
|
||
<P>
|
||
For more information:<BR>
|
||
<A HREF="http://www.securepipe.com/jobs.html">
|
||
http://www.securepipe.com/jobs.html</A>
|
||
<P>
|
||
Joshua Heling, <A HREF="mailto:jrh@securepipe.com">
|
||
jrh@securepipe.com</A> <BR>
|
||
SecurePipe Communications, Inc.
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
GNU Utilities Integrated Development Environment project
|
||
</H3>
|
||
<p>
|
||
Mon, 15 Jun 1998 08:47:02 GMT<BR>
|
||
GUIDE: GNU Utilities Integrated Development Environment
|
||
<P>
|
||
The purpose of this project is to merge existing GNU and GPL utilities
|
||
into a graphical GPL Integrated Development Environment,
|
||
which contain editor, class browser, debugger, profiler, man generator,
|
||
code checking, testing, animation, and management.
|
||
<P>
|
||
Go to <A
|
||
HREF="http://sunsite.auc.dk/GUIDE/">http://sunsite.auc.dk/GUIDE/</A> and join the mailing list.
|
||
<P>
|
||
For more information:<BR>
|
||
Knud Haugaard Sxrensen, <A HREF="mailto:khs@mi.aau.dk">khs@mi.aau.dk</A>
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
WWW: Linux search engine in beta
|
||
</H3>
|
||
<P>
|
||
Mon, 15 Jun 1998 08:50:18 GMT<BR>
|
||
Take a look at <A HREF="http://linux.ncg.net/search/">
|
||
http://linux.ncg.net/search/</A>
|
||
<P>
|
||
A search engine with a different twist.... We index <I>only</I> Linux
|
||
related web pages, and in addition to searching in the robot index,
|
||
we'll look up the keywords in our resource listings as well.
|
||
<P>
|
||
The engine uses heuristics to exclude most pages that aren't relevant to
|
||
Linux. Currently the engine is in early beta, with a small index of about
|
||
75.000 documents as of 11th June, and growing at a rate of a few thousand
|
||
documents pr. day. It might seem small, but the index contains most of the
|
||
important Linux sites already, and is getting quite useful.
|
||
<P>
|
||
Since we track what subjects that are most popular to search for, you also
|
||
help us improve the resource listing by testing the engine.
|
||
<P>
|
||
As soon as the indexer is well enough tested, we'll increase indexing
|
||
speed dramatically (from 10 documents at a time currently, to about 300).
|
||
<P>
|
||
For more information:<BR>
|
||
Vidar Hokstad, <A HREF="mailto:vidarh@ncg.net">vidarh@ncg.net</A>
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
The Freefire Project (IT security solutions)
|
||
</H3>
|
||
<P>
|
||
Wed, 17 Jun 1998 13:26:28 GMT<BR>
|
||
After some time in the dark I am happy to Announce the Freefire Project
|
||
<P>
|
||
The Freefire Project tries to support Developers and Integrators in building
|
||
IT Security Solutions (especially Firewalls) based on Free Tools (Open
|
||
Source). It is not Operating System dependent, but a lot of the Tools on the
|
||
Page can be used with Linux.
|
||
<P>
|
||
The Project features a web site where you can find a lot of useful links to
|
||
free Security Tools and Resources. There is a monthly Bulletin giving some
|
||
articles about recently discovered tools.
|
||
<P>
|
||
There is a Mailing list for Developers. You DO NOT need to subscribe if you
|
||
don't develop tools on your own. In this case it will be enough to enter you=
|
||
r E-Mail in
|
||
the Announce-Form on the Web Pages or monitor the Web-Pages.
|
||
<P>
|
||
<A HREF="http://www.inka.de/sites/lina/freefire-l/index.en.html">
|
||
http://www.inka.de/sites/lina/freefire-l/index.en.html</A>
|
||
<P>
|
||
The Start page is also available in German:
|
||
<P>
|
||
<A HREF="http://www.inka.de/sites/lina/freefire-l/index.de.html">
|
||
http://www.inka.de/sites/lina/freefire-l/index.de.html</A>
|
||
<P>
|
||
Also searching for contributors to the Bulletin and for Links to Tools
|
||
which are not yet on the Pages.
|
||
<P>
|
||
For more information:<BR>
|
||
Bernd Eckenfels.
|
||
<A HREF="mailto:ecki@lina.inka.de">ecki@lina.inka.de</A>
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
Linux Links
|
||
</H3>
|
||
The Trove Project Press Release:
|
||
<A HREF="./trove.txt">trove.txt</A>
|
||
<P>
|
||
Open Source Devloper Day Press Release:
|
||
<A HREF="./opensource.pr">opensource.pr</A>
|
||
<P>
|
||
The Open Source Index:
|
||
<A HREF="http://home.maine.rr.com/sickthing/osi">
|
||
http://home.maine.rr.com/sickthing/osi</A>
|
||
<P>
|
||
List of Linux Mailing Lists:
|
||
<A HREF="http://www.linuxrx.com/Lists/Lists.perl">www.linuxrx.com/Lists/Lists.perl</A>
|
||
<P>
|
||
Linux Buyers Guide:
|
||
<A
|
||
HREF="http://www.linuxbuyersguide.com/">http://www.linuxbuyersguide.com/</A>
|
||
<P>
|
||
Linux Applications:
|
||
<A HREF="http://www.cynetcity.com/cyberzone/497/">
|
||
http://www.cynetcity.com/cyberzone/497/</A>
|
||
|
||
Linux Book Guide:
|
||
<A HREF="http://members.bellatlantic.net/~ptgeiger/guidehome.htm">
|
||
http://members.bellatlantic.net/~ptgeiger/guidehome.htm</A>
|
||
<P>
|
||
Article about Linux in Computer Currents Magazine:
|
||
<A HREF="http://www.currents.net/magazine/national/1612/inet1612.html">
|
||
http://www.currents.net/magazine/national/1612/inet1612.html</A>
|
||
<P>
|
||
The Linux Console Tools:
|
||
<A HREF="http://www.mygale.org/~ydirson/en/lct/">
|
||
http://www.mygale.org/~ydirson/en/lct/</A>
|
||
<P>
|
||
Article "How Linux Could Kill Windows NT":
|
||
<A
|
||
HREF="http://www.zdnet.com/chkpt/adem2fpf/www.anchordesk.com/story/story_2241.html">
|
||
http://www.zdnet.com/chkpt/adem2fpf/www.anchordesk.com/story/story_2241.html</A>
|
||
<P>
|
||
Linux Rally: <A HREF="http://www.penguincomputing.com/svlug-rally.html">
|
||
http://www.penguincomputing.com/svlug-rally.html</A>
|
||
<P>
|
||
Time Magazine Article: <A
|
||
HREF="http://cgi.pathfinder.com/netly/article/0,2334,13820,00.html">
|
||
http://cgi.pathfinder.com/netly/article/0,2334,13820,00.html</A>
|
||
|
||
|
||
|
||
<a name="software"></a>
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
<center><H3><font color="green">Software Announcements</font></H3></center>
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
PC-Internet
|
||
</H3>
|
||
|
||
<P>
|
||
Check out the new PC-Internet at <a
|
||
href="http://www.pc-internet.com/">http://www.pc-internet.com/</a> (the
|
||
site is in Spanish only)
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
WrapBit 0.2.1 - virtual object storage and programming environment
|
||
</H3>
|
||
<p>
|
||
Thu Jun 25 12:47:56 1998<br>
|
||
The WrapBit version 0.2.1 is now available. Read more about it from the
|
||
active server at <a
|
||
href="http://public.compot.com/WrapBit/">http://public.comput.com/WrapBit/</a>
|
||
WrapBit is a virtual, persistant, write once object storage and
|
||
programing environment. A small kernel serves forge proofed data, meta
|
||
data and dynamic views (object invocation). XML is featured (but not imposed)
|
||
for object control messages.
|
||
|
||
|
||
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
w3mir 1.0.3 - HTTP copying and mirroring tool
|
||
</H3>
|
||
<p>
|
||
Thu Jun 25 12:56:55 1998<br>
|
||
w3mir 1.0.3 has been released and is available at
|
||
<a href="http://www.math.uio.no/~janl/w3mir/">http://www.math.uio.no/</a> now.
|
||
<p>
|
||
Fixes include
|
||
<ul>
|
||
<li>-R/remove option to remove files is no longer more destructive
|
||
than intended.
|
||
<li>Files with 'unsafe' characters in their filename is now saved as
|
||
"foo bar" instead of "foo%20bar"
|
||
<li>The -B switch works once again.
|
||
</ul>
|
||
<p>
|
||
w3mir is a all purpose HTTP copying and mirroring tool. The main focus
|
||
of w3mir is to create and maintain a browsable copy of one, or
|
||
several, remote WWW site(s). Used to the max w3mir can retrive the
|
||
contents of several related sites and leave the mirror browseable via
|
||
a local web server, or from a filesystem, such as directly from a
|
||
CDROM.
|
||
<p>
|
||
w3mir supports HTML4, and has partial support for CSS, Java, ActiveX
|
||
and Adobe Acrobat (PDF) files.
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
Alphanumeric Paging Software beta test</H3>
|
||
<p>
|
||
Mon, 15 Jun 1998 09:02:46 GMT<br>
|
||
EtherPage(TM) is now available on Linux
|
||
<p>
|
||
Calling beta testers for our EtherPage product
|
||
running under Linux. If interested, you can download
|
||
software and request an evaluation license code from
|
||
<a
|
||
href="http://www.ppt.com/eval/version30.html">http://www.ppt.com/eval/version30.html</a>
|
||
<p>
|
||
EtherPage is a client/server based product for
|
||
delivering messages from computers to wireless messaging
|
||
services such as alphanumeric and numeric pagers. The
|
||
product includes a web interface for interactive use
|
||
and administration, a command line interface and a
|
||
C API.
|
||
|
||
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
tomsrtbt-1.4.66</H3>
|
||
<p>
|
||
Mon, 15 Jun 1998 09:01:35 GMT<br>
|
||
tomsrtbt-1.4.66.tar.gz is available at Sunsite.unc.edu to be placed into
|
||
system/recovery and <a
|
||
href="http://www.toms.net/~toehser/rb/">http://www.toms.net/~toenser/rb/</a>.
|
||
<p>
|
||
It is a boot/root rescue/emergency floppy image with more stuff than fits.
|
||
Bzip2, 1722Mb formatting, and tighter compilation options helped jam it on.
|
||
tomsrtbt is useful for "learn unix on a floppy" as it runs from ramdisk,
|
||
includes the man-pages for everything, and behaves in a generally predictable
|
||
way.
|
||
<p>
|
||
The home page is: <a
|
||
href="http://www.clark.net/~toehser/rb">http://www.clark.net/~toehser/rb/</a>.
|
||
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
MpegTV Player 1.0 released for Linux/Alpha</H3>
|
||
<p>
|
||
Mon, 15 Jun 1998 10:30:37 GMT<br>
|
||
MpegT@ Player 1.0 has been released for Linux/Alpha. MpegTV Player 1.0 is a
|
||
realtime software MPEG Video player with audio/sync.
|
||
<p>
|
||
MpegTV Player is a Shareware (US$10) for personal and non-profit use.
|
||
Commercial licenses available.
|
||
<p>
|
||
Key features include support for 8 bit, 16 bit and 24 bit display, random
|
||
access, frame capture and a VCR-like graphic front-end.
|
||
<p>
|
||
Download MpegTV Player 1.0 (mtv) for linux-alpha from:
|
||
<a
|
||
href="ftp://ftp.mpegtv.com/pub/mpeg/mpegtv/player/alpha-unknown-linux/">ftp://ftp.mpegtv.com/pub/mpeg/mpegtv/player/alpha-unkown-linux/</a>
|
||
|
||
|
||
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
Motif Interface Builder VDX 1.2</H3>
|
||
<p>
|
||
Mon, 15 Jun 1998 11:16:16 GMT<br>
|
||
Release 1.2 of VDX, the Motif Interface Builder for Linux is ready
|
||
for download. The VDX provides the interactive design of user
|
||
interfaces based on OSF/Motif and generates portable C and C++
|
||
source code. Tools like Resource Editor, Browser and the
|
||
interactive WYSIWYG View make the design process very easy. Their
|
||
object oriented interface and the adaptable code generation are
|
||
cool features.
|
||
<p>
|
||
Interested? Visit the VDX Home Page at <a
|
||
href="http://www.bredex.de/EN/vdx/">http://www.bredex.de/EN/vdx/</a>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
R 0.62.1 released: statistical computation and graphics</H3>
|
||
<p>
|
||
Wed, 17 Jun 1998 13:20:17 GMT<br>
|
||
R version 0.62.1 has been released and will propagate through the CRAN
|
||
mirrors within the next few days. The have been lots of changes, any R
|
||
user should definetely upgrade to this version.
|
||
<p>
|
||
R is a system for statistical computation and graphics. It
|
||
consists of a language plus a run-time environment with graphics, a
|
||
debugger, access to certain system functions, and the ability to run
|
||
programs stored in script files.
|
||
<p>
|
||
CRAN is a network of ftp and web servers around the world that store
|
||
identical, up-to-date, versions of code and documentation for the R
|
||
statistical package. Please use the CRAN site nearest to you to
|
||
minimise network load.
|
||
<p>
|
||
The CRAN master site can be found at the URL <a
|
||
href="http://www.ci.tuwien.ac.at/">http://www.ci.tuwien.ac.at/</a>
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
Mobitex Radio Modem Driver</H3>
|
||
<p>
|
||
Wed, 17 Jun 1998 13:21:40 GMT<br>
|
||
Announcing the release of a new network driver which
|
||
implements the MASC data link layer protocol, enabling Linux to use
|
||
Mobitex radio modems as network devices. Armed with radio modems and a
|
||
subscription to a Mobitex operator, you can create a network
|
||
interconnecting two or more Linux systems wirelessly using TCP/IP or your
|
||
own custom protocol.
|
||
<p>
|
||
The driver has been verified to be stable on 2.0.30 through 2.0.33
|
||
kernels and is hence ready for release. The package includes a basic
|
||
FAQ list, a HOWTO document, driver source and a couple of tools.
|
||
<p>
|
||
|
||
Take a look at <a
|
||
href="ftp://ftp.linuxrx.com/pub/linux-contrib/">ftp://ftp.linuxrx.com/pub/linux-contrib/</a>
|
||
|
||
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
sfm 1.4 - Simple File Manager</H3>
|
||
<p>
|
||
Wed, 17 Jun 1998 14:02:46 GMT<br>
|
||
Announcing the release a new version of sfm. There's a lot of great
|
||
improvements between this version and the 1.1 version.
|
||
<p>
|
||
Some important changes:
|
||
<ul>
|
||
<li>you can associate actions with files (using its extension or its type given
|
||
by file(1))
|
||
<li>a popup menu gives you the available commands and shortcuts
|
||
</ul>
|
||
<p>
|
||
For more information look at <a
|
||
href="http://www.chez.com/prigaux/sfm.html">http://www.chez.com/prigaux/sfm.html</a>
|
||
<p>
|
||
You can find there a binary (i386, glibc, gtk+) version.
|
||
It has been tested (not fully) on i386 and solaris.
|
||
<p>
|
||
Any remarks and bug reports are welcome at <a
|
||
href="mailto:pixel_@geocities.com">pixel_@geocities.com</a>.
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
Linux Router Project v2.9.2 - networking centric mini-distribution</H3>
|
||
<p>
|
||
Sat, 20 Jun 1998 17:32:40 GMT<br>
|
||
v2.9.2 of linux router is out. LRP is now fully glibc based, and this is a
|
||
very solid release.
|
||
<p>
|
||
You can download it from: <a
|
||
href="ftp://ftp.psychosis.com/linux/linux-router/">ftp://ftp.psychosis.com/linux/linux-router/</a>
|
||
<p>
|
||
And get more info from: <a
|
||
href="http://www.psychosis.com/linux-router/">http:/www.psychosis.com/linux-router</a>
|
||
|
||
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
Slidedraw-0.10 - drawing/presentation program</H3>
|
||
<p>
|
||
Sat, 20 Jun 1998 17:29:11 GMT<br>
|
||
Slidedraw is a drawing program for presentation slides.
|
||
<p>
|
||
Some new features added:
|
||
<ul>
|
||
<li>distinct canvas-window/drawing/print size
|
||
<li>grouping of objects, creating composites
|
||
<li>new and improved menu hierarchy
|
||
</ul>
|
||
<p>
|
||
Get it at <a
|
||
href="http://sunsite.unc.edu/pub/Linux/Incoming">http://sunsite.unc.edu/pub/Linux/Incoming</a>
|
||
|
||
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
SFS Software's iavaZIP
|
||
</H3>
|
||
<p>
|
||
04 Jun 98 0100 WN<br>
|
||
SFS Software announced a new version of it's certified 100% pure Java
|
||
compression utility iavaZIP. The full-featured, pioneering file
|
||
compression program offers some unique features.
|
||
<p>
|
||
iavaZIP's key advantage is that it lets you create archives containing
|
||
files from multiple folders and subfolders--even from different volumes--in
|
||
the same session.
|
||
<p>
|
||
iavaZIP is compatible with PKZIP, supports 10 compression levels and runs
|
||
cross-platform on every Java 1.1 supported operating system like Windows
|
||
95/NT, Unix, Linux, SGI, AIX and OS/2. The Java Archive format (JAR) is also
|
||
supported. The product is available now through shareware distribution and
|
||
is priced at $49 for the standard single user license. Also available are
|
||
Academic Single user licenses ($29) and attractive high volume discounts.
|
||
<p>
|
||
SFS Software's WebSite at <a
|
||
href="http://www.sfs-software.com">http:www.sfs-software.com</a>
|
||
|
||
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
Protecting Networks w/SATAN</H3>
|
||
<p>
|
||
Mon, 8 Jun 1998 15:48:49 -0700 (PDT)<br>
|
||
Because SATAN (Security Administrator's Tool for Analyzing Networks)
|
||
could detect weaknesses on other systems (as well as your own) through
|
||
its web interface, it earned notoriety when released in April 1995 as
|
||
the tool that would "wreak havoc" on the Internet. The Oakland Tribune
|
||
even wrote: "It's like randomly mailing automatic rifles to 5000
|
||
addresses. I hope some crazy teen doesn't get ahold of one."
|
||
<p>
|
||
But as more and more "mission critical" applications are accessible
|
||
through the web, administrators are turning their attention to the
|
||
danger of attempted intrusion from outside the networked host. SATAN
|
||
is a powerful aid for system administrators. It performs "security
|
||
audits," scanning host computers for security vulnerabilities caused by
|
||
erroneous configurations or by known software errors in frequently used
|
||
programs. O'Reilly's latest release, "Protecting Networks with SATAN",
|
||
is an invaluable tool for network and security administrators working
|
||
with SATAN.
|
||
<p>
|
||
Protecting Networks with SATAN<br>
|
||
By Martin Freiss<br>
|
||
1st Edition June 1998 (US)<br>
|
||
112 pages, 1-56592-425-8, $19.95 (US$)<br>
|
||
<a href="http://www.oreilly.com">http://www.oreilly.com</a>
|
||
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
Conix 3D Explorer
|
||
</H3>
|
||
<p>
|
||
Wed, 17 Jun 1998 19:51:05 -0800<br>
|
||
Conix Enterprises, Inc. announce the release of Conix 3D Explorer on Linux.
|
||
With a single command 3D Explorer brings your Mathematica
|
||
graphics to life in an interactive OpenGL window, providing advanced
|
||
rendering capabilities previously reserved for high-end rendering systems.
|
||
<p>
|
||
3D Explorer provides a new graphics type, GLGraphics, with extended
|
||
graphics primitives and directives. New features include continuous
|
||
surfaces, display lists, inline transformations, and per-element control
|
||
over all graphics options.
|
||
<p>
|
||
3D Explorer comes with online documentation, including user's guide,
|
||
reference manual, programming examples, and demos. Quality email technical
|
||
support is provided by Conix Enterprises Inc., <a
|
||
href="mailto:tech@conix3d.com">tech@conix3d.com</a>.
|
||
|
||
For more information, see <a
|
||
href="http://www.conix3d.com">http://www.conix3d.com</a>
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
LinuxCAD v 1.55
|
||
</H3>
|
||
Thu, 18 Jun 1998 06:34:43 +0000<br>
|
||
Software Forge Inc. announcing the availablity of LinuxCAD v 1.55
|
||
at July 25 , 1998. LinuxCAD v 1.55 includes all hardcopy capabilities
|
||
namely:
|
||
<ul>
|
||
<li>output to LaserJet family of printers,
|
||
<li>output to PostScript Black and White as well as Color,
|
||
<li>output to HP-GL compatible plotters,
|
||
<li>output to LinuxCAD MS-Windows print server,
|
||
in the base version.
|
||
</ul>
|
||
<p>
|
||
LinuxCAD v 1.55 will be priced at the same level $75+tax and shipping.
|
||
All users who will prepay LinuxCAD v 1.55 before July 25, will get
|
||
extended free upgrades until July 1999.
|
||
<p>
|
||
To learn more about LinuxCAD visit <a
|
||
href="http://www.linuxcad.com">http://www.linuxcad.com</a>
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
Nighthawk 2.1 and FunktrackerGOLD 1.5 (announcement)
|
||
</H3>
|
||
<p>
|
||
Mon, 22 Jun 1998 23:13:50 +0930 (CST)<br>
|
||
Nighthawk 2.1 (nighthawk-2.1.tgz) and FunktrackerGOLD 1.5
|
||
(funktracker-1.5.tgz) have now been released. You can find them on:
|
||
<a
|
||
href="http://www.downunder.net.au/~jsno/rel/unix_projects">http://www.downunder.net.au/~jsno/rel/unix_projects</a>
|
||
<p>
|
||
Nighthawk is an X11 arcade game with sound and music. FunktrackerGOLD is a
|
||
digital music tracker. Read my page for more details on them.
|
||
Take a look at <a
|
||
href="http://www.downunder.net.au/~jsno">http://www.downunder.net.au/~jsno</a>
|
||
both come under the GNU GPL.
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!-- =================================================================== -->
|
||
|
||
<H3><IMG ALT=" " SRC="../gx/bolt.gif">
|
||
CYBERSCHEDULER FOR LINUX v2.1
|
||
</H3>
|
||
<p>
|
||
Wed, 24 Jun 1998 18:34:09 -0700<br>
|
||
CrossWind Technologies offers CyberScheduler, web-based calendaring and
|
||
scheduling software for workgroups. It has been designed to leverage an
|
||
organization's existing web resources:
|
||
<ul>
|
||
<li>running on Apache's web server
|
||
<li>with end user access from any desktop browser.
|
||
</ul>
|
||
<p>
|
||
More information about CrossWind Technologies and a live on-line demo of
|
||
CyberScheduler is available on the Web site at <a
|
||
href="http://www.crosswind.com">http://www.crosswind.com</a>
|
||
|
||
|
||
<P> <hr> <P>
|
||
<!--================================================================-->
|
||
<center>Published in <i>Linux Gazette</i> Issue 30, July 1998</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_tips30.html"><IMG SRC="../gx/back2.gif" ALT=" Back "></A>
|
||
<A HREF="./lg_answer30.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
|
||
<P><HR><P>
|
||
<h5>This page written and maintained by the Editor of <I>Linux Gazette</I>,
|
||
<A HREF="mailto: gazette@ssc.com">gazette@ssc.com</A><BR>
|
||
Copyright © 1998 Specialized Systems Consultants, Inc. </H5>
|
||
<P>
|
||
<H4>"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
<P> <hr> <P>
|
||
|
||
<!-- =============================================================== -->
|
||
<center>
|
||
<H1><A NAME="answer">
|
||
<img src="../gx/dennis/qbubble.gif" alt="(?)" border="0" align="middle">
|
||
<font color="#B03060">The Answer Guy</font>
|
||
<img src="../gx/dennis/bbubble.gif" alt="(!)" border="0" align="middle">
|
||
</A></H1> <BR>
|
||
<H4>By James T. Dennis,
|
||
<a href="mailto:linux-questions-only@ssc.com">linux-questions-only@ssc.com</a><BR>
|
||
Starshine Technical Services,
|
||
<A HREF="http://www.starshine.org/">http://www.starshine.org/</A> </H4>
|
||
</center>
|
||
|
||
<p><hr><p>
|
||
<H3>Contents:</H3>
|
||
<p><a href="#tag_greetings"><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0">Greetings from Jim Dennis</a></p>
|
||
|
||
<DL>
|
||
<!-- index_text begins -->
|
||
<dt><A HREF="tag_SCOkeys.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a> Linux and SCO Keymap --or--
|
||
<dd><A HREF="tag_SCOkeys.html"><STRONG>SCO Compatible Console Keymaps?</STRONG></A>
|
||
<dt><A HREF="tag_chroot.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a> linux kernel security --or--
|
||
<dd><A HREF="tag_chroot.html"><STRONG>Breakin' Out of the
|
||
<TT>chroot()</TT> Jail</STRONG></A> adding "disabilities" to Linux
|
||
<dt><A HREF="tag_dosemu-db.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a>Dosemu and virtual terminals? --or--
|
||
<dd><A HREF="tag_dosemu-db.html"><STRONG>Clipper/xBase Capacity Problems
|
||
--- DOSemu as a Solution?</STRONG></A> "I don't think so."
|
||
<dt><A HREF="tag_NTauth.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a> NT Domain and Linux --or--
|
||
<dd><A HREF="tag_NTauth.html"><STRONG>Linux as a "Domain Controller" for
|
||
a WinNT Domain? Not Yet!</STRONG></A>
|
||
Linux use of an NT PDC/BDC for authentication?
|
||
<dt><A HREF="tag_cdr.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a> DAO software for linux? --or--
|
||
<dd><A HREF="tag_cdr.html"><STRONG>"DAO" (Disk at Once) CDR?</STRONG></A> Stump Me!
|
||
<dt><A HREF="tag_3270.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
><STRONG>tn3270 security</STRONG></A>
|
||
<dt><A HREF="linux-questions-only@ssc.comport.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
><STRONG>readdress COM port to 3 or 4</STRONG></A>
|
||
<dt><A HREF="tag_lilostop.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a> Lilo won't boot --or--
|
||
<dd><A HREF="tag_lilostop.html"><STRONG>Installed on a Secondary SCSI HD:
|
||
Lilo Stops at LI</STRONG></A>
|
||
<dt><A HREF="tag_emulate.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a>help on unix --or--
|
||
<dd><A HREF="tag_emulate.html"><STRONG>Running Unix/Linux Under Win '9x</STRONG></A>
|
||
<dt><A HREF="tag_ppadrivers.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
><STRONG>winprinters & MTAs</STRONG></A>: Pointers and Corrections
|
||
<dt><A HREF="tag_database.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a> FoxPlus for Linux? --or--
|
||
<dd><A HREF="tag_database.html"><STRONG>Dreaming about xBase tools
|
||
for Linux</STRONG></A>
|
||
<dt><A HREF="tag_vacation.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
><STRONG>auto response for email ?</STRONG></A>
|
||
<dt><A HREF="tag_nullmodem.html"><img src="../gx/dennis/qbub.gif" height="28"
|
||
width="50" alt="(?)" border="0"
|
||
><STRONG>Connecting Linux to Win '95 via Null Modem</STRONG></A>
|
||
<dt><A HREF="tag_lockups.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a> PC lockups --or--
|
||
<dd><A HREF="tag_lockups.html"><STRONG>Hardware Lockups due to
|
||
Graphics Load</STRONG></A>
|
||
<dt><A HREF="tag_gzipC.html"><img src="../gx/dennis/qbub.gif" height="28"
|
||
width="50" alt="(?)" border="0"></a> gzip from C program --or--
|
||
<dd><A HREF="tag_gzipC.html"><STRONG>Compression Libraries to
|
||
Link into a C Program</STRONG></A>
|
||
<dt><A HREF="tag_newlook.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
><STRONG>LOVE THE NEW LOOK!!!!</STRONG></A>
|
||
<dt><A HREF="tag_c500.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a>please, advice about Linux and C500 --or--
|
||
<dd><A HREF="tag_c500.html"><STRONG>Linux PPC on the Umax C500 SuperMac:
|
||
Not A Good Idea</STRONG></A>
|
||
<dt><A HREF="tag_solprint.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></A>printing Solaris->Linux --or--
|
||
<dd><A HREF="tag_solprint.html"><STRONG>Remote lpd from Solaris to Linux</STRONG></A>
|
||
<dt><A HREF="tag_vc1shell.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a> Help Wanted --or--
|
||
<dd><A HREF="tag_vc1shell.html"><STRONG>User Shell on Virtual Console 1</STRONG></A>
|
||
<dt><A HREF="tag_memleak.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
></a> Memory deallocation problems --or--
|
||
<dd><A HREF="tag_memleak.html"><STRONG>Linux Memory Usage vs. Leakage</STRONG></A>
|
||
<dt><A HREF="tag_tvcard.html"><img src="../gx/dennis/qbub.gif" height="28" width="50" alt="(?)" border="0"
|
||
><STRONG>tv cards and dual monitor</STRONG></A>
|
||
<!-- index_text ends -->
|
||
</DL>
|
||
<p><hr width="40%" align="center"></p>
|
||
<a name="tag_greetings"><H3>Greetings from Jim Dennis</H3></a>
|
||
|
||
<p>Well another month is upon us. This last month was particularly busy
|
||
since I was able to afford the USENIX technical conference, in New
|
||
Orleans --- the best annual gathering of fellow Unix and Linux nerds
|
||
I've ever found. If you can get your boss to send you to just one
|
||
computing technical conference in the next year --- ask for it to be
|
||
this one (or the USENIX/LISA --- Large Installation Systems
|
||
Administration which will be in December).</p>
|
||
|
||
<p>Linus was there with his wife, Tove, and their two baby daughters.
|
||
He agreed to host an "intimate little BoF" (Birds of a Feather
|
||
discussion) which turned out to have over half of the conference
|
||
attending it (much to his surprise).</p>
|
||
|
||
<p>The '97 USENIX in Anaheim had a "parallel track" for Linux. This
|
||
year had one for "Freenix" (collectively referring to FreeBSD,
|
||
NetBSD, OpenBSD, and the GNU HURD, in addition to Linux). It's
|
||
important for us (Linux users) to recognize that Linux wasn't the
|
||
first "free" Unix kernel, and it is by no means the only one.</p>
|
||
|
||
<p>I've been trying to encourage the free *BSD users (all variants) to
|
||
come out of the woodwork and show up at their local Linux user's
|
||
group meetings. I know they'll be welcome at the Silicon Valley
|
||
LUG (<a href="http://www.svlug.org/">http://www.svlug.org</a>) and
|
||
I sincerely hope that they'll be welcome at other Linux events.
|
||
Now that we're getting enough market
|
||
share to get noticed in the press, and to have some effect on the
|
||
decisions of hardware and software vendors (particularly in the areas
|
||
that relate to documentation and NDA's) --- it would be a very bad
|
||
time for us to get embroiled in the sorts of infighting that's been
|
||
stifling the commercial Unix vendors for so long.</p>
|
||
|
||
<p>I noticed an interesting press release (forwarded to me by my wife)
|
||
regarding Microsoft's new "WISE" (Windows Interface Source Environment:
|
||
<a href="http://www.microsoft.com/win32dev/base/wise.htm"
|
||
>http://www.microsoft.com/win32dev/base/wise.htm</a>) which basically
|
||
looks like a scheme to bolster the commercial Unix vendors up in their
|
||
battle against the free Unix clones (by providing them with <em>some
|
||
limited</em> support for running Windows '95 software). (From the looks
|
||
of it the WINE and Bochs projects may eventually be more capable).</p>
|
||
|
||
<p>Luckily these, and the other interesting user space projects that
|
||
are going to make Linux more accessible to non-technical users,
|
||
like GNOME, KDE, and GNUStep are <em>portable</em>. Linux has been a
|
||
primary development platform for many of these projects --- but
|
||
they all run under other versions of Unix.</p>
|
||
|
||
<p>So, while it may look like Linux is "taking over the world" ---
|
||
it is also opening up a world of opportunity for all of the other
|
||
Unix variants. There are now a few million users of Linux that will
|
||
feel right at home in just about any Unix on just about any hardware.</p>
|
||
|
||
<p>Perhaps that's why Sun and <a href="http://linux.sgi.com/">SGI</a> are
|
||
both supporting Linux projects.</p>
|
||
|
||
<!--================================================================-->
|
||
<A NAME="tag_SCOkeys"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">SCO Compatible Console Keymaps?</H3>
|
||
|
||
<p><strong>From Jim Kjorlaug on 25 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
<br><br>
|
||
I work for a company that sells vertical solutions using
|
||
<a href="http://www.sco.com/">SCO unix</a> as a
|
||
platform. We are currently looking at linux as another possible
|
||
platform and I have found a possible contention. Does there exist a
|
||
keytable that causes the linux keyboard to behave like an SCO console.
|
||
I have already worked out the termcap for SCO ansi to work on linux but
|
||
some of the keymaps have me stumped. Any suggestions or advice would be
|
||
greatly appreciated. I realize that we could modify our application but
|
||
it would be much easier if it were possible with a keytable.
|
||
|
||
<br><br>
|
||
Thanks in advance for any help you can provide.
|
||
<br>Jim Kjorlaug
|
||
<br>Teleflora Technologies
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>I don't know how a SCO console keymap is supposed to behave
|
||
--- but Linux does have utilities to remap the console
|
||
keyboard to your heart's content. All of the popular
|
||
distributions include the '<TT>loadkeys</TT>' and '<TT>dumpkeys</TT>'
|
||
programs (parts of Andries Brouwer's
|
||
<A HREF="ftp://ftp.win.tue.nl/pub/linux/util/kbd/">'<TT>kbd</TT>'
|
||
package</A>). You can look at the man pages for these for details.
|
||
|
||
<br><br>
|
||
I've never used these packages much --- just once to
|
||
set up "sticky shift" keys for a friend who lost most of the
|
||
use in one arm to a stroke a couple of years ago and again to
|
||
answer some other question back before I started this column.
|
||
|
||
<br><br>
|
||
It does seem quite odd that you'd go for console specific
|
||
binding rather than using the more portable
|
||
<TT>termcap</TT>/<TT>terminfo</TT> (<TT>curses</TT>/<TT>ncurses</TT>)
|
||
interfaces which would allow your app to be
|
||
accessed via terminals, over modem/dial-up connections, across
|
||
telnet sessions and from within xterms. However, I'm sure you
|
||
have your reasons.
|
||
|
||
<br><br>
|
||
Yann Dirson is working on a package called
|
||
"<A HREF="http://www.mygale.org/~ydirson/en/lct/">Linux console tools</A>"
|
||
which enhances the kbd package.
|
||
|
||
<br><br>
|
||
There is also a console fonts package (the '<TT>setfont</TT>' command
|
||
is also included with many Linux distributions; it allows
|
||
you to choose from among about 100 different VGA/EGA
|
||
compatible console fonts, some of which are quite silly).
|
||
Andries Brouwer is apparentlly the co-author of the console
|
||
fonts package, too.
|
||
|
||
<br><br>
|
||
Good luck on the port and welcome to the club.
|
||
</blockquote>
|
||
<A NAME="tag_chroot"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Breakin' Out of the chroot() Jail</H3>
|
||
<H4 ALIGN="center">Or: adding "disabilities" to Linux</H4>
|
||
|
||
<p><strong>From Ron Arts on 25 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
<br><br>
|
||
Hello,
|
||
|
||
<br><br>
|
||
I saw a post by your hand from 26 Apr 98 in
|
||
<A HREF="news:comp.os.linux.development.system"
|
||
>comp.os.linux.development.system</A> where you said a lot of noteworthy
|
||
things on linux security. Also I have been talking to Jos Vos from
|
||
Xopen Systems (who wrote the <TT>ipfwadm</TT> package).
|
||
|
||
<br><br>
|
||
Both you and he noted the possibility to break out of a <TT>chroot</TT> jail
|
||
(once you become root there). It seems that devices are the weak
|
||
factor.
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>It seems that letting anyone "become root there" is the weak
|
||
factor! If we can reduce the need to "become root" --- by
|
||
providing mechanisms other than "SUID" and "SGID" programs
|
||
for accessing "privileged" operations than we have made
|
||
some progress.
|
||
|
||
<br><br>
|
||
One approach would be the POSIX.1e "capabilities" (which are
|
||
more like VMS style "privileges" than true "capabilities").
|
||
There is a bit of preliminary work being done on this in the
|
||
2.1.x kernels --- but nothing is likely be usable in 2.2
|
||
(so you're looking at Linux 2.4 before there is "stable" support
|
||
for any of that).
|
||
|
||
<br><br>
|
||
Another approach is to limit the damage that '<TT>root</TT>' can do
|
||
using something like the BSD securelevel features. Last I
|
||
heard on the Linux kernel mailing list they had dropped plans
|
||
to put in simple '<TT>securelevel</TT>' support in favor of a
|
||
"more flexible" approach --- which would mesh better with the
|
||
eventual POSIX.1e ("Orange Book") work.
|
||
|
||
<ul>
|
||
<li>(The implementations of 'securelevel' in all of
|
||
the popular BSD variants, free and commercial
|
||
have been vulnerable to a few attacks via the
|
||
<TT>/proc</TT> filesystem and more recently via
|
||
<TT>ptrace()</TT>
|
||
--- so having Linux adopt one of those designs
|
||
might not be a sound idea. We'll see).
|
||
</ul>
|
||
|
||
I'm a little shy on the implementation details and design
|
||
but I think they said it would essentially be a bit field
|
||
of limitations that would be set on a per process basis.
|
||
There would be bits to prevent various syscalls like
|
||
<TT>mknod()</TT>, <TT>chroot()</TT>, <TT>mount()</TT>, etc.
|
||
In the POSIX.1e model
|
||
this would later become the "maximum privileges mask" ---
|
||
and the individual privileges would be set by meta data on
|
||
the executable files (think of that as a list of about 80
|
||
"P" bits rather than just the SUID and SGID bits we have now).
|
||
|
||
<br><br>
|
||
The argument for this is that we could set any set of
|
||
this bits we want on the '<TT>init</TT>' process (PID 1) to accomplish
|
||
the same limitations as we get with BSD's '<TT>securelevel</TT>'.
|
||
|
||
<br><br>
|
||
That's a pretty compelling argument so far as I'm concerned.
|
||
My main hesitation beyond that has to do with code
|
||
complexity. The BSD crowd has been trying to get their
|
||
'<TT>securelevel</TT>' implementations right for years --- and the
|
||
<TT>ptrace()</TT> bug was just found a couple of weeks ago.
|
||
|
||
<br><br>
|
||
It's not a simple problem. NT's "object" model (and I
|
||
use the term "object" very loosely) provides ACL's on
|
||
files, registry keys, and all sorts of other OS elements.
|
||
There is work underway to add ACL support to Linux ---
|
||
over some filesystems at least. However, I'm convinced
|
||
that ACL's are a fundamentally flawed security model ---
|
||
and that opinion is based on some pretty good academic work.
|
||
|
||
<br><br>
|
||
Unfortunately the true capabilities security model entails
|
||
a completely different programming paradigm --- it doesn't
|
||
translate to Unix conventions at all. In my research
|
||
(purely "armchair" or "book larnin'") I spent most of my
|
||
energy trying to unlearn the Unix, Netware, and NT approaches.
|
||
|
||
<br><br>
|
||
You can read more about the capabilities security model at
|
||
Jonathan Shapiro's "EROS" (extremely reliable OS) web site:
|
||
|
||
<blockquote><code> <A HREF="http://www.cis.upenn.edu/~eros/"
|
||
>http://www.cis.upenn.edu/~eros/</A>
|
||
</code></blockquote>
|
||
|
||
(EROS is an ongoing research project which will hopefully
|
||
eventually be available as a production operating system).
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"
|
||
>I have been thinking about disabling the <TT>mount()</TT> or
|
||
better the <TT>mknod()</TT> systemcall when executed from <TT>chroot</TT>'ed
|
||
programs (patching the kernel).
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>I think the "<TT>capabilities</TT>" (or Linux "<TT>securelevel</TT>" or
|
||
"<TT>privmask</TT>") patches will allow you to disable access to these
|
||
sorts of syscalls. I also suspect that these "disabilities"
|
||
(a more apt description really) will be inherited by all
|
||
forked processes. They will certainly need to be immutable
|
||
(by the process) and will have to imply certain disabilities
|
||
with regards to <TT>kmem</TT> and <TT>/proc</TT> access by the
|
||
'<TT>root</TT>' processes
|
||
that are running within these process groups.
|
||
|
||
<br><br>
|
||
You can look at the existing patches (in the recent 2.1.1xx
|
||
kernels) and possibly build on that.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"
|
||
> Do you think that would be worth the effort? We currently run
|
||
<TT>ftpd</TT>, <TT>telnetd</TT>, <TT>sshd</TT> and some more things
|
||
<TT>chroot</TT>'ed in a very minimal linux
|
||
environment. Based on the false assumption that even when you make it
|
||
to becoming root you cannot break out of that.
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>The assumption that the <TT>chroot()</TT> jail is inescapable by
|
||
rogue root processes is very bad. You've discovered that.
|
||
|
||
<br><br>
|
||
The main advantage for <TT>chroot()</TT> have to do with limiting
|
||
the number of SUID/SGID programs that are accessible in the
|
||
effort to exploit various vulnerabilities that are used to
|
||
<EM>get</EM> root or other unauthorized access. The other advantage
|
||
is that you can limit the amount of snooping that a class
|
||
of users (anonymous and guestgroup ftp, for example) can
|
||
perpetrate on other users on the system.
|
||
|
||
<br><br>
|
||
In other words you can limit the exposure of your "general"
|
||
users from some classes of other users. For a long time
|
||
the most important element of this was to prevent FTP users
|
||
from grabbing your passwd file and running '<TT>crack</TT>' on it.
|
||
With the advent of shadow password systems that has been
|
||
much less of a concern.
|
||
|
||
<br><br>
|
||
These days the most common approach to securing systems
|
||
is to create special, sacrificial hosts for each service
|
||
and class of users. Linux and {Free|Net|Open}-BSD have
|
||
made this an increasingly economical and attractive option
|
||
since we can put any old "junker" 386 or better to work
|
||
in this sort of role (some people are <EM>giving</EM> away 386 and
|
||
486 systems these days). This is easy enough for commercial
|
||
sites --- but more of a problem for ISP's and educational
|
||
sites, which traditionally still have shell access to at
|
||
least some of their machines.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"
|
||
>I think very few programs use <TT>mknod()</TT>, and that probably are
|
||
the programs you wouldn't allow in a <TT>chroot</TT>'ed environment anyway. I
|
||
also think it would be a relatively small patch, I've done some digging and
|
||
- not being a kernel expert - it seemed pretty easy. The only thing
|
||
left to find out is how to detect in the kernel that the current env
|
||
is <TT>chroot</TT>'ed.
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>The kernel obviously already tracks the 'root' directory
|
||
(device:inode) for every process. I think it's a field
|
||
in the uarea struct (a data structure maintained by the
|
||
kernel for every process).
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"
|
||
>Can you offer any thoughts on this, I'd like to know if I am on the
|
||
wrong track (again) here.
|
||
<br><br>
|
||
Thanks in advance,
|
||
<br>Ron Arts
|
||
<br>Netland Internet Services
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>Look at the existing (2.1.x) sources for references to
|
||
"securelevel" and "capabilities" --- I'm sure they're in there
|
||
somewhere. You can also consider contributing to the
|
||
Linux Security Audit project. See the following URL's for
|
||
more details:
|
||
|
||
<dl><dt>The Linux Weekly News article on it
|
||
(search on the keyword "audit"):
|
||
|
||
<dd><A HREF="http://www.lwn.net/980625/">http://www.lwn.net/980625/</A>
|
||
|
||
<br> <br>
|
||
<dt>Their currently archives/web site:
|
||
<dd><A HREF="http://www.nas.nasa.gov/Pubs/Mail/archive/linux-security-audit/"
|
||
>http://www.nas.nasa.gov/Pubs/Mail/archive/linux-security-audit/</A>
|
||
</dl>
|
||
|
||
If your organization needs these features and is willing to
|
||
donate some web space and some personnel time and expertise
|
||
to the project --- you'll be doing yourself and all of us
|
||
alot of good.
|
||
</blockquote>
|
||
<A NAME="tag_dosemu-db"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Clipper/xBase Capacity Problems
|
||
--- DOSemu as a Solution?</H3>
|
||
<H4 ALIGN="center">"I don't think so."</H4>
|
||
|
||
<p><strong>From Steven Jackson on 25 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
|
||
<BR><BR>
|
||
Hi AnswerGuy,
|
||
|
||
<br><br>
|
||
I was reading an article on the web about diskless
|
||
workstations and redhat when I recognised your name, (I think you
|
||
helped me out with redhat a long time ago, thanks).
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>You're welcome.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"
|
||
> I look after a small network of 4 pcs at a doctors surgery which
|
||
runs an accounting package and an appointments diary compiled under
|
||
Clipper. System Manager is run on the host pc which does all of the
|
||
local processing of these applications and the clients run as
|
||
virtual terminals.
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
> I don't know what you mean by "system manager" ---
|
||
from what I remember/know of dBase and Clipper these
|
||
were designed as single-user database systems. The
|
||
multi-user deployment of xBase applications normally
|
||
relies on "record locking" (similar to file locking
|
||
but allowing one to request exclusive access to a
|
||
<EM>portion</EM> of a file).
|
||
|
||
<br><br>
|
||
In this model the <TT>.DBF</TT> files are normally stored on a
|
||
network filesystem (Netware, LANtastic, and later
|
||
WfW among others). I don't know if Samba or the
|
||
Mars-NWE (Netware emulator) supports these forms of
|
||
record locking.
|
||
|
||
<br><br>
|
||
It is unclear from your description how your are
|
||
running this. You mention 4-PC's and Clipper (a
|
||
DOS based compiler/developement package for dBase
|
||
programming), which leads me to think of networked
|
||
DOS systems --- then you mention "virtual terminal"
|
||
which suggests that you're using a multi-user OS
|
||
(like Linux).
|
||
|
||
<br><br>
|
||
Are you running DR or CCI's "Concurrent DOS" (or
|
||
their later "M-DOS" or "Multi-user DOS") or something
|
||
like TSL's "PC-MOS" (another multi-user MS-DOS clone)?
|
||
Is "System Manager" yet another multi-user DOS?
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"
|
||
>Over the past year or so the system has run slower gradually to the
|
||
point where it is getting annoying. I'd like to try running linux
|
||
on the fileserver and somehow run the dos based clipper programs
|
||
under dosemu. I think it would be wise to keep all the <TT>*.dbf</TT> files
|
||
on the server rather than sending them over the network. I got the idea
|
||
from the recent Linux Journal article about the Latvian Police dept.
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
><dl><dt>The first question is:
|
||
<dd>Why is the performance degenerating?
|
||
<br> <br>
|
||
<dt>The obvious suggestions are:
|
||
|
||
<dd>Have you been regularly "pack"-ing your
|
||
databases (purging deleted records and transactions)?
|
||
|
||
<br><br>Have you been maintaining your indices?
|
||
(Indexing is usually a vital key to db performance).
|
||
|
||
<br><br>Have you been defragmenting your filesystems
|
||
regularly?
|
||
|
||
<br><br>Has your system utilization increased in some marked
|
||
way (you've added *lots* more customers, etc)?
|
||
|
||
<br><br>Does your current design have any features or support
|
||
for migrating old and inactive records to "archival"
|
||
or "historical" databases (tables) so that the "active"
|
||
db routines are maintained at feasible sizes?
|
||
|
||
<br><br>Are there other activities on your LAN that might
|
||
be causing network congestion?
|
||
</dl>
|
||
|
||
Regarding the notion of running the existing program
|
||
under DOSemu . . .
|
||
|
||
<br><br>
|
||
I don't know if that will do any good at all. Since we
|
||
don't know what is causing the problem, it seems premature
|
||
to recommend solutions. My first thought is that moving
|
||
the processing from four systems onto a single one (even a
|
||
single system under a superior OS) is unlikely to improve
|
||
overall performance.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"
|
||
>Do you have any ideas about how I could embark upon this?
|
||
<BR><BR>
|
||
Thanks,
|
||
<br>Steve Jackson
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>I have many ideas. The first, and most obvious, would be
|
||
to port the application to a client/server database design
|
||
--- one that's designed to be multi-user and scalable at the
|
||
outset. Another, less radical approach would be to take the
|
||
existing Clipper sources and port them to
|
||
<A HREF="http://www.wgs.com/fsad.html">Flagship</a> (an
|
||
xBase to C development package from WorkGroup Solutions).
|
||
|
||
<br><br>
|
||
... their web pages suggest that they will soon be shipping
|
||
betas of a "visual" frontend for xBase programming. That
|
||
should be interesting for all those "VB" and "VC++" developers
|
||
that are still clinging desperately to Microsoft's platform.
|
||
|
||
<br><br>
|
||
Or you might try X2C from:
|
||
|
||
|
||
<blockquote><code><A HREF="http://www.on-the-net.com/x2c/"
|
||
>http://www.on-the-net.com/x2c/</A>
|
||
</code></blockquote>
|
||
|
||
|
||
The questions I asked above may give you some ideas for
|
||
some "stopgap" measures (re-index, defrag, migrate inactive
|
||
records, etc). In the long run you'll want to do some
|
||
analysis to see if the current system can continue to meet
|
||
your needs.
|
||
|
||
<br><br>
|
||
If you do decide to go with a client server model you
|
||
have many choices that run under Linux. There are the free
|
||
and shareware packages like mSQL, Beagle and MySQL and
|
||
there are a number of commercial packages like InfoFlex
|
||
Adabas, and the JustLogic SQL. Rather than give URL's
|
||
to all of these I'll just point you at the definitive
|
||
guide to RDBMS packages for Linux --- maintained by
|
||
Christopher B. Browne at:
|
||
|
||
<blockquote><code> <A HREF="http://www.hex.net/~cbbrowne/"
|
||
>http://www.hex.net/~cbbrowne/</A>
|
||
<br><A HREF="http://www.ntlug.org/~cbbrowne/rdbms.html"
|
||
>http://www.ntlug.org/~cbbrowne/rdbms.html</A>
|
||
</code></blockquote>
|
||
|
||
... and another excellent list of Linux business applications
|
||
maintained by Linas Vepstas (<EM>NOT</EM> to be confused with
|
||
Linus the kernel guy) at:
|
||
|
||
|
||
<blockquote><code> <A HREF="http://www.linas.org/">http://www.linas.org</A>
|
||
<br><A HREF="http://www.linas.org/linux/db.html"
|
||
>http://www.linas.org/linux/db.html</A>
|
||
</code></blockquote>
|
||
|
||
I should mention that you aren't limited to just xBase or
|
||
SQL --- there are a number of alternative DBMS system that
|
||
are available to Linux and other Unix users and programmers
|
||
--- including a number of object-oriented and hybrid
|
||
systems. Allegedly there's even Linux support for the venerable
|
||
<A HREF="http://www.picksys.com/">Pick system</A>.
|
||
</blockquote>
|
||
<A NAME="tag_NTauth"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Linux as a "Domain Controller" for
|
||
a WinNT Domain? Not Yet!</H3>
|
||
<H4 ALIGN="center">or: Linux use of an NT PDC/BDC for authentication?</H4>
|
||
|
||
<p><strong>From Cesar Augusto Kant Grossmann on 25 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
<br><br>
|
||
|
||
Hi James!
|
||
|
||
<br><br>
|
||
Again a problem to me, and a exercise to you.
|
||
|
||
<br><br>
|
||
Is it possible to make the Linux Box do login authentication
|
||
requests from a NT Domain Server?
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>Not yet. The <a href="http://samba.anu.edu.au/">Samba team</a>
|
||
is working on this and hopes to have something ready within a couple of
|
||
months. Lest you think this is all wasted effort
|
||
(on the thought that Microsoft will ship NT 5.x
|
||
in a year or so) --- the indications seem to be that
|
||
the MS NT implementation of Kerberos will still rely
|
||
heavily on the data structures that they currently use
|
||
in their PDC/BDC protocol. So, the work being done
|
||
now is an investment to the future as well as a hope
|
||
for the near-present.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"
|
||
>I have a Linux box in a TCP/IP network, part of a large NT Domain,
|
||
and want to allow NT domain-users to log in the Linux Box and access
|
||
Internet in it. The idea is provide access to the Linux Box without
|
||
having to register every user. The users don<6F>t need a regular
|
||
account, with home directory, because Internet access is not
|
||
frequent (thanks to a low connection) and they only use it to
|
||
surfing (not email, not FTP).
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>Hmm. It looks like I read too much into your first
|
||
paragraph. This sounds like you want Linux to be a
|
||
client to an NT domain controller. I think there is
|
||
a PAM (pluggable authentication module) for doing this.
|
||
|
||
<br><br>
|
||
Since the whole PAM project is still in beta (and not
|
||
moving nearly fast enough for my tastes --- not that I've
|
||
contributed to it nor that the programmers would want me
|
||
to) I can't make any promises on how well it will work.
|
||
|
||
<br><br>
|
||
However the state of PAM can speak for itself at:
|
||
|
||
<blockquote><code><A HREF="http://www.kernel.org/pub/linux/libs/pam/"
|
||
>http://www.kernel.org/pub/linux/libs/pam/</A>
|
||
</code></blockquote>
|
||
|
||
(Andrew Morgan's pages on the Transmeta sponsored Linux site).
|
||
|
||
<br><br>
|
||
The module you might want to play with is by David Airlie
|
||
and is at:
|
||
|
||
<blockquote><code><A HREF="http://www.csn.ul.ie/~airlied/pam_smb/"
|
||
>http://www.csn.ul.ie/~airlied/pam_smb/</A>
|
||
</code></blockquote>
|
||
|
||
Other modules (for things like one-time passwords, authentication
|
||
on a Netware server, a couple of different "SecureCard" and
|
||
"DESGold" cards, RADIUS, and support Kerberos realms, etc) can
|
||
be found by browsing around at:
|
||
|
||
<blockquote><code><A HREF="http://www.kernel.org/pub/linux/libs/pam/modules.html"
|
||
>http://www.kernel.org/pub/linux/libs/pam/modules.html</A>
|
||
</code></blockquote>
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"
|
||
>No, I don't want to make the Linux Box act as a firewall (I don't
|
||
have authorization to do that). And, again, sorry my bad english...
|
||
<br><br>
|
||
TIA
|
||
|
||
<br><br>
|
||
Cesar Augusto Kant Grossmann
|
||
<br>Uruguaiana - RS - Brasil
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>Given the muddy murky nature of the term "firewall" the
|
||
difference between what you're doing and "acting as a firewall"
|
||
may be purely a matter of semantics. However, if it'll keep
|
||
your management happy I'll go into a Brazilian court of law
|
||
as an "expert witness" to state my opinion that this is <EM>not</EM>
|
||
a "firewall."
|
||
|
||
<br><br>
|
||
If by "surfing" you mean that your users will only be
|
||
using the Linux system as a web proxy --- why are you
|
||
fussing with authenticating them at all? Why not just
|
||
install Apache and configure it purely for caching/proxy
|
||
use --- or use Squid (there are RPM's avaiable --- they
|
||
were included with my copies of
|
||
<A HREF="http://www.suse.de/">S.u.S.E.</A>
|
||
|
||
<br><br>
|
||
<a href="http://www.apache.org/">Apache</a>, CERN, and Squid can
|
||
all be configured as caching
|
||
web proxy/servers and can all be configured with a variety
|
||
of limitations on which systems are allowed through in which
|
||
directions. Do you really care <EM>which</EM> user is logged into
|
||
the workstation that is using these proxies? That seems like
|
||
an odd requirement unless you're also trying to enforce
|
||
some other policies (like certain classes of employees are
|
||
only allowed to "surf" during their lunch hour, etc).
|
||
|
||
<br><br>
|
||
I suggest you actually review your requirements a bit further.
|
||
It sounds like you are complicating matters more than the
|
||
situation requires.
|
||
</blockquote>
|
||
<A NAME="tag_cdr"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">"DAO" (Disk at Once) CDR?</H3>
|
||
<H4 ALIGN="center">Stump me!</H4>
|
||
|
||
<p><strong>From Mark Heath on 25 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
<br><br>
|
||
Hi there,
|
||
|
||
<br><br>
|
||
I've been searching high and low for DAO (disk at once) CDR
|
||
recording software for linux. Does any exist, Commercial or
|
||
otherwise?
|
||
|
||
<br><br>
|
||
I've email Jeff Arnold about a Linux port and he bluntly refused.
|
||
|
||
<br><br>
|
||
I've email'd HyCD who have a tool that appeared to support DAO and
|
||
claimed UNIX support. But their software didn't support DAO and
|
||
they weren't interested in a Linux port. I've informed them of this
|
||
hole in the Linux software market.
|
||
|
||
<br><br>
|
||
The closest thing that appears to be available is that Joerg
|
||
Schilling's cdrecord supports DAO MMC-3 (err i think that is the
|
||
spec) Of course my CDR (HP 4020i) isn't MMC compatible.
|
||
|
||
<br><br>
|
||
I've had a look at writing my own but it appears that every CDR has
|
||
a different command set to write in DAO mode. I think is was a
|
||
little out of my depth, since I couldn't even get the CDR to read
|
||
raw sectors.
|
||
|
||
<br><br>
|
||
So your help would be much appreciated. Thanks.
|
||
<br>Mark.
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>Well, you have me stumped.
|
||
|
||
<br><br>
|
||
I don't know anything about the difference between DAO and
|
||
other forms of CDR recording. Normally, I'd spend an
|
||
hour or two hunting around on
|
||
<a href="http://altavista.digital.com/">Alta Vista</a>,
|
||
<a href="http://www.yahoo.com/">Yahoo!</a>,
|
||
Savvy Search,
|
||
<a href="http://www.dejanews.com/">DejaNews</a>, etc and
|
||
pulling out more of my hair to find out. However, I have a book to
|
||
write and a wife to feed, and it is just too close to my deadline for
|
||
me to wait until tomorrow.
|
||
|
||
<br><br>
|
||
So, what is DAO and why would you need it? What is the
|
||
difference between <TT>cdrecord</TT> and <TT>cdwrite</TT> (the one I
|
||
use with my Ricoh CDR)? Have you tried them both? What is
|
||
MMC? Who is Jeff Arnold? Who are HyCD and should we
|
||
care enough to start another Linux grassroots
|
||
"petition-the-vendor" campaign or should we just write
|
||
more code to "do-it-ourselves"?
|
||
|
||
<br><br>
|
||
I'll publish this one --- and let you and the rest of my
|
||
readership nail me with the answers. (Naturally I'll
|
||
bounce you copies of the other responses as they trickle in).
|
||
|
||
</blockquote>
|
||
<A NAME="tag_3270"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">tn3270 security </H3>
|
||
|
||
<p><strong>From Art Blair on 25 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
<BR><BR>
|
||
When I try to use <TT>tn3270</TT> or <TT>X3270</TT> on my redhat 5.0 box to
|
||
connect to our school's system I get
|
||
|
||
<BLOCKQUOTE><code> TELNET Server: Session security is required.
|
||
<br>TELNET Server: Good-bye!!!
|
||
<br>Connection closed by foreign host.
|
||
</code>
|
||
</BLOCKQUOTE>
|
||
|
||
Is there a different version of tn3270 that has session security or some
|
||
way to enable it with what I have?
|
||
<br><br>Thanx, Art Blair.
|
||
</strong></p>
|
||
|
||
<img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>Are you sure you want to be using <TT>tn3270</TT> (or <TT>x3270</TT>)
|
||
to make this connection? Are you connecting to an IBM mainframe or
|
||
minicomputer (presumably using the 3270 "block mode" ---
|
||
full-screen protocol --- and EBCDIC)?
|
||
|
||
<br><br>
|
||
Also does your site use Kerberos or some form of SNA
|
||
security (encryption or host-to-host authentication)?
|
||
|
||
<br><br>
|
||
The sad fact is that I know nothing about 3270 emulation
|
||
or about the SNA protocols. You'll want to contact your
|
||
site admin or help desk to find out more about their
|
||
requirements. They should also be able to let you know
|
||
if there are any freely available client/terminal emulation
|
||
packages that are suitable for use with their facilities.
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"
|
||
>please do not publish my email address or use it for
|
||
advertising</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>We usually strip out e-mail addresses from the published
|
||
version of the column.
|
||
</blockquote>
|
||
<A NAME="linux-questions-only@ssc.comport"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">readdress COM port to 3 or 4</H3>
|
||
|
||
<p><strong>From PJ on 25 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
<BR><BR>
|
||
can you tell me how to readdress COM port2 to port 3 or 4?
|
||
I need to use COM port 2 for other device.
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>No. I can't. You'll want to refer to the documentation
|
||
that should have come with your hardware (this is almost
|
||
certainly a hardware issue that is completely unrelated to
|
||
the OS or software that you're running). The details vary
|
||
among manufacturer, devices and models.
|
||
|
||
<br><br>
|
||
If you have a couple of COM ports built into your
|
||
motherboard it is possible that you can disable or reset
|
||
the I/O addresses, IRQ's and other details for your COM
|
||
ports via the CMOS setup program (the interface through which
|
||
you set the date and time, the hard drive type and geometry and
|
||
various other firmware settings that are stored in extra registers
|
||
of your PC's clock chip --- a chip which uses CMOS technology
|
||
so that it dissipates very low power consumption and is thus
|
||
suitable for operation off of a battery while the system is
|
||
powered down).
|
||
|
||
<br><br>
|
||
This "setup" program is usually (almost always) stored in
|
||
the system firmware (the BIOS ROM's on your motherboard) and
|
||
is typically accessible at boot/power-up via some system dependent
|
||
keystroke. Usually there is a message that is briefly displayed
|
||
to note what the magic keystroke would be --- something like:
|
||
|
||
<blockquote><code> "Press <Del> not to enter Setup"
|
||
</code></blockquote>
|
||
If that doesn't work (either because your COM ports are not
|
||
on your motherboard or for other reasons) you can open up the
|
||
case and look at the various DIP and/or "berg" (jumper pins)
|
||
settings that you'll find. Some of them may be labelled.
|
||
There might also be a manufacturer's mark that might lead you
|
||
to a website or phone number where you can get support and
|
||
documentation for the device.
|
||
|
||
<br><br>
|
||
If you can't find any documentation for some cheap multi-function
|
||
(IDE, floppy, COM, and parallel port) card --- your best bet is to
|
||
buy a new one (typically $10 to $35 US) and toss the old one into
|
||
a drawer as an emergency spare.
|
||
|
||
<br><br>
|
||
As a final note: please consider what it's like to answer such a
|
||
question. You give no details about what sort of system you have,
|
||
what you've tried (do you have any docs, have you looked at them),
|
||
what device you're trying to add (odd that it <EM>must</EM> be on COM2
|
||
--- how do you know that), what OS distribution and software
|
||
you're running, etc.
|
||
|
||
<br><br>
|
||
You send a two line question which cannot be reasonably answered
|
||
in less than fifty. In IRC and on most newsgroups and mailing
|
||
lists you'd either be ignored or flamed. We're all volunteers
|
||
here and the one thing we ask is that you do your homework before
|
||
you post.
|
||
|
||
<br><br>
|
||
I'm not saying this just to sound crabby (if I was going to be
|
||
irate, I'd've just deleted this). If you don't do your homework
|
||
--- and put considerably more thought and energy into your
|
||
questions than you won't get any satisfaction out of the Linux
|
||
community.
|
||
|
||
</blockquote>
|
||
<A NAME="tag_lilostop"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Installed on a Secondary SCSI HD:
|
||
Lilo Stops at LI</H3>
|
||
|
||
<p><strong>From Rick V Smith on 9 Jun 1998</strong></p>
|
||
|
||
<!-- begin body -->
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0">I have installed linux on my second scsi drive
|
||
the swap on a small partition on my first scsi. and lilo on a big mbr for my
|
||
win 95. the start of linux went well but when I shut down and went to restart
|
||
all that happens is <TT>Li</TT> and the system hang's
|
||
|
||
<br><br>
|
||
Any Idea's.
|
||
<br>Thank's Rick
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>I don't know what you mean by "and like on a big mbr"
|
||
--- all MBR's (master boot records) are the same size
|
||
on PC's --- one sector!
|
||
|
||
<br><br>
|
||
It sounds like your BIOS can't "see" the 2nd SCSI drive
|
||
-- so Lilo can't "see" it either. The easiest solution
|
||
would be to install <TT>LOADLIN</TT> into a DOS/Win '96 directory
|
||
--- with a copy of your kernel(s). The kernel doesn't
|
||
rely on the BIOS to access your drives (since it provide
|
||
32 bit native drivers for your SCSI card --- etc) so it
|
||
will find its root filesystem with no problem.
|
||
|
||
<br><br>
|
||
Another think to try is to add the "linear" switch to
|
||
your <TT>/etc/lilo.conf</TT> --- and then rebuild the boot block
|
||
and boot map using the <TT>/sbin/lilo</TT> command. Read the
|
||
lilo man pages and/or look at the lilo "user" and "tech"
|
||
<TT>.dvi</TT> files using xdvi (under X Windows) for details.
|
||
|
||
<br><br>
|
||
There may be other settings that you'll have to tweak to
|
||
get it working. This is particularly true if you have a
|
||
large SCSI drive (my guess is that your second drive is
|
||
bigger than 2 Gb -- and your first one isn't). Look in
|
||
the CMOS/Setup settings (or whatever your SCSI card
|
||
provides) for things that suggest that it is doing something
|
||
"fun" to make the large drive "DOS compatible").
|
||
|
||
<br><br>
|
||
Jim,
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0">I found the following line you wrote in a responce to someone else and
|
||
this cured my hair loss problem, that probably worked better than Rogain.
|
||
Thank's for the time and insight.
|
||
<br>Rick
|
||
|
||
<font color="#003366"><pre>
|
||
# The stanza for booting Linux.
|
||
image = /vmlinuz # The kernel is in /vmlinuz
|
||
label = linux # Give it the name "linux"
|
||
root = /dev/hda2 # Use /dev/hda2 as the root
|
||
filesystem
|
||
vga = ask # Prompt for VGA mode
|
||
append = "aha152x=0x340,11,7,1"
|
||
# Add this to the boot options,
|
||
# for detecting the SCSI controller
|
||
</pre>
|
||
|
||
<A HREF="http://sunsite.unc.edu/LDP/HOWTO/Installation-HOWTO-8.html#ss8.2"
|
||
>http://sunsite.unc.edu/LDP/HOWTO/Installation-HOWTO-8.html#ss8.2</A>
|
||
</font></p></strong>
|
||
<A NAME="tag_emulate"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Running Unix/Linux Under Win '9x</H3>
|
||
|
||
<p><strong>From John Riddoch on the
|
||
<A HREF="news:comp.unix.questions">comp.unix.questions</A> newsgroup
|
||
on 05 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
<br><br>
|
||
<em><font color="#003366">Jeff wrote:
|
||
<br>I need a question answered. I am running Windows 95 and soon 98.
|
||
...
|
||
|
||
|
||
<br><br>
|
||
I was
|
||
wondering if there is any way to run the unix program itself in a
|
||
program window in Win 95,
|
||
</font></em>
|
||
<br><br>
|
||
unix is not a program; it is an operating system. You _<EM>cannot</EM>_
|
||
run two operating systems at the same time on the same hardware. Dual-booting
|
||
is a different matter.
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>And running an OS under simulation or under a VM
|
||
is also a "different matter." Also not that the phrase
|
||
"OS" is not so precisely defined that you can defend this
|
||
position. For example the IBM mainframes support VM's
|
||
(virtual machines) that would allow the concurrent use of
|
||
multiple OS'. Also consider the case of Tenon Systems'
|
||
"MachTen" a microkernel OS that support MacOS running as
|
||
a personality under the microkernel.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"><em><font color="#003366"
|
||
>just like you can run win 95 the same way on a mac.</font></em>
|
||
<br><br>
|
||
???? I sincerely doubt it. Perhaps the mac had an emulator that ran
|
||
win 95 programs. Apart from anything else, win 95 is i386 only and
|
||
won't run on a 68000 (or whatever macs use these days).
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>He's probably referring to
|
||
<A HREF="http://www.connectix.com/html/connectix_virtualpc.html"
|
||
>VirtualPC</A> --- an emulation of the hardware, including CPU, video,
|
||
disk, I/O, and ethernet chipsets. There's also
|
||
<A HREF="http://www.softwindows.com/SoftWindows/Mac/Products/RealPC_brief.html">RealPC</A>.
|
||
These are the most popular PC
|
||
<A HREF="http://www.emulation.net/">emulators under MacOS</A>.
|
||
|
||
<br><br>
|
||
Modern Macs run the G3 (PowerPC) processor, and the performance
|
||
of Win '95 under VirtualPC is tolerable (about equivalent to a
|
||
Pentium 90 on a 250 Mhz G3 Powerbook (laptop) and about a
|
||
Pentium 75 on a 180 Mhz Performa).
|
||
|
||
<br><br>
|
||
Getting back to the original question:
|
||
|
||
<br><br>
|
||
There is a shareware package (distributed as source code
|
||
and available for free evaluation) by Kevin Lawton called Bochs.
|
||
|
||
<br><br>
|
||
This started as a PC emulator (hardware) emulation for Unix
|
||
(including Linux) that is allegedly capable of supporting Win
|
||
'95 under emulation. It apparently isn't quite up to supporting
|
||
NT (apparently the CPU emulation is only 386 and NT requires
|
||
486 or Pentium emulation). For info on that look at the
|
||
Bochs web site:
|
||
(<A HREF="http://world.std.com/~bochs/">http://world.std.com/~bochs/</A>).
|
||
It looks like Kevin will be upgrading the processor emulation
|
||
as time (and possibly funds) allow. Apparently you can
|
||
License this package for $25. (I haven't used it yet, but
|
||
I might send him the money just 'cause I'm so impressed
|
||
by the effort).
|
||
|
||
<br><br>
|
||
I know this doesn't answer the question <EM>Yet</EM> but hang with
|
||
me a moment. Someone named David Ross seems to have ported
|
||
<A HREF="http://v.nu/core/Bochs/">Bochs</A> to the Win32 platform,
|
||
thus allegedly allowing one to run Linux, FreeBSD, or (presumably)
|
||
most other forms of x86 Unix.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"><em><font color="#003366"
|
||
>if you can gimmie a hand and maybe tell me some sites where i can
|
||
download some software please tell me.</font></em>
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0">See above.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0"
|
||
>You might try <A HREF="http://www.linux.org/">http://www.linux.org/</A>
|
||
for a few pointers. Do some web searches for linux and read some stuff.
|
||
RedHat linux 5.0 is a reasonable version which is nicely pre-packaged for
|
||
you and fairly easy to install
|
||
(<A HREF="http://www.redhat.com/">http://www.redhat.com/</A>).
|
||
</p></strong>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0"
|
||
>Having answered the basic question (where can you find
|
||
a PC emulator for Win '9x) I have to add my own suggestion:
|
||
<br><br>
|
||
<div align="center">Don't do it.</div>
|
||
|
||
<br><br>
|
||
You can buy a cheap PC (even an old used 486) for next to
|
||
nothing (I've recently had one 40Mhz 386 given to me for free);
|
||
and you can install Linux on that.
|
||
|
||
<br><br>
|
||
(My main household server is a 10 year old 386/33 with 32
|
||
Mb of RAM. Eventually I'll install some extra RAM and
|
||
a new disk into that "new" 386 and throw it up as an
|
||
extra server on my LAN).
|
||
|
||
<br><br>
|
||
Once you have a machine (give it at least 16Mb and at least
|
||
a 540Mb drive) then you can just slap a null modem between
|
||
it and you desktop machine, or toss in a couple of ether
|
||
cards and a cross-over 10BaseT cord (or even by a little
|
||
4 or 5 port hub). Once that's done you can use a terminal
|
||
package (like Hyperterm, Telix, or K95 -- Columbia U's
|
||
Kermit for Win '9x), or even Kermit for DOS) to connect
|
||
to the Linux box. If you go the ethernet route you can
|
||
use Win '95's '<TT>TELNET.EXE</TT>' or you can still use K95
|
||
(it's also a telnet client --- and it's terminal emulation
|
||
is far less buggy than Microsoft's --- so you won't need
|
||
a custom termcap/terminfo file to run "curses" (Unix/Linux
|
||
"full scree" terminal/console) applications).
|
||
|
||
<br><br>
|
||
There are two reasons for me to suggest this approach:
|
||
|
||
<br><br>
|
||
First, you are likely to be very unhappy with the performance
|
||
of running any form of Unix under emulation. Although
|
||
Linux performs adequately on a 386 with only 16Mb of RAM
|
||
--- and some kernels can run in as little as 2Mb --- you'll
|
||
probably just find emulation to be too frustrating to be useful
|
||
--- particularly when using any Unix networking utilities.
|
||
|
||
<br><br>
|
||
The only two viable reasons I can see for the mode of operation
|
||
that you've requested are:
|
||
|
||
<ul>
|
||
<li>You want to play with Unix to learn it.
|
||
|
||
<li>You want to use <TT>Perl</TT>/<TT>awk</TT>, or other text
|
||
processing tools that are considered to be "Unix" utilities.
|
||
</ul>
|
||
|
||
You won't learn as much about Unix by running it under emulation
|
||
--- and you'll probably end up being too frustrated by its
|
||
performance to come away with a realistic appreciation of it.
|
||
|
||
<br><br>
|
||
In the other case you can get versions of <TT>Perl</TT>, <TT>awk</TT>,
|
||
and most other Unix utilities, shells, editors and many other tools that
|
||
have been <A HREF="http://www.itribe.net/virtunix/">ported to Win32</A>
|
||
(and even to DOS, often using the GNU'ish Go32 "DOS extender").
|
||
|
||
<br><br>
|
||
The other reason for my suggestion is that Linux, even on a
|
||
lowly 386, makes a great server. My box has over 6Gb of online
|
||
storage (which I'll probably double in the 40Mhz) a magneto
|
||
optical drive, a CD-ROM and a CDR recorder, a 4mm DAT
|
||
autochanger, a modem line (which handles uucp, incoming and
|
||
outgoing fax, dial out terminal/BBS'ing, dial in terminal, and
|
||
dial out PPP and will handle dial-up PPP when I get around to
|
||
configuring it), a null modem into the living room (for use from an
|
||
old XT laptop) and some other toys.
|
||
|
||
<br><br>
|
||
The machine has currently been up for about three months.
|
||
|
||
<br><br>
|
||
I forget why I rebooted three months ago, maybe I built a new
|
||
kernel for it or maybe I just made some changes to the startup
|
||
files and wanted to make sure it would come up automatically.
|
||
It's been used as my mail gateway and newserver for a few years
|
||
--- and it was used as my primary interactive machine (mostly
|
||
text editing) for years. My wife and our various house guests
|
||
sometime still use it or the dumb terminal to read their mail
|
||
(if they don't want to use one of the Pentium's in the living
|
||
room or in my bedroom). Sometimes I dial into to it from
|
||
a client site (I'm a consultant) or even from some local
|
||
coffee house using the Ricochet wireless to telco gateway
|
||
(offered in selected areas by Metricom:
|
||
(<A HREF="http://www.metricom.com/">http://www.metricom.com/</A>).
|
||
|
||
<br><br>
|
||
You can use Linux as a gateway. Its kernel offers an optional
|
||
feature called "IP Masquerading" which is a special form of
|
||
"network address translation" (NAT) that allows you to hide a
|
||
whole network of computers (using "private net IP addresses"
|
||
like <TT>10.*.*.*</TT>, <TT>192.168.*.*</TT> and others defined in the
|
||
RFC 1918). It is trivial to install a package called '<TT>diald</TT>'
|
||
that will dial up your ISP on demand (automatically when any of
|
||
you computers try to access the Internet -- or any other
|
||
non-local nets) and will automatically drop the line after
|
||
a configurable period of inactivity. This puts virtually
|
||
no load on a machine (not measurable on my 386!).
|
||
|
||
<br><br>
|
||
Another handy server role you can assign to your Unix box
|
||
(Linux or otherwise) is as a household schedule/reminder
|
||
service. The Unix '<TT>cron</TT>' and '<TT>at</TT>' facilities are just
|
||
perfect for this. You can write simple scripts and
|
||
schedule them for periodic execution (<TT>cron</TT>) or for one
|
||
time execution in the future (<TT>at</TT>). With slightly more
|
||
complex scripts (using the GNU '<TT>date</TT>' command, and
|
||
simple shell conditionals and tests) you can do
|
||
arbitrarily complex scheduling. It is truly easy to
|
||
set this up to automatically e-mail you reminders
|
||
post them to your "intranet web server" or to even page
|
||
you (using a normal modem) as an alarm service.
|
||
|
||
<br><br>
|
||
Eventually I expect someone to release a set of CGI scripts
|
||
to act as a front end to a reminder/alarm service --- which
|
||
you could toss up on your "intranet" server.
|
||
|
||
<br><br>
|
||
Using a little box as an "intranet" web server for a
|
||
household or small business also takes almost no memory
|
||
or CPU power on a Linux or FreeBSD box. I think the
|
||
overhead is about 70K for a small web server, and you can
|
||
even configure them to be "dynamically" loaded if you're
|
||
really pressed for RAM. The little box can also function
|
||
as a fileserver for you Win '95 box by using Samba, a Unix
|
||
package that provides Windows/NT compatible file sharing.
|
||
It's easy to run all of these functions on the same box,
|
||
they don't conflict with one another at all, and most of
|
||
them present very little load on the server.
|
||
|
||
<br><br>
|
||
On top of all that you can use the old clunker to run household
|
||
appliance over the old BSR X-10 "Powerhouse" interface (also sold as
|
||
"ActiveHome"). Larry Wall just gave a talk at the
|
||
<A HREF="http://www.svlug.org/">Silicon Valley Linux user's group</A>
|
||
showing us a demo of how he's automated his house. It was
|
||
incredibly amusing. He has a detector on his clothes
|
||
dryer, in the garage, that announces through the household
|
||
PA system when the laundry is done; and motion sensors
|
||
on the walk way leading up to the front door to announce
|
||
visitors, and scripts to tell his wife and kids when they get
|
||
mail (presumably he gets too much mail to want such an
|
||
announcment for himself).
|
||
|
||
<br><br>
|
||
Naturally you can put a sound card in the PC and run
|
||
PA/Speakers off of it to do various cool things.
|
||
|
||
<br><br>
|
||
The point is that you can't do all of this when you're
|
||
running Unix in an emulator under Win '95 (since the
|
||
chances are too great that you'll need to reboot it, and
|
||
also since your emulator won't have access to most of
|
||
the hardware that we're talking about --- it can only
|
||
access the virtual/emulated hardware. The other problem
|
||
is that Win '95 is generally not nearly as stable as
|
||
any form of Unix. Even NT doesn't come close to Linux,
|
||
FreeBSD, or any of the popular forms of Unix for stability.
|
||
|
||
<br><br>
|
||
For the same reasons you won't benefit nearly as much from
|
||
a dual or multi boot configuration. There's not much point
|
||
to having a "server" that you keep rebooting to play
|
||
<A HREF="http://www.idsoftware.com/archives/doomarc.html">Doom</A>
|
||
(which is available for Linux, BTW) or to read that MS
|
||
Word document.
|
||
|
||
<br><br>
|
||
Although I've focused on Linux (and I prefer it for my
|
||
personal use) all of what I've said applies to
|
||
<A HREF="http://www.freebsd.org/">FreeBSD</A>,
|
||
<A HREF="http://www.netbsd.org/">NetBSD</A>, and
|
||
<A HREF="http://www.openbsd.org/">OpenBSD</A> among others.
|
||
(There are some differences, the *BSD's don't have their NAT/masquerading
|
||
and packet filtering in the kernel -- it's run as a
|
||
user process, things like that. If you're learning
|
||
Unix for professional reasons I'd definitely suggest that
|
||
you clock in some time and practice on any one of the
|
||
BSD systems as well as on a Linux box. Potential employers
|
||
(in Unix savvy companies) will be far more intrigued by
|
||
entry level applicants who've worked with BSD.
|
||
|
||
<br><br>
|
||
Also, if you want to play with the X Window system (the
|
||
dominant tehnology for supporting GUI's under Unix ---
|
||
though, technically, it is a communications protocol and
|
||
programming API --- and not a "GUI") you won't want to
|
||
run it on less than a Pentium. In that situation I'd
|
||
put one (character only) installation on the cheap/used
|
||
PC and install a dual boot configuration on your main
|
||
(Win '95) workstation. The best way to do that is to
|
||
install an extra hard drive on the workstation (so you
|
||
don't need to repartition your existing drives).
|
||
|
||
<br><br>
|
||
Even you decide to put one of the BSD's on your cheap/used
|
||
server you should probably still put Linux on your
|
||
Win '9x workstation. There are two reasons for this:
|
||
|
||
<ol>
|
||
<li>there are more commercially available
|
||
productivity applications available for Linux
|
||
(WordPerfect, StarOffice, Applixware, Cliq,
|
||
Wingz, etc).
|
||
|
||
<li>Linux has <EM>very</EM> good support for DOS, and
|
||
Windows filesystems (and even some, read-only
|
||
and even NTFS and HPFS). You can even install
|
||
a small Linux distributions directly into a
|
||
DOS subdirectory.
|
||
</ol>
|
||
|
||
You could install Linux on the workstation and have it
|
||
access most of its files (almost all of them) over the
|
||
network (over NFS). All you need on a Unix box is a
|
||
fairly small "root" filesystem. 20 Mb is enough for
|
||
all the "root" files (all you <EM>really</EM> need is
|
||
<TT>/etc</TT>, <TT>/dev/</TT>, and <TT>/sbin</TT>
|
||
-- the rest can all be mounted
|
||
over the LAN though I'd suggest adding a local swap
|
||
file or partition, and a local <TT>/tmp</TT> directory).
|
||
|
||
<br><br>
|
||
If you do an installation like this: (with one server
|
||
installation on a dedicated PC and another on your
|
||
workstation -- say FreeBSD on the server and Linux
|
||
on a multi-boot for your Win '9x box) you'll get the
|
||
maximum benefits and you'll learn enough about Unix
|
||
to qualify for professional work in the field.
|
||
|
||
<br><br>
|
||
So, in conclusion: You won't learn nearly as much about
|
||
Unix from any form of "emulation" or dual-boot arrangement.
|
||
The principle advantage of Unix has always been the client
|
||
server model it uses. Unix "wants" to be a server. It's
|
||
as important to learn this philosophy as it is to learn
|
||
the syntax for a couple hundred Unix commands. So, that's
|
||
the best approach to installing and learning it around your
|
||
house.
|
||
</blockquote>
|
||
<A NAME="tag_ppadrivers"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">winprinters & MTAs</h3>
|
||
<H4>Pointers and Corrections</H4>
|
||
|
||
<p><strong>From John Levon on 05 Jun 1998
|
||
<!-- begin body -->
|
||
<br><br>
|
||
|
||
Hi, two points:
|
||
|
||
<br><br>
|
||
1) for win printers, someone has written a PPA driver. i don't have
|
||
the URL, but it was mentioned in 2 cent tips a while ago i think.
|
||
This possibly enables win printers to be used with linux
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
In fact I had heard of it. However, it had not progressed
|
||
far enough along, last I checked, to be worth mention in
|
||
LG. It's a tough call for me whether to go dig up the
|
||
latest scoop on a digression or whether to gloss over it
|
||
in the interests of conveying the more important message.
|
||
|
||
<br><br>
|
||
The important message is that "Winprinters" and "Winmodems"
|
||
are a big lose for everyone involved (even for Windows '95
|
||
users, who may find them "abandoned" in future versions of
|
||
Windows and NT). These are not "progressive" developments
|
||
in the hardware market. The other important message is
|
||
that we shouldn't have to reverse engineer these protocols.
|
||
|
||
<br><br>
|
||
While I admire the heroic efforts of people like Andrew
|
||
Tridgell (original architect of Samba, who implemented it
|
||
by analysis of the packets off "the wire")
|
||
|
||
<br><br>
|
||
For those that are interested in some info on the
|
||
HP PPA printer drivers for Ghostscript and Linux look at:
|
||
|
||
<dl><dt>Ghostscript Printer Compatibility
|
||
<dd><A HREF="http://www.cs.wisc.edu/~ghost/printer.html"
|
||
>http://www.cs.wisc.edu/~ghost/printer.html</A>
|
||
</dl>
|
||
... and follow their link to:
|
||
|
||
<dl><dt>(Tim Norman's) PPA for the masses
|
||
<dd><A HREF="http://www.rpi.edu/~normat/technical/ppa/index.html"
|
||
>http://www.rpi.edu/~normat/technical/ppa/index.html</A>
|
||
</dl>
|
||
... and for other printer stuff for Linux try Goob's:
|
||
|
||
<dl><dt>Linux Links: Software : Utilities : Printer
|
||
<dd><A HREF="http://www.linuxlinks.com/Software/Utilities/Printer/"
|
||
>http://www.linuxlinks.com/Software/Utilities/Printer/</A>
|
||
</dl>
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">
|
||
2) instead of www.faq.org, try <A HREF="http://www.faqs.org/">www.faqs.org</A>.
|
||
this is a top site that automatically contains HTML versions of FAQs on
|
||
<A HREF="ftp://rtfm.mit.edu/">rtfm.mit.edu</A>
|
||
<BR><BR>
|
||
thanks,
|
||
<br>john.
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
Doh! I looked for that by memory and tried "faq.org" first.
|
||
I didn't think to try "faqs.org" (and it wasn't in the
|
||
bookmark file on the machine I was typing from at that
|
||
moment). I remember being impressed with faqs.org and
|
||
as disappointed when I look "back" (finding the wrong one).
|
||
|
||
<br><br>
|
||
Thanks for catching that!
|
||
</blockquote>
|
||
<A NAME="tag_database"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Dreaming about xBase tools for Linux</H3>
|
||
|
||
<p><strong>From Michael "Mookie" Kepler on the
|
||
<A HREF="http://www.ch4549.org/lust/lusthome.html">L.U.S.T</A> List
|
||
on 04 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
<br><br>
|
||
<em><font color="#003366">Is there a FoxPlus program for Linux ?
|
||
When I use the SCO FoxPlus on Linux with <TT>iBCS</TT> module running,
|
||
it can not read the data files.
|
||
<br><br>
|
||
Thanks,
|
||
<br>Jyh-shing Chen
|
||
</font></em>
|
||
<br><br> Michael "Mookie" Kepler
|
||
<br><br>Ha! Dream on! I'm decloaking and posting just because I'm
|
||
glad to meet another living dinosaur. I, too, have too much
|
||
experience with and an irrational attachment to FoxPlus.
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
I presume Fox-Plus is an xBase product related or
|
||
similar to FoxPro. If so you might look at WorkGroup
|
||
Solutions "Flagship"
|
||
(<A HREF="http://www.wgs.com/fsad.html">http://www.wgs.com/fsad.html</A>).
|
||
|
||
<br><br>
|
||
This is a full dBase compatible system, and xBase
|
||
compiler. (Actually I think it does a "compile to
|
||
C" --- then you'd use <TT>gcc</TT> to actually produce your
|
||
binaries. That makes it more portable I suppose).
|
||
|
||
<br><br>
|
||
You could also look at Christopher B. Browne's
|
||
incredible annotated link farm of Linux business and
|
||
productivity applications:
|
||
|
||
<blockquote><code><A HREF="http://www.hex.net/~cbbrowne/"
|
||
>http://www.hex.net/~cbbrowne/</A>
|
||
</code></blockquote>
|
||
... which has a page specifically one xBase dbms packages
|
||
for Linux at: <A HREF="http://www.ntlug.org/~cbbrowne/rdbms05.html"
|
||
><TT>http://www.ntlug.org/~cbbrowne/rdbms05.html</TT></A>
|
||
|
||
<br><br>
|
||
Oddly enough Christopher doesn't mention
|
||
<A HREF="http://www.versasoft.com/">Versasoft</A>'s dbMan
|
||
(dbMan IV or dbMan 5.x). Perhaps the product has been
|
||
discontinued. I couldn't find any URL for it though there
|
||
are a number of references. I just guessed at "versasoft.com"
|
||
and glanced at their web site, which only mentions one
|
||
product (VersaTOOLS; a FoxPro add-on?). I've blind-copied
|
||
the one e-mail address listed thereon, so that he can
|
||
respond with any info on the fate of dbMan, if he feels so
|
||
inclined.
|
||
|
||
<br><br>
|
||
So in answer to your question:
|
||
|
||
<br><br>
|
||
Yes! Dream on! There are dbms apps for Linux,
|
||
and you DON'T have to use SQL.
|
||
|
||
<br><br>
|
||
(Also, if you ever want to work with a dbms package that's
|
||
less like "DOS" and xBase, nothing like SQL and more like Unix
|
||
shell script programming, look at Revolutionary Software's
|
||
package: <A HREF="http://www.rdb.com/"><TT>/rdb</TT></A> -- they have a
|
||
Linux version. Apparently this <TT>/rdb</TT> is related to Rand/Hobbs
|
||
RDB -- <A HREF="http://www.ntlug.org/~cbbrowne/rdbms07.html"
|
||
>Christopher's pages</A> talk about this a little bit.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">
|
||
I made my living pushing the limits of Sco FoxPlus for five
|
||
years, starting in 1989, making it do things it was never
|
||
meant to do. It is frustrating that so many people think
|
||
that SQL and Relational are synonyms, and that Relational
|
||
and XBase are mutually exclusive. Every database application
|
||
I created with FoxPlus conformed to the Relational data
|
||
model. There is nothing in FoxPlus to prevent this.
|
||
|
||
<br><br>
|
||
Please let me know if you find anything FoxPlus-esque that
|
||
works under Linux. I've been looking myself and have found
|
||
nothing comparable. If they would just release the source
|
||
code, we could get somewhere. Whenever I encounter a trivial
|
||
programming task, especially ones involving tabular data, I
|
||
always think of how much quicker and easier it would be to
|
||
turn it out in FoxPlus than 'C', or _<EM>shudder</EM>_ PlSql (yuck!).
|
||
</strong></p>
|
||
<p><hr width="40%" align="center"></p>
|
||
<p><strong><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">From Thomas Good on the L.U.S.T List on 5 Jun 1998
|
||
|
||
<BR><BR>
|
||
Jim - I have the opposite problem. I want to lose foxpro in favour
|
||
of SQL. I run an odd mix of dbs including Postgres, Progress and FoxPro.
|
||
The foxpro is sitting on a dos box and is need of extinction. It is
|
||
(obviously) single user and so the person who sits on the box has to do
|
||
all of the data input and answer the phone - doing queries as requested.
|
||
|
||
<br><br>
|
||
I am moving her data onto a linux box and I want to shift the code from
|
||
foxpro to SQL. Any converters out there? Front end is not too important
|
||
as I will use <TT>perl</TT> (5 with DBI 0.91 and DBD-Pg 0.69). I just need to
|
||
rework the existing queries...thanks!
|
||
|
||
<br><br>
|
||
Tom
|
||
|
||
<br><br>
|
||
----------- Sisters of Charity Medical Center ----------
|
||
<br> Department of Psychiatry
|
||
<br>Thomas Good, System Administrator
|
||
<br>North Richmond CMHC/Residential Services
|
||
</p></strong>
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
Look at Christopher's web pages (I cited it in my
|
||
longer message but it's at: <A HREF="http://www.hex.net/~cbbrowne/"
|
||
>http://www.hex.net/~cbbrowne/</A>)
|
||
|
||
<br><br>
|
||
Specifically he lists a some conversion utilities and
|
||
.DBF libraries at: <A HREF="http://www.ntlug.org/~cbbrowne/rdbms05.html"
|
||
>http://www.ntlug.org/~cbbrowne/rdbms05.html</A>
|
||
|
||
<br><br>
|
||
Also don't forget to check the LSM (Linux Software Map).
|
||
Here's a couple of entries from there (not listed on CBB's
|
||
pages):
|
||
|
||
<pre>
|
||
.......
|
||
|
||
Title: Light DBF client/server dbms (LDBF)
|
||
Version: 0.9.9 beta
|
||
Entered-date: 17NOV95
|
||
Description: This is client/server dbms that operate with
|
||
DBF files and compatible with Foxpro CDX indexes.
|
||
Clients connecting with server via TCP/IP
|
||
and works with databases as on local machine.
|
||
Supports transactions,multi-user operation,
|
||
stored procedures,triggers,
|
||
password security,logging all operations,
|
||
flexible configuration.Implemented main suite of
|
||
xBase operators.
|
||
Includes DLL of LDBF API for Windows.
|
||
Keywords: LDBF,ldbf
|
||
Author: vlad@torn.ktts.kharkov.ua (Vlad Seriakov)
|
||
Maintained-by: vlad@torn.ktts.kharkov.ua
|
||
Primary-site: sunsite.unc.edu (<A HREF="ftp://sunsite.unc.edu/pub/Linux/Incoming/">/pub/Linux/Incoming</A>)
|
||
707 Kb ldbf-0.9.9.tar.gz
|
||
930 b ldbf.lsm
|
||
Alternate-site: ftp.kiae.su ( <A HREF="ftp://ftp.kiae.su/linux/misc/">/linux/misc</A> )
|
||
Original-site:
|
||
Platforms: Linux 1.2.0 or later with IPC support
|
||
Copying-policy: Freeware
|
||
|
||
.......
|
||
|
||
Title: dbview
|
||
Version: 1.0.0
|
||
Entered-date: 20APR96
|
||
Description: dbview is a little tool that will display dBase III and
|
||
IV files. You can also use it to convert your old .dbf
|
||
files for further use with Unix.
|
||
Keywords: database dbase view convert
|
||
Author: joey@infodrom.north.de (Martin Schulze)
|
||
Maintained-by: joey@infodrom.north.de (Martin Schulze)
|
||
Primary-site: sunsite.unc.edu <A HREF="ftp://sunsite.unc.edu/pub/Linux/apps/databases/">/pub/Linux/apps/databases</A>
|
||
10kB dbview-1.0.0.tar.gz
|
||
Original-site: ftp.infodrom.north.de <A HREF="ftp://ftp.infodrom.north.de/pub/Linux/Devel/dbview/">/pub/Linux/Devel/dbview</A>
|
||
10kB dbview-1.0.0.tar.gz
|
||
Copying-policy: GPL
|
||
|
||
.......
|
||
Title: libdbf
|
||
Version: 1.4
|
||
Description: Tools for manipulating dBase files
|
||
Keywords: unix dbase
|
||
Author: beacker@sgi.com
|
||
Maintained-by: Nobody to my knowledge
|
||
Primary-site: Wherever you put it.
|
||
Original-site: news::comp.sources.misc
|
||
Platforms: Unix (This copy linuxified)
|
||
Copying-policy: No commercial use, no charging for distribution (see README).
|
||
Entered-date: 01JAN96
|
||
</pre>
|
||
|
||
<br><br>
|
||
Those were all found just using the "dbf" search string
|
||
on a local copy of the LSM (just a text file I keep around
|
||
since I do so much Linux support work).
|
||
|
||
<br><br>
|
||
There's are several Linux Software Map search engines
|
||
and searchable Linux Software Database sites out on the
|
||
web. I don't even have a "favorite" one any more.
|
||
|
||
<br><br>
|
||
Try:
|
||
<dl><dt>Linux Search Database
|
||
<dd><A HREF="http://www.egypt.pca.net/LSDB/lynx.html"
|
||
><TT>http://www.egypt.pca.net/LSDB/lynx.html</TT></A>
|
||
</dl>
|
||
|
||
... which found this one:
|
||
|
||
<br><pre>
|
||
Title: AppGEN
|
||
Version: 0.2 alpha
|
||
Entered Date: 11JUL96
|
||
Description: Database application generator and 4GL for Postgres95 and
|
||
HTTPD. DBase DBF file to SQL Convertor.
|
||
Key Words: Application Generator 4GL SQL Web WWW Forms Postgres95 DBF
|
||
Author: Andrew Whaley
|
||
Primary Site: sunsite.unc.edu <A HREF="ftp://sunsite.unc.edu/pub/Linux/apps/databases/postgres/">/pub/Linux/apps/databases/postgres</A>
|
||
appgen-0.2-alpha.tar.gz
|
||
Alternate Site: GPL'ish End
|
||
</pre>
|
||
|
||
<br><br>
|
||
... or try:
|
||
<dl><dt>Linux Links (by Goob!) at:
|
||
<dd><A HREF="http://www.croftj.net/~goob/"
|
||
><TT>http://www.croftj.net/~goob/</TT></A>
|
||
</dl>
|
||
(The search engine is not too hot, but the hierarchy of
|
||
links is <EM>great</EM>). There is a reference there to a
|
||
semi-free package called X2c (the portable xBase compiler).
|
||
X2c seems to have some features for creating binary CGI
|
||
interfaces to your DBF databases. Which might be an alternative
|
||
to converting it to SQL, if you aren't worried about some
|
||
of the concurrency and integrity and business rules enforcement
|
||
that are associated with SQL --- or even if you just need a
|
||
quick interim solution to use while you're doing the xBase to
|
||
SQL port.
|
||
|
||
<br><br>
|
||
Another place to check into is:
|
||
|
||
<dl><dt>The #LinuxOS Webpage: Linux Software Search Engines and Indices
|
||
<dd><A HREF="http://www.linuxos.org/Lsoftsearch.html"
|
||
><TT>http://www.linuxos.org/Lsoftsearch.html</TT></A>
|
||
</dl>
|
||
|
||
As the name suggests that site is maintained by principals
|
||
of the #LinuxOS IRC channel on EFNet and it contains a list
|
||
of Linux link farms, search engines and indices (what a
|
||
surprise!).
|
||
|
||
<br><br>
|
||
So, I'd say there's plenty of places to look.
|
||
</blockquote>
|
||
<p><hr width="40%" align="center"></p>
|
||
<p><strong><img src="../gx/dennis/qbub.gif" height="28" width="50"
|
||
alt="(?)" border="0">From Michael Kepler on the
|
||
L.U.S.T List on 5 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
<br><br>
|
||
I'd just like to thank you (Jim Dennis) for your very comprehensive and
|
||
helpful responses to the XBase question. I had no idea there were so
|
||
many database options available for Linux. I joined this conversation
|
||
out of idle personal interest, but now I think I see some possibilities
|
||
for solutions for current needs we have at our company.
|
||
|
||
<br><br>
|
||
Thanks again,
|
||
|
||
<br><br>
|
||
Michael Kepler
|
||
<br>VP Systems Development
|
||
<br>Metro One Telecommunications
|
||
</p></strong>
|
||
<A NAME="tag_vacation"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">auto response for email ?</H3>
|
||
|
||
<p><strong>From Ted via the
|
||
<A HREF="http://www.ch4549.org/lust/lusthome.html">L.U.S.T</A> List
|
||
on 04 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
<BR><BR>
|
||
Whatever you do, don't do this if you are on a mailing list. Think about
|
||
the consequences...
|
||
|
||
<br><br>
|
||
Ted the Lurker
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
Ted, when replying to L.U.S.T. messages,
|
||
please remove the extraneous quoting.
|
||
</blockquote>
|
||
|
||
<p><strong><em><font color="#003366"
|
||
><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">
|
||
Hi,
|
||
<br><br>
|
||
How does one set up <TT>sendmail</TT> for automatically responding to an email
|
||
indicating that one is out of the office and will be responding to
|
||
the incoming emails at a later date ?
|
||
|
||
<br><br>
|
||
Thanks,
|
||
<br>Jyh-shing Chen
|
||
</font></em></strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
Normally one doesn't set up '<TT>sendmail</TT>' to do the
|
||
automated response. Normally one would put in a
|
||
<TT>.forward</TT> file with something like:
|
||
|
||
<blockquote><code> "| /usr/local/bin/vacation...."
|
||
</code></blockquote>
|
||
(or something like that).
|
||
|
||
<br><br>
|
||
There is an old program named "<TT>vacation</TT>" (written by
|
||
Eric Allman, author of <TT>sendmail</TT>) which can be used for
|
||
this purpose. You can read the man page for it if you
|
||
like. It does some checks to prevent replies to
|
||
mailing lists (looks for a "<TT>Precedence: bulk</TT>" header
|
||
line) and system accounts (Mailer-Daemon, Postmaster,
|
||
etc). It also maintains a "cache" of addresses to which
|
||
the "vacation message" (or other auto-response) has been
|
||
sent to prevent spurious (and very annoying) duplicate
|
||
responses to the same address.
|
||
|
||
<br><br>
|
||
(In other words, if you really are "on vacation" and
|
||
someone routinely copies you on some sort of mail, usually
|
||
as part of a workgroup list, they only need to hear about
|
||
it once. I think <TT>vacation</TT> defaults to an eight day limit
|
||
between responses).
|
||
|
||
<br><br>
|
||
That would be one way one <EM>might</EM> do it.
|
||
|
||
<br><br>
|
||
However, this is Linux and there are even better ways.
|
||
Most Linux distributions default to '<TT>sendmail</TT>' as the
|
||
MTA (mail transport agent) and use <TT>procmail</TT> as the MDA
|
||
(mail delivery agent). (You presumably use <TT>elm</TT>, <TT>pine</TT>,
|
||
<TT>MH</TT>, or whatever you like as your MUA --- mail user agent).
|
||
|
||
<br><br>
|
||
'<TT>procmail</TT>' is a "mail processing package" consisting of a
|
||
few small programs that you call upon via your own <TT>.procmailrc</TT>
|
||
scripts. I wrote an
|
||
<A HREF="http://www.linuxgazette.com/issue14/">article</A>
|
||
about them for Linux Gazette about a year ago. You can still find it,
|
||
and some hot links, at the
|
||
<A HREF="http://www.linuxgazette.com/">http://www.linuxgazette.com/</A>
|
||
web site.
|
||
|
||
<br><br>
|
||
The <TT>procmail</TT> documentation is a bit confusing so let me offer
|
||
a couple of quick notes: <TT>procmail</TT> is a very simple scripting
|
||
language. A <TT>procmail</TT> program consists of a list of "recipes"
|
||
When an item arrives (is delivered via <TT>procmail</TT>) the
|
||
<TT>procmail</TT> binary traverses the script from the top, scanning
|
||
for the beginnings of recipes (usually starting with a line
|
||
like):
|
||
|
||
<blockquote><code>:0
|
||
</code></blockquote>
|
||
... or
|
||
<blockquote><code>:0 B
|
||
</code></blockquote>
|
||
(where <TT>B</TT> is a "flag" --- and there are several of those which
|
||
mean different things).
|
||
|
||
<br><br>
|
||
The rest of each recipe consists of some number of "conditions"
|
||
(patterns) and <EM>one</EM> "action" (disposition). Each of the
|
||
condition lines is of the form:
|
||
|
||
<blockquote><code>* ^From:.*foo...
|
||
</code></blockquote>
|
||
|
||
... where <TT>^From:.*foo...</TT> is a regular expression that is
|
||
checked against portions of the mail message that is currently
|
||
"in hand" (as it were). Usually your patterns will only be
|
||
applied to the messages headers. If you use the <TT>B</TT> flag on the
|
||
recipe line or you can put flags on your condition lines
|
||
using a syntax like: <TT>* B ?? $PATTERN</TT> (where you replace
|
||
<TT>$PATTERN</TT> with the regex for your pattern).
|
||
|
||
<br><br>
|
||
All of the conditions which are logically AND'ed for each
|
||
recipe --- so something like:
|
||
|
||
<blockquote><code>:0
|
||
<br>* ^From: joe.*
|
||
<br>* ^Precedence: bulk
|
||
</code></blockquote>
|
||
... would match mail that was from joe (in this case <EM>any</EM>
|
||
joe at <EM>any</EM> address) AND had a header indicating that is
|
||
was of "bulk" precedence.
|
||
|
||
<br><br>
|
||
After any/all of your condition lines, in a given recipe
|
||
you have an action line. The actions you can take are:
|
||
|
||
<dl><dd>"file it"
|
||
<br>"forward it"
|
||
<br>"pipe it into a program" (such as an autoreply 'bot).
|
||
</dl>
|
||
To "forget it" you just "file it" to <TT>/dev/null</TT>. In general
|
||
any filename on the action line will be consider to be a
|
||
mail folder. Any filename with no path elements will be
|
||
considered standard mbox (elm/pine compatible) folder under
|
||
your <TT>~/Mail</TT> directory (??). (Normally you'll have a
|
||
<TT>MAILDIR</TT> variable set. You can assign and reference variables
|
||
in <TT>procmail</TT> in pretty much the same ways as in <TT>sh</TT>
|
||
(Bourne shell)).
|
||
|
||
<br><br>
|
||
A name that refers to a directory will cause <TT>procmail</TT> to
|
||
write each message into a separate file in that directory
|
||
(this is called a "directory folder"). If you use a folder
|
||
of the form: <TT>foo/.</TT> then procmail will write the messages
|
||
into the <TT>$MAILDIR/foo/</TT> directory using an MH compatible name
|
||
and format.
|
||
|
||
<br><br>
|
||
To forward your mail you start the action line with a "<TT>!</TT>"
|
||
(bang) and simply give it an address. Be <EM>very</EM> careful
|
||
about forwarding to any address that might have its own
|
||
<TT>procmail</TT> or other forwarding agent attached. Otherwise
|
||
you'll create a mail loop. For this reason most <TT>procmail</TT>
|
||
wizards never use the "<TT>!</TT>" forwarding operator --- they
|
||
pass the message to a pipe, adding their own headers and
|
||
formatting the message to the new address (still forwarding
|
||
it -- but with some checks and changes in the headers).
|
||
|
||
<br><br>
|
||
So, here's how you pipe the message (to forward or autoreply)
|
||
You start your action line with a <TT>|</TT> (pipe) symbol and
|
||
the rest is just the command line. The procmail suite comes
|
||
with a program called '<TT>formail</TT>' (FORmat some MAIL headers).
|
||
|
||
<br><br>
|
||
So if you pipe mail to <TT>formail</TT> with the "<TT>-r</TT>" switch
|
||
it will format a "reply" and if you add the <TT>-A</TT> switch it will
|
||
"Add" a custom header line (replacing any previously matching header).
|
||
|
||
<br><br>
|
||
Here's an example:
|
||
|
||
<blockquote><code>:0
|
||
<br>* !^FROM_MAILER
|
||
<br>* !^FROM_DAEMON
|
||
<br>* < 10000
|
||
<br>* ^Subject: info
|
||
<br>* !^X-Loop: info@starshine.org
|
||
<br>| ((formail -rk -A "Precedence: junk" \
|
||
<br>-A "X-Loop: info@starshine.org" ; \
|
||
<br>echo "Info Request received on:" `date`) \
|
||
<br>| $HOME/insert.doc -v file=$DOC/general.info) | $SENDMAIL -t -oi -oe
|
||
</code></blockquote>
|
||
|
||
... note this one is unusually complex since I am "keeping"
|
||
the senders message, checking if the whole thing is over
|
||
10K, appending the date on which I received the message,
|
||
and inserting (via a two line awk script named "insert.doc")
|
||
a response. Also those "<TT>FROM_MAILER</TT>" and "<TT>FROM_DAEMON</TT>"
|
||
patterns are a couple of "magic" patterns that <TT>procmail</TT>
|
||
recognizes --- they are actually expanded to some hefty
|
||
regexes internally.
|
||
|
||
<br><br>
|
||
... in other words, this action line is doing alot more than
|
||
most auto-reply. The point is that I can use <TT>formail</TT> to
|
||
create the reply headers (which it gets by filtering the
|
||
header as <TT>procmail</TT> passes the header and body of the mail into
|
||
the pipe). I can then ship the results of that to some
|
||
other process (to do other processing on the body or whatever)
|
||
and finally passing that all to a copy of <TT>sendmail</TT> (the
|
||
full, local path to which is conveniently stored in the
|
||
<TT>$SENDMAIL</TT> variable). The <TT>-t</TT> switch on
|
||
'<TT>sendmail</TT>' means:
|
||
"Take the 'to' addresses from the headers on your standard
|
||
input" --- this is the safest and cleanest way to pipe
|
||
messages into <TT>sendmail</TT>.
|
||
|
||
<br><br>
|
||
That's a short course on <TT>procmail</TT>. The tutorial I wrote for
|
||
Linux Gazette is even more basic than that --- so if I rattled
|
||
through some of that too fast: go read it.
|
||
|
||
<br><br>
|
||
One last note: There are 5 man pages on <TT>procmail</TT>, one for
|
||
the binary, one on the rc file syntax (the programming language)
|
||
one that's full of examples, and another on the "weighted
|
||
scoring" extensions (which allow you to add and subtract
|
||
values to a "weight" using various conditional patterns,
|
||
which can be sensitive to how many times a pattern appears
|
||
in a message --- so you could automatically descriminate
|
||
against messages that were more than have "quoted" lines).
|
||
|
||
<br><br>
|
||
The weighted scoring stuff is high wizardry --- I don't use
|
||
it. The examples are mostly suitable for cut and paste.
|
||
|
||
<br><br>
|
||
Keep in mind that you can call all sorts of programs,
|
||
not just '<TT>formail</TT>' --- so you could write a simple
|
||
<TT>procmail</TT> script call on a "<TT>sendpage</TT>" program when
|
||
someone really important sends you mail about something "really
|
||
important"
|
||
|
||
<br><br>
|
||
Also '<TT>formail</TT>' has the <TT>-D</TT> switch, which means one
|
||
thing if used in conjunction with -r (the combo means,
|
||
"Don't duplicate" our reply -- like vacation; where it checks
|
||
for the ). It means something else when used without the <TT>-r</TT>
|
||
(don't deliver to this folder if this is a duplicate according
|
||
to the <TT>Message-ID:</TT> header line). Both meanings have
|
||
quite a bit to do with "duplication" --- but are much different
|
||
in usage.
|
||
|
||
<br><br>
|
||
If you subscribe to lists, like L.U.S.T, I suggest <TT>procmail</TT>
|
||
for auto sorting your mail. When you want to add auto replies
|
||
--- even if you're just going to call on Eric's '<TT>vacation</TT>'
|
||
program, you should add that as a recipe <EM>after</EM> any
|
||
procmail sorting (and spam filtering) and <EM>with</EM> the
|
||
<TT>* !^FROM_</TT> and <TT>X-Loop:</TT> patterns. That will prevent
|
||
auto-replies to mailing lists that don't put in their
|
||
"<TT>Precedence: Bulk</TT>" line, and that might be from daemons and
|
||
mailers (other auto responders) that '<TT>vacation</TT>' doesn't "see"
|
||
('<TT>procmail</TT>' and '<TT>formail</TT>' are more
|
||
recent and benefit from a few more years of experience with
|
||
Internet "standards drift").
|
||
|
||
<br><br>
|
||
One of these days I may write a whole book on procmail.
|
||
It would be pretty short (like the O'Reilly '<TT>vi</TT>' book, or
|
||
their one on "termcaps"). It's a very powerful utility that
|
||
currently is passed on as an "oral tradition" among sysadmins
|
||
and Unix hacks. I think I heard that
|
||
<A HREF="http://www.imada.ou.dk/~blackie/dotfile/">TDG</A> (the
|
||
dotfile generator)
|
||
provides a menu-driven (GUI?) front end to creating <TT>.procmailrc</TT>
|
||
files --- among many others. That would probably be a good
|
||
place to look for more info. <em>[He may have read about it in
|
||
<A HREF="http://www.linuxgazette.com/issue17/dotfile.html"
|
||
>issue 17's article</a> -- Heather]</em>
|
||
|
||
</blockquote>
|
||
<A NAME="tag_nullmodem"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Connecting Linux to Win '95 via Null Modem</H3>
|
||
|
||
<p><strong>From Chris Gushue on 04 Jun 1998
|
||
|
||
<!-- begin body -->
|
||
<BR><BR>
|
||
I have two systems, a 486 and a K6, and I was wondering how (if) I could
|
||
connect them using a serial (null modem) cable. One system will be running
|
||
Windows 98, the other running Linux. I can't seem to find any info on the
|
||
LDP or other webpages. Thanks.
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
Certainly you can connect them for some purposes.
|
||
|
||
<br><br>
|
||
I don't know anything about Win '98 but I presume it
|
||
comes with some sort of terminal emulation package
|
||
(like the Hyperterm that MS licensed from Hilgreave for
|
||
Win '95, or that cheesy old "Terminal" that they used to
|
||
ship with Windows 3.x).
|
||
|
||
<br><br>
|
||
You could also get any of several shareware, free, or
|
||
commercial communications packages such as Telix (Windows
|
||
or DOS), Kermit (DOS) or K95 (Windows), etc.
|
||
|
||
<br><br>
|
||
All of these should have a "direct" or "null modem" option
|
||
listed among their "connection/modem" types.
|
||
|
||
<br><br>
|
||
This will give you a basic, character modem terminal login
|
||
to your Linux box. This not a networking connection --- it
|
||
is just like connecting a dumb terminal to the machine (which
|
||
still gives you access to most of the applications and almost
|
||
all of the utilities and programming tools on your Linux system).
|
||
|
||
<br><br>
|
||
If you want <EM>networking</EM> between these two systems, over the
|
||
serial line; that's a different story. You should be able to
|
||
establish a SLIP or PPP connection between the two. Once you've
|
||
done that you could run any of the TCP/IP protocols over the
|
||
line. However, it's much trickier to do that --- and I have
|
||
no idea how Win '98 will handle it.
|
||
|
||
<br><br>
|
||
(Under early revisions of Win '95 I remember complaints that
|
||
the supplied PPP drivers and their user interface was
|
||
configured to work with MSN (Microsoft Network --- their
|
||
ISP) and that it required some utility from the "Plus Pack"
|
||
to allow one to create and maintain a "chat" script --- a
|
||
way to log in and configure/establish a PPP session with
|
||
any other ISP.
|
||
|
||
<br><br>
|
||
It seems that MS also added features in their NT 4.x (RAS?,
|
||
RRAS?) that allow these systems to act as recipients of the
|
||
stock Win '95 MS-CHAP authentication method. I guess this was
|
||
a bid to convince ISP's to adopt Windows NT for their work.
|
||
|
||
<br><br>
|
||
Meanwhile Gert Doering (and others?) released the AutoPPP
|
||
extensions or patches to '<TT>mgetty</TT>.'
|
||
|
||
<br><br>
|
||
'<TT>mgetty</TT>' is Gert's very popular "modem getty" line that allows
|
||
a modem line to be shared between terminal, fax, network and
|
||
even voice (with some modems) for both incoming and outgoing
|
||
use. One of the features of '<TT>mgetty</TT>' is that it can be
|
||
configured to recognize certain login strings ("user name
|
||
patterns") as a directive to use an alternative '<TT>login</TT>' program.
|
||
|
||
<br><br>
|
||
Thus you can configure you modem line to use ppplogin when
|
||
given a "user" name of the form: Pmaryjoe, and to use a
|
||
traditional '<TT>login</TT>' when presented with others.
|
||
|
||
<br><br>
|
||
I personally haven't set up AutoPPP. However, a quick
|
||
Yahoo! search on the string: "<TT>+mgetty +autoppp</TT>" gives
|
||
about 450 Alta Vista hits. Most of these are from the
|
||
Linux ISP mailing list. I didn't spot any that covered
|
||
AutoPPP over a null modem.
|
||
|
||
<br><br>
|
||
Trying a search string like:
|
||
<CODE>+ "null modem" +mgetty +win + "95"</CODE>
|
||
|
||
<br><br>
|
||
... didn't help either. Though it did return a bunch of
|
||
links to Linux Gazett mirror sites carrying issues 18,
|
||
25, and 28 (false hits in this case)
|
||
|
||
<br><br>
|
||
Somewhere on the Linux ISP mailing list archives
|
||
I found a thread about "null serial" that was on target
|
||
but not very informative. Someone mentioned that the
|
||
Win '95 PPP couldn't handle direct connection --- and
|
||
suggested Trumpet Winsock (a third party TCP/IP suite for
|
||
Windows --- and DOS --- for years before MS had ever heard
|
||
of TCP/IP).
|
||
|
||
<br><br>
|
||
So, it may not be easy to get networking configured over
|
||
a null modem line so long as Win '9x is on one end of it.
|
||
However, I bet it would be possible. You should probabl
|
||
create a "modem emulation" driver for Linux that would
|
||
allow the Win '9x box to work as though it were sending
|
||
AT commands to a modem. The "modem emulation" driver
|
||
could implement a small AT command subset (responding to
|
||
every valid <pause>+++<pause>AT sequence with "<TT>OK</TT>" or
|
||
the appropriate response).
|
||
|
||
<br><br>
|
||
In the long run it's probably far easier to buy a couple
|
||
of ethernet cards (less than $30 each) and a 10baseT
|
||
"cross over" cable (necessary if you're not going through
|
||
a hub, and sometimes necessary to cascade one hub off of
|
||
another). Not only is ethernet much faster than serial
|
||
--- it is currently much easier to configure and support
|
||
(for networking). Another advantage is that you can
|
||
later expand; buy a 4, 5 or 8 port ethernet hub and you
|
||
can wire up the whole house (actually I've almost filled
|
||
two 8 port hubs here --- but I'm a little different).
|
||
|
||
<br><br>
|
||
Conclusion: You can easily use the serial/null modem
|
||
for simple terminal access. You might be able to get it
|
||
working as a networking interface, but you might have
|
||
quite a bit of trouble convincing Win '9x to do PPP over
|
||
a "direct" or "null modem" connection. So you might have
|
||
to look for a third party PPP replacement (which may
|
||
need to be upgraded between the Win '95 and Win '98 versions)
|
||
--- or you might be able to write some weird "modem emulation"
|
||
on the Linux side. For networking it will be much easier
|
||
to buy a couple of ethernet cards.
|
||
</blockquote>
|
||
<p><hr width="40%" align="center"></p>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Linux help </H3>
|
||
|
||
<p><strong>From Chris Gushue on 04 Jun 1998
|
||
|
||
<br><br>
|
||
Thanks a lot for your thorough and quick response! It was just what I was
|
||
looking for, just a basic login to my Linux box to play around with it until
|
||
I get around to buying a hub and network cards. It kind of funny though,
|
||
using my K6/233 Win98 machine as a dumb terminal to my 486/100 Linux box
|
||
<img src="../gx/dennis/smily.gif" alt=":-)">
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
I was using that VAResearch machine that I reviewed for
|
||
the Linux Journal ("<TT>betelgeuse</TT>": a 266Mhz PII with 64Mb of
|
||
RAM and a 4Mb Matrox Millenium video) as a dumb terminal to
|
||
my old 33Mhz 386 ("<TT>antares</TT>") for months. The old 386 was
|
||
where all my mail and news was. It's still the network hub,
|
||
mail and news server for the house (though now I use '<TT>fetchmail</TT>'
|
||
everything over to "<TT>canopus</TT>" a home built P166; the wife
|
||
mostly took over the PII).
|
||
|
||
<br><br>
|
||
The 386 is the most stable machine in the house -- it's the
|
||
only one on a UPS.
|
||
</blockquote>
|
||
<A NAME="tag_lockups"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Hardware Lockups due to Graphics Load</H3>
|
||
|
||
<p><strong>From Brad Alexander on 30 May 1998
|
||
|
||
<!-- begin body -->
|
||
<BR><BR>
|
||
Hi Jim,
|
||
|
||
<br><br>
|
||
This isn't Linux-specific, but I'm having a problem and I'm hoping you can
|
||
help me come up with a workaround that isn't going to cost a lot of money.
|
||
|
||
<br><br>
|
||
I have an Intel P-100 on an Amptron AM-7900 board with 64MB of EDO RAM (2
|
||
32MB sticks), a gob of hard drives (a 2.2MB Quantum Fireball IDE and a
|
||
FutureDomain SCSI controller with a 420MB Conner, a 1GB Seagate, 1GB
|
||
Micropolis and 1GB Quantum Empire), a Diamond Stealth 64 with 2MB DRAM, and
|
||
a SoundBlaster 16 Plug'n'Pray.
|
||
|
||
<br><br>
|
||
I'm running a heavily modified RedHat 5.0 machine with an 800MB DOS
|
||
partition on <TT>/dev/hda1</TT> and a 200MB win95 partition on
|
||
<TT>/dev/hda3</TT> (Linux's <TT>/+/usr</TT> is on <TT>/dev/hda2</TT>).
|
||
|
||
<br><br>
|
||
I have been seeing system lockups for quite a while now. I noticed them
|
||
when running xlock in random mode initially, then noticed that I was also
|
||
starting to have problems with some of my dos apps, like Jane's Longbow and
|
||
Duke Nukem locking up. Under Linux, I settled on using <TT>xlock</TT> in
|
||
galaxy mode, and the lockups dropped to every couple of weeks. (Note that
|
||
during this time, I upgraded memory from 4 8MB sticks to 2 32s.)
|
||
|
||
<br><br>
|
||
Everything went all right until I upgraded to RedHat 5.0, with XFree86
|
||
3.3.1. The lockups increased to about every 2 days. Once I upgraded to
|
||
XFree86 3.3.2, they dropped back down to about once a week.
|
||
|
||
<br><br>
|
||
I'm basically using you as a sounding board to see if I might have missed
|
||
something. I'm thinking its hardware, but where? The stealth? The lockups
|
||
seem to occur during graphics app use, <TT>xlock</TT>, or the <TT>gimp</TT>.
|
||
The motherboard? The chip? What can I start replacing without sinking a whole
|
||
bunch of money into it?
|
||
|
||
<br><br>
|
||
Thanks in advance,
|
||
<br>--Brad Alexander
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
Well, the first thought would be to try a different video card.
|
||
I don't have too much confidence that the problem is truly
|
||
related to the video card's activity --- so it's just a
|
||
diagnostics start.
|
||
|
||
<br><br>
|
||
To see if this really is related to graphics, boot up the
|
||
system in text mode (don't run X, change your runlevel or
|
||
initdefault to one of the non-xdm modes if necessary). Now you
|
||
can run a couple of kernel builds on it (that's usually a
|
||
pretty good stress test. Try '<TT>make -j</TT>' to work it harder.
|
||
|
||
<br><br>
|
||
It would also be helpful to know what sort of lockup you're
|
||
getting. It may be that you could still login via a serial
|
||
port (using a null modem and a laptop or any other nearby
|
||
computer or terminal). Do do this simply add a line like
|
||
|
||
<blockquote><code>t1:23:respawn:/sbin/agetty -L 38400,19200,9600,2400,1200 ttyS1 vt100
|
||
</code></blockquote>
|
||
|
||
... to your <TT>/etc/inittab</TT>. This should allow you to use one of
|
||
your serial lines to login. It is possible for the Linux X
|
||
Windows system and console to be dead while the kernel and
|
||
other processes are still up and running. Another test is to
|
||
ping it from another system (if you have an ethernet LAN
|
||
connected to this machine). Even if telnet doesn't work you
|
||
want to ping it to see if the kernel is still responding.
|
||
|
||
<br><br>
|
||
It's also probably worth trying the software watchdog timer
|
||
code in the newer kernels. These allow you to configure a
|
||
kernel module to emulate a hardware watchdog timer card. These
|
||
WDT devices are basically a "dead man's switch" for your
|
||
system. If the timer isn't periodically updated by the kernel
|
||
(or by some <EM>other thread in the kernel</EM>, in the case of the
|
||
emulated WDT) then the WDT triggers a system reset.
|
||
|
||
<br><br>
|
||
Obviously a software emulation of this isn't quite as reliable
|
||
as a hardware WDT --- since a completely hung kernel will
|
||
never get around to calling on that module's thread of
|
||
execution. However, it isn't too unlikely that the hang is in
|
||
some specific kernel thread and that some other thread
|
||
continues to execute after other parts have died.
|
||
|
||
<br><br>
|
||
Frankly I'm not sure what the difference between the kernel
|
||
watchdog emulation code and the boot "<TT>panic=</TT>" parameter. But
|
||
that's definitely another thing to try (just add something
|
||
like <TT>panic=60</TT> to your lilo "<TT>append=</TT>" directive, or
|
||
manually when you boot up your system). I guess that the difference
|
||
would be that there may be some conditions under which the
|
||
kernel could get into a comatose or unresponsive state without
|
||
panic'ing (if it got tricked into some really long timeout wait
|
||
or something). The <TT>panic=</TT> option forces the Linux kernel to
|
||
reboot after a "panic" (a critical error condition detected by
|
||
the kernel, usually a corrupted table that fails its consistency and
|
||
integrity checks).
|
||
|
||
<br><br>
|
||
Normally the kernel would just display a "panic" message and
|
||
sit there waiting for human intervention. These are very
|
||
rare (other than the old "VFS kernel panic, unable to mount
|
||
root" that occurs when you have your kernel misconfigured for
|
||
your arrangement of hard drives --- or when you change the
|
||
hardware setting of your disk drives without updating your
|
||
kernel (with the '<TT>rdev</TT>' command to set the root device flags)
|
||
and/or without updating your <TT>LILO</TT> or <TT>LOADLIN</TT> commands
|
||
(which are usually used to pass these flags to your kernel to
|
||
over-ride the compiled in defaults).
|
||
|
||
<br><br>
|
||
Other than that common case I think I've only seen one or two
|
||
Linux kernel panics in the last 6 years. I've only had about a
|
||
half dozen unexplained system lockups over that period --- and
|
||
that's on about fifty Linux machines that I've managed during
|
||
various portions of that time. These lockups might have been
|
||
panics in situations that were so bad the kernel couldn't even
|
||
display an error message, there's no way to know).
|
||
|
||
<br><br>
|
||
I've only had to reboot unresponsive Linux boxes about a dozen
|
||
or so times in all the years I've used it. This was only a
|
||
problem in the late .99 and early 1.0x kernels when I was
|
||
running a very busy FTP/Web server that was simply overloaded
|
||
-- the TCP/IP stack would get so congested that the system
|
||
would timeout between my login name and password --- at the
|
||
console (I'd've loved a working SAK --- secure attention key
|
||
back then). I was glad to see the major TCP/IP re-write in
|
||
between 1.2 and 2.x.
|
||
|
||
<br><br>
|
||
I'm not trying to tout Linux' horn here --- (well, maybe a
|
||
little). The point is that I don't get panics and lockups
|
||
often enough to see how the <TT>panic=</TT> parameter and the
|
||
softdog/watchdog code would work in those situations.
|
||
|
||
<br><br>
|
||
However, if you enabled the <TT>panic=</TT> and/or the softdog
|
||
kernel option, you may see that the machine reboots without a minute
|
||
or two after your lockup (wait for ten or fifteen). This tells
|
||
you that some part of the kernel was still running (and that
|
||
the hardware isn't completely wigged out).
|
||
|
||
<br><br>
|
||
Beyond that the things to do are to take out all non-essential
|
||
hardware (the sound card would be a great choice --- and the
|
||
SCSI card, since you mention that your Linux partitions are on
|
||
the IDE drives. As with most technical computing issues the it
|
||
eventually boils down to a matter of cost. You mentioned a
|
||
couple of times how you don't want to spend money on solving
|
||
this problem. Ultimately the time you spend fighting with it
|
||
translates to money --- and you'll have to eventually ask what
|
||
your time is worth.
|
||
|
||
<br><br>
|
||
(The deeper part of this question is that you may find that
|
||
your home machine isn't worth the time <EM>or the money</EM> and you
|
||
may content yourself to just use any machines that you
|
||
encounter at work, or whatever. Strange as that sounds I've
|
||
had friends who refuse to keep a computer around the house
|
||
specifically because they "spend enough time with them at work"
|
||
and feels that "home is for family time").
|
||
|
||
<br><br>
|
||
At the same time I don't recommend throwing replacement
|
||
components at the problem without understanding the nature of
|
||
the problem. However, it may be that the best solution is to
|
||
replace the motherboard and/or the video card and/or the RAM.
|
||
|
||
<br><br>
|
||
Troubleshooting computers is difficult work. Whole books have
|
||
been devoted to the subject (I like the Win L. Rosch Hardware
|
||
Bible personally --- read it years ago and should probably get
|
||
an updated copy). There are also parts of the process that
|
||
can't be gained from any book --- that you must learn by
|
||
experience and figure out through some combination of analysis
|
||
and intuition. As our computers become more sophisticated the
|
||
balance seems to lean more for the intuition.
|
||
</blockquote>
|
||
<A NAME="tag_gzipC"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0"
|
||
>Compression Libraries to Link into a C Program</H3>
|
||
|
||
<p><strong>From Corne van Biljon on the linuxprog mailing list
|
||
on 30 May 1998</strong></p>
|
||
|
||
<!-- begin body -->
|
||
<p><strong><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">
|
||
Hello
|
||
|
||
<br><br>
|
||
I would like to zip a file, specified by the user, from within a C
|
||
program. Currently I use the <tt>system()</tt> command to invoke
|
||
<tt>gzip</tt>. Is there a compression library or routines out there
|
||
somewhere, or is there a better way of doing this ?
|
||
|
||
<br><br>
|
||
Thanks
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
I can understand your concerns.
|
||
|
||
<br><br>
|
||
The <tt>system()</tt>, and <tt>popen()</tt> calls are notoriously
|
||
insecure and can be used to subvert your program to the users' will.
|
||
|
||
<br><br>
|
||
I would have started with some
|
||
<a href="http://www.yahoo.com/">Yahoo!</a> and
|
||
<a href="http://altavista.digital.com/">Alta Vista</a> searches
|
||
(actually I used
|
||
<strong><font color="#66CC66">G</font><font color="#CC6666">o</font><font
|
||
color="#FFFF66">o</font><font color="#6666CC">g</font><font
|
||
color="#66CC66">l</font><font color="#CC6666">e</font></strong>
|
||
--- a new and interesting search
|
||
engine at Stanford University:
|
||
<a href="http://google.stanford.edu/">http://google.stanford.edu/</a>).
|
||
|
||
<br><br>
|
||
The obvious phrase would be "<tt>+free +compression +library</tt>"
|
||
(and reasonable variations).
|
||
|
||
<br><br>
|
||
I get a bunch of links to the
|
||
<a href="http://www.pkware.com/">PKware Inc.</a> pages (which are
|
||
presumably shareware and/or commercial) and then I find a link
|
||
to the zlib pages (which declare that they should <em>not</em> be
|
||
confused with the Linux
|
||
<tt><a href="http://zlibc.linux.lu/zlibc.html">zlibc</a></tt>
|
||
compression libraries).
|
||
|
||
<br><br>
|
||
The zlib home pages are at:
|
||
|
||
<blockquote>
|
||
<a href="http://www.cdrom.com/pub/infozip/zlib/"
|
||
>http://www.cdrom.com/pub/infozip/zlib/</a>
|
||
</blockquote>
|
||
|
||
... and appear to be <tt>gzip</tt> compatible, and co-written by the
|
||
primary author/maintainer of <tt>gzip</tt>. However the impression I
|
||
got from this page is that <tt>zlib</tt> is not under a GPL or is
|
||
under an LGPL --- that your <tt>zlib</tt> linked code will not be
|
||
encumbered.
|
||
|
||
<br><br>
|
||
Naturally you'll want to read the licenses yourself.
|
||
|
||
<br><br>
|
||
This zlib home page also has numerous links to other
|
||
compresssion software and programming resources.
|
||
</blockquote>
|
||
<A NAME="tag_newlook"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">LOVE THE NEW LOOK!!!!</H3>
|
||
|
||
<p><strong>From David Rudder on 28 May 1998
|
||
|
||
<!-- begin body -->
|
||
<br><br>
|
||
Heather,
|
||
<br><br>I love The Answer Guy's new look! Um, 'nuff said
|
||
<img src="/gx/dennis/smily.gif" alt=":)">
|
||
|
||
<br><br>
|
||
-Dave
|
||
|
||
<br><br>
|
||
No Trespassing
|
||
<br>4/17 of a haiku
|
||
</p></strong>
|
||
<blockquote><img src="../gx/dennis/bbub.gif" height="28" width="50"
|
||
alt="(!)" border="0">Glad you like it. I've been working
|
||
pretty hard on it this month, and I hope a lot of other people like
|
||
it too.
|
||
<BR><BR>
|
||
So folks, what do you think of the footer? Does the double-footer
|
||
on these questions (a nav area for hopping amidst Answer Guy
|
||
entries, and the regular LinuxGazette section footer) make sense?
|
||
Should they be combined? Should the sectional footer only be shown
|
||
at the Answer Guy index?
|
||
<BR><BR>
|
||
For this month, I'll make it the same
|
||
as last, because I kind of like it... but you, the readers, should
|
||
definitely let me know if it's giving you trouble. Thanks and cheers
|
||
are also welcome <img src="/gx/dennis/smily.gif" alt=":)" align="top">
|
||
<BR><BR>
|
||
<A HREF="mailto:star+tag@starshine.org">Heather Stern</A>
|
||
</blockquote>
|
||
<A NAME="tag_c500"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Linux PPC on the Umax C500 SuperMac:
|
||
Not A Good Idea</H3>
|
||
|
||
<p><strong>From Fahimy on 28 May 1998
|
||
|
||
<!-- begin body -->
|
||
<BR><BR>
|
||
Hello, I'm a french girl beginning some computer studies.
|
||
I like Macintosh so I'm looking after a second hand macintosh or
|
||
clone in order to work and learn C, Java and Linux on it.
|
||
I'm perhaps about to buy an <a href="http://www.umax.com/">Umax</a> C500,
|
||
but I'm wondering whether it would be able to run linux. From a request to
|
||
<a href="http://altavista.digital.com/">altavista</a>, I found
|
||
you were in a similar situation some month ago.
|
||
Quoting a message you sent to the linux-pmac mailing list :
|
||
</strong></p>
|
||
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
Someone did send me a kernel that should be able
|
||
to boot that system. However I have had other things
|
||
to keep me busy.
|
||
|
||
<br><br>
|
||
More importantly I can't recommend the Umax Mac
|
||
clones at this point. They have announced that they
|
||
are discontinuing their whole line of MacOS clones.
|
||
So you'd be buying an orphan.
|
||
|
||
<br><br>
|
||
I'd suggest an Apple G3 based system --- though I'm
|
||
still disappointed about the lack of Mac clone
|
||
manufacturers. I don't believe Apple will survive
|
||
if it is the only supplier of its platform. On the
|
||
other hand the G3 is the fastest processor out there
|
||
in a commodity microcomputer. In addition I've heard
|
||
that IBM has demonstrated a 1.1Ghz (1100Mhz!) version
|
||
of the G3 architecture in their labs --- so there is
|
||
plenty of foreseeable future for this platform.
|
||
|
||
<br><br>
|
||
As usual we'll see. One nice thing about Linux (and
|
||
Unix in general) is that it doesn't constrain us
|
||
much in our choice of hardware. We can migrate to
|
||
a new hardware platform with little or no effect on
|
||
the majority of our utilities and applications ---
|
||
and a correspondingly modest learning curve.
|
||
</blockquote>
|
||
<A NAME="tag_solprint"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Remote lpd from Solaris to Linux</H3>
|
||
|
||
<p><strong>From kuksi on 27 May 1998
|
||
|
||
<!-- begin body -->
|
||
<BR><BR>
|
||
I like to print from Solaris to Linux.
|
||
The /etc/hosts.lpd file contents the sun IP address.
|
||
I have installed the Linux printer on the Sun by remote printer.
|
||
It works fine, but when i print to the remote linux printer, it is fail.
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
I presume you mean that it works fine "locally" but
|
||
fails from the remote clients.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">
|
||
the contents of the <TT>/var/log/message</TT> file:
|
||
<BR><CODE>linux_machine_name kernel: lp1 at 0x0378, (polling)</CODE>
|
||
|
||
<br><br>
|
||
and the next time:
|
||
<BR><CODE>linux_machine_name lpd[number]: sun_machine_name recvjob
|
||
<BR>linux_machine_name lpd[number]: sun_machine_name request printjob
|
||
<BR>linux_machine_name lpd[number]: sun_machine_name request displaylong</CODE>
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
I guess this is a hacked up excerpt from one of your
|
||
<TT>/var/log/</TT> files.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">
|
||
But the printer in local mode on linux works fine.
|
||
(think i am <img src="/gx/dennis/smily.gif" alt=":-)">)
|
||
<BR><BR>kuksi
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
Well, '<TT>lpd</TT>' is black magic to me. I've got my remote
|
||
printing working on one pair of systems but not on another.
|
||
Also '<TT>lpd</TT>' seems to be a security nightmare that's almost
|
||
as bad as the older '<TT>sendmail</TT>' releases.
|
||
|
||
<br><br>
|
||
One possibility would be to try installing <TT>LPRng</TT> (the
|
||
next generation of the lpr suite). I've printed out the
|
||
manual for it (over a hundred pages long) and worked
|
||
through a bit of it. It does seem to be an industrial
|
||
strength printing/queueing system. Aye, but there's the
|
||
rub, it may be overkill for your situation.
|
||
|
||
<br><br>
|
||
So, all I can suggest is that you make sure that you've
|
||
followed all of the steps and suggestions in the Printing
|
||
HOWTO and that you try to get more specific debugging data.
|
||
</blockquote>
|
||
|
||
<hr width="40%" align="center">
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
On Wed, 27 May 1998, Jim Dennis wrote:
|
||
<BR><FONT COLOR="#000040">So, all I can suggest is that you make sure that
|
||
you've followed all of the steps and suggestions in the Printing HOWTO and that you
|
||
try to get more specific debugging data.</FONT>
|
||
</BLOCKQUOTE>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">
|
||
Thanks for your e-mail. I have read many HOWTO about this, but I am going to
|
||
try everything.
|
||
|
||
<br><br>
|
||
(gondolom en <img src="/gx/dennis/smily.gif" alt=":-)">)
|
||
|
||
<br><br>
|
||
kuksi
|
||
</strong></p>
|
||
<A NAME="tag_vc1shell"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">User Shell on Virtual Console 1</H3>
|
||
|
||
<p><strong>From Todd Blake on 27 May 1998
|
||
|
||
<!-- begin body -->
|
||
<BR><BR>
|
||
I like most people am the only person to use my linux system at home.
|
||
What I'd like to do is when my system is done booting to have me
|
||
automatically login as my main user account(not as root though) on one
|
||
virtual console(the first) and leave all other consoles and virtual
|
||
consoles alone, so that someone telnetting in will get a login prompt
|
||
like normal, just that I won't. I'd still like the other vc's have
|
||
login's for others to login and other reasons. I've tried just putting
|
||
<TT>/bin/sh</TT> in <TT>/etc/inittab</TT> and that didn't work, and I'm stumped. Does
|
||
anyone have any ideas on this?
|
||
<BR><BR>
|
||
Todd Blake
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
Almost right.
|
||
|
||
<br><br>
|
||
If you want this to "always" be running (i.e. when you
|
||
type "<TT>exit</TT>" from that shell the system "respawns" a
|
||
new shell under your UID -- you can use the '<TT>open</TT>' command
|
||
something like so:
|
||
|
||
<blockquote><code># Run gettys in standard runlevels
|
||
<br>## 1:12345:respawn:/sbin/mingetty tty1
|
||
<br>1:12345:respawn:/usr/bin/open -c 1 -w -- su -c - todd /bin/sh
|
||
</code></blockquote>
|
||
</blockquote>
|
||
<A NAME="tag_memleak"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">Linux Memory Usage vs. Leakage</H3>
|
||
|
||
<p><strong>From Kevin Monceaux on 27 May 1998
|
||
|
||
<!-- begin body -->
|
||
|
||
<BR><BR>
|
||
Dear Answer Guy,
|
||
|
||
<br><br>
|
||
HELP!!!!!!!!!!!
|
||
|
||
<br><br>
|
||
I really enjoy "The Answer Guy" column, and I hope you can help me with
|
||
this one. I'm running Linux 2.0.29. I've been using this version for
|
||
quite a while now. Up until now everything's been fine. A couple of
|
||
days ago the problem developed. What appears to be happening is that
|
||
when programs are run they are not deallocating the memory they used.
|
||
Upon first booting the system there is already almost 9 megs of RAM in
|
||
use. I've run free to check the memory usage, ran another command, such
|
||
as ls, then ran free again and the free memory decreases. I've noticed
|
||
that if I run the same command, such as <TT>ls</TT>, again the memory
|
||
usage stays the same. It's only when commands that haven't been executed
|
||
before are run that the amount of free memory decreases. It doesn't take long
|
||
before I'm out of memory and have to reboot. Any suggestions you could
|
||
give me with this problem would be greately appreciated.
|
||
|
||
<br><br>
|
||
Thanks in advance,
|
||
<br>Kevin Monceaux
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
If you suspect a memory leak I highly recommend getting
|
||
a log of your '<TT>free</TT>' or '<TT>vmstat</TT>' output before and
|
||
after a few commands -- several snapshots.
|
||
|
||
<br><br>
|
||
You can make a <TT>cron</TT> job to mail you a snapshot of this
|
||
every hour or so. You might want to append the output
|
||
of a <TT>ps</TT> command to each of these e-mail snapshots.
|
||
|
||
<br><br>
|
||
Unfortunately it isn't as easy to interpret the output of
|
||
these commands as it should be. It's entirely too easy
|
||
to misinterpret the output fields from them -- since Linux
|
||
normally uses most of the available memory for file
|
||
cache buffers -- and large portions of the shared libraries
|
||
and memory allocated to forked process is shared (the
|
||
memory manager uses "copy-on-write" and other techniques
|
||
to minimize the utilization of physical memory). This
|
||
makes correlating actual memory usage difficult.
|
||
|
||
<br><br>
|
||
You can also use '<TT>top</TT>' (which is a curses process viewer).
|
||
It can show you the current state of the system and sort by
|
||
memory (M) or CPU utilization (P). You want to isolate the
|
||
specific process(es) that is(are) causing the problem. Don't
|
||
leave '<TT>top</TT>' running unattended, however, since it is a bit of
|
||
a resource hog in its own right.
|
||
|
||
<br><br>
|
||
If you do isolate this to a particular program you'll want
|
||
to see if there are updates available for it, or for any of
|
||
the libraries it uses. You may also want to consider getting
|
||
a newer kernel --- such as 2.0.33 or (if it's ready by the
|
||
time you read this: 2.0.34).
|
||
|
||
<br><br>
|
||
Sorry I can't be more specific --- but you'll have to
|
||
narrow down the problem a bit before we can do more. Incidentally
|
||
you can start up in single user mode and manually start all of the
|
||
daemons and processes that you normally run your multi-user
|
||
(initdefault) mode. Do this slowly, one command/daemon at a
|
||
time, to see when the problem first appears. If it happens
|
||
right away then boot with the -b option to prevent the
|
||
execution of any of your boot up scripts and manually load
|
||
any kernel modules you're using one at a time.
|
||
</blockquote>
|
||
<A NAME="tag_tvcard"><hr width="70%" align="center"></A>
|
||
<H3><img src="../gx/dennis/qbub.gif" alt="(?)" width="50" height="28"
|
||
align="left" border="0">tv cards and dual monitor</H3>
|
||
|
||
<p><strong>From Desperado on 27 May 1998
|
||
|
||
<!-- begin body -->
|
||
<BR><BR>
|
||
Hi!
|
||
|
||
<br><br>
|
||
Did you hear about TV cards in LInux? am I dreaming?
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
I've heard about them. However, I don't have one to
|
||
play with and I haven't even found a decent
|
||
<A HREF="http://sunsite.unc.edu/LDP/HOWTO/">HOWTO</A> or
|
||
website to explain what's required and what's broken
|
||
(if anything).
|
||
|
||
<em>[At press time, the
|
||
<a href="http://sunsite.unc.edu/LDP/HOWTO/Hardware-HOWTO-22.html#ss22.5"
|
||
>Hardware Compatability HOWTO section 22.5</a> mentions some
|
||
programs that support several TV tuner cards. It's mostly pointers
|
||
to tgz files, though, not real help with setup. -- Heather]</em>
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">
|
||
What about dual monitors? In WIndows 98 it needs at least a PCI bus, but
|
||
what about 486 users? I found something relative for Linux (<TT>multimon</TT> or
|
||
something like that) but It works with a black and white video card
|
||
(don't remember exactly), anything to work with two monitor in Linux,
|
||
using two ISA video cards?
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
As I've explained before, the classic situation with PC and
|
||
multiple monitors used to be that the you couldn't put two
|
||
VGA (actually any combination of two VGA/EGA) cards into the
|
||
same system. Thus you could put a monochrome video card
|
||
(text only or "Hercules" MGA) into a system to co-exist with
|
||
a VGA or EGA. Frankly I don't remember where CGA was in this
|
||
mess, though I could look it up if I really cared. I personally
|
||
never used CGA --- it was just the worst of all worlds.
|
||
|
||
<br><br>
|
||
The '<TT>multimon</TT>' patches for the Linux kernel are very old --
|
||
and probably haven't been updated to the 2.0.x (much less
|
||
the 2.1.x) kernels. I've never used them. I seem to recall
|
||
that it only applied to using a system with one VGA (or
|
||
EGA?) card and one "Hercules" MGA (monochrome graphics adapter)
|
||
or possibly an old MDA (text only monochrome display adapter ---
|
||
the original IBM video card).
|
||
|
||
<br><br>
|
||
Another approach that used to be possible was to use very
|
||
specialized adapters like the old TIGA (Texas Instruments
|
||
Graphics Array?) or DGA (?) cards. These were high resolution
|
||
graphics adapters that cost thousands of dollars and weren't
|
||
compatible with VGA or any other "standard" cards or software.
|
||
|
||
<br><br>
|
||
However I've never heard of Linux (XFree86) drivers for
|
||
TIGA or DGA cards --- and I'm not sure if they are still
|
||
in production. In fact I don't actually know anything about
|
||
these old beasts --- I just vaguely remember some discussions
|
||
I had with other nerds back in the late 80's where the
|
||
subject came up.
|
||
|
||
<br><br>
|
||
When I
|
||
<a href="http://www.linuxgazette.com/issue17/answer.html#vidX"
|
||
>last discussed this in LG</a> (many moons ago) I didn't
|
||
know that some of the modern PCI video cards had the option
|
||
to be used in a "non-VGA" mode. Thus you can take some
|
||
PCI video cards configure them to co-exist in a system with
|
||
another VGA video card. I have heard that some of the
|
||
commercial X servers support multiple physical displays
|
||
on some cards. I don't seem to recall any of them for
|
||
XFree86 --- but a search of their web pages:
|
||
|
||
<blockquote><code><A HREF="http://www.xfree86.org/">http://www.xfree86.org/</A>
|
||
</code></blockquote>
|
||
|
||
...would provide a far more definitive answer.
|
||
|
||
<br><br>
|
||
The last I read none of the XFree86 servers support multi-headed
|
||
operation. This is from the following entry in their FAQ:
|
||
|
||
<blockquote><code><A HREF="http://www.xfree86.org/FAQ/index.html#TwoCards"
|
||
>http://www.xfree86.org/FAQ/index.html#TwoCards</A>
|
||
</code></blockquote>
|
||
|
||
I have yet to see anyone using this feature. One of these
|
||
days I might try it. However, not this month.
|
||
|
||
<br><br>
|
||
The Commercial vendors to check with would be:
|
||
|
||
<DL>
|
||
<DT> Xi Graphics (formerly X Inside):
|
||
<DD><A HREF="http://www.xig.com/">http://www.xig.com/</A>
|
||
</DL>
|
||
... and:
|
||
|
||
<DL>
|
||
<DT> Metrolink:
|
||
<DD><A HREF="http://www.metrolink.com/"
|
||
>http://www.metrolink.com/</A>
|
||
</DL>
|
||
(there may be others but these are the two that I think
|
||
of when I think of the commercial X servers for Linux).
|
||
|
||
<br><br>
|
||
BTW: Metrolink didn't appear to have any online FAQ or
|
||
web site search engine. However Xi's FAQ lists a sample
|
||
configuration for use with two Matrox Millenium cards at
|
||
<A HREF="http://www.xig.com/support/faqs.servers.html#Anchor-a5"
|
||
>http://www.xig.com/support/faqs.servers.html#Anchor-a5</A>
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">
|
||
What is <TT>inetd</TT>? when I am trying to install the ftp rpm, I get the
|
||
message "you need inetd", but in my Red Hat 5.0 CD, in the RPMS
|
||
directory there is nothing similar to that name.
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
That sounds wrong to me. I would expect that message from
|
||
the <TT>ftpd</TT> (the FTP Server package). The default ftp client
|
||
should be a part of the NetKit package (probably in the
|
||
base RPM).
|
||
|
||
<br><br>
|
||
'<TT>inetd</TT>' is a IP service dispatcher. It listens to
|
||
a list of TCP/UDP ports and dynamically launches programs
|
||
as connections are requested for the corresponding "well known
|
||
services" The mapping of ports to services is done via
|
||
the <TT>/etc/services</TT> file, and the mapping of programs (daemons)
|
||
to services that will be managed by inetd is in <TT>/etc/inetd.conf</TT>.
|
||
|
||
<br><br>
|
||
In all of the major Linux distributions most of the the
|
||
inetd services are configured to run <TT>tcpd</TT> (TCP Wrappers).
|
||
This utility will check the the IP address of the client that
|
||
is making the connection request against one or two lists
|
||
of rules (<TT>/etc/hosts.allow</TT> and <TT>/etc/hosts.deny</TT>).
|
||
'<TT>tcpd</TT>' also makes some sanity checks, for example to see
|
||
if the client's reverse mapping (a DNS request --- <TT>gethostbyaddr()</TT>
|
||
actually --- matches one of the addresses that's returned by a forward
|
||
mapping (<TT>gethostbyname</TT>). That's called a "double reverse
|
||
lookup" and is somewhat more difficult for an attacker to
|
||
"spoof" than just a reverse (<TT>in-addr.arpa</TT>) entry.
|
||
|
||
<br><br>
|
||
Are you trying to use an ftp client or a server (daemon)?
|
||
You might also try <TT>ncftp</TT> (Mike Gleason?) which is a nice
|
||
curses mode (full screen) client. You can also try <TT>lftp</TT>
|
||
which has some nice scripting features. In fact <TT>ncftp</TT>
|
||
also has some rather handy features for use in scripts.
|
||
|
||
<br><br>
|
||
Another option is to use <TT>mc</TT>'s (midnight commander) ftp
|
||
features. To do that just load the program and type
|
||
<TT>cd ftp://.....</TT> (the URL form of the ftp site's name).
|
||
|
||
<br><br>
|
||
Shortly thereafter you should see the files and directories
|
||
from your FTP site appear in one of <TT>mc</TT>'s navigation panels
|
||
--- you can than navigate the other site, tagging, copying,
|
||
and managing the remote files as though there were in a
|
||
local directory tree.
|
||
</blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">
|
||
One thing more, what about download managers? I use Get Right, but there
|
||
is no version for Linux, well there is no Java Runtime Environment for
|
||
Linux. Any other good application for that?
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
I presume you mean that you'd like to select a number of
|
||
files in an ftp client and have the system continue to
|
||
try downloading ('<TT>get</TT>'-ting) them until they are all
|
||
successfully retrieved. Perhaps you'd even like to just tag the files
|
||
and defer the actual download until later (say, late at night
|
||
when there's just less bandwidth in use all over the 'net).
|
||
|
||
<br><br>
|
||
I think there are many programs that can do this. I've used
|
||
'<TT>mirror</TT>' (Lee McLoughlin's Perl script) many times --- but that
|
||
is more of a programming utility and it has no interactive
|
||
front end. The best bet would be to search the Linux Software
|
||
Map (<A HREF="http://www.ssc.com/linux/apps.html"
|
||
>http://www.ssc.com/linux/apps.html</A>) with the words "<TT>ftp</TT>"
|
||
and "<TT>client</TT>"
|
||
|
||
<br><br>
|
||
I suppose it would be nice to have an FTP client that had
|
||
an option write all your file selections to a file and
|
||
execute the fetch later as an '<TT>at</TT>' job. Perhaps one of
|
||
our readers will know of one.
|
||
|
||
<br><br>
|
||
Also there is quite a bit of Java support for Linux. I don't
|
||
know about the JRE specifically but it appears to be supported
|
||
according to the canonical Linux/Java site
|
||
(<A HREF="http://www.blackdown.org/">http://www.blackdown.org</A>):
|
||
|
||
<dl>
|
||
<dt>Java-Linux: Javasoft(TM) Products
|
||
<dd><A HREF="http://www.blackdown.org/java-linux/products.html"
|
||
>http://www.blackdown.org/java-linux/products.html</A>
|
||
</dl></blockquote>
|
||
|
||
<p><strong><img src="../gx/dennis/qbub.gif"width="50" height="28" alt="(?)"
|
||
align="left" border="0">
|
||
Thank you for your help.
|
||
<br>Desperado
|
||
</strong></p>
|
||
|
||
<blockquote><img src="../gx/dennis/bbub.gif"width="50" height="28" alt="(!)"
|
||
align="left" border="0">
|
||
I hope that helps. Look at the Blackdown.org site for
|
||
more info about Java under Linux.
|
||
</blockquote>
|
||
|
||
<!--================================================================-->
|
||
<P> <hr> <P>
|
||
<H5 align="center"><a href="http://www.linuxgazette.com/copying.html"
|
||
>Copyright ©</a> 1998, James T. Dennis <BR>
|
||
Published in <I>Linux Gazette</I> Issue 30 July 1998</H5>
|
||
<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_bytes30.html"><IMG SRC="../gx/back2.gif"
|
||
ALT="[ Back ]"></A>
|
||
<A HREF="./vrenios.html"><IMG SRC="../gx/fwd.gif"
|
||
ALT="[ Next ]"></A>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">CHAOS: CHeap Array of Obsolete Systems</font></H1>
|
||
<H4>By <a href="mailto:">Alex Vrenios</a></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
<H4>Introduction</H4>
|
||
<P>
|
||
If you are anything like me, you're probably not exactly sure how fast the latest processor
|
||
is. You probably didn't wait in line to buy the latest Windows upgrade, and the machine you use
|
||
to get your work done probably doesn't look too good next to even the $1000 specials. Maybe,
|
||
like me, you need a little spice in your computing time slice.
|
||
<P>
|
||
This article describes a year-long project to create a network of old PCs - a loosely
|
||
coupled multi-processor, if you will - all for the cost of a reasonably priced PC, a lot of my
|
||
personal time, and a little bit of luck.
|
||
<P>
|
||
Last year our vintage 1988 Deskpro 386s reached the limits of their upgradeability, and
|
||
they still couldn't run all the applications I use at work. It was time to buy new. My wife gets the
|
||
first new one this time, and I'll decide to wait a little while longer. The two old machines were
|
||
top of the line, in their day. I still have all the manuals, the original maintenance diskettes, and a
|
||
few spare parts. I'll be sorry to see them go.
|
||
<P> <HR> <P>
|
||
<H4>It Begins</H4>
|
||
<P>
|
||
With the new PC up and running I found myself reorganizing things. I went to my
|
||
favorite computer store for a cable. Being one to avoid paying for a new cable whenever I can, I
|
||
went into the back room - the salvage area - very much like a high tech junk yard. There, near the
|
||
corner, on a bottom shelf, were three Deskpro 386s, just like my old ones at home!
|
||
<P>
|
||
I moved closer. (Didn't want to cause a scene, you know.) Each was priced from $100 to
|
||
$150 and the stickers were yellow. The big sign on the wall said yellow means I can take another
|
||
20% off. I did some quick mental math and decided to offer him $300 for all three of them.
|
||
<P>
|
||
"Excuse me," I said. "The old Deskpro 386s in the corner?" "Twenty bucks apiece," he
|
||
said. I put my credit card on the counter and the PCs in my trunk. He even threw in three AC
|
||
cords. After the deed was done, I heard myself asking about others like them because I had to
|
||
build a home network. He even agreed to give them to me at the same rate!
|
||
<P>
|
||
I took them home, took them all apart, and blew out some nasty dust. The cases cleaned
|
||
up like new with a little spray cleaner. (Okay, a lot of spray cleaner.) They all had at least 40 MB
|
||
hard, and standard floppy drives, and some even had extra memory. Every one of them booted,
|
||
and all the hard drives reformatted properly. This was surely an omen.
|
||
<P>
|
||
The cheapest network cards I could find were NE2000 compatible 10Base2 at $29 each. I
|
||
got commercially made coax cables because I know what I can do to a BNC connector with a
|
||
soldering iron. Where was I going to put all this stuff?
|
||
<P><HR> <P>
|
||
<H4>The Plan</H4>
|
||
<P>
|
||
I have a desk, credenza, and a side table in my little office area at home. The side table
|
||
happens to be wide enough for three PCs to sit side-by-side under it, on floor pads. I cut a shelf
|
||
to fit under it and got two sliding keyboard drawers for the top. Two on top, with keyboards and
|
||
monitors, three on the shelf, and three on the floor makes eight - that's a nice sized network. I got
|
||
a pair of 1x4 data switches to connect the pair of VGA monitors and keyboards to each set of
|
||
four machines. Mice do not switch well, so only the top two machines have them. For what I
|
||
wanted to build, a lot of mice were not necessary anyway.
|
||
<P>
|
||
I found three more matching 386s and a very clean Deskpro 486 that I just couldn't pass
|
||
up. (It even had a CD-ROM drive!) My final configuration uses the 486 as the "build" machine,
|
||
seven 386s as the multi-processor test bed, and the eighth 386 as a spare. The two monitors,
|
||
keyboards, and mice look good up top. The matching PCs underneath look very natural. The rats
|
||
nest of wires are tucked out of site.
|
||
<P>
|
||
The Red Hat Linux version 4.2 box said it would work in character mode on a 40 MB
|
||
hard drive, but required 8 MB of RAM to run. I did some quick combinatorics and bought the
|
||
minimum number of memory chips that would bring every machine up to that standard. Time to
|
||
saddle up.
|
||
<P>
|
||
I used a DOS boot diskette to bring up each machine, establish the type codes for the hard
|
||
drives, and initialize the network cards. Each card came with a tee connector, and the coaxial
|
||
cables went together quickly.
|
||
<P>
|
||
I got a small label maker and named the 386s after the seven deadly sins. The 486 was
|
||
named omission. A local sysadmin friend said 192.64.9.1 through 192.64.9.8 would do fine for
|
||
my IP addresses. This was starting to look pretty good.
|
||
<P> <HR> <P>
|
||
<H4>The Installation</H4>
|
||
<P>
|
||
I've done my share of software installations, including a few operating systems. Red Hat
|
||
tries to make things as easy as possible for the reasonably experienced person, so I expected an
|
||
easy time of it. Not true.
|
||
<P>
|
||
In hind sight I guess it all makes perfect sense, but there were a few dark moments.
|
||
Asking for a "Default Gateway" and a "Primary, Secondary, and Tertiary Nameserver" was a bit
|
||
over my head. (I got eight machines on a private network. I don't need no stinkin' nameserver...
|
||
Do I?) And a friend had to set me straight on how many partitions I really needed, explaining
|
||
how a single partition containing a swap "file" works fine under Linux. Oddly, the installation
|
||
program doesn't ask for NFS mounts if only one partition exists. (It seems to me like that's when you
|
||
need them most.) I had to add this information manually to the /etc/fstab file after the installation
|
||
was complete. I updated the /etc/hosts file and switched both accounts to use the C shell, while I was
|
||
at it.
|
||
<P>
|
||
I still haven't a clue how to create a Linux boot disk. Nor do I understand the "rescue"
|
||
mode on the installation boot floppies. When the network card "autoprobe" actually recognized
|
||
my NE2000 compatible, however, I knew this was all going to work out fine. And when the
|
||
second machine started reading the CD-ROM drive in the first one, I got a little smug.
|
||
<P>
|
||
When I got to one of the machines with a 40 MB hard drive, I discovered that a 40 MB
|
||
set of installation files doesn't fit. After frantic posts on the news groups and the mailing lists, I
|
||
discovered that I could de-select some of the software components that I didn't need and chip the
|
||
installation set size down to 35 MB, which fit nicely. With /home and /usr mounted through NFS
|
||
from the big 486, I had no fears of running out of work space. In addition to the root account for
|
||
maintenance, I created one user account for myself so I could do the ordinary stuff.
|
||
<P> <HR> <P>
|
||
<H4>The Network</H4>
|
||
<P>
|
||
With the evidence mounting, I still didn't really believe it all worked until I actually
|
||
switched to different systems and did pings back and forth. When I compiled a simple
|
||
client/server pair of test programs, started the server on one, and the client on another, I was
|
||
convinced. This is good.
|
||
<P>
|
||
So what, you might ask, am I going to do with an 8-PC network?
|
||
<P>
|
||
I've taken a few graduate courses in distributed and fault tolerant systems, and I read a lot.
|
||
There is something I find fascinating about a distributed algorithm: locally each of the individual
|
||
processes obeys the same set of rules, but globally the "system" exhibits an emergent behavior.
|
||
All these individual processes look like a single machine to the casual user.
|
||
<P>
|
||
With sophisticated software running on each of the seven machines, they can band
|
||
together to form a single computer that runs application software, taking advantage of the
|
||
overlap inherent in most algorithms, by running a piece of the whole on each machine, collecting
|
||
and combining results as each of them completes. The "sophisticated software" is called a
|
||
distributed operating system, and the application it runs has to be modified by hand in order to
|
||
realize any performance improvements. The January 1998 issue of Linux Journal is dedicated to
|
||
such systems. Beowulf clusters, discussed in that issue, are within my reach, now that Red Hat
|
||
released their Extreme Linux CD, with the associated NASA code and documentation.
|
||
<P>
|
||
Beyond number crunching clusters, there are database server clusters. The many
|
||
machines are used to distribute the client transaction loads so no one machine crashes from
|
||
overwork. If a process fails, an associated monitor process might restart it on the same, or some
|
||
other machine. And when one machine gets bogged down for whatever reason, some of its
|
||
processes might be intentionally stopped and restarted elsewhere just to redistribute the overall
|
||
load. This is leading edge fault tolerant research material.
|
||
<P>
|
||
Finally, there are dozens of simple distributed algorithms along with dozens of variations
|
||
on each. Without any add-on sophisticated software, one may use a C compiler and some UDP
|
||
socket programming to first imitate what has been done, then perhaps improve on it. I expect this
|
||
will be what I work on first. The seven 386s can each run a copy of the algorithm under test,
|
||
instrumented to write behavior trace records, and the 486 can monitor these traces, displaying the
|
||
global behavior in some way that makes sense to me.
|
||
<P> <HR> <P>
|
||
<H4>Conclusion</H4>
|
||
<P>
|
||
Whatever your computing interests, a hardware architecture must come first. The current glut
|
||
of high performance PCs provides us an opportunity to build a system that fits our needs, without
|
||
spending too much money. The Linux operating system provides a substrate upon which an interesting
|
||
software project may grow. I recognized that a small network of PCs would provide me with a platform
|
||
that fit well with what I think is fun. I hope my experience will encourage you to pursue your own.
|
||
<P>
|
||
My next step is to define and construct a framework for my 486 to become the monitor, sampling
|
||
and reporting the behavior of some distributed algorithm running on the other machines. Maybe that
|
||
will be the subject of my next article here.
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Alex Vrenios <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./lg_answer30.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./clue30.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
<center><H2>Clueless at the Prompt</H2>
|
||
<H4>By Mike List,
|
||
<a href="mailto:troll@net-link.net">troll@net-link.net</a></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
<center><IMG ALIGN=MIDDLE SRC = "../gx/list/gnub.jpg" ></center><p>
|
||
|
||
<h4>Welcome to installment 5 of Clueless at the Prompt:</h4>
|
||
|
||
<p>
|
||
How's it goin'? This month I'm going to go into some basic admin
|
||
ideas that you can use to make your home linux box a little
|
||
easier to deal with, especially in an emergency.
|
||
<p>
|
||
I'm also going to hit xdm on a couple of points, although I've got
|
||
the merest understanding of all the differences between it and
|
||
running from "startx"
|
||
|
||
<hr><p><h4>
|
||
*Boot/Rescue Disks:</h4> If you make a mockery of your filesystem
|
||
by typing for instance a space between "/" and the file you were
|
||
trying to rm as root, or your extraordinarily gifted child
|
||
discovers how to cold boot your computer while you're in X and have
|
||
a dozen windows open, or you accidentally kick the power strip
|
||
while you're stretching, or geez, need I go on? You may discover
|
||
one of the handiest things (two, actually) is a Boot/rescue/root
|
||
disk combo.
|
||
<p>
|
||
To use these , you simply reboot or cycle offthe computer as
|
||
"gracefully" as possible. Insert the boot disk, which can be your
|
||
install boot disk and start the bootup. instead of using your
|
||
install root disk, you drop a rescue disk in when prompted.
|
||
These disks can be gotten from your distribution's ftp site or
|
||
more conveniently, if you have linux on CDROM, guess where you
|
||
might get it, most likely wherever you got your boot image. You can
|
||
also roll your own, or use Yard to make a custom rescue disk. As a
|
||
side note, you can use this method to make a usable, if not very
|
||
flexible, minilinux system, something like xdenu.<p>
|
||
To use your rescue disk, boot up with your installation bootdisk,
|
||
and when you are prompted to insert root disk, just pop it in and
|
||
hold tight a second. when you get a prompt, you are almost ready to
|
||
fix your problems.You can run fsck on a disk partition without
|
||
mounting it, in fact that's the safest way to use it. If you
|
||
bollixed any init files, you can mount the /dev/?partition to "/mnt"
|
||
cd /mnt and using vi, edit the mistaken lines or even recreate them
|
||
if need be. One important note; your hard drive will be mounted
|
||
below /mnt, so don't do anything to "/" or you risk hosing your rescue
|
||
disk, not a nice thng to do when it's all that stands between you
|
||
and your linux system.There is even a defrag utility that you can
|
||
use after you fsck your filesystems, but you must make sure that
|
||
you only run it on UNMOUNTED filesystems or you'll be subject to a
|
||
REAL LEARNING EXPERIENCE!, as in learning to reinstall your box
|
||
from scratch, or practice on your backup routine.
|
||
<hr><p><h4>
|
||
*Xdm:</h4> If you ever thought it would be cool to be able to
|
||
start your linux box in X mode and logging in from an X screen, it
|
||
isn't too hard to do, using xdm, the X Display Manager. You can
|
||
easily start it by simply typing:
|
||
<pre>
|
||
xdm
|
||
|
||
</pre>
|
||
if you have X configured. It should start with a login screen, and
|
||
look like the twm window manager, tweed background and all, and
|
||
when you login for the first time, it probably will be twm,
|
||
particularly if you got your XFree86 distribution from xfree86.org,
|
||
although I'm really only accustomed to Slackware so another window
|
||
manager might come as default in say, RedHat or SuSe, or Debian
|
||
distributions. that can be changed, as can the tweed root window,
|
||
and the login message, and a great many other small details.
|
||
You should be aware that because of the way xdm invokes X, the path
|
||
will not be the same as if you run startx. That means that you must
|
||
either specify the full pathnames for executables or change your
|
||
path in the" " file.Your access to remote xhosts will be different
|
||
as well, a problem I haven't licked yet but by the time you finish
|
||
reading this I might(or you might, or we both might or ...).
|
||
<p>
|
||
Better yet break out your favorite editor, save your /etc/inittab file in
|
||
case of disaster and find the line that starts with id?:default
|
||
runlevel? and read the file down a few lines to where it describes
|
||
the runlevels and change to the one that describes X11R6 in Slackware
|
||
it would be runlevel 4, so change the id and the runlevel description
|
||
if you are a slacker, it may be different on other distributions,
|
||
since they mostly use BSD style init and have their rc.files directly
|
||
in /etc. That's enough to start Linux in a login screen.You could run
|
||
<pre>
|
||
locate xdm</pre>
|
||
|
||
to find the xdm files, and give them a good lookover. The files
|
||
you'll want to look at are the Xresources, Xsession, and Xsetup_0.
|
||
There are other files to work over but let's start with our local
|
||
desktop.
|
||
<p>
|
||
If you look at your Xsession file you'll see you need
|
||
these files in your home directory:.xinitrc and .Xresources. The
|
||
.xinitrc you may have in your home directory is a reasonable
|
||
default, and you can copy the system Xresources to your home
|
||
.Xresources. If you would like to use other files as your startup
|
||
and resources file, you'll need to specify them in the Xsession
|
||
file, at the lines that read:
|
||
<pre> startup=$HOME/.xinitrc
|
||
resources=$HOME/.Xresources
|
||
</pre>
|
||
you might use .openwin, instead of .xinitrc and .Xdefaults instead
|
||
of .Xresources, you'll have to lok at what X related dotfiles are
|
||
present in your home directory.
|
||
<p> Your Xsetup_0 fle can be used to start a background image in
|
||
the login screen using a command like:
|
||
<pre>
|
||
xv -root -quit /your/image/here
|
||
</pre>
|
||
assuming that you have xv installed on your system. You can use
|
||
other viewers to start the image, but you will have to read up on
|
||
the appropriate command line options for them. You can also enable
|
||
or disable the xconsole log, which can be used to notify you of
|
||
errors in execution, etc, by piping the xdm-errors file to it in
|
||
this file, although I haven't done it and am not real familiar with the
|
||
the specifics.
|
||
<hr><p><h4>
|
||
If you have any starting out type questions, or any tips you you
|
||
think would be handy for the newbie reader, please email me
|
||
at:</h4>
|
||
|
||
|
||
|
||
<center><a href="mailto:troll@net-link.net">troll@net-link.net</a><p>
|
||
<b>See you next month!</b></center>
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1997, Mike List<BR>
|
||
Published in Issue 30 of the Linux Gazette, July 1997</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./vrenios.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back"></A>
|
||
<A HREF="./bennet.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">8 Reasons to Make the Switch</font></H1>
|
||
<H4>By <a href="mailto:bbennet@mb.sympatico.ca">Bill Bennet</a></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
Here are 8 reasons to switch to Linux, the free OS:
|
||
<ol>
|
||
<li> It is free. Download from the Internet and install it now.
|
||
<li> Free upgrades. Find the Kernel on the Internet and download the
|
||
latest guts for the system.
|
||
<li> It runs Win3x,95,98,etc. Some programs, not all. Your programs will
|
||
run and look the same as in Windows. Find the Wine project. It is
|
||
trying to be 100% free of Microsoft code, in order to further promote
|
||
freedom of action on the PC. They use the API of Windows, and write
|
||
the code for free! When a Windows program won't run in WINE or WABI
|
||
the Linux system can be installed AFTER you install Windows. Then the
|
||
LILO bootloader can boot either Linux or Windows, without any upset
|
||
at all of your delicate and unstable Windows setup. A dual-boot PC is
|
||
able to run almost everything and it tastes great, but is not less
|
||
filling. Create with the GIMP, post it to the net, save it in DOS and
|
||
use it in your office suite.
|
||
<li> It runs DOS. Some programs, not all. See dual-boot, above. Your
|
||
programs will run using the Dosemu. It makes the programs see a DOS
|
||
system on your machine, and they go. Yes, even Warlords II will run
|
||
just fine. You just need a paid-for DOS version to install and a hard
|
||
disk partition is recommended.
|
||
<li> It runs Unix. Your Linux is a PC version of the powerful Unix OS.
|
||
The universities, NASA, the research institutes, computer scientists
|
||
and software developers are using it since the old days of computing.
|
||
You now have access on the Internet to thousands of programs. They
|
||
range from obscure utilities to fully developed productivity systems.
|
||
Oh, by the way, they are free to download and are written by the best
|
||
minds in the computer world. "Microserfs"(recruited by the monopoly),
|
||
are best left in their circular, singular limited world so that the
|
||
real free thinkers can write you great innovative, unlimited programs
|
||
that can solve real world problems.
|
||
<li> It runs Macintosh. Yes, you just get the emulator and your Mac
|
||
programs will see a Mac system on your PC. Playmaker Football, anyone?
|
||
<li> It is fast when used as a network server or for multi-tasking. The
|
||
ISP (Internet Service Provider) community is becoming a large growth
|
||
area for Linux, with over 20% of them using it. That percentage is
|
||
growing as the mainstream shrinks. The choice of Linux as your office
|
||
productivity system is really a no-brainer: Speed, Versatility, Price
|
||
(free), Upkeep (free), Support (free on the Internet) and Adaptation.
|
||
Your upgrades are free and you keep up with all the innovations in the
|
||
realm of computing by virtue of your ability to run all the different
|
||
operating systems and their software on one machine. Any questions?
|
||
<li> You contribute to the expression of freedom of thought and action
|
||
when you choose Linux, the free OS. By way of contrast, just ask
|
||
yourself 'How many times have I paid for an upgrade of my system?'. If
|
||
the answer is one or more, then you paid too much. Again, ask yourself
|
||
'Did I need to upgrade when the owners of the OS told me to upgrade?'.
|
||
If your software was running just fine when you were told to upgrade,
|
||
then who is running your life?
|
||
</ol>
|
||
<P>
|
||
Finally, ask yourself 'Does following the dictates of the
|
||
Windows-Intel monopoly make me an independent PC owner?'. If you can't
|
||
run a piece of software that sounds like it does what you want done,
|
||
because it is not available for your "operating system", then why do
|
||
you continue to let yourself be limited by the owners of the monopoly
|
||
"operating system"?
|
||
<P>
|
||
Switching to Linux lets you run the software that you hear
|
||
about and lets you choose which programs you want; which programs you
|
||
need; and most important, when to buy them.
|
||
<P>
|
||
Staying on Microsoft's schedule, for example, will have seen
|
||
you purchase four upgrades to your "operating system" in the last ten
|
||
years. DOS 6.22, Windows3x, Windows95 (DOS 7.0) and Windows98 have an
|
||
inevitable progression built into their "release" so that you give
|
||
your money to the richest man on the planet on a regular basis. That
|
||
regular flow of cash is keeping Microsoft solvent, paying the
|
||
investors and limiting choices for the 90% of PC users who are trapped
|
||
in the Microsoft endless loop of upgrades.
|
||
<P>
|
||
Why am I so adamant in my condemnation of the monopoly? The
|
||
reason is that in May of 1998, Microsoft "released" Windows98. That
|
||
caused a huge buying surge for Microsoft, because their captive users
|
||
were truly afraid of being left out of the "innovation" loop. At the
|
||
same time, a press release on the TV claimed that Windows98 had fixed
|
||
three thousand (3,000) bugs in the Windows95 "operating system". Only
|
||
a true monopoly would even let you know that you had been inflicted
|
||
with three thousand (3,000) bugs in your last software purchase. To
|
||
top off the irony, the United States government and 20 of their states
|
||
were taking Microsoft to court on anti-trust suits over their
|
||
exclusion of choices for consumers on which browser to use on the
|
||
Internet.
|
||
<P>
|
||
That left me with the logical question of whether you PC users
|
||
had a choice of how to run your PC and get only the programs that
|
||
you want or need. The answer is that the lawsuits are illogical, since
|
||
you the consumer can run Linux, use just the Microsoft programs you
|
||
want and run any browser you want and run any system you want, all on
|
||
one PC. Therefore, Microsoft can wedge their captives into any type of
|
||
mess that they wish, simply because you can choose to run Linux and
|
||
still be connected to the masses by virtue of your versatility.
|
||
<P>
|
||
Your business can run the same software as your contacts and
|
||
share the same type of files and be totally connected, even with the
|
||
extra 10% of the market that is not on Windows-Intel. You win and
|
||
you win with Linux.
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Bill Bennet <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./clue30.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./mueller.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">Integrated Software Development with <I>WipeOut</I></font></H1>
|
||
<H4>By <a href="mailto:gerd@softwarebuero.de">Gerd Mueller</a></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
Programming under Linux means you have the choice between various powerful
|
||
development tools, such as <EM>gcc</EM>, <EM>gdb</EM>, <EM>make</EM> and a lot more. But most
|
||
of them are command-line tools and especially for beginners not easy to
|
||
handle. But this is only one side. The other important point is the source
|
||
code editor. Many people swear by <EM>vi</EM> (or one of its clones) - I don't
|
||
mind. But it's not enough to have a good editor, a compiler and a debugger.
|
||
Especially when you develop larger software projects you need a tool
|
||
to organize it efficiently, version control would be recommended and
|
||
for object-oriented languages a class browser is indispensable. Now you
|
||
have to get all these tools under one umbrella. I see mainly two ways to
|
||
resolve this problem: one is called <EM>(X)Emacs</EM> and the other is an <EM>
|
||
Integrated Development Environment</EM>. <P>
|
||
You can resolve nearly every problem with <EM>Emacs</EM> (may be in the near
|
||
future it will cook coffee for you ;)). It is not only an editor: you can
|
||
use it as mail tool, news reader, file system browser, debugger, compiler
|
||
and make tool. If you don't have a special feature it is possible to
|
||
extend <EM>Emacs</EM> to fit your needs. But in <EM>my</EM> opinion it does all these
|
||
things not very easily and intuitively. So I prefer the second way for
|
||
software development as mentioned above.<P>
|
||
In my understanding an <EM>Integrated Development Environment</EM> gives you a
|
||
graphical interface to the different tools and joins them in one environment.
|
||
The tools should help me to organize my projects and support the
|
||
code-compile-debug cycle. Advanced features are things like a GUI-builder,
|
||
documentation tool and maybe a CASE-tool like behaviour.<P>
|
||
Under Linux you have the choice between various IDEs. They are more or less
|
||
powerful and more or less expensive. In this article I'd like to introduce
|
||
one of them which is called <I>WipeOut</I>.<P>
|
||
<img src="./gx/mueller/blue_ball.gif"><B><FONT SIZE=4> History</FONT></B><P>
|
||
At the beginning there was just the idea to have some nice and easy to use
|
||
frontends for the main development tools of each C++-programmer under
|
||
Linux: <EM>gcc</EM>, <EM>gdb</EM> and <EM>make</EM>. We decided to use <EM>wxWindows</EM> [1] by
|
||
Julian Smart to program the GUI. The first versions of <I>WipeOut</I> were
|
||
developed with the OpenLook-variant of <EM>wxWindows</EM>. Later we changed to
|
||
<EM>wxXt</EM> by Marcus Holzem because most of the people didn't like
|
||
OpenLook. For basic data structures (container classes, strings, etc.) we
|
||
developed <EM>dmpack</EM> [2]. This library contains also features such as
|
||
streamable objects and remote method invocation, which are very important
|
||
to the communication between the various <I>WipeOut</I> components. The
|
||
communication part of <EM>dmpack</EM> is based on the <EM>socket++</EM>-library
|
||
by Gnanasekaran Swaminathan which provides an object-oriented interface to
|
||
sockets and pipes.<P>
|
||
<img src="./gx/mueller/blue_ball.gif"><B><FONT SIZE=4> Components and Features of <I>WipeOut</I></FONT></B><P>
|
||
Now <I>WipeOut</I> is a complete teamwork development environment for
|
||
C++, Java, Eiffel, Fortran and C projects. (Other languages may
|
||
follow.) At the present it consists of the following components:<P>
|
||
<UL>
|
||
<LI> <EM>Project Browser</EM> - the main window of <I>WipeOut</I>
|
||
<LI> <EM>Revision Browser</EM> - version control based on <EM>CVS</EM>, it supports remote repositories
|
||
and teamwork
|
||
<LI> <EM>e3-Editor</EM> - the central text editor with flexible syntax highlighting
|
||
<LI> <EM>Class Browser</EM> - supports Java and C++, used as source code navigator and
|
||
cross-referencer
|
||
<LI> <EM>Debugger</EM> - a frontend for <EM>gdb</EM>/<EM>jdb</EM>, supports threads
|
||
<LI> <EM>Make-Shell</EM> - a frontend for <EM>make</EM>, automatic makefile generation
|
||
<LI> <EM>Symbol-Retriever</EM> - a comfortable <EM>grep</EM> replacement for symbol searching in
|
||
a quantity of files
|
||
<LI> <EM>SurfBoard</EM> - our HTML-viewer to show help and man pages
|
||
</UL>
|
||
<P>
|
||
<I>WipeOut</I> is not a RAD-tool. This is because it's not a pure Java or C++
|
||
development tool. The editor, the project management, and the make shell work
|
||
also fine for other projects than C++ or Java. Besides it is hard to
|
||
decide for a special GUI-toolkit, which would be necessary for the C++
|
||
part. So we try to support the programmers with intuitive frontends for
|
||
various command-line tools and some important additional components, which
|
||
help for more effective programming.<P>
|
||
<I>WipeOut</I> is available for various platforms: <EM>Linux/i486</EM>, <EM>
|
||
Linux/m68k</EM>, <EM>Linux/Alpha</EM>, <EM>Solaris</EM>, <EM>HP-UX</EM>. All these
|
||
versions are fully compatible, so that you can use <I>WipeOut</I> for
|
||
multi-platform development. Furthermore there are porting activities for
|
||
<EM>LinuxPPC</EM> and <EM>Irix</EM>.<P>
|
||
Currently we provide <I>WipeOut</I> in two versions:<P>
|
||
<UL>
|
||
<LI> the free standard version: This version is free for non-commercial use, but it
|
||
has some restriction: there is no version control and a project can contain only
|
||
one module. All other components have the full functionality.
|
||
<LI> the <I>WipeOut</I><EM>Pro</EM> version: this version is unlimited and costs
|
||
$149 for commercial users and $79 for private users.
|
||
</UL>
|
||
<P>
|
||
<img src="./gx/mueller/blue_ball.gif"><B><FONT SIZE=4> Installation</FONT></B><P>
|
||
The Installation is not very difficult. To run <I>WipeOut</I> you need the following
|
||
packages:<P>
|
||
<UL>
|
||
<LI> wipeout-<VERSION>.tar.gz : this file contains <I>WipeOut</I> itself
|
||
<LI> wxxt-share.tar.gz : this is the GUI-library
|
||
<LI> wipeout-doc-<VERSION>.tar.gz : the <I>WipeOut</I> documentation
|
||
<LI> wipeout-tut-<VERSION>.tar.gz : the <I>WipeOut</I> tutorial
|
||
</UL>
|
||
<P>
|
||
You can obtain the packages from [4]. Then do the following steps:
|
||
<UL>
|
||
<LI> Create a new directory, where you want to install <I>WipeOut</I>
|
||
<LI> Copy the packages to this directory and unpack them with 'tar xvzf <package>'
|
||
<LI> Start the setup-program of <I>WipeOut</I> by typing './setup'. Follow the
|
||
instructions which the program will display. After finishing it will create
|
||
two small shell-scripts: You have to include 'wipeout.sh' with the 'source'-
|
||
command into your '.bashrc' or '.bash_profile' if you use <EM>bash</EM> or
|
||
'wipeout.csh' into your '.cshrc'-file if you use <EM>csh</EM>.
|
||
<LI> After opening a new shell, which uses the modified rc-file, you can
|
||
start <I>WipeOut</I> simply by typing 'wipeout'.
|
||
</UL>
|
||
<P>
|
||
<img src="./gx/mueller/blue_ball.gif"><B><FONT SIZE=4>First Steps</FONT></B><P>
|
||
After starting <I>WipeOut</I> you'll see the <EM>Project Browser</EM> to the left and the (empty)
|
||
editor to the right. The <EM>Project Browser</EM> is the central part of <I>WipeOut</I>. Here you
|
||
open the projects and start the other components.<P>
|
||
The first thing we do is to create a new project. Therefore we choose the
|
||
menu <B><I>'Project->New Root Module'</I></B>. A dialogbox opens and we have to
|
||
input the directory of the <EM>CVS</EM>-repository (see below) and the directory
|
||
of our new project. After confirming <I>WipeOut</I> asks us for adding the
|
||
'Makefile' and the '<arch>.def' file. We choose <B><I>OK</I></B>. What this files
|
||
mean we will see later. Now <I>WipeOut</I> creates a new module in the
|
||
repository and will initialize the project directory.<P>
|
||
After creating the new project we now have access to all the other
|
||
components. At first we will have a look at the <EM>Revision Browser</EM>.<P>
|
||
<img src="./gx/mueller/blue_ball.gif"><B><FONT SIZE=4>The <EM>Revision Browser</EM> - Part I</FONT></B><P>
|
||
<img src="./gx/mueller/rbw.gif"><BR>
|
||
<P>
|
||
The <EM>Revision Browser</EM> manages the modules and files of your project. A module
|
||
represents a directory and it groups the files logical. But a module can
|
||
contain submodules so that you can build a module hierarchy, which
|
||
represents your project.<P>
|
||
The <EM>Revision Browser</EM> shows this hierarchy in a GUI-element called <EM>browser box</EM>.
|
||
This box was inspired by a similar GUI-element of the <EM>NextStep</EM>-System
|
||
and it's a clever and easy way to display a hierarchy. Each listbox shows
|
||
one level of the hierarchy. The top of the hierarchy is shown in the most
|
||
left listbox. If you select an item the listbox to the right contains the
|
||
children of it. With the arrow buttons to the left and right of the box you can
|
||
scroll through the hierarchy.<P>
|
||
The files belonging to a module are shown in the right listbox. If you
|
||
double-click on an item the corresponding file will be shown in the editor.
|
||
To be exact: the file will be opened with the default application of
|
||
its category (see below). <P>
|
||
Every module has several properties. If you select a module and choose
|
||
<B><I>Edit->Info for File or Module</I></B> you get a dialog, where you can modify
|
||
the module properties. There are the following tabs:<P>
|
||
<UL>
|
||
<P>
|
||
<LI><B>Categories:</B> The files of a module are divided into categories. There
|
||
is an automatic assignment based on the file extension but you can do it
|
||
also explicitly. A file can be a member of more than one category. Categories
|
||
have mainly two meanings:<BR>
|
||
The first is, that each category represents a makefile symbol. All files of
|
||
a category are included in this symbol. In this way <EM>make</EM> knows how to
|
||
handle a file. An example is the default category 'CPP_source'. It includes
|
||
all files of the module with the extensions '*.C', '*.cc' and '*.cpp'. That
|
||
means normally they are C++-source code files. If you start to make a
|
||
module, all files of that category will be compiled with <EM>c++</EM> (as the
|
||
default C++-compiler).<BR>
|
||
As a second point you can assign one or more applications to a category. One
|
||
of them is the default application (this is normally the <I>WipeOut</I> editor
|
||
<EM>e3</EM>). If you double-click on a file in the filelist, this file will be
|
||
opened with the default application. If you select a file and click right
|
||
you'll get a small popup menu with all applications which are assigned via
|
||
the category to this file. By selecting one of them the file will be opened
|
||
with it.<P>
|
||
<LI><B>Directories:</B> Beside of its home directory you can assign other
|
||
directories to a module. These directories can have one or more of the
|
||
following meanings:
|
||
<UL>
|
||
<LI> Source : this is a directory where the debugger searches for source code
|
||
<LI> Header : this is a directory where additional header files are located, the
|
||
compiler will need this
|
||
<LI> Library : the compiler searches in this directory for libraries
|
||
<LI> Make : <I>WipeOut</I> starts a recursive make in this directory, when you
|
||
start to make the module
|
||
<LI> Browse : marks the directory for the <EM>Class Browser</EM> so that it will parse the
|
||
directory for classes
|
||
</UL>
|
||
The default properties of the module's home directory are 'Source' and 'Browse'.<P>
|
||
<LI><B>Options:</B> Here you can set some additional makefile options. If
|
||
you click on one of the buttons the editor shows the corresponding line of the
|
||
'<arch>.def'-file. You can set your compiler, compiler flags, include and
|
||
library paths, and libraries, which you want to link to your program.<P>
|
||
<LI><B>Tools:</B> Here you can set various tool properties. At present there
|
||
is only the make-command property: You can input here the make-command which
|
||
you like to use for making your project. The default is of course a simple
|
||
<TT>make</TT> but you may change it <TT>gmake</TT> or <TT>pmake</TT>.<P>
|
||
</UL>
|
||
<HR>
|
||
<B>WhatYouSeeIsWhatYouGet in <I>WipeOut</I></B><BR>
|
||
There is one point where <I>WipeOut</I> differs from many other programs: Mostly
|
||
settings will be persistent immediately, i.e. you don't need to save them
|
||
explicitly - real WYSIWYG. Just in some modal dialogs there are <B><I>OK</I></B>-
|
||
and <B><I>Cancel</I></B>-buttons, so that you have the choice to confirm or to cancel.
|
||
Furthermore you don't need to save property-changes you made for a module,
|
||
e.g. if you add a directory or category these items will be immediately visible
|
||
to all other components without saving and closing the dialogbox. We think
|
||
this kind of work is faster and intuitive.
|
||
<HR>
|
||
<P>
|
||
<img src="./gx/mueller/blue_ball.gif"><B><FONT SIZE=4>The aim of the game</FONT></B><P>
|
||
Now we know some things about modules and categories. It's time to turn back
|
||
to practice and produce a little chunk of code. In our example we will build
|
||
up a small <TT>String</TT> - class including the obligatory 'Hello World' - program.<P>
|
||
To create the source code for a module we have three possibilities:
|
||
<UL>
|
||
<LI> do it the old-fashioned and good way - open a new file in the editor
|
||
and hack the code into it
|
||
<LI> import existing files into the module
|
||
<LI> create class and method headers with the <EM>Class Browser</EM>
|
||
</UL>
|
||
<P>
|
||
We choose the last point, so that we can take a closer look at the <EM>Class Browser</EM>.
|
||
To open it just click on the third button of the <EM>Project Browser</EM>.<P>
|
||
<img src="./gx/mueller/blue_ball.gif"><B><FONT SIZE=4>The <EM>Class Browser</EM></FONT></B><P>
|
||
<img src="./gx/mueller/cbw.gif"><BR>
|
||
<P>
|
||
The <EM>Class Browser</EM> is bases on an incremental source code parser. That means your
|
||
code can be incomplete or wrong, but the <EM>Class Browser</EM> will scan it for classes,
|
||
methods, and members as good as possible. The <EM>Class Browser</EM> parses this project
|
||
directories which you marked as 'Browse' (see above). After building-up the internal
|
||
database the first time, only such files will be parsed again, which changed
|
||
or depend from changed files and new files. You have to tell the
|
||
<EM>Class Browser</EM> explicitly to update the class hierarchy with <B><I>Hierarchy->Update</I></B>
|
||
(or faster the corresponding toolbar button). But you must only update if
|
||
you changed a class or method declaration.<P>
|
||
Apart from the well-known browserbox, which is used here to show the class
|
||
hierarchy, the <EM>Class Browser</EM> has another <I>WipeOut</I>-standard GUI-element
|
||
- the <EM>panelbox</EM>.<P>
|
||
The development of the panelbox was necessary, because time after time there
|
||
were to many non-modal dialogs which showed important information. This
|
||
wasn't easy to survey. The panelbox is clearly structured and gives fast
|
||
access to various information without loosing survey. The panelbox consists
|
||
of one or more subpanels. You can assign the number and kind of the panels
|
||
with the small buttons in the top of it.<P>
|
||
The <EM>Class Browser</EM> has five different subpanels:
|
||
<UL>
|
||
<LI> Methods : shows the methods of the current class
|
||
<LI> Members : shows the members of the current class
|
||
<LI> Hotlist : shows the hotlist (see below)
|
||
<LI> All Classes : shows all classes of the hierarchy
|
||
<LI> All Methods : shows all methods of the hierarchy
|
||
</UL>
|
||
<P>
|
||
The hotlist is a collection of often used classes, methods and members, so
|
||
that you have fast access to them. With the menu item <B><I>Hotspots->Add
|
||
Hotspot</I></B> you can add the current class, method or member to the hotlist. A
|
||
double-click on a hotspot opens the corresponding file in the editor. This
|
||
is similar to all other listboxes. Beside of this you are able to control
|
||
the listboxes via keyboard: with the cursor keys, 'Home', 'End', 'PageUp'
|
||
and 'PageDown', but also with alpha-numerical keys. If you press a letter
|
||
the listbox cursor jumps to the first item beginning with that letter.<P>
|
||
But now we want to build our <TT>String</TT>-class: We do that with
|
||
<B><I>Edit->New Class ...</I></B>. We input the name of the class and press
|
||
<B><I>Insert In New File</I></B>. <I>WipeOut</I> will ask us several questions, but we
|
||
confirm all of them with <B><I>OK</I></B>. The editor shows us now a new header file
|
||
for our <TT>String</TT>-class. <P>
|
||
The next step is to add some methods. We do that with the <B><I>Edit->New
|
||
Method ...</I></B>-dialog. Simply input the method declaration as you know it
|
||
from C++/Java and set the editor cursor to the right places when <I>WipeOut</I>
|
||
asks you to do so. After writing some implementation code your source files
|
||
should look as follows:<P>
|
||
<B>Listing 1</B><P>
|
||
<PRE>
|
||
// $Id: issue30.html,v 1.3 2003/02/03 21:50:19 lg Exp $
|
||
// some comments ...
|
||
#ifndef _String_h
|
||
#define _String_h
|
||
class String {
|
||
protected:
|
||
char* _data;
|
||
public:
|
||
String(char *);
|
||
virtual String();
|
||
virtual String& operator= (char *);
|
||
virtual char* data() const;
|
||
};
|
||
#endif
|
||
</PRE>
|
||
<B>Listing 2</B><P>
|
||
<PRE>
|
||
// $Id: issue30.html,v 1.3 2003/02/03 21:50:19 lg Exp $
|
||
// some comments ...
|
||
#include <iostream.h>
|
||
#include <string.h>
|
||
#include "String.h"
|
||
String::String (char *data) {
|
||
_data = new char[strlen(data)+1];
|
||
strcpy (_data, data);
|
||
}
|
||
String::String() {
|
||
delete _data;
|
||
}
|
||
char* String::data() const {
|
||
return _data;
|
||
}
|
||
String& String::operator= (char* data) {
|
||
delete _data;
|
||
_data = new char[strlen(data)+1];
|
||
strcpy (_data, data);
|
||
return *this;
|
||
}
|
||
main() {
|
||
String str ("Hello ...");
|
||
cout << str.data() << endl;
|
||
}
|
||
</PRE>
|
||
Because we generated the class with the <EM>Class Browser</EM> we don't need to update the
|
||
class hierarchy explicitly. Beside of this the <EM>Class Browser</EM> added the files
|
||
'String.h' and 'String.cc' automaticly to the module in the <EM>Revision Browser</EM>.<P>
|
||
<img src="./gx/mueller/blue_ball.gif"><B><FONT SIZE=4>The <EM>Revision Browser</EM> - Part II</FONT></B><P>
|
||
Before we continue just a few words about version control for those of the
|
||
readers, who are not familiar with it. The repository (we set its directory
|
||
while creating the new project) is the central database of the version
|
||
control. All developers get the actual source code version from there. Each
|
||
developer has a local copy of this version (or a version of her/his choice)
|
||
and she/he can edit it.<P>
|
||
If the developer does a <EM>commit</EM> the local copy of the file goes into
|
||
the repository. Now all other developers have access to this new version of
|
||
the file. They have to <EM>update</EM> their local copy. If a developer made
|
||
changes at a file but didn't commit them yet and update this file now,
|
||
<EM>CVS</EM> merges the local copy and the actual version of the repository. The
|
||
developer will not loose his changes. After updating the local copy may
|
||
contain <EM>conflicts</EM>. That means the changes of the developer collide
|
||
with the changes from the repository version. The developer has to resolve
|
||
these conflicts (with support of the <EM>e3</EM>) before committing the file
|
||
again.<P>
|
||
If you take look at the file list of the <EM>Revision Browser</EM>, you will see there four
|
||
files: 'Makefile', '<arch>.def, 'String.h' and 'String.cc'. All these items
|
||
have a '[n]' at the beginning and empty parentheses at the end.
|
||
The signs within the brackets have the following meanings:<P>
|
||
<UL>
|
||
<LI>+ : the file is up-to-date
|
||
<LI>< : you need to 'Commit' the file
|
||
<LI>> : you need to 'Update' the file
|
||
<LI>x : there could be conflicts with other developers
|
||
<LI>X : there is a conflict within the file
|
||
<LI>n : the file was locally added
|
||
<LI>- : the file was locally deleted
|
||
<LI>? : no status information available
|
||
</UL>
|
||
<P>
|
||
Beside of the conflict symbols the signs have the same meaning for modules.<P>
|
||
The parentheses after the file name contain the version of the local copy.
|
||
If we select our module and commit it with <B><I>Revision->Commit File or
|
||
Module</I></B> the version numbers of the files change to '1.1' and the status
|
||
changes to '+'.<P>
|
||
Especially on team development the status of a file or module can change
|
||
every time. You have three possibilities to keep the <EM>Revision Browser</EM> up-to-date
|
||
(<B><I>Project->Module Properties</I></B>):
|
||
<UL>
|
||
<LI> on item select: status update each time you click on a file or module
|
||
<LI> on tool select: status update each time you select the first button
|
||
of the toolbar
|
||
<LI> timer interval: status update every <EM>x</EM> seconds
|
||
</UL>
|
||
<P>
|
||
Note that each status update causes a <EM>CVS</EM> command. If you work with
|
||
remote repositories but you have only a poor connection to it, it's
|
||
recommend to choose the second possibility.<P>
|
||
<I>WipeOut</I> has a lot other features for version control and team work, e.g.
|
||
you can create version branches for files and modules, you can merge
|
||
these branches again and you can assign symbolic names (tags) to versions.
|
||
You have various possibilities to import existing projects (with or without
|
||
<EM>CVS</EM>). All these things are described in the <I>WipeOut</I> documentation and
|
||
with a little patience it should be easy to find them out.<P>
|
||
Before we now compile our small project we'll take a look at the editor.<P>
|
||
<img src="./gx/mueller/blue_ball.gif"><B><FONT SIZE=4>The <EM>Text-Editor</EM></FONT></B><P>
|
||
<img src="./gx/mueller/e3.gif"><BR>
|
||
<P>
|
||
The editor is a central component of <I>WipeOut</I>. You use it for source code
|
||
editing and whenever another component needs to show a file or to know a
|
||
source code position it uses the editor. This is one of the basic concepts
|
||
of <I>WipeOut</I>: only one central text editor.<P>
|
||
This causes a very high integration of the editor into the development
|
||
environment. That's why it is not possible to use another editor within
|
||
<I>WipeOut</I>. This seems to be a great disadvantage because the most of the
|
||
developers have their own favourite editor and it's not easy to turn to another
|
||
one. But this way it is possible to integrate such features as the symbol
|
||
completion: If you press 'Ctrl-.' in the editor it will try to complete the
|
||
word you are writing currently. Therefor it uses the database of the
|
||
<EM>Class Browser</EM> and looks for a matching class, method or member name.<P>
|
||
Another nifty feature is the integrated man page viewer: If you select a
|
||
symbol in the <EM>Text-Editor</EM> and press 'Ctrl-m' the <EM>SurfBoard</EM> will show the related
|
||
man page if there is one. In the near future we will extend this to info
|
||
pages and external HTML-documentations.<P>
|
||
<I>Syntax Highlighting</I><P>
|
||
The highlighting of syntactical elements increases the readability of source
|
||
code. The <I>WipeOut</I>-editor uses <EM>regular expressions</EM> to do that. The
|
||
syntax is similar to the 'grep'-command. The documentation of <I>WipeOut</I>
|
||
contains a general overview of the meta-symbols. This kind of highlighting
|
||
slows down the editor a little bit but it gives you the flexibility to
|
||
create your own highlighting style.<P>
|
||
A <EM>style</EM> is a set of a regular expression, a file pattern, a color and
|
||
a font. Each style highlights a special syntactical element specified
|
||
by the regular expression in the given color and font, but only in those
|
||
files, which match the file pattern. You can create and edit styles with
|
||
<B><I>Properties->Highlighting</I></B>. <P>
|
||
The editor has default styles for C++, Java, Objective-C, LaTeX and HTML.
|
||
You can use this styles as they are, but you can also change them. There is
|
||
a lot of space for experiments.<P>
|
||
Beside the styles there are some other parameters: various colors, tabs,
|
||
undo-depth, font sizes, etc. Finally the editor is very easy to use, so
|
||
that there shouldn't be to big problems. <P>
|
||
<img src="./gx/mueller/blue_ball.gif"><B><FONT SIZE=4>The <EM>Make-Shell</EM></FONT></B><P>
|
||
<img src="./gx/mueller/make.gif"><BR>
|
||
<P>
|
||
But now back to our mini-project: after creating files, adding them to a
|
||
module, working with the <EM>Class Browser</EM> and the <EM>Text-Editor</EM> it's time to compile the
|
||
program.<P>
|
||
<I>WipeOut</I> uses <EM>make</EM> to compile your projects. Normally all necessary
|
||
files will be created automaticly based on the module information. Each
|
||
module has three different parts for the makefile: <P>
|
||
<UL>
|
||
<LI> <EM>Makefile.inc</EM>: contains various symbol definitions, e.g. each
|
||
category gets a symbol, which contains the files of the category. The
|
||
makefile uses this symbols to determine, which files to compile for a
|
||
special target. This file will be updated continuously be <I>WipeOut</I> and you
|
||
should not edit it.
|
||
<LI> <EM><arch>.def</EM>: contains platform depending parameters. '<arch>'
|
||
will be replaced by the OS-name, e.g. Linux. When you develop a project
|
||
with <I>WipeOut</I> across various platforms this file helps you to make the
|
||
platform specific compiler settings.
|
||
<LI> <EM>Makefile</EM>: This is the makefile itself. It includes 'Makefile.inc'
|
||
and '<arch>.def'. You can edit it for adding other than the default targets.
|
||
The <EM>Make-Shell</EM> will call <EM>make</EM> with this file. The makefile contains default
|
||
rules to compile C-, C++-, Java- and flex-sources. It has targets to
|
||
build C/C++- and Java-programs and static or shared libraries.
|
||
</UL>
|
||
<P>
|
||
To start <EM>make</EM> we open the <EM>Make-Shell</EM> with the 5th button of the <EM>Project Browser</EM>. This
|
||
dialog has only a few elements: the <B><I>Start</I></B>-button to start <EM>make</EM>, an
|
||
edit field to set a special target (an empty field means the default target -
|
||
'cplusplus') and two checkboxes. Normally <EM>Make-Shell</EM> shows only compiler errors
|
||
and warnings in the lower listbox after <EM>make</EM> has finished. If we check
|
||
'All Lines', we get all the <EM>make</EM> output in the listbox. If we check
|
||
<B><I>Progress Window</I></B>, a small output console opens while compiling and shows the
|
||
original <EM>make</EM> output.<P>
|
||
We compile our program simply by pressing <B><I>Start</I></B>. After finishing the
|
||
error listbox shows us a warning about a virtual constructor. We click on
|
||
the warning and the editor cursor jumps to the error line. We recognize
|
||
that the constructor should be a destructor and so we complete the
|
||
implementation and declaration with the tilde-letter. We compile again and
|
||
now everything should be okay.<P>
|
||
To test our program we open the shell of the <EM>Project Browser</EM> and input the name of our
|
||
module because this is the name of the program. The output is, oh wonder:<P>
|
||
<TT>Hello ...</TT><P>
|
||
As the next step we extend our project somewhat. Therefor we add two
|
||
methods:<P>
|
||
<B>Listing 3</B>
|
||
<PRE>
|
||
String& String::operator+= (const String& rhs) {
|
||
char* buf = new char[length()];
|
||
for (int i=0; i<length(); i++)
|
||
buf[i] = data()[i];
|
||
for (int i=0; i<rhs.length(); i++)
|
||
buf[length()+i] = rhs.data()[i];
|
||
delete _data;
|
||
_data = buf;
|
||
return *this;
|
||
}
|
||
int String::length() const {
|
||
return strlen(data());
|
||
}
|
||
</PRE>
|
||
We modify the main function as follows:<P>
|
||
<B>Listing 4</B>
|
||
<PRE>
|
||
main() {
|
||
String str ("Hello");
|
||
str += String (" from WipeOut.");
|
||
cout << str.data() << endl;
|
||
}
|
||
</PRE>
|
||
After recompiling and running the program we now get a 'Segmentation fault'
|
||
and we have no idea why. This is the right time to use the debugger.<P>
|
||
<B>The debugger</B><P>
|
||
<img src="./gx/mueller/bugview.gif"><BR>
|
||
<P>
|
||
We start the debugger with the fourth button of the <EM>Project Browser</EM>. The interface
|
||
consists of similar elements as the <EM>Class Browser</EM>: the browserbox and the
|
||
panelbox. The panelbox has five different subpanels:<P>
|
||
<UL>
|
||
<LI> Breakpoints : shows all breakpoints
|
||
<LI> Stack : shows the current execution stack
|
||
<LI> Sources : shows all source related to the program
|
||
<LI> Expression : shows a special variable expression
|
||
<LI> Threads : used when debugging threads
|
||
</UL>
|
||
<P>
|
||
We arrange the panelbox for our needs: we add the 'Sources'-panel to the
|
||
two default panels 'Breakpoints' and 'Stack' by clicking on the small
|
||
'plus'-button.<P>
|
||
Now we load the program with <B><I>Session->Load Executable</I></B>. After that
|
||
the 'Source'-panel should show all source files related to the program.<P>
|
||
The browserbox is used to show variable values. The first listbox shows per
|
||
default all local variables. If you click on an item, the next level shows
|
||
the value or the components of it. This way you can easy browse classes,
|
||
structures and arrays. After every action the debugger refreshes the
|
||
variable values automaticly.<P>
|
||
If you like to inspect a variable, which is not shown in the browserbox at
|
||
the moment, just mark it in the editor and choose <B><I>Inspect Variable</I></B>
|
||
in the toolbar of the debugger. Now the first list of the browserbox
|
||
contains the variable.<P>
|
||
Normally the debugger resolves data structures automaticly, so that you
|
||
always get the correct values, e.g. it shows the content of a pointer and
|
||
not the pointer value itself. But sometimes this is not possible, e.g. if
|
||
you declared an array of integer-pointer as '<TT>int**</TT>'. To get the
|
||
items of the array you have to cast the type with <B><I>Inspect->Change/Cast
|
||
Variable</I></B>. <P>
|
||
With <B><I>Inspect->Move Variable to Top</I></B> it is possible to move a variable
|
||
from a lower level of the hierarchy to the top, so that you don't need to
|
||
browse through the whole hierarchy to get the value of the variable.<P>
|
||
Because we've got no idea what's wrong with our program, we simply start it
|
||
with <B><I>Run->Run</I></B>. This causes a 'Segmentation fault' again, but after
|
||
we have confirmed the messagebox the editor colors the error line with red.
|
||
We've got an error in the method <TT>String::operator+=</TT>.<P>
|
||
Before we correct the error we should kill the program with <B><I>Run->Kill</I></B>.
|
||
To know what's going on in the method we want to find out what the
|
||
method <TT>data</TT> does. We use the <EM>Class Browser</EM> as <EM>cross-referencer</EM> to find
|
||
the implementation of this method. Therefore we mark <TT>data</TT> and choose
|
||
<B><I>Edit->Search Symbol</I></B> in the <EM>Class Browser</EM>. Now the editor shows the source
|
||
code of the method <TT>data</TT>. We see, that the method doesn't do anything
|
||
exciting, only returning the <TT>_data</TT>-pointer. We go back to the
|
||
<TT>String::operator+=</TT> method, take a closer look on it and recognize
|
||
that we've allocated not enough memory for <TT>buf</TT>. So we modify the
|
||
first line as follows:<P>
|
||
<PRE>
|
||
char* buf = new char[length() + rsh.length()];
|
||
</PRE>
|
||
We compile and run the program again and everything is fine. But we can't
|
||
see the output. We resolve the problem with <B><I>Inspect->Program Console ...</I></B>.
|
||
This opens a small console and after starting the program again, we see
|
||
the output:<P>
|
||
<TT>Hello from WipeOut.</TT><P>
|
||
The debugger has of course a lot of more features than explained above. Besides
|
||
of <B><I>Next</I></B>, <B><I>Step</I></B> and setting breakpoints it supports also threads.
|
||
It is recommended again to read the documentation about it.<P>
|
||
Beside of the <EM>Symbol-Retriever</EM> and the help browser <EM>SurfBoard</EM> now you touched all the
|
||
components so that you've got a first impression the way <I>WipeOut</I> works.
|
||
Of course we develop <I>WipeOut</I> with <I>WipeOut</I> and we find that it very
|
||
increases our productivity and makes it easier to program than just using
|
||
a simple text editor. Finally some words about extending <I>WipeOut</I>.<P>
|
||
<img src="./gx/mueller/blue_ball.gif"><B><FONT SIZE=4>Writing own <I>WipeOut</I> components</FONT></B><P>
|
||
At this time <I>WipeOut</I> contains only the most important components of our
|
||
opinion. There may be a lot of other possibilities, e.g. many people may
|
||
wish a GUI-builder. We can't and we don't want to do all that alone. So we
|
||
have created the <EM>WDK</EM> - the <I>WipeOut</I> Development Kit, which allows you
|
||
to develop your own components. This interface gives you access to
|
||
important functions of <I>WipeOut</I>, e.g. showing a file in the editor or
|
||
adding a file to a module.<P>
|
||
If you like to program such components you only need to download the
|
||
<EM>WDK</EM>-package from [4]. Apart from the documentation the package contains
|
||
<EM>DmPack2</EM>, <EM>socket++</EM>, the <EM>wxXt</EM> header files, a simple
|
||
example component and <EM>SpellMaster</EM> - a frontend for <EM>ispell</EM>. <P>
|
||
I hope you've got a rare overview about <I>WipeOut</I> and its possibilities. If
|
||
you have questions, comments or wishes, write us.<P>
|
||
<TABLE>
|
||
<TR>
|
||
<TD ALIGN=LEFT><FONT SIZE=5>Resources</FONT></TD>
|
||
</TR>
|
||
<TR>
|
||
<TD ALIGN=LEFT>
|
||
[1] <A HREF="http://web.ukonline.co.uk/julian.smart/wxwin">http://web.ukonline.co.uk/julian.smart/wxwin</A> -
|
||
wxWindows/wxXt by Julian Smart and Marcus Holzem</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD ALIGN=LEFT>
|
||
[2] <A HREF="ftp://ftp.virginia.edu">ftp://ftp.virginia.edu</A> - socket++ by Gnanasekaran Swaminathan</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD ALIGN=LEFT>
|
||
[3] <A HREF="http://www.softwarebuero.de/dmpack2.html">http://www.softwarebuero.de/dmpack2-eng.html</A> - DmPack2</TD>
|
||
</TR>
|
||
<TR>
|
||
<TD ALIGN=LEFT>
|
||
[4] <A HREF="http://www.softwarebuero.de/wipeout.html">http://www.softwarebuero.de/wipeout-eng.html</A> - <I>WipeOut</I></TD>
|
||
</TR>
|
||
</TABLE>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Gerd Mueller <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./bennet.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./nelson.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">Install New Icons in Caldera's Looking Glass Desktop</font></H1>
|
||
<H4>By <A HREF="mailto:nelson@er.doe.gov">David Nelson</A></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
Looking Glass, or <TT>lg</TT>, is a pleasant GUI desktop included in
|
||
Caldera's commercial Linux releases (not the lite versions.) However, its
|
||
setup procedures and documentation can be very unpleasant. Deciphering
|
||
how to add or change icons makes cracking the Enigma code machine look
|
||
easy. If you enjoy puzzles and have plenty of time, read <TT>/usr/doc/html/Caldera_Info</TT>,
|
||
specifically the Desktop User's Guide, Chapters 9 and 11. If you prefer
|
||
some help, read on.
|
||
|
||
<P>I wanted to place an icon on the <TT>lg</TT> desktop to launch Applixware,
|
||
an office suite available from RedHat. To do this I had to create an icon
|
||
with a paint program, import it into the <TT>lg</TT> icon gallery, edit
|
||
the "source file for file type definitions," create a new "LG_rulebase
|
||
file," and update the <TT>lg</TT> data directory. Makes a certain commercial
|
||
desktop look pretty friendly, what?
|
||
|
||
<P>Actually, it wasn't as bad as it sounds, and the new icon looks good
|
||
and works well. This article will guide you through the process. Here is
|
||
your very own free Applixware <A HREF="./gx/nelson/applix.gif">icon</A> ready to install
|
||
in <TT>lg;</TT> please don't complain about my artistry. You can use the
|
||
same process to install any program's icon.
|
||
|
||
<P>The first step is to create the icon. I tried to use the <TT>lg</TT>
|
||
icon editor but found it crude and prone to crash. Xpaint works well and
|
||
is probably already on your system; to be sure, execute the command
|
||
<PRE>locate xpaint</PRE>
|
||
I used Applix Graphics, in part to learn more about Applixware, with final
|
||
touch-up in the <TT>lg</TT> icon editor. Whatever program you use, the
|
||
resulting icon should be about 40x40 pixels, stored in either GIF or PPM
|
||
format.
|
||
|
||
<P>The next step is to import the icon. At the top of the <TT>lg</TT> desktop,
|
||
click on Run, then Icon Editor. When the editor opens, click on Galleries,
|
||
then System Icon Gallery. When the gallery window opens, click on Icon,
|
||
then New. You will see an emphasized (black) area with a blank icon picture,
|
||
probably labeled icon1. At the top of the gallery window, click on Icon,
|
||
then Import. A file window opens. Navigate to where your GIF or PPM file
|
||
is. Click on the file, then click on load in the file window. If the icon
|
||
is just the right size, it will import directly into the emphasized area
|
||
in the system gallery. If not, a window will appear that contains your
|
||
icon. If part is cut off, drag on the lower right corner to enlarge the
|
||
window and show your whole icon. (I'm assuming your icon ended up somewhat
|
||
bigger that 40x40.) Click the radio button "Scale," then "Filter on Scale."
|
||
This latter button smooths the image as you resize it. You should see a
|
||
little box at the upper left of your icon picture. Drag the corners to
|
||
cover your icon. Your final icon now appears in a smaller box at the upper
|
||
right of the window. Click Apply; the gallery window puts your icon into
|
||
the blank icon picture and changes the name to that of your icon file.
|
||
|
||
<P>To give the icon the right name, click on Icon in the gallery window,
|
||
then Rename. In the New Name box, type APPLIX_PRG and click on OK. If you
|
||
want to do some final "fat bits" touch-up, click Icon, Edit, and have at
|
||
it. I suggest that you save your work frequently, because the editor crashed
|
||
on me. Don't bother editing the mask. It gives a 3D appearance to a selected
|
||
icon, and the default mask is good enough. When done with the editor, click
|
||
File, Close, and your final icon appears in the gallery. In the gallery
|
||
window, click File, Close, and say yes to save your work. One last warning.
|
||
Even though the icon editor lets you export the completed icon for other
|
||
purposes, this feature seemed broken. All graphics programs I tried complained
|
||
that the exported icon file was unreadable. (Did I mention that the
|
||
<TT>lg</TT> editor seems to have problems?)
|
||
|
||
<P>Now you have to tell <TT>lg</TT> how to use the icon. Change directory
|
||
to <TT>/usr/visix/lg/default/lg_ftc</TT>. Open <TT>prog.loc.ftc</TT> in
|
||
your favorite editor. This source file defines local file types and their
|
||
associated icons. Insert the following text at the beginning, after the
|
||
two "include" lines:
|
||
<PRE>DEFINE TYPE Applix
|
||
ICON APPLIX_PRG
|
||
FILE_DESCRIPTION "Applix desktop suite program"
|
||
BINARY_EXECUTABLE
|
||
AND NAME "applix"
|
||
INHERIT_COMMANDS BinExNativeClass
|
||
END</PRE>
|
||
No, I don't know what it all means. I adapted it from other program entries.
|
||
But, hey, it works, and most of it is obvious. If your icon is for a different
|
||
program, edit accordingly. Save the file. At the command line in the same
|
||
directory, type<TT> make all </TT>and<TT> make install</TT>. Quit and restart
|
||
the <TT>lg</TT> desktop.
|
||
|
||
<P>We're almost done. In the <TT>lg</TT> window click on Windows, then
|
||
Open Directory. Navigate to <TT>opt/applix</TT> (or wherever <TT>applix</TT>
|
||
is stored) and you should see your beautiful icon designating your program.
|
||
Drag the icon out of the directory window and onto the desktop window.
|
||
Park it in an aesthetically pleasing place. Launch your program by doubleclicking
|
||
your new icon. Congratulations. Doesn't this make you want to read the
|
||
rest of the <TT>lg</TT> documentation? Actually, you might want to learn
|
||
about file associations and other wonders of <TT>lg.</TT> Then you can
|
||
write an article for lg (that's Linux Gazette here) telling the rest of
|
||
us how you did it.
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, David Nelson <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./mueller.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./pagey.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">Installing Microsoft & Linux</font></H1>
|
||
<H4>By <a href="mailto:pagey@home.com">Manish P. Pagey</a></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
This is a story about my struggles setting up a new laptop computer to
|
||
boot two different operating systems. And how I discovered the extent to
|
||
which Microsoft and IE4 are lacking. Hopefully, someone will learn from this
|
||
experience and think twice before installing IE4 on there machine.
|
||
<P>
|
||
The first operating system that I wanted to install on the machine was
|
||
Linux (a free, UNIX like operating system which can teach Microsoft a
|
||
million or two things about what a stable operating system is supposed
|
||
to be like). I booted the computer using the Linux boot disks, inserted
|
||
the Linux CD-ROM into the CD drive and finished the installation in less
|
||
than thirty minutes. Everything was up and running including the network
|
||
using a PCMCIA network card. Linux comes with a program called LILO
|
||
which allows one to decide which operating system to boot when the
|
||
system is powered up. This was also installed without any problems.
|
||
<P>
|
||
The next task was to install Windows 95 on another partition of the same
|
||
disk. That is where my nightmare began. (Of course, you may ask why I
|
||
wanted to do this in the first place. Because I am stupid, thats why).
|
||
The developers at Microsoft have no regard for other operating systems
|
||
and have been living in their shells for so long that they could not
|
||
imagine having two operating systems on the same computer. In any case,
|
||
after booting from the Windows 95 setup disk, the setup program kept
|
||
insisting on destroying all partitions from the disk before installing
|
||
the "operating system". It gave me only two choices: Let it partition
|
||
the disk again or Exit setup.
|
||
<P>
|
||
My first choice was to exit setup and try to trick it into installing
|
||
Win95 on a DOS partition that was already present. So, I went to the
|
||
"A:>" prompt (LOL) and fired up fdisk. I could see the DOS partition and
|
||
hence I could format the "C:" drive. I was hoping that after I format
|
||
the "C:" drive and then try installing Win95 from "Disk 1" instead of
|
||
the "Setup Disk", everything will work fine. So, I formatted the C:
|
||
drive and started the "setup" program from "Disk 1". Everything seemed
|
||
to work fine till the third disk and once again the setup program
|
||
refused to proceed; this time because of a similar reason which I do not
|
||
recall.
|
||
<P>
|
||
I was kinda stuck at this point because if I let the Win95 setup program
|
||
to repartition the disk, it will gobble up the whole disk and would not
|
||
leave any space for the second operating system. The other option was to
|
||
use the DOS fdisk utility to destroy all partitions on the disk and
|
||
create a new partition for installing Win95 and install Win95 before
|
||
installing Linux. That is the path I took.
|
||
<P>
|
||
So, I destroyed my perfectly working Linux partition and installation
|
||
and created a new partition to install Win95. This time, the setup
|
||
program worked without any problems and installed the Win95 operating
|
||
system on the first partition on the disk. In a few minutes after that I
|
||
had Linux running once again on the second partition and reinstalled
|
||
LILO to choose the operating system during startup.
|
||
<P>
|
||
As before, I had no trouble getting the network up and running on the
|
||
Linux OS. So, I decided to setup the networking on the Win95 side. Guess
|
||
what, the driver that Win95 installed to access the PCMCIA cards was not
|
||
working properly. I had to try different drivers (and reboot the machine
|
||
every time I selected a new driver) and get the correct one by trial and
|
||
error. (I did the obvious things such as look up the documentation for
|
||
the computer and install the driver corresponding to the documentation,
|
||
but that did not work. I had to use a driver that conflicted with the
|
||
documentation in order for Win95 to access the PCMCIA cards correctly.
|
||
On the other hand, the driver that Linux was using was consistent with
|
||
the documentation). Finally, after a long struggle and several million
|
||
reboots, I got Win95 to see my PCMCIA cards. Linux came with the driver
|
||
for the Ethernet card that I was using but Win95 had to use the floppy
|
||
disk provided by the manufacturer (and they say that Win95 supports more
|
||
hardware).
|
||
<P>
|
||
I have been exposed to all this hype about IE4.0 and such. So, I decided
|
||
that instead of using the good old Netscape Communicator, I will give
|
||
IE4.0 a test drive. (Once again, you may ask why I would do such a
|
||
stupid thing. Now that I have gone through this torture that I am
|
||
describing, I must say that I will never attempt to give a Microsoft
|
||
product a test drive just because Microsoft says its good. What was I
|
||
thinking ?). I have a fast connection to the Internet and hence, the
|
||
obvious way to install IE4.0 was to download it from the Microsoft home
|
||
page. You would love what happened next.
|
||
<P>
|
||
My local network is behind a firewall. In order to access the Internet,
|
||
we need to use SOCKS proxy service provided by the local gateway
|
||
machine. This is not something that is very uncommon in the present
|
||
corporate networks (in fact, this might even be the most common
|
||
configuration). Coming back to my attempt at installing IE4.0, I clicked
|
||
on "The Internet" icon sitting on the desktop and went through the
|
||
process of setting up the network properties for the machine. After all
|
||
the setup was done, I was hoping for it to bring up a browser window for
|
||
me. But I realized that the first time you click on this program, it
|
||
only performs the setup. You have to run it again to start the browser.
|
||
I am not sure why it was set up this way, but I will ignore this for the
|
||
time being as there are more important things for me to complain about.
|
||
After bringing up this ancient version of Internet Explorer, I wanted to
|
||
setup the address of the proxy server so that I could access the
|
||
Internet and go to Microsoft's home page. Aha !! The Internet Explorer
|
||
that was packaged with my version of Win95 does not understand proxies.
|
||
This meant that sitting there I had no way to access the Internet
|
||
through my proxy server. I knew that Netscape could do this. So the only
|
||
way to get IE4.0 on my machine was to install Netscape first !!!!! Even
|
||
getting Netscape was not easy from within Win95. I had to reboot the
|
||
machine into Linux. Since Linux came with client programs to access
|
||
Socks proxy servers, I could get to the Netscape FTP site and download
|
||
the Communicator for Win95. I rebooted the machine into Win95 and
|
||
installed Netscape without any problem. I set the preferences for
|
||
Netscape so that it knew about my proxy server and everything was
|
||
running fine as far as accessing the Internet is concerned.
|
||
<P>
|
||
I used Netscape to download the "ie4setup" file from the Microsoft home
|
||
page and fired it up. I will give you one guess to tell me if it worked.
|
||
You are right !!! It did not even come close to working. The ie4setup
|
||
file does nothing more than connecting to another server and downloading
|
||
a bunch of files that are required to install IE4.0. Since I am behind a
|
||
firewall, it could not find the server. It would be fine if it returned
|
||
back in a few seconds and told me that it could not find the server. But
|
||
that would be the right thing to do and Microsoft just cannot do any
|
||
such thing. Instead, the ie4setup program made me glare at a rotating
|
||
globe for fifteen minutes before giving up the search for the server.
|
||
After not finding the server, the programmer had half a brain cell to
|
||
ask the user for the address of a proxy server. However, this feature of
|
||
the setup program does not support SOCKS proxy (I tried putting the
|
||
address of my proxy server but it did not work). Thanks to the people at
|
||
NEC not all was lost yet.
|
||
<P>
|
||
I remembered reading about the program SocksCap32 which allows Win95
|
||
programs to access the Internet though a SOCKS proxy server. So I fired
|
||
up Netscape again and downloaded/installed SocksCap32. After starting
|
||
ie4setup through SocksCap32, it could access the servers and started
|
||
downloading the rest of the files that are necessary to install IE4.0.
|
||
Just before starting to download these files, it gave me an option of
|
||
either saving these files on disk or directly installing IE4.0. I had
|
||
little patience left at this time, so I chose the latter. The ie4setup
|
||
downloaded all the files correctly and started the installation process.
|
||
<P>
|
||
The installation process continued correctly until about 75% of
|
||
installation was complete. At this point, I had to leave the computer
|
||
and go away for several hours. I was hoping that when I come back, this
|
||
installation will be over. (I am sure you are laughing at me right now).
|
||
<P>
|
||
I came back after about three hours and the installation process had
|
||
reached 78% !!!!!!! I waited for a few minutes to see if it was doing
|
||
anything. There was no disk activity and hence I concluded that the
|
||
program had crashed or hung up. So I clicked on the "Cancel" button to
|
||
stop the installation. It came up with a window which said that the
|
||
"cancellation" process will take several minutes and that I should not
|
||
reboot the machine because that might leave the machine in an
|
||
inconsistent state (whatever that means). So I waited for it to finish
|
||
the job. There was no disk activity for half an hour which is also when
|
||
my patience ran out. I rebooted the machine. When it came up in Win95,
|
||
it had installed IE4.0 but not many of its components. I was not sure
|
||
what was going on but soon realized that since the ie4setup was run
|
||
under SocksCap32, it must have started the rest of the setup under
|
||
SocksCap32 too. And, knowing Microsoft, it may not have been designed to
|
||
work under the SocksCap32 libraries.
|
||
<P>
|
||
This meant that I should have stored the files downloaded by ie4setup on
|
||
the disk and started the setup without using SocksCap32. So, I fired up
|
||
ie4setup through SocksCap32 once again and downloaded all the files to
|
||
my disk. After that, I started the setup program from these downloaded
|
||
files and IE4.0 was installed on the machine without any more problems
|
||
in just a few minutes. Whew.
|
||
<P>
|
||
Great. Now that I have IE4.0 and Outlook Express 98 installed on my
|
||
machine, I should start using them. I started up IE4.0 and set it up to
|
||
use the proxy server. It worked just fine and I could access the
|
||
Internet. So far so good. Now, I needed to setup my mail account. So, I
|
||
clicked on the "Mail" button which started up Outlook Express. It asked
|
||
me for my email address, mail server name etc. in order to setup the
|
||
mail account. After that, I tried to check for new mail. And nothing. It
|
||
brought up a window in which it displayed a message that it was trying
|
||
to connect to my mail server but stopped in a minute with an error
|
||
saying that the connection to the server had failed !! My POP3 mail
|
||
server is outside the local network. Which means that one has to get to
|
||
it through the SOCKS server. Netscape has no problem doing this but at
|
||
this point, I have not found any way to setup Outlook Express to do
|
||
this. And this is when I decided to give up completely on IE4.0/Outlook
|
||
Express/Win95. I am back to using good old reliable Netscape.
|
||
<P>
|
||
I am not sure if anyone in the Linux community will benefit from this but I am
|
||
sure some of the people "on the other side" can learn something from it.
|
||
<P>
|
||
--Pagey
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Manish P. Pagey <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./nelson.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./jacobowitz.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">Linux Expo a Smashing Success! </font></H1>
|
||
<H4>By <a href="mailto:normj@aa.net">Norman M. Jacobowitz</a></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
For three days of May (28, 29, 30), the normally tranquil Duke University
|
||
Campus was transformed into a raucous playground for geeks and hackers
|
||
as the Fourth Annual Linux Expo was held at Duke's Bryan Center.
|
||
<p>
|
||
By all accounts, this year's Expo was a smashing success. Red
|
||
Hat's Marketing Director, Lisa Sullivan, deserves special thanks for organizing
|
||
and directing the event. Many others, from Key Note Speaker Linus
|
||
Torvalds to the blue-shirted Duke University catering staff, were instrumental
|
||
in making it a memorable three days.
|
||
<p>
|
||
According to Sullivan, approximately 1500 visitors were registered as
|
||
paid attendees, while another 350 to 500 were registered as speakers, VIPs
|
||
or other gratis attendees. Attendees ranged from as far away as
|
||
Korea, Finland, Colombia and Alaska. Some 34 exhibitors
|
||
showed their products and services.
|
||
<p>
|
||
Some of the speakers included:
|
||
<p>
|
||
<ul>
|
||
<li> Eric S. Raymond gave an inspired, scholarly overview of hacker
|
||
motivation in his ``Homesteading the Noosphere'' speech.
|
||
<li> Miguel de Icaza, despite troubles with the overhead projector, shared
|
||
much about the technical details and future features of ``GNOME, The GNU
|
||
Network Object Model Environment'' GUI.
|
||
<li> Mark Mathews described his success as a consultant and Linux programmer
|
||
in his talk, ``Developing Linux Software for Fun--Turns into
|
||
Profit''.
|
||
<li> Jon ``maddog'' Hall described his encounters with Linux users worldwide
|
||
during ``Linux Around the World''.
|
||
</ul>
|
||
Some exhibitors included:
|
||
<p>
|
||
<ul>
|
||
<li> Corel Computer Corporation displayed their new Linux-based NetWinder
|
||
Network Computer.
|
||
<li> Digital Equipment Corporation exhibited their latest generation Alpha
|
||
processors.
|
||
<li> Linux Hardware Solutions showed off some of their line of, well,
|
||
Linux hardware solutions.
|
||
<li> Caldera, Red Hat and Turbo Linux were there presenting their latest
|
||
Linux distributions.
|
||
</ul>
|
||
Of course, the single most popular event was Friday evening's keynote
|
||
address by Linus Torvalds. An estimated 1000 to 1200 folks were on
|
||
hand. In his typically unpretentious, casual and brutally honest
|
||
style, Linus filled us in on his future vision for the Linux kernel.
|
||
Linus first took a moment to thank everyone who has helped him with
|
||
the stable kernel releases, especially Alan Cox. Linus went
|
||
on to say he is happy with the way Linux is going, especially with
|
||
the way new markets are opening up and new applications are being
|
||
made available.
|
||
<p>
|
||
Here are some highlights of Linus's views on important topics for the
|
||
future of the Linux Kernel:
|
||
<p>
|
||
<ul>
|
||
<li> The 2.2 release: look for a code freeze in about a month with the
|
||
next stable release, Kernel 2.2, to follow as soon as late July or early
|
||
August.
|
||
<li> SMP: Symmetrical Multi-Processing is currently one of Linus's favorite
|
||
features of the kernel; expect continued development and enhancement of
|
||
SMP in future releases.
|
||
<li> Merced: Linus is not particularly impressed with or concerned about
|
||
Intel's upcoming 64-bit processor, code-named Merced--he actually prefers
|
||
DEC's Alpha architecture. He did say porting Linux to Merced should
|
||
be no problem once GCC is optimized for Merced.
|
||
<li> Java: While Linus would like to see an officially supported Java Development
|
||
Kit from Sun, he is still not impressed with Java and would prefer to stay
|
||
out of the Microsoft/Sun clash over Java purity.
|
||
<li> Emulation: Linus would prefer to see native Linux applications and
|
||
does not like the idea of emulating other operating systems for the purpose of running
|
||
applications.
|
||
</ul>
|
||
Of course, Linus had much more to say, but the gist of his speech was
|
||
that with more time and some more good luck, Linux will continue to move
|
||
towards complete world domination.
|
||
Judging from the air of excitement and the buzz of optimism pervading
|
||
this year's Linux Expo, Linus is exactly right.
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Norman M. Jacobowitz <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./pagey.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./raymond.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">Linux Expo Editor Wars!</font></H1>
|
||
<H4>By <a href="mailto:esr@thyrsus.com">Eric S. Raymond</a></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
Thursday night's epic paintball tournament was easily one of Linux
|
||
Expo's most eagerly anticipated and talked-about events. The theme
|
||
was ``Emacs versus vi and may the best editor win!'' At the appointed
|
||
time, the would-be warriors trooped off to a patch of woods south
|
||
of Durham and donned team T-shirts donated by O'Reilly & Associates. By
|
||
happy coincidence, the 61 fighters split as exactly as possible
|
||
down the middle, 30 on the Emacs team and 31 on vi's.
|
||
Ominously, however, all three of the experienced paintballers in the
|
||
crowd elected to fight for vi.
|
||
<p>
|
||
As we waited for mysterious rituals to complete in the paintball shed,
|
||
there was much humorous analogizing--vi fans claiming that Emacs's
|
||
guns ought to take forever to load, countered by Emacs partisans opining
|
||
that vi fighters should be unable to move and fire at the same time.
|
||
``You shall feel the power of the Lisp side of the Force!'' declaimed
|
||
one black-masked Emacs fan a la Darth Vader, met by hoots of derision
|
||
and yells of ``vi rules!''
|
||
<p>
|
||
Additional humor was provided by the boss paintball referee, who
|
||
understood neither our theological disputes nor the lemur and gnu
|
||
emblems on our team shirts. He gave up early and started referring to
|
||
the teams as ``monkeys'' and ``cows'', much to the amusement of both sides.
|
||
<p>
|
||
Eventually, not too long after the official start time, we listened to
|
||
a safety lecture, picked up our guns, face masks and
|
||
glycerin-capsule ammunition and marched into the woods. Each team
|
||
got a fortified fire base; the game was elimination, with the last man
|
||
standing winning for his team.
|
||
<p>
|
||
Telling friend from foe turned out to be a bit of a problem, as both
|
||
teams were wearing white T-shirts with black emblems and the colored
|
||
arm bands we'd been issued were not really conspicuous--some truly
|
||
valiant hackers were hit by friendly fire. There were heroic
|
||
charges and stealthy ambushes, sniping duels and stand-up fights. The
|
||
paintballs flew thick and fast, and the woods resounded with cries of
|
||
``Out! Out!'' as pigment-splotched casualties exited the field, guns
|
||
held over their heads.
|
||
<p>
|
||
The teams' combat styles were allegorically perfect. The vi guys were
|
||
fast, aggressive and sloppy; the Emacs team was slow, tried to think
|
||
things out and play tactically. Result? The vi guys waxed the Emacs
|
||
team, winning three out of four games. Evidently (as many on both
|
||
sides later agreed, amid much laughter) paintball rewards different
|
||
virtues than programming.
|
||
<p>
|
||
The event was a success, and general kudos went to Mike Maher of Red Hat
|
||
from whose brilliant and obviously twisted mind the concept originally
|
||
sprang. Next year perhaps we'll tackle Perl vs. Python or Red Hat
|
||
vs. Every Other Distribution or some other chronic flame war--and,
|
||
hopefully, get different-colored shirts so we can tell each other
|
||
apart!
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Eric S. Raymond <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./jacobowitz.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./penland.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">The Fourth Annual Linux Expo</font></H1>
|
||
<H4>By <a href="mailto:dpenland@mindspring.com">David Penland</a></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
<A HREF="./photos1.html">Photo Album</A>
|
||
<P> <HR> <P>
|
||
This year, Red Hat Software decided to hold the fourth annual Linux Expo
|
||
at Duke University's Bryan Center in Durham, North Carolina. The event was
|
||
scheduled over three days from April twenty-eighth to the thirtieth. In
|
||
addition to the normal vendor displays and conference, the Linux Expo web
|
||
site promised such diverse attractions as a quake fest and a paintball
|
||
tournament. I arrived at the Center at seven-thirty on Thursday to find
|
||
over one hundred people already ahead of me in line. Registration wasn't
|
||
until eight o'clock. Apparently I was not the only Linux fanatic champing
|
||
at the bit.
|
||
<P>
|
||
The doors did not actually open until a little past eight, and I did not
|
||
get in to register until about eight forty. As a pre-registered attendee, I
|
||
received a Linux Expo tote bag bearing the Expo logo, as well as logos of
|
||
Expo sponsors. Inside I found a bound copy of the proceedings, a VAResearch
|
||
tee shirt, a Red Hat cap, an issue of SysAdmin, and a Caldera flashlight, as
|
||
well as flyers advertising specials at Expo vendor booths.
|
||
<P>
|
||
Prominently placed in front of the entrance was the Red Hat booth. Their
|
||
booth featured the new Red Hat Linux 5.1, due to be released the following
|
||
Monday. Also on the upper floor was the Caldera, Linux Hardware solutions,
|
||
Linux International, Solid, and RHAD Labs booths, as well as the Expo store,
|
||
and the Softpro Bookstore.
|
||
<P>
|
||
Because of registration delays, the tutorials and technical conference
|
||
fell thirty minutes behind schedule, and remained out of sync with the business
|
||
track for the rest of the day. The Extreme Linux tutorial was kicked off by
|
||
Mad Dog Hall, who explained the name Extreme Linux, and the snow
|
||
boarding penguin logo. Basically, Extreme Linux is Linux with an attitude
|
||
Although Mad Dog said that the project's founders do not want to tie.
|
||
the commodity cluster idea to a single operating system, he urged people
|
||
to use the name Extreme Linux when referring to clusters of Linux machines.
|
||
<P>
|
||
After Mad Dog finished, Peter Beckman explained how Extreme Linux
|
||
cluste rs were used at Los Alamos' Advanced Computing Labs. Several members of
|
||
his team talked about their experiences with the system, and the problems
|
||
they had solved. The talk featured the Linux Expo cluster, a four node cluster
|
||
set up especially for the show. The cluster consisted of 4 dual 333
|
||
MHz Pentium two's, each with 256 megabytes of ram and a four gigabyte disk
|
||
drive. The cluster was tied together with a Myrinet network. After putting the cluster through its paces with modeling programs, Beckman decide
|
||
to bring out a "practical application", the Extreme Linux monster truck.
|
||
<P>
|
||
Although it had been a radio shack remote control toy in a previous
|
||
life, the monster truck had undergone an "Extreme" transformation. The body had
|
||
been removed, and the truck's circuit board hacked. For vision, the monster
|
||
truck had a Connectix quickcam with a custom mount to allow panning.
|
||
Mounted on top was a Toshiba Libretto with a wireless Ethernet connection
|
||
to the cluster. An operator sat at the console of the cluster, controlling
|
||
the truck as it cruised across the floor observing the crowd with
|
||
its quickcam. The operator's console was projected on a screen, and the crowd
|
||
could see themselves from the truck's point of view thanks to the quickcam.
|
||
Beckman assured us that the truck had a practical use, pulling network
|
||
cables under the raised floor at Los Alamos. Without a doubt, the truck
|
||
stole the show. For more information see http://www.Extremelinux.org/.
|
||
<P>
|
||
After the tutorial, I decided to make my way to the vendor area on the
|
||
lower level. Strategically placed at the entrance to the vendor area was Cobalt
|
||
Microserver Inc. They were showing the inexpensive Cobalt Qube microserver, a
|
||
blue 7.25"x7.25"x7.75" cube with powerful intranet server capabilities. This
|
||
little box will be near the top of every Linux geek's Christmas list.
|
||
<P>
|
||
Inside the door I found Stay online, a retailer of inexpensively priced
|
||
computer components. The vendor area was so jammed with Linux enthusiasts
|
||
that I had a hard time getting to every booth. Linux Mall was once again
|
||
on hand offering great deals on everything. I picked up Red Hat Linux 5.
|
||
1 for twenty-five dollars and Star Office Commercial for fifty dollars. Sun
|
||
Microsystems was a very noticeable new addition to the Expo this year,
|
||
showing off complete Ultrasparc computers as well as Ultrasparc based
|
||
motherboards for building your own homebrew ultrapenguin machine. Alta
|
||
Technology and Paralogic, two vendors of pre-built Extreme Linux clusters
|
||
were also present. At another entrance, Jim Paradis of Digital Equipment
|
||
Corporation entertained a mass of power hungry linuxers with a new smp alpha
|
||
machine.
|
||
<P>
|
||
Cobalt wasn't the only company with miniature gee-whiz computers.
|
||
CorelComputer was showing off their soon-to-be released Netwinder computers.
|
||
These little boxes (9.5"x6"x2") have everything you could want in an
|
||
intranet/internet client, and can be used as web servers as well. The
|
||
Netwinder could be serious competition for the Qube, but I think many customers might choose a mixed environment of both.
|
||
<P>
|
||
Another major attraction was the RHAD Labs booth, which featured a
|
||
couple of computers running gnome. The booth was staffed by members of the RHAD Labs development team, and Miguel de Icaza made occasional appearances.
|
||
At just about any point in time, people were lined up three deep to get
|
||
a look and gnome and ask the developers questions. One of the gnome computers
|
||
had a camera attached to it, and some interesting pictures from the Expo
|
||
have been posted on http://www.gnome.org/.
|
||
<P>
|
||
Toward the end of the second day of the Expo, I got an unexpected
|
||
surprise which made the show immensely better than I had expected. While
|
||
looking through the popular tee shirts offered by Xunilung, I overheard
|
||
someone proclaiming that Linux was a misnomer, and that the correct name of the
|
||
system was Gnu-Linux. This was a position I had heard before. I stepped
|
||
back from the tee shirts to peek around people who had gathered around a table
|
||
placed perpendicularly to Xunilung's. Sure enough, the gnu-linux admonishment
|
||
was coming from Richard Stallman. For those who are not familiar with rms,
|
||
as Stallman is often called, he is the person who started the gnu project in
|
||
1983 to provide a free version of Unix for anyone who wanted it, unencumbered
|
||
by proprietary licensing restrictions. Stallman is responsible for the Free
|
||
Software foundation, and the general public license.
|
||
<P>
|
||
Although I do not really agree with him about the naming of Linux, I
|
||
firmly believe Linux could not have been developed without the tools provide
|
||
d by the FSF. Stallman has been a hero of mine since before Linus discovered
|
||
Minix, so I was somewhat speechless when I saw him there unannounced.
|
||
I stood back and watched for a while as young hackers got autographs and
|
||
bought gnu tee shirts, CD-ROMs, and books. Occasionally Stallman would place
|
||
the platter from an old disk pack on his head. With this "halo" in place, he
|
||
became Saint Richard, patron saint of the Church of Emacs, and he would bless
|
||
the young hacker's computers provided they did not have any proprietary
|
||
software on them. When it was my turn to talk to Saint Richard, I thanked
|
||
him for the work he had done, and bought two Emacs books. He signed the books
|
||
happy hacking, and happier hacking, Richard Stallman.
|
||
<P>
|
||
After my encounter with rms on the second day of the Expo, I found my
|
||
way to the auditorium where Linus would be giving the keynote speech. I
|
||
was lucky, I found a seat about fifteen rows back from the stage. Less
|
||
fortunate fans continued to file in for another fifteen minutes, and by the
|
||
time Linus got on stage, people were standing and sitting in the aisles. An
|
||
overhead projector indicated the theme of Linus' talk, titled Ramblin'
|
||
Linus. Linus took the microphone and said "I'm Linus, and I am your god",
|
||
at which point the crowd responded with deafening applause. Linus thanked
|
||
various people for their work, in particular Alan Cox who has taken over
|
||
the normally thankless job of maintaining the stable kernel for the last
|
||
year or so. Some of the topics covered were the current state of the
|
||
development kernel, the upcoming release of the 2.2 kernel, and future
|
||
directions of kernel development. Linus spent about twenty minutes answering
|
||
questions from the audience, and then everyone filed out for a southern
|
||
style barbecue dinner in the university yard.
|
||
<P>
|
||
Conference talks were the main focus of the Expo for me. Unfortunately
|
||
there were so many talks offered, I had a hard time making up my mind about
|
||
which ones to attend. Extreme Linux is the only tutorial I made it to,
|
||
but there were eleven more, on subjects as diverse as programming with gtk+,
|
||
Python, hacking the Linux kernel, LinuxConf, and a demonstration of the Coda
|
||
filesystem.
|
||
<P>
|
||
The conference was broken up into a business track and a technical
|
||
track. The technical track auditorium was where I spent most of my time, but
|
||
I did make it to several interesting business talks. Robert Hart of Red
|
||
Hat Software gave a talk on linux certification dealing with what certification
|
||
meant, and who should try to get it. He also encouraged the audience to
|
||
drop off resumes at the Red Hat booth, which I did. I am still wait
|
||
ing on your call Robert. Mad Dog gave an anecdotal talk on how Linux is
|
||
used around the world, and Tim Bird of Caldera filled us in on the COAS
|
||
project. COAS is a project to develop an integrated administration tool for
|
||
Linux and possibly other unices, they are looking for volunteers, so drop
|
||
them a line. The last talk in the business track was actually a panel which
|
||
discussed free software licensing. The panel consisted of Eric Raymond,
|
||
Richard Stallman, and Bruce Perens, who moderated. Raymond's and Stallman's
|
||
views were not exactly in sync, so some very interesting discussion concerning
|
||
the state of free or open source software licensing took place.
|
||
<P>
|
||
The technical track started earlier, and ran longer than the business
|
||
track all three days. Unfortunately, registration problems, and technical
|
||
difficulties threw the schedule off the first two days, and technical talk
|
||
s were out of sync with business talks which made it hard to move freely
|
||
between tracks. David Miller gave a very technical talk on optimizing the
|
||
Cobalt Microserver. Peter Braam of Carnegie Mellon University gave two
|
||
informative talks on the new VFS interface, and the Coda distributed files
|
||
system. The Coda team has made a lot of progress, and the filesystem is so
|
||
mething worth looking into. Peter also mentioned that the team is looking
|
||
for a good system programmer who likes interesting work, but doesn't mind
|
||
being poor.
|
||
<P>
|
||
Bruce Perens and Daryll Strauss both gave talks on the use of computers
|
||
to make movies. Strauss showed us how a pile of alphas running Linux help
|
||
ed with the making of Titanic. During a short video presentation, he pointed
|
||
out some amazing effects that were computer generated. Bruce went over
|
||
some basics of computer animation in Toy Story, and showed an experimental
|
||
piece by Pixar called Gerry's Game. The auditorium was packed for both talks.
|
||
<P>
|
||
Miguel de Icaza discussed the gnome project to a very large crowd. Due
|
||
to technical problems with his laptop, the talk ran over by about thirty
|
||
minutes. Fortunately, Miguel is a very entertaining speaker, and he kept
|
||
the audience's attention while half of the RHAD Labs team and a concerned
|
||
member of the audience fretted over his computer. Lars Wirzenius presented
|
||
his Linux Anecdotes, a history of the linux system from someone who was
|
||
right there when it was created. Lars shared an office with Linus at the
|
||
University of Helsinki, and was the first person to actually run Linux
|
||
on his computer. Alan Cox, a fixture at Linux Expo, gave a talk about the
|
||
trials and tribulations of porting Linux to the Apple Macintosh 68K. His
|
||
talk was titled "I don't care if space aliens ate my mouse". The title
|
||
comes from an old Apple document, apparently the only official document
|
||
ever written on the apple mouse.
|
||
<P>
|
||
These were only a few of the talks given at the Expo, a complete list
|
||
can be found on the Linux Expo web site: http://www.linuxexpo.org . In
|
||
addition to vendors and talks, there were other things to keep Expo attendees
|
||
busy. A quake fest ran all day every day on the lower level, with deathmatches
|
||
every fifteen minutes. Prizes were awarded for the highest body count from
|
||
each match up. Birds of a Feather sessions were offered throughout
|
||
the three days on a variety of topics, and an "email garden" was set
|
||
up to allow attendees to get access to the net for checking their email.
|
||
On Thursday, the age old question of which editor, Emacs or vi, is superior
|
||
was finally answered. Obviously, the only way to resolve the issue was
|
||
through brute force, so the Expo hosted Editor Wars, a paintball tourname
|
||
nt. When the CO2 propelled paint mist settled, the vi team emerged from the
|
||
field victorious.
|
||
<P>
|
||
Wrapping up the show Saturday evening was the second annual Linux Bowl.
|
||
Mad Dog was the host, and the teams consisted of conference speakers and
|
||
audience participants. Rasterman, of RHAD Labs, and audience members were
|
||
the judges. Bruce Perens and Eric Raymond were two of the contestants.
|
||
Some of the questions asked were: what lilo option is used to list currently
|
||
mapped files(answer: -q), what was the first kernel tar.gz to exceed
|
||
ten megabytes ( to which Bruce Perens promptly replied Microsoft NT. The
|
||
correct answer was 2.1.88), which movie featured the Red Hat Office building
|
||
(one contestant replied Debbie does Durham, and Mad Dog felt compelled
|
||
to award one point. The correct answer was Kiss the Girls), why was the
|
||
Beowulf project named Beowulf( answer: it sounded cool), and a trick question,
|
||
what was the first system to run UNIX ( answer: a pdp7).
|
||
<P>
|
||
The Fourth Annual Linux Expo was a tremendous success, and I think every
|
||
one went home happy. The show organizers deserve a big round of applause
|
||
for their efforts, and if this year's turn out is any indication of things
|
||
to come, they had better get a bigger building next year.
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, David Penland <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./raymond.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./wuest.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">LinuxCAD Impressions</font></H1>
|
||
<H4>By <A HREF="mailto:rwuest@sire.ddns.org">Robert Wuest</A>
|
||
</H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
<h3><u>Friday, June 12</u></h3>
|
||
<P>I started calling Software Forge first thing this morning. NT had crashed
|
||
yesterday and hosed it's own installation. I had no rescue disk. The day was
|
||
starting real bad because I had an instrument design project getting behind. I
|
||
needed to work on the mechanical layout. I'm sick of problems with microsoft
|
||
operating system products.
|
||
|
||
<P>I've been using AutoCAD for over 14 years and have seen it turn into a fairly
|
||
decent CAD package. I use R13 and have used everything back to around 2.0.
|
||
|
||
|
||
<h3><u>Getting It</u></h3> <P>Boot into Linux. It always works. There's a
|
||
reasonably priced cad package I'd seen news posting after news posting
|
||
advertising itself. Supposed to be like AutoCAD. I'm just going to breakdown
|
||
and buy it and do the design in that. Start Netscape and head to the <A
|
||
HREF=http://laulujoutsen.pc.helsinki.fi/~mjr/linux/cola.html>cola
|
||
archives</a>. It's moved it's home, so I change the bookmark, search for
|
||
LinuxCAD <A
|
||
HREF=http://laulujoutsen.pc.helsinki.fi/~mjr/linux/cola.archive/1998-06/mjr.1998-06-03.010>(the
|
||
archive)</a> and find Software Forge's home, <A
|
||
HREF=http://www.linuxcad.com>http://www.linuxcad.com</A>. All it has is an <A
|
||
HREF=mailto:sales@softwareforge.com>E-mail address</A> and a phone number,
|
||
(847) 891-5971, in Chicago, Illinois.
|
||
|
||
|
||
<P>Screen-shots are there, check them out. I guess, from the numerous copies
|
||
of the ad I had seen, I was expecting something that acted like AutoCAD.
|
||
Notice the first window shows the columbia drawing, <A
|
||
HREF=http://www.softwareforge.com/linuxcad/mini_columbia.gif>columbia.dwg</A>,
|
||
and the <A HREF=http://www.softwareforge.com/linuxcad/avtocad1.gif>second
|
||
window</A>, that it's title is "AvtoCAD-SoftwareForge".
|
||
|
||
<P><A HREF=http://www.softwareforge.com/linuxcad/pricing.html>http://www.softwareforge.com/linuxcad/pricing.html</A> says this:
|
||
<BLOCKQUOTE>
|
||
"LinuxCAD is a true open software product and as such it has been ported to all
|
||
major UNIX platforms. The pricing of LinuxCAD for platforms other than Intel
|
||
depends from the number of copies you have chosen to purchase , the more copies
|
||
the lesser price. All ports retain full original functionality and are fully
|
||
compatible with original LinuxCAD for Linux for Itnel and with AutoCAD".
|
||
</BLOCKQUOTE>
|
||
<P>"True open software product"? Where's the source? The license is in no way open
|
||
and the source is no where to be found. Meaningless buzzwords.
|
||
|
||
<P>I call and call all day: someone finally answers the phone about mid afternoon
|
||
and sells me a copy. I'm a little confused as to who was serving who after
|
||
that conversation, but I did manage to buy a copy and download it off of their
|
||
ftp site with no problem. And she told me that there have been over 100 copies
|
||
sold. So now I've forked out the $$$ for this thing and what follows is what
|
||
I experienced.
|
||
|
||
<P>The readme file (on the ftp server) said to put the archive in the directory
|
||
where you want to install it and untar it. Enough for those who know their way
|
||
around Linux pretty well. I go to the file with TkDesk and my pop-up menu isn't
|
||
right for the file :-0. This file is unconventionally named slk96_tar.gz, not
|
||
slk96.tar.gz like it should be, so I promptly renamed it.
|
||
|
||
<P>Examining the contents, I see a straight collection of 25 files, no
|
||
directories, no man pages, info pages or html docs. There are several .dxs,
|
||
.mnu, .scr and .txt files. I make a directory linuxcad, moved the archive in
|
||
there and run extract off the tkdesk pop up.
|
||
|
||
<P><aside><BR>
|
||
A lot of users will be lost from those very brief instructions. This is what I
|
||
finally did to install properly, IMO:
|
||
|
||
<P>As root, I made a directory, /usr/local/lib/linuxcad and moved all of the files
|
||
there. In my /usr/local/bin directory, I created symlinks:
|
||
<PRE>
|
||
$ ln -s ../lib/linuxcad/lcad lcad
|
||
$ ln -s ../lib/linuxcad/linuxcad linuxcad
|
||
</PRE>
|
||
<P>There should at least be a makefile included to do this as "make
|
||
install".<BR>
|
||
</aside>
|
||
|
||
<P>The readme file also has this <em>bombshell</em>:
|
||
<PRE>
|
||
" Optional LinuxCAD extensions
|
||
================================
|
||
|
||
|
||
1) Print option:
|
||
Hardcopy to DeskJet , LaserJet
|
||
and to MSWindows based LinuxCAD printserver
|
||
---------------------
|
||
$100
|
||
|
||
2) Plot option:
|
||
To HP-GL compatible plotters
|
||
---------------------
|
||
$100
|
||
|
||
3) DXF Import option
|
||
---------------------
|
||
$100
|
||
|
||
4) Customization option:
|
||
Includes
|
||
4.1 Hot keys menu and user programmable pull down
|
||
menu.
|
||
4.2 GNU C/C++ programming interface.
|
||
---------------------
|
||
$200
|
||
|
||
5) 3D design option
|
||
---------------------
|
||
$200"
|
||
|
||
</PRE>
|
||
<P>This is not a $75 package, <em>it's a $775 package</em>.
|
||
|
||
|
||
|
||
|
||
<h3><u>First Impressions</u></h3>
|
||
<P>Double clicking (back in TkDesk) the executable I saw that it ran, produced no
|
||
window and exited with status 0. It had spit out out an error message, which
|
||
came out on my login vc:
|
||
<PRE>
|
||
LinuxCAD v 1.53
|
||
Portable Computer Aided Design program for Linux and Unix.
|
||
Usage:
|
||
linuxcad <name of new or existing .dxs file>
|
||
</PRE>
|
||
<P>But I didn't see that until I started an xterm and ran it from there. So I
|
||
gave it a filename this time and it ran. Here's the command I used:
|
||
<PRE>
|
||
$ ./linuxcad test.dxs
|
||
</PRE>
|
||
<P>It puts itself in the background. I exited immediately and it gave me a dialog
|
||
asking if I wanted to save my changes. What changes? I had just started and
|
||
exited. I'm not even going to read the docs. Just see what I can learn by
|
||
fiddling with it a bit. I can immediately see that this needs polish.
|
||
<PRE>
|
||
$ ./linuxcad test.dxs # again.
|
||
</PRE>
|
||
<P>The "line" command worked, but "l" didn't. "Move" worked and "w" selected entities
|
||
by window, but the "m" command didn't work. OK, it doesn't have command
|
||
aliases. Oh, they're $200.
|
||
|
||
<P>I draw a few lines. "line", click, click, <CR>. Oops, still drawing the line.
|
||
OK, right click. The line is placed, but in the text area, all that's there is:
|
||
<PRE>
|
||
|
||
Command aborted !
|
||
Command:
|
||
</PRE>
|
||
<P>There are no scroll bars and no handle to resize the command area. There are 3
|
||
lines of command area stretching across the bottom of the window. I can scroll
|
||
back by using X-selection, but that doesn't give very good control.
|
||
|
||
<P>Line editing is very poor. My arrow keys do nothing, The backspace key
|
||
works, but <HOME>, <END>, any extended key does nothing. I start a
|
||
command and can't find a key that cancels it. The right mouse button will, but
|
||
why doesn't <CR>, <ESC> or ^-c work. Let's try all the keys
|
||
:-). ^-z, ^-x, ^-c, etc. ^-j causes a "point expected !" message. After a
|
||
lot of keys, it crashes. Looks like a buffer overrun to me. Restart. It
|
||
crashes every time and work is lost. No core dump or error to the parent
|
||
shell.
|
||
|
||
<P>^-m opens a command history window with both scroll bars, but I can't type a
|
||
command in it. It just beeps at any key except the cursor control keys now
|
||
work! The cursor is not visible, but <PGUP> and <PGDN> do what they're
|
||
supposed to and <UP> and <DN> seem to.
|
||
|
||
<P>That command history window insists on staying over the drawing area. I use
|
||
my M-<PGDN> (which I have defined in ~/.fvwmrc to lower a window) and the
|
||
window goes away. If I do any window manager operation that brings the window
|
||
to the top, the history window ends up over the drawing area. It has an "Exit"
|
||
button, so I press it.
|
||
|
||
<P>There is no coordinate display in the main window. "Pline" doesn't work. "c"
|
||
doesn't work to close multiple line segments.
|
||
<PRE>
|
||
Command:line
|
||
|
||
From point:0,0
|
||
|
||
To point:1000,1000
|
||
|
||
To point:
|
||
</PRE>
|
||
<P>No way to end it with keys. Have to right click again. Too man unnecessary
|
||
linefeeds wasting vertical screen space. No "Zoom" command.
|
||
|
||
<P>After about an hour of playing:
|
||
|
||
<EM><CENTER>********** This is not AutoCAD **********</CENTER></EM>
|
||
|
||
<P>This program does not have an AutoCAD interface, which, based on all of the
|
||
comparisons made by SoftwareForge to AutoCAD, it should have. There are
|
||
commands to zoom: "zoomw", "zoomall". "Zoom" should use the acad interface.
|
||
Other commands do. And there is no equivelant to the "x" option. I do this
|
||
often in acad:
|
||
<PRE>
|
||
z e z .9x
|
||
</PRE>
|
||
<P>If you don't know acad, that will give a 90% zoom factor scaled to the display
|
||
window (everything is visible with a little border anound the outside).
|
||
|
||
<P>The top of the screen has six menu items and 6 buttons. Draw/line starts line
|
||
drawing. The edit menu has no undo. "Undo" doesn't seem to work. Undo is
|
||
under "Edit/Edit../Undo/Set mark" and "Edit/Edit../Undo/Undo to last mark" It
|
||
looks like one has to set marks and can't just walk backwards undoing actions
|
||
one at time.
|
||
|
||
<P>3D'll run another $200 (item 5). Draw/Draw 3D.../Sphere gets me this message:
|
||
|
||
<PRE>
|
||
"This is an optional feature of LinuxCAD
|
||
Please check the readme files to see the current pricing
|
||
for the optional features.
|
||
Command:"
|
||
</PRE>
|
||
<P>Drawing area and window display area aren't the same. You must
|
||
"Options/Settings/Screen Extents/..." on the menu. This is something I really
|
||
don't like right away.
|
||
|
||
<P>No short commands. Looks like they cost $200 (item 4.1).
|
||
|
||
<P>Bad command line area with virtually no editing in it.
|
||
|
||
<P>Changed zoom interface.
|
||
|
||
<P>No .xyz filters.
|
||
|
||
<P>Keyboard focus moves to buttons in menu area. You have to click in the
|
||
command area after using a button before you can type another command.
|
||
|
||
<P>"U" doesn't undo the last line segment while drawing lines.
|
||
|
||
<P>"Undo" requires setting a mark.
|
||
|
||
<P>No tooltips.
|
||
|
||
<P>No coords display.
|
||
|
||
<P>No coords display.
|
||
|
||
<P>I know AutoCAD very well, but still, I have to read the documentation :-0.
|
||
|
||
<P>Print only to a bitmap. And who wants to print to a microsoft print server?
|
||
Another $100 (item 1) for printing. There is no postscript printing at all.
|
||
|
||
<P>No cut, copy and paste between multiple instances of the program.
|
||
|
||
<P>You can't edit with only the keyboard.
|
||
|
||
|
||
|
||
|
||
<h3><U>Some Techy Details</U></h3>
|
||
<P>I'm not sure what toolkit was used. Ldd linuxcad reveals the following on my
|
||
system:
|
||
<PRE>
|
||
libXt.so.6 => /usr/X11R6/lib/libXt.so.6 (0x4000b000)
|
||
libX11.so.6 => /usr/X11R6/lib/libX11.so.6 (0x4004d000)
|
||
libXext.so.6 => /usr/X11R6/lib/libXext.so.6 (0x400e3000)
|
||
libg++.so.27 => /usr/lib/libg++.so.27 (0x400ed000)
|
||
libm.so.5 => /lib/libm.so.5 (0x40121000)
|
||
libc.so.5 => /lib/libc.so.5 (0x4012a000)
|
||
libSM.so.6 => /usr/X11R6/lib/libSM.so.6 (0x401e6000)
|
||
libICE.so.6 => /usr/X11R6/lib/libICE.so.6 (0x401ef000)
|
||
libstdc++.so.27 => /usr/lib/libstdc++.so.27 (0x40203000)
|
||
</PRE>
|
||
<P>Searching the executable doesn't help, either. Searching with
|
||
<PRE>
|
||
$ strings linuxcad | grep -i copy
|
||
</PRE>
|
||
<P>only finds a couple Software Forge copyright strings (and the word "copy" a
|
||
bunch).
|
||
|
||
<P>Multiple instances run fine.
|
||
<PRE>
|
||
$ ps -m 3638 3636 # shows the memory usage:
|
||
|
||
PID TTY MAJFLT MINFLT TRS DRS SIZE SWAP RSS SHRD LIB DT COMMAND
|
||
3638 p6 383 195 1080 1920 3000 0 3000 2176 0 206 linuxcad cab1.dxs
|
||
3636 p6 425 200 1140 1976 3116 0 3116 2288 0 207 linuxcad test.dxs
|
||
</PRE>
|
||
|
||
<P>Startup time is about 2 seconds each on P100/48 Meg. system.
|
||
|
||
<P>Here's a link to a listing of a blank drawing file, <A HREF=cab1.html>cab1.dxs</A>
|
||
|
||
|
||
|
||
|
||
<h3><u>Licensing</u></h3>
|
||
<P>The license is very restrictive. It's the basic single machine/single user
|
||
license. I'm not sure I can even include quotes from the documentation, the
|
||
way license.txt is written. It says I can't reproduce or distribute or even
|
||
revise the documentation. Does that mean if I removed some of the double
|
||
spacing or add notes through out the documentation that I am in violation of
|
||
it? In any case, I won't publish the license here. The high points:
|
||
<UL>
|
||
|
||
<LI> Install on a single computer for "your own individual use". Can my wife
|
||
and children use it?
|
||
|
||
<LI>You can make one copy for archival purposes.
|
||
|
||
<LI>The program can be transferred. Standard boiler plate. You can't keep a copy.
|
||
|
||
<LI>Software Forge is not liable for anything that goes wrong or any damage that the
|
||
program does to you, your computer or your mother.
|
||
|
||
<LI>It says there is some welcome screen with a copyright notice, but that is wrong;
|
||
there is no startup message (and it should stay that way unless it is a window
|
||
that pops up and then goes away once the program starts).
|
||
|
||
<LI>The user's guide specifically calls out that it cannot be released under the
|
||
GPL, which I think is kind-of a strange detail to add.
|
||
|
||
<LI>You can't reverse engineer the program.
|
||
|
||
<LI>If you violate the license, they'll try and throw you in jail.
|
||
</UL>
|
||
|
||
|
||
|
||
<h3><u>Conclusions</u></h3>
|
||
<P>First, I should include this quote (double spaced and all) from the
|
||
linuxcad.txt document included in the distribution:
|
||
<PRE>
|
||
" ATTENTION:
|
||
|
||
This product is still very fresh and is under development , it may
|
||
|
||
crash from time to time , do save often and please report all crash situations
|
||
|
||
to Software Forge Inc. by e-mail to: unixguy@aol.com
|
||
|
||
|
||
We add new features quickly and your input about what features you want is
|
||
|
||
valuable. "
|
||
</PRE>
|
||
|
||
<P>So make a demo available and send an announcement to cola everytime it is
|
||
upgraded. Heck, this is the demo version.
|
||
|
||
<P>So far, only the one crash I wrote about above. But this is not a $775
|
||
package. In its current state, it is not a $75 package, even with everything
|
||
thrown in.
|
||
|
||
<P>Upgrades are available for only six months. And this is by no means an
|
||
exhaustive list of missing features. Just what I found real quick.
|
||
|
||
|
||
<P>I'd suggest waiting.
|
||
|
||
<P>I now must get NT working first thing Monday morning. I still don't have a cad
|
||
package to do my work in Linux and then take it to acad to make a final drawing.
|
||
I'm still stuck using microsoft. :-(
|
||
|
||
<HR>
|
||
</pre>
|
||
<small>
|
||
<P>This document is copyright Robert Wuest, PE.<BR>
|
||
It is herby released into the public domain.<BR>
|
||
(except those portions copyright Software Forge, Inc.)</small>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Robert Wuest <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./penland.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./rooijackers.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<img align="right" src="./gx/rooijackers/2947f1.gif">
|
||
</center>
|
||
<center>
|
||
<H1><font color="maroon">Book Review: A Methodology for Developing and Deploying Internet & Intranet Solutions</font></H1>
|
||
<H4>By <a href="mailto:Jan.Rooijackers@dsn.ericsson.se">Jan Rooijackers</a></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
<ul>
|
||
<li>Authors: J. Greenberg and J.R. Lakeland
|
||
<li>Publisher: Hewlett Packard Professional Books by Prentice Hall
|
||
<li>E-mail: sales@prenhall.com
|
||
<li>URL: http://www.prenhall.com/
|
||
<li>Price: $39 US
|
||
<li>ISBN: 0-13-209677-3
|
||
</ul>
|
||
<P>
|
||
<P> <HR> <P>
|
||
The goal of <i>A Methodology for Developing and Deploying Internet &
|
||
Intranet Solutions</i> is to be a ``guide'' for project managers.
|
||
Almost all situations a project manager can
|
||
face--from project members to backup media to making time lines--are
|
||
described herein. The book consists of 11 chapters, plus appendices. Everything is
|
||
written as a story from the authors, who combined have more than 20 years of computer
|
||
experience. Every chapter contains small tips for the project manager.
|
||
<p>
|
||
In Chapter 1, the reader is introduced to employees of
|
||
a company that is used as a study case throughout the book.
|
||
<p>
|
||
In the next chapter a proposal is put forth, and all facets of handling
|
||
it from kick-off meeting to support organization to signing the contract are
|
||
described. In this book, the project manager makes use of the WBS (work
|
||
breakdown structure) model. This model breaks the project into phases and
|
||
sub-phases so that each can reach its own milestone.
|
||
<p>
|
||
Chapter 3 puts the reader into the place of a successful project
|
||
manager, who has convinced the ``customer'' to sign the contract.
|
||
The customer could be either internal (a department) or
|
||
external--imagine yourself as the consultant. This chapter begins with the internal kick-off
|
||
meeting. Roles and activities are assigned and given deadlines, so everyone
|
||
knows what to do when.
|
||
<p>
|
||
Discussion of the software development cycle begins in Chapter 4 with writing
|
||
an approach document. This chapter explains to the project manager what the
|
||
document must and must not contain--from requirements to education.
|
||
Also, some development methodologies are discussed.
|
||
<p>
|
||
Next, we get to the fun part (only 20 pages)--development. This is
|
||
familiar stuff which I face each working day with the Internet/Intranet.
|
||
The authors discuss creating HTML pages, internal, unit and system
|
||
testing and, last but not least, a checklist to see if everything is working.
|
||
<p>
|
||
The remaining six chapters (6 to 11) are short, averaging eight pages each.
|
||
Implementation is handled in Chapter 6; networking and backup are discussed
|
||
in Chapter 7. Chapter 8 covers the various applications and system testing at
|
||
a high level, so that you get a complete picture of how everything fits into the project.
|
||
The last three chapters are about putting the project on the user desk.
|
||
Also, two appendices are included, the first of which
|
||
is better: it is technical and briefly explains the
|
||
operating system layers and the Internet. While this information is not
|
||
presented in great detail,
|
||
what is here is quite interesting. The other appendix deals with project
|
||
management.
|
||
<p>
|
||
The book did not live up to my expectations. Too much of it is written in
|
||
the form of a diary or personal anecdotes for my tastes; not enough is
|
||
related to actual technical details of the Internet/Intranet.
|
||
<i>A Methodology for Developing and Deploying Internet & Intranet
|
||
Solutions</i> will bring no added value for persons who have already been
|
||
working for some years in the IT area. However, I do think it is a good
|
||
book for people who are new to the IT business, and who want to know more about
|
||
project management in order to become a project leader.
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Jan Rooijackers <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./wuest.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./ayers1.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center><img alt="Blackbox title image" src="./gx/ayers/blackbox.gif"></center>
|
||
<center>
|
||
<H1><font color="maroon">The Blackbox Window Manager</font></H1>
|
||
<h4>By <a href="mailto: layers@marktwain.net">Larry Ayers</a></h4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
<center><h3>Introduction</h3></center>
|
||
|
||
<p>Someday (I fantasize) an academic specialty devoted to the taxonomy of
|
||
free software will arise, complete with abstruse journals filled with
|
||
hair-splitting analyses of the bloodlines, interbreeding, and evolution of
|
||
this ephemeral medium. I can imagine a future scholar publishing a paper in
|
||
which the various developmental strands of late-twentieth-century Linux
|
||
window-managers are analyzed, complete with photographs of the Sunsite digital
|
||
archaeology project, conducted amidst the ruins of ancient Chapel Hill.
|
||
|
||
<p>Returning to the present, two trends can be distinguished among the many
|
||
window-manager projects extant today. The first is either inspired by and/or
|
||
descended from Robert Nation's influential fvwm window-manager. Fvwm2,
|
||
Afterstep, and (to a lesser extent) WindowMaker are examples in this category.
|
||
These window-managers tend towards extreme configurability and typically are
|
||
able to load special-purpose modules such as desk-top pagers, CD-players, and
|
||
hosts of others. Configuration of this sort of manager can be a daunting
|
||
task, especially for Linux beginners, though the existence of well-thought-out
|
||
and esthetically pleasing "themes" (in this context meaning a package of
|
||
configuration files, backgrounds, and pixmap icons) and their availability on
|
||
the net can give a new user a head-start.
|
||
|
||
<p>Perhaps as a reaction to these complex and feature-laden window-managers
|
||
another sort of manager has been appearing lately. Marco Macek's icewm is
|
||
deliberately not as complex as the above "big" window-managers but nonetheless
|
||
has the most commonly needed features and a moderately configurable
|
||
appearance. Icewm has been through quite a few beta versions now and has
|
||
become remarkably stable. Another example is blackbox.
|
||
|
||
<p>Blackbox is a new window-manager written by Brad Hughes. Like icewm, it
|
||
was coded from scratch in C++. It's small (the source archive is just 50 kb.),
|
||
fast, and has a thoughtfully-designed and pleasing default appearance. This
|
||
latter feature has probably contributed to blackbox's transition from a personal
|
||
undertaking to an open source project which has received bug-fixes and
|
||
enhancements from several other programmers.
|
||
|
||
<center><h3>Impressions</h3></center>
|
||
|
||
<p>Like Windowmaker and icewm, blackbox uses workspaces rather than the
|
||
virtual desktop/pager combination familiar to fvwm users. The main difference
|
||
between the two methods of managing windows is that the workspace approach
|
||
lacks the miniature representations of the various desktops seen in the pager
|
||
window. It's really a psychological matter, and both methods work equally
|
||
well once habits have been formed. I surmise that the first virtual desktop
|
||
system (or even the idea of iconized windows and window-lists, which serve
|
||
much the same purpose) was developed by a programmer who just got tired of
|
||
shuffling through layered stacks of windows searching for a certain one.
|
||
|
||
<p>At the bottom of a blackbox desktop is an immovable multi-purpose bar, with
|
||
a workspace menu on the left and a digital clock on the right. In between is a blank
|
||
area, which had no function in the earlier betas but which now contains an
|
||
iconized window-menu. Here's what it looks like, with the default colors:<br>
|
||
|
||
<p><img alt="Blackbox toolbar" src="./gx/ayers/blackbox2.gif">
|
||
|
||
<p>The gradient shading of the titlebar and toolbar is a nice touch, a feature
|
||
usually found only in the more elaborate window-managers. All graphics
|
||
routines are handled internally so no extra image libraries are needed.
|
||
Blackbox is unusual in that it doesn't use the Xpm pixmap library, so the only
|
||
applications which will display an icon when minimised are those with icons
|
||
embedded in the executable, such as Netscape and xv.
|
||
|
||
<p>Unlike most window-managers the root-window menu is bound to the right
|
||
mouse button rather than the left, an arrangement which will be familiar to
|
||
icewm and OS/2 users. The menu-items are configured in a separate file; both
|
||
the menu and the overall configuration files are placed in the
|
||
<code>/usr/X11R6/lib/X11/app-defaults</code> directory, a traditional location
|
||
for X resource files. The menu-file's syntax is clear and easy to use. Here
|
||
is a screenshot of a menu I've been using:<br>
|
||
|
||
<p>
|
||
<center><img alt="Blackbox menu" src="./gx/ayers/blackbox1.gif"></center>
|
||
|
||
<p>The menu will remain "stuck" to the desktop if it is moved after it appears
|
||
and can be dismissed via a right-mouse-button click any time thereafter.
|
||
|
||
<p>Keyboard short-cuts are provided for various window operations, including
|
||
the Mac-like title-bar roll-up, as well as switching between workplaces. I am
|
||
pleased by the relative paucity of key-bindings in both icewm and blackbox.
|
||
Some of the larger window-managers have many key-bindings, some of which
|
||
conflict with common application bindings. I've used fvwm2 quite a bit, and
|
||
it always annoyed me that Netscape's <code>alt-left-arrow-key</code>
|
||
key-binding wouldn't work, as it evidently was reserved for some fvwm function
|
||
in my <code>~/.fvwm2rc</code> file, which I never did get around to tracking
|
||
down and disabling. You know how it is; this sort of minor configuration
|
||
isn't important enough to just drop everything and fix right now. It's a
|
||
minor annoyance, but I was grateful that icewm and blackbox included just a
|
||
few essential bindings.
|
||
|
||
<p>Blackbox is still a relatively young project and the window-manager isn't
|
||
completely stable yet. I've had it crash the X-server a few times, but I've
|
||
long been in the habit of saving work frequently (which is always a good idea
|
||
when running beta software!). Either icewm or wmx may be a better choice as a
|
||
lightweight window-manager if the need for stability is paramount, but
|
||
blackbox development seems to be progressing rapidly. More users trying it
|
||
out and reporting problems will doubtless speed the process.
|
||
|
||
<p>The blackbox <a href="http://linux.wiw.org/blackbox">web-site</a> is the
|
||
best source of further information and the latest source archives.
|
||
|
||
<hr>
|
||
|
||
<address><a href="mailto: layers@marktwain.net">Larry Ayers<layers@marktwain.net></a></address>
|
||
<!-- hhmts start -->
|
||
Last modified: Sun 28 Jun 1998
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Larry Ayers <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./rooijackers.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./ayers2.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">Lesstif: One User's Impression</font></H1>
|
||
<h4>By <a href="mailto: layers@marktwain.net">Larry Ayers</a></h4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
|
||
One of the main differences between Linux and the commercial Unix flavors
|
||
is that the commercial unices commonly come with one version or other of the
|
||
proprietary Motif libraries. Motif is basically a "widget-set", a set of
|
||
libraries and header-files which give X-windows applications a characteristic
|
||
look, including such features as dialog-boxes, menus, file- and
|
||
font-selectors, drag-and-drop support, etc.
|
||
|
||
<p>There are several free widget-sets which offer roughly the same
|
||
functionality, such as GTK, so Motif isn't a necessity for a Linux system
|
||
except for one factor. Many of the popular free-software projects come from
|
||
institutions such as universities or government agencies, with a few
|
||
originating in a commercial or corporate setting. These institutions often
|
||
use a commercial Unix and programmers tend therefore to use the Motif
|
||
development tools.
|
||
|
||
<p>A year or so ago I bought a copy of SWIM Motif from the <a
|
||
href="http://www.lsl.com">LSL</a> web-site. There were several software
|
||
packages I wanted to compile which required the Motif libraries and header
|
||
files, such as XEphem, NEdit, DDD and Vim. The price of a commercial Motif
|
||
package had been close to two hundred dollars, but the new SWIM version was
|
||
selling at that time for about sixty, so it seemed like a good deal. It's a
|
||
quality product and worked well for me until I decided to upgrade my Debian
|
||
system to Debian 2.0, which is based on libc6 (as are Redhat 5.0 and 5.1). I
|
||
used the handy <i>autoup.sh</i> script, which upgrades the core packages of
|
||
the distribution in the proper order. Everything was hunky-dory until I
|
||
realized that my proprietary Motif libs were based on libc5 and won't function
|
||
in a libc6 environment. The LSL company offers a thirty-dollar upgrade for
|
||
customers in my situation, but I felt that I'd spent enough on what isn't
|
||
really a necessary software package, and who's to say whether some future
|
||
changes in Linux might put me in the same situation again? Situations like
|
||
these really make me appreciate source-code availability!
|
||
|
||
<p>I'd been hearing favorable reports on the newer versions of Lesstif, a
|
||
free and open-source Motif 1.2 clone created by a team of developers
|
||
called the Hungry Programmers. The release of the Netscape source earlier
|
||
this year had attracted new Lesstif users, as Netscape needs Motif to
|
||
build. More users means more bug-reports and probably some additional
|
||
programming help; I can't help but think that the new Netscape situation was a
|
||
shot in the arm for Lesstif. The Lesstif releases seem to be more frequent
|
||
now, for whatever reasons.
|
||
|
||
<p>I really didn't know what to expect from Lesstif. I remembered reading
|
||
usenet postings concerning Lesstif's failures to work with this or that
|
||
application and numerous comments on display flaws and other bugs. These
|
||
comments were made over a year ago, which is approximately a decade in
|
||
"computer time", so I was hoping for at least a marginally useful product.
|
||
|
||
<p>The first release I tried was 0.83. To my surprise, it compiled and
|
||
installed as easily as any other quality GPL package. Feeling rather foolish
|
||
that I'd spent hard-earned cash on a commercial Motif implementation, I
|
||
proceeded to re-compile (over the course of a few weeks) every application
|
||
which I had previously linked with SWIM Motif. So far every one I've tried
|
||
has worked well with Lesstif; some packages needed the paths to the Lesstif
|
||
libraries and header-files specified in the Makefile, but this was the only
|
||
tinkering I've had to do. I was particularly pleased that NEdit now works
|
||
with Lesstif, as this editor's dependence on Motif has until now hindered its
|
||
widespread use by Linux users.
|
||
|
||
<p>The few bugs I've seen in the Lesstif version I'm using now (0.85) are
|
||
minor and have little effect on usability.
|
||
|
||
<p>One reason Lesstif is important for the Linux community is that its
|
||
existence and usability make it possible for the developers of distributions
|
||
to package Motif-linked applications without the necessity of dealing with
|
||
non-free software. The application developers can continue to use Motif,
|
||
while Linux users can still compile and run the programs without the
|
||
proprietary libraries.
|
||
|
||
<p>Jon Christopher, a member of the Lesstif team, has written an essay about
|
||
Lesstif's history and prospects which is well worth reading. It was originally
|
||
contributed to the Slashdot web-site, and is available
|
||
<a href="http://slashdot.org/features/9806051046213.shtml">here</a>. The
|
||
<a href="http://www.lesstif.org">Lesstif</a> web-site has the latest releases
|
||
and other news.
|
||
|
||
<hr>
|
||
|
||
<p>
|
||
|
||
<!-- hhmts start -->
|
||
Last modified: Sun 28 Jun 1998
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Larry Ayers <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./ayers1.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./ayers3.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">Sabre: An Svgalib Flight Sim</font></H1>
|
||
<h4>By <a href="mailto: layers@marktwain.net">Larry Ayers</a></h4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
<center><h3>Introduction and Disclaimer</h3></center>
|
||
|
||
<p>I haven't written about Linux games for the Gazette, mainly because I don't
|
||
play them much. Oh, every now and then while waiting for a download to
|
||
complete I'll play Xgalaga or XEmacs-tetris for a while, but for me the real
|
||
Linux amusement is figuring out how to compile, install, and use the numerous
|
||
software packages lurking out on the net, unpublicized and just waiting
|
||
to be explored.
|
||
|
||
<p>A couple of days ago I was reading the current <a
|
||
href="http://www.ntk.net">Need to Know</a> British WWW news site, and I saw a
|
||
mention of a Linux flight-simulator called Sabre. I ended up at the <a
|
||
href="http://sabre.cobite.com">Sabre web-site</a> and was impressed by the
|
||
evident humor and good-nature of the site's developer (check out the page
|
||
describing how to get sound working with the simulator!). Though I've seldom
|
||
used flight-simulators, I decided to give this one a try.
|
||
|
||
<center><h3>Back To The Korean War</h3></center>
|
||
|
||
The developers of Sabre (Dan Hammer, with assistance from Antti Barck and
|
||
David Mansfield) have chosen to confine their attention to the Korean War, so
|
||
the aircraft involved are mostly early jets with a smattering of WWII-era
|
||
propellor-planes. The graphics are well-done, with texture-mapped clouds and
|
||
landscapes. The general effect is reminiscent of a detailed cartoon (not
|
||
Hannah-Barbra style!).Here are a couple of scaled-down screenshots (Sabre can
|
||
even take its own screenshots while running; just press <b>e</b> and the
|
||
current scene will be saved to a ppm file):<br>
|
||
|
||
<p><img alt="Sabre screen 1" src="./gx/ayers/sabre1.gif">
|
||
<img alt="Sabre screen 2" src="./gx/ayers/sabre2.gif">
|
||
|
||
<p>The first public release of Sabre was in August of 1997, so it's a
|
||
relatively new project. Don't expect a state-of-the-art flight-sim like
|
||
the numerous commercial products available. Sabre is more similar to
|
||
better-quality DOS flight-sims of a couple of years ago. The up-side to this
|
||
is that expensive hardware (such as an ultra-fast processors or a 3DFX
|
||
video-card) isn't needed in order for Sabre to run acceptably fast. This is
|
||
an Svgalib console-graphics program so not even X is needed.
|
||
|
||
<p>Sabre can be run in a variety of resolutions and window-sizes. Naturally a
|
||
fast CPU will enable a larger and more detailed screen with minimal choppiness.
|
||
|
||
|
||
<p>Frankly, I probably never would have written this review if Antti Barck's
|
||
tremendously useful <b>dialog</b>-based script <b>RunSabre</b> hadn't been
|
||
included in the distribution. Flight-simulator veterans probably will be able
|
||
to learn to use Sabre without this script, but novices (like me) will find
|
||
this interface to Sabre invaluable. It provides a convenient way to set the
|
||
screen resolution, run various demo missions and flight scenarios, and access
|
||
the documentation (especially the key-binding doc) from one menu-based screen.
|
||
All of these tasks can be accomplished with command-line switches, but who
|
||
wants to learn these while still deciding whether it's worth devoting time to
|
||
learning a new application? Without this script, running Sabre can be a
|
||
frustrating sequence of short flights followed by re-reading the docs after
|
||
watching your jet crash yet another time.
|
||
|
||
<p>Sabre offers quite an extensive array of view-points from which to observe
|
||
your fighter-plane and the surrounding action. Naturally you can be in the
|
||
cockpit and see forward, to the side, and behind, but you can also become a
|
||
disembodied viewer off to one side. Even more interesting, a click of a key
|
||
will put you in the cockpit of one of the enemy planes.
|
||
|
||
<p>Your plane can be controlled with either a mouse, the keyboard, or a
|
||
joystick (assuming joystick support is compiled into your kernel). I found
|
||
controlling with a mouse difficult, whereas after some practice the keyboard
|
||
seemed to provide more accurate control. I don't have a joystick so I was
|
||
unable to try that method; I understand that flight-sim enthusiasts prefer them.
|
||
|
||
<p>The first scenario in the <b>RunSabre</b> menu is called <i>Just Fly</i>.
|
||
I was grateful for this choice; the last thing I needed while trying to figure
|
||
out the controls was harassment by MIG fighters intent on my destruction!
|
||
Several other flight scenarios are supplied, some involving aerial combat and
|
||
others ground attack missions. These scenarios are interactive; the demo
|
||
missions are more like short movies which display the variety of scenes Sabre
|
||
is capable of displaying.
|
||
|
||
<p>All in all Sabre is a quality piece of software. It compiled easily and I
|
||
found no obvious bugs. The source or pre-compiled binaries can be obtained
|
||
from the Sabre web-site linked at the beginning of this article.
|
||
|
||
<hr>
|
||
|
||
<p>
|
||
|
||
<!-- hhmts start -->
|
||
Last modified: Sun 28 Jun 1998
|
||
<!-- hhmts end -->
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Larry Ayers <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./ayers2.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./ayers4.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">SFM: A New GTK-Based Application</font></H1>
|
||
<h4>By <a href="mailto: layers@marktwain.net">Larry Ayers</a></h4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
<center><h3>Introduction</h3></center>
|
||
|
||
<p>As the GTK GUI programming toolkit matures more developers have been
|
||
inspired to use it for the visual presentation of their programs. Pascal
|
||
Rigaux, a French programmer, has come up with a small file-manager he calls
|
||
sfm. Sfm isn't quite as simple as the name and initial appearance imply; it
|
||
has a remarkably full feature-set for such a small program.
|
||
|
||
<p>There has been a long succession of X Windows file-managers which use
|
||
various icons to represent different types of files. This approach can be
|
||
useful for people accustomed to a Macintosh or Windows environment, where this
|
||
type of file-manager is common. These icons do have drawbacks, though, as
|
||
fewer files will fit into a single display window which results in much more
|
||
scrolling to find a particular file. The impact on system resources is
|
||
considerable as well, as the X server is called upon to constantly update the
|
||
display, and memory usage is much greater than what is needed by a text-based
|
||
manager. In the end it's just a matter of preference.
|
||
|
||
<p>Sfm is unusual in that it is an X-only file-manager which is also
|
||
text-based (FileRunner is another). It also goes against the general trend
|
||
towards mouse-based applications in that the keyboard interface is
|
||
well-developed.
|
||
|
||
<center><h3>Appearance and Features</h3></center>
|
||
|
||
<p>The default window size is rather small; my first impression was that this
|
||
was a trivial application, probably a first GTK programming exercise without
|
||
much utility. As I explored further (and actually read the README file!) I
|
||
found that sfm's uncluttered appearance conceals an interesting and useful
|
||
approach to the perpetual effort to contrive a useful interface to the
|
||
<b>ls</b> utility. In the screenshot below I've enlarged the default window
|
||
by about one-third:<br>
|
||
|
||
<p><img alt="sfm window" src="./gx/ayers/sfm1.gif">
|
||
|
||
<p>The above window is rather plain. The interesting part is the
|
||
right-mouse-button menu which offers a plethora of actions which can be
|
||
performed upon the highlighted file, along with a submenu offering less-used
|
||
possibilities. I wanted a screenshot showing the basic sfm window with both
|
||
menus fanned out from it. I don't know whether it is an idiosyncrasy of sfm,
|
||
GTK, or xv (which I used for the screenshots), but while I was able to get
|
||
shots of either menu by itself, I couldn't get them all in one screenshot. So
|
||
here are the main menu and its submenu; try to imagine them connected to the
|
||
first screenshot above:<br>
|
||
|
||
<p><img alt="first sfm menu" src="./gx/ayers/sfm2.gif">
|
||
|
||
<p>This is the submenu stemming from the "more" item:
|
||
|
||
<p><img alt="sfm sub-menu" src="./gx/ayers/sfm3.gif">
|
||
|
||
<p>As you can see, the keyboard shortcuts for all of the various menu-items
|
||
are shown to the right of the action menu-entries. This is a great help in
|
||
learning the key-bindings, which are designed to be intuitive and similar to
|
||
those of many other programs. I especially like the Lynx-style left-and-right
|
||
arrow-key directory navigation (the mc file-manager offers this as an option).
|
||
|
||
<p>Multiple sfm windows can be opened at once and files can be easily copied
|
||
or moved between them.
|
||
|
||
<p>Sfm uses a configuration dot-file (<i>~/.sfm</i>) in order to determine the
|
||
action to take upon a highlighted file when either the enter key, the
|
||
right-arrow-key, or a single left-mouse-button click is received.
|
||
Surprisingly, this is one dot-file you won't have to edit, as it is
|
||
auto-generated. The first time you select, as an example, a text file, a
|
||
dialog box pops up asking what action you'd like to take, such as editing it
|
||
with your favorite editor. That preference is then recorded in the
|
||
<i>~/.sfm</i> file; the next time a text file is selected it will be loaded
|
||
into your editor. Sfm uses the standard Linux <b>file</b> utility to
|
||
determine file-types. This is quite a nice feature, especially for new Linux
|
||
users who have enough to do just becoming comfortable with the system without
|
||
constantly needing to chase down and edit config files.
|
||
|
||
<p>Sfm is still in its early days, but judging by the intelligent design of
|
||
the current version, it's likely that further improvements are in the offing.
|
||
The current version (1.4 as I write this) is available from the
|
||
<a href="ftp://sunsite.unc.edu/pub/Linux/utils/file/managers">Sunsite</a>
|
||
archive; an alternate site is
|
||
<a href="http://www.geocities.com /SiliconValley/Horizon/8726">here</a>.
|
||
|
||
<hr>
|
||
|
||
<!-- hhmts start -->
|
||
Last modified: Sun 28 Jun 1998
|
||
<!-- hhmts end -->
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Larry Ayers <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./ayers3.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./starkey.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">Portable GUI C++ Libraries</font></H1>
|
||
<H4>By <a href="mailto:starkey@rmi.net">Sean C. Starkey</a></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
Most well-written, non-graphics C++ code is portable, but major
|
||
problems occur when one tries to write portable applications for
|
||
graphical user interfaces. On Linux, the X Window System is used as the major
|
||
graphical user interface. GUI code written on Linux will not work
|
||
on MS Windows. Even though we all know that Linux is the better of the two,
|
||
some Linux developers would like to also support MS Windows
|
||
with its large number of users.
|
||
<p>
|
||
With a portable GUI C++ library, source code developed under Linux and X
|
||
can be compiled for other platforms, including MS Windows. Quite
|
||
a few GUI C++ libraries are available at this time, including
|
||
MFC and OWL for MS Windows. Unfortunately, none of these libraries are
|
||
portable to both X and MS Windows.
|
||
<p>
|
||
Desirable features in a portable GUI library include the following:
|
||
<p>
|
||
<ul>
|
||
<li> Support for a large number of platforms
|
||
<li> Easy to use, with good documentation
|
||
<li> A good set of widgets (or
|
||
controls, in Microsoft-speak) to use in your interface
|
||
</ul>
|
||
Other desirable features which are not GUI related are portable network
|
||
functionality, file I/O capabilities and some good container classes.
|
||
<p>
|
||
What are some of the problems faced by a portable GUI library?
|
||
One is that GUI code on different platforms varies widely. To create
|
||
a new window, MS Windows uses a completely different command than X, even
|
||
though the code uses the same programming language in both. Another problem is
|
||
subtle changes in event handling. All GUI applications are event
|
||
driven, but the events are different on different platforms. The
|
||
portable GUI library must take all of these differences into
|
||
consideration and supply a common interface for all platforms.
|
||
<p>
|
||
I have reviewed three different GUI C++ libraries which support both
|
||
X and MS Windows. All are free of charge with no royalties.
|
||
The source code for these libraries is available on the web sites cited in
|
||
Resources.
|
||
<p>
|
||
Since these libraries are written in C++, you have all the
|
||
advantages of object-oriented design. To create a new window, you
|
||
derive your own window class from the main window class. After adding
|
||
the appropriate code to handle events in your window, it is
|
||
finished.
|
||
<p>
|
||
<h3>wxWindows</h3>
|
||
<p>
|
||
<b>wxWindows</b> is by far the most active of the libraries available.
|
||
wxWindows was originally developed by Julian Smart, but has received
|
||
contributions from many others. The version of wxWindows reviewed in
|
||
this article is 1.68B. Version 2.0, a major rewrite of the library, is
|
||
rumored to be available in ``the near future''.
|
||
<p>
|
||
<b>wxWindows</b> is a very modular project. The main version is
|
||
available on the web site. In addition to the main version, there are
|
||
also many subprojects. Some of these subprojects include additional
|
||
widgets, an Xlib library port, a Macintosh port and many others. These
|
||
subprojects are described on the wxWindows web site (see Resources).
|
||
<p>
|
||
Note that the main version of wxWindows requires the Motif
|
||
toolkit. Motif is not free; therefore, most Linux installations do
|
||
not include it. Lesstif, a popular Motif clone, compiles and
|
||
works with wxWindows. There is also a side project which uses only
|
||
standard Xlib libraries so that wxWindows does not need Motif.
|
||
<p>
|
||
<b>wxWindows</b> has many features. Figure 1 is a screen capture of
|
||
the sample program distributed with wxWindows running on a
|
||
Linux system. Notice all of the widgets available to the
|
||
programmer. More screen shots are available on the wxWindows web
|
||
site.
|
||
<p>
|
||
<center>
|
||
<img src="./gx/starkey/2630f1.gif">
|
||
</center>
|
||
<P>
|
||
<center><B>Figure 1</B> </center>
|
||
<p>
|
||
One of best features of wxWindows is the on-line documentation. The
|
||
documentation comes in HTML, LaTeX and MS Windows help format. There
|
||
is also a very active mailing list for wxWindows, where many questions
|
||
can be answered. Trying to learn all of these new classes can be
|
||
confusing, and wxWindows does a good job of describing them.
|
||
<p>
|
||
If you don't want to download all of the wxWindows source code,
|
||
a distribution on CD is available. See the web site for more details.
|
||
<p>
|
||
<h3>V</h3>
|
||
<p>
|
||
<b>V</b> is another freely available library, and was developed by Dr. Bruce
|
||
E. Wampler. [See ``V--A Free C++ GUI Framework for X'',
|
||
<i>Linux Journal</i>, December 1996.] It is able to compile on X and MS Windows.
|
||
It is a complete
|
||
library, but does not have all of the fancy controls that wxWindows
|
||
has. Although not as fancy, in my opinion, V's source code is better
|
||
written and easier to understand than wxWindows.
|
||
<p>
|
||
V does not require the Motif libraries to build and run. All V source
|
||
code uses pure Xlib library calls, so it should be able to compile on
|
||
any Linux system with no difficulty.
|
||
<p>
|
||
V has quite a few widgets available as well. Figure 2 is a screen shot
|
||
of an example program distributed with the library. This look
|
||
is consistent on all platforms.
|
||
<p>
|
||
<center>
|
||
<img src="./gx/starkey/2630f2.gif">
|
||
</center>
|
||
<P>
|
||
<center><B>Figure 2</B> </center>
|
||
<p>
|
||
<h3>YACL</h3>
|
||
<p>
|
||
Another library worth looking at is YACL (Yet
|
||
Another Class Library). The author, M. A. Sridhar, reports that YACL
|
||
can compile on X, MS Windows and OS/2. Unfortunately, it looks as if
|
||
progress on YACL has been nonexistent since late 1996. The current
|
||
version of YACL, 1.60, is close to complete with a good set of classes and
|
||
widgets.
|
||
<p>
|
||
<center>
|
||
<img src="./gx/starkey/2630f3.gif">
|
||
</center>
|
||
<P>
|
||
<center><B>Figure 3</B> </center>
|
||
<p>
|
||
Figure 3 shows a screen shot of an example program distributed with
|
||
the library. This example shows some of the graphics primitives
|
||
available with YACL. YACL also has all of your basic widgets,
|
||
such as buttons, menus, choices and radio buttons.
|
||
<p>
|
||
One of YACL's biggest drawbacks is a lack of documentation. There
|
||
is a book about YACL: <i>Building Portable C++
|
||
Applications with YACL</i>, Addison-Wesley, 1996. I would suspect this book has
|
||
more information than the documentation distributed with the
|
||
library.
|
||
<p>
|
||
If you would like more information on any of these libraries, please
|
||
see their web page listed in the Resources table.
|
||
<P>
|
||
<h3>Resources</h3>
|
||
<p>
|
||
<b>wxWindows</b>: http://web.online.co.uk/julian.smart/wxwin/
|
||
<p>
|
||
<b>V</b>: http://www.objectcentral.com/vgui/vgui.htm
|
||
<p>
|
||
<b>YACL</b>: http://www.cs.sc.edu/~sridhar/yacl/
|
||
<p>
|
||
<b>User Interface Software Tools</b>:
|
||
http://www.cs.cmu.edu/afs/cs/user/bam/www/toolnames.html<br>
|
||
A good page for some other GUI libraries that are not necessarily
|
||
free, in C++ or supportive of the X Window System.
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Sean C. Starkey <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./ayers4.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./koscielny.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">Using Linux instead of an X Emulator</font></H1>
|
||
<H4>By <a href="mailto:koscieln@interpath.com">Al Koscielny</a></H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
|
||
Sometimes you must have X on the desktop--at work, that is.
|
||
At home, you would have several choices from your well-appointed
|
||
stable of Linux ponies. Work is another story--you have the corporately
|
||
sanctioned productivity tool running on your desktop, and adding an X
|
||
emulator application is going to cost somebody some money. You blew
|
||
your software budget for the year on compilers. So what are you going
|
||
to do now?
|
||
<p>
|
||
Today's typical work environment includes a desktop PC running a version
|
||
of the Windows operating system. If the job is writing memos and sending
|
||
around Word documents, that's a reasonably adequate solution.
|
||
If the job is developing and testing cross-platform GUI applications,
|
||
then running an X application from your desktop is an effective
|
||
way to get the work done.
|
||
<p>
|
||
<h3>The Trafvu Project</h3>
|
||
<p>
|
||
<b>Trafvu</b> is an application for displaying results from traffic
|
||
simulation models. Such models can be used for planning and design
|
||
purposes. For example, suppose the city fathers attract the Olympics for the
|
||
year 2004. What changes need to be made to the traffic system so that
|
||
the city does not suffer from massive gridlock during the Olympics?
|
||
<p>
|
||
Trafvu was developed in C++ to run on Windows and the X Window System,
|
||
with XVT being used as a cross-platform tool. For a software development
|
||
lab, we had several Pentiums running Windows 95 and NT and some Sun
|
||
workstations running Solaris 2.5. Generally, everyone on the project had
|
||
a desktop system, and the lab was used for collaborative efforts, such
|
||
as fixing bugs, and for design meetings. Several of the lab machines
|
||
were set up as file servers. The application source code was maintained
|
||
on a Windows NT server using the Mainsoft Sourcesafe software revision
|
||
control product. Typically, the project source code were extracted
|
||
to a local machine (lab or desktop), some source files checked out, and C++
|
||
code developed or modified and tested; then the modified files were
|
||
checked back in.
|
||
<p>
|
||
Initially, when porting code from Windows to X, files were transferred
|
||
to a UNIX workstation using FTP, followed by a repeat of the compile, link, test
|
||
and debug cycle. As the project progressed, SAMBA was installed on the
|
||
Sun workstation, so that developers could access their home directories
|
||
on the Sun workstation from the Windows browser. Then files could be
|
||
extracted directly to the file system on the workstation. Opening a
|
||
TELNET session from the Windows PC to the Sun workstation permitted
|
||
concurrent compilation and linking on both Windows and X.
|
||
<p>
|
||
At this point in the cycle, the source code had been modified,
|
||
compiled, linked and tested under Windows. Now we needed to test it on
|
||
the X Window System. We needed a way to run an X application from our
|
||
desktop PC.
|
||
<p>
|
||
<h3>X Emulator Options</h3>
|
||
<p>
|
||
There are several ways to provide X on the desktop. A few years
|
||
ago, X-terminals were very popular. An X-terminal typically has nice real
|
||
estate (i.e., a large screen), some memory, no local disk space and costs
|
||
about $1000 to $2000 (most of the expense is that nice monitor). At boot
|
||
time, it loads an OS from a boot server, so setting up the boot server
|
||
becomes the headache. As PC processors became cheaper and more capable,
|
||
the price of hard drives fell through the floor, so the PC desktop
|
||
became very popular. Typically, PCs run a version of the Windows operating
|
||
system. Using them as X terminals requires additional software for X
|
||
emulation. For example, with Hummingbird's Exceed, a typical X emulator,
|
||
you can run your favorite X application on a convenient UNIX workstation
|
||
and have X display on your desktop computer. X emulation products for
|
||
Windows generally cost a few hundred dollars per machine.
|
||
Currently,
|
||
network computers (NCs) are being pushed as a solution to the software
|
||
application configuration nightmare brought on by the proliferation of
|
||
desktop PCs, and typical prices seem to be about $700US per unit.
|
||
<p>
|
||
Several options are available and if a few hundred dollars is not
|
||
a concern, the X emulator application is probably the ticket. If, on
|
||
the other hand, no one will sign the purchase request or many machines
|
||
need the capability, then a cheaper option is needed.
|
||
<p>
|
||
<h3>Linux to the Rescue</h3>
|
||
<p>
|
||
With hardware prices falling and Windows applications becoming more
|
||
bloated, there's usually some older hardware sitting around unused.
|
||
Who wants to attempt to run Visual C++ 5.001a under Windows 95 on that 486/66
|
||
with a 1 GB hard drive? I won't volunteer. Next question--what
|
||
OS runs X quite comfortably on a 486 with 16MB of memory? The answer is Linux.
|
||
<p>
|
||
Thus, an alternative to the X emulation application is running Linux on the
|
||
PC. Set up the PC as a dual boot machine and simply boot Linux to run
|
||
X applications on the desktop. The advantage of using Linux is that no
|
||
purchase requests have to be signed. Just bring the CD-ROM from home,
|
||
find some free time and disk space and install it. The disadvantages
|
||
are finding the time to do the installation and the need to boot between
|
||
running Windows or X. The hurdles in the process are finding about 300MB
|
||
of spare disk space and a three-button mouse.
|
||
<p>
|
||
<h3>Setting up Linux</h3>
|
||
<p>
|
||
Initially, my company installed Linux 1.2.13 on a Gateway 486/66 and a
|
||
no-name clone 486/66. There are numerous resources on installing Linux,
|
||
if you need that information. However, having copies of books such as
|
||
<i>Running Linux</i> and <i>Linux Network Administrator's Guide</i> was essential
|
||
for us. Internet access for HOWTO documents can also be helpful.
|
||
Installing on the Gateway and no-name were mostly straightforward.
|
||
The Gateway did not have a CD-ROM drive, so the CD-ROM was exported from one
|
||
of the Sun workstations. The Slackware distribution has the option of
|
||
installing over a network and this worked well. Both the Gateway and the
|
||
no-name had SCSI cards, and additional SCSI disks were salvaged from
|
||
other machines for installing Linux. Setting up XFree86 on the no-name
|
||
was a chore because of the video card. Generally, the cheaper a PC,
|
||
the less documentation is provided with it. So putting up X on the no-name took
|
||
quite a bit of experimentation. The Linux multiple console capability
|
||
is very handy when installing XFree86.
|
||
<tt>ctrl-alt-F1</tt>
|
||
brings up the screen
|
||
used to start X (use <b>startx</b> command) to look for error messages.
|
||
<tt>alt-F7</tt> gets you back to your
|
||
X session, and <tt>ctrl-alt-F?</tt>,
|
||
where <tt>?</tt>=2, 3, 4, 5 or 6, gets another login session for
|
||
checking log files, etc.
|
||
<p>
|
||
Later in the project we installed Linux 2.0.0 on a SAG Electronics
|
||
dual-processor Pentium Pro 200 MHz with an Imagine Number Nine 128 Series
|
||
II video card with 4MB. The Pentium Pro came with a 4MB hard drive,
|
||
and a 400MB partition was allocated for Linux. Installation on the
|
||
Pentium Pro machine was more difficult because the hardware was so new.
|
||
Video drivers for the Number Nine card were in beta, and the generic SVGA
|
||
drivers wouldn't work. Upgrades to XFree86 took about 10-20MB of
|
||
downloading from http://www.xfree86.org/ and perhaps a couple of hours to install
|
||
and test. The three-button mouse on the Pentium Pro insisted on being
|
||
difficult, but this was remedied by the advice in the three-button mouse
|
||
mini-HOWTO.
|
||
<p>
|
||
I tried the two-button mouse emulation and found it to be just good
|
||
enough to get me in trouble. I would think I had the timings down,
|
||
roll into an xterm with the root prompt and paste the equivalent of <i>War
|
||
and Peace</i> in at the command line. (Gee, I hope I didn't do something
|
||
like <tt>rm<\!s>-rf<\!s>/</tt> in that session.) I did find coworkers who were willing
|
||
to trade a Logitech three-button mouse for my two-button mouse. Once one is used to
|
||
the X version of ``cut and paste'', it is very difficult to do without it.
|
||
<p>
|
||
The three PCs were set up with dual boot capability. Initially, we just
|
||
used a floppy boot disk for Linux, since making one is easily accomplished, and
|
||
the MBR (Master Boot Record) for Windows remains intact. Later, when Linux
|
||
had proven itself useful
|
||
and we were interested in convenience, we added LILO to the MBR. The PCs
|
||
were frequently used in Windows to edit documents, prepare spreadsheets,
|
||
etc. It was very handy to access these files without having to
|
||
boot Windows. Accessing Windows files while the PC is running Linux can
|
||
be done using SAMBA. For FAT file systems, set up a mount point in
|
||
/etc/fstab with a file system type of <tt>msdos</tt> in order to make the Windows
|
||
file system fully accessible while Linux is running. Install SAMBA on
|
||
the Linux machines, export the Windows file system through the smb.conf
|
||
configuration file, and then you can access the files through the Windows
|
||
browser (File Manager or Explorer, depending on your Windows flavor).
|
||
<p>
|
||
It's encouraging to see file system drivers for FAT and HPFS, since
|
||
accessing the files from the other operating systems is very convenient while running
|
||
Linux. However, with current hard drive sizes, FAT is outdated and
|
||
offers very little security. Microsoft offers some alternative file
|
||
systems, such as VFAT and NTFS. However, it appears that specifications
|
||
for these files will remain exclusively with Microsoft. So, although
|
||
work is in progress on the NTFS driver for Linux, I don't think
|
||
NTFS support under Linux will be available any time soon. Perhaps
|
||
a better design choice
|
||
is to minimize the usage of proprietary file systems on multi-boot machines.
|
||
<p>
|
||
Typically, the Linux PCs were used for an X-terminal login to the
|
||
Sun workstations. To make this convenient, the ``Goodstuff'' button bar
|
||
was used. The environment variable DISPLAYHOST was set in this way:
|
||
<p>
|
||
<pre>
|
||
export DISPLAYHOST=vader:0
|
||
</pre>
|
||
This environment variable is used when using rsh to get to an xterm on the Sun workstation. The .fvwmrc file with
|
||
the FVWM window manager has several samples, so just fill in appropriate
|
||
values for the remote host and the $DISPLAYHOST. Getting the GoodStuff
|
||
button to work can be a chore if something is wrong with the setup.
|
||
Start by testing with a simple command:
|
||
<p>
|
||
<pre>
|
||
rsh remote-host date
|
||
</pre>
|
||
Once this works, typing <tt>rsh xterm</tt> should also
|
||
work.
|
||
Having a single button set the DISPLAY variable and also start the remote
|
||
session prevents a nusiance console display when DISPLAY is set to the default
|
||
value of 0.0.
|
||
<p>
|
||
A side benefit of installing Linux is backing up the file system over the
|
||
network. A PC usually doesn't have a tape drive, whereas a more
|
||
backup-conscious Sun workstation may have a 5GB DAT drive. From the Linux PC,
|
||
the <b>dd</b> command with the appropriate arguments will back up your
|
||
hard drives to a tape drive on a remote workstation. A crontab entry
|
||
is good for this type of backup for nonwork hours, so that network bandwidth
|
||
impact is minimized.
|
||
<p>
|
||
<h3>Synopsis</h3>
|
||
<p>
|
||
There is a steep learning curve to installing Linux, and my initial
|
||
installation of Linux took several days. Recently, I installed Slackware
|
||
3.2 (2.0.29 kernel) in about two hours, which included bringing up X and
|
||
restoring home directories. Recent efforts at improving Linux's ease
|
||
of use have been well spent and make Linux a more viable
|
||
alternative for use at work.
|
||
<p>
|
||
A spare X terminal is very handy to have around when debugging an
|
||
application. It is possible to stop events from getting to the debugger
|
||
on the Sun workstation, so that the console is essentially locked.
|
||
However, if there's a free X display, set the DISPLAY variable
|
||
there before running a command-line debugger.
|
||
<p>
|
||
Booting multiple operating systems is an interesting twist on cross-platform
|
||
application development. If I could have built the <b>trafvu</b> application
|
||
using the GNU compiler (some issues with the Rogue Wave libraries
|
||
precluded this), I could have used a single PC for both Windows and X
|
||
development and testing.
|
||
<p>
|
||
We have used Linux and XFree86 on a daily basis for over a year and have
|
||
been impressed with the solid performance.
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Al Koscielny<BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./starkey.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./mauck.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
|
||
<H4>
|
||
"Linux Gazette...<I>making Linux just a little more fun!</I>"
|
||
</H4>
|
||
|
||
<P> <HR> <P>
|
||
<!--===================================================================-->
|
||
|
||
<center>
|
||
<H1><font color="maroon">USENIX 1998</font></H1>
|
||
<H4>By Aaron Mauck</H4>
|
||
</center>
|
||
<P> <HR> <P>
|
||
<A HREF="./photos2.html">Photo Album</A>
|
||
<P> <HR> <P>
|
||
Each year, the USENIX organization (http://www.usenix.org/) puts on a technical
|
||
conference dealing with UNIX and other UNIX-like systems. This year
|
||
they had an emphasis on free or Open Source operating systems, primarily
|
||
Linux and *BSD. The conference was held in New Orleans, Louisiana from June 15th to
|
||
the 20th.
|
||
<p>
|
||
<h3>Tutorials</h3>
|
||
<p>
|
||
Many day-long tutorials were offered on Monday and Tuesday including
|
||
``Inside the Linux Kernel'' by Stephen Tweedie, one of the EXT2
|
||
developers, and
|
||
several talks on Networking and Security. I attended ``Hot Topics in
|
||
System Administration'', taught by Treni Hein and Evi Nemeth.
|
||
They covered many topics including Samba, Packet Filtering and IPv6.
|
||
<p>
|
||
<h3>Vendor Expo</h3>
|
||
<p>
|
||
I found it refreshing to see a vendor exposition (albeit a small one) comprised
|
||
completely of UNIX-friendly companies. O'Reilly was there, displaying all of their
|
||
titles for sale at 20% off. Needless to say, this made it one of the most
|
||
popular booths. Most of the faces were familiar: Red Hat, Linux
|
||
International, InfoMagic, the three heads of BSD and others. Among
|
||
the unexpected participants was the FBI, just a short distance from the
|
||
Free Software Foundation. The whole
|
||
atmosphere of the exposition was quite relaxed, without the
|
||
hectic feel of Comdex and other large industry trade shows.
|
||
<p>
|
||
<h3>BOFs and Speeches</h3>
|
||
<p>
|
||
Each evening offered several talks by different people on a
|
||
wide range of subjects. I caught ``The State of Linux'' talk by Linus
|
||
Torvalds on Thursday afternoon. He set Aug/Sep 98 as a hopeful release
|
||
date for the 2.2 kernel. Another event that took place every evening was
|
||
the ``Birds
|
||
of a Feather'' (BOF) meetings, which were designed as a place for
|
||
people with common interests to come together and discuss their ideas and
|
||
goals. It was also a great place to rub
|
||
shoulders with some of the ``big names'' in the UNIX community,
|
||
such as Keith Bolstic, Eric Allman and Jon ``maddog'' Hall.
|
||
<p>
|
||
<h3>Terminal Room</h3>
|
||
<p>
|
||
What UNIX conference would be complete without a terminal room?
|
||
Luckily, Earthlink and openBSD donated machines and bandwidth and created a
|
||
room with thirty or so machines running openBSD, connected to a T1.
|
||
<p>
|
||
<h3>Summary</h3>
|
||
<p>
|
||
If I were to do it all over again (and I most definitely want to), I
|
||
would spend more time planning what I want to learn. I was
|
||
a bit overwhelmed by
|
||
the sheer number of talks/events, and therefore found it difficult
|
||
to focus on exactly what I wanted to get from the experience--I was
|
||
constantly spreading myself too thin.
|
||
For any UNIX, Linux, BSD etc. lover, USENIX is a must at least once in
|
||
a lifetime. It is a very friendly and co-operative environment and has
|
||
definitely earned its reputation as one of the hubs of the computing
|
||
community.
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<center><H5>Copyright © 1998, Aaron Mauck <BR>
|
||
Published in Issue 30 of <i>Linux Gazette</i>, July 1998</H5></center>
|
||
|
||
<!--===================================================================-->
|
||
<P> <hr> <P>
|
||
<A HREF="./index.html"><IMG ALIGN=BOTTOM SRC="../gx/indexnew.gif"
|
||
ALT="[ TABLE OF CONTENTS ]"></A>
|
||
<A HREF="../index.html"><IMG ALIGN=BOTTOM SRC="../gx/homenew.gif"
|
||
ALT="[ FRONT PAGE ]"></A>
|
||
<A HREF="./koscielny.html"><IMG SRC="../gx/back2.gif"
|
||
ALT=" Back "></A>
|
||
<A HREF="./lg_backpage30.html"><IMG SRC="../gx/fwd.gif" ALT=" Next "></A>
|
||
<P> <hr> <P>
|
||
<center>
|
||
<H1><IMG SRC="../gx/backpage.gif" alt="Linux Gazette Back Page"></H1>
|
||
|
||
<H5>Copyright © 1998 Specialized Systems Consultants, Inc.<br>
|
||
For information regarding copying and distribution of this material see the
|
||
<A HREF="../copying.html">Copying License</A>.</H5>
|
||
</center>
|
||
|
||
<P> <hr> <P>
|
||
|
||
<H3>Contents:</H3>
|
||
<ul>
|
||
<li><a HREF="./lg_backpage30.html#authors">About This Month's Authors</a>
|
||
<li><a HREF="./lg_backpage30.html#notlinux">Not Linux</a>
|
||
</ul>
|
||
|
||
<a name="authors"></a>
|
||
<P> <HR> <P>
|
||
<!--======================================================================-->
|
||
|
||
<center><H3><font color="maroon">About This Month's Authors</font></H3></center>
|
||
|
||
<P> <HR> <P>
|
||
<!--======================================================================-->
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Larry Ayers</H4>
|
||
Larry lives on a small farm
|
||
in northern Missouri, where he is currently engaged in building a
|
||
timber-frame house for his family. He operates a portable band-saw mill,
|
||
does general woodworking, plays the fiddle and searches for rare
|
||
prairie plants, as well as growing shiitake mushrooms. He is also
|
||
struggling with configuring a Usenet news server for his local ISP.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Jim Dennis</H4>
|
||
Jim is the proprietor of <A href="http://www.starshine.org">
|
||
Starshine Technical Services</A>.
|
||
His professional experience includes work in the technical
|
||
support, quality assurance, and information services (MIS)
|
||
departments of software companies like
|
||
<A href="http://www.quarterdeck.com"> Quarterdeck</A>,
|
||
<A href="http://www.symantec.com"> Symantec/
|
||
Peter Norton Group</A>, and
|
||
<A href="http://www.mcafee.com"> McAfee Associates</A> -- as well as
|
||
positions (field service rep) with smaller VAR's.
|
||
He's been using Linux since version 0.99p10 and is an active
|
||
participant on an ever-changing list of mailing lists and
|
||
newsgroups. He's just started collaborating on the 2nd Edition
|
||
for a book on Unix systems administration.
|
||
Jim is an avid science fiction fan -- and was
|
||
married at the World Science Fiction Convention in Anaheim.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Norman M. Jacobowitz </H4>
|
||
Norman is a freelance writer and marketing consultant
|
||
based in Seattle, Washington. Please send your comments,
|
||
criticisms, suggestions and job offers to normj@aa.net.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Al Koscielny </H4>
|
||
Al is a Systems Engineer with Resource Solutions International.
|
||
In his spare time, he plays with Linux, reads Usenet, rides an ATB
|
||
(all-terrain bike) and
|
||
enjoys cooking. He wishes to acknowledge the contributions of Nacho,
|
||
a big yellow tabby, to this article. He can be reached at koscieln@interpath.com.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Mike List </H4>
|
||
Mike is a father of four teenagers, musician,
|
||
and recently reformed technophobe, who has been into computers
|
||
since April,1996, and Linux since July, 1997.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Aaron Mauck</H4>
|
||
Aaron is the System Administrator at SSC. He can be reached via
|
||
e-mail at aaron@ssc.com.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Gerd Mueller </H4>
|
||
Gerd's first computer was a Amiga 500, but since 1996 he works with
|
||
Linux. Few weeks ago he has finished his studies of computer science.
|
||
Currently he spends most of his time with developing WipeOut at
|
||
softwarebuero m&b. He can be reached at gerd@softwarebuero.de.
|
||
|
||
<p>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">David Nelson</H4>
|
||
David manages scientific research at the U.S. Department of
|
||
Energy. Before that he earned his living as a theoretical plasma
|
||
physicist. He started programming on the IBM 650 using absolute machine
|
||
language and later graduated to CDC, DEC and Cray machines for his
|
||
research. But Linux is the most fun. He and his wife, Kathy, live
|
||
near Washington DC; they enjoy tennis, skiing, sailing, music, theater
|
||
and good food.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">David Penland</H4>
|
||
David has been using linux since he first encountered the sls
|
||
distribution in the Autumn of 1992. He works as an AIX systems administrator for
|
||
Unifi, INC. in Greensboro, North Carolina. He is married to Angel Penland, and
|
||
they share a house with 2 dogs and 4 cats. He can be reached at
|
||
dpenland@mindspring.com.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Eric S. Raymond</H4>
|
||
Eric is a semi-regular contributor to <i>Linux Journal</i>. You
|
||
can find more of his writings, including his paper ``The Cathedral and
|
||
the Bazaar'', at http://www.ccil.org/~esr/.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Jan Rooijackers </H4>
|
||
Jan is an employee at Ericsson Data Netherlands BV (DSN).
|
||
He came in contact with UNIX in 1991 and is now working in the Internet/Intranet
|
||
business. Outside work, Jan spends time with his family and computers. He can
|
||
be reached at Jan.Rooijackers@dsn.ericsson.se.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Sean C. Starkey </H4>
|
||
Sean has been a Linux user for over four years. His first Linux
|
||
system had 0 as the major version number and came on floppy disks.
|
||
If you would like to know more about Sean, feel free to visit his web site
|
||
at http://rmi.net/~starkey/. He can be reached at starkey@rmi.net.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Alex Vrenios</H4>
|
||
Alex is a Lead Software Engineer at Motorola and has his ows consulting
|
||
business. He is always taking some sort of class.
|
||
He just finished the class work toward a Ph.D.
|
||
in computer science, but only time will tell if it goes any further.
|
||
His wife, Diane, is certainly his best friend and biggest fan. He enjoys his
|
||
two Schnauzers, Brutus and Cleo, and his dozens of African Ciclids, too. He
|
||
is a licensed amateur radio operator, as is Diane, and they spend more than
|
||
a few nights together observing the skies through their 5-inch telescope.
|
||
They like to get out and stay active, to enjoy life together.
|
||
|
||
<P>
|
||
<H4><IMG ALIGN=BOTTOM ALT="" SRC="../gx/note.gif">Robert Wuest</H4>
|
||
Robert is an Electrical Engineer with Kemet Electronics in equipment
|
||
engineering. He lives in the US but works in Mexico. He plays with computers
|
||
there, developing software using Linux (for embedded 6809 systems). This article
|
||
results from his current project, an instrument which will use a PC104 computer
|
||
running Linux. He is building the chassis in AutoCAD using full 3D to place PC
|
||
boards, relays and a lot of connectors. He really wishes he could do that in
|
||
Linux. He uses Tango for DOS for circuit design and PCB layout. He wishes he
|
||
could do that in Linux also.
|
||
|
||
<a name="notlinux"></a>
|
||
<P> <hr> <P>
|
||
<!--====================================================================-->
|
||
|
||
<center><H3><font color="maroon">Not Linux</font></H3></center>
|
||
|
||
<P> <HR> <P>
|
||
<!--======================================================================-->
|
||
<P>
|
||
Thanks to all our authors, not just the ones above, but also those who wrote
|
||
giving us their tips and tricks and making suggestions. Thanks also to our
|
||
new mirror sites.
|
||
<P>
|
||
This last month I've just been working, working, working -- no time for
|
||
fun. Riley is off on our annual motorcycle trip without me; he's exploring
|
||
Utah and Arizona, all our favorite parks. So at least one of us is having
|
||
fun. :-)
|
||
<P>
|
||
Actually, I'm having fun too. Working on <I>LG</I> always seems more like
|
||
fun than work and the same is true for <I>Linux Journal</I>. I've also been
|
||
doing some exploring of areas surrounding Seattle with my father-in-law,
|
||
who just moved up to this area. We had a two hour ferry wait last Saturday
|
||
that was frustrating yet comfortable because of the company. I think having
|
||
nice in-laws is a definite plus in life. At any rate, we've seen some
|
||
beautiful scenery, including a trip to Snoqualmie Falls and one to the
|
||
Olympic Peninsula.
|
||
<P>
|
||
Have fun!
|
||
|
||
<P> <hr> <P>
|
||
<A HREF="http://www.ssc.com/ssc/Employees/Margie/margie.html">
|
||
Marjorie L. Richardson</A> <br>
|
||
Editor, <A HREF="http://www.linuxgazette.com/"><i>Linux Gazette</i></A>, <A
|
||
HREF="mailto:gazette@ssc.com">gazette@ssc.com</a>
|
||
|
||
<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="./mauck.html"><IMG SRC="../gx/back2.gif" ALT=" Back "></A>
|
||
<p><hr><p>
|
||
<I>Linux Gazette</I> Issue 30, July 1998,
|
||
<A HREF="http://www.linuxgazette.com/">http://www.linuxgazette.com</A><BR>
|
||
This page written and maintained by the Editor of <I>Linux Gazette</I>,
|
||
<A HREF="mailto:gazette@ssc.com"> gazette@ssc.com</A>
|
||
<P>
|
||
</BODY>
|
||
</HTML>
|