From eca54b6e4dfc234e23acd3bf217b68680fa96ff3 Mon Sep 17 00:00:00 2001 From: Michał Górny Date: Wed, 4 Oct 2017 19:44:06 +0200 Subject: EAPI 7 has sandbox directory removal functions. Bug: https://bugs.gentoo.org/630422 --- eapi-differences.tex | 4 ++++ pkg-mgr-commands.tex | 29 +++++++++++++++++++++++++++++ 2 files changed, 33 insertions(+) diff --git a/eapi-differences.tex b/eapi-differences.tex index 0e4bd64..c4c1ce6 100644 --- a/eapi-differences.tex +++ b/eapi-differences.tex @@ -175,6 +175,9 @@ Most utilities die & \compactfeatureref{die-on-failure} & \t{einstall} & \compactfeatureref{banned-commands} & Yes & Yes & Yes & Banned & Banned \\ +Sandbox \t{rm*} commands & \compactfeatureref{sandbox-rm} & + No & No & No & No & Yes \\ + Option \t{-{}-host-root} & \compactfeatureref{host-root-option} & No & No & Yes & Yes & Yes \\ @@ -380,6 +383,7 @@ EAPI 7 is EAPI 6 with the following changes: \item Runtime-modifiable USE flags (\t{IUSE_RUNTIME}), \featureref{iuse-runtime}. \item \t{||=} dependency groups, \featureref{binding-any-of}. \item Automatic enforcing of \t{REQUIRED_USE}, \featureref{auto-req-use}. +\item Sandbox path removal commands, \featureref{sandbox-rm}. \end{compactitem} \ChangeWhenAddingAnEAPI{7} diff --git a/pkg-mgr-commands.tex b/pkg-mgr-commands.tex index f587afb..162e0d1 100644 --- a/pkg-mgr-commands.tex +++ b/pkg-mgr-commands.tex @@ -77,6 +77,35 @@ argument. Ebuilds must not run any of these commands once the current phase func \item[adddeny] Add a directory to the deny list. \end{description} +\featurelabel{sandbox-rm} Additionally, in EAPIs listed in table~\ref{tab:sandbox-command-table} +as supporting the respective commands, the following commands are available: +\begin{description} +\item[rmread] Remove a directory from the permitted read list. +\item[rmwrite] Remove a directory from the permitted write list. +\item[rmpredict] Remove a directory from the predict list. +\item[rmdeny] Remove a directory from the deny list. +\end{description} + +All of these commands match paths exactly. Removing a directory that is not present on the list +is silently ignored. + +\ChangeWhenAddingAnEAPI{7} +\begin{centertable}{Additional sandbox commands in EAPIs} + \label{tab:sandbox-command-table} + \begin{tabular}{lllll} + \toprule + \multicolumn{1}{c}{\textbf{EAPI}} & + \multicolumn{1}{c}{\textbf{\t{rmread}?}} & + \multicolumn{1}{c}{\textbf{\t{rmwrite}?}} & + \multicolumn{1}{c}{\textbf{\t{rmpredict}?}} & + \multicolumn{1}{c}{\textbf{\t{rmdeny}?}} \\ + \midrule + 0, 1, 2, 3, 4, 5, 6 & No & No & No & No \\ + 7 & Yes & Yes & Yes & Yes \\ + \bottomrule + \end{tabular} +\end{centertable} + \subsection{Package manager query commands} These commands are used to extract information about the system. Ebuilds must not run any of these commands in parallel with any other package manager command. Ebuilds must not run any of -- cgit v1.2.3-65-gdbad