EPM Specification

From EPrints Documentation
Revision as of 09:09, 7 June 2010 by DaveTarrant (talk | contribs)
Jump to: navigation, search

The EPM Specification

The EPrints Package/Plug-in Manager (EPM) is designed to install EPM (EPrints Modules) in the EPM format.

EPM is a simple format consisting of a directory structure which is dropped into the ARCHIVE_ID directory.

In order to make an EPM you also require a specification file and an icon to represent the EPM in the EPM repository.

For more details on the Package Manager see EPrints_Package_Manager.

The EPM Spec File

The EPM Spec file contains a series of ":" separated keypairs, each on it's own line. ALL the fields detailed here are required. If a package wishes to add it's own configuration variables these should be added to the package's own configuration file and not the EPM spec.

The spec file should be called package_name ("package") in the spec file, e.g. (test_package.spec).

Example Spec file:

 package: test_package
 version: 0.4
 title: Test Package
 description: This is a simple test screen plugin
 creator_name: Dave Tarrant
 creator_email: email@domain.com
 configuration_file: Admin::TestScreen
 icon: icon.png

package

  • A globally unique package identifier, used for management of the package versions, upgrades and local over rides.
  • The main EPM repository will be files.eprints.org and this can be searched to find if your package_name exists. Alternatively files should tell you when you try and submit the package.

version

  • A decimal only separated package version!
  • One recommendataion is to use the revision number of the tag/trunk checkout.

title

  • The title/name of the package.
  • A pretty string.

description

  • Description of the package.
  • A pretty string.

creator_name

  • Creator name/names, comma separated.

creator_email

  • Creator email/emails, comma separated.

icon

  • The icon file which should be within the root directory of the package

The EPM Package Structure

The following shows the package structure for the package "test_package".

 - test_package.spec
 - icon.png
 - cfg/cfg.d/test_package.cfg
 - cfg/plugins/EPrints/Plugin/Screen/Admin/TestScreen.pm

In this only test_package.spec and icon.png are required, all the rest of the files are installed if possible.