Hi,

Please review the following patches, implementing the user/group package
concept.  The patches incorporate some of the feedback to the proposed
GLEP, and I'd like to get them reviewed before I submit the next GLEP
update.  They are based on earlier work by mjo.

To recap: the idea is to replace direct calls to enewgroup/enewuser
with special packages in user/ & group/ categories that represent
the users/groups needed by a package.  They create the user/group
if necessary and track its usage.  When it is no longer needed,
the package is unmerged and the user gets a clear signal that the user/
group might be removed (but we do not remove them automatically to stay
on the safe side).

The patch set consists of three parts:

a. Updates and fixes to user.eclass, to provide a good portability base
   for the new eclasses.

b. sys-group and sys-user eclasses, used to implement said packages.

c. Example conversion of 'ftp' user+group, and respective update
   of net-ftp/ftpbase.

TIA for your feedback.

--
Best regards,
Michał Górny


Michał Górny (9):
  user.eclass: Do not create user-group automatically
  user.eclass: Prevent automated home creation in useradd
  user.eclass: Support disabling home directory creation
  user.eclass: Support forcing specified UID/GID
  user.eclass: Die if no free UID/GID is found
  {group,user}.eclass: WIP eclasses to maintain users/groups
  group/ftp: Add 'ftp' group (GID 21)
  user/ftp: Add 'ftp' user (UID 21)
  net-ftp/ftpbase: Utilize {group,user}/ftp

 eclass/sys-group.eclass                | 105 +++++++++++++
 eclass/sys-user.eclass                 | 206 +++++++++++++++++++++++++
 eclass/user.eclass                     |  39 ++++-
 group/ftp/ftp-0.ebuild                 |   8 +
 group/ftp/metadata.xml                 |   5 +
 net-ftp/ftpbase/ftpbase-0.01-r3.ebuild |  39 +++++
 profiles/categories                    |   2 +
 user/ftp/ftp-0.ebuild                  |  19 +++
 user/ftp/metadata.xml                  |   5 +
 9 files changed, 425 insertions(+), 3 deletions(-)
 create mode 100644 eclass/sys-group.eclass
 create mode 100644 eclass/sys-user.eclass
 create mode 100644 group/ftp/ftp-0.ebuild
 create mode 100644 group/ftp/metadata.xml
 create mode 100644 net-ftp/ftpbase/ftpbase-0.01-r3.ebuild
 create mode 100644 user/ftp/ftp-0.ebuild
 create mode 100644 user/ftp/metadata.xml

-- 
2.22.0.rc1


Reply via email to