commit:     84980841c249b53f55168c5ed1eb1812c42d875e
Author:     David Michael <fedora.dm0 <AT> gmail <DOT> com>
AuthorDate: Thu Jun 24 15:49:47 2021 +0000
Commit:     David Seifert <soap <AT> gentoo <DOT> org>
CommitDate: Thu Jun 24 15:49:47 2021 +0000
URL:        https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=84980841

acct-user.eclass: EAPI 8 support

Update the documentation to describe how to depend on GLEP 81
packages with EAPI 8.  There is no NSS module for resolving the
accounts installed in $SYSROOT, so acct-* packages might also need
need to be in $BROOT e.g. for fowners which directly calls chown.

  - BDEPEND so the build system can resolve names when building
    packages in nonempty $SYSROOT at src_install time.

  - IDEPEND so the build system can resolve names when installing
    binary packages in nonempty $ROOT at pkg_preinst time.

  - RDEPEND so the target system can use the accounts.

Closes: https://github.com/gentoo/gentoo/pull/21377
Signed-off-by: David Michael <fedora.dm0 <AT> gmail.com>
Signed-off-by: David Seifert <soap <AT> gentoo.org>

 eclass/acct-user.eclass | 19 ++++++++++---------
 1 file changed, 10 insertions(+), 9 deletions(-)

diff --git a/eclass/acct-user.eclass b/eclass/acct-user.eclass
index ee4358b5c75..cf47470c155 100644
--- a/eclass/acct-user.eclass
+++ b/eclass/acct-user.eclass
@@ -1,4 +1,4 @@
-# Copyright 2019-2020 Gentoo Authors
+# Copyright 2019-2021 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
 # @ECLASS: acct-user.eclass
@@ -7,7 +7,7 @@
 # @AUTHOR:
 # Michael Orlitzky <[email protected]>
 # Michał Górny <[email protected]>
-# @SUPPORTED_EAPIS: 7
+# @SUPPORTED_EAPIS: 7 8
 # @BLURB: Eclass used to create and maintain a single user entry
 # @DESCRIPTION:
 # This eclass represents and creates a single user entry.  The name
@@ -26,24 +26,25 @@
 # contents:
 #
 # @CODE
-# EAPI=7
+# EAPI=8
 # inherit acct-user
 # ACCT_USER_ID=200
 # ACCT_USER_GROUPS=( foo )
 # acct-user_add_deps
 # @CODE
 #
-# Then you add appropriate dependency to your package.  The dependency
-# type(s) should be:
-# - DEPEND (+ RDEPEND) if the user is already needed at build time,
-# - RDEPEND if it is needed at install time (e.g. you 'fowners' files
-#   in pkg_preinst) or run time.
+# Then you add appropriate dependencies to your package.  Note that
+# the build system might need to resolve names, too.  The dependency
+# type(s) should be: BDEPEND if the user must be resolvable at build
+# time (e.g. 'fowners' uses it in src_install), IDEPEND if it must be
+# resolvable at install time (e.g. 'fowners' uses it in pkg_preinst),
+# and RDEPEND in every case.
 
 if [[ -z ${_ACCT_USER_ECLASS} ]]; then
 _ACCT_USER_ECLASS=1
 
 case ${EAPI:-0} in
-       7) ;;
+       7|8) ;;
        *) die "EAPI=${EAPI:-0} not supported";;
 esac
 

Reply via email to