The Package Description Format

This is an example package description file.


      <?xml version="1.0"?>
      <!DOCTYPE package PUBLIC "-//TVT//DTD XOEPKG 1.0//EN" "http://www.xoe.org/DTD/xoe-package.dtd">
      <package name="libmp3-native" version="0.1">
      <info>
      <name>Native MP3 playback library</name>
      <description>
      Native code for MP3 audio playback.  Install this package if you 
      want to be able to play MP3s on your device.  These libraries are
      based on libmad which will also be installed if you select this
      package.
      </description>
      <homepage>http://www.xoe.org/packages/libmp3-native</homepage>
      <maintainer>
      <name>Sam Clegg</name>
      <email>samc@transvirtual.com</email>
      </maintainer>
      <copyright>
      <year>2001</year>
      <holder>Transvirtual
      Technologies Inc.</holder>
      <email>info@transvirtual.com</email>
      </copyright>
      <licence
      
      type="open" common="GPL" />
      </info>
      <requires>
      <dep name="libmad-native" predepends="true" ns='http://www.xoe.org/installer/base/package' />
      </requires>
      </package>
      
   

Notice that the package description contains four parts: <info/>, <provides/>, <requires/>, and <conflicts/>. In addition there are several attributes that go directly on the top-level <package/> element.

<package />

The package tag has two mandatory attributes, and one optional attribute.

If task is set to true, the package will be shown in 'basic' queries. The default is false.

<info />

The info section contains information meant to be read by the user. Types of information include:

<provides />

...

<requires />

This section can contain multiple 'dep' elements. Each element specifies a dependency on another package. The dep element has two mandatory attributes and one optional attribute. Depending on the type of dependency there may be more optional attributes and optional child elements.

At build time, each dependency will be expanded by the appropriate Installer module. This includes creating an XPath representation of the dependency. The XPath will match any package description containing the appropriate proviso.

<conflicts />

...