A piggy bank of commands, fixes, succinct reviews, some mini articles and technical opinions from a (mostly) Perl developer.

Jump to

Quick reference

Where you might find Apache files

  • /usr/sbin/apachectl
  • /usr/sbin/httpd
  • /etc/httpd/conf/httpd.conf
  • /var/log/httpd/error_log
  • /etc/httpd/
  • /etc/httpd/modules/

Combinations, permuations and iterations

To generate all combinations or permutations of a fixed list, use Math::Combinatorics

To generate sequential values for a set of slots, e.g. all binary numbers, or the number of 'max_results' for several modules do this:

  1. add one to the first slot
  2. if that takes it over the maximum, set it to zero and add one to the next slot
  3. repeat step 2 until you reach all zeroes
  4. if all zeroes, you are finished.

Upper and lowercase in vi

Select the text you want using visual mode, then type U for uppercase or u for lowercase.

Intermittent bugs

How do you investigate and fix a bug if you can't reproduce it?

Turn a lot of logging on, then check the logs for occurrences of the bug.

Setting up xemacs xslt-process mode

I set all these options in the environment:

#########################
# copied from /etc/java/java.conf
# JPackage Project
#########################
# Location of jar files on the system
export JAVA_LIBDIR=/usr/share/java
# Location of arch-specific jar files on the system
export JNI_LIBDIR=/usr/lib/java
# List of known java homes (used for autodetection if none is provided)
export JAVA_HOME_LIST=$JAVA_LIBDIR-utils/java_home.list
# Root of all JVM installations
export JVM_ROOT=/usr/lib/jvm
# Default jvm
export JAVA_HOME=$JVM_ROOT/java
# Options to pass to the java interpreter
export JAVACMD_OPTS=
#########################


export CLASSPATH=/usr/share/java

Now when I try to run xslt-process, it says:
Starting the BeanShell. Please wait...

...but then straight away it still always says:
Could not process file, most probably (Xalan1|Saxon) could not be found!

What I think is happening:
  • xalan-2.4.1.jar is installed, not xalan1 as is required.
  • Not all of saxon's dependencies are installed.