Ken Neighbors, Ph.D.
Software Development Services
http://nsds.com/

FREE SOFTWARE


You can browse my download area. I also have Debian packages (the names of the Debian packages are listed in parentheses after the headings).

Software I Wrote

o Apache-AxKit-Language-FOP [download|cvs]
 (axkit-language-fop)

This module uses Apache FOP to generate PDF by processing XSL-FO files. It can either call the command line tool "fop", or for better performance, it can use the XML-ApacheFOP package (which uses the Java.pm Perl package and JavaServer software).

It seems like everyone has their own version of this module since AxKit does not include it, and, like everyone else, mine is also based on Language/PassiveTex.pm. Other than the performance boost from using XML::ApacheFOP, some additional features of my module are:

o Apache-AxKit-Language-XSPCaching [download|cvs]
 (axkit-language-xspcaching)

This module allows the existing AxKit caching mechanism to function for XSP-generated content. You cannot simply install this module and have caching to work for your XSP, you must handle the dependencies and extra cache parameters as described in the document.

o Apache-AxKit-CacheCleaner [download|cvs]
 (axkit-cachecleaner)

This module searches AxKit's cache directory and deletes files whose last access time is older than a specific maximum age. For example, you could run it nightly in a cron job and instruct it to delete files older than one month. Alternatively, you can configure it to run periodically during Apache's cleanup phase.

o Apache-AxKit-GzipInput [download|cvs]
 (axkit-gzipinput)

This module allows gzipped input files to be read into AxKit for processing, for example .xml.gz, .xsl.gz, and .xsp.gz.

o WWW-Yahoo-Credentials [download|cvs]

This module reads your Yahoo username, password, and security key from an XML file.

o WWW-Yahoo-Briefcase [download|cvs]

This module no longer works due to interface changes in Yahoo Briefcase.

This module provides access to your Yahoo Briefcase. You can upload and download files and perform other operations such as list, rename, move, copy, delete, and create new folders.


Software I Patched or Extended

o JavaServer (javaserver)

I created a Debian package for JavaServer. I wrote a wrapper and an init script to automatically start the JavaServer with an appropriate CLASSPATH that can be configured automatically by other packages (such as XML-ApacheFOP).

Note that there is a bug in the current distribution so I patched the source to work around the bug. You can download my patched version.

o FOP (fop, fop-doc)

I added the background borders patch and some patches of my own to fix the hyperlink location and another to help with the layout of multi-column spans.

o AxKit (axkit, axkit-examples, axkit-language-htmldoc, axkit-language-query)

I applied the following patches to the official Debian package:

o AWStats (awstats, awstats-plugin-geoip-allregions, awstats-apache2)

I applied the following patches to the Debian package:

Files changed/added:

I also created an additional plugin called geoip_allregions based on geoip_region_maxmind and geoip_city_maxmind. It generates worldwide region information in a Regions table and in the Hosts table using the freely available MaxMind city database (according to its documentation, geoip_region_maxmind only shows region information for US and Canada, and it requires the licensed MaxMind region database). See the README file for more information. The Debian package is called awstats-plugin-geoip-allregions.

Furthermore, I created an additional Debian package to automate the setup of awstats for Apache. This package, awstats-apache2, automatically changes the permissions of the Apache log files to world-readable so that awstats can process them, and it contains a CGI script for listing the available AWStats reports.


Software Packages for Debian

The free software on this page is also provided as Debian packages for the "i386" architecture. You can browse my repository pool and the Packages files for main and contrib. If you have a different architecture, you can download the Debian source package as described below and create your own binary package.

In addition to the software packages listed above, I have also created Debian packages of the following:

o XML-ApacheFOP (libxml-apachefop-perl)
o Java.pm (libjava-perl)
o Apache-AxKit-Plugin-Session (axkit-plugin-session)
o Crypt-GeneratePassword (libcrypt-generatepassword-perl)
o apt-method-https (apt-method-https)

To install a package using apt, first add the following lines to your /etc/apt/sources.list:

  # Ken Neighbors' site of freely-available Debian packages
  deb     http://nsds.com/debian/ sarge main contrib

Then you can install a package with apt-get, for example:

  # apt-get update
  # apt-get install axkit-language-fop

If you also want Debian source packages, add this line to your /etc/apt/sources.list:

  deb-src http://nsds.com/debian/ sarge main contrib

Then you can download and unpack a source package into the current directory with apt-get, for example:

  # apt-get update
  # apt-get source axkit-language-fop