Old Projects

Here rest some old projects. They were fun while I tried to figure out what I enjoyed and learned about each type of programming.

All code found on this page is released under the GPL and all documentation is released under the FDL.

FSFN

Added: Saturday November 1st, 2008 03:21:59 PM

FSFN is a utility that supports the problematic Sony Vaio “FS” key in Linux. The FS key is used in combination function keys, known as “FN” keys. It provides access to the traditional brightness and volume keys commonly found on laptops. FSFN provides the nice displays and functionality that Sony Vaio’s proprietary software supports in Windows.

FSFN uses the event poll interface to reduce overhead, runs as a lightweight background daemon, and optionally has a on-screen display (OSD) when changing things like volume while (requires X). Of course, in addition to contributing to the code I also I wrote an SELinux policy (legacy policy days) to confine the application that is included in the tarball ;)

The original thread that announced the application can be found on the Gentoo Forums.
I contributed to the application while I was writing my Gentoo on the Sony Vaio how-to article.

Weather Station Scripts

Added: Friday 17th of September 2004 01:05:34 PM

These are two of the automation scripts I use to maintain the weather station at CCBC. The getnput.pl script is a Perl script used to automate the daily downloads of a series of difax maps on a daily basis, make thumbnails of the images, and then upload the originals and the thumbnails to our own servers. It has a good bit of error detection and correction built-in and emails results to a list of users.

The second script, gifcat.pl, is more simplistic but also more visually appealing. It downloads a RADAR image from a specified server in GIF format and concatenates them together (ties them together one after another). It downloads a fresh image, rotates the old images, and creates a new animation after a given period of time. The end result is a long animated sequence that shows the RADAR history over a predetermined period of time. We use it to show the history of the past six hours.

Both scripts use the imagemagick utilities for graphic manipulation. It is optional for the first script but the Perl modules are required if you want to make thumbnails. Imagemagick’s “convert” application is required for the second script.

difax radar

Usage Report

Added: Monday 30th of August 2004 01:23:57 PM

This is a small CLI Perl script that reports per-directory usage statistics. I wrote it for quick analysis of users directory usage. It prints out the total size of the directory in a human readable format. Additionally, it groups together some of the more common file extensions so you don’t have to go through 100s of directories to find that one user who is storing DVD rips on the network drives. It can display the stats for each file extension if you pass it the “-v” option, but, be warned, this can create a lot of output.
Note: This was written and used on a Linux system to measure usage on Netware mounts. I have not tested with symbolic links or cyclic symbolic links. Also I have not tested on other platforms, although I tried hard to make it portable, I can’t make any promises.

sample output
Sample Output

Jukebox

Added: Sunday 29th of August 2004 10:05:33 PM

This is the start to the web interface portion of a media center that I’m working on. I am almost finished the hardware side of the construction. The software side is in early development stages. It sends an audio stream to an icecast or shoutcast for and uses the lame binary for on the fly reencoding. It uses MySQL for media and playlist management. The web interface is written in PHP and the jukebox daemon itself is currently written in Perl (may move to C soon).

Note: Currently not fully functional. While most of the playlist and media management is in place, the Perl code that chooses the next song to play is not complete. For those interested a few lines will need to be added to daemon.pl and DBexec.pm.

jukebox

xmms-blend

Added: Sunday 29th of August 2004 08:15:17 PM

This is an OpenGL xmms visualization plugin.
Right now it has your standard spectrum analyzer and also a somewhat promising start for a solar system fly-by. The texture maps for the planets are both real and simulated and the starfield is real (Tycho catalog). Currently the planets just rotate about their own axis and about a central axis. This was done as a project for CMSC 437 at UMBC. It was explicitly included here instead of the school section since it is an ongoing work as well as a school inspired learning experience ( read -> I had to do it).

spectrum analyzer solar system configuration panel