Gentoo Archives: gentoo-pms

From: "Michał Górny" <mgorny@g.o>
To: gentoo-pms@l.g.o
Cc: "Michał Górny" <mgorny@g.o>
Subject: [gentoo-pms] [PATCH 28/28] EAPI 7 has sandbox directory removal functions.
Date: Wed, 04 Oct 2017 20:48:09
Message-Id: 20171004204712.10391-29-mgorny@gentoo.org
In Reply to: [gentoo-pms] [PATCHES] EAPI 7, first draft for review by "Michał Górny"
1 Bug: https://bugs.gentoo.org/630422
2 ---
3 eapi-differences.tex | 4 ++++
4 pkg-mgr-commands.tex | 29 +++++++++++++++++++++++++++++
5 2 files changed, 33 insertions(+)
6
7 diff --git a/eapi-differences.tex b/eapi-differences.tex
8 index 441de70..0055070 100644
9 --- a/eapi-differences.tex
10 +++ b/eapi-differences.tex
11 @@ -41,6 +41,9 @@ of this document for a complete table of previous EAPIs.
12 \bottomrule
13 \endlastfoot
14
15 +\t{rm*} sandbox functions & \compactfeatureref{sandbox-rm} &
16 + No & No & No & No & Yes \\
17 +
18 \t{IUSE_RUNTIME} & \compactfeatureref{iuse-runtime} &
19 No & No & No & No & Yes \\
20
21 @@ -475,6 +478,7 @@ EAPI 7 is EAPI 6 with the following changes:
22 \item automatic enforcing of \t{REQUIRED_USE} is supported, \featureref{auto-req-use}.
23 \item binding leftmost-of (\t{||=}) dependency group is supported, \featureref{binding-leftmost-of}.
24 \item runtime-modifiable USE flags (\t{IUSE_RUNTIME}) are supported, \featureref{iuse-runtime}.
25 +\item sandbox path removal flags (\t{rm*}) are supported, \featureref{sandbox-rm}.
26 \end{compactitem}
27
28 \ChangeWhenAddingAnEAPI{7}
29 diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex
30 index eac9bc8..70f4d5b 100644
31 --- a/pkg-mgr-commands.tex
32 +++ b/pkg-mgr-commands.tex
33 @@ -88,6 +88,35 @@ argument. Ebuilds must not run any of these commands once the current phase func
34 \item[adddeny] Add a directory to the deny list.
35 \end{description}
36
37 +\featurelabel{sandbox-rm} Additionally, in EAPIs listed in table~\ref{tab:sandbox-command-table}
38 +as supporting the respective commands, the following commands are available:
39 +\begin{description}
40 +\item[rmread] Remove a directory from the permitted read list.
41 +\item[rmwrite] Remove a directory from the permitted write list.
42 +\item[rmpredict] Remove a directory from the predict list.
43 +\item[rmdeny] Remove a directory from the deny list.
44 +\end{description}
45 +
46 +All of those commands match paths exactly. Removing a directory that is not present on the list
47 +is silently ignored.
48 +
49 +\ChangeWhenAddingAnEAPI{7}
50 +\begin{centertable}{Additional sandbox commands by EAPI}
51 + \label{tab:sandbox-command-table}
52 + \begin{tabular}{lllll}
53 + \toprule
54 + \multicolumn{1}{c}{\textbf{EAPI}} &
55 + \multicolumn{1}{c}{\textbf{\t{rmread}?}} &
56 + \multicolumn{1}{c}{\textbf{\t{rmwrite}?}} &
57 + \multicolumn{1}{c}{\textbf{\t{rmpredict}?}} &
58 + \multicolumn{1}{c}{\textbf{\t{rmdeny}?}} \\
59 + \midrule
60 + 0, 1, 2, 3, 4, 5, 6 & No & No & No & No \\
61 + 7 & Yes & Yes & Yes & Yes \\
62 + \bottomrule
63 + \end{tabular}
64 +\end{centertable}
65 +
66 \subsubsection{Package manager query commands}
67 These commands are used to extract information about the system. Ebuilds must not run any of
68 these commands in parallel with any other package manager command. Ebuilds must not run any of
69 --
70 2.14.2