[sword-devel] Determining the repository a SWModule belongs to

Greg Hellings greg.hellings at gmail.com
Fri Sep 27 12:45:33 MST 2019


Currently the engine does not intentionally preserve any information about
where a module comes from. This is why, for a single installer, it cannot
handle having parallel installs of the same module from different sources
(e.g. you can't have both CrossWire KJV and your own homegrown KJV in
parallel without giving your own a different module name).

There's nothing stopping an application from creating different local
repos, one for each upstream, and then combining the two using its own
logic. However, this isn't something the library currently supports. The
fact that you can reverse engineer its source, at present, is only because
none of the main repositories duplicates module identifiers from any other
repositories. However there is nothing, technically speaking, that prevents
this. Thus, module pedigree is not, necessarily, a deterministic thing.

--Greg

On Fri, Sep 27, 2019 at 2:28 PM <contact at tklein.info> wrote:

> Hi,
>
> Using the SWORD API, is there an easy way to determine the
> remote/source repository a module is coming from?
>
> I haven't found anything in the SWModule class or anywhere else.
>
> This would be my approach without any API method:
> 1) Get the config entry "PrefixPath" using
> SWModule::getConfigEntry("PrefixPath"). This returns something like
> this:
> /home/tobi/.sword/installMgr/20151110161300/
> 2) The last part of the path above is the "id" of the source repository
> 3) Looking up ~/.sword/installMgr/masterRepoList.conf I can find the
> mapping between the repo id and the actual repository name from a line
> like this one: 20151110161300=FTPSource=eBible.org|ftp.ebible.org|/sword
>
> Would it make sense to provide a method in the SWModule or InstallMgr
> class to easily get this information?
> This would be useful meta information when showing an about dialog for
> a module and I also see other use cases.
>
> Best regards,
> Tobias
>
>
> _______________________________________________
> sword-devel mailing list: sword-devel at crosswire.org
> http://www.crosswire.org/mailman/listinfo/sword-devel
> Instructions to unsubscribe/change your settings at above page
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.crosswire.org/pipermail/sword-devel/attachments/20190927/e8376b30/attachment.html>


More information about the sword-devel mailing list