My Hacks and Programs

Open Source Initiative All of my hacks and programs listed on this page are licensed under the GNU General Public License (GPL). The GPL is an approved Open Source license, as per the Open Source Initiative. That said, all of my software is OSI Certified Open Source Software.


My Various Hacks

A list of my available hacks. Includes descriptions, and download links. All of my hacks were written for Linux, on Linux systems, but very well may work on other UNIX-like operating systems.

Apache Build Script
This is a simple shell scripts which make building and installing Apache-1.3.x and mod_ssl easier. The script will auto-download, build, and install any versions of Apache-1.3.x/OpenSSL/mod_ssl you specify.
checkfetch
checkfetch is a user-level and Cron'able Fetchmail session management utility. It's purpose is to ensure that a user has a constant fetchmail process running at all times and will indefinitely check email accounts in which fetchmail has been configured to check.
IM-Status
IM-Status is a small PHP application that will allow you to display your online/offline status for ICQ, iChat (.Mac), Yahoo!, and AIM Instant Messengers on a web page.
newuser
newuser is a program which provides a easy-to-use, interactive front-end to the "useradd" program. Newuser makes adding new users to a Linux machine quick and easy. Can even setup a new user's personal webspace if Apache is installed.
PHPdict
PHPdict is a PHP-based web front-end to the DICT protocol (RFC 2229). PHPdict requires that the dict(1) console-based program/client reside on the web server serving PHP. Check this page for various DICT resources.
PHPwhois
PHPwhois is a PHP-based web front-end to the whois protocol. PHPwhois requires that the whois(1) console-based program/client reside on the web server serving PHP. My favorite whois client is the one that ships with Debian GNU/Linux, and was written by Marco d'Itri. You can grab Marco's whois sources here.
phpWX
phpWX is a small PHP script that displays current weather conditions. It can display up-to-date weather information, active advisories, and more, based on a Zip Code. It can also display Windchill, HeatIndex, and other various conditions. Visitors on your site can enter their ZipCode for their own weather conditions, too.
slack-mirror
slack-mirror is a simple shell script that will mirror an official Slackware Linux RSYNC mirror. Slackware versions and mirrors are user-selectable, as well as the retry count, and the pause time between retries. Users can also configure the script to skip the source code from the tree in order to save disk space and bandwidth. This script was written to keep traffic off of the master Slackware server/mirror, and to provide a reliable/efficient way to acquire Slackware trees.
stfw
stfw is a command-line shell program that will allow you to run a Google search on any term you enter.
vim2html
vim2html is a small shell program that will export any Vim-editable file into well-formed HTML - simulating a Vim session. Fully supports Vim colorization (customizable) and Syntax Highlighting. This program provides an excellent method of presenting your programs/HTML/scripts/etc. on the web. HTMLtidy is recommended, but not required.

Custom Red Hat 7.3 RPMs

My custom Red Hat 7.3 RPMs can be found on on the main NORLUG site, within the NORLUG Custom RPMs Section.

I still actively maintain Red Hat 7.3 RPMs because I manage quite a lot of Red Hat 7.3 servers (you're browsing this web page on one right now!), and have no need to upgrade them (7.3 makes a fantastic/stable server platform). I will continue to maintain my 7.3 RPMs as long as I run 7.3 servers/machines. As of July 2005, I do not see myself moving away from the 7.3 platform anytime in the near future.

I moved my custom RPMs onto the main NORLUG site because I get collaboration on the project from a few NORLUG members/hackers, and it just made sense to reflect that by moving it to our main group site.


TkSETI

Note:
This program was written for the SETI@Home "Classic" application, which is currently being phased out for a newer technology ("BOINC"). This transition will render TkSETI as obsolete. Read the SETI@Home Transition Document for more info.

SETI@Home Image TkSETI is a GUI front-end to the SETI@home client for UNIX. It can passively monitor an already running setiathome client, start/stop/pause the client when TkSeti starts and exits, and can manually run/kill/pause/continue the setiathome client. It even notifies you if you or your friends make the Top 20 Users, Spikes or Gaussians list. On Linux platforms it can automatically run/kill/pause/continue the setiathome client based on system idleness by monitoring any interrupt controlled devices such as keyboard, mouse, etc. It is fully customizable with lots of nifty features.

Features
  • Passively monitor an already running setiathome client.
  • Start/stop/pause the setiathome client when TkSETI starts/exits.
  • Manually run/kill/pause/continue the setiathome client.
  • Automatically stops the client during certain hours on certain days.
  • Initializes your dialup network start/stop scripts when the client needs to contact the server (even avoiding certain days and times).
  • Restarts the client if it dies unexpectedly.
  • Linux only: Automatically run/kill/pause/continue the setiathome client based on system idleness by monitoring any devices such as keyboard, mouse, etc.
  • Support for proxy servers.
  • Tracks your personal best scores for big Spikes, Gaussians, Pulses and Triplets and optionally notifies you when new bigger ones are found.
  • Displays your statistics such as work units processed, total CPU time, progress of current work unit, largest Spike, Gaussian, Pulse and Triplet, client CPU usage, etc.
  • SkyMap shows the location of all work units processed plus the location of your best Spike, Gaussian, Pulse and Triplet.
  • Fully configurable to run on any UNIX platform.
  • Configurable font selector.
  • Lets you check the work statistics of your friends to see who is ahead.
  • Optionally notifies you when a new version of TkSETI is available.
  • On-line documentation.
Screenshots
Main Window Options Screen User Stats Sky Map
main window options screen user stats sky map
Requirements
  • TkSETI requires Tcl/Tk version 8.0 or above.
  • Compatible only with SETI@home v3.x clients - available from the SETI@home download page.
Downloading TkSETI
Latest version is: 3.10.2 (ChangeLog)
Other Notes

TkSeti has its own project page on freshmeat.net. This is handy because you can subscribe to the project to stay up-to-date.

TkSETI is distributed under the GPL.

Note that TkSETI was originally written by Rick Macdonald. I have spoken with Rick (he wanted me to mention to you that he is "alive and well"), and he gave me his "blessing" to continue the maintenance and developmemt of TkSETI. Many thanks to Rick for creating such a wonderful project in the first place.

Please feel free to send me bug reports, questions, etc. Patches and diffs are welcome. I can be contacted here.


Who I am

I am currently the NORLUG SysAdmin and Webmaster. All NORLUG Internet services are hosted and managed by me. If you live in or near the Northfield/Cannon Valley area, you should check out NORLUG.

I was the NORLUG Vice President from 12/2001 to 5/2004. I am no longer in office for NORLUG, but I do still manage all of NORLUG's internet services. For more information on NORLUG's history and leadership, go to the NORLUG About Page.

My contact info

Please use my contact page if you need to get in touch with me. I prefer private, encrypted email. So if you wish to send me encrypted email, please use my PGP public key.


Colophon

My NORLUG homepage resides on the NORLUG web server. All of the code behid my hompage was written in XML/XSL using the Vim editor. My homepage renders 100% pure, clean XHTML 1.1 + MathML + SVG output, as well as valid CSS.

My homepage is a shameless ripoff from the styling of Apple's Safari RSS. It also includes many CSS and style hacks from the WebKit Open Source Project's site.


Copyleft Chip Cuccio

Last revised: 2005/07/14 15:15:06
Revision: 1.1