Difference between revisions of "Creating and Maintaining a Module Repository"

From CrossWire Bible Society
Jump to: navigation, search
(Registering your repository with CrossWire)
 
(42 intermediate revisions by 3 users not shown)
Line 1: Line 1:
The most basic way to setup a remote repository is to simply point an anonymous  
+
==A simple repository ==
FTP server to any working SWORD module installation (i.e. if  
+
The most basic way to set up a remote repository is to simply point an anonymous  
/usr/share/sword works for your frontends, then expose this directory  
+
[http://en.wikipedia.org/wiki/File_Transfer_Protocol FTP] server to any working SWORD module installation (i.e. if  
via your FTP server and your module repository is done).  All C++ SWORD
+
'''/usr/share/sword''' works for your front-ends, then expose this directory  
frontends should function properly from this.
+
via your FTP server and your module repository is done).   
  
== Layout of a Module repository ==
+
All our frontends should be able then to access this repository and download your modules.
  
In order to deal with all ways the various frontends use our module [http://en.wikipedia.org/wiki/Repository repository]  the following should be provided:
+
== Complete layout of a larger module repository ==
  
An echo of the '''mods.d''' and '''modules''' area as found under any Sword module area on your system (e.g. '''~/.sword''') plus '''mods.d.tar.gz''', as created by:
+
To optimize a repository with a larger number of modules, an archive file of the mods.d directory should be created. The repository will work fine without this but adding the file will speed up use of the repository for remote users.
  
 
  tar czvf mods.d.tar.gz mods.d/*
 
  tar czvf mods.d.tar.gz mods.d/*
  
This latter is used to optimise finding and downloading modules from large repositories. If you only wish to offer few modules to your readers, this is not required.
+
JSword front-ends require at the moment (though not for much longer) the presence of the modules as [[Zipped modules| zipped archive files]]. Having these available will also likely be a way in the future to make interaction with remote users faster.
  
Also required us a directory with zipped mnodules for JSword derrived front ends. This can also serve as a repository for smaller devices without integrated module manager.
+
== Registering your repository with CrossWire ==
 
 
This needs to be accessible both via FTP and via HTTP (for direct download and for JSword)
 
 
 
== Zipped Modules ==
 
 
 
Some of the smaller devices running a sword frontend do not have a network enabled module manager. Users of these devices need to download their modules as zipped files and unzip them in the right place - e.g. a SD card.
 
 
 
It is also helpful for people who have no access to direct internet connections or live in countries with monitored access to the internet[1] to be able to download (and possibly distribute) zipped modules.
 
 
 
These come in three formats
 
 
 
* rawzip (required by JSword derrived front-ends)
 
* zip for MS Windows
 
* zip for Mac OSX
 
  
=== rawzip ===
+
Most front-ends can install modules from a number of repositories. All recognised repositories are listed in [[Official and Affiliated Module Repositories]]. These repositories are well established with CrossWire and are maintained by various developers. If you or your organisation have set up your own repository, please announce it on the mailing list (sword-devel@crosswire.org).
  
This is a zipped archive of a module in the file and directory layout used in the local module directory.
+
The module manager is able to load dynamically a list of active and accepted repositories. To enable your repository for this list please contact CrossWire. We will then decide whether we will list your repository as endorsed by us. We would not endorse a repository that has content in breach of [[copyright]].
  
E.g. to create from your own module directory a zipped module of a uncompressed GenBook do this:
+
== See also ==
 
 
cd ~ftp/pub/sword
 
zip zip/mybook.zip mods.d/mybook.conf modules/genbook/rawgenbooks/mybook
 
 
 
=== MS Windows zip ===
 
 
 
This is a zip file which will selfextract on a MS Windows computer. To create it you require:
 
 
 
''missing content ''
 
 
 
=== MacOS X zip ===
 
 
 
Earlier version of MacSword relied on these instead of the module manager. This is not anymore required for a module repository.
 
 
 
== Registering your repository with CrossWire ==
 
  
Most frontends can install modules from a number of repositories. Several repositories are well established with CrossWire and are maintained by various developers. If you or your organisation have set up your own repository, please announce it on the mailing list (sword-devel@crosswire.org).
+
* [[Zipped modules]]
 +
* [[Modules_in_the_beta_repository|Testing status of Beta modules]]
  
From libsword-1.5.12 onwards the module manager will also be able to load dynamically a list of active and accepted repositories. To enable your repository for this list please contact CrossWire
 
  
== References ==
+
[[Category:Guides|Creating and Maintaining a Module Repository]]
# [http://www.amazon.com/s?ie=UTF8&tag=mozilla-20&index=blended&link_code=qs&field-keywords=Access%20Denied%3A%20The%20Practice%20and%20Policy%20of%20Global%20Internet%20Filtering Access Denied: The Practice and Policy of Global Internet Filtering (Information Revolution and Global Politics)].
+
[[Category:Modules|Creating and Maintaining a Module Repository]]
 +
[[Category:Repositories|Creating and Maintaining a Module Repository]]

Latest revision as of 15:35, 10 January 2018

A simple repository

The most basic way to set up a remote repository is to simply point an anonymous FTP server to any working SWORD module installation (i.e. if /usr/share/sword works for your front-ends, then expose this directory via your FTP server and your module repository is done).

All our frontends should be able then to access this repository and download your modules.

Complete layout of a larger module repository

To optimize a repository with a larger number of modules, an archive file of the mods.d directory should be created. The repository will work fine without this but adding the file will speed up use of the repository for remote users.

tar czvf mods.d.tar.gz mods.d/*

JSword front-ends require at the moment (though not for much longer) the presence of the modules as zipped archive files. Having these available will also likely be a way in the future to make interaction with remote users faster.

Registering your repository with CrossWire

Most front-ends can install modules from a number of repositories. All recognised repositories are listed in Official and Affiliated Module Repositories. These repositories are well established with CrossWire and are maintained by various developers. If you or your organisation have set up your own repository, please announce it on the mailing list (sword-devel@crosswire.org).

The module manager is able to load dynamically a list of active and accepted repositories. To enable your repository for this list please contact CrossWire. We will then decide whether we will list your repository as endorsed by us. We would not endorse a repository that has content in breach of copyright.

See also