* [gentoo-pms] [PATCH 05/22] EAPI 6 supports package.* and use.* directories.
@ 2015-10-15 10:50 99% ` Ulrich Müller
0 siblings, 0 replies; 1+ results
From: Ulrich Müller @ 2015-10-15 10:50 UTC (permalink / raw
To: gentoo-pms
From: Michael Palimaka <kensington@gentoo.org>
Bug: 282296
---
eapi-differences.tex | 5 ++++-
profiles.tex | 32 ++++++++++++++++++++++++++------
2 files changed, 30 insertions(+), 7 deletions(-)
diff --git a/eapi-differences.tex b/eapi-differences.tex
index c28494d..2132935 100644
--- a/eapi-differences.tex
+++ b/eapi-differences.tex
@@ -41,6 +41,9 @@ of this document for a complete table of previous EAPIs.
\bottomrule
\endlastfoot
+\t{package*} and \t{use*} dirs & \compactfeatureref{profile-file-dirs} &
+ No & No & No & No & Yes \\
+
Stable use masking/forcing & \compactfeatureref{stablemask} &
No & No & No & Yes & Yes \\
@@ -304,7 +307,7 @@ EAPI 5 is EAPI 4 with the following changes:
EAPI 6 is EAPI 5 with the following changes:
\begin{compactitem}
-\item None
+\item Profile \t{package*} and \t{use*} can be directories, \featureref{profile-file-dirs}.
\end{compactitem}
\ChangeWhenAddingAnEAPI{6}
diff --git a/profiles.tex b/profiles.tex
index 11e7780..a0e3c57 100644
--- a/profiles.tex
+++ b/profiles.tex
@@ -70,19 +70,39 @@ parent profile's list is taken, and the current profile's list appended. If any
hyphen, then any lines previous to it whose contents are equal to the remainder of that line are
removed from the list. Once again, blank lines and those beginning with a \# are discarded.
-\subsection{packages}
+\featurelabel{profile-file-dirs} For EAPIs listed as supported in table~\ref{tab:profile-file-dirs},
+simple line-based files described in the following sections may optionally be directories containing
+files of the named type.
+
+\ChangeWhenAddingAnEAPI{6}
+\begin{centertable}{Profile support for directories of simple line-based files}
+ \label{tab:profile-file-dirs}
+ \begin{tabular}{ l l l }
+ \toprule
+ \multicolumn{1}{c}{\textbf{EAPI}} &
+ \multicolumn{1}{c}{\textbf{Supports directories of simple line-based files?}} \\
+ \midrule
+ 0, 1, 2, 3, 4, 5 & No \\
+ 6 & Yes \\
+ \bottomrule
+ \end{tabular}
+\end{centertable}
+
+\subsubsection{packages}
The \t{packages} file is used to define the `system set' for this profile.
After the above rules for inheritance and comments are applied, its lines must take one of two
forms: a package dependency specification prefixed by \t{*} denotes that it forms part of the
system set. A package dependency specification on its own may also appear for legacy reasons, but
should be ignored when calculating the system set.
-\subsection{packages.build}
+\subsubsection{packages.build}
The \t{packages.build} file is used by Gentoo's Catalyst tool to generate stage1 tarballs, and has
no relevance to the operation of a package manager. It is thus outside the scope of this document,
but is mentioned here for completeness.
-\subsection{package.mask}
+\note At the time of writing, Catalyst does not support \t{packages.build} as a directory.
+
+\subsubsection{package.mask}
\t{package.mask} is used to prevent packages from being installed on a given profile. Each line
contains one package dependency specification; anything matching this specification will not be
installed unless unmasked by the user's configuration.
@@ -93,20 +113,20 @@ necessarily a global mask (from \t{profiles/package.mask}, section~\ref{profiles
\note Portage currently treats \t{profiles/package.mask} as being on the leftmost branch of the
inherit tree when it comes to \t{-lines}. This behaviour may not be relied upon.
-\subsection{package.provided}
+\subsubsection{package.provided}
\t{package.provided} is used to tell the package manager that a certain package version should be
considered to be provided by the system regardless of whether it is actually installed. Because it
has severe adverse effects on USE-based and slot-based dependencies, its use is strongly deprecated
and package manager support must be regarded as purely optional.
-\subsection{package.use}
+\subsubsection{package.use}
The \t{package.use} file may be used by the package manager to override the default USE flags specified
by \t{make.defaults} on a per package basis. The format is to have a package dependency specification,
and then a space delimited list of USE flags to enable. A USE flag in the form of \t{-flag} indicates
that the package should have the USE flag disabled. The package dependency specification is limited to
the forms defined by the directory's EAPI.
-\subsection{USE masking and forcing}
+\subsubsection{USE masking and forcing}
\label{sec:use-masking}
This section covers the eight files \t{use.mask}, \t{use.force}, \t{use.stable.mask},
\t{use.stable.force}, \t{package.use.mask}, \t{package.use.force}, \t{package.use.stable.mask},
--
2.6.1
^ permalink raw reply related [relevance 99%]
Results 1-1 of 1 | reverse | options above
-- pct% links below jump to the message on this page, permalinks otherwise --
2015-10-15 10:49 [gentoo-pms] EAPI 6 draft for review Ulrich Müller
2015-10-15 10:50 99% ` [gentoo-pms] [PATCH 05/22] EAPI 6 supports package.* and use.* directories Ulrich Müller
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox