[sword-devel] New website - installation instructions

DM Smith dmsmith555 at yahoo.com
Fri Dec 19 16:47:04 MST 2008


Troy A. Griffitts wrote:
> OK, so would this be a fair assessment of the requests on the table?
>
> To the C++ Engine add searching in:
>
> $HOME/Library/Application Support/sword
> $APPDATA/sword
> $ALLUSERSPROFILE/sword
>
> Change the C++ Engine to 'augment' the installed module list with any 
> works found on any path, instead of the precedence implemented currently.
>
> Add the concept of an 'install location' to be the 'first' found 
> writable location.
>
> Make both JSword and SWORD operate exactly the same for module set 
> lookups.

Here is the code that JSword uses to:
1) construct a list of locations containing modules
2) determine which of these is the "first" writeable location.

You will see that it is very close to what SWORD does and closer to what 
Troy suggests. It does not deal with ALLUSERSPROFILE. This would be 
trivial to add.

http://crosswire.org/svn/jsword/trunk/jsword/src/main/java/org/crosswire/jsword/book/sword/SwordBookPath.java

Note: this uses the OSType class to determine where os specific "app 
data" should be located. You'll notice, it does it last. This is so it 
plays well with BibleCS as it stands today.

Also note, this has migration code to move the repository from .jsword 
to the "first" writeable location that it finds. That is, it moves it 
from a non-standard location to a standard one.

I don't know if SWORD has a mechanism that is exposed by the front-ends 
to allow a user to specify their preferred DataPath and AugmentDataPath. 
This is something that JSword defines and BibleDesktop uses. Currently 
this is written to desktop.properties. This probably should be written 
to sword.conf in an appropriate directory.

In Christ,
    DM





More information about the sword-devel mailing list