Chapter 11. Metapackages - automating one-click installation

A metapackage is a small file that's created by the lpbuild command. The metapackage file contains the following information:

  1. The descriptive name of a software package.

  2. The software's package repository's URL.

  3. Names of one or more packages.

A metapackage file is processed by either the command-line lpm command, or, pylpm, the graphical front-end to LPMtool, as follows:

  1. The repository specified by the metapackage file gets registered (if it is not registered already).

  2. The packages listed in the metapackage are downloaded and installed.


After registering the metapackage's repository, LPMtool takes the package names listed in the metapackage, and starts a regular installation process, as if these package names were manually given to LPMtool. LPMtool searches the currently registered repositories for the packages, presumably it will find them in the repository it just registered. Therefore, the names given to packages are important. Publishing packages with the same name by different repositories results in confusion. The order in which the registered packages are searched is not guaranteed.

Therefore, registering a package repository implies some amount of trust in the package repository's publisher. LPMtool displays the name of the software package, and its repository's URL before proceeding, and asks for a confirmation.

Automating the process of software installation, using metapackages, requires the following: