Sandstorm

I am Martin Lehner and I work in the CTL doing programming, system administration, and technical black magic. A great deal of my time is spent installing various applications on unix or linux servers. To get an idea of how complicated that is.. allow me to confuse the heck out of you…

 

Keeptool, a Carnegie Foundation poster/project/thingy application is a set of web pages that allow users to make web posters. It runs on the web using a technology called PHP. What that is isn’t all that important, what is however is how Keeptool interacts with Mediawiki, another PHP-based application. Mediawiki is just like the TSS wiki, it hosts articles on the web in a super-fun searchable format.

 

Now the trouble begins when you install these two on the same server. Keeptool has a requirement where it needs one particular setting enabled and Mediawiki wants that same setting disabled. It’s always like this! With every application we install it’s a maddening maze of problems, some without solutions.

 

Server software is incredibly complicated to setup and install most of the time, although there are a few exceptions to that (java is a breeze to install and use). Here are the basic steps I go through to install keeptool from scratch… thats mysql (database), apache(webserver, serves webpages), php, and keeptool.

 

MySQL

  1. download and unpack the program.

  2. run the configure scripts and compile mysql.

  3. install the program.

 

Apache

  1. download and unpack the program.

  2. run the configure scripts with extra switch to tell apache where mysql is.

  3. compile and install.

 

PHP

  1. download and unpack.

  2. run the configure scripts with extra switches to tell php where mysql AND apache are.

  3. compile and install.

  4. modify the apache configuration file by hand (in a text editor) to tell it how to load php.

 

Keeptool

  1. Unpack the archive and read the README or INSTALL file.

  2. Install pspell (an antiquated spell-check program which hardly anyone uses anymore). You have to fool the system into thinking the newer version, aspell, is in fact pspell.

  3. Install PEAR which is a php/perl database connector. Installs pretty quick once you know how to use the perl install shell to download new programs.

  4. Download and install the GD graphics library. This involves unpacking, configuring, compiling, and installing all with its own tiny problems. In fact, pspell/aspell also requires the same set of steps… unpack, configure, compile, install.

  5. Install ImageMagick, a program for converting images from one format/size to another. Just in case the GD library fails or wont work correctly. This involves the same unpack, configure, compile, install process.

  6. Create a database in mysql for keeptool and set up a user for it. This is done by going into the mysql text console and typing in a few commands by hand.

  7. Copy the keeptool files to a place where apache serves web pages from and run its installation webpage. This connects it to the database (hopefully).

  8. Make modifications to a trillion-million-bazillion pages to change tiny settings and paths to match how my server is set up and where the keeptool folder is sitting now. They all have to match for things to work. Not only keeptool files but also the php configuration file (where keeptool conflicts with mediawiki).

  9. pray!

 

If everything went ok then it will work…. though… this has NEVER happened. I’ve always had a problem and needed to fiddle with settings for hours to get it to work. A lot of applications are like this. They require 10 or a billion components to be installed and setup correctly and each of those has their own little saga of prerequisites which must be present. Oh, haha, and guess what? If at step number 9,478 I find out that mysql was configured without some particular switch I need? I START OVER! **cry**

 

BUT…

 

If everything DOES work then things are usually incredibly stable and just work from then on. Some applications are worse than others. I’ve never had any big problems with apache or mysql or php in general.

 

Currently…

Keeptool is working for the most part. Images absolutely refuse to resize even though ImageMagick is installed correctly and mediawiki has no problem using it. So I’m sure I’ll spend another 10 hours just fiddling with that. Lets hope the new version updates some old out-of-date junk. If you’ve been using the keeptool that should give you a pretty good idea of the saga I trudge through to keep it working.

 

Oh look, got some sand in my shoe…

 

Martin.

2 Comments

  1. Brad says:

    Thanks for the magic you perform for us daily and have performed for us and MCC for so many years… from when you were an STA taking classes at MCC, from when you were a part-time employee in the CTL taking CS classes at ASU, and from when you were/are most recently an ASU CS graduate providing your expertise to the CTL as a “temporary” employee. We have come to depend on you so much. I hope you know how much appreciate all you do.

  2. Martin says:

    Thanks for the comment Brad, Its been seven years now working for the CTL (including my time as an STA), all contract-temp-part-time whatever you call it.

Leave a Comment