Installation

Araneida is distributed as an ASDF System. You may want to investigate whether there is a convertor from ASDF systems to your platform's package standard, in which case installation will be a simple matter of apt-get or pkg_add or something and you can skip to Use. Otherwise, read on ...

  1. You need a CMUCL or SBCL implementation that has asdf loaded into it
  2. From your favourite cCLan mirror, download cl-db-sockets, net-telent-date and araneida, and untar them somewhere.
  3. Create symlinks to the unpacked .asd files in a directory on your asdf *central-registry* list. For example
    * asdf::*central-registry*
    (*DEFAULT-PATHNAME-DEFAULTS* "/home/dan/src/defsystems/")
    
    $ cd /home/dan/src/defsystems/
    $ ln -s ../telent/araneida/araneida.asd ../telent/net-telent-date/net-telent-date.asd ../telent/db-sockets/db-sockets.asd .
    
  4. You should now be able to compile and load the systems with
    * (asdf:oos 'asdf:load-op 'araneida)
    
  5. Congratulations. It's now working

Use

Oh, you wanted to be able to actually use it?

  1. There are example handlers in the examples/ subdirectory. Copy them to a scratch directory, and symlink the araneida-examples.asd file into somewhere on *central-registry* (as before)
  2. Edit per-host.lisp to have appropriate values for your local setup. You can override any setting in variables.lisp
  3. (asdf:oos 'asdf:load-op 'araneida-examples)
  4. Prepare an Apache installation with proxy support. Configure it to include /tmp/apache.cf.inc or whatever you specified for *apache-config-segment* above.

    Configuring Apache is Outside The Scope of these instructions, but as a start, here are the relevant lines from my Debian laptop:

    LoadModule proxy_module /usr/lib/apache/1.3/libproxy.so
    NameVirtualHost noetboot.telent.net
    Include /tmp/apache.cf.inc
    
  5. Write the apache config file segment using (araneida-examples::init) - now start or restart Apache
  6. Start the server event handlers using (araneida-examples::start)
  7. Fire up a web browser. Browse.
  8. Observe that the toplevel also still works
  9. Read ../examples/main.lisp to see how it works. Your own web application will need to do similar things.
  10. Stop the web server event handlers with (araneida-examples:stop)
  11. Send me mail and tell me how badly broken these instructions are. And, ideally, in what ways.