[Surfraw-devel] Code for namespace issues

Ian Beckwith ianb@nessie.mcc.ac.uk
Wed, 1 Oct 2003 04:42:54 +0100


Hi.

I've had a go at implementing some of the ideas for the namespace
issue. I've checked them into cvs on the branch NAMESPACE
so people can play with them.

This is the first time I've ever worked with automake, autoconf,
debconf and debian packaging in general, so I'd appreciate it if
someone who knows these things would cast an eye over my code.

The elvi now live in /usr/bin/surfraw-elvi (configurable in
configure.in or with ./configure --with-elvidir=PATHNAME), except for
'W', which isn't really an elvi so stays in /usr/bin.

You can use surfraw elviname or sr elviname to run an elvis.
sr is just a symlink to surfraw

I've written a perl script called surfraw-update-path, which puts the
elvi dir in your path in your shell config files. This works for user
or system wide config files, and has an option to do all shells.  It
currently supports sh, ash, bash, dash, csh, tcsh, ksh, pdksh, zsh, es
and rc.

There is now a debian/config, which displays through debconf a message
about the changes, and offers to add the elvi to your system-wide
paths (using surfraw-update-path -add -sys -all), and a postinst and prerm
which actually add/remove the surfraw code.

The debconf message is of priority high. Although the question it asks
isn't very important, the message about the changes is, otherwise I
suspect we will get loads of bug reports along the lines of "google
stopped working".

I've also added a cvsignore to CVSROOT for all the files created as part of the build process:

Makefile, build-stamp, config.cache, config.log, config.status,
configure-stamp, surfraw, surfraw-update-path, surfraw-update-path.1,
surfraw.conf, surfraw.lsm, surfraw.spec, files,
surfraw.postinst.debhelper, surfraw.postrm.debhelper,
surfraw.prerm.debhelper, surfraw.substvars, templates

as well as .emacs.desktop and .cvsignore

Any comments?

Ian.