[Pkg-crosswire-devel] Packaging Sword modules

Jonathan Morgan jonmmorgan at gmail.com
Wed Jan 28 14:27:53 GMT 2009


Before thinking about packaging Sword modules, I think we need
understanding of why more core developers (including myself) tend not
to favour it.  Feel free to comment or add to them (or counter them).
Some of these reasons have already been mentioned, but here are my
reasons.

First, my requirements for module installation:
1. There should be one preferred method of installation for all modules.

2. All available modules should be able to be viewed and obtained by
any distribution and installation method.

3. Module updates (fixing errors, improving internal linking, etc.)
and removals (typically copyright) should be reflected in the
distribution ASAP.

4. Installed modules should be able to be used by any installed Sword
application.

It should hardly be a surprise that AFAIK Sword applications with a
proper install manager will satisfy all of these requirements.  For
that reason it is my preferred distribution method.

Where IMHO package management fails:
1. It is making one method of installation for the "administrator" and
another for the "user".

2. It will not display the full range of modules.  This is important
for our software.  People judge Bible software by the modules it has
access to.  If they see we only have the standard range of PD texts
then they may not continue looking at the software.  Even if they do
get it, they may never discover that they could actually get that ESV
or that foreign language Bible, because they know they have already
installed the modules.  This may be mitigated if upstream produced
Debian packages, but even then it would presumably need a new
Crosswire package source, which I assume most wouldn't configure, and
I think your chance of getting any change at all from upstream is low.

3. We have no guarantee that modules will be updated and removed
promptly.  They may well be, but from memory our applications now can
check for out-of-date modules and suggest updating them, making the
requirement be met (my memory may be wrong though).  This is important
too, since people do judge the software based on the quality of the
module (I've had problems reported with BPBible that were entirely due
to module problems, and when those modules are improved I would want
them to be updated - though it's fair to note that BPBible doesn't yet
have this installmgr support I claim is required, because other things
have been higher priority).

I don't believe you can address (2) at all, with copyright the way it
is.  That being the case, I personally would prefer you not to
distribute any modules at all, but leave it to the inbuilt install
managers to do the job they are meant to do to meet those
requirements.

Also, I personally target Bible software to individuals' PCs, not
large organisations (though they are welcome to use it).  Family PCs
are an interesting area to think about, but in general I think it's
fair to say that our user-base is either single user or fairly close
to it, and so there is nothing at all wrong with single user installs.

If you are wanting automation, I don't see much difference between
[pseudocode, possibly won't run]:
apt-get install sword-tools
installmgr KJV WEB ISBE TSK

and

apt-get install swordlib7 sword-KJV sword-WEB sword-ISBE sword-TSK

except for the fact that the installmgr way allows me as an
administrator to install copyrighted modules like the ESV, which I
would just about invariably want to do.

Jon




More information about the Pkg-crosswire-devel mailing list