[sword-devel] New Install Manager Features
Troy A. Griffitts
scribe at crosswire.org
Tue Dec 23 03:29:45 MST 2008
A fairly large commit to InstallMgr has just hit SVN. Here is a brief
summary.
InstallMgr can now be constructed with a username and password which
will be used when logging into the remote source. May I suggest that
frontend developers supply their own unique anon password instead of the
longstanding default: installmgr at user.com. For example:
installmgr at macsword.com.
A remote source can now be constructed to supply a real username and
password in the .conf file. This will allow us to use non-anon ftp
sites for remote repositories. This will obviously override any global
anon u/p supplied in the c-tor of InstallMgr discussed above.
We have always asked frontend developers to warn users before enabling
remote install features. This is now pseudo-enforced in the API by not
enabling any remote methods before a call to:
InstallMgr::setUserDisclaimerConfirmed(true);
Obviously this is not intended to really enforce anything, but rather
safeguard against a codepath which might accidentally call a remote
method before informing the user and letting them choose. Also to
solidify our policy in code somehow so future frontend developers will
know what is expected. A suggested disclaimer is included in the
comments for this method in the header file.
There is now a new method which will allow syncing of a local repository
configuration list (InstallMgr.conf) with a master remote source which
we will keep at CrossWire and in which we will maintain a list of all
know sources for SWORD modules. The method call is:
InstallMgr::refreshRemoteSourceConfiguration();
It's use can be seen in the command line tool:
sword/utilities/installmgr.cpp
with the command line option -sc. You can see your repository
configurations before and after with the usual -s option.
./installmgr -s
./installmgr -sc
./installmgr -s
The actions we can supply in our master list which are currently
supported by this new feature are:
adding new repos
removing repos
modifying repos
leaving manually added user repos untouched
Please have a go at it and report any positive or adverse findings.
With these new features we'd like to support the emergence of a new 3rd
party user module repository site: swordmodules.org While CrossWire's
repositories continue to host best practice markup with fully supported
modules, we want to encourage the 3rd party distribution of as much
quality content as possible.
I hope these new features are useful and actually work! :) May God
continue to bless our work as we share together to serve Him.
-Troy.
More information about the sword-devel
mailing list