Linux Gazette MailBag Issue #8

# MailBag

## A Member of the Linux Documentation Project

#### "The Linux Gazette...making Linux just a little more fun...! "

##### Copyright (c) 1996 John M. Fisk fiskjm@ctrvax.vanderbilt.edu
The LINUX GAZETTE is a member of the LINUX DOCUMENTATION PROJECT.

## Salutations and the MailBag!

Howdy y'all! Thanks for dropping in! Well, as usual, the mail has been coming in fairly steady. I apologize to everyone who wrote during the "Great E-Mail Brown-Out". I managed to get backlogged by several week's worth of mail and while I tried to write back to everyone, I'm sure that there were folks that I missed.

Anyway, thanks so much to the many of you who wrote and offered corrections, ideas, suggestions, and encouragement. I think most of you realize that this takes a huge amount of time to do and the encouragement has been invaluable (well, that AND one seriously awesome OS!! :-).

Please DO take the time to skim through these letters. I don't have the space to put everyone's in here but these are a sampling of those that I thought would be of general interest to everyone. There's a little bit of everything here and some wonderful ideas (as well as some much needed corrections to my "information myopia").

I'm sorry that I haven't had the time to actually create links to each of these letters but just so that you get a taste for what's here I've included a "grep list" of subjects headings for your purusal:

> Subject: Abuse
> Subject: Linux Gazzette #7
> Subject: CND 1.0 and New Products Available.
> Subject: Regarding Traps And MOTD's
> Subject: nice X-Window mail alert software
> Subject: Dosemu
> Subject: Diamond Stealth 64 PCI
> Subject: Linux New User WWWboard #2 in Finland
> Subject: Good job dude!
> Subject: Comment Errors in the Linux Gazette
> Subject: Slackware
> Subject: italy
> Subject: Ever thought about something like this??
> Subject: Linux Gazette database engine
> Subject: Thanks
> Subject: Another URL_GET type program
> Subject: Media Linux
> Subject: SecureNet PRO
> Subject: Supermount
> Subject: xcoral + Java
> Subject: Your article on colorizing /etc/issue
> Subject: Colorizing shell scripts
> Subject: Re: Colorizing shell scripts
> Subject: Re: Latest Gazette
> Subject: more emacs
> Subject: 2 cent hint
> Subject: I forgot -- in the emacs article
> Subject: some more tips for your LG
> Subject: lesspipe.sh
> Subject: Acrobat on Linux (you can!)
> Subject: Linux Gazette of course!
> Subject: Neat script techniques & the LG
> Subject: A tip!
> Subject: Cleaning up a console
> Subject: Setting the xterm titlebar from bash prompt

Anyway, a VERY hearty and heartfelt thanks to everyone that took the time to write and offer their ideas, suggestions, tips, comments, corrections, and pats on the back. This has been a HUGE amount of fun :-) and I appreciate everyone's help!

Enjoy!

-- John

Date: Fri, 19 Jul 1996 12:12:43 -0300
From: Gert Bolten Maizonave <gbolten@pampa.tche.br>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Abuse

Like you, I'm no gamer at all, but I had time to take a look at Abuse, the platform game which is mentioned in one of your issues (3rd, I think) and comes with Slackware 3.0-Y.

Despite I didn't hear the sound, because I don't know how to configure my SB16 yet (please don't tell me), I found it was really cool, but it took less than an hour to finish! It said "To be continued" and there was an offer for a T-shirt, and something like that, what made me think it was only one of those litlle demos.

Later, I took a closer look on it and discovered that was only the Top of the Iceberg. The game is fully programable, and one can make her own levels. Mutcho cool por demas!

It is just the time to read the little (96k) manual (wich is really *abuses* of errors on english, just like me) and start success !-)

Sorry for my badly english. Regards.

Gert Bolten Maizonave, from Porto Alegre, Brasil.

