wiki:ProjectOverview

The trunk/debathena subdirectory of the source tree contains Debian/Ubuntu?-specific materials, also known as "Debathena". The contents are:

  • debathena - Debathena-specific software packages such as PAM and NSS modules.
  • config - Packages for configuring native system software in a manner appropriate for Athena.
  • meta - Packages which contain nothing but dependencies on other packages and serve as an installation convenience.
  • scripts - Build scripts and supporting materials.

Debian software used by Debathena:

  • schroot - Used to manage build chroot environments for each Debian/Ubuntu? version. We use the device schroot type with aufs union mounts, which allows rapid construction of ephemeral copies of template "source" chroots, so that every binary package build is done in a clean environment. N.B. Also used by login chroots in debathena-cluster
  • debuild - Used to create Debian source packages from package source directories.
  • sbuild - Used to build binary packages from source packages inside schroot environments.
  • equivs - Used to create packages which only contain dependency information. Somewhat of a dirty hack, since it doesn't keep proper changelogs, but it reduces overhead. N.B. Being phased out as of 2011/12
  • CDBS (Common Debian Build System) - Referenced by debian/rules files in packages. Contains standard build rules to cut down on per-package boilerplate.
  • reprepro - Used to upload packages into the apt repositories.
  • approx - Used to create a local cache of Debian packages on the build server. This cache is referenced by the build chroots for improved performance.