Whole document tree
    

Whole document tree

The APT project design document - Modules and interfaces
[ previous ] [ Abstract ] [ Copyright Notice ] [ Contents ] [ next ]

The APT project design document
Chapter 4 Modules and interfaces


The user interface module
Look at Behan Webster's documentation.

Widget set
Related closely to above Could some one present design decisions of the widget set here?

pdate Module
Distinct versions of the same package are recorded separately, but if multiple Packages files contain the same version of a package, then only the first one is recorded. For this reason, the least expensive update source should be listed first (local file system is better than a remote ftp site)

This module should interact with the user interface module to set and change configuration parameters for the modules listed below. It needs to record that information in an on disk data file, to be read on future invocations.

  1. FTP methods
  2. mount and file traversal module(s)?
  3. Other methods ???

Status file parser/generator
The status file records the current state of the system, listing the packages installed, etc. The status file is also one method of communicating with dpkg, since it is perfectly permissible for the user to use APT to request packages be updated, put others on hold, mark other for removal, etc, and then run dpkg -BORGiE on a file system.

Package file parser/generator
Related to above. Handle multiple Packages files, from different sources. Each package contains a link back to the packages file structure that contains details about the origin of the data.

Dependency module

  • dependency/conflict determination and linking
  • reverse dependency generator. Maybe merged with above

Package ordering Module
Create an ordering of the actions to be taken.

Event generator
module to interact with dpkg


[ previous ] [ Abstract ] [ Copyright Notice ] [ Contents ] [ next ]
The APT project design document
$Id: design.sgml,v 1.2 2001/04/04 05:00:15 jgg Exp $
Manoj Srivastava srivasta@debian.org