(Well, as Gert said, I'm no gamer, but Abuse is supposed to be the heir-apparent to that all time favorite blood and gore extravaganza DOOM. For those of you who might be interested, there's a write up about it in this month's PC Magazine in the Games and Entertainment section. --John)

Date: Wed, 10 Apr 1996 15:42:19 CDT
From: Al Longyear <longyear@sii.com>
To: 'fiskjm@ctrvax.vanderbilt.edu' <fiskjm@ctrvax.Vanderbilt.Edu>
Subject: Linux Gazzette #7

John,

I stumbled across your Linux Gazzette from the RedHat www page reference. I found it interesting to say the least. Thank you for the work. I realize how much effort it takes to write such a document.

HOWEVER (and you knew that this was coming, didn't you) . . . .

There are some problems with the article describing the PPP ip-up scripts.

1. The pppd process runs these as programs. That is it runs them with 'execl'. It does not run the shell giving 'ip-up' as a shell script to the shell. They are not scripts in the true sense of the word. This means that if you wish to use a script that you must, and this is not an option, make the first two characters #!. This is Linux's magic 'cookie' which means that this program is really a script. Please make this distinction as it is a significant one which many people who use scripts forget.

2. By the time that the ip-up program is executed, the selection for any compression protocols has long since been made. A bug in the existing 2.2.0e code permitted you to specify the BSD compressor without having it loaded. However, it was never really used as it would not have been initialized. The 2.2.0f code has this bug 'hole' corrected.

The PPP protocol requires that the compressors be agreed upon with the "Link Control Protocol (LCP)" stage. This is the very first set of frames which are exchanged when the modems first connect. After those frames are completed, the IPCP protocol is exchanged. The IPCP protocol defines things such as your IP address. Once the IPCP protocol has been exchanged, then and only then is the IP layer 'up' by the standards of the PPP specifications and the ip-up program is run.

So, you may do anything during the execution of ip-up that you wish EXCEPT write to the local terminal as it runs this program with stdin, stdout, and stderr all pointing to the /dev/null device. This is done for security reasons.

I like to run the popclient program to retrieve my mail from the office system's mail box, sendmail to send the outbound mail, and finally run ntpdate to correct the date and time for my portable against the NTP server at the office.

If you wish to dynamically load the bsd compression module then the best way that I have found to do this task is to use the kerneld dynamic loader. Simply make the bsd_comp.o the alias for tty-disc-3 rather than ppp.o. The kerneld loader will attempt to load bsd_comp. This will have a dependency for ppp, so kerneld will first load ppp. This has a dependency for slhc (vj header compression), so that is loaded, then ppp, then bsd_comp.

Thanks for the interesting guide. I plan to check back and see what you have in store for issue #8.

-Al.

(Well, I want to personally thank Al Longyear, the co-author and maintainer of the pppd package. Al generally can be found hanging around the comp.os.linux.xxxxx heirarchy and fielding PPP specific questions. As most, he's terminally busy and so I'm grateful for his taking the time to write this letter of correction and clarification! -- John)

From: David Gregory <dgregory@BudcoDM.budco.com>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: CND 1.0 and New Products Available.

Hi,

If you're interested in writing about commercial products available for linux take a look at www.caldera.com for its latest efforts. Specifically Sun's Wabi technology to run Windows 3.1 programs on linux. Here is a list:

    >CorelDRAW! 3.0, 4.0                    Harvard Graphics 2.0, 3.0
    >Lotus 1-2-3  4.0, 5.0                  Lotus Ami Pro 3.1
    >Lotus Approach 2.1, 3.02               Lotus cc:Mail client 2.03, 2.2
    >Lotus Freelance Graphics 2.01, 2.1     Lotus Notes client 3.0c, 3.3
    >Lotus Organizer 2.01, 2.1              Lotus SmartSuite 3.1, 4.0
    >Lotus Word Pro 96                      Microsoft Access 2.0
    >Microsoft Excel 4.0, 5.0               Microsoft Mail client 3.2
    >Microsoft Office 4.3                   Microsoft PowerPoint 3.0, 4.0
    >Microsoft Project 3.0, 4.0             Microsoft Word 2.0, 6.0
    >PageMaker 4.0, 5.0                     Paradox 4.5, 5.0
    >Procomm PLUS 1.02, 2.11                        Quattro Pro 5.0, 6.0
    >Quicken 3.0, 4.0, Deluxe 4.0           WordPerfect 6.0a, 6.1
    >Microsoft Windows 3.1, 3.11            Microsoft Windows for Workgroups 3.11
    >                                       (with limited functionality)

Even though I hate Microsoft, and I don't really need their products, management needs to hear the word Microsoft in order to take it anything seriously for some reason. I believe that the magazines they read have very powerful subliminal microsoft messages so I try to avoid them. <-- Joke Anyways, my reason for liking the Wabi port is now I have an argument. "Why choose between Microsoft and Unix when you can have both in a networked X-Windows environment". This argument is great since my company is upgrading to LanWorkPlace 5 which includes a cheap but workable X-Server.

I hope this interests you,

Sincerely,

Dave Gregory
Brian Unlimited Distribution Company "BUDCO"
Detroit, Michigan
dgregory@budco.com

(Well, many thanks to Dave for this note! I've often been noted as poking some reasonably good-natured fun at Gates et al. but those of you who have written know that my feeling is that being multi-OS-lingual is the way to go. Each OS has its particular strength and weaknesses and areas where its useful to you as the gal/guy running it. For those of you into this sort of thing, I'd definitely be watching Caldera and the folks at RedHat Software. These guys are making some serious moves in the Linux OS arena. Those of you who are not only multi-tasking, but multi-OS'ing may find this of interest. -- John)

Date: Mon, 10 Jun 1996 12:53:52 CDT
From: Tom Brennan <d93002@rsl.rtc-limerick.ie>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Regarding Traps And MOTD's

Hi!, Here's something, maybe you've heard of it before, Not sure, My apoplogies if you've heard of it!, A while aback here in our College Computers, we can telnet to our server, the server is running on AIX 3.2, and recognised that you can hit Ctrl and D to logout, So , I Went off to try this out on Linux 1.2.13(Surprise!) on my home computer(586/100mhz) and thought there must be a way to do this, so after fumbling around in the /etc subdirectory, buried inside the profile, there's a line which says ignoreeof=9, set that to zero and hey presto you can now log off with Ctrl-D! Mind you I was a newbie before (and still am :) ;)) What a great OS to hack away in these days! I found this Linux Gazette on the 'net and am very impressed!, keep up the good work with Linuz Gazette!

Congratulations!
Cheers,
Tom

eMail: d93002@rsl.rtc-limerick.ie
P.S: I've tried to network two computers via PLIP, the annoying thing is the Kernel thinks the parallel port is at address 0x3BC IRQ 5, the proper address is 0x378 IRQ 7, I've tried switching the values around in Space.c in the /usr/src/linux/drivers/net! I would appreciate a little insight into this problem! bearing in mind that the kernel does automatically probe the I/O address and IRQ, but keeps bringing up the wrong address! :( I'm still happy to hack away though! :) I luv it!

(Thanks, Tom, for this tip! For those of you who've been wondering about that little "ignoreeof" thingie in your /etc/profile, here's a tip that can shed a bit of light on it. -- John)

Date: Thu, 25 Jul 1996 01:00:29 +0000
From: Douglas Hensel <dlhens01@dlhens01.remote.louisville.edu>
To: fiskjm@ctrvax.Vanderbilt.Edu, dlhens01@dlhens01.remote.louisville.edu
Subject: nice X-Window mail alert software

I have found a neat little program that is similar to Xbiff, but with a nicer interface. It can also be compiled with an audio option. The program compiled very easily after making one minor change to the make file. It can be found at

http://www.eurecom.fr/~petit/LinuxFisher/coolmail-1.3.html

I hope you add it to your page. Thanks

(I'm always grateful for the chance to hear about new programs and such -- while I've not yet had a chance to try this out, it sounds seriously cool :-) Those of you what are comparison shoppers in the market for an xbiff replacement may also want to look around for the xmailbox program -- another fun little utility that does animation, sound, "click-on-icon-to-launch-mail-client", and more. -- John)

Date: Wed, 29 May 1996 14:10:05 CDT
From: Michael Van Canneyt <Michael.VanCanneyt@fys.kuleuven.ac.be>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Dosemu

Hello,

I've read the articles in your Linux Gazette (keep up the good works there) on DOSEMU, and I thought that maybe the following was worth mentioning:

To access your DOS partition as C: in DOSEMU it is sufficient to do the following:

- Make sure your DOS partition is visible in Linux
- In your dosemu.conf, set up a hdimage as the C: drive.
(it needn't be big, it can be a few 100k)
- in the CONFIG.SYS of this image, specify as the last line :

    INSTALL=C:\lredir.exe linux\FS/dosc

(assuming your dos partition is mounted on /dosc)

This will load lredir BEFORE loading command.com, and has the nice effect that the autoexec.bat is searched ON YOUR DOS PARTITION. So you really have to worry about only one autoexec.bat file.

In order to distinguish whether I'm running native DOS or DOSEMU, I set an environment variable DOSEMU. It's set to YES in the config.sys on my hdimage, and to NO on the "real" config.sys. Thus I can avoid loading some nasty software in my autoexec.bat.

I hope you'll find this useful enough to publish it.

Yours,
Michael.

PS. I found this trick in the "Linux tips HOWTO". by R.D. Warren. (We wouldn't want to give credit to the wrong people, would we? :-))

(Well, DOSEMU has garnered one of those coveted "Most Favored Programs" distinction here at FiskHaus :-) I've recently upgraded to DOSEMU 0.63.1.36 and it's running great under kernel 2.0.0! I bought a copy of WP 6.1 a while ago and not only run it in its native text mode but it also works great under graphics mode! With its support for clipart and some other niceties, I can even do simple DTP with this thing!

Seriously Mucho Cool! :-)

Anyway, for those of you who haven't tried it -- do so! I think you'll agree that it's worth the investment in time. -- John)

Date: Thu, 21 Mar 1996 18:48:12 CST
From: match grun <mgrun@dbintellect.com>
To: 'smtp: fiskjm@ctrvax.vanderbilt.edu' <fiskjm@ctrvax.Vanderbilt.Edu>
Subject: Diamond Stealth 64 PCI

Hi,

I discovered Linux Gazette on the web and downloaded and printed all issues for reading at home. Here is my 2 cents worth.

I recently installed Linux (Slackware 2) at home. I am very new to both Unix and Linux, having used DOS for years and Windows 3.1 for the last 3 years. Having read various notes on CD-ROM and on the web regarding Diamond display adaptor, I am supposed to have big problems!!! - Exploding monitors and all that good stuff. I am running the Diamond Stealth 64 PCI with 1Mb RAM and NEC 4FGe monitor.

Referring to Matt Welsh's excellent book 'Running Linux', I setup .xinitrc exactly as printed. I managed to fumble around installing VGA and SVGA drivers attempting to get this card working. I got something on the screen but was not impressed with the resolution (320x200, 4 color)!.

I later loaded the S3 drivers. After scratching around the various documentation files, I used xf86config to create a XF86Config file which seemed to look right. I then pasted the "Monitor" section for NEC 4FGe from Monitors file into the XF86Config file. When running startx, up came X-Windows, just like in the book at 640x480.

Ctrl-Alt-+ brought me 800x600 and 1024x768. I did have a problem with 1024x768 - there was a narrow vertical white stripe on the right hand side of the monitor. I did not let this bother me but at least I could play with some new toys! Maybe those problems with Diamond card is all hype!

I have been tinkering for the past 2 weeks. St Patrick's Day in 'Tattered Cover' - great book store - tempted me with Slackware 3.0 (elf). At $19, I could not resist. When I got home, I backed up XF86Config into the DOS partition, blew away Linux, and re-installed the new. Restored the existing XF86Config. This works even better than before - the white stripe has gone away. I have now started experimenting with X resources and .fvwmrc for customizing.

Since I have read of other people having problem with Diamond cards, here is my contribution. Attached is my XF86Config.

XF86Config for Diamond Stealth 64.

Now I still have problems with an Acer 6x CD-ROM drive - EIDE - Linux just does not recognize the drive. I have to copy directories to the DOS partition and install Linux from there. Maybe someone out there can help with that problem.

Linux Gazette is just great. Keep it up.

Match

(Thanks to Match for sharing this! Getting X set up under Linux isn't always an easy task and a correctly configured XF86Config file is one of those things that most of us "anal-retentive, obcessive-compulsive types" have got multiple backups of! For those of you running Diamond Stealth 64 cards this might be helpful. -- John)

Date: Tue, 04 Jun 1996 07:30:49 CDT
Sender: freezeb@www.deltastar.nb.ca
From: Brian Freeze <freezeb@www.deltastar.nb.ca>
To: John Fisk <fiskjm@ctrvax.Vanderbilt.Edu>
Subject: Linux New User WWWboard #2 in Finland

Hi John

Just and update on the board. I was aproached by a person in Finland who ask about placing a copy of the board in Europe so we now have the Linux Webboard in Finland. This will do quite nice in that it will allow for better speeds for those across the great pond. This is the URL to the 2nd board if you are interested.

http://zenith.yok.utu.fi/wwwboard/wwwboard.html

Take care -- Brian C. Freeze http://www.deltastar.nb.ca/
freezeb@nbnet.nb.ca
http://www.deltastar.nb.ca/linux/wwwboard/
freezeb@www.deltastar.nb.ca

(For those of you who haven't had a chance to drop by Brian's WWW Board yet, you seriosly need to do so! Anyone that's done a bit of BBS'ing knows that a local discussion feed can be a whole lot of fun -- much better signal:noise ratio generally :-) Stop by, say "Hi!" and leave a note. -- John)

Date: Wed, 29 May 1996 22:21:02 CDT
Sender: ben@atl1.america.net
From: Ben Cooper <triangle@america.net>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Good job dude!

Just rediscovered your Linux Gazette -- good stuff! Those little tips are tremendous.

BTW, it seems that the southern states are contributing a lot to the Linux community. Red Hat's in Durham (isn't it?) NC, you're in Nashville, the Linux Expo is at UNC Raleigh each year. And here in Atlanta we have Greg Hankins, who maintains the LDP HOW-TO Index, the Serial HOW-TO, and undoubtedly much more stuff, as well as Mark Horton, who I think assembles the CD-ROMs for InfoMagic. We also have a killer Linux UG, ALE (http://www.gatech.edu/ale).

Anyhow, thanks for the good work.

Ben Cooper -- triangle@america.net, regardless of the return
address on this message

(Can't argue with this :-) I really do appreciate the encouragement and I know that the folks at LJ will too! -- John)

Date: Wed, 10 Apr 1996 15:17:45 CDT
From: Matthew J Kraai <kraai+@andrew.cmu.edu>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Comment Errors in the Linux Gazette

I enjoy reading about linux, even though my computer is sitting idle 2000 miles away. However, reading the most recent issue of the Gazette caused me some trouble.

I am using MMM Navigator and, due to the authors strict adherence to the HTML standard, I was unable to read the Gazette. Unfortunately, your commenting style is not in compliance with the standard and, as a result, the program cuts off all text until the next pair of dashes. I wrote the Navigators author and here is his reply.

:----------------------------------------------)
Dear Matt,
thanks for your report.

The problem you've noticed is the consequence of the braindead definition of comments in HTML/SGML. Most people think that comments start with <!-- and end with > or -->. Unfortunaley, it is not that simple, and I tried to implement in MMM the proper definition of comments (or at least, what I understood).

The following are correct comments:
<!-- a very simple comment -->
<!-- a comment -- -- with several -- -- parts -->
<!-- how about - dashes -->

The idea is that you have an arbitrary number of comment parts, enclosed in double dashes.

A special rule was added in the MMM lexer to allow constructions like
<!-------------->
to be considered as blanks, whatever the number of dashes.

The following comment

    <! -- HTML HEAD -----------------------------------------------------------  -->

used in the gazette does not have a correct number of opening/closing --. There are probably other comments in the document with similar problems.

:----------------------------------------------(

I know that seems like nitpicking but I can't read half of the articles which you write. I tried messing around with your comments and by removing the middle -'s I was able to get the program to read it correctly.

I hope that you can find a simple workaround, perhaps replacing the dashes with *'s or something. Thanks again for putting together such a useful magazine.

Sincerely,
Matt Kraai

(Well, as I wrote to Matt, I'm always VERY much appreciative of folks taking the time to write and correct my mistakes and offer constructive critism and ideas. I honestly didn't know about this and so was happy to make these corrections. Those of you who like to peek at "source code" will notice that these have been changed now and so I'm hoping that this will be a bit more browser friendly. -- John)

Date: Mon, 24 Jun 1996 17:58:32 -0400 (EDT)
To: fiskjm@ctrvax.Vanderbilt.Edu

My name is Jennifer X. I am in Seattle, Washington.

I have spent over a month now attempting to get Linux installed on my computer. I have tried every available version, and even gone so far as to install a second HD... specificly for the purpose of helping me get some version of Linux installed. I have made numerous requests for help on irc #linux, posted requests for help in the linux mailing list and usenet groups, attended a linux users group... and even invited one of the so called linux guru's to my home. He spent 5 hours attempting (without success) to get linux installed. I have therefore come to the conclusion that linux is an operating system which is highly over rated. If it works at all, then I have no doubt that it only works on substandard computers. Since my computer is a Pentium Pro 150 with 32 MB of RAM, I believe that this is much to advanced for linux to be able to operate.

I say now, and for the record, that I believe linux to be a substandard operating system which is good for little more than filling up hd space. I challenge anyone to come to my house and prove me wrong. Frankly, after my experiences with this so called operating system, I have no doubt that it is not possible to install it on my computer. But if anyone CAN do it, I will happily eat my words.... without ketchup, then post pictures of me doing exactly that on the net for all to see. On the other hand, if someone FAILS to install linux on this computer, then I expect them to eat THEIR words.... and post a picture of them doing exactly that... for all to see.

I am betting that there will not be a single taker to this challenge.

But in case somebody is brave enough to give it a shot, they can get in touch with me via your publication.

(signed)

Jennifer X

(OK, this one needs a bit of explaining I think...

Jennifer wrote me and we exchanged email several times in an attempt to get Linux up and running on her machine. Her travails have taking her through several "local Linux gurus" attempts at help -- she's even done the Linux IRC thing and managed to connect with the "Great One (Linus T. himself, guys! :-). All this, but still no system.

If any of you running a PPro system could offer her advice or help, please feel free to drop me a note (this was her explicit request) and I'll be happy to forward it to her. You can drop me a note at fiskjm@ctrvax.vanderbilt.edu if you'd like.

PLEASE NOTE!

I don't usually encourage this type of help -- using aliases and "go-between's" -- as it is hardly the basis for open communication. Still, after writing back and forth a couple times, I realized that she seriously wants to give Linux a whirl and is at wit's end as to what to do to make it work.

Flames get promail routed to /dev/null, ideas and suggestions will be duly forwarded to this young lady.

TIA -- John)

Date: Sun, 28 Apr 1996 07:13:28 CDT
From: Ken Deboy <Plocked@greatbasin.com>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Slackware

Dear fiskjm,

I have a helpfull hint for any newbies trying to get Slackware running. I tried installing it 3 times, and while it would install and boot, I didn't have vi or mail. To make a long story short, I was installing from the Slackpro directory on the CD, which is the version that runs from the CD. I finally found someone who had a working system and they told me to install from the Slackwar directory. I did and now I have vi and mail and everything. I was never able to find out this interesting difference between Slackpro and Slackwar from reading several books on Linux, but my friend showed me a reference to it in The Linux Bible.

One other suggestion for newbies: the best way to get a system to run Linux on is to build it from components, especially if you want to run X. I'm not a computer tech, but assembling my second system was a breeze compared to trying to get tech info (what video chipset, etc) from IBM about my first system, an IBM PS/1 (which, perversely, is less "PC com- patible" than the clones). BTW, I wish I'd found your on-line mag a lot sooner. A lot of what I see here is right at my need level in learning how to make Linux do what I need it to do.

Best wishes,
Ken Deboy

(Thanks, Ken, for the tip! I agree about putting a system together by component. One of the "soon-to-come" articles I'd like to do will be about the system upgrade that I'm in the midst of at this moment. After doing a bit of research and reading it's pretty apparent that for Windows or OS/2 compatibility, almost anything out there will work fine.

However, if Linux is your primary OS (and, of course, it IS, otherwise you wouldn't be hanging around here, now would you...? :-) then putting together a system by component is probably the way to go. I think this is especially true for all you folks out there trying to get Linux going for the first time. The plain truth is that it just takes longer to get support built into Linux because it's NOT a commercial venture. Drivers get written when the hardware gets into the hands of the gals/guys who can write them... while they are cramming for exams or squeezing in time around a full time job, spouse, and kids :-)

Anyway, thanks! -- John)

Date: Wed, 22 May 1996 16:38:04 CDT
From: Romina Marchioro <romina@tradenet.it>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: italy

Hi there,
after travelling around the WWW I came upon you site, it's quite interesting so I decided to add it to my site. I wrote a link in my internet directory:

go to http://www.tradenet.it/links/buec/computers_al.html companies, hotels and cultural events including computers.

I would be very grateful if you could possibly link back to me in your directory.

my URL is:

http://www.tradenet.it/
and if you want to, here I wrote the html for the link......
Visit<A HREF="http://www.tradenet.it/"> Tradenet!</A>

Thanks in advance for your cooperation and if you want to drop me a message telling me what you think of my site, please fell free.

Ciao Ciao Romina

(In the grand spirit of the very real Linux global community spirit I wanted to include this! Linux is one seriously cool OS and part of the fun and appeal is the sense of esprit de corps that exists. Since the underlying goal of the LG is to share ideas and such, I'm delighted to help point folks to helpful & fun Linux sites. -- John)

Date: Fri, 17 May 1996 00:11:57 CDT
From: Jon Pike <jonpike@neptune.net>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Ever thought about something like this??

Hello John!

How goes it?? First of all, I want to congratulate you on your Homeboy page... and especially the Linux Gazette.. I love the concept, the info and the attitude! (only thing I might complain about is how often new editions come out.. yeah, I know.. SUBMIT something!!!!)

I had a wild idea a while back... you may or may not be familiar with Boardwatch magazine, quite a great rag that covers the BBS and more so now, the Internet/Web world, more for the providers than for the users. They have various ongoing articles, on different things related to sysoping and online life and such...

Well, you might think Linux would be important there... There was a Linux colloumb(sp) for only a couple of months... and it died (perhaps because the guy hadnt gotten it installed yet, and talked much about how hard it can be!) People have written about it in letters.. one was answered by Jack Ricard (editor) with some of the above complaints, as well as that it was kinda boreingly written.. but maybe he'd think about giving it another chance...

Now we know, YOU arent boring! And I think you'ld agree, Linux and the world could use a lot of people hot to get involved with the Net, exposed to, and involved with Linux.. rather than some Microsoft OS.... Anyway, I think you see what I'm thinking... Now dont worry, I havent volunteered you for anything yet... I probably will write a letter to Jack soon, asking him to reconsider a Linux columm, as well as take a closer look at Linux itself..

I really think it would be appropriate to what Boardwatch is about nowadays, and would expose a LOT of the "right" (ie, probably going to use it for buisness) people to Linux, which would be very cool... What do you think??

Jon

(Well... I'm flattered at this but, having taken the better part of 3 months to get this current issue out, I'm not sure that I've got the time to devote to another publication.

Any takers...? :-)

Date: Tue, 16 Apr 1996 14:56:43 CDT
From: R I Feigenblatt <docdtv@avana.net>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Linux Gazette database engine

You are building up quite a collection of useful information on Linux through LG. But after a while, it will be so massive people will find it tiring to check all of the titles (and lead paragraphs) when they try to use it as a reference. I would suggest you look into a search engine for the on-line versions of LG. The easiest thing to program would be to grep the entire archive for search phrases a user Web form supplies - but the computational load might grow too demanding. If you have authors specify a set of keywords, especially if selected from a limited if growable rationalized "orthogonal" set of phrases, you could greatly speed up such searches.

Keep up the good work!

(Well, I not only appreciate the tips, ideas, and corrections regarding information in the LG, but also ideas about how to improve the Gazette. I think that there's a LOT of potential for making the 'Gazette a seriously fun place to hang out and find info. I'm not in a position now to set something like this up, but send these great ideas to the folks at Linux Journal and let them know what you want! -- John)

Date: Wed, 15 May 1996 10:02:59 CDT
Sender: flouden@web.netusa1.net
From: R. Frank Louden <flouden@netusa1.net>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Thanks

John, I just want to say thanks. I have not really had the time to read all of the Gazette's articles as yet but I am sure I will find them most interesting and helpful. One particular tidbit this "newbie" was pleased to find was the pointer to the "LINUX NEW-USERS MESSAGE BOARD". I feel like I may have just been saved!

I installed Linux in February on a new P75 machine and haven't had as much fun or frustration since I bought my first 386SX. DOS and Windoze had begun to feel like the proverbial straight-jacket but Linux has put the fun of computing at the tips of my fingers once again.

I can't begin to list the number of people I'd like to thank so if you will, I'll let you decide whether another "Thank you" is important. Everyone, from Linus to another "newbie" who wrote me the other day, who contributes to this "Brave New World" of Linux is an adventurer and explorer in the truest sense of the both terms.

So, to paraphrase, "Damn the bug-reports and full speed ahead!" Let's have fun!

Frank Louden
Linux Afficianado

(I LOVED this letter!

Frank managed to capture just the spirit that I think is so vital to running & enjoying Linux: realizing that this ain't your mother's OS! Linux demands a LOT more care and feeding than the "shrink wrapped" OS's but the payback is very much worth it.

Full speed ahead!!!

-- John)

Date: Wed, 17 Jul 1996 14:13:55 -0400
From: Marty Sells <msells@iss.net>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Another URL_GET type program

Dunno if you've upgraded your perl yet but take a look at

http://www.inf.utfsm.cl/~vparada/webcopy.htm

I've used it to mirror web spaces and to grab down a bunch of html documents listed in an index. Supports recursion and other 'advanced' features.

Works with perl4 & perl5.

    --
    Marty Sells                     | Voice: (404)252-7270
    Internet Security Systems, Inc. |   Fax: (404)252-2427
    Ste. 115, 5871 Glenridge Dr,    |   www: http://www.iss.net/
    Atlanta, GA 30328               | email: msells@iss.net

(Well, for those of you needing a hand with auto-Web updating, you need to give this thing a whirl. Thanks, Marty, for the tip! -- John)

Date: Tue, 21 May 1996 14:23:38 CDT
From: Bernardo <nop00726@mail.telepac.pt>
To: 'fiskjm@ctrvax.vanderbilt.edu' <fiskjm@ctrvax.Vanderbilt.Edu>
Subject: Media Linux

Dear Sir:

I Was at your Linux Web Site and found it very interesting. I am writing from Portugal, and I am the WebMaster for the Media Linux Web Site. Media Linux is a portuguese Linux User Group, dedicated to the promotion of the Linux concept here in Portugal. We put a lot of effort in this site, offering a shopping cart, a Linux forum to support Linux Users, and a Chat Room with real time conferences.We also offer free Web hosting service to all portuguese Linux Users.

I included a Link to your home page in our site, and I am asking if you could od the same, and put a Link to Media Linux Site. Its URL is: http://www.lusomedia.com/chat/

Lots of luck for your good work,

Sincerely,

Nuno Bernardo
(WebMaster)

(One of the things that I'd really like to see happen with the Linux Gazette is more internationalization. By that I mean that I'd love to see the LG translated into as many languages as possible so that Linux users outside English/American speaking countries can read it in their own language.

I'm constantly humbled by those of you writing from abroad who are willing to write in English. I'm sorry that I cannot return the favor.

There are already a few folks who have offered to start translations and I'm delighted for that. In the meanwhile, thanks to all of you outside the US who have graciously offered WWW & FTP sites for local users.

And for you Portuguese users out there, here's a site for you! -- John)

Date: Tue, 21 May 1996 16:12:19 CDT
From: EHT1 <eht1@nrv.net>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: SecureNet PRO

For immediate release: May 20, l996

From: MimeStar Inc.
P.O. Box 11648
Blacksburg, Virginia 24062-1648

SecureNet PRO is a brand new comprehensive network administration and security system that fills an enormous gap by providing multiple levels of protection in an economic and user friendly package.

Administrators will gain the ability to seek and destroy internal and external intruders. Through the use of firewalls and hijacking techniques, they can take action against hackers, seizing control of their sessions or terminating them at will.

The system goes beyond the normal auditing capacity of other programs and offers the administrator the capability of viewing the sessions of any user on the network in real time. SecureNet PRO affords the administrator the luxury of recording--for possible later view--the sessions of all the network users simultaneously.

SecureNet PRO gives the system administrator multiple perspectives on his network's activities: he can watch users in progress, view a previously logged session, or play back a recorded session at high speed.

"Network security experts are always searching for security holes," said Elliot Turner, Corporate Executive Officer of MimeStar, Inc. "But you can't fix them all. You have to be able to see what's going on."

Once a hacker has been discovered, SecureNet PRO's dynamic firewalls come into play. They allow the administrator to control all sessions, locking out access to unfriendly users and logging all future access attempts.

"We recognize the fact that this could be a dangerous tool in the wrong hands," said Turner. "SecureNet PRO uses an advanced encryption-based security technique. It will only run on the network it was purchased for."

Part of SecureNet PRO's value is that it is user friendly. Administrators need not deal with cryptic commands and complex configuration options.

"Our system is completely menu driven," Turner explained, making it easy for a growing company to take advantage of the convenience of a network without having to compromise internal security.

More information on SecureNet PRO is available at the MimeStar, Inc. web site:

http://www.nrv.net/~eht1/

(As I've said before, I happen to feel strongly that commercial ventures can peacefully coexist in the Linux community right next to non-commercial ones. Many Linux-oriented businesses -- SSC, Linux Journal, RedHat Software, Caldera -- to mention a few, have donated resources, money & code back to the Linux Development team and others in the Linux Community.

While I'm not specifically endorcing SecureNet I do want to encourage folks to patronize vendors willing to give Linux a shot! -- John)

Date: Wed, 22 May 1996 00:56:51 CDT
From: Paul Anderson <panderso@sleepy.ebtech.net>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Supermount

Just thought I'd write you about supermount while I'm at it. I recompiled my 1.2.13 kernel a few weeks ago, and decided to throw supermount in. I might have done something, but, I had a less than wonderful experience with it. I use RedHat 3.0.3, BTW, anyways, I edited my /etc/inittab as per the README, and rebooted expecting to be able to cd /mnt/floppy and do an ls. Welp, things got screwed up somehow, and fsck was reporting a bad superblock on /. It wasn't bad, obviously. I fixed my /etc/inittab back, and >>WHAMMO!<< it was still broken! Note, I couldn't access my Linux disk because of this screw up. So, and here is where the utter joy of having an old Slackware 1.0 install on /dev/hda2 in perfectly working condition. Under the Redhat side, I could read, but not overwrite or edit(due to the problem, my root was being mounted read only) the key file. The file giving me problems, oddly enough, was /etc/mtab. Under the Slackware, I rm'ed /etc/mtab on my RedHat disk. i rebooted the redhat partition, and lo and behold, it worked. So, the story has two morals: A full Slackware install is better than a boot floppy, and BACK UP EVERYTHING YOU CHANGE!! Following these two morals has saved me from many a disaster. TTYL!

"Never underestimate the range of your shrapnel!"

(Always remember -- Caveat Emptor!

Thanks for the warning :-) -- John)

Date: Fri, 24 May 1996 17:03:37 CDT
Sender: root@numeric.adr.com
From: Jan Skibinski <jans@numeric.adr.com>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: xcoral + Java

A' propos your collection of Linux toys...

Try http://www.numeric-quest.com/news/README.xcoral+java.html

You may even like it :-(

Jan

(Well, I want to thank Jan for this tip! I stopped by the page and there is both source and binaries available for xcoral which is a great little C++ oriented (now, Java-oriented) editor. -- John)

Date: Sun, 30 Jun 1996 06:22:45 +0200 (MET DST)
From: Dennis Henriksen <opus@osrl.dk>
To: fiskjm@ctrvax.vanderbilt.edu
Subject: Your article on colorizing /etc/issue

Dear John M. Fisk

I can't help wanting to comment on your article `Colorizing /etc/issue' appearing in Linux Gazette issue #7. I hope you don't take offence, and that you would consider a follow up article on the subsject after reading this.

The contents of the article concerning escape-sequences is correct and usable, but only under very limited circumstances. When your Linux (or any *NIX system for that matter) is used as a standalone system, with no other terminals than the console and its virtual consoles.

I am aware that this scenarios is true for many (maybe even the majority) of Linux systems. As soons as a system is accepting connnections on any other device (eg. a real terminal attached to one of the serial ports, incoming connections over modem etc. etc.) you have absolute no way of telling how escape sequences are interpreted in the other end of the line. This is the reason for termacap(3) and later terminfo(3). It is in general a bad idea to hardcode escape sequences anywhere.

The getty_ps implementation of getty(1M) does however offer a method for having both a colorized issue for use on the console and the VTs, and a different a different portable/device-independent issue for other devices. Other implementation may or may not offer the same level of control as the getty_ps.

If memory serves me did older Slackware distributions recreate the /etc/issue file during the bootsequence. This is unnecessary and probably not even a good idea, at least not if you are having several hosts sharing the /etc-directory. (Trust me on that one it can be done). Getty(1M) offers a suitable alternative. You simply create an /etc/issue carrying all the static information, and then let getty(1M) perform 'prompt subsititution' on the varible information. Such as the system name hostname, the current ttyline, current localtime. The list may vary from implementation to implementation of getty(1M). The actual syntax DOES vary. And it appears that not all implementation are consistent with their documentation.

Dennis Henriksen
<duke@diku.dk>

Date: Sat, 06 Jul 1996 22:15:32 +0200 (MET DST)
From: Dennis Henriksen <opus@osrl.dk>
Reply-To: duke@diku.dk
To: "John M. Fisk" <fiskjm@ctrvax.Vanderbilt.Edu>
Subject: Colorizing shell scripts

John M. Fisk,

> [ ... ]

> I was wondering, then, if you'd be kind enough to point me in the
> direction of good information about using color in shell scripting. I'll
> have a look once again at the manual pages for termcap and terminfo and
> also have a look at the docs with the terminfo distribution -- but if you
> know of any other source of good information I'd be delighted to hear
> about it.

The man-page for terminfo is a really good source of information. It it has a very good table listing both terminfo capability name, side by side with the corresponding termcap names. The utillity tput(1) is of considerable value, both for colorizing shell-scripts and for other nifty things involving escape sequences. The setterm utility is also capable of doing a few tricks with colors. I haven't checked the docs for this though, furthermore it is Linux-only and should be considered a hack.

The maintainer of the terminfo database (Eric S. Raymond) has placed a lot of interesting comments in the source file. When it comes to colors he refers to ISO 6429/ANSI.SYS (yes, the one from B^HMS-___ ) XPG4.

Lately the Linux terminal driver supports a couple of escape sequences which performs manipulation of the color palette. These are incooperated in the latest version of terminfo ( ncurses vers. 1.9.9e). The point here is that once a terminal type has the ``can change color'' capability it is no longer ISO6429-compliant nor is it XPG4-compliant, and thus adding yet a level of complexity to the seemingly simple task.

Mr Peter L Jones <thanatos@drealm.org> has written a text called 'linux-console.doc' which was posted on comp.os.linux.announce. This is a fairly complete description of the terminal drivers capabilities. A good source of information when proof reading termcap / -info entries. In case you are unable to find this text please let me know.

Another dane (Thorbjoern Ravn Andersen <ravn@imada.ou.dk>) has written a mini-howto on the subject colour. Most of the information herein, were covered by you articles on 'colour ls' and 'colourizing /etc/issue'.

A few years back I had to examine some install scripts (bourne shell) from a commercial *NIX. They all had hard-coded escape sequences. The authors were 100% certain as to which platform/environment in which these were executed and thus felt no need for any fancy portability considerations. All in all there at least three different situations for which the choice of method of colorizing may different.

a) scripts/program running exclusively on a known terminal type,

b) scripts/program running on a well-known platform, but produces output onto any terminal. ( Telnet concections, dial-ins etc)

c) scripts/program intended for genral use on a variety of *NIX environments.

I hope you can make something usefull out of these random ramblings

Dennis Henriksen
<duke@diku.dk>

Date: Tue, 09 Jul 1996 05:44:31 +0200 (METDST)
From: Dennis Henriksen <duke@diku.dk>
To: "John M. Fisk" <fiskjm@ctrvax.Vanderbilt.Edu>
Subject: Re: Colorizing shell scripts

Dear Mr. J. Fisk

> On Sat, 6 Jul 1996, Dennis Henriksen wrote:

> > The man-page for terminfo is a really good source of information.
> > It it has a very good table listing both terminfo capability name,
> > side by side with the corresponding termcap names. The utillity
> > tput(1) is of considerable value, both for colorizing shell-scripts
> > and for other nifty things involving escape sequences. The setterm
> > utility is also capable of doing a few tricks with colors. I haven't
> > checked the docs for this though, furthermore it is Linux-only and
> > should be considered a hack.

> Thanks! I just installed the latest version of ncurses and indeed found a
> LOT of interesting and useful information that I've just beginning to get
> a handle on. I ran across the docs for the 'tput' and 'tset' commands but
> hadn't realized the utility of the former. For portability reasons it
> sounds as though this might be the better choice. I must apologize for
> taking such a parochial attitude about colorizing shell scripts -- thanks
> for correcting this important oversight!

Please note an important detail in the terminfo man-page. Under the section-header BUGS, there is a special substitution %x listed. It is explained as needed in Linux. -- Well it isn't I've just written the maintainer of the terminfo on the subject. Hopefully this strange substitution will disappear in the future.

> > [ ... ]
> > Lately the Linux terminal driver supports a couple of escape sequences
> > which performs manipulation of the color palette. These are incooperated
> > in the latest version of terminfo ( ncurses vers. 1.9.9e). The point
> > here is that once a terminal type has the ``can change color'' capability
> > it is no longer ISO6429-compliant nor is it XPG4-compliant, and thus
> > adding yet a level of complexity to the seemingly simple task.
>
> Interesting... which means that ISO6429 compliance *requires* the absence
> of color? That's interesting.

No ISO6429 compliance as well as XPG4 assumes that the colors are static. So that color number 0 allways is black, and color 1 is red and so forth. Furthermore IS06429 only leaves room for 8 colors, possibly combined with some renditions, (eg. bold or blinking). AT least that is how I have interpreted the information I have had access to. The XPG4 may or may not leave room for more than 8 colors. I haven't access to the XPG4 itself only references to certain parts.

> > [ ... ]

/Dennis Henriksen
<duke@diku.dk>

(I want to take the chance to personally thank Dennis for taking the time to mail me on several occasions (as you can see above) and help correct my ignorance on this. I am very much indebted to all of you who take the time to do this!

Thanks, Dennis!

-- John)

Date: Fri, 19 Apr 1996 08:53:01 CDT
From: Jauder Ho <jauderho@umich.edu>
To: fisk@web.tenn.com
Subject: Re: Latest Gazette

In the 2 cent tip section, you mentioned something about makewhatis In my crontab file I have the following entries:

    # Update the whatis data file every week.
    0 2 * * sun       /usr/bin/makewhatis -w -c > /dev/null 2>&1

What it does is to go around and update the whatit file according to what it can find in the various manpaths and cat dirs. Of course root's MANPATH has to properly set which you should do anyways to have access to all man pages at all times. And lastly be sure to upgrade to the latest version (the version no. escapes me at this time) as the makewhatis script is MUCH faster.

--Jauder

(This is one of those great little tips that is a HUGE help when you need it. Any of you who've used make -k or apropros know how frustrating it is to KNOW that you've got a manual page on the subject you're looking for but just can't find it because of an outdated whatis file. -- John)

Date: Wed, 27 Mar 1996 23:24:25 CST
From: RHS Linux Abuser <oly@world.std.com>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: more emacs

With apologies to the vi crowd, here's a cool tip for emacs users.

Emacs fanatics are no doubt aware that their editor of choice is designed to be run once and then to sit in memory. Problem is, if you set your "EDITOR" environment variable to "emacs", every new edit will spawn another (monstrous) emacs session with no buffer-communication between other running copies of the OTE.

Ah, you say, but emacs has "server client" options. Then, sensing someone might not know about this feature, you add that emacs can be started and told to run as a server. Subsequent calls to the program "emacsclient" will load the data into a new buffer in the emacs server-fied program. So just set "EDITOR" to emacsclient. Problem is, if you don't already have a session of emacs up and server-fied, emacsclient won't start a new one for you. I find this highly aggravating. I've found a way around this - I named the following script "semacs" for smart-emacs or server-emacs. It checks for a running emacs session and runs emacsclient if it is found or starts up a new emacs if it isn't. You still have to put the line

    (server-start)

in your .emacs file. Then you can set your EDITOR variable to semacs or leave it as emacs and make an alias for it. The pathnames in this script may be different for your system.

    ----------
    #!/bin/sh
    numemacs=`ps | grep semacs | wc -l`
    if [ $numemacs -gt 3 ]
    then
      /usr/bin/emacsclient $* > /dev/null
    else
      /usr/bin/emacs $* > /dev/null
    fi
    ----------

Simple, eh? I can think of some enhancements.. have it check the .emacs file for the (server-start) line, for example. Anyway, enjoy.

Oliver "Yes, I know vi fits on a boot/root floppy, yes set ai is cool and yes, I learned vi first 'K?" Oberdorf

--
Hope you find this tidbit of how I do things amusing.

(Well, as I've said before, NO APOLOGIES NEEDED! I'm the one that needs to apologize for my abysmal lack of "Emacs Know-How". I really appreciate everyone who's written with ideas and tips for emacs. As everyone know, "it's not a program... it's a lifestyle!" -- John)

Date: Sun, 17 Mar 1996 15:17:21 CST
From: Jesper Pedersen <blackie@imada.ou.dk>
To: John M. Fisk <fiskjm@ctrvax.Vanderbilt.Edu>
Subject: 2 cent hint

Hi John, heres a small 2 cent hint, which I find very usefull:

Both in your VC and your xterms, you can scrollback with shift+pageup, and shift+pagedown. This is especially usefull, when you boot your machine, and want to see one of the lines which passes by, so quickly. And talking about boot, scrolllock apply's here, if you want to stop output for a while.

BTW: how are you doing, it's long time since I've heard from you... bussy with scoll? (good boy ;-)

Kind Regards Jesper.

PS. I'm following a cource on programming languages (in fact im instructor on it too) and there we learn lisp, scheme, sasl etc. These three all have the same kernel: lisp. This means that I'm a quiet good lisp programmer now. Well, you think, what does that mean to me... Well you remember emacs..It can be configured in millions of ways, when you know how to program lisp! I plan to write an article, which will learn people the basic skills on lisp, give them valuable references to lisp (The info pages), a lot of examples, and a basic idea what can be done when you know how to program lisp. How do you think about that? Whould that be something you would like to include in the Gazette?

I got an idea: I will create a html document with references to lots of small utilities (for emacs) written in lisp!

From: Jesper Pedersen <blackie@imada.ou.dk>
To: John M. Fisk <fiskjm@ctrvax.Vanderbilt.Edu>
Subject: I forgot -- in the emacs article

Hi John, I forgot this little hint in the emacs article, can you fill it in:

if you have an error in your .emacs file, you can find out where, by starting emacs with the --debug-init option.

This is really a big help.

Kind regards Jesper.

(There have been many folks who, over the past year or so, have gone well beyond the call of duty to help with the Linux Gazette. I want to take the opportunity to publically thank Jesper Pedersen, maybe more well known for his work on the Dotfile Generator program, for his ongoing help and support. Jesper has been a real help and friend and I want to offer him my personal and heart-felt thanks! -- John)

Date: Sat, 13 Apr 1996 01:14:45 CDT
From: Anibal Jodorcovsky <anibal@ee.mcgill.ca>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: some more tips for your LG

Hi John,

I found out about LG on issue #6 and since then I read all the issues and have made a folder with all the issues. They are *really* very interesting and although I have used linux for over 4 years now, there are always little tricks to be learned! Thanks!

I am here just sending you a little note on something I noticed in this last issue #7.

1) About kscreen and that thread (I know it's been long) but I have yet one thing I learned off Usenet. When this change of mode happens (text->graphics) there's a little utility *already* installed in your system which does the trick and to me it's easier to remember than the ^v^o trick you published. The utility is called reset. I have it under /usr/bin and it is merely a shell script that does the following:

    #!/bin/sh
    stty sane
    tput clear
    tput rmacs
    tput rmm
    tput rmso
    tput rmul
    tput rs1
    tput rs2
    tput rs3
    echo -e \\033c

Not sure what all those codes are for (I guess a quick look at man tput would do the trick ;-) but that's for later... :-)

Anyway, just another trick that I thought it would be interesting for the LG readers.

2) Another thing I wanted to point out was about your intro to shell programming. In the second part you talk about find in combination with while read to do some tricks on a lot of files in the current dir. Another good construct is the for loop. In the ldd case it would be something like:

    bash$ for x in *
    > do
    > echo $x ...
    > echo
    > ldd $x
    > echo
    > done

The above is just doing the same thing your while read is although I see two major differences:

1 - the for loop only looks for files in the current directory while the find combination looks for files in the current directory and the subdirectories, i.e., recursively. If that's what you want to do you have no other way than using find.

2 - this example has one advantage though, it is run in only one shell while the 'find | while read' is spawning a different process for each pipe, which is not bad but it will just take a little bit longer (if you are attacking that late sandwich who cares to wait anyway, right?)

I just wanted to write something about this for loop thingy, it is really nifty and I use it quite often. Just in case someone is interested, in all C sh flavors (csh, tcsh) the construct works like this:

    foreach x (*)
    echo $x
    end

There is no 'do done' and the arguments should be given between parentheses rather than after the 'in' keyword.

One last tip. In order to obtain the name of a file without its extension use 'basename'. This is versus the ## and %% that you presented that in fact I like better but it is always nice to know another trick that may be useful some other time, right?

The basename gives the name of a file up until the dot, so to rename all files in the current dir from .txt to .text do this:

    for x in *.txt
    do
    mv $x `basename $x txt`text
    done

That will do the trick. As you can see this basename thingy is pretty useful. basename filename.txt txt will give filename. and then by appending the new extension we have the right command.

Just another tip ;-)

Hope I've been clear. As you can see I am just enhancing what you published, different ways of doing the same things. Some times the different ways of doing things may help create better programming tools.

Looking forward to the next issue of LG!!!

Keep up the good work!

    Anibal Jodorcovsky  / Unix *IS* user friendly...
    anibal@ee.mcgill.ca / It's just selective about who its friends are.
    http://www.ee.mcgill.ca/~anibal

(Well, as always, "there's more than one way to skin a cat!" and so I appreciate Anibal's sharing this! Several of you wrote to offer this clarification of the "for x in *; do..." shell programming construct. Thanks to all and keep those tips coming! -- John)

Date: Fri, 12 Jul 1996 18:39:07 -0600
From: Grant Gustafson <gustafso@math.utah.edu>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: lesspipe.sh

Dear John,

I wondered if you ever wrote anything on lesspipe.sh, the shell script used by "less" as a preprocessor. It's talked about in "man less", although a bit cryptic. It turns out to be of universal help, for most people, because it unbundles things like tar files, GZs, ZIPs, RPMs, and so on in a seamless way that is both convenient and easy to maintain. The source I use on a SUN4 workstation appears below. The linux version has also some RPM lines for looking into RedHat archives. Expect to find lesspipe.sh in the same directory as "less", with execute permissions. -Grant

    #!/bin/sh
    # This is a preprocessor for 'less'.  It is used when this environment
    # variable is set:   LESSOPEN="|lesspipe.sh %s"

    lesspipe() {
      case "$1" in
      *.tar) tar tvvf $1 2>/dev/null ;; # View contents of .tar and .tgz files
      *.tgz) tar tzvvf $1 2>/dev/null ;;
      *.tar.gz) tar tzvvf $1 2>/dev/null ;;
      *.tar.Z) tar tzvvf $1 2>/dev/null ;;
      *.tar.z) tar tzvvf $1 2>/dev/null ;;
      *.Z) gzip -dc $1  2>/dev/null ;; # View compressed files correctly
      *.z) gzip -dc $1  2>/dev/null ;;
      *.gz) gzip -dc $1  2>/dev/null ;;
      *.zip) unzip -l $1 2>/dev/null ;;
      *.arc) arc -l $1 2>/dev/null ;;
      *.zoo) zoo -list $1 2>/dev/null ;;
      *.1|*.2|*.3|*.4|*.5|*.6|*.7|*.8|*.9|*.n|*.man) FILE=`file -L $1` ; # groff
    src
        FILE=`echo $FILE | cut -d ' ' -f 2`
        if [ "$FILE" = "[nt]roff," ]; then
          groff -s -p -t -e -Tascii -mandoc $1
        fi ;;
      esac
    }

    lesspipe $1

    *-----------------------------------------------------------------*
    | Grant B. Gustafson             | (801) 581-6879    FAX 581-4148 |
    | 113 JWB, Dept Math, U. of Utah | email: gustafso@math.utah.edu  |
    | Salt Lake City, UT 84112       | URL: http://www.math.utah.edu/ |
    *-----------------------------------------------------------------*

