Did you know ... Search Documentation:
The contents of pack.pl

A pack must hold a file named pack.pl in the toplevel directory. Note that the toplevel directory of the archive can be ., <pack> or <pack>-<version>. The file pack.pl contains ground Prolog terms. The terms below are defined. Of these, only name and version are obligatory.

name(Pack)
Name of the pack. This must be provided. Must consists of ASCII characters that can always appear in filenames. Due to case (in) sensitivity characters, use lowercase letters. Use _ as word separator.
title(Title)
Free style description. Please limit to ASCII to avoid problems with character encodings.
version(Version)
Current version of the pack. This is an atom consisting of integers separated by dots (.). E.g., '1.1.2'. This must match the version in the file name of the pack archive (e.g., mypack-1.1.2.tgz).
author(Name, Email)
Provides name and email address of the author. If there are multiple authors, include multiple of these terms.
maintainer(Name, Email)
Current maintainer of the package. May appear multiple times.
packager(Name, Email)
The person that created the package.
home(URL)
Home page URL providing more information about the package.
download(URLPattern)
Principal download URL for the package. Must be an HTTP URL. May contain a file wildcard pattern to match multiple versions of the package. Patterns are used by pack_upgrade/1 to query available package versions.
provides(Token)
Package provides Token. A token is an atom, describing some property of the package. A package always provides its own package name. A pack may provided multiple tokens by repeating the provides(Token) term.
requires(Token)
Package requires the presence of another package that is named Token or provides Token.
conflicts(Token)
Package cannot be used together with Token. Currently unused.
replaces(Pack)
Package replaces Pack. This implies that installing this package removes Pack. May be specified multiple times.

Here is a simple example

name(demo).
title('Demo package').
version('1.2.1').
author('Jan Wielemaker', 'J.Wielemaker@vu.nl').
See also
- Pack.md