Sydney S, Weinstein, CDP, CCP is a consultant, columnist, lecturer, author, professor, and President of Myxa Corporation, an Open Systems Technology company specializing in helping companies move to and work with Open Systems. He can be contacted care of Myxa Corporation, 3837 Byron Road, Huntingdon Valley, PA 19006-2320, or via electronic mail using the Internet/USENET mailbox syd@Myxa.com (dsinc!syd for those that cannot do Internet addressing).
I started to collect my files together to write this month's column and I ran into a problem right off the start. Where did everybody go? I save the files automatically that are distributed over USENET, and I went to look and the cupboard was bare.
Now I'd seen dry spells in one or another of the groups from time to time over the past ten years, but this was new a net-wide dry spell? So I sent out the dogs looking for the moderators to see what had happened. Well, all of the dog teams have checked back in and the decision is unanimous: everyone's too busy.
Kent Landfield, the moderator of comp.sources.misc, reports he's been promoted, had some deaths in the family, and a vacation, but is now back in the office. His queue is full and even he notes: "I am not sure what the reason is. Maybe it's a case of exposure... the more you post, the more submissions you get. Since even comp.sources.misc has been quiet people haven't considered posting to the net... My queue is full so it might be interesting to see if it picks up in the other groups now that I have started posting again." And Kent did start posting again, so there will be more for the next column.
Paul Vixie, the moderator of comp.sources.unix, reports that he has been extremely busy. He also needs to rewrite the "index stuff" as it's up to issue 200. So I'd expect that to occur first before that group picks up again.
Chris Olsen, moderator of comp.sources.x, reports a full queue as well, just being extremely busy and having some family emergencies.
So the consensus is, the postings are there, its just an untimely set of all three of the major moderators getting busy at the same time. With that taken care of, and the dog teams being rested for the next time, it's time to get to the sources.
Personal Version Control
David I. Bell <dbell@pdact.pd.necisa.oz.au> contributed fsc for Volume 41, Issues 132-136 of comp.sources.misc. FSC is a simple source control utility (similar in concept to RCS and SCCS) which can keep track of your source versions. FSC differs from RCS and SCCS in the following respects:
What FSC lacks is file locking, so it's a personal source control utility and not suitable for group development.
- FSC appends to its history file instead of rewriting it, making it faster after large numbers of updates.
- FSC has a history file which is robust in handling disk full or quota problems.
- FSC uses a minimal difference algorithm to generate small edit sequences.
- FSC's extract of the current version remains fast. This is because, like RCS, FSC stores the latest version unchanged. This technique also allows recovering the latest version even if the history file is damaged.
- FSC allows names for versions as well as numbers. This capability allows for synchronization of various files having different number versions by giving them the same named version.
- FSC is entirely integrated into one program.
If you switch between shells as often as I do, then you need envv from David F. Skoll <dfs@doe.carleton.ca>. envv provides a shell-independent way of handling environment variables. envv lets you set environment variables, and manipulate colon-separated paths in an easy, shell-independent way. Using envv makes writing setup scripts for software products a snap. Users won't need to hard-code initialization steps in their .cshrc or .profile files; they can source system-wide files. As a result, you can move software packages around without creating problems for your users. envv was posted as Volume 41, Issue 153.
Solaris 2.x has generated a lot of cries for a screen blanker. Dimitri Konstantas <dimitri@cui.unige. ch>, has reimplimented the old SunOS screen blanking daemon for Solaris 2 in whenidle, posted as Volume 41, Issue 162. This daemon is independent of the windowing system being used on the console, and even works if no windowing system is in use. While this posting is specific to Solaris, it does provide a starting point for others.
The latest update to astrolog, pushing it to version 4.10, was contributed by Walter D. Pullen <cruiserl@u. washington.edu> for Volume 42, Issues 1-16. astrolog is an extensive and customizable astrology chart calculation program. astrolog can do standard natal wheel charts, aspects, midpoints, relationship charts, transits, progressions, and astro-graphy, as well as local horizon, solar system orbit, and various influence charts. astrolog supports different zodiacs, central planets, twelve different house systems, and can display positions of asteroids, transneptunians, and several dozen stars. It supports graphics charts in the X Window environment, and when compiled on PCs it can do EGA/VGA/SVGA screen graphics.
astrolog allows charts to be smoothly animated forward and backward and in real time. Some charts access the program's own internal map of the world, which can be also be used to create a nice animation of a rotating globe. You can generate astrolog graphics files in X11 bitmap, PC bitmap, and other formats. astrolog can also do a simple form of deduced interpretations.
astrolog's new additions include the ability to optionally access, if available, ephemeris files ranging over 8,000 years for increased accuracy. You can now generate graphics files in Post-Script and MS Windows metafile formats, in addition to bitmaps. astrolog's graphic wheel charts are enhanced, and it now allows calculation of graphical ephemeris and biorhythm charts. The new astrolog interprets more chart types than the previous version. It also provides various new influence charts, planetary rising and setting times, and calendars.
On the patch front, options, the C++ library for parsing UNIX-style command line options, received patch 3 in Volume 41, Issue 160. Contributed by Brad Appleton <brad@amber. ssd. csd. harris. com> patch 3 adds the OptionSpec class and allows use of stdio instead of iostreams if desired.
Brad also released patch 4 to cmdline, his C++ library for parsing command arguments and assigning the corresponding values to program variables. Patch 4, applied to Volume 41, Issue 161, includes a bug fix in keyword matching, removes a restriction in the error routines, and makes improvements to the comments.
Simple X Library
New in comp.sources.x is a simple X application library contributed by Dominic Giampaolo <dbg@fury.asd.sgi.com). Contributed for Volume 21, Issues 126-131, libsx, the Simple X Library, is a library that sits on top of and to the side of the Athena widget set. libsx makes writing graphical applications, particularly those that want to draw graphics, quite simple. A "hello world" program requires just two lines of code. A program that opens a window and draws some graphics need, about five lines. The library doesn't limit programs to a single canned style, however; it supports building sophisticated interfaces with the same ease as a simple program.With libsx, you can create all widgets with a single function call containing a few arguments. Another function call positions widgets by specifying logical relationships. Once you've created and positioned the widgets, it creates the interface and calls user-specified callbacks as appropriate. It allows multiple windows, as well as modal windows. libsx provides encapsulation of label, button, slider, toggle/radio button, text, form, scrolled lists, and menu widgets. It also provides a separate drawing-area widget (for drawing graphics and getting user input) as well as a clean single-line text-entry widget. libsx also provides management of color.
This posting provides numerous demo programs and two simple applications, as well as documentation for all the functions. The submission also includes a complete file requester, color chooser, and form fill-out library.
Robert Gasch <rgasch@nl.oracle. com> contributed xfsm for Volume 21, Issues 123 and 124. xfsm is a simple file-system monitor that runs under X11 and keeps track of storage left on your disks.
Fractals are always popular in X, and xmountains from S. P. Booth <spb@epcc.ed.ac.uk> is the latest in a long chain of contributions. Contributed for Volume 21, Issue 125, xmountains is a Xll-based fractal landscape generator. It generates random fractal surfaces and displays them in a window. While the program is running, the fractal is continuously extended on the right and the image is scrolled from left to right to expose the newly generated area. Patch 1 was posted in Volume 21, Issue 134. It adds a secondary light source and an option to reduce the CPU load once the initial screen is drawn.
Time for UNIX
The only posting to comp.sources.unix was the annual posting to improve strftime. strftime is a UNIX date-to-string conversion program. This new version, 6.0, contributed by Arnold Robbins <arnold@skeeve.atl.ga.us> for Volume 27, Issue 207 fixes bugs in the calculations for %U, %W, and %V, and several other output formats. Version 6.0 also fixes a small bug in the demo program date. C.
Still Quiet
As I said, everyone went quiet at the same time, so there were no postings in comp.sources.reviewed or comp.sources.games.
Previews from alt.sources
Things are still quiet in alt.sources as well, but here are some highlights of what is to come in the mainstream groups.Gert Doering <gert@greenie.muc.de> released version 0.18 of mgetty+sendfax in 16 parts on February 5, 1994. mgetty is a portable set of programs for sending and receiving faxes using class 2 fax modems. Besides plain fax, mgetty is a custom getty program especially designed for use with modems, allowing dial-in/fax-in/dial-out/fax-out on the same modem line without any collisions. Furthermore, mgetty takes care of all the details you must check for when dealing with modems and UNIX that is, resetting on start up, initialization, hardware handshake (if supported on that platform), lock files, and so forth. mgetty's major new features include voice support (voice mail) for ZyXEL modems, automatic configuration, manual answer, login dispatcher based on login name, CallerID support for ZyXEL modems, extended logging, simple fax poll server, and disk space checking before fax reception.
Darren Reed <avalon@cairo.anu.edu.au> posted ntop1.17 in one part on February 22, 1994. ntop shows TCP network connections with local usernames (and remote where possible) and updates the display in a cyclical fashion, similar to top with processes. You might say it does for netstat what top does for ps.
Al Davis <rbc!al> updated his acs to version 0.13 in 21 parts on March 16, 1994. Al's Circuit Simulator is a general-purpose mixed analog and digital circuit simulator for nonlinear dc and transient analysis, fourier analysis and ac analysis. This version adds real Fourier analysis and better time step control.
Paul Chesson <chesson@mundil.cs.mu.OZ.AU> posted efac on March 25, 1994 in four parts. efac is an Extended File Access Control system. It is a pair of programs that allows users to extend the level of permissions placed on files in a UNIX environment, and to extend the flexibility in which these permissions may be granted to specific users and groups. The basic components of the system are as follows: the EFAC client, which allows users to request operations on files under EFAC, including reading, writing, appending, deleting, creation, execution, usage within another command, or viewing EFAC permissions; and the EFAC server, which services requests from clients by determining if the requesting user has the appropriate permissions for an operation, and if so, carries out the operation on behalf of the server owner. EFAC uses Access Control Lists (ACLs). These are text files created by server owners to determine the permissions on files. ACLs can cover a single file (and themselves), or all files within a directory. Their syntax supports sh(1) style wildcards for filenames, C-style logical expressions for file and user groups, plus aliases for user-defined groups.