(Man, this is one of those "You're kidding... it can do THAT!" tips... Anyone who's gzip'd a bunch of HOWTO's or documentation to save a bit of HD space will realize what a boon this little tip is -- and one that is worthy of oft repeating. -- John)

Date: Mon, 06 May 1996 13:26:13 CDT
From: Roger Irwin <root@camp002>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Acrobat on Linux (you can!)

Excellent work. I have found your gazette good not only for using LINUX but also taught me some tips to use on UNIX in general, I had always wondered why appros never worked for me! Your Gazzette is taking up where UNIX WORLD left off (Unix World changed it's name to Open Systems just after I took out a subscription. It started talking about client/server, why NT is important, and how to be a good manager. I did not renew.)

You can read pdf (acrobat) files on LINUX. You need xpdf from:

http://www.contrib.andrew.cmu.edu/usr/dn0o/xpdf/xpdf.html

Source code and several precompiled executables are available. (Linux, AIX(4.1), SPARC, MIPS, ALPHA)

This excellent program is invoked 'xpdf filename' whereupon it displys the pdf file in an X window. You may zoom and rotate the page, and go forward and backwards page by page. You may incorporate the command into your WEB broser too see pdf files as you click on them. The archive consists of two files, a readme and the executable, xpdf. Stick it in your X11/bin. It uses neither motif or Xt widgets, has no special installation or configuration or any other requirements (you must be running X!), just download it and launch it. The executable is 140K in size. This is the program that adobe should have written, franky it makes adobe look a bit silly, but we allready knew that disn't we...:-)

Now, I would like to to set up a printer que where I can send pdf files directly for printing as postscript. Anybody any ideas?

Anybody tried running SCO under Linux? (Acrobat is available for SCO!)

Roger Irwin, Campari sistemi industriali, Alessandria, Italy.
capmpari.lab@pn.itnet.it
Linux 1.2.1 on 486/DX4 16MB. (Slackware).

(I can't say that I've had the opportunity to use an Adobe Acrobat client ("reader" is probably the more correct term, maybe...) but judging from the "Subject:" headings on the various comp.os.linux.xxx groups, there are a lot of you who have. Thanks and have fun with this! -- John)

Date: Sat, 06 Apr 1996 09:20:39 CST
From: Tim Newsome <drz@cybercomm.net>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Linux Gazette of course!

Hey,

Just thought of checking again, and 'lo and behold there's a new one! :-) You're probably going to get tons of this, but you can change your find and read FILE script to be something like:

    for file in /directory/*; do
    	ldd $file
    done

And while we're at it, here are two scripts I use for pgp:

    #!/bin/sh
    # call this pgpd

    pgp -f -z 'my_pass_phrase' 2>&1 | awk '
    BEGIN {
    	intro=0
    }
    {
    	if (intro==1) print;
    }
    /^$/ {
    	intro=1;
    }
    /^Signature made/ {
    	print "--------------------------------------------------------------------"
    }
    '

You can pipe a message through this script and pgp will decrypt it and check it's signature. You don't have to put your passphrase on the command line if you feel it's insecure, but I use this script in another script so I like it there. Then here's pgps to sign a message:

    #!/bin/sh

    pgp -stfa -u 'my full name' -z 'my_pass_phrase' 2>/dev/null

And finally pgpe which encrypts a message:

    #!/bin/sh

    pgp -stefa -u 'my full name'

To top it all of, here are two lines of my .vimrc:

    ca ps %!pgps
    ca pe %!pgpe

So now to pgp sign an email msg all I do is type ":ps". To encrypt it I type ":pe". Neat eh? The pgpd script comes in handy in my .procmailrc:

    :0 BbDf
    * -----BEGIN PGP [A-Z ]*MESSAGE-----
    |/full/path/name/pgpd

So now all my incoming pgp e-mail is automatically decoded, and signatures are checked.

Tim

(Thanks, Tim, for the great tips! PGP is one of those programs that gets a good deal of well-deserved coverage. There are a LOT of far-reaching issues to grapple with in this dawning "Information Age". Here's a bit of help with making things a bit more secure. -- John)

Date: Tue, 09 Jul 1996 02:12:18 -0400 (EDT)
From: chap <tlovejoy@surfsouth.com>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Neat script techniques & the LG

Hi,

I just wanted to let you know ho much I appreciate the work you've put into the Linux Gazette. I am a recent convert to Linux, and the LG has proven to be a great source of information and tips. Thanks.

Also, I thought you might like to see a technique that just sort-of hit me the other day. I use it to kill all the processes started by my ppp scripts (I'm sure there are more elegant ways, but none have occured to me yet :-).

    kill_ppp () { ps | gawk '/ppp/{print $1}/sleep 14m/{print $1}' | xargs
       kill }

This makes searching out all the pid's for various ppp programs/scripts and the sleep calls from the keep-alive scripts (Thanks, again) to kill them.

Once more, thank you.

    l8r,
    chap.
    **********************************************************************
    I have become one with my computer.  It is a feeling of ecstasy... the
    perfect blend of logic and emotion.  I have reached... Nerdvana.

    Dilbert
    **********************************************************************

(For all of you PPP-tinkerers (like myself... ;-) here's a great little tip for letting PPPD know that it's time to "Say Good Night, Gracie." -- John)

Date: Sun, 24 Mar 1996 11:29:22 CST
Sender: <jwag@together.net>
From: John Wagner <jwag@together.net>
To: <fiskjm@ctrvax.Vanderbilt.Edu>
Subject: A tip!

Hi!

Here's a hint I haven't seen well publicized: In any xterm, there are three menus available. Hold down the control key, and either left, middle or right click on the xterm window. I use the right click most often, as it allows you to change the xterm font (and window size) on the fly.

    --
    John Wagner - jwag@together.net
    http://www.together.net/~jwag/HOMEPAGE.HTM
    Stop by and download a free Improces for DOS key or
    get information on the free UnZip Shell for OS/2.

(Well, John is right -- there are a LOT of great little gizmos and gadgets hidden all over Linux that make it seriously fun to work with. Thanks! -- John)

Date: Thu, 18 Apr 1996 15:22:49 CDT
From: James V. Silverton <jvs@helix.nih.gov>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Cleaning up a console

John:

I have read your gazette with admiration and interest since the very first issue. The material is very useful and my admiration for your energy in putting it together is boundless.

I was interested in the tip from Henry Wong, in issue 7, for clearing up a console. It really works at the console level but it does not do anything in an xterm on my machine. However, a program called reset came with my Slackware distribution and this does work both at regular monitor level and in an xterm. I also find it easier to type "reset" blind rather than "CTL-v CTL-n". There is even a man page for reset.

Best wishes and every success to the Linux Gazette.

Jim.

(Yup, this is another one of those "slap-my-forehead" things that many of you kindly called to my attention. The "reset" program is a simple shell script that clears up a garbled terminal quite nicely -- and with a catchy name to boot, it's probably a bit easier to use :-) -- John)

Date: Fri, 19 Apr 1996 10:32:19 CDT
From: Soeren Gensboel <sgl@dr.dk>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject:

Hi there John.

Just writing you to tell you how much I appriciate the Gazette.

And a short comment to the Kscreen revisited section under 2 cent tips.

I keep forgetting those ^v^o keystrokes. I find it a lot easier just typing "reset" which from my pov. does exactly the same, namely unclutters the screen.

Just my 2 cents!

Keep up the good work.

//Soeren

(Ibid. on the kudos! -- John)

Date: Thu, 02 May 1996 16:32:44 CDT
From: Fabrizio Polacco <fpolacco@megabaud.fi>
To: fiskjm@ctrvax.Vanderbilt.Edu
Subject: Setting the xterm titlebar from bash prompt

Hi there!

in article Changing that xterm titlebar interactively!

file:./lg/linux_gazette.nov.html#xtitle

you wrote

> Thing is, you need to be using the C Shell in order to make this work because it uses the "cwd" variable to keep track of where you are. In the process of tinkering around with this I wasn't able to get BASH to cooperate, BUT, ...[snip]

Here is what I suggest you to put in your .bash_profile (or /etc/profile if ALL your users agree).

This code will interactively update the title of your xterm window to show the name of the tty used (without the /dev/ ), the dimentions in columns x rows, as shown from the fvwm manager during resizing, and the current working directory.

    ------------------------
    if [ $0 = "-bash" ]	# needed only in
    then			# /etc/profile

    	xsize()
    	{
    	        set -- $(stty size)
    	        export SIZE="  $2 x $1  "
    	        xtitle
    	}

    	TTY=$(tty | xargs basename); export TTY

    	xtitle()
    	{
    		if [ "$TERM" = "xterm" ]
    		then    echo -n "^[]2;$TTY  $SIZE     $PWD^G"
    		# in VIM hit: ",Ctrl-V,Esc,],...etc...,Ctrl-V,Ctrl-G,"
    		fi
    	}

    	export PROMPT_COMMAND="xtitle"
    	export -f xsize xtitle

    	xsize   # for the first time

    	trap xsize SIGWINCH

    fi	# needed if in /etc/profile
    -------------------------

This code will define 2 new vars $SIZE and $TTY plus 2 functions: xtitle() that writes the title of the Xterm window at every prompt of the bash, and xsize() that sets the var $SIZE every time the window changes.

If you cut and paste, don't forget to retype the Ctrl-V Esc and Ctrl-V Ctrl-G sequencies in the xtitle() !

I don't use the time in the title, because X is plenty of clocks. I have put the line

    Style "oclock"     NoTitle,            Sticky, WindowListSkip, StaysOnTop

in the stanza

    # Set the decoration styles and window options

of file /usr/X11/lib/X11/fvwm/system.fvwmrc

In this way the clock stays on top of every window, always visible!

Have fun & Ciao! Fabrizio Polacco <fpolacco@megabaud.fi>

    --
    +------------------------------------+
    | Happily running Linux 1.2.13 on a  |
    | amd486/120-32MB-1.6GB-4x-17"nokia  |
    | Don't take life seriously:         |
    | you'll never get out of it alive.  |
    +------------------------------------+

(Well, once again, thanks to Fabrizio and all of you who've taken the time to write and share their "Pearls of Wisdom". These may not be UNIX wizardry, but they are seriously fun and make Linux... well...

HUGE! :-)

Thanks, y'all!!

-- John)

#### Got any great ideas for improvements! Send your comments, criticisms, suggestions, and ideas.

### Back to Issue #8 of the Linux Gazette!

This page written and maintained by:
John M. Fisk at fiskjm@ctrvax.vanderbilt.edu