GLEP:65

Abstract
XXX

Motivation
The current Portage versions have two main QA check mechanisms: repoman and post-install QA checks. While repoman is usually considered more important, it has severe limitations. In particular, it is run on repository without executing the ebuild, therefore it is incapable of inspecting the installed files. This is where post-install QA checks become useful.

Over time, many different QA checks have been added to Portage. That includes checks corresponding to generic Gentoo rules (like filesystem hierarchy, security requirements), checks enforcing Gentoo team policies and correct eclass uses. Some of the checks depend heavily on external tools being present.

Keeping those checks directly in Portage sources has two major disadvantages:


 * 1) The checks can not be properly updated without Portage upgrade. In particular, a change in QA check becomes fully effective when the relevant Portage version becomes stable and the user upgrades.
 * 2) Gentoo-specific checks are enforced for all repositories and derived distributions. Modifying the QA check list requires forking Portage.

The specification detailed in this GLEP aims to provide a well-defined way of defining repository- and system-specific QA checks. It makes it possible to unbundle the QA checks from Portage. Multiple locations for QA checks improve maintainability, allowing better control over installation and updates.

Specification
XXX

Rationale
XXX

Backwards Compatibility
XXX

Resources
Wiki Markup has a large number of formatting options, this guide should only be considered to be a basic introduction. For more information, the following links may be useful:


 * The Wikipedia Cheat Sheet, which is a quick reference for basic formatting.
 * The Wikipedia help page on Wiki Markup, which is much more in-depth and has many subpages for specific topics.

Copyright
This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License. To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/.